From df2aa51f25cce019bbdf104cc2bce0e3daf947b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=CE=B2=E2=88=92=20Decay=27s=20Antineutrino?= Date: Tue, 27 Aug 2024 12:14:01 +0800 Subject: [PATCH 01/63] Update zh_CN.lang Updated Chinese translation. Project completed using Paratranz (https://paratranz.cn/projects/11369). Translated untranslated items and refined translation of certain items. Not all items have been reviewed, and further work will be done. Credits are included in Co-Authors. For those interested in joining the project, check the MCMOD page: https://www.mcmod.cn/class/513.html Co-Authored-By: Creeper-banner <82984664+Creeper-banner@users.noreply.github.com> Co-Authored-By: wdsjkkksv <174227161+wdsjkkksv@users.noreply.github.com> Co-Authored-By: 5467864 <78838200+5467864@users.noreply.github.com> --- src/main/resources/assets/hbm/lang/zh_CN.lang | 11966 ++++++++-------- 1 file changed, 5913 insertions(+), 6053 deletions(-) diff --git a/src/main/resources/assets/hbm/lang/zh_CN.lang b/src/main/resources/assets/hbm/lang/zh_CN.lang index 055b7077e..3190e942c 100644 --- a/src/main/resources/assets/hbm/lang/zh_CN.lang +++ b/src/main/resources/assets/hbm/lang/zh_CN.lang @@ -1,6053 +1,5913 @@ -achievement.acidizer.desc=噢,我的皮肤 -achievement.acidizer=酸 -achievement.assembly.desc=等等,已经凌晨1点了? -achievement.assembly=这家工厂正在成长 -achievement.FOEQ.desc=向火星传送信号!...其实我是说Duna -achievement.FOEQ=飞马座运载火箭和发射架 -achievement.breeding.desc=谢谢你们,上帝保佑你们,上帝保佑美利坚合众国。 -achievement.breeding=反话 -achievement.bismuth.desc=还记得那时候有人为这个抱怨了一个月吗?我还记得。 -achievement.bismuth=铋 -achievement.blastFurnace.desc=他们为制造探险者1号去打捞了一艘沉没的无畏舰。 -achievement.blastFurnace=煤和铁 -achievement.bossCreeper.desc=核爆爬行者? 那是个什么玩意?! -achievement.bossCreeper=四条腿的行走核弹 -achievement.bossMaskman.desc=大男孩邦克 -achievement.bossMaskman=6个月的强制服务,我只得到一件糟糕的T恤 -achievement.bossMeltdown.desc=比伟大更可怕,但我会竭尽所能 -achievement.bossMeltdown=3.6伦琴 -achievement.bossWorm.desc=“绝学法杖”。什么鬼啊。你自己看看吧。 -achievement.bossWorm=拆掉机械蠕虫 -achievement.bossUFO.desc=哟,那是啥东西?一艘正接近我们工事的巨大飞船? -achievement.bossUFO=呀哈哈哈,笑死我了 -achievement.burnerPress.desc=压力压在你我身上 -achievement.burnerPress=压力之下 -achievement.c20_5.desc=??? -achievement.c20_5=第[二十点五]章 -achievement.c44.desc=镀锌!我是说,锌! -achievement.c44=第四十四章 -achievement.centrifuge.desc=离心力是真的 别@我 -achievement.centrifuge=向心力 -achievement.chemplant.desc=现在你在考虑化学物质! -achievement.chemplant=这家工厂正在成长 Pt.2 -achievement.chicagoPile.desc=“当地人怎么样?” / “非常友好。” -achievement.chicagoPile=领航员在新大陆着陆 -achievement.concrete.desc=布尔什维克的最爱。 -achievement.concrete=老当益壮 -achievement.desh.desc=“来吧,你们这群人。有地方可去!” -achievement.desh=勒威耶 -achievement.digammaFeel.desc=我的眼睛在流血 -achievement.digammaFeel=废水侵袭的废土世界 -achievement.digammaKauaiMoho.desc=一切都糟透了,这里有些热巧克力 -achievement.digammaKauaiMoho=唱吧,为我唱出奥亚吸蜜鸟的歌声吧 -achievement.digammaKnow.desc=关于这个世界 -achievement.digammaKnow=知晓的恐惧 -achievement.digammaSee.desc=里面有点黑,带个手电筒。 -achievement.digammaSee=踏入深渊 -achievement.digammaUpOnTop.desc=仰慕我的儿子,他是我的克隆人. -achievement.digammaUpOnTop=仰慕我,仰慕我的家 -achievement.fiend.desc=卑鄙 -achievement.fiend2.desc=更卑鄙 -achievement.fiend2=残忍2:更残忍 -achievement.fiend=残忍 -achievement.freytag.desc=英勇的救生员 -achievement.freytag=弗赖塔格 -achievement.fusion.desc=氘核、氚核与能量的舞蹈。 -achievement.fusion=聚合 -achievement.gasCent.desc=未浓缩铀讨厌他! -achievement.gasCent=齐佩式离心 -achievement.goFish.desc=航海十字架 -achievement.goFish=去钓鱼 -achievement.hidden.desc=使用一节坠落的车厢杀死一只污染苦力怕 -achievement.hidden=隐藏目录 -achievement.horizonsBonus.desc=说实话,你到底怎么了 -achievement.horizonsBonus=地平线! -achievement.horizonsEnd.desc=送他回家 -achievement.horizonsEnd=地平线。 -achievement.horizonsStart.desc=将一个小伙子送上月球 -achievement.horizonsStart=地平线? -achievement.impossible.desc=你不可能取得该成就 -achievement.impossible=字面上的不可能 -achievement.inferno.desc=“把它变成灰烬!这还不够!投更多的炸弹!” -achievement.inferno=食人行动 -achievement.manhattan.desc=1945年8月6日 8:15 -achievement.manhattan=曼哈顿计划 -achievement.meltdown.desc=你走了这么远,怎么能把事情搞砸? -achievement.meltdown=快速非计划拆卸 -achievement.no9.desc=“我希望我开采的铅能被用在你的油漆里” -achievement.no9=旧数字9 -achievement.omega12.desc=解决在这个可怜的星球上继续生存的问题 -achievement.omega12=欧米伽-12粒子加速器 -achievement.polymer.desc=美味、美味的微塑料。 -achievement.polymer=特氟隆 -achievement.potato.desc=你居然捅我!你怎—喔哦哦哦哦哦! -achievement.potato=流氓AI -achievement.radDeath.desc=居里夫人开创了放射性理论、放射性治疗和放射性死亡。 -achievement.radDeath=噢, 辐射! -achievement.radium.desc=你 因 为 往 我 的 咖 啡 里 倒 镭 而 被 解 雇 了 ! -achievement.radium=不可思议先生 -achievement.radPoison.desc=受辐射中毒的影响 -achievement.radPoison=呀, 辐射! -achievement.RBMKBoom.desc=谎言的代价是什么? -achievement.RBMKBoom=是15000伦琴辐射 -achievement.RBMK.desc=他有妄想症,带他去医务室。 -achievement.RBMK=3.6伦琴? -achievement.redBalloons.desc=“这就是我们一直在等待的。就是这样,孩子们,这就是战争。” -achievement.redBalloons=99个红气球 -achievement.redRoom.desc=? -achievement.redRoom=另一边 -achievement.sacrifice.desc=直面火海并存活 -achievement.sacrifice=牺牲 -achievement.schrab.desc=不管怎样,我不会看太久。 -achievement.schrab=稳定岛 -achievement.selenium.desc=耶! -achievement.selenium=XVIII 月亮女神 -achievement.SILEX.desc=我保证这比听起来更酷。 -achievement.SILEX=激光激发法分离同位素 -achievement.slimeball.desc=粘液球 -achievement.slimeball=我应该把蛋蛋浸在硫酸里。 -achievement.stratum.desc=快刹车,Mitts! -achievement.stratum=岩层 -achievement.someWounds.desc=准备好 -achievement.someWounds=有些伤口永远无法愈合 -achievement.soyuz.desc=变得松脆 -achievement.soyuz=土豆烹饪 -achievement.space.desc=屡试屡败,浪费了价值9000万美元的资金 -achievement.space=最后的边疆——呃,算了吧 -achievement.sulfuric.desc=硫酸 -achievement.sulfuric=我不应该把蛋蛋浸在硫酸里的。 -achievement.tantalum.desc=一个难以捉摸但却永远需要的元素。 -achievement.tantalum=钽 -achievement.tasteofblood.desc=这不是任何测试的一部分 -achievement.tasteofblood=血的味道 -achievement.technetium.desc=它是药用的,它是药用的! -achievement.technetium=大个子,猪人 -achievement.watzBoom.desc=下次记得把毒泥浆容器清空 -achievement.watzBoom=令人厌恶 -achievement.watz.desc=可能包括Fólkvangr弗尔克范格场 -achievement.watz=126号元素的力量 -achievement.witchtaunter.desc=那些古怪的生物对你毫无兴趣! -achievement.witchtaunter=巫婆陶恩特 -achievement.ZIRNOXBoom.desc=生气了吗? -achievement.ZIRNOXBoom=CIRNOX - -analyze.basic1=========NTM组件======== -analyze.basic2=更多信息请参阅Wiki。 -analyze.basic3=========附加信息======== -analyze.dummy=类型:Dummy Block -analyze.error=此方块的兼容性未正确设定。请将此问题作为Bug反馈! -analyze.name=名称:%s -analyze.noInfo=无附加信息。 - -armor.blastProtection=修正 %s 的爆炸伤害 -armor.cap=伤害上限 %s -armor.damageModifier=修正 %s 对 %s 的伤害 -armor.dash=给予 %s 次冲刺 -armor.electricJetpack=离子喷射背包 -armor.explosionImmune=免疫除爆炸伤害外的一切伤害 -armor.fasterReload=快速装填 -armor.fastFall=快速降落 -armor.fireproof=防火 -armor.fullSetBonus=全套效果: -armor.geigerHUD=盖革计数器HUD -armor.geigerSound=盖革计数器警报 -armor.glider=滑翔 -armor.gravity=重力修正 %s -armor.hardLanding=硬着陆 -armor.ignoreLimit=防御值不受防御上限的影响 -armor.modifier=伤害修正 %s -armor.moreAmmo=更多弹药 -armor.nullDamage=免疫 %s 伤害 -armor.projectileProtection=免疫 %s 的弹射物伤害 -armor.rocketBoots=火箭靴 -armor.sprintBoost=冲刺辅助加速 -armor.stepSize=步长:%s -armor.thermal=热成像 -armor.threshold=伤害阈值 %s -armor.vats=敌对生物HUD -armor.yield=抵御低于%s的伤害 - -armorMod.all=所有 -armorMod.applicableTo=适用于: -armorMod.boots=靴子 -armorMod.chestplates=胸甲 -armorMod.helmets=头盔 -armorMod.insertHere=插入装甲以改装。。。 -armorMod.leggings=护腿 -armorMod.type.boots=靴子 -armorMod.type.chestplate=胸甲 -armorMod.type.cladding=覆层 -armorMod.type.helmet=头盔 -armorMod.type.insert=插板 -armorMod.type.leggings=护腿 -armorMod.type.servo=伺服电机 -armorMod.type.special=特殊 - -battery.mode.buffer=输入/输出模式 -battery.mode.input=输入模式 -battery.mode.off=关闭 -battery.mode.output=输出模式 -battery.priority.high=充电优先级:高 -battery.priority.high.desc=总是需要优先装满的紧急缓冲区 -battery.priority.low=充电优先级:低 -battery.priority.low.desc=在大多数情况下,需要在不影响机器性能的情况下$存储剩余的能量 -battery.priority.normal=充电优先级:正常 -battery.priority.normal.desc=较小的电网,其优先级无关紧要 -battery.priority.recommended=推荐用于: -battery.redstone.off=红石 关 -battery.redstone.on=红石 开 - -bomb.detonated=成功引爆! -bomb.incompatible=设备无法触发! -bomb.launched=发射成功! -bomb.missingComponent=组件丢失! -bomb.nobomb=链接位置不兼容或已断开! -bomb.triggered=触发成功! - -book.test.cover=停车坐爱枫林晚 -book.test.page1=测试页面1 - -book.error.cover=粒子对撞机:$故障排除 -book.error.title1=错误 0x01 [能量不足] -book.error.page1=§l错误类型:§r "错误_能量不足" §l描述:§r 粒子到达了能量不足的部分。 §l修复方式:§r 用更高级的电源接口替换粒子成功通过的 其中一个电源接口,或者在粒子终止的段之前额外添加多一个电源接口。 -book.error.title2=错误 0x02 [无法分析] -book.error.page2=§l错误类型:§r "错误_无法分析" §l描述:§r 尽管没有通过分析室,但粒子已经到达核心。 §l修复方式:§r 确保加速器有一个分析室,并再次检查工作模式(线性/环形)。 -book.error.title3=错误 0x03 [通道阻塞] -book.error.page3=§l错误类型:§r "错误_通道阻塞" §l描述:§r 粒子与对撞机通道内的方块碰撞。 §l修复方式:§r 确保粒子对撞机内部没有任何障碍物, 粒子二极管和核心块除外。 -book.error.title4=错误 0x04 [缺少线圈] -book.error.page4=§l错误类型:§r "错误_缺少线圈" §l描述:§r 粒子通过了缺少一个或多个线圈的段。 §l修复方式:§r 移除冲突区域的对撞机镀层,并检查线圈结构是否完整。 这种错误也会发生在没有二极管的T型交叉口上。 -book.error.title5=错误 0x05 [错误区段] -book.error.page5=§l错误类型:§r "错误_错误区段" §l描述:§r 粒子通过了一个结构不正确的段(但既没有被阻塞也没有缺少线圈)。 §l修复方式:§r 确保有问题的部分都有镀层包裹,没有线圈暴露。 -book.error.title6=错误 0x06 [分析室过长] -book.error.page6=§l错误类型:§r "错误_分析室过长" §l描述:§r 粒子已通过三个以上所需的有效分析室段。 §l修复方式:§r 确保环形加速器的分析室长度正好为3个方块, 直线加速器的分析室长度至少为2个方块。 还要检查粒子是否未通过分支或 环形加速器中的多个分析室。 -book.error.title7=错误 0x07 [分析室过短] -book.error.page7=§l错误类型:§r "错误_分析室过短" §l描述:§r 粒子已离开分析室,尽管不符合长度要求。 §l修复方式:§r 确保环形加速器上的分析室正好有3个方块长。 有效的分析段没有线圈,镀层完全由分析室壁/窗组成。 带有线圈的分析室被视为规则段。 -book.error.title8=错误 0x08 [二极管方向错误] -book.error.page8=§l错误类型:§r "错误_二极管方向错误" §l描述:§r 该粒子与肖特基粒子二极管的非输入侧碰撞。§l修复方式:§r 检查二极管的配置是否正确。 粒子只能从带有绿色向内箭头的侧面进入二极管。 -book.error.title9=错误 0x09 [多处分支] -book.error.page9=§l错误类型:§r "错误_多处分支" §l描述:§r 粒子到达具有多个出口的转弯处。§l修复方式:§r 如果你的对撞机是正常的,检查所有需要的线圈是否都存在(即线圈中没有缺漏)。如果转弯处打算进行分支,则需要正确放置的肖特基粒子二极管。 - -book.rbmk.cover=$我的第一个$RBMK石墨式反应堆:$建造一个$反应堆$的基础知识 -book.rbmk.title1=介绍 -book.rbmk.page1=§lRBMK石墨式反应堆§r是一个完全模块化的核反应堆. 与大多数其他反应堆不同的是, 该反应堆没有"多方块结构核心"和尺寸上的限制, 而反应堆的性能和效率仅取决于你是如何建造它的, 以及各个组件如何相互作用. -book.rbmk.title2=热量 -book.rbmk.page2=当反应堆运行时, 它将会产生 §l热量§r. 热量会在各个组件之间扩散, 并在这个过程中会慢慢减少. 我们的目标是在不让反应堆熔化的情况下 产生尽可能多的热量, 并将热量传递到蒸汽管道中, 从而冷却反应堆并产生蒸汽. -book.rbmk.title3=燃料棒 -book.rbmk.page3=反应堆中的 §l燃料棒§r 将捕获周围的中子, 使棒内的燃料发生核反应, 并在此过程中释放中子. 中子会向四个方向释放, 最大释放范围为5格. 释放中子量的多少取决于所用的核燃料. -book.rbmk.title4=控制棒 -book.rbmk.page4=反应堆中的 §l控制棒§r 将减少中子通过它的数量. 完全插入时, 它会阻挡所有中子; 当插入一半时, 它只会阻挡一半中子. 控制棒用于调节反应堆的活跃状态和使其关闭. -book.rbmk.title5=控制棒 - 使用 -book.rbmk.title5.scale=0.9 -book.rbmk.page5=当前控制棒插入的程度将显示在GUI的中心. 边的彩色按钮将把控制棒添加到不同的颜色组中, 这对于在 §lRBMK石墨式反应堆§r 控制台上快速选择屏幕上不同区域的控制棒非常有用. 右侧的按钮允许您以每次25%的增量手动插入. -book.rbmk.title6=自动控制棒 -book.rbmk.page6=§L自动控制棒§r 与常规控制棒几乎相同, 但它们不能手动调整, 而是根据当前温度来调整控制棒插入的程度. 使用哪种功能, 在多少的温度插入多少的深度必须被事先设定好. -book.rbmk.title7=蒸汽管道 -book.rbmk.page7=反应堆中的 §l蒸汽管道§r 是唯一能有效降低反应堆热水平的组件. 如果一个蒸汽管道组件的沸点高于其设定的蒸汽类型的沸点, 那么它将试图消耗尽可能多的水 并产生尽可能多的蒸汽来冷却到沸点以下. -book.rbmk.title8=碳化钨中子反射器 -book.rbmk.page8=反应堆中的 §l碳化钨中子反射器§r 将阻止中子的通过, 相反,中子将被反射回它们来自的燃料棒上. 这对于使用中子是有用的, 否则这些中子一旦离开反应堆就会被浪费掉. -book.rbmk.title9=硼中子吸收器 -book.rbmk.page9=§l硼中子吸收器§r 只是阻挡中子. 被吸收的中子不会产生热量,会被有效地吸收. 这有助于防止燃料棒发生过度反应从而超出临界值. -book.rbmk.title10=石墨慢化剂 -book.rbmk.page10=§l石墨慢化剂§r 把穿过它的快中子转换成慢中子. 大多数核燃料反应释放出快中子, 而引起裂变需要慢中子, 所以强烈建议使用慢化剂. -book.rbmk.title11=结构柱 -book.rbmk.page11=§l结构柱§r 对中子没有任何影响也没有任何特殊用途. 建议在没有其他合适组件的情况下用结构柱填充反应堆, 因为结构柱能够传热. -book.rbmk.title12=控制台 -book.rbmk.page12=§lRBMK石墨式反应堆控制台§r 允许你远程控制反应堆. 使用 §lRBMK石墨式反应堆连接装置记录反应堆§r 然后潜行右击控制台就能把反应堆和控制台连接起来. 一个控制台只能控制15x15个组件, 对于大型反应堆可以使用多个控制台. -book.rbmk.title13=控制台的使用 -book.rbmk.page13=单击屏幕上的组件将选择或取消选择它们. 使用彩色按钮,可以快速选择该颜色组中的所有控制棒. 按钮“A”将选择所有控制棒, “X”将取消选择所有控制棒. -book.rbmk.page14=在绿色框中输入一个介于0和100之间的数字, 然后按下旁边的按钮, 将所有选定的控制棒拔出程度设置到该位置. 按钮“AZ-5”将使所有控制棒完全插入. -book.rbmk.title15=核燃料 -book.rbmk.page15= §l核燃料§r 的反应取决于许多因素. 主要是 §l核燃料强度§r, §l氙中毒程度§r 和接收到的 §l中子数量§r. 氙元素会在核燃料的中子含量较低时积聚起来, 并在正常运行时燃烧殆尽. 中子的效率取决于其类型, 大多数核燃料 §l用慢中子轰击来裂变效果最好§r. -book.rbmk.title16=熔毁 -book.rbmk.page16=§4§l尽量避免发生, 你不会想让这样一场核灾难发生在你的存档或服务器里的. - -book.starter.cover=重建$社会的实业家$指南 -book.starter.title1=介绍 -book.starter.page1=如果你正在读这篇文章,很可能社会已经因这样或 那样的方式完全崩溃了。政府、国家和权威是过去的概念, 以及文明生活的所有便利设施。因此,本指南将 告诉您如何通过重新创造过去的行业和技术 来改善自己的生活,从而改变这种状况。 -book.starter.title2=煤和芥子气 -book.starter.page2=虽然无法预测世界末日后的实际状态, 但目前形式的战争和工业不太可能没有结束。 为了保护自己的肺部,一种有效且廉价的方法是 在§L布§r上小便,制作一个§L防毒面具§r, 以使你免受煤尘或芥子气的伤害. -book.starter.title3=铁砧和锻压机 -book.starter.page3=开始工业振兴的精髓是§l砧§r和§l火力锻压机§r. 铁砧将允许您手动组合早期机械,如组装机, 而火力锻压机将允许您制作 无法用铁砧制作的板材、电线和电路. -book.starter.title4=模板 -book.starter.page4=为了将金属冲压成有用的 形状、组装机械和执行 化学反应,您需要创建 一个§L机器模板文件夹§r, 以创建右侧显示的 各种锻模以及配方。 -book.starter.title5=废墟探索 -book.starter.page5=根据最初的世界末日事件对世界现有结构的影响程度, 有可能直接从中抢救出许多有用的材料和机器。 钢铁等金属合金、电路等部件,甚至核电站的 裂变材料都可能在等着你。 然而,要小心某些废墟,因为那里可能潜伏着过度的危险, 就像草丛中的蛇一样; 等待着用辐射、陷阱或无法形容的恐怖袭击你... -book.starter.title6=早期机械 -book.starter.page6a=您应首先制造的两台机器是§l高炉§r和§l装配机§r. 前者允许您制造合金,如§L钢§r、§l工业级铜§r和§l高级合金§r; 你需要将这些金属用于机器的机身、 电路的布线、高级电磁铁等. -book.starter.page6b=装配机将用于制造本指南中描述的几乎所有其他机器. 您需要一个电源,如§L火力§r§L发电机§r或§L太阳能锅炉§r. -book.starter.page7a=§l粉碎机§r以及一对粉碎机刀片将会非常有用, 能将大多数矿石粉碎成可熔炼的粉末,使其产量提高一倍. 这些粉末对于开始为各种机器制作电路也至关重要, 例如§l增强电路§r和§l超频电路§r。 -book.starter.page7b=使用您的新机器,您可以制造§L化工厂§r, 用于合成更好的电路、混凝土或进行石化产品加工等。 -book.starter.title8=黑金 -book.starter.page8a=使用§l石油§l储层§r§l探测仪§r, 您可以通过测量一个区域 来发现地下的油岩以 放置§l石油钻机§r或 §l钻油塔§r来开采 记住,石油储备会随着时间 的推移而耗尽 -book.starter.page8b=在§l炼油厂§r中提炼和分离石油 成分之前,你必须在§l锅炉§r中将 石油加热至300°C. -book.starter.title9=石油化工产品 -book.starter.page9=使用§l化工厂§r, §l分馏§r§l塔§r和§l催化裂化§r§l塔§r, 你可以将分离出的油转化为各种有用的产品. §l催化裂化§r§l塔§r, 可以将分离出的油转化为各种有用的产品。 例如:§l聚合物§r或§l电木§r, 耐用又柔性的塑料; §lDesh§r, 一种非常耐用和耐热的稀土金属合金; §l固体燃料§r, 可燃烧获取能量; 甚至是§l液体燃料§r, 比如§l汽油§r, §l柴油§r, §l煤油§r等等。 -book.starter.title10=先进的机械 -book.starter.page10=通过一套成熟的石油加工系统,您可以制造§l离心机§r, 这将使矿石的产量增加三倍; §l矿物§l结晶机§r将 矿石结晶后,产量将进一步提高; 以及§lSILEX同位素激光分离室+§lFEL§r, 这两个现代工程的奇迹可以轻松地分离材料的同位素. 你需要更多的能量来驱动这些; 可通过§l柴油发电机§r,§l工业发电机§r, 甚至核反应堆等来源获取更多的能量。 -book.starter.title11=特殊地层 -book.starter.page11=在你行走的地面之下,有几个 自然形成的§l岩层§r,或者说特殊的 矿层和岩层。 §l片岩地层§r是蓝色的含锂层, 其中有铀、铁、铜、石棉和其他矿石 可供你使用。 §l深层岩石§r含有大量稀有矿物, 如§l锆§r、§l硼§r和§l朱砂§r等, 但你需要炸药才能采集 -book.starter.title12=辐射 -book.starter.page12a=本书其余部分将讨论与辐射有关的问题。 为了您和他人的安全,我将提供一些建议以说明如何缓解和处理暴露于此的风险。 -book.starter.page12b=充分暴露在辐射中会导致身体伤害. 第一步是预防; 一定要限制接触,并穿戴防护装备,如§l防辐射套装§r, 或在衣服或盔甲上加装§l防辐射覆层/涂料§r; 你也可以服用§lRad-X防辐射药§r来限制你的辐射量. 多亏了现代医学,第二步可以在必要时移除; 例如,§l玩家§l去污器§r将缓慢减少身体吸收的辐射. §l消辐宁§r还可以用作暴露后预防,快速有效地逆转 电离辐射对身体造成的损害。 -book.starter.title13=铀浓缩 -book.starter.page13=核反应堆的燃料有几个简单的选择; 例如,§l天然铀§r或§l钍燃料§r。 然而, 如果你寻找更强力的东西,你可以设置两台§l气体离心机§r 的浓缩级联,用剩余的§l铀-238§r生产§l铀燃料§r. 你必须将天然铀转化为§l黄饼§r,然后是§l六氟化§l铀§r. -book.starter.title14=芝加哥反应堆 -book.starter.page14=或者,您可以使用§l芝加哥反应堆§r从天然铀中增殖出 §l反应堆级钚§r,这是一种更强大的燃料. 通过堆叠石墨块并在其中钻孔,您可以将燃料棒插入钚 和中子源棒,例如§l镭226-铍中子源§r,以开始反应. 确保测试你的设计;为防止过热, 可能需要隔开或限制石墨块的数量。 -book.starter.title15=ZIRNOX锆诺克斯 -book.starter.page15=最终,你可以制造你的第一个§o真正§r的能源来源: §lZIRNOX§r核反应堆. 与其他能量源相比,核反应堆需要更多的准备; 首先,你需要有一个强悍的水源,比如§l重型§l无限水罐§r. 要从反应堆堆芯中排出热量并将水煮沸成蒸汽, 你需要足够的§l二氧化碳§r. 你只需要足够的压力, 不要让压力§o太§r大! 你还需要三个蒸汽涡轮机来利用产生的蒸汽来制造能量; §l蒸汽§l轮机§r或§l大型工业§l汽轮机§r将是最佳的. 最后,需要一个§l冷凝器§r或§l冷却塔§r来将残余蒸汽冷凝成水, 在这个冷却回路中可以将其排空或回收。 -book.starter.title16=结论 -book.starter.page16=如果你已经走到了这一步,你已经走在重建文明大道上了. 你已经成功地用核能, 石油化工等重新制造了世界末日前的那些先进机器. 我不知道你将如何利用这些新发现的科技, 但我个人希望你利用这些优势是为了自己和他人的利益 - 或者至少是为了自卫. 再见! -book.starter.title18=关于作者 -book.starter.page18=v?r只是一个被困在"传声头像"的§o《一生一次》§r中的 灰色虚空中太久的人. 有一次, 他发现了一扇工作室的门, 但令他沮丧的是, 他发现那是一个纸板剪出来的 - -#book.rbmk.cover=HOW 2 RBMK:$The Basics$of Reactor$Construction -#book.rbmk.title1=Introduction -#book.rbmk.page1=The §lRBMK§r is a fully modular nuclear reactor. Unlike most other reactors, there is no "core", and no size limitations, rather, the behavior and efficiency of the reactor comes from how it is built and how the different pieces interact with each other. -#book.rbmk.title2=Heat -#book.rbmk.page2=As the reactor operates, it will generate §lheat§r. Heat will spread between parts, slowly decreasing in the process. The goal is to produce as much heat as possible without melting the reactor, and to move that heat to a §lsteam channel§r which cools the reactor and produces steam. -#book.rbmk.title3=Fuel Rod -#book.rbmk.page3=The §lfuel rod§r will capture neutron flux, causing the fuel inside the fuel rod to react, giving off neutrons in the process. Neutrons are released in all four cardinal directions with a maximum range of 5 blocks. The amount of neutrons released depends on the §lfuel§r used. -#book.rbmk.title4=Control Rod -#book.rbmk.page4=The §lcontrol rod§r will decrease the amount of neutrons passing though it. Fully inserted, it will block all neutrons, at half insertion, it will only block half. Control rods are used to regulate the reactor's activity and to turn it off. -#book.rbmk.title5=Control Rod - Usage -#book.rbmk.page5=The center of the GUI will display the current rod insertion. The colored buttons on the left will add a control rod to a color group, which is useful to quickly select grouped rods from the §lRBMK console§r. The buttons on the right allow for manual insertion in increments of 25%%. -#book.rbmk.title6=Automatic Control Rod -#book.rbmk.page6=§lAutomatic control rods§r function nearly identical to regular control rods, but they cannot be configured manually, instead they will adjust the rod position based on the current temperature. What function to use and how deep to insert at what temperature has to be defined first. -#book.rbmk.title7=Steam Channel -#book.rbmk.page7=The §lsteam channel§r is the only part that will actively reduce the reactor's heat level. If the component's temperature exceeds the boiling point of the set steam type, it will try to consume as much water and produce as much steam as needed to cool back below the boiling point. -#book.rbmk.title8=Neutron Reflector -#book.rbmk.page8=The §lneutron reflector§r will block neutrons from passing it, instead the neutrons will be reflected back at the fuel rod they came from. This is useful for utilizing neutrons that would otherwise be wasted by simply exiting the reactor. -#book.rbmk.title9=Neutron Absorber -#book.rbmk.page9=The §lneutron absorber§r will simply block neutrons. Neutrons absorbed will not generate heat and be effectively voided. This is useful to prevent fuel rods from reacting that would otherwise be in range. -#book.rbmk.title10=Graphite Moderator -#book.rbmk.page10=The §lgraphite moderator§r will convert fast neutrons passing through it into slow neutrons. Most fuels fission into fast neutrons while needing slow neutrons to split, so using moderators is strongly recommended. -#book.rbmk.title11=Structural Column -#book.rbmk.page11=The §lstructural column§r will not interfere with neutrons, nor does it have special uses. It is recommended to fill the reactor with structural columns where no other parts will be, because structural columns are capable of transporting heat. -#book.rbmk.title12=Console -#book.rbmk.page12=The §lRBMK console§r lets you control the reactor from afar. Using the §lRBMK§r §lconsole linking device§r on an RBMK part and then the console will link the reactor to the console. The console can only manage 15x15 parts, for larger reactors you might want to use multiple consoles. -#book.rbmk.title13=Console Usage -#book.rbmk.page13=Clicking on the parts will select and deselect them. Using the colored buttons, you can quickly select all control rods of that color group. Button 'A' will select all control rods, 'X' will deselect all. -#book.rbmk.page14=Entering a number 0-100 in the green box and then hitting the button next to it will set all selected control rods to this position. Button 'AZ-5' will cause all control rods to fully insert. -#book.rbmk.title15=Fuel -#book.rbmk.page15=The §lfuel§r's reactivity is based on multiple factors. The main ones are the §lenrichment§r, §lxenon poison§r and the amount of incoming §lneutrons§r. Xenon builds up when the fuel receives few neutrons and burns away during normal operation. The effectivity of neutrons depends on the type, most fuels §lsplit best with slow neutrons§r. -#book.rbmk.title16=Meltdown -#book.rbmk.page16=§4§lAvoid. - -book_lore.author=%s 著 -book_lore.test.name=测试 -book_lore.test.author=那个家伙 -book_lore.test.page.0=>哈喽 在我开始之前 我得先澄清一下 我不是同性恋 >做我 >今天晚上 >六点 >趁爸妈出去几天 我和铁哥们去外面玩 >我们成了铁哥们已经有一年了 >喝了点酒 打了很多游戏 还点了个披萨 >我们玩得正高兴 >晚上 在一个什么时候 大概九点吧 他讲了个很好笑的笑话 我记不清了 但是我记着 那笑话让我俩笑疯了 >没来得及细想 我拿手捋了捋他的头发 黑色的微卷的头发 还说他真有意思 >他脸红了 >我意识到自己慌了 >我们有点太亲密了 >突然他亲了我 不知道为什么 我亲回去了 >我们做爱了 >抱在一起睡着了 >半夜我醒了 发现他脑袋贴着我的胸和脖子 >这种感觉很奇妙 但我真的不是同性恋 -book_lore.test.page.1=我打这些字的时候他正在我 怀里睡觉。我怎么就这样让 我哥们失望了?我不想变成 [数据删除] /b/ -book_lore.test.page.2=3 -book_lore.test.page.3=4 -book_lore.test.page.4=5 - -book_lore.book_iodine.name=笔记 -book_lore.book_iodine.author=戴夫 -book_lore.book_iodine.page.0=说起来你肯定不信:“风向 标”那老家伙在离开两个月 之后又重新出现了。而且更 惊人的是,他打算把那伙人 在峡谷里干的秘密勾当泄露 出去。 -book_lore.book_iodine.page.1=搞研发的那群白痴们偶然发 现了一种化合物:大部分是 无机的,很像自然界中的 毒素。但是注意:被这种毒素 杀死的细胞会产生更多的同 种毒素,并将其释放到皮肤 外面,这就产生了传染性极 强的气溶胶。 -book_lore.book_iodine.page.2=这东西像病毒但又不是病毒。 这种物质非常奇怪,你在家 随便找一个瓶子就能混合 出来,但是必须要搞对顺序。 博士告诉我,第一种原料是 粉末状碘晶体,放在 第%d格。 - -book_lore.book_phosphorous.name=笔记 -book_lore.book_phosphorous.author=戴夫 -book_lore.book_phosphorous.page.0=哈喽,又是我。你应该看到 我的上一篇备忘录了吧。 博士对我写备忘录这件事有 点生气,所以我得快点写完。 那群搞研发的傻帽又开始一 个劲地抱怨,估计还是什 么钱的事。 -book_lore.book_phosphorous.page.1=对了,“风向标”博士发现了 第二种原料是红磷,应该 放在第%d格。 - -book_lore.book_dust.name=笔记 -book_lore.book_dust.author=戴夫 -book_lore.book_dust.page.0=博士发现搞研发的那群呆子 还留了个样品之后气得要命, 大喊大叫了一通“总体过失” 和“世界末日”什么的。 我告诉他先冷静一下, -book_lore.book_dust.page.1=太激动对血压不好,而且他 本身就没有那么多血。那群 呆子里面的一个在上周的通 报里说漏了嘴。他们管他们 调出来的那玩意儿叫“MKU” ——管他是什么意思,而且 那玩意儿里面还有家里的 绒毛。 -book_lore.book_dust.page.2=你肯定不信,那群呆子最危 险的发明之一里面还有灰尘 ——奇怪的是,他们甚至提到 这东西应该放在第%d格。 - -book_lore.book_mercury.name=笔记 -book_lore.book_mercury.author=戴夫 -book_lore.book_mercury.page.0=就是这么回事。不算吐血的 部分,毒理学报告很大程度 上呈现了汞中毒的特征。 为什么?因为那堆混合物里 也含有水银! -book_lore.book_mercury.page.1=我很好奇,这东西被细胞复 制的时候,复制出来的物质 是从哪来的? 扯远了。水银应该放到 第%d格。 - -book_lore.book_flower.name=笔记 -book_lore.book_flower.author=戴夫 -book_lore.book_flower.page.0=还记得我在第一篇备忘录里 提到了“这东西大部分是无 机的”吗?你猜怎么着, 老“风向标”跟我分享了第 四样原料:一种花,学名叫 “ipomoea nil”。是牵牛花! -book_lore.book_flower.page.1=可能是由于牵牛花较低的硫 含量,用别的花都不行。 牵牛花应该放在第%d格。 - -book_lore.book_syringe.name=笔记 -book_lore.book_syringe.author=戴夫 -book_lore.book_syringe.page.0=对我第五篇备忘录的一点 补充:很显然你应该找个容 器把这些MKU装进去。搞 研发的那帮疯子用的是从医 疗机构弄到的普通金属注射 器——我推测还有不少多余 的。他们弄了几千个,然后 扔的到处都是。 -book_lore.book_syringe.page.1=金属注射器 应该放在第%d格。 - -book_lore.resignation_note.name=辞职信 -book_lore.resignation_note.author=科斯马 -book_lore.resignation_note.page.0=管理层昨天又对我们的部门 进行裁员了。那群白痴要怪 只能怪他们自己,我都不知 道他们在那场惨败后还在期 待什么。到底是谁他妈泄露 了那种程度的信息? -book_lore.resignation_note.page.1=我们损失了几百万,而且现 在失业的还是爷。老子希望 你们这帮混蛋最后能从你们 的一堆问题中学到点教训然 后给爷滚去自闭。 -book_lore.resignation_note.page.2=我周五不回来了。 记得把工资发我。 - -book_lore.memo_stocks.name=公司内部备忘录 -book_lore.memo_stocks.page.0=投资人相关 - $ $ 上季度报告提供的数字中已 经出现了明显差异。财政部 门即使做出一些调整也是相 当谨慎的,因此无需担心。 - -book_lore.memo_schrab_gsa.name=内部备忘录 -book_lore.memo_schrab_gsa.page.0=合同管理记录 - $ $ 法务部在与DLA的谈判中 取得了突破。他们批准了 450亿的联邦采购服务 总署投资资金用于异变金属 的采购与研究。 -book_lore.memo_schrab_gsa.page.1=就目前的预期,相关事项能 够带来至少40%%的利润, 以及获得未来合同的更大可 能。由于此事件的保密性质, 所有财政证据都将保持机密。 - -book_lore.memo_schrab_rd.name=内部备忘录 -book_lore.memo_schrab_rd.page.0=研发 - $ $ 目前我们生产异变金属的 主要方法是使用新型粒子加 速器。然而,与产出量相比, 能源成本高得惊人。 -book_lore.memo_schrab_rd.page.1=然而,施拉鲍尔博士发现了 一种全新的相互作用—— 暂称为“奇异轻子振荡”—— 该作用可以显著降低生产 成本。通过一个目前未被完 全理解的的过程,提供的电子 被一种奇特的“魔力”转化 为极高能量的光子。 -book_lore.memo_schrab_rd.page.2=这是许多已明确的粒子转换 定律的极端例外。但初步实 验证明,这些质子先转变为 上下夸克,最终形成了异变 金属。 -book_lore.memo_schrab_rd.page.3=奇怪的是,原型机中需要钨与 少量异变金属形成的合金。 另外,原型机中也需要一个 特殊的电容器,用于消除多 余的正电荷。 - -book_lore.memo_schrab_nuke.name=研究报告 -book_lore.memo_schrab_nuke.author=施拉鲍尔博士 -book_lore.memo_schrab_nuke.page.0=最近的研究将我们引至了核 爆对材料的影响。多亏了外 界的拨款,我们“意外地” 测试了我们的铀定向合成异 变金属理论。 -book_lore.memo_schrab_nuke.page.1=而此前我们只在回旋加速器 中制作出异变金属。然而, 我们在埃弗韦彭的地下实验 室的铀矿石中发现了微量的 异变金属,附近所有的纯 金属铀则都发生了裂变。 -book_lore.memo_schrab_nuke.page.2=既然如此,那么使用浓缩到 临界质量附近的铀矿石,或 者是含有大量可裂变核废料 的脏弹,都有可能在理论上 创造足以人工收集的量的 异变金属。 - -book_lore.bf_bomb_1.name=私人笔记 -book_lore.bf_bomb_1.author=M. 波特 -book_lore.bf_bomb_1.page.0=虽然过了很久,但我的工作 调动申请终于批下来了。那 些刚升级的毕业生已经够难 对付了,更别提上边那些人 ——他们一点专业素质 都没有。 $ 换工作地点也不全是好事—— 现在这个实验室拒绝提供进 一步的细节,而且我已经被 另外一个魔法般的新发现 搞得够乱了。 -book_lore.bf_bomb_1.page.1=就是这样。那些学生们各有 各的疑惑 (想想他们多有 精神就知道这有多让人奇怪), 而我唯一的……同事 (竞争 对手?) 只是在做发小册 子的工作。这些事之间的联 系绝对比我想的要复杂。他 的笔记很打击人: -book_lore.bf_bomb_1.page.2=“又有一种奇异物质被偶然 发现;这种物质被指明是反 物质和一种边缘同位素的复 合物。小册子上说它叫‘旋素’ ——鬼知道这名字什么意思, 然后就没了。 -book_lore.bf_bomb_1.page.3=“怪不得他们想找个理论物 理学家,还不是因为他们连 这东西是什么都不知道。但 另一方面,基本上随便什么 工作都比我的旧职位强, 所以我也别抱怨这上面基本 什么都没有了。” - -book_lore.bf_bomb_2.name=私人笔记 -book_lore.bf_bomb_2.author=M. 波特 -book_lore.bf_bomb_2.page.0=即使那本小册子上缺少大量 信息,我还是希望他们知道 的比我更多一点。但是他们 也不知道别的了。其他年长 一些的研究员都对这种物质 有一种盲目的信念:他们的 命题都是完全合理的。 我压根无话可说! -book_lore.bf_bomb_2.page.1=而且我甚至没法责备他们。 “旋素”没个屁的合理性! 这东西和我见过的其他物质 完全不一样。它的外表令人 毛骨悚然:它的颜色不停变 换着,霓虹绿色的表面上弥 漫着颜色略深的线条。 -book_lore.bf_bomb_2.page.2=更糟的是这东西还是个能量 源。我们样品的存在本身 就是对“ALARA”规则的 违背:当样本到达实验室时, 我们都撤离了实验室,唯一 一个够勇敢的人 (叫“梅菲因博士”) 也只穿着A级防护服移动了 样品20米。 -book_lore.bf_bomb_2.page.3=实验上的数据也没有好多少。 这东西辐射的能量非常强, 强到好像热力学第一定律都 要被打破一样;在这东西附 近的任何地方待着——甚至隔 着一米厚的铅——都十分恐怖。 我们做了光谱学方面的推断 就冲出了实验室,但什么新 发现都没有。 -book_lore.bf_bomb_2.page.4=但在这些事之后,科研团队 里的那群白痴竟然一点都没 有动摇!在那么些“讨论” 的时候干坐着够难受了; 一个带头人还胡乱说对这项 试验的禁令会被取消,也就 是说接下来几周我们可以逃 脱这些烂摊子来好好造炸弹。 -book_lore.bf_bomb_2.page.5=他们心里到底觉得谁会来干 这件事?麻烦得要命。最后, 一个理智的助手 (叫安德鲁) 给这种物质起了个外号叫 “野火”——因为和这东西比 起来,在火葬堆上被活活烧 死的痛苦都不算什么。 - -book_lore.bf_bomb_3.name=私人笔记 -book_lore.bf_bomb_3.author=M. 波特 -book_lore.bf_bomb_3.page.0=我和我的团队取得了一些突 破。谈一下我的“分离” ——我把自己从那些更“虔诚” 的人里面分离出来之后,在 那工作变得好受多了。虽然 我们仍然对野火的具体性质 不甚了解 (因为研究一个 会毁了设备的东西非常难) , -book_lore.bf_bomb_3.page.1=但对野火与其他物质相互作 用的研究取得了丰硕成果。 值得注意的是,野火会与其 他物质形成“气态”;所有人 里面,只有安德鲁提醒我: 那其实是悬浮在稀有气体中 的微小野火粒子形成的胶体, -book_lore.bf_bomb_3.page.2=每个野火粒子都被带正电的 “气体泡”包裹着,这样这些 粒子就不会沉降。谁能想到 这东西的致命伽马辐射会有 好处?反正不是我。 -book_lore.bf_bomb_3.page.3=我尽量不去想他们是怎么把 样品转化成微粒的,但我并 不能把这些气态野火的实用 性一笔带过——气态野火使得 对野火的研究更加安全了。 $ 说到安全,带头人 (冷酷无情事不关己地) 做了一项差点让他掉脑袋的 发现。 -book_lore.bf_bomb_3.page.4=他决定把自己“弄脏”: 让一单元量的野火胶体和极 其昂贵的反物质直接反应。 产生的爆炸把它们所在的桌 子化成了一块被大量辐照过 的废渣,并在桌面上刻出了 一个几乎完美的半球, -book_lore.bf_bomb_3.page.5=还让领头人的脑袋吸收了足 以引起急性放射综合征的辐 射。我觉得我们现在知道了 怎么引爆野火, 但是某些人…… - -book_lore.bf_bomb_4.name=私人笔记 -book_lore.bf_bomb_4.author=M. 波特 -book_lore.bf_bomb_4.page.0=我没办法逃脱我的旧工作。 现在这种死气沉沉的动荡 时代,只有这个地方在招人 了;但我不会再回我那个坑 里了。 $ 他们只是在诱惑我,因为我 需要出去,需要挣快钱。 还记得我们一周前退出的空 中试验协定吗? -book_lore.bf_bomb_4.page.1=那些掌管我们实验室的烂人 终于做对了一次。谴责与我 们将野火武器化需要的一大 批科学家一同到来。这里缺 少的批判性思维真是令人费 解——安德鲁甚至在第一份 该死的野火炸弹设计开始草 拟的那一刻突然不干了。 -book_lore.bf_bomb_4.page.2=那个梅菲因看上去打小算盘 打得很高兴,难道他搬野火 样品的时候脑子坏掉了? ——他还提出了使用固化的野 火以及高压电池的傻逼设计。 -book_lore.bf_bomb_4.page.3=很显然,这种形式的物质输 出的能量和激活途径或者别 的什么玩意和传统核弹比, 就像钚跟铀在传统核弹里面 比一样;但最终的结果是初 始的震荡引发了爆炸。 这倒是挺有意思。 -book_lore.bf_bomb_4.page.4=他们这些人都把注意力集中 在了激活上,而完全忽略了 具体机制——因为他们连点头 绪都摸不着!现在看来或许 就是魔法,然而那些人还在 尝试参透整个过程——也只是 为了制造更多战争用的武器 而已。 - -book_lore.bf_bomb_5.name=私人笔记 -book_lore.bf_bomb_5.author=M. 波特 -book_lore.bf_bomb_5.page.0=就算过了很多天,我…… 还是理解不了这些。整个科 研团队对安全的轻率,似乎 让整个事情成了必然结局。 $ $ 梅菲因·M.S.博士,已经 离开了,或许已经离开这个 世界了。悲剧,就在我的眼皮 底下,就在他们的试验仓里, 发生了。 -book_lore.bf_bomb_5.page.1=那时候我们刚刚得到另外一 批野火纯品,而且他已经修 好了用来测试他的提案的电 子设备和能量源。我不知道 到底是什么导致的 (开机了吗?还是开始得 太早了?) ,但是悲剧貌似 已经痛苦地、缓慢地开始了。 -book_lore.bf_bomb_5.page.2=野火的绿色光芒逐渐吞噬了 桌子,吞噬了电池,吞噬了站 在一米之外的梅菲因博士, 甚至桌子都被降解成了地板 上一滩滚烫的金属,但梅菲 因还没有燃烧。我不知道他 从自己的眼里看到了什么…… $ $ 或许,恐惧,或者敬畏笼罩了 梅菲因最后的生存时间? -book_lore.bf_bomb_5.page.3=不管我们的“奇迹”物质是 什么,它都不在乎。突然间, 一束炽热的闪光出现,闪光 过后,梅菲因就消失了。他蒸 发了?被烧化了?还是湮灭 了?见鬼去吧,我没法知道 了! -book_lore.bf_bomb_5.page.4=领头人让我感觉很恶心。 “我们本来能更小心”“本来 能一直监控着”,还有其他 管它是什么的提高士气的污 物从他嘴里呕出来。这家伙 永远都不会明白“玩火自焚”! -book_lore.bf_bomb_5.page.5=我不嫌辞职麻烦,就立马卷 了铺盖,向山里跑去。但后 果并没有那么严重;考虑到 那边缺少电话,而且看到从 我的 (前) 工作地点升起 的蘑菇云,他们应该不是被 炸飞了,就是上了最高等级 的军事法庭了。 -book_lore.bf_bomb_5.page.6=在“死体解剖”和“活体解剖” 之间,我们必须要做出选择; 有一个选项已经在他们身上 明明白白地失败了。他们 想解剖多少金属或者原子就 能解剖多少;但是批判现实、 解剖现实这件事,只能在更 多的梅菲因身上走向终结。 谁知道呢! -book_lore.bf_bomb_5.page.7=到最后,政府还是想把这堆 烂摊子拿来研发炸弹。或许, 我们还会看到更多的战争, 看到更多的人被迫接受比死 亡更惨的命运。 他们不可能永远都藏着掖着。 -book_lore.bf_bomb_5.page.8=我不在乎了。再也不在乎了。 老天爷啊,让我回到真正的 科学之中吧! $ $ 该死,Mae,找找你自己…… - -book_lore.beacon.name=信号信标说明书 -book_lore.beacon.author=Flim Flam工业 -book_lore.beacon.page.0=感谢您购买Mk.2照明信号信标 (版本1.3)! 这本小册子将简要介绍信标 的操作及其内部工作原理。 -book_lore.beacon.page.1=第1章:构成 $ 每个单元由四个主要部分 组成:控制电路、灯笼、雾号 和容纳其他部分的外壳。 有关主电路的详细说明,请 参考外壳维护盖内部的 电路图。 -book_lore.beacon.page.2=灯笼由聚碳酸酯外壳组成, 外壳内有一个标准200mm 的双色250瓦卤素灯泡, 替换用灯泡可以从我们的 商店订购。 -book_lore.beacon.page.3=不建议使用第三方灯泡,因为 我们无法确保安全操作。外壳 由专门的镀锌不锈钢制成, 具有耐用性。 -book_lore.beacon.page.4=第2章:灯笼 $ 灯笼的主要用途是在恶劣的 天气条件下提供照明以便 维护,同时指示信标的状态。 如果开机自检 (POST) 失败,灯将 -book_lore.beacon.page.5=亮起红色,否则就会亮起 绿色。请注意,颜色可能因 替换用灯泡的不同而有所 不同。 -book_lore.beacon.page.6=第3章:雾号 $ 雾号是信标的主要通信设备。 该信标被设计用于点对点 (P2P) 通信以及 消息广播。 -book_lore.beacon.page.7=第4章:P2P通信 $ 有关通信的详细信息,请参阅 通信手册。建立P2P连接的 简要介绍如下:首先,信标 必须给出“开始连接”信号, -book_lore.beacon.page.8=该信号是单一的长音。所有 可用的对等端也应使用一个 长音进行响应 (由接近度指定的顺序,以及 手册“响应连接”一节中 概述的通信指南) -book_lore.beacon.page.9=一旦所需对等端做出响应, 则给出“接受连接”信号, 即两个长音,然后对等端也 将用两个长音调进行响应。 之后的所有通信都必须使用 预先协商的信号来进行, -book_lore.beacon.page.10=最常用的是FAR-5M标准。 如果没有协商标准,通信将 立即结束,起到“ping” 的作用。如果通信继续, 可以使用另一个长单音 “结束连接”来结束连接。 -book_lore.beacon.page.11=第5章:保修 $ [页面故意留空] - -cannery.f1=[按F1键获取帮助] - -cannery.centrifuge=气体离心机 -cannery.centrifuge.0=气体离心机可以使用通用流体管道传输流体。 -cannery.centrifuge.1=大多数配方需要多台离心机。中间产品不能通过管道运输。 -cannery.centrifuge.2=该侧用作将中间产品输出到相邻离心机的连接口。 -cannery.centrifuge.3=六氟化铀只需两台离心机即可加工,但这将只产出铀燃料和铀-238。 -cannery.centrifuge.4=将其完全加工成铀-235和铀-238总共需要四台离心机。 -cannery.centrifuge.5=一些配方还需要离心机超频升级。 - -cannery.crucible=坩埚 -cannery.crucible.0=坩埚用于熔炼矿石、铸锭或其他金属物品以进行合金化,并将其铸造成不同形状。 -cannery.crucible.1=它需要一个外部热源连接到底部,例如燃烧室。 -cannery.crucible.2=一旦加热,坩埚可以以两种方式运行,有或没有配方模板。 -cannery.crucible.3=坩埚有两个材料储存缓冲区: -cannery.crucible.4=左边的缓冲区用于缓存§a副产品§r,所有没有配方模板的熔炼材料都将缓存在这里。 -cannery.crucible.5=如果有熔炼配方,与配方不匹配的材料也将存储在这里。 -cannery.crucible.6=该缓冲区中的材料不会相互反应,只能从绿色出口输出用于铸造。 -cannery.crucible.7=右侧的缓冲区用于放入§c配方§r,如果安装了一个配方,并且该特定材料与该配方相关,则它将储存在此处。 -cannery.crucible.8=这些材料将慢慢结合成输出材料,从红色出口自动输出。 -cannery.crucible.9=请注意,只有这个缓冲区处理配方。如果更换模板,副产品缓冲区中的材料不会结合,也不会转移到配方缓冲区。 -cannery.crucible.10=如果目标有效,例如铸造通道或模具,出口将自动输出材料。 -cannery.crucible.11=与所有铸造块一样,可以使用铲子从坩埚中移除所有材料。 - -cannery.fensu=FEnSU -cannery.fensu.0=FEnSU能够存储超过9EHE(即9后18个零)的荒谬能量。 -cannery.fensu.1=只有在其底部有一个电线接口。 -cannery.fensu.2=这也是FEnSU唯一可以接收红石信号的地方。 - -cannery.firebox=燃烧室 -cannery.firebox.0=燃烧室通过燃烧可燃物品产生热量。 -cannery.firebox.1=它可以燃烧任何可燃物品,但更高质量的燃料如煤、焦炭和固体燃料燃烧时间更长,温度更高。 -cannery.firebox.2=燃烧室顶部的铜触点可以传导热量。底部具有相同触点的机器可以通过放置在燃烧室顶部来接收热量。 -cannery.firebox.3=如果热量没有用完,且热量缓冲器变满,燃烧室将暂停运行,以防止燃料浪费。 -cannery.firebox.4=一种这样的机器是斯特林发电机,它将热量直接转化为能量。 - -cannery.foundryChannel=铸造通道 -cannery.foundryChannel.0=铸造通道用于将熔融材料从坩埚或储罐输送到模具中。 -cannery.foundryChannel.1=通道可以通过从顶部(通过出口或直接连接坩埚)或从其他通道的侧面倾倒来接收材料。 -cannery.foundryChannel.2=运输材料时,渠道将优先考虑出口和浅铸造池等方块。 -cannery.foundryChannel.3=当无法供应出口或模具时,材料将流入相邻通道。 -cannery.foundryChannel.4=剩余材料可以用铲子清除。 - -cannery.silex=FEL & SILEX -cannery.silex.0=自由电子激光器(FEL)利用能量和激光晶体产生强大的激光束。 -cannery.silex.1=小心,因为激光会烧毁或熔化较脆弱的方块… -cannery.silex.2=…但不是防爆的。 -cannery.silex.3=FEL用于为激光同位素分离室(SILEX)提供能量。FEL和SILEX必须至少相隔两个方块。 -cannery.silex.4=激光必须通过SILEX的玻璃开口进入。在错误的方向上入射可能会摧毁它。 -cannery.silex.5=侧面的开口可以使流体管道连接至SILEX上。 -cannery.silex.6=除了侧面的两个连接口之外,底部还有第三个隐藏连接口,可以从中抽取产品。 -cannery.silex.7=每个配方都需要特定的激光类型。使用比所需类型更强的激光将更快地处理项目。 -cannery.silex.8=一台FEL最多可以为5台SILEX供能。每个SILEX之间必须间隔一个方块。 - -cannery.stirling=斯特林发电机 -cannery.stirling.0=斯特林发电机使用来自外部的热能来产生能量。 -cannery.stirling.1=它需要放置在发热机器的顶部,如燃烧室。 -cannery.stirling.2=然而,它可以利用的热量有限,过旋转可能导致灾难性故障。 -cannery.stirling.3=升级版可以在不损坏的情况下承受更多热量。 - -cannery.willow=芥子柳 -cannery.willow.0=芥子柳是一种可以富集镉金属的植物。 -cannery.willow.1=芥子柳可以种植在泥土、草地上,甚至是泥渣或油泥上,但它们需要水才能生长。 -cannery.willow.2=芥子柳可以用骨粉或工业肥料催熟。它们不需要光就可以生长。 -cannery.willow.3=在第二阶段的生长之后,它们将需要在上方有至少一个方块的空间才能进一步生长。 -cannery.willow.4=在生长的第四阶段之后,它们需要下面有泥渣或油泥。 -cannery.willow.5=这可以通过在泥渣或油泥上手动种植芥子柳来实现,也可以通过在附近设置一个不断污染地面的水力压裂塔来实现。 -cannery.willow.6=到达最后阶段后,芥子柳将清除地面上的污染物,使泥渣或油泥恢复为正常的泥土。 -cannery.willow.7=现在芥子柳的叶子可以收割了。打破顶部的块状物会掉落一株3-6片叶子的小芥子柳,并保持植物底部的完整。 -cannery.willow.8=很快,这种植物就会重新开始生长,如果泥土被油泥取代,就会长出更多的叶子。叶子可以用酸化机加工成镉粉。 -cannery.willow.9=使用自动锯可以自动收割柳叶,它只会打碎准备收割的植物。 - -cannery.hadron=粒子加速器 -cannery.hadron.0=粒子加速器包含3个主要部分: 核心,粒子分析室以及一系列的超导线圈。 -cannery.hadron.1=画面上的方块为粒子加速器核心组件,会以相对论的速度沿线圈向粒子分析室发射粒子。 -cannery.hadron.2=粒子会从此面发射; -cannery.hadron.3=在环形加速器中,会回到此面。 -cannery.hadron.4=每个线圈区段由8个致密线圈构成,中间留空(或放置粒子加速器核心)。 -cannery.hadron.5=线圈区段本身也必须被粒子加速器镀层包裹。 -cannery.hadron.6=加速器中还需要添加一个或多个粒子加速器接入终端,以与核心组件交互。 -cannery.hadron.7=核心组件也需要电力运行,因此需要在边缘添加电源接口。 -cannery.hadron.8=粒子加速器需要足够的电源接口来供给至少10kHE每单位线圈强度的能量。 -cannery.hadron.9=注意:环绕核心组件的线圈区段不参与线圈强度计算, -cannery.hadron.10=而且完全的直线粒子加速器不需要此区段。 -cannery.hadron.11=环形加速器中,需要如下的转角结构来改变粒子的方向: -cannery.hadron.12=外侧转角的线圈可以被完全去除。 -cannery.hadron.13=粒子加速器的最终部分是粒子分析室,这是一个由分析室方块包围的3x3x3空间。 -cannery.hadron.14=搭建完成的粒子加速器的外观应该类似下面这样: - -cannery.hadron.math.0=致密钕线圈强度:50 -cannery.hadron.math.1=50 x 8 x 10KHE = 400 x 10KHE = 4MHE -cannery.hadron.math.2=致密星辉线圈强度:1,000 -cannery.hadron.math.3=1,000 x 8 x 10KHE = 8,000 x 10KHE = 80MHE - -cannery.schottky=肖基特二极管 -cannery.schottky.0=画面上的方块为肖基特二极管。此方块可用于更复杂的粒子加速器设计,也可用于节省电能。 -cannery.schottky.1=默认状态下,二极管会阻挡所有粒子,需要使用螺丝刀进行配置。 -cannery.schottky.2=此面会接受进入的粒子, -cannery.schottky.3=而此面会将进入的粒子发射出去。 -cannery.schottky.4=现在图中的二极管含有两个出口,会表现出“量子”行为:在每个出口创造一个“虚拟粒子”。 -cannery.schottky.5=一旦所有的“虚拟粒子”都达到了分析室,粒子加速器就会选择动量需求最低的配方执行。 -cannery.schottky.6=被选中的粒子会经历“波函数坍缩”,变成真实的粒子,并且加速器只会消耗“坍缩”的虚拟粒子需求的能量。 -cannery.schottky.7=如果某一个虚拟粒子进入了结构不正确的区段,所有的虚拟粒子都会被销毁,而且坍缩的将是出错的粒子而非其他到达分析室的粒子。 -cannery.schottky.8=注意:同一个虚拟粒子只会经过同一个二极管的同一出口一次。虚拟粒子不会进入死循环,但仍然可以进入另一个二极管。 -cannery.schottky.9=肖基特二极管周围应具有合适的结构,使得粒子在每个交叉点处都有路可走。 - -chem.ARSENIC=砷提取 -chem.ASPHALT=沥青生产 -chem.BAKELITE=电木生产 -chem.BALEFIRE=野火火箭燃料混合 -chem.BP_BIOFUEL=生物燃料酯化 -chem.BP_BIOGAS=沼气生产 -chem.C4=C-4合成 -chem.CC_CENTRIFUGE=氯方解石分离 -chem.CC_ELECTROLYSIS=氯化钙电解 -chem.CC_HEATING=高级煤液化 -chem.CC_HEAVY=初级煤液化 -chem.CC_I=强化煤液化 -chem.CC_NAPHTHA=煤液化石脑油 -chem.CC_OIL=煤液化 -chem.CIRCUIT_4=超频电路生产 -chem.CIRCUIT_5=高性能电路生产 -chem.CO2=二氧化碳生产 -chem.COALGAS_LEADED=含铅煤汽油混合 -chem.COLTAN_CLEANING=钶钽铁矿提纯 -chem.COLTAN_CRYSTAL=钽结晶 -chem.COLTAN_PAIN=Pn(III)钽铁溶液生产 -chem.CONCRETE=混凝土生产 -chem.CONCRETE_ASBESTOS=石棉夹层混凝土生产 -chem.COOLANT=冷却液混合 -chem.CORDITE=无烟火药生产 -chem.CRYOGEL=冷凝胶混合 -chem.DESH=Desh生产 -chem.DEUTERIUM=氘萃取 -chem.DUCRETE=贫铀混凝土生产 -chem.DYN_DNT=双聚中子态素合成 -chem.DYN_EUPH=Ep合成 -chem.DYN_SCHRAB=Sa326合成 -chem.DYNAMITE=炸药合成 -chem.ELECTROLYSIS=低温电解水 -chem.EPEARL=末影珍珠合成 -chem.ETHANOL=乙醇生产 -chem.FC_BITUMEN=沥青裂化 -chem.FC_DIESEL_KEROSENE=柴油裂化 -chem.FC_GAS_PETROLEUM=天然气裂化 -chem.FC_I_NAPHTHA=工业油裂化 -chem.FC_KEROSENE_PETROLEUM=煤油裂化 -chem.FP_HEAVYOIL=重油加工 -chem.FP_LIGHTOIL=轻油加工 -chem.FP_NAPHTHA=石脑油加工 -chem.FP_SMEAR=工业油加工 -chem.FR_PETROIL=汽油混合 -chem.FR_REOIL=原油再加工 -chem.FRACKSOL=压裂液生产 -chem.GASOLINE=含铅汽油生产 -chem.GASOLINE_LEADED=含铅汽油混合 -chem.HEAVY_ELECTROLYSIS=低温电解重水 -chem.HELIUM3=使用月球草皮提取氦-3 -chem.KEVLAR=凯夫拉生产 -chem.LAMINATE=强化夹层玻璃生产 -chem.LPG=石油天然气液化 -chem.LUBRICANT=润滑剂混合 -chem.MEAT_PROCESSING=异虫肉矿物提取 -chem.METH=甲基苯丙胺合成 -chem.NITAN=NITAN牌超级燃料混合 -chem.NITRIC_ACID=硝酸生产 -chem.OIL_SAND=沥青砂提取 -chem.OSMIRIDIUM_DEATH=锇酸溶液生产 -chem.PC=聚碳酸酯合成 -chem.PC_ELECTROLYSIS=氯化钾电解 -chem.PEROXIDE=过氧化氢生产 -chem.PET=PET合成 -chem.PETROIL_LEADED=含铅石油混合 -chem.POLYMER=聚合物合成 -chem.PUF6=六氟化钚生产 -chem.PVC=聚氯乙烯合成 -chem.RUBBER=橡胶生产 -chem.SAS3=三硫化Sa生产 -chem.SATURN=土星锭生产 -chem.SCHRABIDATE=Sa酸铁生产 -chem.SCHRABIDIC=Sa酸合成 -chem.SF_BIOFUEL=生物燃料固化 -chem.SF_BIOGAS=沼气固化 -chem.SF_DIESEL=柴油凝固 -chem.SF_GAS=天然气固化 -chem.SF_HEATINGOIL=燃油固化 -chem.SF_HEAVYOIL=重油固化 -chem.SF_KEROSENE=煤油固化 -chem.SF_LIGHTOIL=轻油固化 -chem.SF_LUBRICANT=润滑剂固化 -chem.SF_NAPHTHA=石脑油固化 -chem.SF_OIL=原油固化 -chem.SF_PETROIL=石油固化 -chem.SF_PETROLEUM=石油气固化 -chem.SF_RECLAIMED=再生油固化 -chem.SF_SMEAR=工业油固化 -chem.SHELL_CHLORINE=16英寸氯气炮弹生产 -chem.SHELL_MUSTARD=16英寸芥子气炮弹生产 -chem.SHELL_PHOSGENE=16英寸光气炮弹生产 -chem.SOLID_FUEL=固体火箭燃料生产 -chem.SOLVENT=有机溶剂混合 -chem.STEAM=烧水 -chem.SULFURIC_ACID=硫酸生产 -chem.TATB=TATB合成 -chem.TEL=四乙基铅混合 -chem.TEST=测试 -chem.THORIUM_SALT=钍盐富集 -chem.TNT=TNT合成 -chem.UF6=六氟化铀生产 -chem.VIT_GAS=气态核废料玻璃化 -chem.VIT_LIQUID=液态核废料玻璃化 -chem.XENON=林德循环制氙 -chem.XENON_OXY=增强林德循环制氙 -chem.YELLOWCAKE=黄饼生产 - -commands.satellite.no_satellite=未找到使用此频率的卫星! -commands.satellite.not_a_satellite=持有的物品不是卫星! -commands.satellite.satellite_descended=卫星成功降落。 -commands.satellite.satellite_orbited=卫星发射。 -commands.satellite.should_be_run_as_player=此命令应该由玩家运行! - -container.amsBase=AMS基座(装饰) -container.amsEmitter=AMS发射极(装饰) -container.amsLimiter=AMS稳能器(装饰) -container.anvil=%s级砧 -container.arcFurnace=电弧炉 -container.armorTable=装甲改装台 -container.ashpit=储灰槽 -container.assembler=装配机 -container.autocrafter=自动工作台 -container.barrel=桶 -container.bat9000=巨尻-9000 储罐 -container.battery=储能 -container.bombMulti=多用途炸弹 -container.catalyticReformer=催化重整器 -container.centrifuge=离心机 -container.chemplant=化工厂 -container.compactLauncher=紧凑型发射台 -container.craneBoxer=输送带打包机 -container.craneExtractor=输送带提取器 -container.craneGrabber=输送带抓斗 -container.craneInserter=输送带导入器 -container.craneRouter=传送路由器 -container.craneUnboxer=输送带解包机 -container.crateDesh=Desh箱 -container.crateIron=铁箱 -container.crateSteel=钢箱 -container.crateTemplate=模板箱 -container.crateTungsten=钨箱 -container.crystallizer=矿物酸化器 -container.cyclotron=回旋加速器 -container.dfcCore=暗核聚变堆核心 -container.dfcEmitter=DFC发射器 -container.dfcInjector=DFC燃料喷射器 -container.dfcReceiver=DFC接收器 -container.dfcStabilizer=DFC稳定器 -container.diFurnace=高炉 -container.diFurnaceRTG=核高炉 -container.droneCrate=运输无人机坞 -container.droneDock=物流无人机坞 -container.droneProvider=供应箱 -container.droneRequester=请求箱 -container.electricFurnace=电炉 -container.epress=电动锻压机 -container.exposureChamber=曝光室 -container.factoryAdvanced=高级工厂 -container.factoryTitanium=工厂 -container.fluidtank=储罐 -container.fileCabinet=文件柜 -container.forceField=力场发生器 -container.frackingTower=水力压裂塔 -container.furnaceBrick=砖砌炉 -container.furnaceCombination=复式炼焦炉 -container.furnaceIron=铁炉 -container.furnaceSteel=钢炉 -container.fusionMultiblock=大型聚变反应堆 -container.fusionaryWatzPlant=Watz聚变反应堆 -container.gasCentrifuge=气体离心机 -container.gasFlare=高架火炬 -container.generator=研究型反应堆 -container.hadron=粒子加速器 -container.heaterFirebox=燃烧室 -container.heaterHeatex=热交换器 -container.heaterOilburner=流体燃烧器 -container.heaterOven=加热炉 -container.hydrotreater=加氢装置 -container.iGenerator=工业发电机 -container.keyForge=锁匠桌 -container.launchPad=导弹发射台 -container.launchPadRusted=导弹发射台 -container.launchTable=大型发射台 -container.leadBox=安全盒 -container.machineArcWelder=电弧焊机 -container.machineArcFurnaceLarge=电弧炉 -container.machineBoiler=锅炉 -container.machineCMB=CMB炼钢炉 -container.machineCoal=火力发电机 -container.machineCoker=焦化装置 -container.machineCompressor=压缩机 -container.machineCrucible=坩埚 -container.machineDiesel=柴油发电机 -container.machineElectricBoiler=电锅炉 -container.machineElectrolyser=电解机 -container.machineFEL=FEL -container.machineFunnel=组合漏斗 -container.machineICF=ICF反应堆 -container.machineICFPress=ICF燃料靶丸制造器 -container.machineITER=聚变反应堆 -container.machineLargeTurbine=工业汽轮机 -container.machineLiquefactor=液化机 -container.machineMixer=工业搅拌机 -container.machineOreSlopper=B.O.P. -container.machineRefinery=炼油厂 -container.machineSelenium=星型发动机 -container.machineShredder=粉碎机 -container.machineSILEX=激光同位素分离室 -container.machineSolderingStation=焊接台 -container.machineSolidifier=固化机 -container.machineStrandCaster=连续铸造机 -container.machineTurbine=汽轮机 -container.machineTurbofan=涡扇发动机 -container.machine_schrabidium_transmutator=Sa326嬗变装置 -container.machineWoodBurner=火力发电机 -container.massStorage=存储 -container.microwave=微波炉 -container.miningDrill=自动采矿钻机 -container.miningLaser=采矿激光 -container.missileAssembly=导弹装配台 -container.nukeBoy=小男孩 -container.nukeCustom=自定义核弹 -container.nukeFleija=F.L.E.I.J.A. -container.nukeFstbmb=野火炸弹 -container.nukeFurnace=核熔炉 -container.nukeGadget=小玩意 -container.nukeMan=胖子 -container.nukeMike=常春藤迈克 -container.nukeN2=N2炸弹 -container.nukeN45=N45水雷 -container.nukePrototype=原型 -container.nukeSolinium=蔚蓝洗礼 -container.nukeTsar=沙皇炸弹 -container.oilWell=钻油塔 -container.orbus=重型反物质储罐 -container.plasmaHeater=等离子加热器 -container.press=火力锻压机 -container.puf6_tank=六氟化钚储罐 -container.pumpjack=石油钻机 -container.radGen=辐射能量发电机 -container.radar=雷达 -container.radiobox=FM发射机 -container.radiolysis=RTG辐射裂解室 -container.radiorec=FM收音机 -container.rbmkBoiler=RBMK石墨式反应堆蒸汽管道 -container.rbmkControl=RBMK石墨式反应堆控制棒 -container.rbmkControlAuto=RBMK石墨式反应堆自动控制棒 -container.rbmkHeater=RBMK流体加热器 -container.rbmkOutgasser=RBMK石墨式反应堆辐照通道 -container.rbmkReaSim=RBMK石墨式反应堆燃料棒 (ReaSim) -container.rbmkRod=RBMK石墨式反应堆燃料棒 -container.rbmkStorage=RBMK 燃料存储棒 -container.reactorBreeding=增殖反应堆 -container.reactorControl=反应堆遥控模块 -container.reactorLarge=大型核反应堆 -container.reactorResearch=研究型反应堆 -container.reix=Rei-X主机 -container.rtg=放射性同位素发电机 -container.rtgFurnace=放射性同位素热力炉[RTG] -container.rttyCounter=无线红石物品计数器 -container.rttyLogic=无线红石逻辑接收器 -container.rttyReceiver=无线红石信号接收器 -container.rttySender=无线红石信号发射器 -container.safe=保险箱 -container.satDock=卸货平台 -container.satLinker=卫星ID管理 -container.siren=警报器 -container.soyuzCapsule=货物着陆舱 -container.soyuzLauncher=联盟号发射平台 -container.storageDrum=核废料处理桶 -container.teleLinker=炮塔ID管理 -container.teleporter=传送机 -container.trainTram=平板载货电车 -container.turbinegas=联合循环燃气轮机 -container.turretArty=重炮炮塔“格雷格” -container.turretChekhov=重机枪炮塔“契诃夫的枪” -container.turretFriendly=轻机枪炮塔“友好先生” -container.turretFritz=重型火焰喷射器炮塔“弗里茨” -container.turretHIMARS=火箭炮塔“亨利” -container.turretHoward=双联守门员近防系统“霍华德” -container.turretJeremy=重炮炮塔“杰里米” -container.turretMaxwell=高能微波炮塔”麦克斯韦” -container.turretRichard= 火箭炮塔“理查德” -container.turretSentry=哨兵炮塔“布朗” -container.turretTauon=陶子发射器炮塔“陶恩” -container.uf6_tank=六氟化铀储罐 -container.vacuumDistill=真空炼油厂 -container.wasteDrum=乏燃料池 -container.watzPowerplant=Watz发电厂 -container.zirnox=锆诺克斯核反应堆 - -crucible.aa=高级合金生产 -crucible.abronze=砷青铜生产 -crucible.bbronze=铋青铜生产 -crucible.bscco=BSCCO生产 -crucible.cdalloy=镉钢生产 -crucible.cmb=CMB钢生产 -crucible.ferro=铀铁合金生产 -crucible.hematite=赤铁矿炼铁 -crucible.hss=高速钢生产 -crucible.malachite=孔雀石炼铜 -crucible.magtung=磁化钨生产 -crucible.redcopper=紫铜生产 -crucible.steel=钢铁生产 -crucible.steelMeteoric=陨铁炼钢 -crucible.steelPig=生铁炼钢 -crucible.steelWrought=锻铁炼钢 -crucible.tcalloy=锝钢合金生产 - -death.attack.acid=%1$s 掉进了酸里 -death.attack.acidPlayer=%1$s 被 %2$s 溶解 -death.attack.ams=%1$s 沐浴在尚未被人类科学命名的致命粒子中 -death.attack.amsCore=%1$s 在奇点之火中蒸发 -death.attack.asbestos=%1$s现在有权获得经济补偿 -death.attack.bang=%1$s 被炸成小块碎片 -death.attack.blackhole=%1$s 粉身碎骨 -death.attack.blacklung=%1$s 死于尘肺病 -death.attack.blender=%1$s 被切成小块 -death.attack.boat=%1$s 被船撞了 -death.attack.boil=%1$s被%2$s活活煮沸 -death.attack.boxcar=%1$s 被一节坠落的车厢撞死了...好吧 -death.attack.broadcast=%1$s 的大脑融化了 -death.attack.building=%1$s 被从天而降的建筑砸中了 -death.attack.cheater=%1$s 的肠子变成了燕麦(???) -death.attack.chopperBullet=%1$s 被 %2$s 屠杀 -death.attack.cloud=%1$s 像冰棒一样在太阳下融化 -death.attack.cmb=%1$s 被 %2$s 搞得嘶嘶作响 -death.attack.digamma=%1$s 踏入深渊 -death.attack.electricity=%1$s 被电死 -death.attack.electrified=%1$s 被 %2$s 电死 -death.attack.euthanized=%1$s 被 %2$s 安乐死 -death.attack.euthanizedSelf2=%1$s 获得了达尔文奖 -death.attack.euthanizedSelf=%1$s 把自己安乐死了,可真傻 -death.attack.exhaust=%1$s 被火箭烤成了羊肉串 -death.attack.flamethrower=%1$s 被 %2$s 火化 -death.attack.flamethrower.item=%1$s 被 %2$s 使用 %3$s 火化 -death.attack.ice=%1$s 被 %2$s 做成了冰棒 -death.attack.laser=%1$s 被 %2$s 变成了灰烬 -death.attack.laser.item=%1$s 被 %2$s 使用 %3$s 变成灰烬 -death.attack.lead=%1$s 死于铅中毒 -death.attack.lunar=%1$s 忘记了给重要器官充电 -death.attack.meteorite=%1$s 被来自外太空的陨石击中 -death.attack.microwave=%1s 因微波辐射爆炸 -death.attack.mku=%1$s 死于不明原因 -death.attack.monoxide=%1$s忘了换一氧化碳探测器的电池 -death.attack.mudPoisoning=%1$s 死于毒泥浆中 -death.attack.nuclearBlast=%1$s 被核爆炸飞 -death.attack.overdose=%1$s 上瘾并窒息 -death.attack.pc=%1$s 在粉红色的云中变成了一个水坑 -death.attack.plasma=%1$s 被 %2$s 烧死 -death.attack.radiation=%1$s 死于辐射 -death.attack.revolverBullet=%1$s 被 %2$s 用 %3$s 击中头部 -death.attack.revolverBullet.item=%1$s 被 %2$s 使用 %3$s 爆头 -death.attack.rubble=%1$s 被碎片压扁了 -death.attack.shrapnel=%1$s 被榴弹碎片炸得千疮百孔 -death.attack.spikes=%1$s被刺穿了 -death.attack.subAtomic1=%1$s 的原子已被 %2$s 销毁. -death.attack.subAtomic2=%1$s 因为被 %2$s 篡改了实际速度,导致QPU没有对准 -death.attack.subAtomic3=由于 %2$s,1$s 的偏差下降到1%以下 -death.attack.subAtomic4=%1$s 因为 %2$s 被零除了 -death.attack.subAtomic5=%1$s 因为 %2$s 无效了 -death.attack.suicide=%1$s 打爆了自己的头 -death.attack.taint=%1$s 死于恶性肿瘤 -death.attack.tau=%1$s 被 %2$s 用带负电荷的陶子射穿 -death.attack.tauBlast=%1$s 对XVL1456充能时间过长,被炸成碎片 -death.attack.teleporter=%1$s 被传送到虚空 - -desc.gui.assembler.warning=§c错误:§r此机器需要装配机模板! -desc.gui.chemplant.warning=§c错误:§r此机器需要化工厂模板! -desc.gui.gasCent.enrichment=§2浓缩§r$浓缩铀需要串联$两个离心机串联将离心出$铀燃料,四个离心机串联$将完全分离出铀235。 -desc.gui.gasCent.output=§6流体输送§r$流体可通过输出端口输送至另一台离心机$进行进一步处理。 -desc.gui.nukeBoy.desc=§1需要:§r$ * 中子屏蔽罩$ * 铀-235弹头$ * 次临界铀-235标靶$ * 炸药$ * 点火器 -desc.gui.nukeGadget.desc=§1需要:§r$ * 4个 初代$ 炸药透镜阵列$ * 钚核心$ * 线路 -desc.gui.nukeMan.desc=§1需要:§r$ * 4个 初代$ 炸药透镜阵列$ * 钚核心$ * 点火器 -desc.gui.nukeMike.desc=§1需要:§r$ * 4个 炸药透镜阵列$ * 钚核心$ * 氘冷却装置$ * 铀涂层氘罐 * 氘罐 -desc.gui.nukeTsar.desc=§1需要:§r$ * 4个 炸药透镜阵列$ * 钚核心$§9可选:§r$ * 沙皇炸弹核心 -desc.gui.rttyLogic.cond0=信号§6小于§r常量 -desc.gui.rttyLogic.cond1=信号§6小于等于§r常量 -desc.gui.rttyLogic.cond2=信号§6大于等于§r常量 -desc.gui.rttyLogic.cond3=信号§6大于§r常量 -desc.gui.rttyLogic.cond4=信号§6等于§r常量 -desc.gui.rttyLogic.cond5=信号§6不等于§r常量 -desc.gui.rttyLogic.cond6=信号与字符串§6匹配§r -desc.gui.rttyLogic.cond7=信号与字符串§6不匹配§r -desc.gui.rttyLogic.cond8=信号§6包含§r字符串 -desc.gui.rttyLogic.cond9=信号§6不包含§r字符串 -desc.gui.radiolysis.desc=§9说明§r$该RTG比其他RTG更高效,$并且配备了一个用于$裂解和灭菌的辐解室。 -desc.gui.rtgBFurnace.desc=处理裂解配方至少需要15热量,$热量越高,运行速度越快$超过最高处理速度的热量不起作用$短寿命靶丸可能会衰变 -desc.gui.rtg.heat=§e当前热等级:%s -desc.gui.rtg.pellets=接受的靶丸: -desc.gui.rtg.pelletHeat=%s (%s 热量) -desc.gui.rtg.pelletPower=%s (%s HE/刻) -desc.gui.template=§9模板§r$模板可由$机器模板文件夹制作。 -desc.gui.turbinegas.automode=§2自动涡轮机节流模式§r$通过单击“AUTO”按钮,涡轮机$将根据网络所需的功率自动调整发电量$ -desc.gui.turbinegas.fuels=§6可接受的燃料:§r -desc.gui.turbinegas.warning=§c燃油或润滑油液位低!§r -desc.gui.upgrade=§l可接受的升级:§r -desc.gui.upgrade.afterburner=*§d加力燃烧§r:堆叠至3级 -desc.gui.upgrade.effectiveness=*§a效率§r:堆叠至3级 -desc.gui.upgrade.overdrive=*§7超速§r:堆叠至3级 -desc.gui.upgrade.power=*§1节能§r:堆叠至3级 -desc.gui.upgrade.speed=*§4速度§r:堆叠至3级 -desc.gui.zirnox.coolant=§3冷却剂§r$CO2将热量从堆芯转移到水中$这会令它变成成超热蒸汽$冷却和蒸汽生产的效率取决于压力。 -desc.gui.zirnox.pressure=§6压力§r$排放二氧化碳可以降低压力$然而,压力过低,冷却效率和蒸汽产量将降低$小心熔毁! -desc.gui.zirnox.warning1=§c错误:§r反应堆正常运行需要水! -desc.gui.zirnox.warning2=§c错误:§r二氧化碳是反应堆正常运行所必需的! - -desc.item.ammo.con_accuracy2=- 精度大幅降低 -desc.item.ammo.con_damage=- 伤害大幅降低 -desc.item.ammo.con_heavy_wear=- 大幅增加磨损 -desc.item.ammo.con_ling_fire=- 没有火焰 -desc.item.ammo.con_nn=- 甚至没有核爆 -desc.item.ammo.con_no_damage=- 没有伤害 -desc.item.ammo.con_no_explode1=- 非爆炸性 -desc.item.ammo.con_no_explode2=- 不破坏方块 -desc.item.ammo.con_no_explode3=- 无破片伤害 -desc.item.ammo.con_no_fire=- 不能引起燃烧 -desc.item.ammo.con_no_mirv=- 不建议在原始MIRV上使用 -desc.item.ammo.con_no_projectile=- 无抛射物 -desc.item.ammo.con_penetration=- 无穿透能力 -desc.item.ammo.con_radius=- 减小爆炸半径 -desc.item.ammo.con_range2=- 大幅降低射程 -desc.item.ammo.con_sing_projectile=- 单个弹头 -desc.item.ammo.con_speed=- 弹丸速度降低 -desc.item.ammo.con_super_wear=- 磨损严重增加 -desc.item.ammo.con_wear=- 加剧磨损 -desc.item.ammo.neu_40mm=* 这是一枚40毫米的榴弹,我们把它挤到枪管里! -desc.item.ammo.neu_blank=* 这是空包弹 -desc.item.ammo.neu_boat=* 船 -desc.item.ammo.neu_boxcar=* 车厢 -desc.item.ammo.neu_building=* 建筑物 -desc.item.ammo.neu_chlorophyte=* 叶绿 -desc.item.ammo.neu_eraser=* 用于消除重大错误 -desc.item.ammo.neu_fun=* 全家其乐无穷! -desc.item.ammo.neu_heavy_metal=* 重金属 -desc.item.ammo.neu_homing=* 追踪 -desc.item.ammo.neu_jolt=* 震荡 -desc.item.ammo.neu_leadburster=* 附着在表面并喷射子弹 -desc.item.ammo.neu_less_bouncy=* 弹性更小 -desc.item.ammo.neu_maskman_flechette=* 曳光弹,同时引发一场贫铀飞镖弹风暴 -desc.item.ammo.neu_maskman_meteorite=* 高伤害,同时召唤小陨石 -desc.item.ammo.neu_more_bouncy=* 额外弹性 -desc.item.ammo.neu_no_bounce=* 没有弹性 -desc.item.ammo.neu_no_con=* 没有缺点 -desc.item.ammo.neu_starmetal=* 星辉金属 -desc.item.ammo.neu_tracer=* 示踪剂 -desc.item.ammo.neu_uhh=* Uhhh -desc.item.ammo.neu_warcrime1=* 从技术上来讲触犯了战争罪 -desc.item.ammo.neu_warcrime2=* 一发触犯两条战争罪! -desc.item.ammo.pro_accurate1=+ 提升精度 -desc.item.ammo.pro_accurate2=+ 近乎完美的精度 -desc.item.ammo.pro_balefire=+ 野火 -desc.item.ammo.pro_bomb_count=+ 炸弹数量增加 -desc.item.ammo.pro_caustic=+ 腐蚀性 -desc.item.ammo.pro_chainsaw=+ 电锯 -desc.item.ammo.pro_chlorine=+ 氯气 -desc.item.ammo.pro_damage=+ 提升伤害 -desc.item.ammo.pro_damage_slight=+ 高于平均伤害 -desc.item.ammo.pro_emp=+ EMP -desc.item.ammo.pro_explosive=+ 爆炸 -desc.item.ammo.pro_fallout=+ 辐射尘 -desc.item.ammo.pro_fit_357=+ 适用于所有.357枪械 -desc.item.ammo.pro_flames=+ 火焰喷射量增加 -desc.item.ammo.pro_gravity=+ 下坠降低 -desc.item.ammo.pro_heavy_damage=+ 大幅增加伤害 -desc.item.ammo.pro_incendiary=+ 能引起燃烧 -desc.item.ammo.pro_lunatic=+ 疯子 -desc.item.ammo.pro_marauder=+ 立即消除烦人的和不平衡的敌人 -desc.item.ammo.pro_mining=+ 爆炸使所有方块掉落 -desc.item.ammo.pro_no_gravity=+ 不受重力影响 -desc.item.ammo.pro_nuclear=+ 核爆 -desc.item.ammo.pro_penetration=+ 穿透 -desc.item.ammo.pro_percussion=+ 冲击波 -desc.item.ammo.pro_phosphorus=+ 可致磷烧伤 -desc.item.ammo.pro_phosphorus_splash=+ 磷飞溅 -desc.item.ammo.pro_poison_gas=+ 毒物飞溅 -desc.item.ammo.pro_radius=+ 增加爆炸半径 -desc.item.ammo.pro_radius_high=+ 大幅增加爆炸半径 -desc.item.ammo.pro_range=+ 增加射程 -desc.item.ammo.pro_rocket=+ 火箭 -desc.item.ammo.pro_rocket_propelled=+ 火箭推进 -desc.item.ammo.pro_shrapnel=+ 破片 -desc.item.ammo.pro_speed=+ 提高弹头飞行速度 -desc.item.ammo.pro_stunning=+ 眩晕 -desc.item.ammo.pro_toxic=+ 剧毒 -desc.item.ammo.pro_wear=+ 减少磨损 -desc.item.ammo.pro_withering=+ 凋零 -desc.item.armorMod.display=显示已安装的装甲模块 -desc.item.battery.charge=储能: %s / %sHE -desc.item.battery.chargePerc=储能: %s%% -desc.item.battery.chargeRate=充电效率: %sHE/刻 -desc.item.battery.dischargeRate=放电效率: %sHE/刻 -desc.item.durability=耐久: %s -desc.item.grenade.fuse=引信: %s -desc.item.grenade.fuseImpact=碰炸 -desc.item.grenade.fuseInstant=瞬发 -desc.item.gun.ammo=弹药 %s -desc.item.gun.ammoBelt=从背包中使用 -desc.item.gun.ammoEnergy=能耗; %sHE 每发 -desc.item.gun.ammoEnergyAlt=%sHE 每发 -desc.item.gun.ammoMag=%s / %s -desc.item.gun.ammoType=弹药类型: %s -desc.item.gun.ammoTypeAlt=辅助弹药: %s -desc.item.gun.damage=伤害: %s - %s -desc.item.gun.damageAlt=伤害: %s -desc.item.gun.lore=查看深入的知识 -desc.item.gun.loreFunc=查看深入功能 -desc.item.gun.manufacturer=制造商: %s -desc.item.gun.name=名称: %s -desc.item.gun.pellets=弹丸数:%s-%s -desc.item.gun.penetration=装甲穿透值: %s -desc.item.kitArmor=装甲将被新的装备取代。 -desc.item.kitHaz=装甲将被防护服取代。 -desc.item.kitPack=真便宜! -desc.item.kitPool=请在打开前清空背包库存! -desc.item.pileRod=§e使用钻孔石墨插入$§E使用螺丝刀拔出$ -desc.item.pipette.corrosive=可处理腐蚀性液体。 -desc.item.pipette.laboratory=现在精度提高了50倍! -desc.item.pipette.noCorrosive=§e无法处理腐蚀性液体。 -desc.item.pipette.noEmpty=§e移液管未排空 -desc.item.rtgDecay=衰变为:%s -desc.item.rtgHeat=功率级别:%s -desc.item.storage.capacity=容量 %s%%s -desc.item.storage.proscons=查看利弊列表 -desc.misc.357=.357 马格南 -desc.misc.556=.223 雷明顿 -desc.misc.762=.308 温彻斯特 -desc.misc.func=§n-- 作用 -- -desc.misc.lanthanum="镧" -desc.misc.lctrl=§8按住 <§e§o左CTRL§8§o> %s -desc.misc.lore=§n-- 知识 -- -desc.misc.lshift=§8按住 <§e§o左SHIFT§8§o> %s -desc.misc.luna=§o20x155mm Lunatic -desc.misc.meltPoint=熔点: §c%s -desc.misc.noPos=未设置位置! -desc.misc.pos=将位置设置为:%s,%s,%s -desc.misc.posSet=位置已设置! -desc.item.wasteCooling=在乏燃料池中冷却 -desc.item.zirnoxBreedingRod=§2[ZIRNOX增殖棒]$§e放在燃料棒旁边增殖$§e持续 %d 刻 -desc.item.zirnoxRod=§a[ZIRNOX燃料棒]$§e每刻产生 %1$d 热量$§e持续 %2$d 刻 - -digamma.playerDigamma=玩家F-迪伽马辐照水平: -digamma.playerHealth=玩家所受F-迪伽马辐照影响: -digamma.playerRes=玩家F-迪伽马防护水平: -digamma.title=玩家F-迪伽马辐射自检器 - -entity.entity_cyber_crab.name=赛博螃蟹 -entity.entity_elder_one.name=上古鸭神 -entity.entity_fucc_a_ducc.name=鸭子 -entity.entity_glyphid.name=异虫 -entity.entity_glyphid_behemoth.name=巨兽异虫 -entity.entity_glyphid_blaster.name=爆破异虫 -entity.entity_glyphid_bombardier.name=投弹手异虫 -entity.entity_glyphid_brawler.name=狂战士异虫 -entity.entity_glyphid_brenda.name=布伦达 -entity.entity_glyphid_digger.name=掘地异虫 -entity.entity_glyphid_nuclear.name=大个子强森 -entity.entity_glyphid_scout.name=侦察异虫 -entity.entity_ntm_fbi.name=FBI探员 -entity.entity_ntm_fbi_drone.name=FBI无人机 -entity.entity_ntm_radiation_blaze.name=核融元素 -entity.hbm.entity_ntm_ufo.name=火星入侵者飞船 -entity.entity_mob_hunter_chopper.name=猎人直升机 -entity.entity_mob_mask_man.name=面具人 -entity.entity_mob_gold_creeper.name=黄金爬行者 -entity.entity_mob_nuclear_creeper.name=核爆爬行者 -entity.entity_mob_phosgene_creeper.name=光气爬行者 -entity.entity_mob_tainted_creeper.name=污染爬行者 -entity.entity_mob_volatile_creeper.name=不稳定爬行者 -entity.entity_parasite_maggot.name=寄生虫 -entity.entity_pigeon.name=鸽子 -entity.entity_plastic_bag.name=塑料袋 -entity.entity_taint_crab.name=污染螃蟹 -entity.entity_tesla_crab.name=磁暴螃蟹 -entity.hbm.entity_balls_o_tron.name=机械蠕虫 -entity.hbm.entity_balls_o_tron_seg.name=机械蠕虫 -entity.hbm.entity_bullet.name=子弹 -entity.hbm.entity_rocket.name=火箭弹 -entity.hbm.entity_schrabnel.name=Schrabnel - -excavator.crusher=粉碎开关 -excavator.drill=挖掘开关 -excavator.silktouch=精准采集开关 -excavator.veinminer=连锁挖矿开关 -excavator.walling=填充开关 - -flare.ignition=点火装置 -flare.valve=流量阀 - -fluid.acid_fluid=酸 -fluid.corium_fluid=堆芯熔融物 -fluid.mud_fluid=毒泥 -fluid.rad_lava_fluid=放射性火山熔岩 -fluid.schrabidic_fluid=Sa酸 -fluid.toxic_fluid=绿色软泥 -fluid.volcanic_lava_fluid=火山熔岩 - -foundry.filter=筛选器:%s -foundry.inverted=红石信号反转 -foundry.invertFilter=过滤器反转 -foundry.noCast=未安装模具! - -geiger.chunkRad=当前区块辐射: -geiger.envRad=环境总辐射量: -geiger.playerRad=玩家辐射: -geiger.playerRes=辐射抗性: -geiger.title=盖革计数器 -geiger.title.dosimeter=剂量计 - -gun.make.ARMALITE=阿玛莱特公司 -gun.make.AUTO_ORDINANCE=美国自动武器公司 -gun.make.BAE=英国宇航系统公司 -gun.make.BENELLI=伯奈利武器公司 -gun.make.BLACK_MESA=黑山研究所 -gun.make.CERIX=赛里克斯·马格努斯锻造世界 -gun.make.COLT=柯尔特制造公司 -gun.make.COMBINE=世界工会 -gun.make.CUBE=Cube 2: Sauerbraten -gun.make.DRG=深岩银河 -gun.make.ENZINGER=Enzinger工会 -gun.make.EQUESTRIA=小马国导弹系统 -gun.make.FLIMFLAM=FlimFlam“欺骗”工业 -gun.make.F_STRONG=史特朗堡 -gun.make.GLORIA=GLORIA公司 -gun.make.HASBRO=孩之宝 -gun.make.H_AND_K=黑克勒和科赫武器公司 -gun.make.H_AND_R=哈林顿-理查森武器公司 -gun.make.IF=蹄铁军工 -gun.make.IMI=以色列军事工业 -gun.make.IMI_BIGMT=以色列军事工业公司/大型MT -gun.make.LANGFORD=朗福德研究实验室 -gun.make.LUNA=月球防御公司 -gun.make.MAGNUM_R_IMI=马格南研究公司 / 以色列军事工业公司 -gun.make.MANN=Open Mann公司 -gun.make.MAXIM=海勒姆·马克沁 -gun.make.METRO=地铁枪手 -gun.make.MWT=MWT原型实验室 -gun.make.NAWS=Kayarm Industries -gun.make.ERFURT=埃尔福特机械制造厂 -gun.make.NONE=- -gun.make.RAYTHEON=导弹系统公司 -gun.make.REMINGTON=雷明登武器公司 -gun.make.ROCKWELL=罗克韦尔国际公司 -gun.make.ROCKWELL_U=罗克韦尔国际公司? -gun.make.RYAN=莱恩工业 -gun.make.SAAB=萨博博福斯动力公司 -gun.make.SACO=萨科防卫军械 -gun.make.TULSKY=图拉武器厂 -gun.make.UAC=联合宇宙航空公司 -gun.make.UNKNOWN=??? -gun.make.WESTTEK=WestTek研究设施 -gun.make.WGW=威廉·古斯特洛夫·维尔克 -gun.make.WINCHESTER=温彻斯特速射武器公司 -gun.make.WINCHESTER_BIGMT=温彻斯特速射武器公司/大型MT - -gun.name.ar15_50=AR-15 .50BMG型 -gun.name.baeAR=英国制式突击步枪 -gun.name.bel=野火蛋发射器 -gun.name.benelli=伯奈利M4 Super 90霰弹枪 -gun.name.benelliDrum=伯奈利M4 Super 90霰弹枪 (泵动供弹改进型) -gun.name.bio=RI No. 2 Mark 1 -gun.name.bolter=Manticora Pattern爆弹枪 -gun.name.congoLake=刚果湖水泵动榴弹发射器 -gun.name.cPython=柯尔特蟒蛇 -gun.name.cz53=CZ53 单兵转轮机枪 -gun.name.cz57=CZ57 复仇者机枪 -gun.name.dart=针枪 -gun.name.deagle=以色列军事工业公司沙漠之鹰 -gun.name.emp=EMP投射器 -gun.name.extinguisher=PROTEX灭火器6kg -gun.name.ffiV=FFI Viper -gun.name.ffiVInox=FFI Viper Inox -gun.name.ffiVLead=FFI Viper Lead -gun.name.ffiVN1=FFI Viper N1 -gun.name.ffiVN2=FFI Viper N2 -gun.name.ffiVUltra=FFI Viper Ultra -gun.name.ffivBling=FFI Viper Bling -gun.name.ffivSatur=FFI Viper D-25A -gun.name.g36=HK G36突击步枪 -gun.name.gPistol=HK69A1 手持单发榴弹发射器 -gun.name.gustav=卡尔·古斯塔夫M1无后坐力炮 -gun.name.ifHorseshoe=IF-18 蹄铁 -gun.name.ifPit=IF-18 蹄铁 Bottomless Pit -gun.name.ifScope=IF-18 蹄铁 Scoped -gun.name.ifStorm=IF-18 蹄铁 银色风暴 -gun.name.ifVanity=IF-18 蹄铁 Vanity -gun.name.karl=M1 卡尔·古斯塔夫 -gun.name.ks23=KS-23霰弹枪 -gun.name.lacunae=Auntie Lacunae -gun.name.lasetDet=霍普维尔激光雷管 -gun.name.lunaAR=1986 Bishamonten式突击步枪 -gun.name.lunaGun=1978 Rāhula type Standard Issue Sidearm (Revision 2) -gun.name.lunaHLR=1944嫦娥式轻机枪 -gun.name.lunaShotty=1978年关羽式散弹枪(第1次修订) -gun.name.lunaSMG=1956 ānanda type Submachine Gun -gun.name.lunaSniper=1915后羿式反器材步枪 -gun.name.lunaTWR=时间扭曲步枪 -gun.name.m2=M2式勃朗宁大口径重机枪 -gun.name.m42=M-42战术核弹发射器 -gun.name.m42MIRV=M-42实验MIRV -gun.name.m60=7.62毫米口径M60机枪 -gun.name.maxim=马克沁机枪 -gun.name.maximDouble=双重马克沁机枪 -gun.name.mg3=MG-42通用机枪 -gun.name.mp40=MP40冲锋枪 -gun.name.nerf=某些无良记者眼中的大规模杀伤性武器 -gun.name.osipr=守望标准型脉冲步枪 -gun.name.panz=反坦克火箭来复枪 54 -gun.name.quadro=OpenQuadro便携式导弹发射器 -gun.name.remington870=雷明顿870 -gun.name.revolverCursed=不列颠标准问题电动手枪 -gun.name.sauer=绍尔猎枪 -gun.name.spas12=弗兰基SPAS-12式12号霰弹枪 -gun.name.spiw=H&R SPIW -gun.name.stinger=FIM-92毒刺便携式防空系统 -gun.name.stingerOneSky=The One Sky 毒刺便携式防空系统 -gun.name.supershotty=双管战斗霰弹枪 -gun.name.tau=XVL1456 陶子加农炮 -gun.name.tommy9=M1A1冲锋枪9毫米型 -gun.name.tommy=M1A1冲锋枪 -gun.name.topaz=重型火焰燃烧器 -gun.name.uacCarbine=UAC-41卡宾枪 -gun.name.uacDeagle=UAC-H54“火星猛禽”大容量手枪 -gun.name.uacDMR=UAC-30 精确射手步枪 -gun.name.uacLMG=UAC-49轻机枪 -gun.name.uacPistol=UAC-B950 .45 标准型手枪 -gun.name.uacSMG=UAC-17小型冲锋枪 -gun.name.uboinik=Uboinik转轮霰弹枪 -gun.name.uzi=IMI Uzi -gun.name.uziSatur=IMI Uzi D-25A -gun.name.win1887=温彻斯特M1887杠杆式连发霰弹枪 -gun.name.win1887Inox=温彻斯特M1887杠杆式连发霰弹枪 Inox -gun.name.win20Inox=温彻斯特20型Inox -gun.name.win20Poly=温彻斯特20型聚合物 -gun.name.win20Satur=温彻斯特20型 D-25A -gun.name.zomg=EMC101棱镜负能量炮 - -hadron.analysis=正在分析... -hadron.buttonOn=分析室启动(如果存在) -hadron.buttonOff=分析室关闭 -hadron.error_generic=错误! -hadron.error_no_charge=错误 0x01 [能量不足] -hadron.error_no_analysis=错误 0x02 [无法分析] -hadron.error_obstructed_channel=错误 0x03 [通道阻塞] -hadron.error_expected_coil=错误 0x04 [缺少线圈] -hadron.error_malformed_segment=错误 0x05 [错误区段] -hadron.error_analysis_too_long=错误 0x06 [分析室过长] -hadron.error_analysis_too_short=错误 0x06 [分析室过长] -hadron.error_diode_collision=错误 0x08 [二极管方向错误] -hadron.error_branching_turn=错误 0x09 [多处分支] -hadron.hopper0=§e正常模式:$将使用所有物品 -hadron.hopper1=§e料斗模式:$将始终保留一个物品 -hadron.hopper2=§e单物品模式:$每个槽位只接受一个物品 -hadron.idle=空闲 -hadron.modeCircular=§e环形加速器模式:$磁铁必须环绕核心$解锁更多配方 -hadron.modeLine=§e直线加速器模式:$加速器末端有分析室$更少的配方 -hadron.noresult=无结果 -hadron.noresult_too_slow=动量不足! -hadron.noresult_wrong_ingredient=无效配方! -hadron.noresult_wrong_mode=错误模式! -hadron.progress=正在进行中... -hadron.stats=上一次结果: -hadron.stats_coord=错误位置:%s/%s/%s -hadron.stats_momentum=动量: %s -hadron.success=已完成! - -hazard.prot=防止危险: -hazard.noprot=不能防止: -hazard.bacteria=细菌/气溶胶 -hazard.corrosive=腐蚀性烟雾 -hazard.gasChlorine=化学气体 -hazard.gasInert=惰性气体/沥青 -hazard.gasMonoxide=一氧化碳 -hazard.light=亮光 -hazard.nerveAgent=神经毒剂 -hazard.neverProtects=无法防护: -hazard.particleCoarse=空气微粒 -hazard.particleFine=微粒 -hazard.sand=眼睛刺激物 - -hbm.key=HBM的核科技mod 热键 -hbm.key.calculator=计算器 -hbm.key.craneLoad=装卸起重机 -hbm.key.craneMoveDown=向后移动起重机 -hbm.key.craneMoveLeft=向左移动起重机 -hbm.key.craneMoveRight=向右移动起重机 -hbm.key.craneMoveUp=向前移动起重机 -hbm.key.dash=冲刺 (在config中解绑) -hbm.key.toggleBack=开关 喷气背包 -hbm.key.toggleHUD=开关 HUD -hbm.key.reload=装弹 - -hbmfluid.amat=反物质 -hbmfluid.aromatics=芳香烃 -hbmfluid.aschrab=反Sa326 -hbmfluid.balefire=野火火箭燃料 -hbmfluid.biofuel=生物燃料 -hbmfluid.biogas=沼气 -hbmfluid.bitumen=沥青 -hbmfluid.blood=血 -hbmfluid.blood_hot=热的血 -hbmfluid.calcium_chloride=氯化钙溶液 -hbmfluid.calcium_solution=钙溶液 -hbmfluid.carbondioxide=二氧化碳 -hbmfluid.chlorine=氯气 -hbmfluid.chlorocalcite_cleaned=纯净氯方解石溶液 -hbmfluid.chlorocalcite_mix=混合氯方解石溶液 -hbmfluid.chlorocalcite_solution=氯方解石溶液 -hbmfluid.cholesterol=胆固醇溶液 -hbmfluid.coalcreosote=煤焦杂酚油 -hbmfluid.coalgas=煤汽油 -hbmfluid.coalgas_leaded=含铅煤汽油 -hbmfluid.coaloil=煤液化油 -hbmfluid.colloid=胶体 -hbmfluid.coolant=冷却液 -hbmfluid.coolant_hot=热冷却液 -hbmfluid.crackoil=裂化油 -hbmfluid.crackoil_ds=脱硫裂化油 -hbmfluid.cryogel=冷凝胶 -hbmfluid.death=锇酸溶液 -hbmfluid.deuterium=氘 -hbmfluid.diesel=柴油 -hbmfluid.diesel_crack=裂化柴油 -hbmfluid.diesel_crack_reform=高辛烷值裂化柴油 -hbmfluid.diesel_reform=高辛烷值柴油 -hbmfluid.egg=蛋溶解液 -hbmfluid.estradiol=雌二醇溶液 -hbmfluid.ethanol=乙醇 -hbmfluid.enderjuice=末影果汁 -hbmfluid.fishoil=鱼油 -hbmfluid.fracksol=压裂液 -hbmfluid.fullerene=富勒烯溶液 -hbmfluid.gas=天然气 -hbmfluid.gas_coker=焦化气 -hbmfluid.gasoline=含铅汽油基油 -hbmfluid.gasoline_leaded=含铅汽油 -hbmfluid.heatingoil=燃油 -hbmfluid.heatingoil_vacuum=重质燃油 -hbmfluid.heavyoil=重油 -hbmfluid.heavyoil_vacuum=减压重油 -hbmfluid.heavywater=重水 -hbmfluid.heavywater_hot=高温重水 -hbmfluid.helium3=氦-3 -hbmfluid.helium4=氦-4 -hbmfluid.hotcrackoil=热裂化油 -hbmfluid.hotcrackoil_ds=热的脱硫裂化油 -hbmfluid.hotoil=热原油 -hbmfluid.hotoil_ds=热的脱硫原油 -hbmfluid.hotsteam=热蒸汽 -hbmfluid.hydrogen=液氢 -hbmfluid.iongel=离子凝胶 -hbmfluid.kerosene=煤油 -hbmfluid.kerosene_reform=喷气燃料 -hbmfluid.lava=岩浆 -hbmfluid.lightoil=轻油 -hbmfluid.lightoil_crack=裂化轻油 -hbmfluid.lightoil_ds=脱硫轻油 -hbmfluid.lightoil_vacuum=减压轻油 -hbmfluid.lpg=液化石油气 -hbmfluid.lubricant=润滑油 -hbmfluid.mercury=水银 -hbmfluid.mug=Mug牌树根饮料 -hbmfluid.mug_hot=热的Mug牌树根饮料 -hbmfluid.mustardgas=芥子气 -hbmfluid.naphtha=石脑油 -hbmfluid.naphtha_coker=焦化石脑油 -hbmfluid.naphtha_crack=裂化石脑油 -hbmfluid.naphtha_ds=脱硫石脑油 -hbmfluid.nitan=NITAN牌100号超级燃料 -hbmfluid.nitric_acid=硝酸 -hbmfluid.nitroglycerin=硝酸甘油 -hbmfluid.none=无 -hbmfluid.oil=原油 -hbmfluid.oil_coker=焦化油 -hbmfluid.oil_ds=脱硫原油 -hbmfluid.oxygen=液氧 -hbmfluid.oxyhydrogen=氢氧混合气 -hbmfluid.pain=Pn(III) 钽铁溶液 -hbmfluid.peroxide=过氧化氢 -hbmfluid.petroil=汽油 -hbmfluid.petroil_leaded=含铅石油 -hbmfluid.petroleum=石油气 -hbmfluid.phosgene=光气 -hbmfluid.pheromone=异虫信息素 -hbmfluid.pheromone_m=增强异虫信息素 -hbmfluid.plasma_bf=野火等离子体 -hbmfluid.plasma_dh3=氘-氦3 等离子体 -hbmfluid.plasma_dt=氘-氚等离子体 -hbmfluid.plasma_hd=氢-氘等离子体 -hbmfluid.plasma_ht=氢-氚等离子体 -hbmfluid.plasma_xm=液氧-氦-4等离子体 -hbmfluid.potassium_chloride=氯化钾溶液 -hbmfluid.puf6=六氟化钚 -hbmfluid.radiosolvent=高性能溶剂 -hbmfluid.reclaimed=再生油 -hbmfluid.redmud=红色泥浆 -hbmfluid.reformate=重整油 -hbmfluid.reformgas=重整气 -hbmfluid.salient=绿色液体 -hbmfluid.sas3=三硫化Sa -hbmfluid.schrabidic=Sa酸 -hbmfluid.seedslurry=播种浆料 -hbmfluid.slop=洗矿废水 -hbmfluid.smear=工业油 -hbmfluid.smoke=烟雾 -hbmfluid.smoke_leaded=含铅烟雾 -hbmfluid.smoke_poison=有毒烟雾 -hbmfluid.sodium=液态钠 -hbmfluid.sodium_hot=高温液态钠 -hbmfluid.solvent=有机溶剂 -hbmfluid.sourgas=高硫天然气 -hbmfluid.spentsteam=低压蒸汽 -hbmfluid.steam=蒸汽 -hbmfluid.stellar_flux=星流浆 -hbmfluid.sulfuric_acid=硫酸 -hbmfluid.sunfloweroil=葵花籽油 -hbmfluid.superhotsteam=超热蒸汽 -hbmfluid.syngas=合成气 -hbmfluid.thorium_salt=液态钍盐 -hbmfluid.thorium_salt_depleted=贫化液态钍盐 -hbmfluid.thorium_salt_hot=高温液态钍盐 -hbmfluid.tritium=氚 -hbmfluid.uf6=六氟化铀 -hbmfluid.ultrahotsteam=超浓密蒸汽 -hbmfluid.unsaturateds=不饱和烃 -hbmfluid.vitriol=硫酸盐 -hbmfluid.wastefluid=液态核废料 -hbmfluid.wastegas=气态核废料 -hbmfluid.water=水 -hbmfluid.watz=毒泥浆 -hbmfluid.woodoil=木油 -hbmfluid.xenon=氙气 -hbmfluid.xpjuice=经验汁 -hbmfluid.xylene=轻质芳烃(BTX) - -hbmpseudofluid.none=空 -hbmpseudofluid.heuf6=高浓缩六氟化铀 -hbmpseudofluid.meuf6=中浓缩六氟化铀 -hbmpseudofluid.leuf6=低浓缩六氟化铀 -hbmpseudofluid.nuf6=天然浓度六氟化铀 -hbmpseudofluid.pf6=六氟化钚 -hbmpseudofluid.mud_heavy=毒泥浆重馏分 -hbmpseudofluid.mud=毒泥浆气态物 - -hbmmat.actinium227=锕-227 -hbmmat.advancedalloy=高级合金 -hbmmat.aluminum=铝 -hbmmat.americiumrg=反应堆级镅 -hbmmat.americium241=镅-241 -hbmmat.americium242=镅-242 -hbmmat.arsenic=砷 -hbmmat.arsenicbronze=砷青铜 -hbmmat.asbestos=石棉 -hbmmat.bakelite=电木 -hbmmat.beryllium=铍 -hbmmat.bismuth=铋 -hbmmat.bismuthbronze=铋青铜 -hbmmat.borax=硼砂 -hbmmat.boron=硼 -hbmmat.bscco=BSCCO -hbmmat.cadmium=镉 -hbmmat.calcium=钙 -hbmmat.carbon=碳 -hbmmat.cdalloy=镉钢 -hbmmat.chlorocalcite=氯方解石 -hbmmat.cinnabar=朱砂 -hbmmat.cmbsteel=CMB钢 -hbmmat.coal=煤 -hbmmat.coalcoke=焦煤 -hbmmat.cobalt=钴 -hbmmat.cobalt60=钴-60 -hbmmat.coltan=钶钽铁矿 -hbmmat.copper=铜 -hbmmat.desh=Desh -hbmmat.diamond=钻石 -hbmmat.dineutronium=双聚中子态素 -hbmmat.durasteel=高速钢 -hbmmat.emerald=绿宝石 -hbmmat.euphemium=Ep -hbmmat.ferrouranium=铀铁合金 -hbmmat.fiberglass=玻璃纤维 -hbmmat.fluorite=氟石 -hbmmat.flux=助熔剂 -hbmmat.ghiorsium336=Gh-336 -hbmmat.gold=金 -hbmmat.gold198=金-198 -hbmmat.graphene=石墨烯 -hbmmat.graphite=石墨 -hbmmat.hematite=赤铁矿 -hbmmat.iron=铁 -hbmmat.lanthanum=镧 -hbmmat.lapis=青金石 -hbmmat.lead=铅 -hbmmat.lead209=铅-209 -hbmmat.lignitecoke=褐煤焦煤 -hbmmat.lignite=褐煤 -hbmmat.lithium=锂 -hbmmat.magnetizedtungsten=磁化钨 -hbmmat.malachite=孔雀石 -hbmmat.meteoriciron=陨铁 -hbmmat.mingrade=紫铜 -hbmmat.molysite=氯化铁 -hbmmat.neodymium=钕 -hbmmat.neptunium237=镎-237 -hbmmat.niobium=铌 -hbmmat.obsidian=黑曜石 -hbmmat.osmiridium=铱锇合金 -hbmmat.petcoke=石油焦炭 -hbmmat.pigiron=生铁 -hbmmat.plutonium=钚 -hbmmat.plutonium238=钚-238 -hbmmat.plutonium239=钚-239 -hbmmat.plutonium240=钚-240 -hbmmat.plutonium241=钚-241 -hbmmat.plutoniumrg=反应堆级钚 -hbmmat.polonium210=钋-210 -hbmmat.polymer=聚合物 -hbmmat.radium226=镭-226 -hbmmat.rareearth=稀土 -hbmmat.redphosphorus=红磷 -hbmmat.redstone=红石 -hbmmat.rubber=橡胶 -hbmmat.saltpeter=硝石 -hbmmat.saturnite=土星 -hbmmat.schrabidate=Sa酸铁 -hbmmat.schrabidium=Sa326 -hbmmat.schraranium=低丰度Sa326 -hbmmat.silicon=硅 -hbmmat.slag=炉渣 -hbmmat.sodalite=方钠石 -hbmmat.sodium=钠 -hbmmat.solinium=Sa327 -hbmmat.starmetal=星辉 -hbmmat.steel=钢 -hbmmat.stone=石头 -hbmmat.strontium=锶 -hbmmat.sulfur=硫 -hbmmat.tantalum=钽 -hbmmat.tcalloy=锝钢 -hbmmat.technetium99=锝-99 -hbmmat.titanium=钛 -hbmmat.thorium232=钍-232 -hbmmat.tungsten=钨 -hbmmat.uranium=铀 -hbmmat.uranium233=铀-233 -hbmmat.uranium235=铀-235 -hbmmat.uranium238=铀-238 -hbmmat.watzmud=毒泥浆 -hbmmat.whitephosphorus=白磷 -hbmmat.workersalloy=Desh -hbmmat.wroughtiron=锻铁 -hbmmat.zirconium=锆 - -matshape.block=%s 块 -matshape.blocks=%s 块 -matshape.ingot=%s 锭 -matshape.ingots=%s 锭 -matshape.nugget=%s 粒 -matshape.nuggets=%s 粒 -matshape.quantum=%s 量子 -matshape.quanta=%s 量子 - -icffuel.beryllium=铍 -icffuel.boron=硼 -icffuel.carbon=碳 -icffuel.calcium=钙 -icffuel.chlorine=氯 -icffuel.deuterium=氘 -icffuel.helium3=氦-3 -icffuel.helium4=氦-4 -icffuel.hydrogen=氢 -icffuel.lithium=锂 -icffuel.oxygen=氧 -icffuel.sodium=钠 -icffuel.tritium=氚 - -info.asbestos=我感觉我的肺在燃烧。 -info.coaldust=在这里很难呼吸。 -info.coil=线圈强度 -info.templatefolder=需要使用%s创建 -info.template_in=输入: -info.template_in_p=输入: -info.template_out=输出: -info.template_out_p=输出: -info.template_seconds=秒 -info.template_time=生产耗时: - -item.acetylene_torch.name=乙炔焊罐 -item.ajr_boots.name=AJR 动力装甲靴子 -item.ajr_helmet.name=AJR 动力装甲头盔 -item.ajr_legs.name=AJR 动力装甲护腿 -item.ajr_plate.name=AJR 动力装甲胸甲 -item.ajro_boots.name=AJR动力装甲靴子 -item.ajro_helmet.name=AJR 动力装甲头盔 -item.ajro_legs.name=AJR 动力装甲护腿 -item.ajro_plate.name=AJR 动力装甲胸甲 -item.alloy_axe.name=高级合金斧 -item.alloy_boots.name=高级合金靴子 -item.alloy_helmet.name=高级合金头盔 -item.alloy_hoe.name=高级合金锄 -item.alloy_legs.name=高级合金护腿 -item.alloy_pickaxe.name=高级合金镐 -item.alloy_plate.name=高级合金胸甲 -item.alloy_shovel.name=高级合金锹 -item.alloy_sword.name=高级合金剑 -item.ammo_12gauge.name=12号鹿弹 -item.ammo_12gauge_du.name=12号鹿弹[铀涂层] -item.ammo_12gauge_incendiary.name=12号鹿弹[燃烧] -item.ammo_12gauge_marauder.name=12号战术反掠夺鹿弹 -item.ammo_12gauge_percussion.name=12号冲击火药帽 -item.ammo_12gauge_shrapnel.name=12号鹿弹[榴霰弹] -item.ammo_12gauge_sleek.name=12号鹿弹[IF-R&D] -item.ammo_20gauge.name=20号鹿弹 -item.ammo_20gauge_caustic.name=20号鹿弹[腐蚀] -item.ammo_20gauge_explosive.name=20号鹿弹[高爆] -item.ammo_20gauge_flechette.name=20号箭霰弹 -item.ammo_20gauge_incendiary.name=20号鹿弹[燃烧] -item.ammo_20gauge_shock.name=20号鹿弹[震荡] -item.ammo_20gauge_shrapnel.name=20号鹿弹[榴霰弹] -item.ammo_20gauge_sleek.name=20号鹿弹[IF-R&D] -item.ammo_20gauge_slug.name=20号独头弹 -item.ammo_20gauge_wither.name=20号鹿弹[凋零] -item.ammo_22lr.name=.22LR子弹 -item.ammo_22lr_ap.name=.22LR子弹[AP] -item.ammo_22lr_chlorophyte.name=.22LR子弹[叶绿] -item.ammo_357_desh.name=.357马格南Desh子弹 -item.ammo_44.name=.44马格南子弹 -item.ammo_44_ap.name=.44马格南子弹[AP] -item.ammo_44_bj.name=.44马格南子弹[船] -item.ammo_44_chlorophyte.name=.44马格南子弹[叶绿] -item.ammo_44_du.name=.44马格南子弹[贫铀] -item.ammo_44_phosphorus.name=.44马格南子弹[白磷] -item.ammo_44_pip.name=.44马格南子弹[车厢] -item.ammo_44_rocket.name=.44马格南火箭 -item.ammo_44_silver.name=.44马格南子弹[建筑] -item.ammo_44_star.name=.44马格南子弹[星辉] -item.ammo_45.name=.45 ACP 子弹 -item.ammo_45_ap.name=.45 ACP 子弹[AP] -item.ammo_45_du.name=.45 ACP 子弹[贫铀] -item.ammo_4gauge.name=四号鹿弹 -item.ammo_4gauge_balefire.name=23mm野火榴弹 -item.ammo_4gauge_canister.name=23mm 火箭弹[榴霰弹] -item.ammo_4gauge_claw.name=4号爪弹 -item.ammo_4gauge_explosive.name=23mm榴弹 -item.ammo_4gauge_flechette.name=4号箭霰弹 -item.ammo_4gauge_flechette_phosphorus.name=4号箭霰弹[白磷] -item.ammo_4gauge_kampf.name=23mm火箭弹 -item.ammo_4gauge_semtex.name=23mm采矿弹药 -item.ammo_4gauge_sleek.name=4号鹿弹[IF-R&D] -item.ammo_4gauge_slug.name=四号实心独头弹 -item.ammo_4gauge_titan.name=4号Quacker鹿弹 -item.ammo_4gauge_vampire.name=4号木签弹 -item.ammo_4gauge_void.name=4号电离粒子弹 -item.ammo_50ae.name=.50AE子弹 -item.ammo_50ae_ap.name=.50AE子弹[AP] -item.ammo_50ae_chlorophyte.name=.50AE子弹[叶绿] -item.ammo_50ae_du.name=.50AE子弹[贫铀] -item.ammo_50ae_star.name=.50AE子弹[星辉] -item.ammo_50bmg.name=.50BMG子弹 -item.ammo_50bmg_ap.name=.50BMG子弹[AP] -item.ammo_50bmg_chlorophyte.name=.50BMG子弹[叶绿] -item.ammo_50bmg_du.name=.50BMG子弹[贫铀] -item.ammo_50bmg_explosive.name=.50BMG子弹[高爆] -item.ammo_50bmg_flechette.name=.50 BMG镖形弹 -item.ammo_50bmg_flechette_am.name=.50 BMG镖形弹[含镅] -item.ammo_50bmg_flechette_po.name=.50 BMG镖形弹[含钋] -item.ammo_50bmg_incendiary.name=.50BMG子弹[燃烧] -item.ammo_50bmg_phosphorus.name=.50BMG子弹[白磷] -item.ammo_50bmg_sleek.name=.50BMG子弹[IF-R&D] -item.ammo_50bmg_star.name=.50BMG子弹[星辉] -item.ammo_556.name=5.56mm子弹 -item.ammo_556_ap.name=5.56mm子弹[AP] -item.ammo_556_chlorophyte.name=5.56mm子弹[叶绿] -item.ammo_556_du.name=5.56mm子弹[贫铀] -item.ammo_556_flechette.name=5.56mm弗莱彻子弹 -item.ammo_556_flechette_chlorophyte.name=5.56mm弗莱彻子弹[叶绿] -item.ammo_556_flechette_du.name=5.56mm弗莱彻子弹 [贫铀穿甲] -item.ammo_556_flechette_incendiary.name=5.56mm弗莱彻子弹 [燃烧] -item.ammo_556_flechette_phosphorus.name=5.56mm弗莱彻子弹 [白磷穿甲] -item.ammo_556_flechette_sleek.name=5.56mm弗莱彻子弹[IF-R&D] -item.ammo_556_k.name=5.56mm空包弹 -item.ammo_556_phosphorus.name=5.56mm子弹[白磷] -item.ammo_556_sleek.name=5.56mm子弹[IF-R&D] -item.ammo_556_star.name=5.56mm子弹 [星辉] -item.ammo_556_tracer.name=5.56mm 子弹[曳光弹] -item.ammo_5mm.name=5mm子弹 -item.ammo_5mm_chlorophyte.name=5mm子弹[叶绿] -item.ammo_5mm_du.name=5mm子弹[贫铀] -item.ammo_5mm_explosive.name=5mm子弹[高爆] -item.ammo_5mm_star.name=5mm子弹[星辉] -item.ammo_75bolt.name=.75弹匣(30发) -item.ammo_75bolt_incendiary.name=.75燃烧弹匣(30发) -item.ammo_75bolt_he.name=.75高爆弹匣(30发) -item.ammo_762.name=7.62mm 子弹 -item.ammo_762_ap.name=7.62mm 子弹[AP] -item.ammo_762_du.name=7.62mm 子弹[贫铀] -item.ammo_762_k.name=7.62mm 空包弹 -item.ammo_762_phosphorus.name=7.62mm 子弹[白磷] -item.ammo_762_tracer.name=7.62mm 子弹[曳光] -item.ammo_9mm.name=9mm子弹 -item.ammo_9mm_ap.name=9mm子弹[AP] -item.ammo_9mm_chlorophyte.name=9mm子弹[叶绿] -item.ammo_9mm_du.name=9mm子弹[贫铀] -item.ammo_9mm_rocket.name=9mm火箭弹 -item.ammo_arty.name=16英寸炮弹 -item.ammo_arty_cargo.name=16英寸快递炮弹 -item.ammo_arty_chlorine.name=16英寸氯气炮弹 -item.ammo_arty_classic.name=16英寸炮弹 (特制) -item.ammo_arty_he.name=16英寸高爆炮弹 -item.ammo_arty_mini_nuke.name=16英寸微型核炮弹 -item.ammo_arty_mini_nuke_multi.name=16英寸多弹头微型核炮弹 -item.ammo_arty_mustard_gas.name=16英寸芥子气炮弹 -item.ammo_arty_nuke.name=16英寸核炮弹 -item.ammo_arty_phosgene.name=16英寸光气炮弹 -item.ammo_arty_phosphorus.name=16英寸磷炮弹 -item.ammo_arty_phosphorus_multi.name=16英寸多弹头磷炮弹 -item.ammo_cell.name=能量单元 -item.ammo_coilgun.name=钨制线圈枪子弹 -item.ammo_coilgun_du.name=铀铁合金制线圈枪子弹 -item.ammo_coilgun_rubber.name=橡胶制线圈枪子弹 -item.ammo_container.name=万能弹药盒 -item.ammo_dart.name=塑料镖[凋零] -item.ammo_dart_nerf.name=NERF 飞镖 -item.ammo_dart_nuclear.name=塑料镖[定时炸药] -item.ammo_dgk.name=双联守门员近防系统200发弹药 -item.ammo_fireext.name=灭火器 水罐 -item.ammo_fireext_foam.name=灭火器 泡沫罐 -item.ammo_fireext_sand.name=灭火器 硼沙罐 -item.ammo_folly.name=银弹 -item.ammo_folly_du.name=银弹[贫铀, 不爆炸] -item.ammo_folly_nuclear.name=银弹[核子] -item.ammo_fuel.name=柴油罐 -item.ammo_fuel_gas.name=毒气罐 -item.ammo_fuel_napalm.name=凝固汽油罐 -item.ammo_fuel_phosphorus.name=白磷罐 -item.ammo_fuel_vaporizer.name=汽化罐 -item.ammo_grenade.name=40mm榴弹 -item.ammo_grenade_concussion.name=40mm榴弹[震荡] -item.ammo_grenade_finned.name=40mm榴弹[尾翼稳定] -item.ammo_grenade_he.name=40mm榴弹[HE] -item.ammo_grenade_incendiary.name=40mm榴弹[燃烧] -item.ammo_grenade_kampf.name=40mm战术榴弹 -item.ammo_grenade_leadburster.name=40mm 开路先锋 -item.ammo_grenade_nuclear.name=40mm榴弹[核子] -item.ammo_grenade_phosphorus.name=40mm榴弹[白磷] -item.ammo_grenade_sleek.name=40mm榴弹[IF-R&D] -item.ammo_grenade_toxic.name=40mm榴弹[化学] -item.ammo_grenade_tracer.name=40mm训练榴弹 -item.ammo_himars_standard.name=M28制导火箭炮系统火箭弹舱 -item.ammo_himars_standard_he.name=227毫米制导火箭炮系统火箭吊舱(HE) -item.ammo_himars_standard_lava.name=227毫米制导火箭炮系统火箭吊舱(熔岩) -item.ammo_himars_standard_mini_nuke.name=227毫米制导火箭炮系统火箭吊舱(迷你核弹) -item.ammo_himars_standard_tb.name=227毫米制导火箭炮系统火箭吊舱(温压弹) -item.ammo_himars_standard_wp.name=227毫米制导火箭炮系统火箭吊舱(白磷) -item.ammo_himars_single.name=M39A1制导火箭炮系统火箭弹舱 -item.ammo_himars_single_tb.name=610毫米制导火炮火箭吊舱(温压弹) -item.ammo_luna.name=Lunatic狙击弹 -item.ammo_luna_explosive.name=Lunatic狙击爆炸弹 -item.ammo_luna_incendiary.name=Lunatic狙击燃烧弹 -item.ammo_mirv.name=迷你MIRV -item.ammo_mirv_high.name=迷你MIRV (高当量) -item.ammo_mirv_low.name=迷你MIRV (低当量) -item.ammo_mirv_safe.name=迷你MIRV (安全) -item.ammo_mirv_special.name=迷你MIRV -item.ammo_nuke.name=迷你核弹 -item.ammo_nuke_barrel.name=小型核废料桶 -item.ammo_nuke_high.name=迷你核弹 (高当量) -item.ammo_nuke_low.name=迷你核弹 (低当量) -item.ammo_nuke_pumpkin.name=南瓜炸弹 -item.ammo_nuke_safe.name=迷你核弹 (安全) -item.ammo_nuke_tots.name=迷你核弹 (幼体) -item.ammo_rocket.name=84mm火箭弹 -item.ammo_rocket_canister.name=84mm 火箭弹[榴霰弹] -item.ammo_rocket_digamma.name=§4归 零§r -item.ammo_rocket_emp.name=84mm火箭弹[EMP] -item.ammo_rocket_glare.name=84mm火箭弹[红光] -item.ammo_rocket_he.name=84mm火箭弹[HE] -item.ammo_rocket_incendiary.name=84mm火箭弹[燃烧] -item.ammo_rocket_nuclear.name=84mm火箭弹[核子] -item.ammo_rocket_phosphorus.name=84mm火箭弹[白磷] -item.ammo_rocket_rpc.name=84mm火箭弹[飞行电锯] -item.ammo_rocket_shrapnel.name=84mm火箭弹[破片] -item.ammo_rocket_sleek.name=84mm火箭弹[IF-R&D] -item.ammo_rocket_toxic.name=84mm火箭弹[化学] -item.ammo_shell.name=240mm炮弹 -item.ammo_shell_apfsds_du.name=240mm 贫铀尾翼稳定脱壳穿甲弹 -item.ammo_shell_apfsds_t.name=240mm 钨心尾翼稳定脱壳穿甲弹 -item.ammo_shell_explosive.name=240mm 高爆炮弹 -item.ammo_shell_w9.name=240mm W9核子炮弹 -item.ammo_stinger_rocket.name=毒刺导弹 -item.ammo_stinger_rocket_he.name=毒刺导弹[高爆] -item.ammo_stinger_rocket_incendiary.name=毒刺导弹[燃烧] -item.ammo_stinger_rocket_nuclear.name=毒刺导弹[Привет] -item.ammo_stinger_rocket_bones.name=毒刺导弹[寻骨] -item.ams_catalyst_aluminium.name=铝反应催化剂 -item.ams_catalyst_beryllium.name=铍反应催化剂 -item.ams_catalyst_blank.name=空白反应催化剂 -item.ams_catalyst_caesium.name=铯反应催化剂 -item.ams_catalyst_cerium.name=铈反应催化剂 -item.ams_catalyst_cobalt.name=钴反应催化剂 -item.ams_catalyst_copper.name=铜反应催化剂 -item.ams_catalyst_dineutronium.name=双聚中子态素反应催化剂 -item.ams_catalyst_euphemium.name=Ep反应催化剂 -item.ams_catalyst_iron.name=铁反应催化剂 -item.ams_catalyst_lithium.name=锂反应催化剂 -item.ams_catalyst_niobium.name=铌反应催化剂 -item.ams_catalyst_schrabidium.name=Sa326反应催化剂 -item.ams_catalyst_strontium.name=锶反应催化剂 -item.ams_catalyst_thorium.name=钍反应催化剂 -item.ams_catalyst_tungsten.name=钨反应催化剂 -item.ams_core_eyeofharmony.name=和谐之眼[AMS/DFC核心] -item.ams_core_sing.name=活跃奇点[AMS/DFC核心] -item.ams_core_thingy.name=Thingy[AMS/DFC核心] -item.ams_core_wormhole.name=微型虫洞[AMS/DFC核心] -item.ams_focus_blank.name=空白稳定器焦点 -item.ams_focus_booster.name=增压型稳定器焦点 -item.ams_focus_booster.desc=较弱的约束场和核心能量注入:$更多的热量产生,更多的能量。 -item.ams_focus_limiter.name=限制稳定器焦点 -item.ams_focus_limiter.desc=限制领域的最高性能:$标准冷却,无能源加成。 -item.ams_lens.name=稳定透镜 -item.ams_muzzle.name=激活射线发射极 -item.ams_muzzle.desc=...它可以发出一束能量束。 -item.analysis_tool.name=分析工具 -item.analyzer.name=分析仪 -item.anchor_remote.name=召回设备 -item.antiknock.name=四乙基铅抗爆剂 -item.apple_euphemium.name=Ep苹果 -item.apple_lead.name=铅苹果 -item.apple_schrabidium.name=Sa326苹果 -item.arc_electrode.name=石墨电极 -item.arc_electrode.desh.name=Desh电极 -item.arc_electrode.graphite.name=石墨电极 -item.arc_electrode.lanthanium.name=镧电极 -item.arc_electrode.saturnite.name=土星电极 -item.arc_electrode_burnt.name=熔化电极 -item.arc_electrode_burnt.desh.name=熔化Desh电极 -item.arc_electrode_burnt.graphite.name=熔化石墨电极 -item.arc_electrode_burnt.lanthanium.name=熔化镧电极 -item.arc_electrode_burnt.saturnite.name=熔化土星电极 -item.arc_electrode_desh.name=Desh电极 -item.armor_polish.name=亮甲牌装甲抛光剂 -item.asbestos_boots.name=防火靴 -item.asbestos_cloth.name=防火布 -item.asbestos_helmet.name=防火头盔 -item.asbestos_legs.name=防火护腿 -item.asbestos_plate.name=防火胸甲 -item.ashglasses.name=防灰烬护目镜 -item.assembly_45.name=.45 ACP子弹[待装配] -item.assembly_556.name=5.56mm子弹[待装配] -item.assembly_762.name=7.62mm子弹[待装配] -item.assembly_actionexpress.name=.50 AE子弹[待装配] -item.assembly_calamity.name=.50 BMG子弹[待装配] -item.assembly_desh.name=Desh子弹[待装配] -item.assembly_gold.name=金子弹[待装配] -item.assembly_iron.name=铁子弹[待装配] -item.assembly_lacunae.name=.5mm子弹[待装配] -item.assembly_lead.name=玻璃子弹[待装配] -item.assembly_luna.name=Lunatic狙击子弹[待装配] -item.assembly_nightmare.name=钨子弹[待装配] -item.assembly_nopip.name=.44马格南[待装配] -item.assembly_nuke.name=迷你核弹外壳 -item.assembly_pip.name=污染子弹[待装配] -item.assembly_schrabidium.name=Sa326子弹[待装配] -item.assembly_smg.name=9mm子弹[待装配] -item.assembly_steel.name=铅子弹[待装配] -item.assembly_template.name=装配机模板: -item.assembly_uzi.name=.22 LR子弹[待装配] -item.attachment_mask.name=附加型防毒面具 -item.attachment_mask_mono.name=可接入式半面罩防毒面具 -item.australium_iii.name=MkIII寿命延长剂 -item.australium_iv.name=MkIV寿命延长剂 -item.australium_v.name=MkV寿命延长剂 -item.back_tesla.name=背负式特斯拉线圈 -item.balefire_and_ham.name=火腿野火蛋 -item.balefire_and_steel.name=野火打火石 -item.balefire_scrambled.name=炒野火蛋 -item.ball_dynamite.name=硝糖炸药 -item.ball_fireclay.name=耐火粘土 -item.ball_resin.name=乳胶 -item.ball_tatb.name=三氨基三硝基苯(TATB) -item.ball_tnt.name=TNT炸药 -item.ballistic_gauntlet.name=冲击拳套 -item.ballistite.name=混合无烟火药 -item.bandaid.name=邦迪创可贴 -item.bathwater.name=有毒肥皂水 -item.bathwater_mk2.name=有毒肥皂水(马香味) -item.battery_advanced.name=高级电池 -item.battery_advanced_cell.name=高级电池组 -item.battery_advanced_cell_12.name=十二联高级电池组 -item.battery_advanced_cell_4.name=四联高级电池组 -item.battery_creative.name=无限电池 -item.battery_generic.name=电池 -item.battery_lithium.name=锂电池 -item.battery_lithium_cell.name=锂电池组 -item.battery_lithium_cell_3.name=三联锂电池组 -item.battery_lithium_cell_6.name=六联锂电池组 -item.battery_potato.name=马铃薯电池 -item.battery_potatos.name=马铃薯OS -item.battery_red_cell.name=红石电池组 -item.battery_red_cell_24.name=二十四联红石电池组 -item.battery_red_cell_6.name=六联红石电池组 -item.battery_sc_americium.name=自充电 镅-241电池 -item.battery_sc_gold.name=自充电 金-198电池 -item.battery_sc_lead.name=自充电 铅-209电池 -item.battery_sc_plutonium.name=自充电 钚-238电池 -item.battery_sc_polonium.name=自充电 钋-210电池 -item.battery_sc_technetium.name=自充电 锝-98电池 -item.battery_sc_uranium.name=自充电 铀-238电池 -item.battery_schrabidium.name=Sa326电池 -item.battery_schrabidium_cell.name=Sa326电池组 -item.battery_schrabidium_cell_2.name=双联Sa326电池组 -item.battery_schrabidium_cell_4.name=四联Sa326电池组 -item.battery_spark.name=Spark电池 -item.battery_spark_cell_100.name=Spark神秘储能电池组 -item.battery_spark_cell_1000.name=Spark神秘物质能量空间 -item.battery_spark_cell_10000.name=Spark时空晶体 -item.battery_spark_cell_25.name=Spark神秘汽车电池 -item.battery_spark_cell_2500.name=Spark神秘迪拉克之海 -item.battery_spark_cell_6.name=Spark电池组 -item.battery_spark_cell_power.name=Spark反物理储能装置 -item.battery_steam.name=蒸汽动力储能罐 -item.battery_steam_large.name=大型蒸汽动力储能罐 -item.battery_su.name=SU-电池 -item.battery_su_l.name=大型SU-电池 -item.battery_trixite.name=杂牌Spark电池 -item.bdcl.name=BDCL -item.bedrock_ore.grade.base.name=%s基岩矿石 -item.bedrock_ore.grade.base_roasted.name=焙烧%s基岩矿石 -item.bedrock_ore.grade.base_washed.name=洗净%s基岩矿石 -item.bedrock_ore.grade.primary.name=%s基岩矿石主产物 -item.bedrock_ore.grade.primary_roasted.name=焙烧%s基岩矿石主产物 -item.bedrock_ore.grade.primary_sulfuric.name=酸浸%s基岩矿石主产物 -item.bedrock_ore.grade.primary_nosulfuric.name=离心酸浸%s基岩矿石主产物 -item.bedrock_ore.grade.primary_solvent.name=溶解%s基岩矿石主产物 -item.bedrock_ore.grade.primary_nosolvent.name=离心溶解%s基岩矿石主产物 -item.bedrock_ore.grade.primary_rad.name=清洁%s基岩矿石主产物 -item.bedrock_ore.grade.primary_norad.name=离心清洁%s基岩矿石主产物 -item.bedrock_ore.grade.primary_first.name=高重量%s基岩矿石主产物 -item.bedrock_ore.grade.primary_second.name=低重量%s基岩矿石主产物 -item.bedrock_ore.grade.crumbs.name=%s基岩矿石矿渣 -item.bedrock_ore.grade.sulfuric_byproduct.name=酸浸%s基岩矿石副产物 -item.bedrock_ore.grade.sulfuric_roasted.name=焙烧酸浸%s基岩矿石副产物 -item.bedrock_ore.grade.sulfuric_arc.name=灼热酸浸%s基岩矿石副产物 -item.bedrock_ore.grade.sulfuric_washed.name=洗净酸浸%s基岩矿石副产物 -item.bedrock_ore.grade.solvent_byproduct.name=溶解%s基岩矿石副产物 -item.bedrock_ore.grade.solvent_roasted.name=焙烧溶解%s基岩矿石副产物 -item.bedrock_ore.grade.solvent_arc.name=灼热溶解%s基岩矿石副产物 -item.bedrock_ore.grade.solvent_washed.name=洗净溶解%s基岩矿石副产物 -item.bedrock_ore.grade.rad_byproduct.name=清洁%s基岩矿石副产物 -item.bedrock_ore.grade.rad_roasted.name=焙烧清洁%s基岩矿石副产物 -item.bedrock_ore.grade.rad_arc.name=灼热清洁%s基岩矿石副产物 -item.bedrock_ore.grade.rad_washed.name=洗净清洁%s基岩矿石副产物 -item.bedrock_ore.trait.arc=§6电弧炉煅烧 -item.bedrock_ore.trait.centrifuged=§9离心处理 -item.bedrock_ore.trait.rad=§a高性能溶剂处理 -item.bedrock_ore.trait.roasted=§e复式炼焦炉焙烧 -item.bedrock_ore.trait.solvent=§f有机溶剂处理 -item.bedrock_ore.trait.sulfuric=§6硫酸处理 -item.bedrock_ore.trait.washed=§b水洗 -item.bedrock_ore.type.actinide.name=锕系元素 -item.bedrock_ore.type.crystal.name=晶体 -item.bedrock_ore.type.heavy.name=重金属 -item.bedrock_ore.type.light.name=轻金属 -item.bedrock_ore.type.nonmetal.name=非金属 -item.bedrock_ore.type.rare.name=稀土 -item.bedrock_ore_base.name=基岩矿石原矿 -item.bedrock_ore_fragment.name=%s基岩矿石碎片 -item.beta.name=Beta测试版功能 -item.big_sword.name=大剑 -item.billet_actinium.name=锕-227坯料 -item.billet_am_mix.name=反应堆级镅坯料 -item.billet_am241.name=镅-241坯料 -item.billet_am242.name=镅-242坯料 -item.billet_americium_fuel.name=镅燃料坯料 -item.billet_au198.name=金-198坯料 -item.billet_australium.name=奥斯坯料 -item.billet_australium_greater.name=富集奥斯坯料 -item.billet_australium_lesser.name=贫化奥斯坯料 -item.billet_balefire_gold.name=激活态金-198坯料 -item.billet_beryllium.name=铍坯料 -item.billet_bismuth.name=铋坯料 -item.billet_co60.name=钴-60坯料 -item.billet_cobalt.name=钴坯料 -item.billet_flashlead.name=闪光铅坯料 -item.billet_flashlead.desc=晶格衰变,引起反物质湮灭反应,导致π介子释放,衰变为μ子,催化原子核融合,产生新的元素$请尽量跟上。 -item.billet_gh336.name=Gh336坯料 -item.billet_gh336.desc=钅喜的同事 -item.billet_hes.name=高浓缩度Sa326燃料坯料 -item.billet_les.name=低浓缩度Sa326燃料坯料 -item.billet_mox_fuel.name=MOX燃料坯料 -item.billet_mox_fuel.desc=口袋摩西! -item.billet_neptunium.name=镎坯料 -item.billet_neptunium_fuel.name=镎核燃料坯料 -item.billet_nuclear_waste.name=核废料坯料 -item.billet_pb209.name=铅-209坯料 -item.billet_po210be.name=钋210-铍坯料 -item.billet_polonium.name=钋坯料 -item.billet_pu_mix.name=反应堆级钚坯料 -item.billet_pu238.name=钚-238坯料 -item.billet_pu238be.name=钚238-铍坯料 -item.billet_pu239.name=钚-239坯料 -item.billet_pu240.name=钚-240坯料 -item.billet_pu241.name=钚-241坯料 -item.billet_plutonium.name=钚坯料 -item.billet_plutonium_fuel.name=钚燃料坯料 -item.billet_ra226.name=镭-226坯料 -item.billet_ra226be.name=镭226-铍坯料 -item.billet_schrabidium.name=Sa326坯料 -item.billet_schrabidium_fuel.name= Sa326燃料坯料 -item.billet_silicon.name=硅晶圆 -item.billet_solinium.name=Sa327坯料 -item.billet_sr90.name=锶-90坯料 -item.billet_technetium.name=锝-99坯料 -item.billet_th232.name=钍-232坯料 -item.billet_thorium_fuel.name=钍燃料坯料 -item.billet_u233.name=铀-233坯料 -item.billet_u235.name=铀-235坯料 -item.billet_u238.name=铀-238坯料 -item.billet_uranium.name=铀坯料 -item.billet_uranium_fuel.name=铀燃料坯料 -item.billet_yharonite.name=犽戎龙素坯料 -item.billet_zfb_am_mix.name=反应堆级镅 ZFB坯料 -item.billet_zfb_bismuth.name=铋 ZFB坯料 -item.billet_zfb_pu241.name=钚-241 ZFB坯料 -item.billet_zirconium.name=锆坯料 -item.bio_wafer.name=海藻晶片 -item.biomass.name=生物质 -item.biomass_compressed.name=压缩生物质 -item.bismuth_boots.name=铋凉鞋 -item.bismuth_helmet.name=铋头饰 -item.bismuth_legs.name=铋护膝 -item.bismuth_axe.name=铋斧 -item.bismuth_pickaxe.name=铋镐 -item.bismuth_plate.name=铋质护肩、项链和腰带 -item.bismuth_tool.name=磁力提取器 -item.bj_boots.name=§4月神§r钉靴 -item.bj_helmet.name=热传感器眼罩 -item.bj_legs.name=§4月神§r护腿 -item.bj_plate.name=§4月神§r胸甲 -item.bj_plate_jetpack.name=§4月神§r胸甲 (带翼) -item.black_diamond.name=黑色钻石 -item.black_hole.name=微型黑洞 -item.blade_meteorite.name=陨石刀 -item.blade_titanium.name=钛扇片 -item.blade_tungsten.name=钨强化扇片 -item.blades_advanced_alloy.name=高级合金刀片 -item.blades_desh.name=Desh制刀片 -item.blades_steel.name=钢制刀片 -item.blades_titanium.name=钛制刀片 -item.blowtorch.name=喷灯 -item.board_copper.name=铜片 -item.boat_rubber.name=橡胶船 -item.bobmazon_hidden.name=隐藏目录 -item.bobmazon_machines.name=Bobmazon: 方块和机器 -item.bobmazon_materials.name=Bobmazon: 材料 -item.bobmazon_tools.name=Bobmazon: 工具 -item.bobmazon_weapons.name=Bobmazon: 武器和爆炸物 -item.boltntm.name=%s螺栓 -item.bolt_compound.name=加强涡轮机轴 -item.bolt_dura_steel.name=高速钢螺栓 -item.bolt_tungsten.name=钨螺栓 -item.bolt_spike.name=铁路道钉 -item.bolt_spike.desc=不知何故,散发着威胁的气息 -item.boltgun.name=气动射钉枪 -item.bomb_caller.name=空袭指示器 -item.bomb_waffle.name=大规模杀伤性华夫饼 -item.book_guide.name=HBM指导书 -item.book_of_.name=车厢书 -item.book_lemegeton.name=所罗门之钥 -item.book_secret.name=3-596-50802-9 -item.bottle2_empty.name=空瓶 -item.bottle2_fritz.name=弗里茨可乐 -item.bottle2_fritz_special.name=第一弗里茨可乐 -item.bottle2_korl.name=Korl -item.bottle2_korl_special.name=第一Korl -item.bottle2_sunset.name=夕阳沙士 -item.bottle_cherry.name=樱桃味核子可乐 -item.bottle_empty.name=空可乐瓶 -item.bottle_mercury.name=一瓶水银 -item.bottle_nuka.name=核子可乐 -item.bottle_opener.name=Hbm自制开瓶器 -item.bottle_quantum.name=量子核子可乐 -item.bottle_rad.name=辐射S~核子可乐 -item.bottle_sparkle.name=S~核子可乐 -item.bottled_cloud.name=瓶中云 -item.boy_bullet.name=铀-235弹头 -item.boy_igniter.name=点火器 -item.boy_kit.name=小男孩 套件 -item.boy_propellant.name=炸药 -item.boy_shielding.name=中子屏蔽罩 -item.boy_target.name=次临界铀-235标靶 -item.briquette.coal.name=煤球 -item.briquette.lignite.name=褐煤煤球 -item.briquette.wood.name=木屑球 -item.bucket_acid.name=一桶酸 -item.bucket_mud.name=一桶毒泥 -item.bucket_schrabidic_acid.name=一桶Sa酸 -item.bucket_sulfuric_acid.name=一桶硫酸 -item.bucket_toxic.name=一桶绿色软泥 -item.burnt_bark.name=烧焦树皮 -item.burnt_bark.desc=爆炸的金橡树的树皮。 -item.can_bepis.name=白事 -item.can_breen.name=布雷恩博士的私人珍藏 -item.can_creature.name='生物'能量饮料 -item.can_empty.name=空罐 -item.can_key.name=罐头拉环 -item.can_luna.name=黑梅萨露娜-黑可乐 -item.can_mrsugar.name='糖博士'软饮料 -item.can_mug.name=MUG牌树根啤酒 -item.can_overcharge.name=超频DeliriumXT -item.can_redbomb.name='红色炸弹'能量饮料 -item.can_smart.name="智慧"能量饮料 -item.canister_NITAN.name=桶装NITAN 100号超级燃料 -item.canister_biofuel.name=桶装生物燃料 -item.canister_bitumen.name=桶装沥青 -item.canister_canola.name=桶装润滑油 -item.canister_empty.name=空油桶 -item.canister_ethanol.name=桶装乙醇 -item.canister_fracksol.name=桶装压裂液 -item.canister_fuel.name=桶装柴油 -item.canister_fuel.desc=大家欢呼吧! -item.canister_full.name=油桶: -item.canister_gasoline.name=桶装含铅汽油 -item.canister_gasoline.desc=铅就是朋友$让朋友进入你的血液$*上膛声*现在就做 -item.canister_heatingoil.name=桶装燃油 -item.canister_heavyoil.name=桶装重油 -item.canister_kerosene.name=桶装煤油 -item.canister_lightoil.name=桶装轻油 -item.canister_napalm.name=桶装凝固汽油B -item.canister_naphtha.name=桶装石脑油 -item.canister_oil.name=桶装原油 -item.canister_petroil.name=桶装汽油 -item.canister_reoil.name=桶装再生油 -item.canister_smear.name=桶装工业油 -item.canned_asbestos.name=石棉罐头 -item.canned_asbestos.desc=尝尝石棉肺! -item.canned_ass.name=驴罐头 -item.canned_ass.desc=100%优质驴肉!* -item.canned_bark.name=松树皮罐头 -item.canned_bark.desc=更加的“松”脆! -item.canned_beef.name=牛肉罐头 -item.canned_beef.desc=几个世纪前,一头牛为此而死。 -item.canned_bhole.name=黑洞罐头 -item.canned_bhole.desc=奇点是我肚肚里的美味! -item.canned_cheese.name=融化奶酪罐头 -item.canned_cheese.desc=是奶酪吗?是橡胶水泥吗?谁知道,谁在乎。 -item.canned_chinese.name=中餐罐头 -item.canned_chinese.desc=在中国,中餐被称为饭。 -item.canned_diesel.name=柴油罐头 -item.canned_diesel.desc=我渐渐地就抖不出包袱了 -item.canned_fist.name=拳头罐头 -item.canned_fist.desc=给你一拳! -item.canned_fried.name=炸鸡罐头 -item.canned_fried.desc=甚至罐头都是油炸的! -item.canned_hotdogs.name=热狗罐头 -item.canned_hotdogs.desc=不要与冷猫混淆。 -item.canned_jizz.name=FlimFlam工业牌?马奶罐头 -item.canned_jizz.desc=等等什么—— -item.canned_kerosene.name=煤油罐头 -item.canned_kerosene.desc=想象一下这句俏皮的台词。 -item.canned_leftovers.name=剩菜罐头 -item.canned_leftovers.desc=你来的太迟了 -item.canned_milk.name=罐装炼乳 -item.canned_milk.desc=牛奶2:比以往任何时候都更固体! -item.canned_mystery.name=神秘肉类罐头 -item.canned_mystery.desc=里面是什么?只有一种方法可以找到! -item.canned_napalm.name=凝固汽油罐头 -item.canned_napalm.desc=我喜欢早上闻着老梗的味道! -item.canned_oil.name=机油罐头 -item.canned_oil.desc=它既然能让发动机运转的更流畅,那为什么不能用在人类身上? -item.canned_pashtet.name=牛排罐头 -item.canned_pashtet.desc=翻译服务不可用блядь! -item.canned_pizza.name=意大利香肠比萨罐头 -item.canned_pizza.desc=反人类罪 -item.canned_recursion.name=循环罐头 -item.canned_recursion.desc=封闭递归 -item.canned_spam.name=SPAM斯帕姆午餐肉 -item.canned_spam.desc=这段三分半钟的幽默剧是以布朗利虚构的绿侏儒咖啡馆为背景。$一位女服务生与不喜欢吃午餐肉的本太太之间发生了争执,$女服务生背诵了一份几乎每道菜都含有午餐肉的菜单。$本太太要了一道没有午餐肉的菜,这让她爱吃午餐肉的丈夫大吃一惊。$女服务员也对这个要求很反感。本先生提出要替换她的午餐肉,并要了一道含有大量午餐肉和烤豆的菜。$服务员拒绝了,因为烤豆子已经吃完了;当本先生要求替换午餐肉时,女服务员再次表示厌恶。$有几次,餐厅里的一群维京人高声歌唱午餐肉,打断了谈话。$那个愤怒的女服务员命令他们闭嘴,但他们依旧大声唱歌。$这时一名匈牙利游客来到柜台,试图用一本完全不准确的匈牙利语/英语手册(参考之前的小品)点菜。$紧接着这名匈牙利游客就被一名警察迅速护送离开。$然后这段幽默剧突然切换镜头,一位历史学家在电视演播室谈论维京人在咖啡馆的起源。$他继续说,并开始越来越多地在每一句话中插入“午餐肉”一词。$然后背景被抬高,露出背后的餐厅场景。$那个历史学家加入了维京人的歌曲,本夫妇通过电线离开现场,而歌声还在继续。$在最初的电视表演中,结尾的字幕开始滚动,背景中仍然可以听到歌声。 -item.canned_stew.name=蘑菇煲罐头 -item.canned_stew.desc=... -item.canned_tomato.name=番茄汤罐头 -item.canned_tomato.desc=谁要浓浓的红糊糊? -item.canned_tube.name=宇航员食品管 -item.canned_tube.desc=美味的蘑菇。 -item.canned_tuna.name=金枪鱼罐头 -item.canned_tuna.desc=我不知道那是金枪鱼还是干水泥。 -item.canned_yogurt.name=酸奶罐头 -item.canned_yogurt.desc=可能坏掉了,但管它呢 -item.canteen_13.name=Vault13水壶 -item.canteen_fab.name=极品伏特加 -item.canteen_vodka.name=伏特加 -item.cap_fritz.name=弗里茨瓶盖 -item.cap_korl.name=Korl瓶盖 -item.cap_nuka.name=核子可乐瓶盖 -item.cap_quantum.name=樱桃味核子可乐瓶盖 -item.cap_rad.name=辐射S~核子可乐瓶盖 -item.cap_sparkle.name=S~核子可乐瓶盖 -item.cap_star.name=夕阳沙士星星瓶盖 -item.cap_sunset.name=夕阳沙士瓶盖 -item.cape_ayy.name=Ayy披风 -item.cape_codered_.name=codered_披风 -item.cape_dafnik.name=Dafnik披风 -item.cape_gasmask.name=披风[防毒面具] -item.cape_hbm.name=Hbm披风 -item.cape_hidden.name=隐藏斗篷 -item.cape_lpkukin.name=LPkukin披风 -item.cape_nostalgia.name=DrNostalgia披风 -item.cape_radiation.name=披风[辐射] -item.cape_schrabidium.name=披风[Sa326] -item.cape_vertice.name=Lord Vertice披风 -item.card_aos.name=黑桃A -item.card_qos.name=黑桃皇后 -item.cart.crate.name=板条箱运输车 -item.cart.destroyer.name=废品销毁车 -item.cart.empty.name=钢箱矿车 -item.casing_357.name=.357马格南弹壳[x16] -item.casing_44.name=.44马格南弹壳[x16] -item.casing_50.name=大口径弹壳[x8] -item.casing_9.name=小口径弹壳[x24] -item.casing_buckshot.name=鹿弹弹壳[x8] -item.catalyst_clay.name=黏土催化剂 -item.catalytic_converter.name=催化转化器 -item.cbt_device.name=CBT装置 -item.cell_anti_schrabidium.name=反Sa326单元 -item.cell_antimatter.name=反物质单元 -item.cell_balefire.name=气态野火单元 -item.cell_deuterium.name=氘单元 -item.cell_empty.name=空单元 -item.cell_puf6.name=六氟化钚单元 -item.cell_sas3.name=三硫化Sa单元 -item.cell_tritium.name=氚单元 -item.cell_uf6.name=六氟化铀单元 -item.centri_stick.name=便携离心机 -item.centrifuge_element.name=离心元件 -item.centrifuge_tower.name=离心塔 -item.chainsaw.name=链锯 -item.cheese.name=奶酪 -item.cheese_quesadilla.name=奶酪油炸玉米粉饼 -item.chemical_dye.black.name=化学染料(黑色) -item.chemical_dye.blue.name=化学染料(蓝色) -item.chemical_dye.brown.name=化学染料(棕色) -item.chemical_dye.cyan.name=化学染料(青色) -item.chemical_dye.gray.name=化学染料(灰色) -item.chemical_dye.green.name=化学染料(绿色) -item.chemical_dye.lightblue.name=化学染料(浅蓝色) -item.chemical_dye.lime.name=化学染料(石灰) -item.chemical_dye.magenta.name=化学染料(品红色) -item.chemical_dye.orange.name=化学染料(橙色) -item.chemical_dye.pink.name=化学染料(粉色) -item.chemical_dye.purple.name=化学染料(紫色) -item.chemical_dye.red.name=化学染料(红色) -item.chemical_dye.silver.name=化学染料(浅灰色) -item.chemical_dye.white.name=化学染料(白色) -item.chemical_dye.yellow.name=化学染料(黄色) -item.chemistry_set.name=实验室玻璃器皿 -item.chemistry_set_boron.name=实验室玻璃器皿(硼玻璃) -item.chemistry_template.name=化工厂模板: -item.chernobylsign.name=辐射警告标志战斧 -item.chlorine_pinwheel.name=氯气转轮 -item.chlorophyte_axe.name=叶绿斧 -item.chlorophyte_pickaxe.name=叶绿镐 -item.chocolate.name=“我是-镭牌”巧克力 -item.chocolate.desc=镭巧克力?我很确定这是冰毒。 -item.chocolate_milk.name=巧克力牛奶 -item.chopper.name=猎人直升机 -item.chopper_blades.name=猎人直升机旋翼 -item.chopper_gun.name=猎人直升机机枪 -item.chopper_head.name=猎人直升机驾驶舱 -item.chopper_tail.name=猎人直升机尾部 -item.chopper_torso.name=猎人直升机主体 -item.chopper_wing.name=猎人直升机翼片 -item.chunk_ore.rare.name=稀土矿石块 -item.cigarette.name=FFI牌香烟 -item.cinnebar.name=朱砂 -item.circuit.advanced.name=军用级电路板 -item.circuit.analog.name=模拟电路板 -item.circuit.atomic_clock.name=原子钟 -item.circuit.basic.name=集成电路板 -item.circuit.bismoid.name=多功能电路板 -item.circuit.capacitor.name=电容器 -item.circuit.capacitor_board.name=电容板 -item.circuit.capacitor_tantalium.name=钽电容器 -item.circuit.chip.name=微芯片 -item.circuit.chip_bismoid.name=多功能集成电路 -item.circuit.chip_quantum.name=固态量子处理器 -item.circuit.controller.name=控制单元 -item.circuit.controller_advanced.name=高级控制单元 -item.circuit.controller_chassis.name=控制单元外壳 -item.circuit.controller_quantum.name=量子计算机 -item.circuit.pcb.name=印刷电路板 -item.circuit.quantum.name=量子处理单元 -item.circuit.silicon.name=压印硅晶圆 -item.circuit.vacuum_tube.name=真空管 -item.circuit_aluminium.name=基础电路 -item.circuit_arsenic.name=自适应电路 -item.circuit_arsenic_raw.name=自适应电路组件 -item.circuit_bismuth.name=多功能芯片组 -item.circuit_bismuth_raw.name=多功能芯片组组件 -item.circuit_copper.name=增强电路 -item.circuit_gold.name=超频电路 -item.circuit_raw.name=基本电路组件 -item.circuit_red_copper.name=高级电路 -item.circuit_schrabidium.name=高性能电路 -item.circuit_star.name=星控制 电路板 -item.circuit_star.desc=目前未使用,因为它缺少操作系统。 -item.circuit_star_component.card.name=星控制 扩展卡 -item.circuit_star_component.chipset.name=星控制 芯片组 -item.circuit_star_component.cpu.name=星控制 CPU -item.circuit_star_component.ram.name=星控制 RAM -item.circuit_star_piece.board_blank.name=SC-印刷电路板 -item.circuit_star_piece.board_converter.name=SC-电压转换器 -item.circuit_star_piece.board_transistor.name=SC-晶体管 -item.circuit_star_piece.bridge_bios.name=SC-BIOS芯片 -item.circuit_star_piece.bridge_bus.name=SC-总线 -item.circuit_star_piece.bridge_chipset.name=SC-芯片组 -item.circuit_star_piece.bridge_cmos.name=SC-CMOS存储器 -item.circuit_star_piece.bridge_io.name=SC-IO芯片 -item.circuit_star_piece.bridge_north.name=SC-北桥 -item.circuit_star_piece.bridge_south.name=SC-南桥 -item.circuit_star_piece.card_board.name=SC-扩展卡底板 -item.circuit_star_piece.card_processor.name=SC-扩展卡处理器 -item.circuit_star_piece.cpu_cache.name=SC-CPU缓存 -item.circuit_star_piece.cpu_clock.name=SC-CPU时钟 -item.circuit_star_piece.cpu_ext.name=SC-砷半导体外延片 -item.circuit_star_piece.cpu_logic.name=SC-算术逻辑单元 -item.circuit_star_piece.cpu_register.name=SC-CPU寄存器 -item.circuit_star_piece.cpu_socket.name=SC-CPU插槽 -item.circuit_star_piece.mem_socket.name=SC-存储插座 -item.circuit_star_piece.mem_16k_a.name=SC-16k内存条插槽 A -item.circuit_star_piece.mem_16k_b.name=SC-16k内存条插槽 B -item.circuit_star_piece.mem_16k_c.name=SC-16k内存条插槽 C -item.circuit_star_piece.mem_16k_d.name=SC-16k内存条插槽 D -item.circuit_tantalium.name=电容板 -item.circuit_tantalium_raw.name=电容板组件 -item.circuit_targeting_tier1.name=军用级电路板[1级] -item.circuit_targeting_tier2.name=军用级电路板[2级] -item.circuit_targeting_tier3.name=军用级电路板[3级] -item.circuit_targeting_tier4.name=军用级电路板[4级] -item.circuit_targeting_tier5.name=军用级电路板[5级] -item.circuit_targeting_tier6.name=军用级电路板[6级] -item.cladding_desh.name=Desh覆层 -item.cladding_ghiorsium.name=Gh336覆层 -item.cladding_iron.name=铁覆层 -item.cladding_lead.name=铅覆层 -item.cladding_obsidian.name=黑曜石覆层 -item.cladding_paint.name=铅涂料 -item.cladding_rubber.name=橡胶覆层 -item.clip_bf.name=两包野火子弹 -item.clip_bolt_action.name=盒装12x74独头弹 -item.clip_cryolator.name=急冻单元箱 -item.clip_defabricator.name=毁灭者能量电池弹药带 -item.clip_emp.name=小包能量电池 -item.clip_euthanasia.name=最后的医疗箱 -item.clip_fatman.name=六个核弹 -item.clip_hp.name=墨水缸 -item.clip_immolator.name=焚烧者燃料箱 -item.clip_jack.name=盒装四联12x70鹿弹 -item.clip_lever_action.name=盒装12x74鹿弹 -item.clip_mirv.name=三合一微型MIRV包 -item.clip_mp.name=小型无发射药机枪子弹盒 -item.clip_mp40.name=9mm冲锋枪子弹盒 -item.clip_osipr.name=AR2 弹盒 -item.clip_revolver.name=盒装.357马格南 -item.clip_revolver_cursed.name=钢子弹弹匣 -item.clip_revolver_gold.name=小盒金子弹 -item.clip_revolver_iron.name=盒装铁子弹 -item.clip_revolver_lead.name=盒装核子弹 -item.clip_revolver_nightmare.name=子弹袋 -item.clip_revolver_nightmare2.name=激光弹药带 -item.clip_revolver_nopip.name=盒装.44子弹 -item.clip_revolver_pip.name=左轮快速装弹器 -item.clip_revolver_schrabidium.name=Sa326弹药盒 -item.clip_rpg.name=火箭弹箱 -item.clip_spark.name=大型电磁子弹 -item.clip_stinger.name=包装毒刺导弹 -item.clip_uboinik.name=盒装12x70鹿弹 -item.clip_uzi.name=32发装.22LR子弹盒 -item.clip_xvl1456.name=大型同位素盒 -item.cmb_axe.name=CMB钢斧 -item.cmb_boots.name=CMB钢靴子 -item.cmb_helmet.name=CMB钢头盔 -item.cmb_hoe.name=CMB钢锄 -item.cmb_legs.name=CMB钢护腿 -item.cmb_pickaxe.name=CMB钢镐 -item.cmb_plate.name=CMB钢胸甲 -item.cmb_shovel.name=CMB钢锹 -item.cmb_sword.name=CMB钢剑 -item.coal_infernal.name=地狱煤炭 -item.cobalt_axe.name=钴斧 -item.cobalt_boots.name=钴靴子 -item.cobalt_decorated_axe.name=镶嵌钴斧 -item.cobalt_decorated_hoe.name=镶嵌钴锄 -item.cobalt_decorated_pickaxe.name=镶嵌钴镐 -item.cobalt_decorated_shovel.name=镶嵌钴锹 -item.cobalt_decorated_sword.name=镶嵌钴剑 -item.cobalt_helmet.name=钴头盔 -item.cobalt_hoe.name=钴锄 -item.cobalt_legs.name=钴护腿 -item.cobalt_pickaxe.name=钴镐 -item.cobalt_plate.name=钴胸甲 -item.cobalt_shovel.name=钴锹 -item.cobalt_sword.name=钴剑 -item.coffee.name=咖啡 -item.coffee_radium.name=加镭咖啡 -item.coil_advanced_alloy.name=超导线圈 -item.coil_advanced_torus.name=超导环形线圈 -item.coil_copper.name=紫铜线圈 -item.coil_copper_torus.name=紫铜环形线圈 -item.coil_gold.name=金线圈 -item.coil_gold_torus.name=金环形线圈 -item.coil_magnetized_tungsten.name=4000K高温超导线圈 -item.coil_tungsten.name=加热线圈 -item.coin_creeper.name=核爆爬行者硬币 -item.coin_maskman.name=面具硬币 -item.coin_radiation.name=辐射硬币 -item.coin_siege.name=围城硬币 -item.coin_ufo.name=UFO硬币 -item.coin_worm.name=机械蠕虫硬币 -item.coke.coal.name=煤焦炭 -item.coke.lignite.name=褐煤焦炭 -item.coke.petroleum.name=石油焦炭 -item.coltan_tool.name=钶钽铁矿指针 -item.combine_scrap.name=CMB钢废料 -item.component_emitter.name=发射器组件 -item.component_limiter.name=稳定器组件 -item.containment_box.name=安全盒 -item.cordite.name=无烟线状火药 -item.cotton_candy.name=放射性棉花糖 -item.crackpipe.name=健康烟壶 -item.crate_caller.name=空投召唤器 -item.crayon.black.name=黑色蜡笔 -item.crayon.blue.name=蓝色蜡笔 -item.crayon.brown.name=棕色蜡笔 -item.crayon.cyan.name=青色蜡笔 -item.crayon.gray.name=灰色蜡笔 -item.crayon.green.name=绿色蜡笔 -item.crayon.lightblue.name=浅蓝色蜡笔 -item.crayon.lime.name=青色蜡笔 -item.crayon.magenta.name=品红蜡笔 -item.crayon.orange.name=橙色蜡笔 -item.crayon.pink.name=粉红蜡笔 -item.crayon.purple.name=紫色蜡笔 -item.crayon.red.name=红色蜡笔 -item.crayon.silver.name=浅灰色蜡笔 -item.crayon.white.name=白色蜡笔 -item.crayon.yellow.name=黄色蜡笔 -item.crowbar.name=Mk.V开箱装置"物理学圣剑" -item.crucible.name=裁决剑 -item.crucible_template.name=坩埚模板 -item.crystal_aluminium.name=铝晶体 -item.crystal_beryllium.name=铍晶体 -item.crystal_charred.name=烧焦的水晶 -item.crystal_charred.desc=优质硅酸盐,轻微灼烧。 -item.crystal_charred.desc.P11=也是一个真正的号角。奇怪吧? -item.crystal_coal.name=煤晶体 -item.crystal_cobalt.name=钴晶体 -item.crystal_copper.name=铜晶体 -item.crystal_cinnebar.name=朱砂晶体 -item.crystal_diamond.name=钻石晶体 -item.crystal_energy.name=能量晶体 -item.crystal_fluorite.name=氟晶体 -item.crystal_gold.name=金晶体 -item.crystal_horn.name=水晶角 -item.crystal_horn.desc=不是真正的号角。 -item.crystal_horn.desc.P11=真正的号角。 -item.crystal_iron.name=铁晶体 -item.crystal_lead.name=铅晶体 -item.crystal_lapis.name=青金石晶体 -item.crystal_lithium.name=锂晶体 -item.crystal_niter.name=硝石晶体 -item.crystal_osmiridium.name=铱锇晶体 -item.crystal_phosphorus.name=磷晶体 -item.crystal_plutonium.name=钚晶体 -item.crystal_rare.name=稀土晶体 -item.crystal_redstone.name=红石晶体 -item.crystal_schrabidium.name=Sa326晶体 -item.crystal_schraranium.name=低丰度Sa326晶体 -item.crystal_starmetal.name=星辉晶体 -item.crystal_sulfur.name=硫晶体 -item.crystal_thorium.name=钍晶体 -item.crystal_titanium.name=钛晶体 -item.crystal_trixite.name=赛瑞克晶体 -item.crystal_tungsten.name=钨晶体 -item.crystal_uranium.name=铀晶体 -item.crystal_xen.name=人造X晶体 -item.crt_display.name=阴极射线管 -item.cube_power.name=电子块 -item.custom_amat.name=自定义核弹-反物质棒 -item.custom_dirty.name=自定义核弹-核废料棒 -item.custom_fall.name=自定义核弹-掉落升级 -item.custom_fall.desc=这就是你一一一直在等待的$使炸弹在激活时下落 -item.custom_hydro.name=自定义核弹-氢棒 -item.custom_kit.name=自定义核弹 套件 -item.custom_nuke.name=自定义核弹-铀棒 -item.custom_schrab.name=自定义核弹-Sa326棒 -item.custom_tnt.name=自定义核弹-炸药 -item.cyclotron_tower.name=回旋加速器塔 -item.debris_concrete.name=碎混凝土 -item.debris_element.name=断裂的锆诺克斯燃料元件 -item.debris_exchanger.name=换热器片 -item.debris_fuel.name=RBMK石墨式反应堆燃料块 -item.debris_graphite.name=热石墨块 -item.debris_metal.name=断裂金属棒 -item.debris_shrapnel.name=走道碎片 -item.definitelyfood.name=完全不脏牌军粮 -item.defuser.name=高科技拆弹装置 -item.defuser_gold.name=黄金剪线钳 -item.demon_core_closed.name=封闭的恶魔核心 -item.demon_core_open.name=打开的恶魔核心 -item.desh_axe.name=工人合金斧 -item.desh_hoe.name=工人合金锄 -item.desh_pickaxe.name=工人合金镐 -item.desh_shovel.name=工人合金锹 -item.desh_sword.name=工人合金剑 -item.designator.name=短程目标指示器 -item.designator_arty_range.name=远程火炮遥控器 -item.designator_manual.name=手动目标指示器 -item.designator_range.name=远程目标指示器 -item.detonator.name=起爆器 -item.detonator_de.name=死亡炸弹 -item.detonator_deadman.name=死亡雷管 -item.detonator_laser.name=激光起爆器 -item.detonator_multi.name=多发起爆器 -item.deuterium_filter.name=氘过滤器 -item.diamond_gavel.name=钻石槌 -item.dieselsuit_boots.name=柴油动力高跟鞋 -item.dieselsuit_helmet.name=柴油动力头戴式环境传感器 -item.dieselsuit_legs.name=柴油动力腿部伺服系统 -item.dieselsuit_plate.name=柴油动力控制器 -item.digamma_diagnostic.name=玩家F-迪伽马辐射自检器 -item.disperser_canister.name=流体雾化手雷: -item.disperser_canister_empty.name=流体雾化手雷 -item.dns_boots.name=DNT双聚中子态素高科技全环境作战服靴子 -item.dns_legs.name=DNT双聚中子态素高科技全环境作战服护腿 -item.dns_helmet.name=DNT双聚中子态素高科技全环境作战服头盔 -item.dns_plate.name=DNT双聚中子态素高科技全环境作战服胸甲 -item.dnt_boots.name=双聚态中子素 靴子 -item.dnt_legs.name=双聚态中子素 护腿 -item.dnt_helmet.name=双聚态中子素 头盔 -item.dnt_plate.name=双聚态中子素 胸甲 -item.door_bunker.name=仓门 -item.door_metal.name=金属门 -item.door_office.name=办公室门 -item.door_red.name=红门 -item.dosimeter.name=剂量计 -item.drax.name=采掘钻 -item.drax_mk2.name=强化型采掘钻 -item.drax_mk3.name=Sa326采掘钻 -item.drillbit_desh.name=Desh钻头 -item.drillbit_desh_diamond.name=Desh钻头(镶钻) -item.drillbit_ferro.name=铀铁合金钻头 -item.drillbit_ferro_diamond.name=铀铁合金钻头(镶钻) -item.drillbit_hss.name=高速钢钻头 -item.drillbit_hss_diamond.name=高速钢钻头(镶钻) -item.drillbit_steel.name=钢钻头 -item.drillbit_steel_diamond.name=钢钻头(镶钻) -item.drillbit_tcalloy.name=锝钢钻头 -item.drillbit_tcalloy_diamond.name=锝钢钻头(镶钻) -item.drill_titanium.name=钛钻头 -item.drone.patrol.name=运输无人机 -item.drone.patrol.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置 -item.drone.patrol_chunkloading.name=区块加载无人机 -item.drone.patrol_chunkloading.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置$加载区块 -item.drone.patrol_express.name=快速无人机 -item.drone.patrol_express.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置 -item.drone.patrol_express_chunkloading.name=区块加载快速无人机 -item.drone.patrol_express_chunkloading.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置$加载区块 -item.drone.request.name=物流无人机 -item.drone.request.desc=用于使物流无人机坞生成物流无人机$生成的物流无人机会跟随物流无人机航路点$完成一次物流任务后会回到无人机坞 -item.drone_linker.name=运输无人机链接器 -item.ducttape.name=胶带 -item.dust.name=灰尘 -item.dust.desc=我讨厌灰尘! -item.dust.desc.P11=又一小撮灰尘! -item.dust_tiny.name=一小撮灰尘 -item.dwarven_pickaxe.name=矮人镐 -item.dynosphere_base.name=空白动力球 -item.dynosphere_desh.name=Desh动力球 -item.dynosphere_desh_charged.name=Desh动力球[带电] -item.dynosphere_dineutronium.name=双聚中子态素动力球 -item.dynosphere_dineutronium_charged.name=双聚中子态素动力球[带电] -item.dynosphere_euphemium.name=Ep动力球 -item.dynosphere_euphemium_charged.name=Ep动力球[带电] -item.dynosphere_schrabidium.name=Sa326动力球 -item.dynosphere_schrabidium_charged.name=Sa326动力球[带电] -item.dysfunctional_reactor.name=失控反应堆 -item.early_explosive_lenses.name=初代炸药透镜阵列 -item.early_explosive_lenses.desc=8个炸药透镜的组装,带有铝合金推进器、硬铝外壳和桥丝雷管。 -item.egg_balefire.name=野火蛋 -item.egg_balefire.desc=什么样的鸟儿才会下带有放射性的蛋? -item.egg_balefire_shard.name=野火蛋碎片 -item.egg_glyphid.name=异虫蛋 -item.elec_axe.name=电锯 -item.elec_pickaxe.name=冲击钻 -item.elec_shovel.name=螺旋钻 -item.elec_sword.name=电棍 -item.energy_core.name=临时能源核心 -item.entanglement_kit.name=纠缠部件 -item.entanglement_kit.desc=传送机制作零件$通过$铍增强型资源扫描仪实现尺寸转换。 -item.envsuit_boots.name=M1TTY环境套装靴子 -item.envsuit_helmet.name=M1TTY环境套装头盔 -item.envsuit_legs.name=M1TTY环境套装护腿 -item.envsuit_plate.name=M1TTY环境套装胸甲 -item.euphemium_boots.name=Ep靴子 -item.euphemium_capacitor.name=Ep电容 -item.euphemium_capacitor.desc=允许被动分散累积的正能量。 -item.euphemium_helmet.name=Ep头盔 -item.euphemium_kit.name=Ep工具箱 -item.euphemium_legs.name=Ep护腿 -item.euphemium_plate.name=Ep胸甲 -item.euphemium_stopper.name=Ep-阻滞者 -item.explosive_lenses.name=炸药透镜阵列 -item.explosive_lenses.desc=8个PBX炸药组装的阵列,带有一个薄的$铝推进器、硬铝外壳和$小型桥丝雷管。 -item.fabsols_vodka.name=Fabsol伏特加 -item.factory_core_advanced.name=高级工厂能源组件 -item.factory_core_titanium.name=工厂能源组件 -item.fallout.name=一堆辐射尘 -item.fau_boots.name=Fau靴子 -item.fau_helmet.name=Fau头盔 -item.fau_legs.name=Fau护腿 -item.fau_plate.name=Fau胸甲 -item.filter_coal.name=活性炭过滤器 -item.fins_big_steel.name=大型钢栅格翼 -item.fins_flat.name=扁钢外壳 -item.fins_quad_titanium.name=小型钛翼 -item.fins_small_steel.name=小型钢栅格翼 -item.fins_tri_steel.name=大型钢翼 -item.five_htp.name=5-羟色胺药丸 -item.five_htp.desc=移除所有迪伽马辐射,并获得10分钟稳定效果 -item.flame_conspiracy.name=阴谋论 -item.flame_conspiracy.desc=钢梁不能熔化喷气燃料! -item.flame_opinion.name=个人观点 -item.flame_opinion.desc=呃,我喜欢... -item.flame_politics.name=政治话题 -item.flame_politics.desc=唐老鸭将会修建一堵墙! -item.flame_pony.name=卡通小马画 -item.flame_pony.desc=黄马胜于蓝马,这是不争的事实! -item.flask_infusion.shield.name=护盾药水 -item.fleija_core.name=F.L.E.I.J.A.铀-235装药 -item.fleija_igniter.name=脉冲点火器 -item.fleija_kit.name=F.L.E.I.J.A. 套件 -item.fleija_propellant.name=Sa326炸药 -item.fluid_barrel_empty.name=空流体桶 -item.fluid_barrel_full.name=流体桶: -item.fluid_barrel_infinite.name=无限流体桶 -item.fluid_duct.name=流体管道: -item.fluid_identifier.name=流体识别码 -item.fluid_identifier.info=流体标识码用于: -item.fluid_identifier.usage0=在流体管道上单击右键,为该管道指定运输的流体。 -item.fluid_identifier.usage1=按住Shift键并流体管道上单击右键以指定相邻管道 -item.fluid_identifier.usage2=最大范围为64格管道。 -item.fluid_identifier_multi.name=多类型流体识别码 -item.fluid_identifier_multi.info=通用流体识别码: -item.fluid_identifier_multi.info2=次要类型: -item.fluid_tank_empty.name=空通用流体罐 -item.fluid_tank_full.name=通用流体罐: -item.fluid_tank_lead_empty.name=空危险品罐 -item.fluid_tank_lead_full.name=危险品罐: -item.fluorite.name=氟石粉 -item.flywheel_beryllium.name=铍制飞轮 -item.fmn.name=氟硝西泮片 -item.fmn.desc=移除2000mDRX以上的所有迪伽马辐射 -item.folly_bullet.name=128mm星辉弹头 -item.folly_bullet_du.name=128mm贫铀弹头 -item.folly_bullet_nuclear.name=128mm核弹头 -item.folly_shell.name=银弹壳 -item.fooditem.name=食物 -item.fragment_actinium.name=锕碎片 -item.fragment_boron.name=硼碎片 -item.fragment_cerium.name=铈碎片 -item.fragment_cobalt.name=钴碎片 -item.fragment_coltan.name=钶钽铁矿碎片 -item.fragment_lanthanium.name=镧碎片 -item.fragment_meteorite.name=陨石碎片 -item.fragment_neodymium.name=钕碎片 -item.fragment_niobium.name=铌碎片 -item.fuel_additive.antiknock.name=四乙基铅抗爆剂 -item.fuel_additive.deicer.name=除冰剂 -item.fuel_tank_large.name=大型燃料罐 -item.fuel_tank_medium.name=中型燃料罐 -item.fuel_tank_small.name=小型燃料罐 -item.fuse.name=保险丝 -item.fusion_core.name=聚变能源核心 -item.fusion_core_infinite.name=无限能源核心 -item.fusion_shield_chlorophyte.name=叶绿金属聚变反应堆覆层 -item.fusion_shield_desh.name=Desh聚变反应堆覆层 -item.fusion_shield_tungsten.name=钨聚变反应堆覆层 -item.fusion_shield_vaporwave.name=蒸汽波反应堆覆层 -item.gadget_core.name=钚核心 -item.gadget_explosive.name=炸药 -item.gadget_kit.name=小玩意 套件 -item.gadget_wireing.name=线路 -item.gas_biogas.name=沼气罐 -item.gas_empty.name=空气罐 -item.gas_full.name=气体罐: -item.gas_lpg.name=液化石油气罐 -item.gas_mask.name=防毒面具 -item.gas_mask_filter.name=防毒面具过滤器 -item.gas_mask_filter_combo.name=防毒面具组合式过滤器 -item.gas_mask_filter_mono.name=催化性面罩过滤器 -item.gas_mask_filter_piss.name=先进的简易防毒面具过滤器 -item.gas_mask_filter_rag.name=临时防毒面具过滤器 -item.gas_mask_m65.name=M65-Z防毒面具 -item.gas_mask_mono.name=半面罩防毒面具 -item.gas_mask_olde.name=皮革防毒面具 -item.gas_petroleum.name=石油气罐 -item.gas_tester.name=气体传感器 -item.gear_large.name=大型齿轮 -item.gear_large_steel.name=大型钢齿轮 -item.geiger_counter.name=手持盖革计数器 -item.gem_alexandrite.name=亚历山大变石 -item.gem_rad.name=放射性宝石 -item.gem_sodalite.name=方钠石 -item.gem_tantalium.name=钽晶体 -item.gem_tantalium.desc=“钽” -item.gem_tantalium.desc.P11=又名钽。 -item.gem_volcanic.name=火山宝石 -item.generator_front.name=发电机前部 -item.generator_steel.name=发电机主体 -item.glitch.name=故障 -item.glowing_stew.name=发光真菌煲 -item.glyphid_meat.name=异虫肉 -item.glyphid_meat_grilled.name=熟异虫肉 -item.glyphid_gland.name=囊腺 -item.glyphid_gland_empty.name=异虫腺体 -item.goggles.name=护目镜 -item.grenade_aschrab.name=可抛反Sa326 -item.grenade_black_hole.name=黑洞手榴弹 -item.grenade_breach.name=破甲手榴弹 -item.grenade_burst.name=挖掘手榴弹 -item.grenate_cats.name=猫猫手榴弹 -item.grenade_cloud.name=一罐云 -item.grenade_cluster.name=集束手榴弹 -item.grenade_electric.name=闪电炸弹 -item.grenade_fire.name=燃烧破片手榴弹 -item.grenade_flare.name=信号弹 -item.grenade_frag.name=破片手榴弹 -item.grenade_gas.name=毒气手榴弹 -item.grenade_gascan.name=可抛油桶 -item.grenade_generic.name=手榴弹 -item.grenade_if_bouncy.name=IF-弹性手榴弹 -item.grenade_if_brimstone.name=IF-可抛硫磺矿 -item.grenade_if_concussion.name=IF-震荡手榴弹 -item.grenade_if_generic.name=IF-手榴弹 -item.grenade_if_he.name=IF-HE手榴弹 -item.grenade_if_hopwire.name=IF-旋涡热线 -item.grenade_if_impact.name=IF-冲击手榴弹 -item.grenade_if_incendiary.name=IF-燃烧手榴弹 -item.grenade_if_mystery.name=IF-M-手榴弹 -item.grenade_if_null.name=IF-清除手榴弹 -item.grenade_if_spark.name=IF-S-手榴弹 -item.grenade_if_sticky.name=IF-粘性手榴弹 -item.grenade_if_toxic.name=IF-毒物手榴弹 -item.grenade_kit.name=手榴弹 套件 -item.grenade_kyiv.name=基辅特供 -item.grenade_lemon.name=可燃柠檬 -item.grenade_mirv.name=MIRV型破片手榴弹 -item.grenade_mk2.name=Mk2手榴弹“菠萝大使” -item.grenade_nuclear.name=核子手榴弹 -item.grenade_nuke.name=MkVI钻地手榴弹 -item.grenade_pink_cloud.name=一罐粉雾 -item.grenade_plasma.name=等离子手榴弹 -item.grenade_poison.name=剧毒手榴弹 -item.grenade_pulse.name=脉冲手榴弹 -item.grenade_schrabidium.name=Sa326手榴弹 -item.grenade_shrapnel.name=榴霰弹手榴弹 -item.grenade_smart.name=智能手榴弹 -item.grenade_strong.name=增强型手榴弹 -item.grenade_tau.name=陶子手榴弹 -item.grenade_zomg.name=负能量湮灭手榴弹 -item.gun_ar15.name=阿玛莱特AR15式5.56mm自动步枪 -item.gun_avenger.name=CZ57复仇者机枪 -item.gun_b92.name=§9B92能量手枪§r -item.gun_b92_ammo.name=§9B92能量单元§r -item.gun_b93.name=§cB93能量手枪§r -item.gun_benelli.name=伯奈利自动霰弹枪(Drum Mod) -item.gun_bf.name=BEL -item.gun_bf_ammo.name=Mk.V小型AMAT-炮弹 –野火型 -item.gun_bio_revolver.name=Atlas -item.gun_bolt_action.name=栓动式霰弹枪[原版] -item.gun_bolt_action_ammo.name=12x74 独头弹 -item.gun_bolt_action_green.name=栓动式霰弹枪[绿色] -item.gun_bolt_action_saturnite.name=土星来复枪 -item.gun_bolter.name=爆弹枪 -item.gun_bolter_digamma.name=迪伽马爆弹枪 -item.gun_calamity.name=希特勒的电锯 -item.gun_calamity_ammo.name=.50BMG子弹 -item.gun_calamity_dual.name=马鞍枪 -item.gun_chemthrower.name=化学喷射器 -item.gun_coilgun.name=线圈枪 -item.gun_congolake.name=刚果湖 -item.gun_cryocannon.name=低温炮 -item.gun_cryolator.name=冻结者 -item.gun_cryolator_ammo.name=急冻单元 -item.gun_dampfmaschine.name=绝对不是开玩笑的武器 -item.gun_darter.name=飞镖枪 -item.gun_deagle.name=大手枪 -item.gun_defabricator.name=毁灭者 -item.gun_defabricator_ammo.name=毁灭者能量电池 -item.gun_detonator.name=激光引爆器 -item.gun_emp.name=EMP射线 -item.gun_emp_ammo.name=能量电池 -item.gun_euthanasia.name=安乐死 -item.gun_euthanasia_ammo.name=注射器 -item.gun_fatman.name=M42核弹发射器 "胖子" -item.gun_fatman_ammo.name=迷你核弹 -item.gun_fireext.name=灭火器 -item.gun_flamer.name="黄玉先生"喷射器 -item.gun_flechette.name=弗莱彻突击步枪 -item.gun_folly.name=Digamma原型"愚蠢" -item.gun_glass_cannon.name=玻璃大炮 -item.gun_hk69.name=榴弹手枪 -item.gun_hp.name=HPP射线炮 -item.gun_hp_ammo.name=墨盒 -item.gun_immolator.name=焚烧者 -item.gun_immolator_ammo.name=焚烧者燃料 -item.gun_jack.name=汽锤 -item.gun_jack_ammo.name=四联散弹子弹 -item.gun_karl.name=卡尔-古斯塔夫M3式84mm火箭筒 -item.gun_kit_1.name=枪械润滑油 -item.gun_kit_2.name=枪械修理包 -item.gun_ks23.name=KS-23霰弹枪 -item.gun_lacunae.name=CZ33亚巴顿 -item.gun_lacunae_ammo.name=5mm子弹 -item.gun_lever_action.name=马腿杠杆式霰弹枪[原版] -item.gun_lever_action_ammo.name=12x74 鹿弹 -item.gun_lever_action_dark.name=马腿杠杆式霰弹枪[黑暗] -item.gun_lever_action_sonata.name=自杀霰弹 -item.gun_lever_action_sonata_2.name=§cSonata的麦克风§r -item.gun_lunatic_marksman.name=Lunatic狙击步枪 -item.gun_m2.name=勃朗宁M2HB型重机枪 -item.gun_minigun.name=CZ53机枪 -item.gun_mirv.name=M42核弹发射器 "试验型MIRV" -item.gun_mirv_ammo.name=八倍MIRV -item.gun_moist_nugget.name=莫辛纳甘[迫真] -item.gun_mp.name=和平主义的机枪 -item.gun_mp40.name=MP40冲锋枪 -item.gun_mp40_ammo.name=冲锋枪子弹 -item.gun_pm_ammo.name=小型无发射药机枪子弹 -item.gun_mymy.name=Nietes软弹枪 -item.gun_osipr.name=标准型脉冲机枪 -item.gun_osipr_ammo.name=暗能量脉冲弹 -item.gun_osipr_ammo2.name=融合球 -item.gun_panzerschreck.name=战车噩梦 -item.gun_proto.name=M42核弹发射器 "原始MIRV" -item.gun_quadro.name=四喜丸子 -item.gun_remington.name=バイデン ブラスト [拜登冲击波] -item.gun_revolver.name=强化左轮手枪 -item.gun_revolver_ammo.name=铅左轮子弹 -item.gun_revolver_blackjack.name=黑杰克五发装左轮枪 -item.gun_revolver_cursed.name=诅咒手枪 -item.gun_revolver_cursed_ammo.name=钢左轮子弹 -item.gun_revolver_gold.name=黄金左轮手枪 -item.gun_revolver_gold_ammo.name=金左轮子弹 -item.gun_revolver_inverted.name=自杀左轮手枪 -item.gun_revolver_iron.name=简易左轮手枪 -item.gun_revolver_iron_ammo.name=铁左轮子弹 -item.gun_revolver_lead.name=核子左轮手枪 -item.gun_revolver_lead_ammo.name=玻璃左轮子弹 -item.gun_revolver_nightmare.name=梦魇左轮手枪[原版] -item.gun_revolver_nightmare2.name=梦魇左轮手枪[黑暗] -item.gun_revolver_nightmare2_ammo.name=激光子弹 -item.gun_revolver_nightmare_ammo.name=噩梦子弹 -item.gun_revolver_nopip.name=Novac -item.gun_revolver_nopip_ammo.name=.44马格南子弹 -item.gun_revolver_pip.name=小麦金塔 -item.gun_revolver_pip_ammo.name=污染子弹 -item.gun_revolver_red.name=红钥匙左轮手枪 -item.gun_revolver_saturnite.name=土星手枪 -item.gun_revolver_schrabidium.name=Sa326左轮手枪 -item.gun_revolver_schrabidium_ammo.name=Sa326左轮子弹 -item.gun_revolver_silver.name=银质左轮手枪 -item.gun_rpg.name=卡尔-古斯塔夫M4无后座力炮 -item.gun_rpg_ammo.name=火箭弹 -item.gun_sauer.name=斯坦-索尔的猎枪 -item.gun_skystinger.name=毒刺-The One Sky -item.gun_spark.name=Spark Plug -item.gun_spark_ammo.name=电磁弹 -item.gun_spas12.name=SPAS-12霰弹枪 -item.gun_stinger.name=FIM-92毒刺导弹 -item.gun_stinger_ammo.name=毒刺导弹 -item.gun_super_shotgun.name="超级"猎枪 -item.gun_super_shotgun.desc=超级烂! -item.gun_supershotgun.name=超级猎枪 -item.gun_thompson.name=汤姆森冲锋枪 -item.gun_uac_pistol.name=UAC .45手枪 -item.gun_uboinik.name=Uboinik -item.gun_uboinik_ammo.name=12x70 鹿弹 -item.gun_uzi.name=Uzi冲锋枪 -item.gun_uzi_ammo.name=.22LR子弹 -item.gun_uzi_saturnite.name=土星Uzi冲锋枪 -item.gun_uzi_saturnite_silencer.name=带消音器的土星Uzi冲锋枪 -item.gun_uzi_silencer.name=带消音器的Uzi冲锋枪 -item.gun_xvl1456.name=XVL1456陶子加农炮原型机 -item.gun_xvl1456_ammo.name=贫化铀235子弹 -item.gun_zomg.name=奇点能湮灭射线“ZOMG炮” -item.hand_drill.name=手钻 -item.hand_drill_desh.name=Desh手钻 -item.hazmat_boots.name=防辐射靴 -item.hazmat_boots_grey.name=高性能防辐射靴 -item.hazmat_boots_red.name=高级防辐射靴 -item.hazmat_cloth.name=防辐射布 -item.hazmat_cloth_grey.name=铅防辐射布 -item.hazmat_cloth_red.name=高级防辐射布 -item.hazmat_grey_kit.name=高性能防护套装 -item.hazmat_helmet.name=防辐射头盔 -item.hazmat_helmet_grey.name=高性能防辐射头盔 -item.hazmat_helmet_red.name=高级防辐射头盔 -item.hazmat_kit.name=防护套装 -item.hazmat_legs.name=防辐射护腿 -item.hazmat_legs_grey.name=高性能防辐射护腿 -item.hazmat_legs_red.name=高级防辐射护腿 -item.hazmat_paa_boots.name=PaA战斗防辐射套装 靴子 -item.hazmat_paa_helmet.name=PaA战斗防辐射套装 头盔 -item.hazmat_paa_legs.name=PaA战斗防辐射套装 护腿 -item.hazmat_paa_plate.name=PaA战斗防辐射套装 胸甲 -item.hazmat_plate.name=防辐射胸甲 -item.hazmat_plate_grey.name=高性能防辐射胸甲 -item.hazmat_plate_red.name=高级防辐射胸甲 -item.hazmat_red_kit.name=高级防护套装 -item.heart_booster.name=心之增强器 -item.heart_container.name=心之容器 -item.heart_fab.name=心脏抗原结合器 -item.heart_piece.name=心之碎片 -item.heavy_component.name=重型%s组件 -item.hev_battery.name=套装电池 -item.hev_boots.name=HEV Mk.IV 靴子 -item.hev_plate.name=HEV Mk.IV 胸甲 -item.hev_helmet.name=HEV Mk.IV 头盔 -item.hev_legs.name=HEV Mk.IV 护腿 -item.holotape_damaged.name=损坏的全息卡带 -item.holotape_image.name=全息卡带 -item.horseshoe_magnet.name=马蹄形磁铁 -item.hull_big_aluminium.name=大型铝壳 -item.hull_big_steel.name=大型钢壳 -item.hull_big_titanium.name=大型钛壳 -item.hull_small_aluminium.name=小型铝壳 -item.hull_small_aluminium.desc=可插入钻孔石墨中 -item.hull_small_steel.name=小型钢壳 -item.icf_pellet.name=ICF燃料靶丸 -item.icf_pellet_depleted.name=枯竭ICF燃料靶丸 -item.icf_pellet_empty.name=空ICF燃料靶丸 -item.igniter.name=点火器 -item.igniter.desc=(鼠标右键点击原型)$这是一个绿色金属手柄,带有$亮红色按钮和一个小盖子$在底部,缩写N.E.刻着美元。不管N.E.是谁,他对绿色的色调很有品味。 -item.industrial_magnet.name=工业磁铁 -item.inf_antimatter.name=无限反物质罐 -item.inf_antischrabidium.name=无限反Sa326罐 -item.inf_coolant.name=无限冷却液罐 -item.inf_deuterium.name=无限氘罐 -item.inf_diesel.name=无限柴油罐 -item.inf_sulfur.name=无限硫磺罐 -item.inf_tritium.name=无限氚罐 -item.inf_water.name=无限水罐 -item.inf_water_mk2.name=重型无限水罐 -item.ingot_actinium.name=半稳定锕锭 -item.ingot_advanced_alloy.name=高级合金锭 -item.ingot_aluminium.name=铝锭 -item.ingot_am_mix.name=反应堆级镅锭 -item.ingot_am241.name=镅-241锭 -item.ingot_am242.name=镅-242锭 -item.ingot_americium_fuel.name=镅燃料锭 -item.ingot_arsenic.name=砷锭 -item.ingot_arsenic_bronze.name=砷青铜锭 -item.ingot_asbestos.name=石棉板 -item.ingot_asbestos.desc=§o\“充满了生命、自我怀疑和石棉。这是空气带来的。\”§r -item.ingot_au198.name=金-198锭 -item.ingot_australium.name=奥斯锭 -item.ingot_bakelite.name=电木锭 -item.ingot_beryllium.name=铍锭 -item.ingot_biorubber.name=乳胶锭 -item.ingot_bismuth.name=铋锭 -item.ingot_bismuth_bronze.name=铋青铜锭 -item.ingot_boron.name=硼锭 -item.ingot_bscco.name=BSCCO锭 -item.ingot_c4.name=一块C-4 -item.ingot_cadmium.name=镉锭 -item.ingot_calcium.name=钙锭 -item.ingot_cdalloy.name=镉钢锭 -item.ingot_cft.name=晶化富勒烯 -item.ingot_chainsteel.name=重链钢 -item.ingot_co60.name=钴-60锭 -item.ingot_cobalt.name=钴锭 -item.ingot_combine_steel.name=CMB钢锭 -item.ingot_combine_steel.desc=*在此处插入民事保护参考* -item.ingot_copper.name=工业级铜锭 -item.ingot_daffergon.name=达夫贡锭 -item.ingot_desh.name=Desh锭 -item.ingot_dineutronium.name=双聚中子态素锭 -item.ingot_dura_steel.name=高速钢锭 -item.ingot_electronium.name=电素锭 -item.ingot_euphemium.name=Ep锭 -item.ingot_euphemium.desc=一个非常特殊但又奇怪的元素。 -item.ingot_ferrouranium.name=铀铁合金锭 -item.ingot_fiberglass.name=玻璃纤维 -item.ingot_fiberglass.desc=纤维含量高,玻璃含量高。身体需要的一切。 -item.ingot_firebrick.name=耐火砖 -item.ingot_gh336.name=Gh336锭 -item.ingot_gh336.desc=钅喜的同事。 -item.ingot_graphite.name=石墨锭 -item.ingot_hes.name=高浓度Sa326燃料锭 -item.ingot_lanthanium.name=半稳定镧锭 -item.ingot_lanthanium.desc=“镧” -item.ingot_lanthanium.desc.P11=实际上就是镧,无论怎么说。 -item.ingot_lead.name=铅锭 -item.ingot_les.name=低浓度Sa326燃料锭 -item.ingot_magnetized_tungsten.name=磁化钨锭 -item.ingot_meteorite.name=陨石锭 -item.ingot_meteorite_forged.name=锻造陨石锭 -item.ingot_mox_fuel.name=MOX燃料锭 -item.ingot_mud.name=固化毒泥浆砖 -item.ingot_neptunium.name=镎锭 -item.ingot_neptunium.desc=那是我最喜欢的! -item.ingot_neptunium.desc.P11=哇,吓人! -item.ingot_neptunium_fuel.name=镎燃料锭 -item.ingot_niobium.name=铌锭 -item.ingot_osmiridium.name=铱锇锭 -item.ingot_pb209.name=铅-209锭 -item.ingot_pc.name=硬质塑料锭 -item.ingot_pet.name=铝金属化PET锭 -item.ingot_phosphorus.name=白磷锭 -item.ingot_plutonium.name=钚锭 -item.ingot_plutonium_fuel.name=钚燃料锭 -item.ingot_polonium.name=钋锭 -item.ingot_polymer.name=聚合物锭 -item.ingot_pu_mix.name=反应堆级钚锭 -item.ingot_pu238.name=钚-238锭 -item.ingot_pu239.name=钚-239锭 -item.ingot_pu240.name=钚-240锭 -item.ingot_pu241.name=钚-241锭 -item.ingot_pvc.name=聚氯乙烯锭(PVC) -item.ingot_ra226.name=镭-226锭 -item.ingot_red_copper.name=紫铜锭 -item.ingot_reiium.name=雷恩锭 -item.ingot_rubber.name=橡胶锭 -item.ingot_saturnite.name=土星锭 -item.ingot_schrabidate.name=Sa酸铁锭 -item.ingot_schrabidium.name=Sa326锭 -item.ingot_schrabidium_fuel.name=Sa326燃料锭 -item.ingot_schraranium.name=低丰度Sa326锭 -item.ingot_schraranium.desc=在Sa326嬗变器中由铀制成 -item.ingot_semtex.name=塞姆汀塑胶炸药块 -item.ingot_silicon.name=硅晶 -item.ingot_smore.name=S'more 锭 -item.ingot_solinium.name=Sa327锭 -item.ingot_sr90.name=锶-90锭 -item.ingot_starmetal.name=§9星辉锭§r -item.ingot_steel.name=钢锭 -item.ingot_steel_dusted.name=粉末钢锭 -item.ingot_tantalium.name=钽锭 -item.ingot_tantalium.desc=“钽” -item.ingot_tantalium.desc.P11=又名钽。 -item.ingot_tcalloy.name=锝-钢合金锭 -item.ingot_technetium.name=锝-99锭 -item.ingot_th232.name=钍-232锭 -item.ingot_thorium_fuel.name=钍燃料锭 -item.ingot_titanium.name=钛锭 -item.ingot_tungsten.name=钨锭 -item.ingot_u233.name=铀-233锭 -item.ingot_u235.name=铀-235锭 -item.ingot_u238.name=铀-238锭 -item.ingot_u238m2.name=亚稳铀238-2锭 -item.ingot_unobtainium.name=难得素锭 -item.ingot_uranium.name=铀锭 -item.ingot_uranium_fuel.name=铀燃料锭 -item.ingot_verticium.name=韦德赛锭 -item.ingot_weidanium.name=魏丹锭 -item.ingot_zirconium.name=锆块 -item.injector_5htp.name=5-HTP自动药物注射器 -item.injector_knife.name=8英寸刀片自动药物注射器 -item.ink.name=林 墨水 -item.insert_doxium.name=掺砷Doxium插板 -item.insert_du.name=贫铀插板 -item.insert_era.name=反应装甲插板 -item.insert_esapi.name=ESAPI插板 -item.insert_ghiorsium.name=Gh插板 -item.insert_kevlar.name=凯夫拉插板 -item.insert_sapi.name=SAPI插板 -item.insert_polonium.name=钋插板 -item.insert_steel.name=重型钢插板 -item.insert_xsapi.name=XSAPI插板 -item.insert_yharonite.name=犽戎龙素插板 -item.item_secret.canister.name=SB-26成分 -item.item_secret.controller.name=专用控制单元 -item.iv_blood.name=血袋 -item.iv_empty.name=静脉输液袋 -item.iv_xp.name=经验包 -item.iv_xp_empty.name=空的经验包 -item.jackt.name=时尚防弹夹克 -item.jackt2.name=时尚防弹夹克2:东京漂移 -item.jetpack_boost.name=弹跳背包 -item.jetpack_break.name=缓降背包 -item.jetpack_fly.name=喷气背包 -item.jetpack_tank.name=喷气背包备用燃料罐 -item.jetpack_vector.name=矢量喷气背包 -item.journal_bj.name=被威士忌浸透的笔记本 -item.journal_pip.name=生存主义者日记 -item.journal_silver.name=承包商注释 -item.key.name=钥匙 -item.key_fake.name=伪造钥匙 -item.key_kit.name=钥匙仿制套件 -item.key_red.name=红色钥匙 -item.key_red.desc=探索另一边。 -item.key_red.desc.P11=§4e§r -item.key_red_cracked.name=破碎的钥匙 -item.key_red_cracked.desc=??? -item.key_red.key_red_cracked.P11=§4???§r -item.kit_toolbox.name=工具箱 -item.kit_toolbox_empty.name=空工具箱 -item.laser_crystal_bismuth.desc=铋-钐-铀-钍晶体基质 -item.laser_crystal_bismuth.name=铋-钐-铀-钍激光晶体 -item.laser_crystal_cmb.desc=反Sa326被镶嵌在CMB-Sa326合金晶格 -item.laser_crystal_cmb.name=CMB-Sa326反物质激光晶体 -item.laser_crystal_co2.desc=二氧化碳被包裹在结晶的Desh中 -item.laser_crystal_co2.name=CO2-Desh激光晶体 -item.laser_crystal_digamma.name=Digamma迪伽马激光晶体 -item.laser_crystal_dnt.desc=双聚态中子-Spark费米子超晶体 -item.laser_crystal_dnt.name=Spark激光晶体 -item.launch_code.name=发射井发射代码 -item.launch_code_piece.name=发射井发射代码碎片 -item.launch_key.name=发射井发射钥匙 -item.lead_gavel.name=铅槌 -item.lemon.name="柠檬" -item.letter.name=快捷邮件 -item.levitation_unit.name=重力控制器 -item.lignite.name=褐煤 -item.limiter.name=发电机限制器 -item.linker.name=链接器 -item.liquidator_boots.name=核废土清道夫套装靴子 -item.liquidator_helmet.name=核废土清道夫套装头盔 -item.liquidator_legs.name=核废土清道夫套装护腿 -item.liquidator_plate.name=核废土清道夫套装胸甲 -item.lithium.name=锂锭 -item.lodestone.name=磁石 -item.loop_stew.name=程序猿专属早餐 -item.loops.name=五彩麦圈 -item.loot_10.name=10号导弹战利箱 -item.loot_15.name=15号导弹战利箱 -item.loot_misc.name=普通导弹战利箱 -item.magnet_circular.name=扁磁铁 -item.magnet_dee.name=D型磁铁 -item.magnetron.name=磁控管 -item.man_core.name=钚核心 -item.man_explosive.name=炸药 -item.man_igniter.name=点火器 -item.man_kit.name=胖子 套件 -item.marshmallow.name=穿在木棍上的棉花糖 -item.mask_of_infamy.name=耻辱面具 -item.mask_piss.name=战壕面具 -item.mask_rag.name=粗糙防护面罩 -item.matchstick.name=火柴 -item.mech_key.name=大号银钥匙 -item.mech_key.desc=它充满力量。 -item.mechanism_launcher_1.name=发射机构 -item.mechanism_launcher_2.name=先进发射机构 -item.mechanism_revolver_1.name=转轮机构 -item.mechanism_revolver_2.name=先进转轮机构 -item.mechanism_rifle_1.name=步枪机构 -item.mechanism_rifle_2.name=先进步枪机构 -item.mechanism_special.name=高科技武器机构 -item.med_bag.name=医疗包 -item.med_ipecac.name=吐根酊催吐剂 -item.med_ptsd.name=PTSD治疗药物 -item.med_schiziphrenia.name=抗精神分裂症药物 -item.medal_liquidator.name=核废土清道夫勋章 -item.meltdown_tool.name=达洛夫快速熔毁装置 -item.memespoon.name=§ee花园园丁 -item.memory.name=item.null.name -item.mese_gavel.name=Mese槌 -item.mese_axe.name=Mese斧 -item.mese_pickaxe.name=Mese镐 -item.meteor_charm.name=陨石项链 -item.meteor_remote.name=陨石召唤器 -item.meteorite_sword.name=陨石剑 -item.meteorite_sword_seared.name=陨石剑(烧焦) -item.meteorite_sword_reforged.name=陨石剑(重铸) -item.meteorite_sword_hardened.name=陨石剑(硬化) -item.meteorite_sword_alloyed.name=陨石剑(合金) -item.meteorite_sword_machined.name=陨石剑(机械加工) -item.meteorite_sword_treated.name=陨石剑(精制) -item.meteorite_sword_etched.name=陨石剑(刻蚀) -item.meteorite_sword_bred.name=陨石剑(增殖) -item.meteorite_sword_irradiated.name=陨石剑(辐照) -item.meteorite_sword_fused.name=陨石剑(熔融) -item.meteorite_sword_baleful.name=陨石剑(凶恶) -item.mike_cooling_unit.name=氘冷却装置 -item.mike_core.name=铀涂层氘罐 -item.mike_deut.name=氘罐 -item.mike_kit.name=常春藤麦克 套件 -item.mirror_tool.name=定日镜调整工具 -item.mirror_tool.linked=设置对齐位置! -item.mirror_tool.desc=右键单击“太阳能锅炉”以记忆位置 $再单击“定日镜”可将其转向太阳能锅炉 -item.missile_anti_ballistic.name=反弹道导弹 -item.missile_assembly.name=小型导弹[待装配] -item.missile_bhole.name=黑洞导弹 -item.missile_burst.name=洲际导弹 -item.missile_buster.name=掩体破坏弹 -item.missile_buster_strong.name=强化型掩体破坏弹 -item.missile_carrier.name=HTR-01运载火箭 -item.missile_cluster.name=集束导弹 -item.missile_cluster_strong.name=强化型集束导弹 -item.missile_custom.name=定制导弹 -item.missile_decoy.name=诱饵弹 -item.missile_doomsday.name=末日导弹 -item.missile_doomsday_rusted.name=损坏的末日导弹 -item.missile_drill.name=掩体裂解者 -item.missile_emp.name=EMP导弹 -item.missile_emp_strong.name=强化型EMP导弹 -item.missile_endo.name=吸热导弹 -item.missile_exo.name=放热导弹 -item.missile_generic.name=高爆导弹 -item.missile_incendiary.name=燃烧导弹 -item.missile_incendiary_strong.name=强化型燃烧导弹 -item.missile_inferno.name=Mk.II G.R.N.地狱导弹 -item.missile_kit.name=导弹工具箱 -item.missile_micro.name=战术核导弹 -item.missile_nuclear.name=核导弹 -item.missile_nuclear_cluster.name=热核导弹 -item.missile_rain.name=炸弹雨 -item.missile_schrabidium.name=Sa326导弹 -item.missile_shuttle.name=万金罗宾航天飞机 -item.missile_skin_camo.name=导弹外壳:迷彩 -item.missile_skin_color.desc=我再也找不到我的导弹了! -item.missile_skin_desert.name=导弹外壳:沙漠迷彩 -item.missile_skin_desert.desc=看起来像沙子,尝起来像金属。 -item.missile_skin_flames.name=导弹外壳:火焰 -item.missile_skin_flames.desc=不同凡响的! -item.missile_skin_manly_pink.name=导弹外壳:猛男粉 -item.missile_skin_manly_pink.desc=粉色,最有男子气概的颜色。 -item.missile_skin_metal.name=导弹外壳:全金属外壳 -item.missile_skin_metal.desc=金属板和金属螺栓,用金属加固。 -item.missile_skin_orange_insulation.name=导弹外壳:橙色绝缘 -item.missile_skin_orange_insulation.desc=不是橙汁瓶$不要试图喝里面的东西。 -item.missile_skin_sleek.name=导弹外壳:IF-R&D -item.missile_skin_sleek.desc=V字形很酷! -item.missile_skin_soviet_glory.name=导弹外壳:苏联荣耀 -item.missile_skin_soviet_glory.desc=услуга перевода недоступна -item.missile_skin_soviet_stank.name=导弹外壳:苏维埃不朽 -item.missile_skin_soviet_stank.desc=这个真的很有60年代的味道。 -item.missile_soyuz.name=联盟-FG运载火箭 -item.missile_soyuz_lander.name=联盟号轨道舱 -item.missile_soyuz_lander.desc=劣质着陆器! -item.missile_stealth.name=隐身导弹 -item.missile_strong.name=强化型高爆导弹 -item.missile_taint.name=污染导弹 -item.missile_volcano.name=构造导弹 -item.missile_volcano.desc=利用核爆的威力,我们可以召唤一座火山! -item.mold_base.name=毛坯铸造模具 -item.mold.name=铸造模具 -item.morning_glory.name=牵牛花 -item.motor.name=马达 -item.motor_bismuth.name=铋马达 -item.motor_desh.name=Desh马达 -item.mp_c_1.name=1级导弹制导芯片 -item.mp_c_2.name=2级导弹制导芯片 -item.mp_c_3.name=3级导弹制导芯片 -item.mp_c_4.name=4级导弹制导芯片 -item.mp_c_5.name=5级导弹制导芯片 -item.mp_fuselage_10_15_balefire.name=10/15号弹体[野火燃料] -item.mp_fuselage_10_15_hydrogen.name=10/15号弹体[液氢] -item.mp_fuselage_10_15_kerosene.name=10/15号弹体[煤油] -item.mp_fuselage_10_15_solid.name=10/15号弹体[固体燃料] -item.mp_fuselage_10_kerosene.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_camo.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_desert.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_flames.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_insulation.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_metal.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_sky.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_sleek.name=10号弹体[煤油] -item.mp_fuselage_10_kerosene_taint.name=10号弹体[煤油] -item.mp_fuselage_10_long_kerosene.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_camo.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_dash.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_desert.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_flames.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_insulation.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_metal.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_sky.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_sleek.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_taint.name=10号长弹体[煤油] -item.mp_fuselage_10_long_kerosene_vap.name=10号长弹体[煤油] -item.mp_fuselage_10_long_solid.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_bullet.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_flames.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_insulation.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_silvermoonlight.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_sleek.name=10号长弹体[固体燃料] -item.mp_fuselage_10_long_solid_soviet_glory.name=10号长弹体[固体燃料] -item.mp_fuselage_10_solid.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_battery.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_cathedral.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_duracell.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_flames.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_insulation.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_moonlit.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_sleek.name=10号弹体[固体燃料] -item.mp_fuselage_10_solid_soviet_glory.name=10号弹体[固体燃料] -item.mp_fuselage_10_xenon.name=10号弹体[氙] -item.mp_fuselage_10_xenon_bhole.name=10号弹体[氙] -item.mp_fuselage_15_20_kerosene.name=15/20号弹体[煤油] -item.mp_fuselage_15_20_kerosene_magnusson.name=15/20号弹体[煤油] -item.mp_fuselage_15_20_solid.name=15/20号弹体[固体燃料] -item.mp_fuselage_15_balefire.name=15号弹体[野火燃料] -item.mp_fuselage_15_hydrogen.name=15号弹体[液氢] -item.mp_fuselage_15_hydrogen_cathedral.name=15号弹体[液氢] -item.mp_fuselage_15_kerosene.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_blackjack.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_camo.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_decorated.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_desert.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_insulation.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_lambda.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_metal.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_minuteman.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_pip.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_polite.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_sky.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_steampunk.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_taint.name=15号弹体[煤油] -item.mp_fuselage_15_kerosene_yuck.name=15号弹体[煤油] -item.mp_fuselage_15_solid.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_desh.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_faust.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_insulation.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_mimi.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_panorama.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_roses.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_silvermoonlight.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_snowy.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_soviet_glory.name=15号弹体[固体燃料] -item.mp_fuselage_15_solid_soviet_stank.name=15号弹体[固体燃料] -item.mp_stability_10_cruise.name=10号巡航翼 -item.mp_stability_10_flat.name=10号水平翼 -item.mp_stability_10_space.name=10号航天翼 -item.mp_stability_15_flat.name=15号水平翼 -item.mp_stability_15_soyuz.name=15号尖翼 -item.mp_stability_15_thin.name=15号薄翼 -item.mp_thruster_10_kerosene.name=10号液体燃料推进器 -item.mp_thruster_10_solid.name=10号固体燃料推进器 -item.mp_thruster_10_xenon.name=10号离子推进器 -item.mp_thruster_15_balefire.name=15号带核预热器的野火燃料推进器 -item.mp_thruster_15_balefire_large.name=15号带核预热器的野火燃料推进器[重型喷管] -item.mp_thruster_15_balefire_large_rad.name=15号带核预热器的野火燃料推进器[重型喷管-稀有] -item.mp_thruster_15_balefire_short.name=15号带核预热器的野火燃料推进器[缩短版] -item.mp_thruster_15_hydrogen.name=15号液氢推进器 -item.mp_thruster_15_hydrogen_dual.name=15号双喷管氢推进器 -item.mp_thruster_15_kerosene.name=15号液体燃料推进器 -item.mp_thruster_15_kerosene_dual.name=15号双喷管液体燃料推进器 -item.mp_thruster_15_kerosene_triple.name=15号三喷管液体燃料推进器 -item.mp_thruster_15_solid.name=15号固体燃料推进器 -item.mp_thruster_15_solid_hexdecuple.name=15号十六喷管固体燃料推进器 -item.mp_thruster_20_kerosene.name=20号液体燃料推进器 -item.mp_thruster_20_kerosene_dual.name=20号液体燃料推进器 -item.mp_thruster_20_kerosene_triple.name=20号液体燃料推进器 -item.mp_thruster_20_solid.name=20号固体燃料推进器 -item.mp_thruster_20_solid_multi.name=20号三十喷管固体燃料推进器 -item.mp_thruster_20_solid_multier.name=20号四十七喷管固体燃料推进器 -item.mp_warhead_10_buster.name=10号掩体破坏弹头 -item.mp_warhead_10_cloud.name=10号粉雾弹头 -item.mp_warhead_10_he.name=10号HE弹头 -item.mp_warhead_10_incendiary.name=10号燃烧弹头 -item.mp_warhead_10_nuclear.name=10号微型核弹头 -item.mp_warhead_10_nuclear_large.name=10号核弹头 -item.mp_warhead_10_taint.name=10号污染弹头 -item.mp_warhead_15_balefire.name=15号野火弹头 -item.mp_warhead_15_boxcar.name=15号 车厢? -item.mp_warhead_15_he.name=15号HE弹头 -item.mp_warhead_15_incendiary.name=15号燃烧弹头 -item.mp_warhead_15_n2.name=15号N2炸弹 -item.mp_warhead_15_nuclear.name=15号核弹头 -item.mp_warhead_15_nuclear_mimi.name=15号核弹头 -item.mp_warhead_15_nuclear_shark.name=15号核弹头 -item.mp_warhead_15_turbine.name=15号喷气发动机弹头 -item.mucho_mango.name=亚利桑那芒果味饮料 -item.multi_kit.name=多用途炸弹 套件 -item.multitool_beam.name=动力拳套[热射线] -item.multitool_decon.name=动力拳套[净化] -item.multitool_dig.name=动力拳套[挖掘] -item.multitool_ext.name=动力拳套[矿物提取] -item.multitool_hit.name=动力拳套[攻击] -item.multitool_joule.name=动力拳套[千兆焦耳] -item.multitool_mega.name=动力拳套[超级重拳] -item.multitool_miner.name=动力拳套[采矿激光] -item.multitool_silk.name=动力拳套[精准采集] -item.multitool_sky.name=动力拳套[划破天际] -item.mysteryshovel.name=易碎锹 -item.n2_charge.name=大型炸药 -item.neutrino_lens.name=中微子透镜 -item.neutron_reflector.name=中子反射板 -item.night_vision.name=夜视眼镜 -item.night_vision.description.item=提供夜视功能(需要全套电动设备) -item.night_vision.description.in_armor=%s(允许夜视) -item.niter.name=硝石粉 -item.nitra.name=Nitra -item.nitra_small.name=小撮Nitra -item.no9.name=矿工头盔 -item.nossy_hat.name=华丽的帽子 -item.nothing.name=没有东西 -item.nuclear_waste.name=核废料 -item.nuclear_waste_pearl.name=放射性珍珠 -item.nuclear_waste_tiny.name=小撮核废料 -item.nuclear_waste_long.name=长半衰期核废料 -item.nuclear_waste_long_tiny.name=小撮长半衰期核废料 -item.nuclear_waste_long_depleted.name=腐化的长半衰期核废料 -item.nuclear_waste_long_depleted_tiny.name=小撮腐化的长半衰期核废料 -item.nuclear_waste_short.name=短半衰期核废料 -item.nuclear_waste_short_tiny.name=小撮短半衰期核废料 -item.nuclear_waste_short_depleted.name=腐化的短半衰期核废料 -item.nuclear_waste_short_depleted_tiny.name=小撮腐化的短半衰期核废料 -item.nuclear_waste_vitrified.name=玻璃化核废料 -item.nuclear_waste_vitrified_tiny.name=小撮玻璃化核废料 -item.nugget.name=鸡块 -item.nugget_actinium.name=锕-227粒 -item.nugget_am_mix.name=反应堆级镅粒 -item.nugget_am241.name=镅-241粒 -item.nugget_am242.name=镅-242粒 -item.nugget_americium_fuel.name=镅燃料粒 -item.nugget_arsenic.name=砷粒 -item.nugget_au198.name=金-198粒 -item.nugget_australium.name=奥斯粒 -item.nugget_australium_greater.name=富集奥斯粒 -item.nugget_australium_lesser.name=贫化奥斯粒 -item.nugget_beryllium.name=铍粒 -item.nugget_bismuth.name=铋粒 -item.nugget_co60.name=钴-60粒 -item.nugget_cobalt.name=钴粒 -item.nugget_daffergon.name=达夫贡粒 -item.nugget_desh.name=Desh粒 -item.nugget_dineutronium.name=双聚中子态素粒 -item.nugget_euphemium.name=Ep粒 -item.nugget_euphemium.desc=一小块粉红色的金属$它的属性仍然未知,请小心处理。 -item.nugget_gh336.name=Gh336粒 -item.nugget_gh336.desc=钅喜的同事。 -item.nugget_hes.name=高浓度Sa326燃料粒 -item.nugget_lead.name=铅粒 -item.nugget_les.name=低浓度Sa326燃料粒 -item.nugget_mercury_tiny.name=一小滴水银 -item.nugget_mercury.name=一滴水银 -item.nugget_mox_fuel.name=MOX燃料粒 -item.nugget_mox_fuel.desc=摩西说:§l逃税。§r -item.nugget_neptunium.name=镎粒 -item.nugget_neptunium_fuel.name=镎燃料粒 -item.nugget_niobium.name=铌粒 -item.nugget_osmiridium.name=铱锇粒 -item.nugget_pb209.name=铅-209粒 -item.nugget_plutonium.name=钚粒 -item.nugget_plutonium_fuel.name=钚燃料粒 -item.nugget_polonium.name=钋粒 -item.nugget_pu_mix.name=反应堆级钚粒 -item.nugget_pu238.name=钚-238粒 -item.nugget_pu239.name=钚-239粒 -item.nugget_pu240.name=钚-240粒 -item.nugget_pu241.name=钚-241粒 -item.nugget_ra226.name=镭-226粒 -item.nugget_reiium.name=雷恩粒 -item.nugget_schrabidium.name=Sa326粒 -item.nugget_schrabidium_fuel.name=Sa326燃料粒 -item.nugget_silicon.name=硅粒 -item.nugget_solinium.name=Sa327粒 -item.nugget_sr90.name=锶-90粒 -item.nugget_tantalium.name=钽粒 -item.nugget_tantalium.desc=“钽” -item.nugget_tantalium.desc.P11=又名钽。 -item.nugget_technetium.name=锝-99粒 -item.nugget_th232.name=钍232粒 -item.nugget_thorium_fuel.name=钍燃料粒 -item.nugget_u233.name=铀-233粒 -item.nugget_u235.name=铀-235粒 -item.nugget_u238.name=铀-238粒 -item.nugget_unobtainium.name=难得素粒 -item.nugget_uranium.name=铀粒 -item.nugget_uranium_fuel.name=铀燃料粒 -item.nugget_verticium.name=韦德赛粒 -item.nugget_weidanium.name=魏丹粒 -item.nugget_zirconium.name=锆碎片 -item.nuke_advanced_kit.name=原子学高级工具箱 -item.nuke_commercially_kit.name=商用原子学工具箱 -item.nuke_electric_kit.name=电子工程师工具箱 -item.nuke_starter_kit.name=原子学入门工具箱 -item.oil_canola.name=菜籽油 -item.oil_detector.name=石油探测仪 -item.oil_detector.desc1=单击右键扫描地下是否存在油田 -item.oil_detector.desc2=探测仪只会发现大片油田 -item.oil_detector.bullseye=正下方发现油田! -item.oil_detector.detected=附近存在油田 -item.oil_detector.noOil=未发现油田 -item.oil_tar.coal.name=煤焦油 -item.oil_tar.crude.name=焦油 -item.oil_tar.crack.name=裂化焦油 -item.oil_tar.paraffin.name=石蜡 -item.oil_tar.wax.name=氯化石蜡 -item.oil_tar.wood.name=木馏油 -item.ore.asbestos=石棉 -item.ore.borax=硼砂 -item.ore.chlorocalcite=氯方解石 -item.ore.copper=铜 -item.ore.fluorite=氟石 -item.ore.gold=金 -item.ore.hematite=赤铁矿 -item.ore.iron=铁 -item.ore.malachite=孔雀石 -item.ore.neodymium=钕 -item.ore.niobium=铌 -item.ore.titanium=钛 -item.ore.tungsten=钨 -item.ore.thorium232=钍 -item.ore.uranium=铀 -item.ore_bedrock.name=基岩%s矿 -item.ore_byproduct.b_aluminium.name=铝晶体碎片 -item.ore_byproduct.b_bismuth.name=铋晶体碎片 -item.ore_byproduct.b_calcium.name=钙晶体碎片 -item.ore_byproduct.b_copper.name=铜晶体碎片 -item.ore_byproduct.b_iron.name=铁晶体碎片 -item.ore_byproduct.b_lead.name=铅晶体碎片 -item.ore_byproduct.b_lithium.name=锂晶体碎片 -item.ore_byproduct.b_polonium.name=钋晶体碎片 -item.ore_byproduct.b_radium.name=镭晶体碎片 -item.ore_byproduct.b_silicon.name=硅晶体碎片 -item.ore_byproduct.b_sulfur.name=硫晶体碎片 -item.ore_byproduct.b_technetium.name=锝晶体碎片 -item.ore_byproduct.b_titanium.name=钛晶体碎片 -item.ore_byproduct.b_uranium.name=铀晶体碎片 -item.ore_centrifuged.name=离心%s矿 -item.ore_cleaned.name=清洁%s矿 -item.ore_deepcleaned.name=深清洁%s矿 -item.ore_density_scanner.name=基岩矿石丰度扫描仪 -item.ore_enriched.name=富集%s矿 -item.ore_nitrated.name=硝化%s矿 -item.ore_nitrocrystalline.name=亚硝基结晶%s矿 -item.ore_purified.name=净化%s矿 -item.ore_radcleaned.name=经辐射清洁的%s矿 -item.ore_seared.name=灼热的%s矿 -item.ore_separated.name=分离的%s矿 -item.overfuse.name=奇异螺丝刀 -item.overfuse.desc=说啥? -item.oxy_mask.name=氧气面罩 -item.paa_boots.name=PaA "好鞋" -item.paa_legs.name=PaA加固护腿 -item.paa_plate.name=PaA加固护胸 -item.padlock.name=挂锁 -item.padlock_reinforced.name=加强挂锁 -item.padlock_rusty.name=生锈的挂锁 -item.padlock_unbreakable.name=牢不可破的挂锁 -item.pads_rubber.name=橡胶垫 -item.pads_slime.name=粘液垫 -item.pads_static.name=静电垫 -item.page_of_.page1.name=书页之一 -item.page_of_.page2.name=书页之二 -item.page_of_.page3.name=书页之三 -item.page_of_.page4.name=书页之四 -item.page_of_.page5.name=书页之五 -item.page_of_.page6.name=书页之六 -item.page_of_.page7.name=书页之七 -item.page_of_.page8.name=书页之八 -item.pancake.name=用废金属、螺栓和宝石粉做成的薄饼 -item.part_beryllium.name=铍粉盒 -item.part_carbon.name=碳粉盒 -item.part_copper.name=铜粉盒 -item.part_generic.hde.name=重型元件 -item.part_generic.lde.name=低密度元件 -item.part_generic.piston_electric.name=电动活塞 -item.part_generic.piston_hydraulic.name=液压活塞 -item.part_generic.piston_pneumatic.name=气动活塞 -item.part_lithium.name=锂粉盒 -item.part_plutonium.name=钚粉盒 -item.particle_aelectron.name=正电子胶囊 -item.particle_amat.name=反物质胶囊 -item.particle_aproton.name=反质子胶囊 -item.particle_aschrab.name=反Sa326胶囊 -item.particle_copper.name=铜离子胶囊 -item.particle_dark.name=暗物质胶囊 -item.particle_digamma.name=§c迪伽马粒子胶囊§r -item.particle_empty.name=空粒子胶囊 -item.particle_higgs.name=希格斯玻色子胶囊 -item.particle_hydrogen.name=氢离子胶囊 -item.particle_lead.name=铅离子胶囊 -item.particle_lutece.name=Lutece镥准粒子胶囊 -item.particle_muon.name=μ子胶囊 -item.particle_sparkticle.name=Spark粒子胶囊 -item.particle_strange.name=奇异夸克胶囊 -item.particle_tachyon.name=超光速粒子密封胶囊 -item.parts_legendary.name=传奇零件 -item.peas.name=豌豆 -item.pedestal_steel.name=钢底座 -item.pellet_advanced.name=高级Watz性能增强剂 -item.pellet_antimatter.name=反物质团 -item.pellet_beryllium.name=铍慢化靶丸 -item.pellet_buckshot.name=铅弹丸 -item.pellet_canister.name=榴霰弹弹丸 -item.pellet_charged.name=电离粒子 -item.pellet_chlorophyte.name=叶绿弹丸 -item.pellet_claws.name=金属利爪 -item.pellet_cluster.name=爆炸弹丸 -item.pellet_cluster.desc=用于多用途炸弹:$增加了一些额外的爆炸力! -item.pellet_coal.name=致密煤 -item.pellet_coolant.name=冷却液组 -item.pellet_flechette.name=箭霰弹 -item.pellet_gas.name=毒气筒 -item.pellet_gas.desc=用于多用途炸弹:$*咳嗽*请停止! -item.pellet_hes.name=HES Watz靶丸 -item.pellet_lead.name=铅反射靶丸 -item.pellet_les.name=LES Watz靶丸 -item.pellet_mercury.name=水银弹丸 -item.pellet_mes.name=MES Watz靶丸 -item.pellet_meteorite.name=陨石弹丸 -item.pellet_neptunium.name=镎Watz靶丸 -item.pellet_rtg.name=钚238放射性同位素燃料靶丸 -item.pellet_rtg.desc=无限能量的RTG靶丸!(差不多) -item.pellet_rtg_actinium.name=锕放射性同位素燃料靶丸 -item.pellet_rtg_actinium.desc= -item.pellet_rtg_americium.name=镅-241放射性同位素燃料靶丸 -item.pellet_rtg_americium.desc=稀有可靠,好的老镅! -item.pellet_rtg_berkelium.name=锫放射性同位素燃料靶丸 -item.pellet_rtg_berkelium.desc= -item.pellet_rtg_cobalt.name=钴-60放射性同位素燃料靶丸 -item.pellet_rtg_cobalt.desc=不是最好的RTG,但对伽马辐射很好! -item.pellet_rtg_depleted.bismuth.name=枯竭铋放射性同位素燃料靶丸 -item.pellet_rtg_depleted.lead.name=枯竭铅放射性同位素燃料靶丸 -item.pellet_rtg_depleted.neptunium.name=枯竭镎放射性同位素燃料靶丸 -item.pellet_rtg_depleted.mercury.name=枯竭汞放射性同位素燃料靶丸 -item.pellet_rtg_depleted.nickel.name=枯竭镍放射性同位素燃料靶丸 -item.pellet_rtg_depleted.zirconium.name=枯竭锆放射性同位素燃料靶丸 -item.pellet_rtg_lead.name=铅-209 放射性同位素燃料靶丸 -item.pellet_rtg_lead.desc=接触会导致立即死亡。 -item.pellet_rtg_gold.name=金-198放射性同位素燃料靶丸 -item.pellet_rtg_gold.desc=由稀有的、高度不稳定的金同位素制成。 -item.pellet_rtg_polonium.name=钋210放射性同位素燃料靶丸 -item.pellet_rtg_polonium.desc=更多粉末状RTG靶丸,由最好的钋制成! -item.pellet_rtg_strontium.name=锶-90放射性同位素燃料靶丸 -item.pellet_rtg_strontium.desc= -item.pellet_rtg_radium.name=镭-226放射性同位素燃料靶丸 -item.pellet_rtg_radium.desc=伟大的启动靶丸,来自全天然镭! -item.pellet_rtg_weak.name=贫铀放射性同位素燃料靶丸 -item.pellet_rtg_weak.desc=更便宜更弱的靶丸,含有更多的铀238! -item.pellet_schrabidium.name=纯Sa326Watz靶丸 -item.photo_panel.name=光伏板 -item.pile_rod_boron.name=芝加哥反应堆 控制棒 -item.pile_rod_boron.desc=§9[中子吸收器]$§E单击以切换 -item.pile_rod_detector.name=芝加哥反应堆控制/探测棒 -item.pile_rod_detector.desc=§9[中子探测器/吸收器]$§e使用拆弹器增加/减少中子通量限值$§e使用螺丝刀检查中子通量 -item.pile_rod_lithium.name=芝加哥反应堆锂燃料棒 -item.pile_rod_lithium.desc=§a[可增殖燃料棒]$§e使用手钻检查棒芯 -item.pile_rod_plutonium.name=芝加哥反应堆 钚棒 -item.pile_rod_plutonium.desc=§d[中子源棒] -item.pile_rod_pu239.name=芝加哥反应堆增殖铀棒 -item.pile_rod_pu239.desc=§a[可反应核燃料]$§e富含钚-239 -item.pile_rod_source.name=芝加哥反应堆 镭226-铍中子源 -item.pile_rod_source.desc=§d[中子源棒] -item.pile_rod_uranium.name=芝加哥反应堆 铀棒 -item.pile_rod_uranium.desc=§a[可反应核燃料]$§e使用手钻取堆芯样本 -item.pill_iodine.name=碘丸 -item.pill_iodine.desc=消除负面buff -item.pill_herbal.name=草药膏 -item.pill_herbal.desc=有效治疗肺部疾病和轻度辐射中毒$有副作用 -item.pill_red.name=红色药丸 -item.pin.name=发夹 -item.pin.desc=撬开标准锁的成功率约为10%。 -item.pipentm.name=%s管 -item.pipes_steel.name=钢管 -item.pipes_steel.desc=为了避免合成冲突,所以造价如此高昂 -item.pipette.name=移液管 -item.pipette_boron.name=硼玻璃移液管 -item.pipette_laboratory.name=移液器 -item.piston_selenium.name=星型发动机活塞 -item.piston_set_desh.name=Desh活塞组 -item.piston_set_dura.name=高速钢活塞组 -item.piston_set_starmetal.name=星辉活塞组 -item.piston_set_steel.name=钢活塞组 -item.plan_c.name=C计划 -item.plan_c.desc=致死 -item.plant_item.mustardwillow.name=芥子柳叶 -item.plant_item.rope.name=麻绳 -item.plant_item.tobacco.name=烟叶 -item.plastic_bag.name=塑料袋 -item.plate_advanced_alloy.name=高级合金板 -item.plate_aluminium.name=铝板 -item.plate_armor_ajr.name=铁皮装甲板 -item.plate_armor_dnt.name=DNT装甲板 -item.plate_armor_fau.name=Fau装甲板 -item.plate_armor_hev.name=反应装甲板 -item.plate_armor_lunar.name=月球镀层 -item.plate_armor_titanium.name=钛装甲板 -item.plate_bismuth.name=铋复合板 -item.plate_bismuth.desc=伙计们,这是铋的炼金术符号,我发誓。 -item.plate_cast.name=铸造%s板 -item.plate_combine_steel.name=CMB钢板 -item.plate_copper.name=铜板 -item.plate_dalekanium.name=愤怒的金属 -item.plate_desh.name=Desh复合板 -item.plate_dineutronium.name=双聚中子态素复合板 -item.plate_dura_steel.name=高速钢板 -item.plate_euphemium.name=Ep复合板 -item.plate_fuel_mox.name=MOX 板状燃料 -item.plate_fuel_pu238be.name=钚238-铍 板状燃料 -item.plate_fuel_pu239.name=高浓度钚-239 板状燃料 -item.plate_fuel_ra226be.name=镭226-铍 板状燃料 -item.plate_fuel_sa326.name=高浓度Sa326 板状燃料 -item.plate_fuel_u233.name=高浓度铀-233 板状燃料 -item.plate_fuel_u235.name=高浓度铀-235 板状燃料 -item.plate_gold.name=金板 -item.plate_iron.name=铁板 -item.plate_kevlar.name=凯夫拉陶瓷复合材料 -item.plate_lead.name=铅板 -item.plate_mixed.name=合金板 -item.plate_paa.name=PaA合金板 -item.plate_polymer.name=绝缘体 -item.plate_saturnite.name=土星板 -item.plate_schrabidium.name=Sa326板 -item.plate_steel.name=钢板 -item.plate_titanium.name=钛板 -item.plate_welded.name=焊接%s板 -item.polaroid.name=偏光片 -item.pollution_detector.name=污染探测器 -item.powder_actinium.name=锕粉 -item.powder_actinium_tiny.name=小撮锕粉 -item.powder_advanced_alloy.name=高级合金粉 -item.powder_aluminium.name=铝粉 -item.powder_asbestos.name=石棉粉 -item.powder_asbestos.desc=§o\"Sniffffffff- MHHHHHHMHHHHHHHHH\"§r -item.powder_ash.coal.name=煤灰 -item.powder_ash.fly.name=飞尘 -item.powder_ash.fullerene.name=富勒烯 -item.powder_ash.misc.name=灰尘 -item.powder_ash.soot.name=细烟灰 -item.powder_ash.wood.name=木灰 -item.powder_astatine.name=砹粉 -item.powder_at209.name=砹-209粉 -item.powder_au198.name=金-198粉 -item.powder_australium.name=奥斯粉 -item.powder_bakelite.name=电木粉 -item.powder_balefire.name=热核灰烬 -item.powder_beryllium.name=铍粉 -item.powder_bismuth.name=铋粉 -item.powder_borax.name=硼砂 -item.powder_boron.name=硼粉 -item.powder_boron_tiny.name=小撮硼粉 -item.powder_bromine.name=溴粉 -item.powder_cadmium.name=镉粉 -item.powder_caesium.name=铯粉 -item.powder_calcium.name=钙粉 -item.powder_cement.name=水泥 -item.powder_cerium.name=铈粉 -item.powder_cerium_tiny.name=小撮铈粉 -item.powder_chlorocalcite.name=氯方解石 -item.powder_chlorophyte.name=叶绿粉 -item.powder_cloud.name=云粉末 -item.powder_co60.name=钴-60粉 -item.powder_coal.name=煤粉 -item.powder_coal_tiny.name=小撮煤粉 -item.powder_cobalt.name=钴粉 -item.powder_cobalt_tiny.name=小撮钴粉 -item.powder_coltan.name=纯钽铁矿 -item.powder_coltan_ore.name=粉碎的钶钽铁矿石 -item.powder_combine_steel.name=CMB钢粉 -item.powder_copper.name=铜粉 -item.powder_cs137.name=铯-137粉 -item.powder_cs137_tiny.name=小撮铯-137粉 -item.powder_daffergon.name=达夫贡粉 -item.powder_desh.name=Desh粉 -item.powder_desh_mix.name=Desh混合物 -item.powder_desh_ready.name=DeshReady混合物 -item.powder_diamond.name=钻石粉 -item.powder_dineutronium.name=双聚中子态素粉 -item.powder_dura_steel.name=高速钢粉 -item.powder_emerald.name=绿宝石粉 -item.powder_euphemium.name=Ep粉 -item.powder_euphemium.desc=粉红色$尝起来像草莓。 -item.powder_fertilizer.name=工业肥料 -item.powder_fire.name=红磷粉 -item.powder_fire.desc=用于多用途炸弹:燃烧弹很有趣! -item.powder_flux.name=助熔剂 -item.powder_gold.name=金粉 -item.powder_i131.name=碘-131粉 -item.powder_i131_tiny.name=小撮碘-131粉 -item.powder_ice.name=冷冻粉 -item.powder_impure_osmiridium.name=不纯铱锇粉 -item.powder_iodine.name=碘粉 -item.powder_iron.name=铁粉 -item.powder_lanthanium.name=镧粉 -item.powder_lanthanium_tiny.name=小撮镧粉 -item.powder_lapis.name=青金石粉 -item.powder_lead.name=铅粉 -item.powder_lignite.name=褐煤粉 -item.powder_limestone.name=石灰石粉 -item.powder_lithium.name=锂粉 -item.powder_lithium_tiny.name=小撮锂粉 -item.powder_magic.name=粉碎的魔法 -item.powder_magnetized_tungsten.name=磁化钨粉 -item.powder_meteorite.name=陨石粉 -item.powder_meteorite_tiny.name=小撮陨石粉 -item.powder_molysite.name=氯化铁 -item.powder_neodymium.name=钕粉 -item.powder_neodymium_tiny.name=小撮钕粉 -item.powder_neptunium.name=镎粉 -item.powder_niobium.name=铌粉 -item.powder_niobium_tiny.name=小撮铌粉 -item.powder_nitan_mix.name=Nitan混合物 -item.powder_paleogenite.name=古近纪岩石粉末 -item.powder_paleogenite_tiny.name=小撮古近纪岩石粉末 -item.powder_plutonium.name=钚粉 -item.powder_poison.name=剧毒粉 -item.powder_poison.desc=用于多用途炸弹:警告:有毒! -item.powder_polonium.name=钋粉 -item.powder_polymer.name=聚合物粉 -item.powder_power.name=能量粉 -item.powder_quartz.name=石英粉 -item.powder_ra226.name=镭-226粉 -item.powder_red_copper.name=紫铜粉 -item.powder_reiium.name=雷恩粉 -item.powder_sawdust.name=锯末 -item.powder_schrabidate.name=Sa酸铁粉 -item.powder_schrabidium.name=Sa326粉 -item.powder_semtex_mix.name=塞姆汀塑胶炸药混合物 -item.powder_sodium.name=钠 -item.powder_spark_mix.name=Spark闪闪奥术混合物 -item.powder_sr90.name=锶-90粉 -item.powder_sr90_tiny.name=小撮锶-90粉末 -item.powder_steel.name=钢粉 -item.powder_steel_tiny.name=小撮钢粉 -item.powder_strontium.name=锶粉 -item.powder_tantalium.name=钽粉 -item.powder_tantalium.desc=“钽” -item.powder_tantalium.desc.P11=又名钽。 -item.powder_tcalloy.name=锝-钢粉 -item.powder_tektite.name=熔融石粉 -item.powder_tennessine.name=Ts粉 -item.powder_thermite.name=铝热剂 -item.powder_thorium.name=钍粉 -item.powder_titanium.name=钛粉 -item.powder_tungsten.name=钨粉 -item.powder_unobtainium.name=难得素粉 -item.powder_uranium.name=铀粉 -item.powder_verticium.name=韦德赛粉 -item.powder_weidanium.name=魏丹粉 -item.powder_xe135.name=氙-135粉 -item.powder_xe135_tiny.name=小撮氙-135粉 -item.powder_yellowcake.name=黄饼 -item.powder_zirconium.name=锆粉 -item.power_net_tool.name=电缆网络分析工具 -item.primer_357.name=.357马格南底火[x24] -item.primer_44.name=.44马格南底火[x24] -item.primer_50.name=大口径底火[x12] -item.primer_9.name=小口径底火[x32] -item.primer_buckshot.name=鹿弹底火[x12] -item.protection_charm.name=守护项链 -item.prototype_kit.name=原型 套件 -item.pudding.name=布丁 -item.pwr_fuel.bfb_am_mix.name=燃料级镅压水堆BFB燃料棒 -item.pwr_fuel.bfb_pu241.name=钚-241压水堆BFB棒 -item.pwr_fuel.hea242.name=HEA-242 高浓缩度镅-242压水堆燃料棒 -item.pwr_fuel.hen237.name=HEN-237 高浓缩度镎-237压水堆燃料棒 -item.pwr_fuel.hep239.name=HEP-239 高浓缩度钚-239压水堆燃料棒 -item.pwr_fuel.hep241.name=HEP-241 高浓缩度钚-241压水堆燃料棒 -item.pwr_fuel.hes326.name=HES-326 高浓缩度Sa326压水堆燃料棒 -item.pwr_fuel.hes327.name=HES-327 高浓缩度Sa327压水堆燃料棒 -item.pwr_fuel.heu233.name=HEU-233 高浓缩度铀-233压水堆燃料棒 -item.pwr_fuel.heu235.name=HEU-235 高浓缩度铀-235压水堆燃料棒 -item.pwr_fuel.mea.name=MEA 中浓缩度镅压水堆燃料棒 -item.pwr_fuel.men.name=MEN 中浓缩度镎压水堆燃料棒 -item.pwr_fuel.mep.name=MEP 中浓缩度钚压水堆燃料棒 -item.pwr_fuel.meu.name=MEU 中浓缩度铀压水堆燃料棒 -item.pwr_fuel.mox.name=MOX 压水堆燃料棒 -item.pwr_fuel_depleted.bfb_am_mix.name=枯竭燃料级镅压水堆BFB燃料棒 -item.pwr_fuel_depleted.bfb_pu241.name=枯竭钚-241压水堆BFB棒 -item.pwr_fuel_depleted.hea242.name=枯竭 HEA-242 高浓缩度镅-242压水堆燃料棒 -item.pwr_fuel_depleted.hen237.name=枯竭 HEN-237 高浓缩度镎-237压水堆燃料棒 -item.pwr_fuel_depleted.hep239.name=枯竭 HEP-239 高浓缩度钚-239压水堆燃料棒 -item.pwr_fuel_depleted.hep241.name=枯竭 HEP-241 高浓缩度钚-241压水堆燃料棒 -item.pwr_fuel_depleted.hes326.name=枯竭 HES-326 高浓缩度Sa326压水堆燃料棒 -item.pwr_fuel_depleted.hes327.name=枯竭 HES-327 高浓缩度Sa327压水堆燃料棒 -item.pwr_fuel_depleted.heu233.name=枯竭 HEU-233 高浓缩度铀-233压水堆燃料棒 -item.pwr_fuel_depleted.heu235.name=枯竭 HEU-235 高浓缩度铀-235压水堆燃料棒 -item.pwr_fuel_depleted.mea.name=枯竭 MEA 中浓缩度镅压水堆燃料棒 -item.pwr_fuel_depleted.men.name=枯竭 MEN 中浓缩度镎压水堆燃料棒 -item.pwr_fuel_depleted.mep.name=枯竭 MEP 中浓缩度钚压水堆燃料棒 -item.pwr_fuel_depleted.meu.name=枯竭 MEU 中浓缩度铀压水堆燃料棒 -item.pwr_fuel_depleted.mox.name=枯竭 MOX 压水堆燃料棒 -item.pwr_fuel_hot.bfb_am_mix.name=高温 燃料级镅压水堆BFB燃料棒 -item.pwr_fuel_hot.bfb_pu241.name=高温 钚-241压水堆BFB棒 -item.pwr_fuel_hot.hea242.name=高温 HEA-242 高浓缩度镅-242压水堆燃料棒 -item.pwr_fuel_hot.hen237.name=高温 HEN-237 高浓缩度镎-237压水堆燃料棒 -item.pwr_fuel_hot.hep239.name=高温 HEP-239 高浓缩度钚-239压水堆燃料棒 -item.pwr_fuel_hot.hep241.name=高温 HEP-241 高浓缩度钚-241压水堆燃料棒 -item.pwr_fuel_hot.hes326.name=高温 HES-326 高浓缩度Sa326压水堆燃料棒 -item.pwr_fuel_hot.hes327.name=高温 HES-327 高浓缩度Sa327压水堆燃料棒 -item.pwr_fuel_hot.heu233.name=高温 HEU-233 高浓缩度铀-233压水堆燃料棒 -item.pwr_fuel_hot.heu235.name=高温 HEU-235 高浓缩度铀-235压水堆燃料棒 -item.pwr_fuel_hot.mea.name=高温 MEA 中浓缩度镅压水堆燃料棒 -item.pwr_fuel_hot.men.name=高温 MEN 中浓缩度镎压水堆燃料棒 -item.pwr_fuel_hot.mep.name=高温 MEP 中浓缩度钚压水堆燃料棒 -item.pwr_fuel_hot.meu.name=高温 MEU 中浓缩度铀压水堆燃料棒 -item.pwr_fuel_hot.mox.name=高温 MOX压水堆燃料棒 -item.quartz_plutonium.name=深成石英 -item.radar_linker.name=雷达连接器 -item.radaway.name=消辐宁 -item.radaway_flush.name=超级消辐宁 -item.radaway_strong.name=强效消辐宁 -item.radx.name=防辐射药 -item.radx.desc=在3分钟内增加0.2(37%)的抗辐射能力 -item.rag.name=布 -item.rag_damp.name=湿布 -item.rag_piss.name=沾有尿的布 -item.rbmk_fuel_balefire.name=RBMK反应堆野火燃料棒 -item.rbmk_fuel_balefire_gold.name=RBMK反应堆激活态金-198燃料棒 -item.rbmk_fuel_drx.name=§cRBMK反应堆F迪伽马粒子燃料棒§r -item.rbmk_fuel_empty.name=空 RBMK反应堆燃料棒 -item.rbmk_fuel_flashlead.name=RBMK反应堆闪光铅燃料棒 -item.rbmk_fuel_hea241.name=HEA-241 RBMK反应堆高浓缩度镅-241燃料棒 -item.rbmk_fuel_hea242.name=HEA-242 RBMK反应堆高浓缩度镅-242燃料棒 -item.rbmk_fuel_heaus.name=HEAus RBMK反应堆高浓缩度奥斯燃料棒 -item.rbmk_fuel_hen.name=HEN RBMK反应堆高浓缩度镎燃料棒 -item.rbmk_fuel_hes.name=HES RBMK反应堆高浓缩度Sa326燃料棒 -item.rbmk_fuel_hep.name=HEP-239 RBMK反应堆高浓缩度钚-239燃料棒 -item.rbmk_fuel_hep241.name=HEP-241 RBMK反应堆高浓缩度钚-241燃料棒 -item.rbmk_fuel_heu233.name=HEU-233 RBMK反应堆高浓缩度铀-233燃料棒 -item.rbmk_fuel_heu235.name=HEU-235 RBMK反应堆高浓缩度铀-235燃料棒 -item.rbmk_fuel_lea.name=LEA RBMK反应堆低浓缩度镅-242燃料棒 -item.rbmk_fuel_leaus.name=LEAus RBMK反应堆低浓缩度奥斯燃料棒 -item.rbmk_fuel_lep.name=LEP RBMK反应堆低浓缩度钚-239燃料棒 -item.rbmk_fuel_les.name=LES RBMK反应堆低浓缩度Sa326燃料棒 -item.rbmk_fuel_mea.name=MEA RBMK反应堆中浓缩度镅-242燃料棒 -item.rbmk_fuel_men.name=MEN RBMK反应堆中浓缩度镎-237燃料棒 -item.rbmk_fuel_mep.name=MEP RBMK反应堆中浓缩度钚-239燃料棒 -item.rbmk_fuel_mes.name=MES RBMK中浓缩度Sa326燃料棒 -item.rbmk_fuel_meu.name=MEU RBMK中浓缩度铀-235燃料棒 -item.rbmk_fuel_mox.name=MOX RBMK反应堆燃料棒 -item.rbmk_fuel_po210be.name=钋210-铍 RBMK反应堆中子源 -item.rbmk_fuel_pu238be.name=钚238-铍 RBMK反应堆中子源 -item.rbmk_fuel_ra226be.name=镭226-铍 RBMK反应堆中子源 -item.rbmk_fuel_thmeu.name=ThMEU RBMK反应堆中浓缩度铀-233导向钍燃料棒 -item.rbmk_fuel_ueu.name=NU RBMK反应堆未浓缩铀燃料棒 -item.rbmk_fuel_zfb_am_mix.name=ZFB 燃料级镅RBMK反应堆燃料棒 -item.rbmk_fuel_zfb_bismuth.name=ZFB 铋RBMK反应堆燃料棒 -item.rbmk_fuel_zfb_pu241.name=ZFB 钚-241RBMK反应堆燃料棒 -item.rbmk_lid.name=RBMK反应堆覆盖层 -item.rbmk_lid_glass.name=RBMK反应堆玻璃覆盖层 -item.rbmk_pellet_balefire.name=野火燃料芯块 -item.rbmk_pellet_balefire_gold.name=激活态金-198燃料芯块 -item.rbmk_pellet_drx.name=§cF迪伽马粒子燃料芯块§r -item.rbmk_pellet_flashlead.name=闪光铅燃料芯块 -item.rbmk_pellet_hea241.name=HEA-241 高浓缩度镅-241料芯块 -item.rbmk_pellet_hea242.name=HEA-242 高浓缩度镅-242燃料芯块 -item.rbmk_pellet_heaus.name=HEAus 高浓缩度奥斯燃料芯块 -item.rbmk_pellet_hen.name=HEN 高浓缩度镎燃料芯块 -item.rbmk_pellet_hep239.name=HEP-239 高浓缩度钚-239燃料芯块 -item.rbmk_pellet_hep241.name=HEP-241 高浓缩度钚-241燃料芯块 -item.rbmk_pellet_heu233.name=HEU-233 高浓缩度铀-233燃料芯块 -item.rbmk_pellet_heu235.name=HEU-235 高浓缩度铀-235燃料芯块 -item.rbmk_pellet_hes.name=HES 高浓缩度Sa-326燃料芯块 -item.rbmk_pellet_lea.name=LEA 低浓缩度镅-242燃料芯块 -item.rbmk_pellet_leaus.name=LEAus 低浓缩度奥斯燃料芯块 -item.rbmk_pellet_lep.name=LEP 低浓缩度钚-239燃料芯块 -item.rbmk_pellet_les.name=LES 低浓缩度Sa-326燃料芯块 -item.rbmk_pellet_mea.name=MEA 中浓缩度镅-242燃料芯块 -item.rbmk_pellet_men.name=MEN 中浓缩度镎-237燃料芯块 -item.rbmk_pellet_mep.name=MEP 中浓缩度钚-239燃料芯块 -item.rbmk_pellet_mes.name=MES 中浓缩度Sa-326燃料芯块 -item.rbmk_pellet_meu.name=MEU 中浓缩度铀-235燃料芯块 -item.rbmk_pellet_mox.name=MOX燃料芯块 -item.rbmk_pellet_po210be.name=钋210-铍 中子源芯块 -item.rbmk_pellet_pu238be.name=钚238-铍 中子源芯块 -item.rbmk_pellet_ra226be.name=镭226-铍 中子源芯块 -item.rbmk_pellet_thmeu.name=ThMEU 浓缩度铀-235导向钍燃料芯块 -item.rbmk_pellet_ueu.name=未浓缩铀燃料芯块 -item.rbmk_pellet_zfb_am_mix.name=ZFB 燃料级镅燃料芯块 -item.rbmk_pellet_zfb_bismuth.name=ZFB 铋燃料芯块 -item.rbmk_pellet_zfb_pu241.name=ZFB 钚-241燃料芯块 -item.rbmk_tool.name=RBMK石墨式反应堆控制台连接装置 -item.rbmk_tool.desc=按住Shift右击RBMK石墨式反应堆保存其坐标,$按住Shift右击控制台以连接反应堆! -item.rbmk_tool.linked=反应堆坐标已记录! -item.rbmk_tool.set=反应堆已连接! -item.reacher.name=钨长臂夹 -item.reactor_core.name=增殖反应堆核心 -item.reactor_sensor.name=反应堆遥感器 -item.record.glass.desc=? ? ? -item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core -item.record.ss.desc=Valve - Sector Sweep -item.record.vc.desc=Valve - Vortal Combat -item.redcoil_capacitor.name=红圈电容器 -item.redstone_depleted.name=不饱和红石粉 -item.redstone_sword.name=红石剑 -item.reer_graar.name=The Reer Graar -item.remote.name=损坏的遥控器 -item.ring_pull.name=拉环 -item.ring_starmetal.name=§9星辉拉环§r -item.robes_boots.name=战地靴 -item.robes_helmet.name=休闲兜帽 -item.robes_legs.name=休闲裤 -item.robes_plate.name=休闲毛衣 -item.rocket_fuel.name=固体燃料[火箭推进剂] -item.rod_empty.name=空燃料棒 -item.rod.lithium.name=锂棒 -item.rod.tritium.name=氚棒 -item.rod.co.name=钴棒 -item.rod.co60.name=钴-60棒 -item.rod.ra226.name=镭-226棒 -item.rod.ac227.name=锕-227棒 -item.rod.th232.name=钍-232棒 -item.rod.thf.name=钍燃料棒 -item.rod.u235.name=铀-235棒 -item.rod.np237.name=镎-237棒 -item.rod.u238.name=铀-238棒 -item.rod.pu238.name=钚-238棒 -item.rod.pu239.name=钚-239棒 -item.rod.rgp.name=反应堆级钚棒 -item.rod.waste.name=核废料棒 -item.rod.lead.name=铅棒 -item.rod.uranium.name=铀棒 -item.rod_dual_empty.name=空双联燃料棒 -item.rod_dual.lithium.name=双联锂棒 -item.rod_dual.tritium.name=双联氚棒 -item.rod_dual.co.name=双联钴棒 -item.rod_dual.co60.name=双联钴-60棒 -item.rod_dual.ra226.name=双联镭-226棒 -item.rod_dual.ac227.name=双联锕-227棒 -item.rod_dual.th232.name=双联钍-232棒 -item.rod_dual.thf.name=双联钍燃料棒 -item.rod_dual.u235.name=双联铀-235棒 -item.rod_dual.np237.name=双联镎-237棒 -item.rod_dual.u238.name=双联铀-238棒 -item.rod_dual.pu238.name=双联钚-238棒 -item.rod_dual.pu239.name=双联钚-239棒 -item.rod_dual.rgp.name=双联反应堆级钚棒 -item.rod_dual.waste.name=双联核废料棒 -item.rod_dual.lead.name=双联铅棒 -item.rod_dual.uranium.name=双联铀棒 -item.rod_quad_empty.name=空四联燃料棒 -item.rod_quad.lithium.name=四联锂棒 -item.rod_quad.tritium.name=四联氚棒 -item.rod_quad.co.name=四联钴棒 -item.rod_quad.co60.name=四联钴-60棒 -item.rod_quad.ra226.name=四联镭-226棒 -item.rod_quad.ac227.name=四联锕-227棒 -item.rod_quad.th232.name=四联钍-232棒 -item.rod_quad.thf.name=四联钍燃料棒 -item.rod_quad.u235.name=四联铀-235棒 -item.rod_quad.np237.name=四联镎-237棒 -item.rod_quad.u238.name=四联铀-238棒 -item.rod_quad.pu238.name=四联钚-238棒 -item.rod_quad.pu239.name=四联钚-239棒 -item.rod_quad.rgp.name=四联反应堆级钚棒 -item.rod_quad.waste.name=四联核废料棒 -item.rod_quad.lead.name=四联铅棒 -item.rod_quad.uranium.name=四联铀棒 -item.rod_australium.name=奥斯棒 -item.rod_balefire.name=野火燃料棒 -item.rod_balefire_blazing.name=炽热的野火燃料棒 -item.rod_coolant.name=燃料棒[冷却液] -item.rod_daffergon.name=达夫贡棒 -item.rod_dual_balefire.name=双联野火燃料棒 -item.rod_dual_balefire_blazing.name=炽热的双联野火燃料棒 -item.rod_dual_coolant.name=双联燃料棒[冷却液] -item.rod_dual_lead.name=双联铅棒 -item.rod_dual_lithium.name=双联锂棒 -item.rod_dual_mox_fuel.name=核反应堆 双联MOX燃料棒 -item.rod_dual_mox_fuel_depleted.name=核反应堆 枯竭MOX燃料棒 -item.rod_dual_neptunium.name=双联镎燃料棒 -item.rod_dual_plutonium.name=双联钚棒 -item.rod_dual_plutonium_fuel.name=核反应堆 双联钚燃料棒 -item.rod_dual_plutonium_fuel_depleted.name=核反应堆 双联枯竭钚燃料棒 -item.rod_dual_polonium.name=双联钋棒 -item.rod_dual_pu238.name=双联钚-238燃料棒 -item.rod_dual_pu239.name=双联钚-239燃料棒 -item.rod_dual_pu240.name=双联钚-240燃料棒 -item.rod_dual_schrabidium.name=双联Sa326燃料棒 -item.rod_dual_schrabidium_fuel.name=核反应堆 双联Sa326燃料棒 -item.rod_dual_schrabidium_fuel_depleted.name=双联枯竭Sa326燃料棒 -item.rod_dual_solinium.name=双联Sa327燃料棒 -item.rod_dual_th232.name=双联钍-232燃料棒 -item.rod_dual_thorium_fuel.name=双联钍燃料棒 -item.rod_dual_thorium_fuel_depleted.name=双联枯竭钍燃料棒 -item.rod_dual_tritium.name=双联氚燃料棒 -item.rod_dual_u233.name=双联铀-233燃料棒 -item.rod_dual_u235.name=双联铀-235燃料棒 -item.rod_dual_u238.name=双联铀-238燃料棒 -item.rod_dual_uranium.name=双联铀棒 -item.rod_dual_uranium_fuel.name=核反应堆 双联铀燃料棒 -item.rod_dual_uranium_fuel_depleted.name=核反应堆 双联枯竭铀燃料棒 -item.rod_dual_waste.name=双联核废料棒 -item.rod_dual_water.name=双联燃料棒[水] -item.rod_euphemium.name=Ep棒 -item.rod_lead.name=铅棒 -item.rod_lithium.name=锂棒 -item.rod_mox_fuel.name=核反应堆 MOX燃料棒 -item.rod_mox_fuel_depleted.name=核反应堆 枯竭MOX燃料棒 -item.rod_neptunium.name=镎燃料棒 -item.rod_of_discord.name=混沌传送杖 -item.rod_plutonium.name=钚棒 -item.rod_plutonium_fuel.name=核反应堆 钚燃料棒 -item.rod_plutonium_fuel_depleted.name=核反应堆 枯竭钚燃料棒 -item.rod_polonium.name=钋棒 -item.rod_pu238.name=钚-238燃料棒 -item.rod_pu239.name=钚-239燃料棒 -item.rod_pu240.name=钚-240燃料棒 -item.rod_quad_balefire.name=四联野火燃料棒 -item.rod_quad_balefire_blazing.name=炽热的四联野火燃料棒 -item.rod_quad_coolant.name=四联燃料棒[冷却液] -item.rod_quad_euphemium.name=枯竭的四联Sa326燃料棒 -item.rod_quad_lead.name=四联铅棒 -item.rod_quad_lithium.name=四联锂棒 -item.rod_quad_mox_fuel.name=核反应堆 四联MOX燃料棒 -item.rod_quad_mox_fuel_depleted.name=核反应堆 枯竭MOX燃料棒 -item.rod_quad_neptunium.name=四联镎燃料棒 -item.rod_quad_plutonium.name=四联钚棒 -item.rod_quad_plutonium_fuel.name=四联钚燃料棒 -item.rod_quad_plutonium_fuel_depleted.name=四联枯竭钚燃料棒 -item.rod_quad_polonium.name=四联钋棒 -item.rod_quad_pu238.name=四联钚-238燃料棒 -item.rod_quad_pu239.name=四联钚-239燃料棒 -item.rod_quad_pu240.name=四联钚-240燃料棒 -item.rod_quad_schrabidium.name=四联Sa326燃料棒 -item.rod_quad_schrabidium_fuel.name=核反应堆 四联Sa326燃料棒 -item.rod_quad_schrabidium_fuel_depleted.name=核反应堆 四联枯竭Sa326燃料棒 -item.rod_quad_solinium.name=四联Sa327燃料棒 -item.rod_quad_th232.name=四联钍-232燃料棒 -item.rod_quad_thorium_fuel.name=核反应堆 四联钍燃料棒 -item.rod_quad_thorium_fuel_depleted.name=四联枯竭钍燃料棒 -item.rod_quad_tritium.name=四联氚燃料棒 -item.rod_quad_u233.name=四联铀-233燃料棒 -item.rod_quad_u235.name=四联铀-235燃料棒 -item.rod_quad_u238.name=四联铀-238燃料棒 -item.rod_quad_uranium.name=四联铀棒 -item.rod_quad_uranium_fuel.name=核反应堆 四联铀燃料棒 -item.rod_quad_uranium_fuel_depleted.name=四联枯竭铀燃料棒 -item.rod_quad_waste.name=四联核废料棒 -item.rod_quad_water.name=四联燃料棒[水] -item.rod_reiium.name=雷恩棒 -item.rod_schrabidium.name=Sa326燃料棒 -item.rod_schrabidium_fuel.name=Sa326燃料棒 -item.rod_schrabidium_fuel_depleted.name=核反应堆 枯竭Sa326燃料棒 -item.rod_solinium.name=Sa327燃料棒 -item.rod_th232.name=钍-232燃料棒 -item.rod_thorium_fuel.name=钍燃料棒 -item.rod_thorium_fuel_depleted.name=核反应堆 枯竭钍燃料棒 -item.rod_tritium.name=氚燃料棒 -item.rod_u233.name=铀-233燃料棒 -item.rod_u235.name=铀-235燃料棒 -item.rod_u238.name=铀-238燃料棒 -item.rod_unobtainium.name=难得素棒 -item.rod_uranium.name=铀棒 -item.rod_uranium_fuel.name=核反应堆 铀燃料棒 -item.rod_uranium_fuel_depleted.name=核反应堆 枯竭铀燃料棒 -item.rod_verticium.name=韦德赛棒 -item.rod_waste.name=核废料棒 -item.rod_water.name=燃料棒[水] -item.rod_weidanium.name=魏丹棒 -item.rod_zirnox_empty.name=空锆诺克斯燃料棒 -item.rod_zirnox_natural_uranium_fuel.name=锆诺克斯 天然铀燃料棒 -item.rod_zirnox_uranium_fuel.name=锆诺克斯 铀燃料棒 -item.rod_zirnox_th232.name=锆诺克斯 钍-232燃料棒 -item.rod_zirnox_thorium_fuel.name=锆诺克斯 钍燃料棒 -item.rod_zirnox_mox_fuel.name=锆诺克斯 MOX燃料棒 -item.rod_zirnox_plutonium_fuel.name=锆诺克斯 钚燃料棒 -item.rod_zirnox_u233_fuel.name=锆诺克斯 铀-233燃料棒 -item.rod_zirnox_u235_fuel.name=锆诺克斯 铀-235燃料棒 -item.rod_zirnox_les_fuel.name=锆诺克斯 LES低浓度Sa326燃料棒 -item.rod_zirnox_lithium.name=锆诺克斯 锂燃料棒 -item.rod_zirnox_tritium.name=锆诺克斯 氚燃料棒 -item.rod_zirnox_zfb_mox.name=锆诺克斯 ZFB MOX燃料棒 -item.rod_zirnox_natural_uranium_fuel_depleted.name=锆诺克斯 枯竭天然铀燃料棒 -item.rod_zirnox_uranium_fuel_depleted.name=锆诺克斯 枯竭铀燃料棒 -item.rod_zirnox_thorium_fuel_depleted.name=锆诺克斯 枯竭钍燃料棒 -item.rod_zirnox_mox_fuel_depleted.name=锆诺克斯 枯竭MOX燃料棒 -item.rod_zirnox_plutonium_fuel_depleted.name=锆诺克斯 枯竭钚燃料棒 -item.rod_zirnox_u233_fuel_depleted.name=锆诺克斯 枯竭铀-233燃料棒 -item.rod_zirnox_u235_fuel_depleted.name=锆诺克斯 枯竭铀-235燃料棒 -item.rod_zirnox_les_fuel_depleted.name=锆诺克斯 枯竭LES低浓度Sa326燃料棒 -item.rod_zirnox_zfb_mox_depleted.name=锆诺克斯 ZFB 枯竭MOX燃料棒 -item.rotor_steel.name=大型钢转子 -item.rpa_boots.name=动力装甲 靴子 -item.rpa_helmet.name=动力装甲 头盔 -item.rpa_legs.name=动力护甲 护腿 -item.rpa_plate.name=动力装甲 胸甲 -item.rtg_unit.name=放射性同位素单元 -item.rubber_gloves.name=厚橡胶手套 -item.rune_blank.name=空白催化剂基质 -item.rune_dagaz.name=平衡催化剂基质 -item.rune_hagalaz.name=粗催化剂基质 -item.rune_isa.name=冷却催化剂基质 -item.rune_jera.name=增殖催化剂基质 -item.rune_thurisaz.name=添加剂催化剂基质 -item.safety_fuse.name=安全保险丝 -item.sat_base.name=卫星基座 -item.sat_chip.name=卫星ID芯片 -item.sat_coord.name=卫星指示器 -item.sat_designator.name=卫星激光指示器 -item.sat_relay.name=卫星雷达中继器 -item.sat_foeq.name=实验型核能PEAF-Mk.I FOEQ Duna探测器 -item.sat_gerald.name=Gerald建筑机器人 -item.sat_head_laser.name=死光发射器 -item.sat_head_mapper.name=高增益光学摄像头 -item.sat_head_radar.name=雷达天线 -item.sat_head_resonator.name=Xenium共振器 -item.sat_head_scanner.name=M700测量扫描仪 -item.sat_interface.name=卫星操作接口 -item.sat_laser.name=轨道死光炮 -item.sat_lunar_miner.name=月球采矿飞船 -item.sat_mapper.name=地表测绘卫星 -item.sat_miner.name=小行星采矿飞船 -item.sat_radar.name=雷达探测卫星 -item.sat_resonator.name=X晶体共振卫星 -item.sat_scanner.name=绘测和资源探测卫星 -item.sawblade.name=锯片 -item.schnitzel_vegan.name=“素”肉排 -item.schrabidium_axe.name=Sa326斧 -item.schrabidium_boots.name=Sa326靴子 -item.schrabidium_hammer.name=Sa326锤 -item.schrabidium_helmet.name=Sa326头盔 -item.schrabidium_hoe.name=Sa326锄 -item.schrabidium_legs.name=Sa326护腿 -item.schrabidium_pickaxe.name=Sa326镐 -item.schrabidium_plate.name=Sa326胸甲 -item.schrabidium_shovel.name=Sa326锹 -item.schrabidium_sword.name=Sa326剑 -item.scrap.name=废料 -item.scrap_nuclear.name=放射性废料 -item.scrap_oil.name=油性废料 -item.scrap_plastic.name=塑料废料 -item.scraps.name=铸造废料 -item.screwdriver.name=螺丝刀 -item.screwdriver.desc=可以用来代替保险丝…… -item.screwdriver_desh.name=Desh螺丝刀 -item.scrumpy.name=一瓶烈性苹果酒 -item.security_boots.name=防护靴子 -item.security_helmet.name=防护头盔 -item.security_legs.name=防护裤 -item.security_plate.name=防护胸甲 -item.seg_10.name=10号连接器 -item.seg_15.name=15号连接器 -item.seg_20.name=20号连接器 -item.serum.name=血清 -item.servo_set.name=伺服装置 -item.servo_set_desh.name=Desh伺服装置 -item.shackles.name=枷锁 -item.shellntm.name=%s壳 -item.shimmer_axe.name=闪耀斧 -item.shimmer_axe_head.name=重型斧头 -item.shimmer_handle.name=强化聚合物手柄 -item.shimmer_head.name=重型锤头 -item.shimmer_sledge.name=闪耀锤 -item.singularity.name=奇点 -item.singularity_counter_resonant.name=可控反振谐奇点 -item.singularity_micro.name=微型奇点 -item.singularity_spark.name=Spark奇点 -item.singularity_super_heated.name=超热共振奇点 -item.siox.name=SiOX抗癌药物 -item.siox.desc=使用石棉的力量逆转间皮瘤! -item.siphon.name=虹吸管 -item.siren_track.name=警报声轨 -item.sliding_blast_door_skin.0.name=滑动防爆门 皮肤:默认 -item.sliding_blast_door_skin.1.name=滑动防爆门 皮肤:变型1 -item.sliding_blast_door_skin.2.name=滑动防爆门 皮肤:变型2 -item.smashing_hammer.name=粉碎锤 -item.solid_fuel.name=固体燃料 -item.solid_fuel_bf.name=固体燃料(野火) -item.solid_fuel_presto.name=Presto固体燃料 -item.solid_fuel_presto_bf.name=Presto固体燃料(野火) -item.solid_fuel_presto_triplet.name=增强型Presto固体燃料 -item.solid_fuel_presto_triplet_bf.name=增强型Presto固体燃料(野火) -item.solinium_core.name=半稳定Sa327核心 -item.solinium_igniter.name=Sa327脉冲点火器 -item.solinium_kit.name=蔚蓝洗礼套件 -item.solinium_propellant.name=Sa327压缩装药 -item.sopsign.name=Sop标志战斧 -item.spawn_duck.name=金蛋 -item.spawn_ufo.name=火星入侵者飞船 -item.spawn_worm.name=机械蠕虫 -item.sphere_steel.name=钢球 -item.spider_milk.name=一瓶蜘蛛奶 -item.spongebob_macaroni.name=海绵宝宝通心粉 -item.stamp_357.name=.357马格南锻模 -item.stamp_44.name=.44马格南锻模 -item.stamp_50.name=大口径弹壳锻模 -item.stamp_9.name=小口径弹壳锻模 -item.stamp_book.printing1.name=书页锻模之一 -item.stamp_book.printing2.name=书页锻模之二 -item.stamp_book.printing3.name=书页锻模之三 -item.stamp_book.printing4.name=书页锻模之四 -item.stamp_book.printing5.name=书页锻模之五 -item.stamp_book.printing6.name=书页锻模之六 -item.stamp_book.printing7.name=书页锻模之七 -item.stamp_book.printing8.name=书页锻模之八 -item.stamp_desh_circuit.name=Desh电路板锻模 -item.stamp_desh_flat.name=Desh锻模 -item.stamp_desh_plate.name=Desh板锻模 -item.stamp_desh_wire.name=Desh电线锻模 -item.stamp_desh_357.name=.357马格南锻模 (Desh) -item.stamp_desh_44.name=.44马格南锻模 (Desh) -item.stamp_desh_50.name=大口径弹壳锻模(Desh) -item.stamp_desh_9.name=小口径弹壳锻模(Desh) -item.stamp_iron_circuit.name=铁质电路板锻模 -item.stamp_iron_flat.name=铁质锻模 -item.stamp_iron_plate.name=铁质板锻模 -item.stamp_iron_wire.name=铁质电线锻模 -item.stamp_obsidian_circuit.name=黑曜石电路板锻模 -item.stamp_obsidian_flat.name=黑曜石锻模 -item.stamp_obsidian_plate.name=黑曜石板锻模 -item.stamp_obsidian_wire.name=黑曜石电线锻模 -item.stamp_steel_circuit.name=钢质电路板锻模 -item.stamp_steel_flat.name=钢质锻模 -item.stamp_steel_plate.name=钢质板锻模 -item.stamp_steel_wire.name=钢质电线锻模 -item.stamp_stone_circuit.name=石质电路板锻模 -item.stamp_stone_flat.name=石质锻模 -item.stamp_stone_plate.name=石质板锻模 -item.stamp_stone_wire.name=石质电线锻模 -item.stamp_titanium_circuit.name=钛质电路板锻模 -item.stamp_titanium_flat.name=钛质锻模 -item.stamp_titanium_plate.name=钛质板锻模 -item.stamp_titanium_wire.name=钛质电线锻模 -item.starmetal_axe.name=星辉斧 -item.starmetal_boots.name=星辉靴子 -item.starmetal_helmet.name=星辉头盔 -item.starmetal_hoe.name=星辉锄 -item.starmetal_legs.name=星辉护腿 -item.starmetal_pickaxe.name=星辉镐 -item.starmetal_plate.name=星辉胸甲 -item.starmetal_shovel.name=星辉锹 -item.starmetal_sword.name=星辉剑 -item.static_sandwich.name=TV三明治 -item.stealth_boy.name=隐形小子 -item.steamsuit_boots.name=蒸汽动力靴子 -item.steamsuit_helmet.name=蒸汽动力呼吸器头盔 -item.steamsuit_legs.name=蒸汽动力护腿 -item.steamsuit_plate.name=蒸汽动力胸甲 -item.steel_axe.name=钢斧 -item.steel_boots.name=钢靴子 -item.steel_helmet.name=钢头盔 -item.steel_hoe.name=钢锄 -item.steel_legs.name=钢护腿 -item.steel_pickaxe.name=钢镐 -item.steel_plate.name=钢胸甲 -item.steel_shovel.name=钢锹 -item.steel_sword.name=钢剑 -item.stick_c4.name=C-4炸药棒 -item.stick_dynamite.name=炸药棒 -item.stick_dynamite_fishing.name=捕鱼炸药棒 -item.stick_semtex.name=塞姆汀塑胶炸药棒 -item.stick_tnt.name=TNT棒 -item.stopsign.name=停车标志战斧 -item.sulfur.name=硫粉 -item.survey_scanner.name=勘测扫描仪 -item.syringe_antidote.name=解毒剂 -item.syringe_awesome.name=米青采彡 -item.syringe_empty.name=空注射器 -item.syringe_metal_empty.name=金属注射器 -item.syringe_metal_medx.name=Med-X抗痛宁 -item.syringe_metal_psycho.name=Psycho"捷特" -item.syringe_metal_stimpak.name=治疗针 -item.syringe_metal_super.name=超级治疗针 -item.syringe_mkunicorn.name=独角兽 -item.syringe_poison.name=毒针 -item.syringe_taint.name=污染水注射液 -item.t45_boots.name=T45动力装甲 靴子 -item.t45_helmet.name=T45动力装甲 头盔 -item.t45_kit.name=T45动力装甲套装 -item.t45_legs.name=T45动力装甲 护腿 -item.t45_plate.name=T45动力装甲 胸甲 -item.tank_steel.name=钢罐 -item.tank_waste_0.name=泥浆容器 -item.tank_waste_1.name=泥浆容器 -item.tank_waste_2.name=泥浆容器 -item.tank_waste_3.name=泥浆容器 -item.tank_waste_4.name=泥浆容器 -item.tank_waste_5.name=泥浆容器 -item.tank_waste_6.name=泥浆容器 -item.tank_waste_7.name=泥浆容器 -item.tank_waste_8.name=泥浆容器 -item.telepad.name=传送部件 -item.tem_flakes.name=Tem薄片 -item.template_folder.name=机器模板文件夹 -item.template_folder.desc=机器模板:纸张+染料$流体识别码:铁板+染料$锻模:空白锻模 $警报声轨:绝缘体+钢板 -item.test_nuke_igniter.name=点火器 -item.test_nuke_propellant.name=推进剂 -item.test_nuke_tier1_bullet.name=铀235弹头[1级] -item.test_nuke_tier1_shielding.name=中子反射器[1级] -item.test_nuke_tier1_target.name=次临界铀235靶丸[1级] -item.test_nuke_tier2_bullet.name=MOX弹头[2级] -item.test_nuke_tier2_shielding.name=中子反射器[2级] -item.test_nuke_tier2_target.name=次临界MOX靶丸[2级] -item.thermo_element.name=热电元件 -item.thermo_unit_empty.name=热量分配装置 -item.thermo_unit_endo.name=吸热装置 -item.thermo_unit_exo.name=放热装置 -item.thruster_large.name=大型推进器 -item.thruster_medium.name=中型推进器 -item.thruster_nuclear.name=LV-N核能火箭发动机 -item.thruster_small.name=小型推进器 -item.titanium_axe.name=钛斧 -item.titanium_boots.name=钛靴子 -item.titanium_filter.name=钛过滤器 -item.titanium_helmet.name=钛头盔 -item.titanium_hoe.name=钛锄 -item.titanium_legs.name=钛护腿 -item.titanium_pickaxe.name=钛镐 -item.titanium_plate.name=钛胸甲 -item.titanium_shovel.name=钛锹 -item.titanium_sword.name=钛剑 -item.toothpicks.name=牙签 -item.train.cargo_tram.name=平板载货电车 -item.trenchmaster_boots.name=Trenchmaster的靴子 -item.trenchmaster_helmet.name=Trenchmaster的头盔 -item.trenchmaster_legs.name=Trenchmaster的护腿 -item.trenchmaster_plate.name=Trenchmaster的胸甲 -item.trinitite.name=玻璃石 -item.tritium_deuterium_cake.name=氚氘饼 -item.tritium_deuterium_cake.desc=不是真正的蛋糕,而是很棒的$聚变燃料! -item.tsar_core.name=沙皇炸弹核心 -item.tsar_kit.name=沙皇炸弹 套件 -item.turbine_titanium.name=钛汽轮转子 -item.turbine_tungsten.name=强化汽轮转子 -item.turret_biometry.name=炮塔遥测卡 -item.turret_cheapo_ammo.name=6x24奇普机枪炮台弹药 -item.turret_chip.name=炮塔AI芯片 -item.turret_control.name=炮塔控制器 -item.turret_cwis_ammo.name=近防系统20mm弹药筒 -item.turret_flamer_ammo.name=火焰炮塔燃料箱 -item.turret_heavy_ammo.name=重型机枪炮塔弹药箱 -item.turret_light_ammo.name=轻型机枪炮塔弹药箱 -item.turret_rocket_ammo.name=火箭炮塔弹药 -item.turret_spitfire_ammo.name=防空炮弹 -item.turret_tau_ammo.name=陶子炮塔铀弹药 -item.twinkie.name=小蛋糕 -item.ullapool_caber.name=阿勒浦长木杆 -item.undefined.name=形态未定义物质 -item.upgrade_5g.name=5G辐射发射器升级 -item.upgrade_afterburn_1.name=一级粉色机器升级 -item.upgrade_afterburn_2.name=二级粉色机器升级 -item.upgrade_afterburn_3.name=三级粉色机器升级 -item.upgrade_centrifuge.name=采矿激光升级-自动离心 -item.upgrade_crystallizer.name=采矿激光升级-自动结晶 -item.upgrade_effect_1.name=一级绿色机器升级 -item.upgrade_effect_2.name=二级绿色机器升级 -item.upgrade_effect_3.name=三级绿色机器升级 -item.upgrade_ejector_1.name=一级弹射速度升级 -item.upgrade_ejector_2.name=二级弹射速度升级 -item.upgrade_ejector_3.name=三级弹射速度升级 -item.upgrade_fortune_1.name=一级紫色机器升级 -item.upgrade_fortune_2.name=二级紫色机器升级 -item.upgrade_fortune_3.name=三级紫色机器升级 -item.upgrade_gc_speed.name=气体离心机超频升级 -item.upgrade_health.name=粉色力场发生器升级 -item.upgrade_muffler.name=消音器 -item.upgrade_nullifier.name=采矿激光升级-自动销毁 -item.upgrade_overdrive_1.name=一级超速传动机器升级 -item.upgrade_overdrive_2.name=二级超速传动机器升级 -item.upgrade_overdrive_3.name=三级超速传动机器升级 -item.upgrade_power_1.name=一级蓝色机器升级 -item.upgrade_power_2.name=二级蓝色机器升级 -item.upgrade_power_3.name=三级蓝色机器升级 -item.upgrade_radius.name=青色力场发生器升级 -item.upgrade_screm.name=采矿激光升级-目 力 科 学 家 -item.upgrade_shredder.name=采矿激光升级-自动粉碎 -item.upgrade_smelter.name=采矿激光升级-自动熔炼 -item.upgrade_speed_1.name=一级红色机器升级 -item.upgrade_speed_2.name=二级红色机器升级 -item.upgrade_speed_3.name=三级红色机器升级 -item.upgrade_stack_1.name=一级堆叠弹出升级 -item.upgrade_stack_2.name=二级堆叠弹出升级 -item.upgrade_stack_3.name=三级堆叠弹出升级 -item.upgrade_template.name=机器升级模板 -item.volcanic_pickaxe.name=熔岩镐 -item.volcanic_axe.name=熔岩斧 -item.wand_d.name=调试魔杖 -item.wand_k.name=建筑魔杖 -item.wand_s.name=结构魔杖 -item.structure_custommachine.name=自定义机器结构输出杖 -item.warhead_buster_large.name=大型掩体破坏弹头 -item.warhead_buster_medium.name=中型掩体破坏弹头 -item.warhead_buster_small.name=小型掩体破坏弹头 -item.warhead_cluster_large.name=大型集束弹头 -item.warhead_cluster_medium.name=中型集束弹头 -item.warhead_cluster_small.name=小型集束弹头 -item.warhead_generic_large.name=大型弹头 -item.warhead_generic_medium.name=中型弹头 -item.warhead_generic_small.name=小型弹头 -item.warhead_incendiary_large.name=大型燃烧弹头 -item.warhead_incendiary_medium.name=中型燃烧弹头 -item.warhead_incendiary_small.name=小型燃烧弹头 -item.warhead_mirv.name=热核弹头 -item.warhead_mirvlet.name=MIRV -item.warhead_nuclear.name=核弹头 -item.warhead_thermo_endo.name=吸热弹头 -item.warhead_thermo_exo.name=放热弹头 -item.warhead_volcano.name=构造弹头 -item.waste_mox.name=枯竭MOX燃料 -item.waste_natural_uranium.name=枯竭天然铀燃料 -item.waste_plate_mox.name=枯竭MOX 板状燃料 -item.waste_plate_pu238be.name=枯竭钚238-铍 板状燃料 -item.waste_plate_pu239.name=枯竭高浓度钚-239 板状燃料 -item.waste_plate_ra226be.name=枯竭镭226-铍 板状燃料 -item.waste_plate_sa326.name=枯竭高浓度Sa326 板状燃料 -item.waste_plate_u233.name=枯竭高浓度铀-233 板状燃料 -item.waste_plate_u235.name=枯竭高浓度铀-235 板状燃料 -item.waste_plutonium.name=枯竭钚燃料 -item.waste_schrabidium.name=枯竭Sa326燃料 -item.waste_thorium.name=枯竭钍燃料 -item.waste_u235.name=枯竭铀-235燃料 -item.waste_u233.name=枯竭铀-233燃料 -item.waste_uranium.name=枯竭铀燃料 -item.waste_zfb_mox.name=枯竭的ZFB MOX燃料 -item.watch.name=破旧怀表 -item.watch.desc=一块蓝色的小怀表$玻璃上有一些裂缝,还有一些碎片不见了$指针定格在了2点34分。 -item.watz_pellet.boron.name=硼吸收靶丸 -item.watz_pellet.du.name=贫铀吸收靶丸 -item.watz_pellet.hes.name=HES Watz靶丸 -item.watz_pellet.lead.name=铅吸收靶丸 -item.watz_pellet.les.name=LES Watz靶丸 -item.watz_pellet.mes.name=MES Watz靶丸 -item.watz_pellet.mep.name=MEP Watz靶丸 -item.watz_pellet.meu.name=MEU Watz靶丸 -item.watz_pellet.nqd.name=浓缩硅岩金属 Watz靶丸 -item.watz_pellet.nqr.name=硅岩金属化合物 Watz靶丸 -item.watz_pellet.hen.name=HEN Watz靶丸 -item.watz_pellet.schrabidium.name=Sa326 Watz靶丸 -item.watz_pellet_depleted.boron.name=硼吸收靶丸(枯竭) -item.watz_pellet_depleted.du.name=贫铀吸收靶丸(枯竭) -item.watz_pellet_depleted.hes.name=HES Watz靶丸(枯竭) -item.watz_pellet_depleted.lead.name=铅吸收靶丸(枯竭) -item.watz_pellet_depleted.les.name=LES Watz靶丸(枯竭) -item.watz_pellet_depleted.mes.name=MES Watz靶丸(枯竭) -item.watz_pellet_depleted.mep.name=MEP Watz靶丸(枯竭) -item.watz_pellet_depleted.meu.name=MEU Watz靶丸(枯竭) -item.watz_pellet_depleted.nqd.name=浓缩硅岩金属 Watz靶丸(枯竭) -item.watz_pellet_depleted.nqr.name=硅岩金属化合物 Watz靶丸(枯竭) -item.watz_pellet_depleted.hen.name=HEN Watz靶丸(枯竭) -item.watz_pellet_depleted.schrabidium.name=Sa326 Watz靶丸(枯竭) -item.weapon_bat.name=板球棒 -item.weapon_bat_nail.name=板上钉钉 -item.weapon_golf_club.name=黑手党快乐杆 -item.weapon_pipe_lead.name=手动覆盖控制 -item.weapon_pipe_rusty.name=姿态调节器 -item.weapon_saw.name=肢解骨锯 -item.weaponized_starblaster_cell.name=§c星际爆能电池§r -item.wd40.name=VT-40 -item.wild_p.name=野生珀伽索斯干威士忌 -item.wings_limp.name=无力之翼 -item.wings_murk.name=暗黑之翼 -item.wire_advanced_alloy.name=超导体 -item.wire_aluminium.name=铝线 -item.wire_copper.name=铜线 -item.wire_dense.name=致密%s线 -item.wire_fine.name=%s线 -item.wire_gold.name=金线 -item.wire_magnetized_tungsten.name=4000K高温超导体 -item.wire_red_copper.name=紫铜线 -item.wire_schrabidium.name=Sa326线 -item.wire_tungsten.name=钨线 -item.wiring_red_copper.name=电缆卷 -item.wood_gavel.name=木槌 -item.wrench.name=管道扳手 -item.wrench_archineer.name=Archineer扳手 -item.wrench_flipped.name=刺刀扳手 -item.xanax.name=NAXA 抗迪伽马药物 -item.xanax.desc=移除500mDRX迪伽马辐射 -item.zirconium_legs.name=锆质护腿 - -itemGroup.tabBlocks=HBM 矿石和方块 -itemGroup.tabConsumable=HBM 食物和装备 -itemGroup.tabControl=HBM 机器项目和燃料 -itemGroup.tabMachine=HBM 机器 -itemGroup.tabMissile=HBM 导弹和卫星 -itemGroup.tabNuke=HBM 炸弹 -itemGroup.tabParts=HBM 资源和零件 -itemGroup.tabTemplate=HBM 模板 -itemGroup.tabTest=HBM的核科技mod测试项[S166、Bismarck、Nukesteve、牛牛联合汉化] -itemGroup.tabWeapon=HBM 武器和炮塔 - -potion.hbm_bang=! ! ! -potion.hbm_death=重度突变 -potion.hbm_lead=铅中毒 -potion.hbm_mutation=变异 -potion.hbm_phosphorus=磷烧伤 -potion.hbm_potionsickness=药水病 -potion.hbm_radaway=消辐宁 -potion.hbm_radiation=辐射 -potion.hbm_radx=抗辐射 -potion.hbm_stability=稳定 -potion.hbm_taint=污染 -potion.hbm_telekinesis=! ! ! - -radar.clearMap=清空地图 -radar.detectMissiles=探测导弹 -radar.detectPlayers=探测玩家 -radar.detectShells=探测炮弹 -radar.redMode=红石控制模式$开启: 基于导弹距离输出红石信号$关闭: 基于导弹级别输出红石信号 -radar.showMap=显示地图 -radar.smartMode=智能模式$有红石信号时忽略上升段的导弹 -radar.toggleGui=切换视图 - -radar.target.abm=反弹道导弹 -radar.target.custom10=10号定制导弹 -radar.target.custom1015=10/15号定制导弹 -radar.target.custom15=15号定制导弹 -radar.target.custom1520=15/20号定制导弹 -radar.target.custom20=20号定制导弹 -radar.target.doomsday=末日导弹 -radar.target.shuttle=万金罗宾航天飞机 -radar.target.tier0=0级导弹 -radar.target.tier1=1级导弹 -radar.target.tier2=2级导弹 -radar.target.tier3=3级导弹 -radar.target.tier4=4级导弹 - -rbmk.heat=柱体温度: %s -rbmk.boiler.water=供水速率: %s / %s -rbmk.boiler.steam=蒸汽产生速率: %s / %s -rbmk.boiler.type=蒸汽压缩等级: %s -rbmk.console.assign=将选定列分配给屏幕#%s -rbmk.console.none=Off -rbmk.console.col_temp=监测平均柱温 -rbmk.console.rod_extraction=监控平均控制棒抽出量 -rbmk.console.fuel_depletion=监测平均燃料消耗 -rbmk.console.fuel_poison=监测平均氙中毒程度 -rbmk.console.fuel_temp=监测平均燃料温度 -rbmk.control.level=%s -rbmk.control.red=§c红色组 -rbmk.control.yellow=§e黄色组 -rbmk.control.green=§a绿色组 -rbmk.control.blue=§1蓝色组 -rbmk.control.purple=§5紫色组 -rbmk.moderated=慢化剂 -rbmk.rod.depletion=燃料消耗: %s -rbmk.rod.xenon=氙元素堆积程度: %s -rbmk.rod.coreTemp=核心温度: %s -rbmk.rod.skinTemp=表面温度: %s / %s -rbmk.screen.core=核心:%s -rbmk.screen.depletion=消耗: %s -rbmk.screen.rod=控制:%s -rbmk.screen.temp=温度:%s -rbmk.screen.xenon=氙:%s - -shape.billet=坯料 -shape.blade=扇片 -shape.blades=粉碎机刀片 -shape.block=块 -shape.dust=粉末 -shape.dusttiny=小撮粉末 -shape.hull_big=大型外壳 -shape.hull_small=小型外壳 -shape.ingot=锭 -shape.nugget=粒 -shape.quantum=量子 -shape.quart=四分之一块 -shape.ntmpipe=管 -shape.plate=板 -shape.plateTriple=铸造板 -shape.shell=外壳 -shape.stamp=锻模 -shape.wireFine=线 -shape.wireDense=致密线 -shape.wiresDense=致密线 - -soundCategory.ntmMachines=NTM机器 - -tile.absorber.name=辐射吸收器 -tile.absorber_green.name=高级辐射吸收器 -tile.absorber_pink.name=精英辐射吸收器 -tile.absorber_red.name=增强型辐射吸收器 -tile.acid_block.name=酸 -tile.ams_base.name=AMS基座 [开发中] -tile.ams_emitter.name=AMS发射极 [开发中] -tile.ams_limiter.name=AMS稳能器 [开发中] -tile.ancient_scrap.name=古代废金属 -tile.anvil_arsenic_bronze.name=砷青铜砧 -tile.anvil_bismuth.name=铋砧 -tile.anvil_bismuth_bronze.name=铋青铜砧 -tile.anvil_desh.name=Desh砧 -tile.anvil_dnt.name=双聚中子态素砧 -tile.anvil_ferrouranium.name=铀铁合金砧 -tile.anvil_iron.name=铁砧 -tile.anvil_lead.name=铅砧 -tile.anvil_meteorite.name=陨石砧 -tile.anvil_murky.name=暗黑砧 -tile.anvil_osmiridium.name=铱锇合金砧 -tile.anvil_saturnite.name=土星砧 -tile.anvil_schrabidate.name=Sa酸铁砧 -tile.anvil_starmetal.name=星辉金属砧 -tile.anvil_steel.name=钢砧 -tile.ash_digamma.name=灰烬 -tile.asphalt.name=沥青 -tile.asphalt_stairs.name=沥青楼梯 -tile.asphalt_light.name=发光沥青 -tile.barbed_wire.name=带刺铁丝网 -tile.barbed_wire_acid.name=腐蚀铁丝网 -tile.barbed_wire_fire.name=烈焰铁丝网 -tile.barbed_wire_poison.name=剧毒铁丝网 -tile.barbed_wire_ultradeath.name=辐射铁丝网 -tile.barbed_wire_wither.name=凋零铁丝网 -tile.barrel_antimatter.name=磁约束反物质容器 -tile.barrel_corroded.name=被腐蚀的桶 -tile.barrel_iron.name=铁桶 -tile.barrel_plastic.name=安全桶 -tile.barrel_steel.name=钢桶 -tile.barrel_tcalloy.name=锝-钢合金桶 -tile.barricade.name=沙袋 -tile.basalt.name=玄武岩 -tile.basalt_brick.name=玄武岩砖 -tile.basalt_polished.name=抛光玄武岩 -tile.basalt_smooth.name=平滑玄武岩 -tile.basalt_tiles.name=玄武岩砖 -tile.blast_door.name=防爆闸门 -tile.block_actinium.name=锕块 -tile.block_advanced_alloy.name=高级合金块 -tile.block_aluminium.name=铝块 -tile.block_asbestos.name=石棉块 -tile.block_australium.name=奥斯块 -tile.block_bakelite.name=电木块 -tile.block_beryllium.name=铍块 -tile.block_bismuth.name=铋块 -tile.block_boron.name=硼块 -tile.block_c4.name=C-4块 -tile.block_cadmium.name=镉块 -tile.block_cap_fritz.name=弗里茨瓶盖方块 -tile.block_cap_korl.name=Korl瓶盖方块 -tile.block_cap_nuka.name=核子可乐瓶盖方块 -tile.block_cap_quantum.name=樱桃味核子可乐瓶盖方块 -tile.block_cap_rad.name=辐射 S~核子可乐瓶盖方块 -tile.block_cap_sparkle.name=核子可乐瓶盖方块 -tile.block_cap_star.name=夕阳沙士星星瓶盖方块 -tile.block_cap_sunset.name=夕阳沙士瓶盖方块 -tile.block_cdalloy.name=镉钢块 -tile.block_cobalt.name=钴块 -tile.block_coke.coal.name=煤焦炭块 -tile.block_coke.lignite.name=褐煤焦炭块 -tile.block_coke.petroleum.name=石油焦炭块 -tile.block_coltan.name=钶钽铁矿块 -tile.block_combine_steel.name=CMB钢块 -tile.block_copper.name=铜块 -tile.block_corium.name=熔融堆芯冷凝物 -tile.block_corium_cobble.name= 熔融物凝固石 -tile.block_daffergon.name=达夫贡块 -tile.block_desh.name=Desh块 -tile.block_dineutronium.name=双聚中子态素块 -tile.block_dura_steel.name=强化高速钢块 -tile.block_electrical_scrap.name=电子废料块 -tile.block_euphemium.name=Ep块 -tile.block_euphemium_cluster.name=Ep刻蚀Sa326团 -tile.block_fallout.name=辐射尘块 -tile.block_fiberglass.name=玻璃纤维卷 -tile.block_fluorite.name=氟石块 -tile.block_foam.name=泡沫 -tile.block_insulator.name=绝缘卷 -tile.block_graphite.name=石墨块 -tile.block_graphite_detector.name=反应堆中子探测棒 -tile.block_graphite_drilled.name=钻孔石墨 -tile.block_graphite_fuel.name=反应堆燃料 -tile.block_graphite_lithium.name=反应堆锂燃料 -tile.block_graphite_plutonium.name=反应堆燃料(增殖) -tile.block_graphite_rod.name=反应堆控制棒 -tile.block_graphite_source.name=反应堆中子源 -tile.block_graphite_tritium.name=反应堆锂燃料(增殖) -tile.block_lead.name=铅块 -tile.block_lanthanium.name=镧块 -tile.block_lithium.name=锂块 -tile.block_magnetized_tungsten.name=磁化钨块 -tile.block_meteor.name=陨石块 -tile.block_meteor_broken.name=破碎的陨石块 -tile.block_meteor_cobble.name=陨石 -tile.block_meteor_molten.name=高温陨石 -tile.block_meteor_treasure.name=宝藏陨石块 -tile.block_mox_fuel.name=MOX燃料块 -tile.block_neptunium.name=镎块 -tile.block_niter.name=硝石块 -tile.block_niter_reinforced.name=硝石加固块 -tile.block_niobium.name=铌块 -tile.block_plutonium.name=钚块 -tile.block_plutonium_fuel.name=钚燃料块 -tile.block_polonium.name=钋块 -tile.block_polymer.name=聚合物块 -tile.block_pu_mix.name=反应堆级钚块 -tile.block_pu238.name=钚-238块 -tile.block_pu239.name=钚-239块 -tile.block_pu240.name=钚-240块 -tile.block_ra226.name=镭-226块 -tile.block_red_copper.name=紫铜块 -tile.block_red_phosphorus.name=红磷块 -tile.block_reiium.name=雷恩块 -tile.block_rubber.name=橡胶块 -tile.block_schrabidate.name=Sa酸铁块 -tile.block_schrabidium.name=Sa326块 -tile.block_schrabidium_cluster.name=Sa326团 -tile.block_schrabidium_fuel.name=Sa326燃料块 -tile.block_schraranium.name=低丰度Sa326块 -tile.block_scrap.name=废品块 -tile.block_semtex.name=塞姆汀块 -tile.block_slag.name=矿渣块 -tile.block_smore.name=S'more块 -tile.block_solinium.name=Sa327块 -tile.block_starmetal.name=星辉块 -tile.block_steel.name=钢块 -tile.block_sulfur.name=硫磺块 -tile.block_tantalium.name=钽块 -tile.block_tcalloy.name=锝钢块 -tile.block_thorium.name=钍块 -tile.block_thorium_fuel.name=钍燃料块 -tile.block_titanium.name=钛块 -tile.block_trinitite.name=玻璃石块 -tile.block_tritium.name=氚单元块 -tile.block_tungsten.name=钨块 -tile.block_u233.name=铀-233块 -tile.block_u235.name=铀-235块 -tile.block_u238.name=铀-238块 -tile.block_unobtainium.name=难得素块 -tile.block_uranium.name=铀块 -tile.block_uranium_fuel.name=铀燃料块 -tile.block_verticium.name=韦德赛块 -tile.block_waste.name=核废料块 -tile.block_waste_painted.name=带标志的核废料块 -tile.block_waste_vitrified.name=玻璃化核废料块 -tile.block_weidanium.name=魏丹块 -tile.block_white_phosphorus.name=白磷块 -tile.block_yellowcake.name=黄饼块 -tile.block_zirconium.name=锆块 -tile.boat.name=船 -tile.bobblehead.name=Bob的魔法娃娃 -tile.bomb_multi.name=多功能炸弹 -tile.bomber.name=坠毁轰炸机 -tile.book_guide.name=HBM的核科技mod手册[遗留] -tile.boxcar.name=车厢 -tile.brick_asbestos.name=石棉砖块 -tile.brick_asbestos_stairs.name=石棉砖楼梯 -tile.brick_compound.name=复合网格砖块 -tile.brick_compound_stairs.name=复合网格砖楼梯 -tile.brick_concrete.name=混凝土砖块 -tile.brick_concrete_stairs.name=混凝土砖楼梯 -tile.brick_concrete_broken.name=破碎混凝土砖块 -tile.brick_concrete_broken_stairs.name=破碎混凝土砖楼梯 -tile.brick_concrete_cracked.name=开裂混凝土砖块 -tile.brick_concrete_cracked_stairs.name=开裂混凝土砖楼梯 -tile.brick_concrete_marked.name=标记混凝土砖 -tile.brick_concrete_mossy.name=苔混凝土砖块 -tile.brick_concrete_mossy_stairs.name=苔混凝土砖楼梯 -tile.brick_ducrete.name=高密度贫铀混凝土砖块 -tile.brick_ducrete_stairs.name=高密度贫铀混凝土砖楼梯 -tile.brick_dungeon.name=硒铜砖 -tile.brick_dungeon_circle.name=圆环硒铜块 -tile.brick_dungeon_flat.name=硒铜块 -tile.brick_dungeon_tile.name=硒铜瓦 -tile.brick_fire.name=耐火砖块 -tile.brick_fire_stairs.name=耐火砖楼梯 -tile.brick_jungle.name=硫砷钢砖块 -tile.brick_jungle_circle.name=机械师之环 -tile.brick_jungle_cracked.name=开裂硫砷钢砖块 -tile.brick_jungle_fragile.name=粉碎硫砷钢砖块 -tile.brick_jungle_glyph.name=硫砷钢石雕砖块 -tile.brick_jungle_lava.name=岩浆硫砷钢砖块 -tile.brick_jungle_mystic.name=奥术硫砷钢砖块 -tile.brick_jungle_ooze.name=放射硫砷钢砖块 -tile.brick_jungle_trap.name=陷阱硫砷钢砖块 -tile.brick_light.name=轻质砖块 -tile.brick_light_stairs.name=轻质砖楼梯 -tile.brick_obsidian.name=黑曜石砖块 -tile.brick_obsidian_stairs.name=黑曜石砖楼梯 -tile.brick_red.name=红房间砖块 -tile.brick_slab.brick_asbestos.name=石棉砖台阶 -tile.brick_slab.brick_compound.name=复合网格砖台阶 -tile.brick_slab.brick_fire.name=耐火砖台阶 -tile.brick_slab.brick_light.name=轻质砖台阶 -tile.brick_slab.brick_obsidian.name=黑曜石砖台阶 -tile.brick_slab.reinforced_brick.name=强化石头台阶 -tile.brick_slab.reinforced_stone.name=致密石头台阶 -tile.broadcaster_pc.name=腐败广播 -tile.burning_earth.name=燃烧草地 -tile.c4.name=C-4 -tile.cable_detector.name=红石电源开关 -tile.cable_diode.name=紫铜二极管 -tile.cable_switch.name=电源开关 -tile.capacitor_bus.name=电容总线 -tile.capacitor_bus.desc=电容器的输出方块$可以连成一条直线 -tile.capacitor_copper.name=铜电容 -tile.capacitor_gold.name=金电容 -tile.capacitor_niobium.name=铌电容 -tile.capacitor_schrabidate.name=Sa酸铁电容 -tile.capacitor_tantalium.name=钽电容 -tile.capacitor.desc=输入:顶部$输出:底部,通过电容总线 -tile.charge_c4.name=炸药包 -tile.charge_dynamite.name=定时炸弹 -tile.charge_miner.name=定时采矿炸药 -tile.charge_semtex.name=塞姆汀采矿炸药 -tile.charger.name=充电站 -tile.cheater_virus.name=冻结Ep -tile.cheater_virus_seed.name=不稳定Ep Schrabide块 -tile.chimney_brick.name=烟囱 -tile.chimney_brick.desc=使用排气管连接污染机器$减少75%的污染排放 -tile.chimney_industrial.name=工业烟囱 -tile.chimney_industrial.desc=使用排气管连接污染机器$减少90%的污染排放 -tile.chlorine_gas.name=氯气 -tile.cluster_aluminium.name=铝矿簇 -tile.cluster_copper.name=铜矿簇 -tile.cluster_depth_iron.name=深层铁矿簇 -tile.cluster_depth_titanium.name=深层钛矿簇 -tile.cluster_depth_tungsten.name=深层钨矿簇 -tile.cluster_iron.name=铁矿簇 -tile.cluster_titanium.name=钛矿簇 -tile.custom_machine_anchor.name=自定义机器结构定位锚 -tile.cm_block.alloy.name=高级合金机器外壳 -tile.cm_block.desh.name=Desh机器外壳 -tile.cm_block.steel.name=钢制机器外壳 -tile.cm_block.tcalloy.name=锝钢机器外壳 -tile.cm_circuit.aluminium.name=一级电路块 -tile.cm_circuit.copper.name=二级电路块 -tile.cm_circuit.gold.name=四级电路块 -tile.cm_circuit.red_copper.name=三级电路块 -tile.cm_circuit.schrabidium.name=五级电路块 -tile.cm_engine.bismuth.name=铋电机组 -tile.cm_engine.desh.name=Desh电机组 -tile.cm_engine.standard.name=电机组 -tile.cm_flux.name=中子接收器 -tile.cm_heat.name=热量接收器 -tile.cm_port.alloy.name=高级合金端口 -tile.cm_port.desh.name=Desh端口 -tile.cm_port.steel.name=钢制端口 -tile.cm_port.tcalloy.name=锝钢端口 -tile.cm_sheet.alloy.name=高级合金建筑板 -tile.cm_sheet.desh.name=Desh建筑板 -tile.cm_sheet.steel.name=钢建筑板 -tile.cm_sheet.tcalloy.name=锝钢建筑板 -tile.cm_tank.alloy.name=高级合金储罐 -tile.cm_tank.desh.name=Desh储罐 -tile.cm_tank.steel.name=钢制储罐 -tile.cm_tank.tcalloy.name=锝钢储罐 -tile.cmb_brick.name=CMB钢瓦块 -tile.cmb_brick_reinforced.name=加固CMB钢砖块 -tile.compact_launcher.name=紧凑型发射台 -tile.concrete.name=混凝土瓦块 -tile.concrete_asbestos.name=石棉混凝土 -tile.concrete_asbestos_stairs.name=石棉混凝土楼梯 -tile.concrete_brick_slab.brick_concrete.name=混凝土砖台阶 -tile.concrete_brick_slab.brick_concrete_broken.name=破碎混凝土砖台阶 -tile.concrete_brick_slab.brick_concrete_cracked.name=开裂混凝土砖台阶 -tile.concrete_brick_slab.brick_concrete_mossy.name=苔混凝土砖台阶 -tile.concrete_brick_slab.brick_ducrete.name=高密度贫铀混凝土砖台阶 -tile.concrete_colored.black.name=黑色混凝土 -tile.concrete_colored.blue.name=蓝色混凝土 -tile.concrete_colored.brown.name=棕色混凝土 -tile.concrete_colored.cyan.name=青色混凝土 -tile.concrete_colored.gray.name=灰色混凝土 -tile.concrete_colored.green.name=绿色混凝土 -tile.concrete_colored.lightBlue.name=淡蓝色混凝土 -tile.concrete_colored.lime.name=黄绿色混凝土 -tile.concrete_colored.magenta.name=品红色混凝土 -tile.concrete_colored.orange.name=橙色混凝土 -tile.concrete_colored.pink.name=粉色混凝土 -tile.concrete_colored.purple.name=紫色混凝土 -tile.concrete_colored.red.name=红色混凝土 -tile.concrete_colored.silver.name=淡灰色混凝土 -tile.concrete_colored.white.name=白色混凝土 -tile.concrete_colored.yellow.name=黄色混凝土 -tile.concrete_colored_ext.bronze.name=建筑工指定混凝土-青铜板材 -tile.concrete_colored_ext.hazard.name=建筑工指定混凝土-危险地带 -tile.concrete_colored_ext.indigo.name=建筑工指定混凝土-深靛蓝 -tile.concrete_colored_ext.machine.name=建筑工指定混凝土-工业风 -tile.concrete_colored_ext.machine_stripe.name=建筑工指定混凝土-工业条纹 -tile.concrete_colored_ext.pink.name=建筑工指定混凝土-猛男粉 -tile.concrete_colored_ext.purple.name=建筑工指定混凝土-神秘紫 -tile.concrete_colored_ext.sand.name=建筑工指定混凝土-沙漠风暴 -tile.concrete_pillar.name=钢筋混凝土柱 -tile.concrete_slab.asphalt.name=沥青台阶 -tile.concrete_slab.concrete.name=混凝土瓦块台阶 -tile.concrete_slab.concrete_asbestos.name=石棉混凝土台阶 -tile.concrete_slab.concrete_smooth.name=混凝土台阶 -tile.concrete_slab.ducrete.name=高密度贫铀混凝土瓷砖台阶 -tile.concrete_slab.ducrete_smooth.name=高密度贫铀混凝土台阶 -tile.concrete_smooth.name=混凝土 -tile.concrete_smooth_stairs.name=混凝土楼梯 -tile.concrete_stairs.name=混凝土瓦块楼梯 -tile.concrete_super.name=über混凝土 -tile.concrete_super_broken.name=发霉的碎片 -tile.conveyor.name=输送带 -tile.conveyor.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 -tile.conveyor_chute.name=输送带滑槽 -tile.conveyor_chute.desc=向下移动物品$最底部的滑槽将起到普通传送带的作用 -tile.conveyor_double.name=双轨道输送带 -tile.conveyor_double.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 -tile.conveyor_express.name=快速输送带 -tile.conveyor_express.desc=快速移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按Shift键转弯 -tile.conveyor_lift.name=垂直输送带 -tile.conveyor_lift.desc=向上移动物品$至少需要两个块才能正常工作 -tile.conveyor_triple.name=三轨道输送带 -tile.conveyor_triple.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 -tile.corium_block.name=堆芯熔融物 -tile.crane_boxer.name=输送带打包机 -tile.crane_boxer.desc=将可配置数量的堆叠装载到沿着传送带移动的箱子中$用螺丝刀右键单击以设置输入侧$用螺丝起子平移单击以设置输出侧$单击两次以设置相反侧 -tile.crane_extractor.name=输送带提取器 -tile.crane_extractor.desc=从库存中取出物品并将其放置在传送带上$最多有9个带黑白名单的过滤器插槽$用螺丝刀右键单击以设置输出侧$手持螺丝刀按住Shift单击以设置输入侧$单击两次以设置相反侧 -tile.crane_grabber.name=输送带抓斗 -tile.crane_grabber.desc=从经过的输送带中取出物品并将其放入容器$将只从最近的通道中取出物品$最多有9个带黑白名单的过滤槽$用螺丝刀右键单击以设置输入侧$用螺丝起子平移单击以设置输出侧$单击两次以设置对侧 -tile.crane_inserter.name=输送带导入器 -tile.crane_partitioner.name=酸化器输入分隔器 -tile.crane_partitioner.desc=接受并存储至多9种输入矿物酸化器的物品$并在物品数量达到配方要求时将其输出$无配方物品也会被存储,需要从侧面导出 -tile.crane_inserter.desc=接受输送带上的物品并将其放入容器中$用螺丝刀右键单击以设置输入侧$用螺丝刀单击以设置输出侧$单击两次以设置相反侧 -tile.crane_router.name=输送带分拣机 -tile.crane_router.desc=根据定义的条件对项目排序$侧面可以定义为黑名单、白名单或通配符$只有在没有其他筛选器匹配的情况下才选择通配符侧面 -tile.crane_splitter.name=输送带分离器 -tile.crane_splitter.desc=将物品分开并均匀堆放在两条传送带上$其本身就是一条传送带,因此它可以直接输入到插入器或分拣器中 -tile.crane_unboxer.name=输送带解包机 -tile.crane_unboxer.desc=接收打包好的物品并解包$用螺丝刀右键单击以设置输出侧$手持螺丝刀按住Shift单击以设置输入侧$单击两次以设置相反侧 -tile.crashed_bomb.name=哑弹 -tile.crate.name=补给箱 -tile.crate_ammo.name=星辉补给箱 -tile.crate_can.name=罐头补给箱 -tile.crate_desh.name=Desh板条箱 -tile.crate_iron.name=铁箱 -tile.crate_jungle.name=硫砷钢箱 -tile.crate_lead.name=危险品补给箱 -tile.crate_metal.name=机器补给箱 -tile.crate_red.name=红色补给箱 -tile.crate_steel.name=钢箱 -tile.crate_template.name=模板箱 -tile.crate_tungsten.name=钨箱 -tile.crate_weapon.name=武器补给箱 -tile.crystal_hardened.name=硬化黑水晶 -tile.crystal_pulsar.name=脉动水晶 -tile.crystal_virus.name=黑水晶 -tile.deco_aluminium.name=铝装饰块 -tile.deco_asbestos.name=石棉瓦 -tile.deco_beryllium.name=铍装饰块 -tile.deco_computer.ibm_300pl.name=IBM个人电脑300PL -tile.deco_emitter.name=装饰性发光体 -tile.deco_crt.name=老CRT显示屏 -tile.deco_lead.name=铅装饰块 -tile.deco_rbmk.name=RBMK装饰块 -tile.deco_rbmk_smooth.name=平滑RBMK装饰块 -tile.deco_red_copper.name=紫铜装饰块 -tile.deco_pipe.name=钢制管道 -tile.deco_pipe_rusted.name=生锈的钢制管道 -tile.deco_pipe_green.name=绿色钢制管道 -tile.deco_pipe_green_rusted.name=生锈的绿色钢制管道 -tile.deco_pipe_red.name=红色钢制管道 -tile.deco_pipe_marked.name=气体管道 -tile.deco_pipe_framed.name=钢制管道 (镶框) -tile.deco_pipe_framed_rusted.name=生锈的钢制管道 (镶框) -tile.deco_pipe_framed_green.name=绿色钢制管道 (镶框) -tile.deco_pipe_framed_green_rusted.name=生锈的绿色钢制管道 (镶框) -tile.deco_pipe_framed_red.name=红色钢制管道 (镶框) -tile.deco_pipe_framed_marked.name=气体管道 (镶框) -tile.deco_pipe_quad.name=钢制管道束 -tile.deco_pipe_quad_rusted.name=生锈的钢制管道束 -tile.deco_pipe_quad_green.name=绿色钢制管道束 -tile.deco_pipe_quad_green_rusted.name=生锈的绿色钢制管道束 -tile.deco_pipe_quad_red.name=红色钢制管道束 -tile.deco_pipe_quad_marked.name=气体管道束 -tile.deco_pipe_rim.name=钢制管道 (镶边) -tile.deco_pipe_rim_rusted.name=生锈的钢制管道 (镶边) -tile.deco_pipe_rim_green.name=绿色钢制管道 (镶边) -tile.deco_pipe_rim_green_rusted.name=生锈的绿色钢制管道 (镶边) -tile.deco_pipe_rim_red.name=红色钢制管道 (镶边) -tile.deco_pipe_rim_marked.name=气体管道 (镶边) -tile.deco_steel.name=钢装饰块 -tile.deco_titanium.name=钛装饰块 -tile.deco_toaster.name=坏掉的烤面包机 -tile.deco_tungsten.name=钨装饰块 -tile.decon.name=玩家去污器 -tile.depth_brick.name=深层岩石砖 -tile.depth_dnt.name=DNT加固深层岩石砖 -tile.depth_nether_brick.name=下界深层岩石砖 -tile.depth_nether_tiles.name=下界深层岩石瓷砖 -tile.depth_tiles.name=深层岩石瓷砖 -tile.det_charge.name=炸药 -tile.det_cord.name=炸药引信 -tile.det_miner.name=采矿炸药 -tile.det_nuke.name=核炸药 -tile.dfc_core.name=暗核聚变堆核心 -tile.dfc_emitter.name=DFC发射器 -tile.dfc_injector.name=DFC燃料喷射器 -tile.dfc_receiver.name=DFC接收器 -tile.dfc_stabilizer.name=DFC稳定器 -tile.dirt_dead.name=泥渣 -tile.dirt_oily.name=油泥 -tile.drill_pipe.name=钻杆 -tile.drone_crate.name=运输无人机坞 -tile.drone_crate.desc=运输无人机的装货点和卸货点$也作为航路点使用, 需要使用运输无人机链接器与其他航路点链接$无人机必须从较高角度接近此方块,否则会被卡住 -tile.drone_crate_provider.name=物流供应箱 -tile.drone_crate_provider.desc=向物流网络提供物品$物流无人机会尝试将物品从物流供应箱移至物流请求箱 -tile.drone_crate_requester.name=物流请求箱 -tile.drone_crate_requester.desc=从物流网络请求物品$若物品栏内没有标记的物品,则会请求该物品 -tile.drone_dock.name=物流无人机坞 -tile.drone_dock.desc=物流无人机的生成点$只能检测5区块半径内的物流供应箱和物流请求箱$每个连接中物流无人机最多跟随10个路径点 -tile.drone_waypoint.name=运输无人机航路点 -tile.drone_waypoint.desc=运输无人机的航路点$使用运输无人机链接器设置路径$按顺序单击每个航路点和坞即可创建路径$Shift+右键单击以清除保存的位置$右键单击或Shift+右键单击航路点以更改航路点的高度偏移 -tile.drone_waypoint_request.name=物流无人机航路点 -tile.door_bunker.name=仓门 -tile.door_metal.name=金属门 -tile.door_office.name=办公室门 -tile.door_red.name=红门 -tile.ducrete.name=高密度贫铀混凝土瓷砖 -tile.ducrete_stairs.name=高密度贫铀混凝土瓷砖楼梯 -tile.ducrete_smooth.name=高密度贫铀混凝土 -tile.ducrete_smooth_stairs.name=高密度贫铀混凝土楼梯 -tile.dummy_block.name=虚拟方块 -tile.dummy_port.name=虚拟方块[电力接口] -tile.dungeon_chain.name=金属链 -tile.dynamite.name=炸药 -tile.emp_bomb.name=EMP炸弹 -tile.factory_advanced_conductor.name=高级工厂电力端口 -tile.factory_advanced_core.name=高级工厂核心组件 -tile.factory_advanced_furnace.name=高级工厂端口 -tile.factory_advanced_hull.name=高级工厂外壳 -tile.factory_titanium_conductor.name=工厂电力端口 -tile.factory_titanium_core.name=工厂核心组件 -tile.factory_titanium_furnace.name=工厂端口 -tile.factory_titanium_hull.name=工厂外壳 -tile.fallout.name=辐射尘 -tile.fan.name=风扇 -tile.fan.desc=使用红石激活$将实体推至最多10个方块外$用螺丝刀右键点击即可翻转 -tile.fence_metal.name=铁丝网围栏 -tile.fence_metal_post.name=铁丝网围栏立柱 -tile.field_disturber.name=高能场干扰机 -tile.filing_cabinet.green.name=蒙尘的文件柜 -tile.filing_cabinet.steel.name=钢制文件柜 -tile.fire_digamma.name=挥之不去的迪伽马之火 -tile.fire_door.name=防火门 -tile.fireworks.name=烟花箱 -tile.fireworks.charges=已充能: %s -tile.fireworks.message=信息: %s -tile.fireworks.color=颜色: %s -tile.fissure_bomb.name=裂缝炸弹 -tile.flame_war.name=盒中论战 -tile.float_bomb.name=悬浮炸弹 -tile.floodlight.name=电力泛光灯 -tile.fluid_duct.name=通用流体管道 -tile.fluid_duct_box.name=通用流体管道(方形) -tile.fluid_duct_exhaust.name=排气管 -tile.fluid_duct_gauge.name=流量计管 -tile.fluid_duct_gauge.desc=显示每个游戏刻在管网有多少流体移动的管道$由桶或罐连接的分离网络被视为一个共享网络。 -tile.fluid_duct_neo.name=通用流体管道 -tile.fluid_duct_paintable.name=可喷漆涂层通用流体导管 -tile.fluid_duct_solid.name=带涂层的通用流体导管 -tile.fluid_switch.name=红石流体阀 -tile.fluid_valve.name=流体阀 -tile.foam_layer.name=泡沫层 -tile.foundry_basin.name=铸造盘 -tile.foundry_channel.name=铸造浇道 -tile.foundry_tank.name=铸造池 -tile.foundry_mold.name=浅铸造池 -tile.foundry_outlet.name=浇筑出口 -tile.foundry_slagtap.name=炉渣出口 -tile.fraction_spacer.name=分馏塔分隔器 -tile.frozen_dirt.name=冰冻土 -tile.frozen_grass.name=冰冻草 -tile.frozen_log.name=冰冻原木 -tile.frozen_planks.name=冰冻木板 -tile.machine_furnace_brick_off.name=砖砌炉 -tile.machine_furnace_brick_on.name=砖砌炉 -tile.furnace_combination.name=复式炼焦炉 -tile.furnace_combination.desc=一种可以生产木炭和煤焦炭的大熔炉$产生流体副产品$传热速率:ΔT*0.25 TU/T -tile.furnace_iron.name=铁炉 -tile.furnace_iron.desc=更大、效率更高的炉子,在闲置时不会浪费燃料。 -tile.furnace_steel.name=钢炉 -tile.furnace_steel.desc=非常大的熔炉,冶炼矿石时可提供加成。$需要外部热源$传热率:ΔT*0.05tu/T$(Δ表示差值,T表示温度) -tile.fusion_center.name=中心磁铁 -tile.fusion_conductor.name=超导磁体 -tile.fusion_conductor_welded.name=超导磁体(焊接) -tile.fusion_core.name=聚变反应堆控制器 -tile.fusion_hatch.name=聚变反应堆端口 -tile.fusion_heater.name=等离子加热器 -tile.fusion_motor.name=磁体马达 -tile.fwatz_computer.name=Watz聚变反应堆计算矩阵 -tile.fwatz_conductor.name=4000K超导磁体 -tile.fwatz_cooler.name=冷却液罐壳 -tile.fwatz_core.name=Watz聚变反应堆控制器 -tile.fwatz_hatch.name=Watz聚变反应堆端口 -tile.fwatz_plasma.name=不稳定反Sa326等离子体 -tile.fwatz_scaffold.name=Watz聚变反应堆结构支架 -tile.fwatz_tank.name=冷却液罐 -tile.gas_asbestos.name=石棉粉尘 -tile.gas_coal.name=空气中的煤尘 -tile.gas_duct.name=输气管道 -tile.gas_duct_solid.name=密封输气管 -tile.gas_explosive.name=爆炸性气体 -tile.gas_flammable.name=可燃气体 -tile.gas_meltdown.name=熔毁气体 -tile.gas_monoxide.name=一氧化碳 -tile.gas_radon.name=氡气 -tile.gas_radon_dense.name=高浓度氡气 -tile.gas_radon_tomb.name=古墓气体 -tile.geiger.name=盖革计数器 -tile.glass_ash.name=灰烬玻璃 -tile.glass_boron.name=硼玻璃 -tile.glass_lead.name=铅玻璃 -tile.glass_polonium.name=钋玻璃 -tile.glass_quartz.name=石英玻璃 -tile.glass_trinitite.name=核融玻璃 -tile.glass_uranium.name=铀玻璃 -tile.glyphid_base.name=异虫蜂巢块 -tile.glyphid_spawner.name=异虫蜂巢繁殖方块 -tile.gneiss_brick.name=页岩砖 -tile.gneiss_chiseled.name=錾制页岩砖 -tile.gneiss_tile.name=页岩瓷砖 -tile.gravel_diamond.name=钻石砂砾 -tile.gravel_obsidian.name=碎黑曜石 -tile.hadron_access.name=粒子加速器接入终端 -tile.hadron_analysis.name=粒子加速器分析室壁 -tile.hadron_analysis_glass.name=粒子加速器分析室窗口 -tile.hadron_coil_alloy.name=致密超导线圈 -tile.hadron_coil_chlorophyte.name=致密叶绿线圈 -tile.hadron_coil_gold.name=致密金线圈 -tile.hadron_coil_magtung.name=致密4000K超导线圈 -tile.hadron_coil_mese.name=致密Mese线圈 -tile.hadron_coil_neodymium.name=致密钕线圈 -tile.hadron_coil_schrabidate.name=致密Sa酸铁线圈 -tile.hadron_coil_schrabidium.name=致密Sa326线圈 -tile.hadron_coil_starmetal.name=致密星辉线圈 -tile.hadron_cooler.name=粒子加速器冷却装置 -tile.hadron_cooler.desc=冷却功率:10$过冷阈值:10$冷却加成:+10%%$过冷惩罚:-25%% -tile.hadron_cooler_mk2.name=粒子加速器冷却装置-回文特制 -tile.hadron_cooler_mk2.desc=冷却功率:5$效率功能:2-(冷却-15)²/225$最高惩罚:-90%% -tile.hadron_core.name=粒子加速器核心组件 -tile.hadron_diode.name=肖基特二极管 -tile.hadron_plating.name=粒子加速器镀层 -tile.hadron_plating_black.name=粒子加速器镀层 (黑) -tile.hadron_plating_blue.name=粒子加速器镀层 (蓝) -tile.hadron_plating_glass.name=粒子加速器镀层 (窗口) -tile.hadron_plating_striped.name=粒子加速器镀层(低温危险) -tile.hadron_plating_voltz.name=粒子加速器镀层 (VOLTZ) -tile.hadron_plating_yellow.name=粒子加速器镀层(Yello染料) -tile.hadron_power.name=粒子加速器电源接口 -tile.hadron_power_10m.name=粒子加速器电源接口(10MHE) -tile.hadron_power_100m.name=粒子加速器电源接口(100MHE) -tile.hadron_power_1g.name=粒子加速器电源接口(1GHE) -tile.hadron_power_10g.name=粒子加速器电源接口(10GHE) -tile.hazmat.name=防辐射布块 -tile.heater_electric.name=电加热器 -tile.heater_electric.desc=利用电能产生热量$以85%的效率接受来自底部的热量$可使用螺丝刀进行配置。 -tile.heater_firebox.name=燃烧室 -tile.heater_firebox.desc=燃烧固体燃料以产生热量。 -tile.heater_heatex.name=换热加热器 -tile.heater_heatex.desc=从热流体中产生热量。 -tile.heater_oilburner.name=流体燃烧器 -tile.heater_oilburner.desc=燃烧可燃液体产生热量。 -tile.heater_oven.name=加热炉 -tile.heater_oven.desc=燃烧固体燃料以产生热量$以50%的效率接受来自底部的热量。 -tile.hev_battery.name=盔甲电池 -tile.impact_dirt.name=烧焦的泥土 -tile.icf.name=惯性约束聚变反应堆(ICF) -tile.icf_block.name=ICF激光器 -tile.icf_component.name=ICF稳定元件 -tile.icf_component.structure.name=ICF外壳 -tile.icf_component.structure_bolted.name=ICF外壳(铆接) -tile.icf_component.vessel.name=ICF密封容器壁 -tile.icf_component.vessel_welded.name=ICF密封容器壁(焊接) -tile.icf_controller.name=ICF激光器控制器 -tile.icf_laser_component.capacitor.name=ICF激光器电容 -tile.icf_laser_component.casing.name=ICF激光器外壳 -tile.icf_laser_component.cell.name=ICF激光器单元 -tile.icf_laser_component.emitter.name=ICF激光器闪光管 -tile.icf_laser_component.port.name=ICF激光器端口 -tile.icf_laser_component.turbo.name=ICF激光器涡轮增压器 -tile.iter.name=聚变反应堆 -tile.ladder_aluminium.name=铝制梯子 -tile.ladder_cobalt.name=钴制梯子 -tile.ladder_copper.name=铜制梯子 -tile.ladder_gold.name=金制梯子 -tile.ladder_iron.name=铁制梯子 -tile.ladder_lead.name=铅制梯子 -tile.ladder_steel.name=钢制梯子 -tile.ladder_sturdy.name=坚固木头制梯子 -tile.ladder_titanium.name=钛制梯子 -tile.ladder_tungsten.name=钨制梯子 -tile.lamp_demon.name=恶魔核心灯 -tile.lamp_tritium_blue_off.name=蓝色氚灯 -tile.lamp_tritium_blue_on.name=蓝色氚灯 -tile.lamp_tritium_green_off.name=绿色氚灯 -tile.lamp_tritium_green_on.name=绿色氚灯 -tile.lantern.name=路灯 -tile.lantern_behemoth.name=旧路灯 -tile.launch_pad.name=导弹发射台 -tile.launch_pad_large.name=发射台 -tile.launch_table.name=大型发射台 -tile.launch_pad_rusted.name=锈迹斑斑的发射台 -tile.leaves_layer.name=落叶 -tile.lox_barrel.name=液氧桶 -tile.machine_amgen.name=环境辐射发电机 -tile.machine_arc_furnace.name=大型电弧炉 -tile.machine_arc_furnace_off.name=电弧炉 -tile.machine_arc_furnace_on.name=电弧炉 -tile.machine_arc_welder.name=电弧焊机 -tile.machine_armor_table.name=装甲改装台 -tile.machine_ashpit.name=储灰槽 -tile.machine_ashpit.desc=收集来自燃烧室和加热炉的灰烬 -tile.machine_assembler.name=装配机 -tile.machine_assemfac.name=装配厂 -tile.machine_autocrafter.name=自动工作台 -tile.machine_autosaw.name=自动嗡嗡锯 -tile.machine_autosaw.desc=砍伐附近的植物,重新种植树木$接受:$-木油$-乙醇$-鱼油$-重油 -tile.machine_bat9000.name=巨尻-9000 储罐 -tile.machine_battery.name=蓄电池 -tile.machine_battery_potato.name=马铃薯电池组 -tile.machine_boiler.name=大型锅炉 -tile.machine_boiler.desc=可以烧水或加热油的大型锅炉$需要外部热源$传热速率:ΔT*0.01 TU/T -tile.machine_boiler_electric_off.name=电锅炉 -tile.machine_boiler_electric_on.name=电锅炉 -tile.machine_boiler_off.name=锅炉 -tile.machine_boiler_on.name=锅炉 -tile.machine_catalytic_cracker.name=催化裂化塔 -tile.machine_catalytic_reformer.name=催化重整器 -tile.machine_centrifuge.name=离心机 -tile.machine_chemfac.name=大型化工厂 -tile.machine_chemplant.name=化工厂 -tile.machine_chungus.name=“利维坦”巨型汽轮机 -tile.machine_chungus.desc=效率: 85%% -tile.machine_coal_off.name=火力发电机 -tile.machine_coal_on.name=火力发电机 -tile.machine_coker.name=焦化装置 -tile.machine_coker.desc=炼焦,并产生各类流体副产品$需要外部热源$传热速率:ΔT*0.025 TU/T -tile.machine_combine_factory.name=CMB炼钢炉 -tile.machine_combustion_engine.name=工业内燃机 -tile.machine_compressor.name=压缩机 -tile.machine_condenser.name=蒸汽冷凝器 -tile.machine_condenser_powered.name=大功率蒸汽冷凝器 -tile.machine_controller.name=反应堆遥控模块 -tile.machine_converter_he_rf.name=HE→RF转换器 -tile.machine_converter_rf_he.name=RF→HE转换器 -tile.machine_conveyor_press.name=输送带锻压机 -tile.machine_conveyor_press.desc=传送带从左向右移动$手持锻模右键单击以安装$使用螺丝刀移除锻模 -tile.machine_crucible.name=坩埚 -tile.machine_crystallizer.name=矿物酸化器 -tile.machine_cyclotron.name=回旋加速器 -tile.machine_detector.name=功率检测器 -tile.machine_deuterium_extractor.name=氘提取器 -tile.machine_deuterium_tower.name=氘萃取塔 -tile.machine_diesel.name=柴油发电机 -tile.machine_difurnace_extension.name=高炉烟道 -tile.machine_difurnace_off.name=高炉 -tile.machine_difurnace_on.name=高炉 -tile.machine_difurnace_rtg_off.name=核高炉 -tile.machine_difurnace_rtg_on.name=核高炉 -tile.machine_dineutronium_battery.name=Spark蓄电池 -tile.machine_drain.name=排液管 -tile.machine_drill.name=自动采矿钻机 -tile.machine_electric_furnace_off.name=电炉 -tile.machine_electric_furnace_on.name=电炉 -tile.machine_electrolyser.name=电解机 -tile.machine_epress.name=电动锻压机 -tile.machine_excavator.name=大型采矿钻机 -tile.machine_exposure_chamber.name=曝光室 -tile.machine_fel.name=FEL自由电子激光器 -tile.machine_fensu.name=FEnSU飞轮储能系统 -tile.machine_flare.name=高架火炬 -tile.machine_fluidtank.name=储罐 -tile.machine_forcefield.name=力场发生器 -tile.machine_fraction_tower.name=分馏塔 -tile.machine_fracking_tower.name=水力压裂塔 -tile.machine_funnel.name=组合漏斗 -tile.machine_funnel.desc=自动在2x2或3x3的合成格中压缩内部物品$顶面:输入$底面:输出$侧面:输出内部原料 -tile.machine_gascent.name=气体离心机 -tile.machine_generator.name=核反应堆[旧] -tile.machine_geo.name=地热发电机 -tile.machine_hephaestus.name=地热换热器 -tile.machine_hydrotreater.name=加氢装置 -tile.machine_icf_press.name=ICF燃料靶丸制造器 -tile.machine_icf_press.desc=用于装填ICF靶丸$左侧燃料槽接收顶面/底面输入,右侧燃料槽接收侧面输入$μ子胶囊和空靶丸可从任意面输入 -tile.machine_industrial_boiler.name=工业锅炉 -tile.machine_industrial_boiler.desc=可以烧水或加热油的大型锅炉$需要外部热源$传热率:ΔT*0.01 TU/T$不会爆炸 -tile.machine_industrial_generator.name=工业发电机 -tile.machine_keyforge.name=锁匠桌 -tile.machine_large_turbine.name=工业汽轮机 -tile.machine_large_turbine.desc=效率: 100%% -tile.machine_liquefactor.name=工业液化机 -tile.machine_liquefactor.desc=强大的通用机器,可将物品转化为液体$配有多功能催化组件、加热元件和用于石化液化的内置水合器。 -tile.machine_lithium_battery.name=锂蓄电池 -tile.machine_microwave.name=微波炉 -tile.machine_mining_laser.name=采矿激光 -tile.machine_minirtg.name=放射性同位素电池 -tile.machine_missile_assembly.name=导弹装配台 -tile.machine_mixer.name=工业搅拌机 -tile.machine_nuke_furnace_off.name=核熔炉 -tile.machine_nuke_furnace_on.name=核熔炉 -tile.machine_orbus.name=重型磁约束储罐 -tile.machine_ore_slopper.name=基岩矿石处理机 -tile.machine_powerrtg.name=PT同位素电池 -tile.machine_press.name=火力锻压机 -tile.machine_puf6_tank.name=六氟化钚储罐 -tile.machine_pumpjack.name=石油钻机 -tile.machine_radar.name=雷达 -tile.machine_radar_large.name=大型雷达 -tile.machine_radgen.name=辐射能量发电机 -tile.machine_radiolysis.name=放射性同位素热电机和辐射裂解室 -tile.machine_reactor.name=增殖反应堆 -tile.machine_reactor_small.name=研究型反应堆 -tile.machine_refinery.name=炼油厂 -tile.machine_reix_mainframe.name=Rei-X主机[开发中] -tile.machine_rtg_blue.name=对流发电机 -tile.machine_rtg_cyan.name=Sa326衰变发电机 [开发中] -tile.machine_rtg_furnace_off.name=放射性同位素热力炉[RTG] -tile.machine_rtg_furnace_on.name=放射性同位素热力炉[RTG] -tile.machine_rtg_green.name=韦德赛富集发电机 -tile.machine_rtg_grey.name=放射性同位素发电机 -tile.machine_rtg_orange.name=强RT发电机 -tile.machine_rtg_purple.name=反物质湮灭发发电机 -tile.machine_rtg_red.name=离子发生器 -tile.machine_rtg_yellow.name=奥斯超级燃料反应堆 -tile.machine_satlinker.name=卫星ID管理器 -tile.machine_sawmill.name=斯特林锯木机 -tile.machine_sawmill.desc=需要外部热源$传热速率:T*0.1 TU/T$最小进气量:100 TU/T,最大进气量:300 TU/T -tile.machine_schrabidium_battery.name=Sa326蓄电池 -tile.machine_schrabidium_transmutator.name=Sa326嬗变装置 -tile.machine_selenium.name=星型发动机 -tile.machine_shredder.name=粉碎机 -tile.machine_silex.name=SILEX激光同位素分离室 -tile.machine_siren.name=警报器 -tile.machine_solar_boiler.name=太阳能锅炉 -tile.machine_soldering_station.name=焊接台 -tile.machine_solidifier.name=工业固化机 -tile.machine_solidifier.desc=配备冷却系统和其他多功能工具的通用机器,用于使用冷冻和石化聚合等多种工艺将流体转化为固体。 -tile.machine_spp_bottom.name=ZPE电位发生器 [底部] -tile.machine_spp_top.name=ZPE电位发生器 [顶部] -tile.machine_steam_engine.name=蒸汽机 -tile.machine_steam_engine.desc=效率:85% -tile.machine_stirling.name=斯特林发电机 -tile.machine_stirling.desc=它将热量转化为能量。需要外部热源$传热率:T*0.1 TU/T$最大进气量:300 TU/T$效率:50% -tile.machine_stirling_creative.name=创造斯特林发动机 -tile.machine_stirling_creative.desc=将热量转化为能量。需要外部热源$传热率:T*0.1 TU/T$无限吸热/T$效率:100% -tile.machine_stirling_steel.name=重型斯特林发电机 -tile.machine_stirling_steel.desc=它将热量转化为能量。需要外部热源$使用更重的齿轮来支持更高的温度$传热率:T*0.1 TU/T$最大进气量:1500 TU/T$效率:50% -tile.machine_storage_drum.name=核废料处理桶 -tile.machine_strand_caster.name=连续铸造机 -tile.machine_telelinker.name=炮塔ID管理器 -tile.machine_teleporter.name=传送机 -tile.machine_tower_large.name=冷却塔 -tile.machine_tower_small.name=辅助冷却塔 -tile.machine_transformer.name=10k-20Hz变频器 -tile.machine_transformer_20.name=10k-1Hz变频器 -tile.machine_transformer_dnt.name=DNT-20Hz变频器 -tile.machine_transformer_dnt_20.name=DNT-1Hz变频器 -tile.machine_turbine.name=汽轮机 -tile.machine_turbine.desc=效率: 85%% -tile.machine_turbinegas.name=联合循环燃气轮机 -tile.machine_turbofan.name=涡扇发动机 -tile.machine_uf6_tank.name=六氟化铀储罐 -tile.machine_vacuum_distill.name=真空炼油厂 -tile.machine_waste_drum.name=乏燃料池 -tile.machine_well.name=钻油塔 -tile.machine_wood_burner.name=火力发电机 -tile.machine_wood_burner.desc=燃烧物品时100HE/t,同时$收集灰烬$可以以40mb/s的速度燃烧流体,效率为50%% -tile.machine_zirnox.name=锆诺克斯核反应堆 -tile.marker_structure.name=多方块结构信标 -tile.mass_storage.name=大规模存储单元 -tile.meteor_battery.name=星辉静电发生器 -tile.meteor_brick.name=陨石砖 -tile.meteor_brick_chiseled.name=錾制陨石砖 -tile.meteor_brick_cracked.name=裂纹陨石砖 -tile.meteor_brick_mossy.name=苔藓陨石砖 -tile.meteor_pillar.name=竖纹陨石砖 -tile.meteor_polished.name=平滑陨石块 -tile.meteor_spawner.name=赛博螃蟹组装机 -tile.mine_ap.name=反步兵地雷 -tile.mine_fat.name=核地雷 -tile.mine_he.name=反坦克地雷 -tile.mine_shrap.name=破片地雷 -tile.moon_turf.name=月壤 -tile.mud_block.name=毒泥 -tile.muffler.name=消声器 -tile.mush.name=发光真菌 -tile.ntm_dirt.name=泥土 -tile.nuke_boy.name=小男孩 -tile.nuke_custom.name=自定义核弹 -tile.nuke_fleija.name=F.L.E.I.J.A. -tile.nuke_fstbmb.name=野火炸弹 -tile.nuke_gadget.name=小玩意 -tile.nuke_man.name=胖子 -tile.nuke_mike.name=常春藤迈克 -tile.nuke_n2.name=N2炸弹 -tile.nuke_n45.name=N45水雷 -tile.nuke_prototype.name=原型 -tile.nuke_solinium.name=蔚蓝洗礼 -tile.nuke_tsar.name=沙皇炸弹 -tile.oil_duct.name=输油管 -tile.oil_duct_solid.name=粗输油管 -tile.oil_pipe.name=原油抽取管 -tile.oil_spill.name=泄漏的原油 -tile.ore_alexandrite.name=亚历山大变石矿 -tile.ore_aluminium.name=铝矿石 -tile.ore_asbestos.name=石棉矿 -tile.ore_australium.name=奥斯矿石 -tile.ore_basalt_asbestos.name=富含石棉的玄武岩 -tile.ore_basalt_fluorite.name=富含氟石的玄武岩 -tile.ore_basalt_gem.name=富含宝石的玄武岩 -tile.ore_basalt_molysite.name=富含氯化铁的玄武岩 -tile.ore_basalt_sulfur.name=富含硫的玄武岩 -tile.ore_bedrock.name=基岩矿石 -tile.ore_bedrock_coltan.name=基岩钶钽铁矿 -tile.ore_bedrock_oil.name=基岩油层 -tile.ore_beryllium.name=铍矿石 -tile.ore_cinnebar.name=朱砂矿石 -tile.ore_coal_oil.name=含油煤矿石 -tile.ore_coal_oil_burning.name=燃烧的含油煤矿石 -tile.ore_cobalt.name=钴矿石 -tile.ore_coltan.name=钶钽铁矿 -tile.ore_copper.name=铜矿石 -tile.ore_daffergon.name=达夫贡矿石 -tile.ore_depth_borax.name=深层硼砂矿 -tile.ore_depth_cinnebar.name=深层朱砂矿石 -tile.ore_depth_nether_neodymium.name=深层钕矿石 -tile.ore_depth_zirconium.name=深层锆矿石 -tile.ore_fluorite.name=氟石矿石 -tile.ore_gneiss_asbestos.name=石棉矿页岩 -tile.ore_gneiss_copper.name=铜矿页岩 -tile.ore_gneiss_gas.name=气页岩 -tile.ore_gneiss_gold.name=金矿页岩 -tile.ore_gneiss_iron.name=铁矿页岩 -tile.ore_gneiss_lithium.name=锂矿页岩 -tile.ore_gneiss_rare.name=稀土矿页岩 -tile.ore_gneiss_schrabidium.name=Sa326矿页岩 -tile.ore_gneiss_uranium.name=铀矿页岩 -tile.ore_gneiss_uranium_scorched.name=烧焦的铀矿页岩 -tile.ore_lead.name=铅矿石 -tile.ore_lignite.name=褐煤矿石 -tile.ore_meteor.aluminium.name=铝矿陨石 -tile.ore_meteor.cobalt.name=钴矿陨石 -tile.ore_meteor.copper.name=铜矿陨石 -tile.ore_meteor.iron.name=铁矿陨石 -tile.ore_meteor.rareearth.name=稀土矿陨石 -tile.ore_meteor_aluminium.name=铝矿陨石 -tile.ore_meteor_copper.name=铜矿陨石 -tile.ore_meteor_lead.name=铅矿陨石 -tile.ore_meteor_lithium.name=锂矿陨石 -tile.ore_meteor_starmetal.name=星辉矿陨石 -tile.ore_meteor_sulfur.name=硫磺矿陨石 -tile.ore_meteor_thorium.name=钍矿陨石 -tile.ore_meteor_titanium.name=钛矿陨石 -tile.ore_meteor_tungsten.name=钨矿陨石 -tile.ore_meteor_uranium.name=铀矿陨石 -tile.ore_nether_coal.name=燃烧下界煤矿 -tile.ore_nether_cobalt.name=下界钴矿石 -tile.ore_nether_fire.name=磷矿石 -tile.ore_nether_plutonium.name=下界钚矿石 -tile.ore_nether_schrabidium.name=下界Sa326矿石 -tile.ore_nether_smoldering.name=阴燃下界岩 -tile.ore_nether_sulfur.name=下界硫磺矿石 -tile.ore_nether_tungsten.name=下界钨矿石 -tile.ore_nether_uranium.name=下界铀矿石 -tile.ore_nether_uranium_scorched.name=烧焦的下界铀矿石 -tile.ore_niter.name=硝石矿石 -tile.ore_oil.name=油岩 -tile.ore_oil_empty.name=空油岩 -tile.ore_oil_sand.name=沥青砂 -tile.ore_random.name=%s 矿 -tile.ore_rare.name=稀土矿石 -tile.ore_reiium.name=雷恩矿石 -tile.ore_schrabidium.name=Sa326矿石 -tile.ore_sellafield_diamond.name=放射性熔融钻石矿 -tile.ore_sellafield_emerald.name=放射性熔融绿宝石矿 -tile.ore_sellafield_radgem.name=富含宝石的放射性熔融物 -tile.ore_sellafield_schrabidium.name=放射性熔融Sa326矿石 -tile.ore_sellafield_uranium_scorched.name=放射性熔融烧焦铀矿 -tile.ore_sulfur.name=硫磺矿石 -tile.ore_tektite_osmiridium.name=渗锇熔融石 -tile.ore_thorium.name=钍矿石 -tile.ore_tikite.name=赛瑞克矿石 -tile.ore_titanium.name=钛矿石 -tile.ore_tungsten.name=钨矿石 -tile.ore_unobtainium.name=难得素矿石 -tile.ore_uranium.name=铀矿石 -tile.ore_uranium_scorched.name=烧焦的铀矿石 -tile.ore_verticium.name=韦德赛矿石 -tile.ore_volcano.name=地热裂缝 -tile.ore_weidanium.name=魏丹矿石 -tile.part_emitter.name=装饰性粒子发射器 -tile.pedestal.name=物品基座 -tile.pink_barrel.name=煤油桶 -tile.pink_log.name=粉色原木 -tile.pink_planks.name=粉色木板 -tile.pink_slab.name=粉色木半砖 -tile.pink_stairs.name=粉色木台阶 -tile.piston_inserter.name=插入器 -tile.piston_inserter.desc=可以使用自动化接收一件物品$使用红石,它会将物品插入钻孔石墨中$钻孔石墨的物品都会被推出一格$插入器与钻孔石墨之间需要有一格空气 -tile.plant_dead.name=死亡植物 -tile.plant_flower.cd0.name=芥子柳 -tile.plant_flower.cd1.name=芥子柳 -tile.plant_flower.foxglove.name=毛地黄 -tile.plant_flower.nightshade.name=颠茄 -tile.plant_flower.tobacco.name=烟草 -tile.plant_flower.weed.name=大麻 -tile.plant_reeds.name=芦苇 -tile.plant_tall.cd2.name=芥子柳 -tile.plant_tall.cd3.name=芥子柳 -tile.plant_tall.cd4.name=芥子柳(成熟) -tile.plant_tall.weed.name=大麻 -tile.plasma.name=等离子 -tile.plasma_heater.name=等离子加热器 -tile.plushie.name=%s布娃娃 -tile.pole_satellite_receiver.name=卫星天线 -tile.pole_top.name=天线顶部 -tile.press_preheater.name=锻压机压力预热器 -tile.pribris.name=RBMK石墨式反应堆残骸 -tile.pribris_burning.name=燃烧的RBMK反应堆残骸 -tile.pribris_digamma.name=发黑的RBMK反应堆残骸 -tile.pribris_radiating.name=阴燃的RBMK反应堆残骸 -tile.pump_electric.name=电动地下水泵 -tile.pump_electric.desc=用电力抽取地下水$产水量高达10000mB/t$需要放置在Y:70以下 -tile.pump_steam.name=蒸汽动力地下水泵 -tile.pump_steam.desc=使用蒸汽抽取地下水$产水量高达1000mB/t$需要放置在Y:70以下 -tile.pwr_block.name=PWR压水反应堆 -tile.pwr_casing.name=PWR压力容器 -tile.pwr_casing.desc=需要覆盖反应堆的所有内部零件以形成$位置:外壳 -tile.pwr_channel.name=PWR冷却剂通道 -tile.pwr_channel.desc=传导热量以加热冷却剂$位置:任意 -tile.pwr_control.name=PWR控制棒 -tile.pwr_control.desc=允许控制连接的燃料棒$放置:各燃料棒连线网格之间 -tile.pwr_controller.name=PWR控制器 -tile.pwr_controller.desc=PWR的接入终端$位置:外壳,每个反应堆只要一个$右键单击以组装反应堆 -tile.pwr_fuel.name=PWR燃料棒 -tile.pwr_fuel.desc=增加压水堆燃料容量$位置:网格,用于增加反应效率 -tile.pwr_heatex.name=PWR换热器 -tile.pwr_heatex.desc=将核心热量转移到外壳$位置:任意 -tile.pwr_heatsink.name=PWR热容器 -tile.pwr_heatsink.desc=增加5%%的核心热容$略微降低冷却剂通道和换热器的效率$位置:任意 -tile.pwr_neutron_source.name=PWR中子源 -tile.pwr_neutron_source.desc=向堆芯添加20个中子通量$位置:任意$中子通量只有在连接打开时才能到达燃料棒 -tile.pwr_port.name=PWR接入端口 -tile.pwr_port.desc=允许物品和液体交换$位置:组件 -tile.pwr_reflector.name=PWR中子反射器 -tile.pwr_reflector.desc=将中子通量反射回燃料棒$位置:网格,用于增加反应速率$可作为外壳材料 -tile.rad_lava_block.name=放射性火山熔岩 -tile.radar_screen.name=雷达显示屏 -tile.radio_telex.name=电报机 -tile.radio_torch_counter.name=无线红石物品计数器 -tile.radio_torch_counter.desc=可在平坦表面或与比较器兼容的方块上放置$根据匹配物品的数量发出信号 -tile.radio_torch_logic.name=无线红石逻辑接收器 -tile.radio_torch_logic.desc=可在平坦表面或与比较器兼容的方块上放置$将红石信号与条件一一对应,并按照设定的顺序检测$输入的数值或字符串会与常量进行比较 -tile.radio_torch_receiver.name=无线红石信号接收器 -tile.radio_torch_receiver.desc=可在平坦表面或与比较器兼容的方块上放置 -tile.radio_torch_sender.name=无线红石信号发射器 -tile.radio_torch_sender.desc=可在平坦表面或比较器兼容的方块上放置$读取红石信号或比较器输入 -tile.radiobox.name=无线怪物清除箱 -tile.radiorec.name=坏掉的收音机 -tile.rail_booster.name=高速动力轨道 -tile.rail_highspeed.name=高速轨道 -tile.rail_large_buffer.name=标准轨距缓冲停止轨道(5m) -tile.rail_large_curve.name=标准轨距弯曲轨道(5m) -tile.rail_large_curve_7.name=标准轨距弯曲轨道(7m) -tile.rail_large_curve_9.name=标准轨距弯曲轨道(9m) -tile.rail_large_ramp.name=标准轨距坡道铁轨(5m) -tile.rail_large_straight.name=标准轨距铁轨(5m) -tile.rail_large_straight_short.name=标准轨距铁轨(1m) -tile.rail_large_switch.name=标准轨距铁路道岔(15m 左转) -tile.rail_large_switch_flipped.name=标准轨距铁路道岔(15m 右转) -tile.rail_narrow.name=窄轨距轨道 -tile.rail_wood.name=木制轨道 -tile.rbmk_absorber.name=RBMK反应堆硼中子吸收器 -tile.rbmk_blank.name=RBMK反应堆结构柱 -tile.rbmk_boiler.name=RBMK反应堆蒸汽管道 -tile.rbmk_console.name=RBMK石墨式反应堆控制台 -tile.rbmk_cooler.name=RBMK冷却器 -tile.rbmk_control.name=RBMK反应堆控制棒 -tile.rbmk_control_auto.name=RBMK反应堆自动控制棒 -tile.rbmk_control_mod.name= RBMK反应堆慢化控制棒 -tile.rbmk_crane_console.name=RBMK起重机控制台 -tile.rbmk_heater.name=RBMK流体加热器 -tile.rbmk_heatex.name=RBMK换热器 -tile.rbmk_loader.name=RBMK反应堆蒸汽导出器 -tile.rbmk_loader.desc=让RBMK反应堆在底部同时拥有水接口和蒸汽接口$在RBMK蒸汽管道下方放置水管道,再在下面放置蒸汽导出器$最后将管道连接至蒸汽导出器即可 -tile.rbmk_moderator.name=RBMK反应堆石墨慢化剂 -tile.rbmk_outgasser.name=RBMK反应堆辐照通道 -tile.rbmk_reflector.name=RBMK反应堆碳化钨中子反射器 -tile.rbmk_rod.name=RBMK反应堆燃料棒 -tile.rbmk_rod_mod.name= RBMK反应堆慢化燃料棒 -tile.rbmk_rod_reasim.name= RBMK反应堆燃料棒(ReaSim) -tile.rbmk_rod_reasim_mod.name= RBMK反应堆慢化燃料棒(ReaSim) -tile.rbmk_steam_inlet.name=RBMK ReaSim进水口 -tile.rbmk_steam_inlet.desc=当启用ReaSim锅炉时向反应堆内输入水$从侧面连接至反应堆结构 -tile.rbmk_steam_outlet.name=RBMK ReaSim蒸汽出口 -tile.rbmk_steam_outlet.desc=当启用ReaSim锅炉时从反应堆内输出超热蒸汽$从侧面连接至反应堆结构 -tile.rbmk_storage.name=RBMK燃料棒存储棒 -tile.reactor_computer.name=反应堆控制器 -tile.reactor_conductor.name=反应堆锅炉 -tile.reactor_control.name=控制棒 -tile.reactor_ejector.name=反应堆废料排出器 -tile.reactor_element.name=反应堆室 -tile.reactor_hatch.name=反应堆端口 -tile.reactor_inserter.name=反应堆燃料插入器 -tile.red_barrel.name=炸药桶 -tile.red_cable.name=紫铜电线 -tile.red_cable_classic.name=紫铜电缆(经典型) -tile.red_cable_gauge.name=功率计 -tile.red_cable_gauge.desc=显示每刻在网络中流动的电力$的电缆$由储能方块连接的拆分网络被视为一个共享网络。 -tile.red_cable_paintable.name=可涂漆紫铜线 -tile.red_connector.name=电力连接器 -tile.red_pylon.name=电线杆 -tile.red_pylon_large.name=大型输电塔 -tile.red_pylon_medium_steel.name=中型钢制电线杆 -tile.red_pylon_medium_steel_transformer.name=中型钢制电线杆(带变压器) -tile.red_pylon_medium_wood.name=中型木制电线杆 -tile.red_pylon_medium_wood_transformer.name=中型木制电线杆(带变压器) -tile.red_wire_coated.name=密封紫铜电缆 -tile.reinforced_brick.name=强化石头 -tile.reinforced_brick_stairs.name=强化石头楼梯 -tile.reinforced_ducrete.name=加固高密度贫铀混凝土 -tile.reinforced_glass.name=强化玻璃 -tile.reinforced_glass_pane.name=强化玻璃窗 -tile.reinforced_lamp_off.name=强化红石灯 -tile.reinforced_lamp_on.name=强化红石灯 -tile.reinforced_light.name=强化萤石 -tile.reinforced_sand.name=强化砂石 -tile.reinforced_stone.name=致密石头 -tile.reinforced_stone_stairs.name=致密石头楼梯 -tile.reinforced_laminate.name=强化夹层玻璃 -tile.reinforced_laminate_pane.name=强化夹层隔板 -tile.rejuvinator.name=再生装置 -tile.residue.name=云残留 -tile.safe.name=保险箱 -tile.sand_boron.name=硼沙 -tile.sand_boron_layer.name=硼沙层 -tile.sand_dirty.name=油砂 -tile.sand_dirty_red.name=红色油砂 -tile.sand_gold.name=金沙 -tile.sand_gold198.name=金-198沙 -tile.sand_lead.name=铅沙 -tile.sand_polonium.name=钋沙 -tile.sand_quartz.name=石英沙 -tile.sand_uranium.name=铀沙 -tile.sat_dock.name=卸货平台 -tile.sat_foeq.name=实验型核能PEAF-Mk.I FOEQ Duna探测器[装饰块] -tile.sat_laser.name=轨道死光炮[装饰块] -tile.sat_mapper.name=地表测绘卫星[装饰块] -tile.sat_radar.name=雷达探测卫星[装饰块] -tile.sat_resonator.name=X晶体共振卫星[装饰块] -tile.sat_scanner.name=绘测和资源探测卫星[装饰块] -tile.schrabidic_block.name=Sa酸 -tile.seal_controller.name=发射井舱门开关 -tile.seal_frame.name=发射井舱门框架 -tile.seal_hatch.name=发射井舱门 -tile.sellafield.0.name=放射性熔融凝固物 -tile.sellafield.1.name=高温放射性熔融凝固物 -tile.sellafield.2.name=沸腾的放射性熔融凝固物 -tile.sellafield.3.name=灼热的放射性熔融凝固物 -tile.sellafield.4.name=地狱般的放射性熔融凝固物 -tile.sellafield.5.name=放射性熔融凝固物核心 -tile.sellafield_slaked.name=消沉的放射性熔融凝固物 -tile.semtex.name=塞姆汀塑胶炸药 -tile.silo_hatch.name=发射井舱门 -tile.silo_hatch_large.name=大型发射井舱门 -tile.sliding_blast_door.name=滑动防爆门 -tile.solar_mirror.name=定日镜 -tile.soyuz_capsule.name=货物着陆舱 -tile.soyuz_launcher.name=联盟号发射平台 -tile.spikes.name=地刺 -tile.snowglobe.name=雪景球 -tile.spotlight_incandescent.name=罩灯 -tile.spotlight_fluoro.name=荧光灯 -tile.spotlight_halogen.name=卤素泛光灯 -tile.stalactite.asbestos.name=石棉钟乳石 -tile.stalactite.sulfur.name=含硫钟乳石 -tile.stalagmite.asbestos.name=石棉石笋 -tile.stalagmite.sulfur.name=含硫石笋 -tile.steel_beam.name=钢梁 -tile.steel_corner.name=钢墙角 -tile.steel_grate.name=钢格栅 -tile.steel_grate_wide.name=物品格栅 -tile.steel_grate_wide.desc=只会让物品和经验球掉落下去 -tile.steel_poles.name=钢杆 -tile.steel_roof.name=钢天花顶 -tile.steel_scaffold.name=钢脚手架 -tile.steel_wall.name=钢墙 -tile.stone_cracked.name=破碎的石头 -tile.stone_depth.name=深层岩石 -tile.stone_depth_nether.name=下界深层岩石 -tile.stone_keyhole.name=奇怪的石头 -tile.stone_gneiss.name=石墨页岩 -tile.stone_porous.name=多孔石 -tile.stone_resource.asbestos.name=温石棉 -tile.stone_resource.bauxite.name=铝土矿 -tile.stone_resource.hematite.name=赤铁矿 -tile.stone_resource.limestone.name=石灰石 -tile.stone_resource.malachite.name=孔雀石 -tile.stone_resource.sulfur.name=硫磺石 -tile.struct_icf_core.name=ICF反应堆核心组件 -tile.struct_iter_core.name=聚变反应堆核心组件 -tile.struct_launcher.name=发射台部件 -tile.struct_launcher_core.name=紧凑型发射台核心组件 -tile.struct_launcher_core_large.name=发射台核心组件 -tile.struct_plasma_core.name=等离子加热器核心组件 -tile.struct_scaffold.name=发射台骨架 -tile.struct_soyuz_core.name=联盟号发射器核心组件 -tile.struct_watz_core.name=Watz发电厂核心组件 -tile.substation.name=变电站 -tile.sulfuric_acid_block.name=硫酸 -tile.taint.name=腐质 -tile.taint_barrel.name=IMP残渣桶 -tile.tape_recorder.name=录音机 -tile.tektite.name=熔融石 -tile.teleanchor.name=传送锚 -tile.tesla.name=特斯拉线圈 -tile.test_nuke.name=测试核弹 -tile.therm_endo.name=吸热炸弹 -tile.therm_exo.name=放热炸弹 -tile.tile_lab.name=实验室瓷砖 -tile.tile_lab_broken.name=破损实验室瓷砖 -tile.tile_lab_cracked.name=开裂实验室瓷砖 -tile.tnt_ntm.name=货真价实的TNT -tile.toxic_block.name=绿色软泥 -tile.transition_seal.name=巨型安全门 -tile.turret_arty.name=重炮炮塔“格雷格” -tile.turret_cheapo.name=奇普-加特林哨兵 -tile.turret_chekhov.name=重机枪炮塔“契诃夫的枪” -tile.turret_cwis.name=Mk-15“密集阵”近防系统 -tile.turret_flamer.name=喷火炮塔 -tile.turret_friendly.name=轻机枪炮塔“友好先生” -tile.turret_fritz.name=重型火焰喷射器炮塔“弗里茨” -tile.turret_heavy.name=重型机枪炮塔 -tile.turret_himars.name=火箭炮塔“亨利” -tile.turret_howard.name=双联守门员近防系统“霍华德” -tile.turret_howard_damaged.name=CIWS双联守门员近防系统 "玛士撒拉" -tile.turret_jeremy.name=重炮炮塔“杰里米” -tile.turret_light.name=轻型机枪炮塔 -tile.turret_maxwell.name=高能微波炮塔 "麦克斯韦" -tile.turret_rocket.name=火箭炮塔 -tile.turret_richard.name=火箭炮塔“理查德” -tile.turret_spitfire.name=目前没有名字[开发中] -tile.turret_sentry.name=哨兵炮塔“布朗” -tile.turret_sentry_damaged.name=哨兵炮塔"埃德温" -tile.turret_tau.name=陶子炮塔 -tile.turret_tauon.name=XVL1456原型陶子发射器炮塔"陶恩" -tile.vacuum.name=真空 -tile.vault_door.name=避难所防爆门 -tile.vent_chlorine.name=氯气排气口 -tile.vent_chlorine_seal.name=氯气容器 -tile.vent_cloud.name=云排气口 -tile.vent_pink_cloud.name=粉雾排气口 -tile.vinyl_tile.large.name=大型乙烯基瓷砖 -tile.vinyl_tile.small.name=小型乙烯基瓷砖 -tile.vitrified_barrel.name=玻璃化核废料桶 -tile.volcanic_lava_block.name=火山熔岩 -tile.volcano_core.name=火山核心 -tile.volcano_rad_core.name=放射性火山核心 -tile.waste_earth.name=死亡草地 -tile.waste_leaves.name=枯叶 -tile.waste_log.name=烧焦原木 -tile.waste_mycelium.name=发光菌丝 -tile.waste_planks.name=烧焦木板 -tile.waste_trinitite.name=核融玻璃矿石 -tile.waste_trinitite_red.name=红色核融玻璃矿石 -tile.watz.name=Watz发电厂 -tile.watz_conductor.name=Watz电力端口 -tile.watz_control.name=加强控制棒 -tile.watz_cooler.name=Watz反应堆高效冷却器 -tile.watz_core.name=Watz反应堆控制器 -tile.watz_element.name=Watz反应室 -tile.watz_end.name=Watz反应堆稳定元件 -tile.watz_end_bolted.name=Watz反应堆稳定元件(铆接) -tile.watz_hatch.name=Watz反应堆端口 -tile.watz_pump.name=Watz压力泵 -tile.yellow_barrel.name=核废料桶 -tile.zirnox_destroyed.name=损毁的ZIRNOX - -tile.large_vehicle_door.name=大型机械门 -tile.water_door.name=水闸门 -tile.qe_containment.name=QE安全门 -tile.qe_sliding_door.name=QE滑动门 -tile.round_airlock_door.name=圆形气闸门 -tile.secure_access_door.name=安全检修门 -tile.sliding_seal_door.name=滑动密封门 - -trait.asbestos=石棉 -trait.blinding=致盲 -trait.coal=煤尘 -trait.digamma=迪伽马辐射 -trait.drop=掉落物危险 -trait.explosive=高度易燃/易爆 -trait.furnace=可在核熔炉中工作 %s 次 -trait.heat=提供 %s 热量 -trait.hlParticle=粒子半衰期: %s -trait.hlPlayer=玩家半衰期: %s -trait.hot=自燃/高温 -trait.hydro=与水反应 -trait.radioactive=放射性 -trait.radResistance=辐射抗性: %s - -trait.rbmk.coreTemp=核心温度: %s -trait.rbmk.depletion=燃料消耗: %s -trait.rbmk.diffusion=扩散度: %s -trait.rbmk.fluxFunc=中子放射函数: %s -trait.rbmk.funcType=中子放射函数类型: %s -trait.rbmk.heat=每接受一个中子产生的热量: %s -trait.rbmk.melt=熔点: %s -trait.rbmk.neutron.any=所有中子 -trait.rbmk.neutron.fast=快中子 -trait.rbmk.neutron.slow=慢中子 -trait.rbmk.skinTemp=表面温度: %s -trait.rbmk.source=自燃 -trait.rbmk.splitsInto=裂变后释放出: %s -trait.rbmk.splitsWith=裂变需要: %s -trait.rbmk.xenon=氙元素堆积程度: %s -trait.rbmk.xenonBurn=氙元素燃烧函数: %s -trait.rbmk.xenonGen=氙元素产生函数: %s - -trait.rbmx.coreTemp=核心熵: %s -trait.rbmx.depletion=衰变: %s -trait.rbmx.diffusion=能量潮涌: %s -trait.rbmx.fluxFunc=F迪伽马粒子放射函数: %s -trait.rbmx.funcType=F迪伽马粒子放射函数类型: %s -trait.rbmx.heat=满功率下每刻产生的热量: %s -trait.rbmx.melt=崩溃深度: %s -trait.rbmk.neutron.any.x=所有非欧几里德形时空平面 -trait.rbmk.neutron.fast.x=椭圆非欧几里德形时空平面 -trait.rbmk.neutron.slow.x=双曲非欧几里德形时空平面 -trait.rbmx.skinTemp=表面熵: %s -trait.rbmx.source=自燃 -trait.rbmx.splitsInto=释放: %s -trait.rbmx.splitsWith=接受: %s -trait.rbmx.xenon=铅元素堆积程度: %s -trait.rbmx.xenonBurn=铅元素寂灭函数: %s -trait.rbmx.xenonGen=铅元素产生函数: %s - -trait.tile.cluster=只有在被玩家破坏时才会掉落 -trait.tile.depth=只能被爆炸破坏 - -tool.ability.centrifuge=自动离心 -tool.ability.crystallizer=自动结晶 -tool.ability.explosion=爆破 -tool.ability.hammer=范围挖掘 -tool.ability.luck=时运 -tool.ability.mercury=水银提取 -tool.ability.midas=点石成金 -tool.ability.recursion=连锁挖矿 -tool.ability.shredder=自动粉碎 -tool.ability.silktouch=精准采集 -tool.ability.smelter=自动熔炼 - -turret.animals=被动目标:%s -turret.arty.artillery=§e火炮模式$最低射程: 250m$最大射程: 3,000m -turret.arty.cannon=§e炮塔模式$最低射程: 32m$射程: 250m -turret.arty.manual=§e手动模式$射程: 3,000m -turret.machines=以机械为目标: %s -turret.mobs=以怪物为目标: %s -turret.none=无 -turret.off=关 -turret.on=开 -turret.players=以玩家为目标:%s - -upgrade.acid=流体需求量 %s -upgrade.burn=燃烧内部天然气 %smB/t,产能 %sHE/t -upgrade.consumption=消耗 %s -upgrade.coolantConsumption=冷却剂消耗 %s -upgrade.delay=工作时间 %s -upgrade.efficiency=效率 %s -upgrade.fortune=时运 %s -upgrade.overheatChance=过热几率 %s -upgrade.range=范围 %s - -upgrade.gui.title=§l接受的升级:§r -upgrade.gui.afterburner= * §d加力燃烧§r:叠加至%s级 -upgrade.gui.effectiveness= * §a效率§r:叠加至%s级 -upgrade.gui.overdrive= * §7超速传动§r:叠加至%s级 -upgrade.gui.power= * §9节能§r:叠加至%s级 -upgrade.gui.speed= * §4速度§r:叠加至%s级 - -wavelengths.name.ir=红外线 -wavelengths.name.visible=可见光 -wavelengths.name.uv=紫外线 -wavelengths.name.gamma=伽马射线 -wavelengths.name.drx=迪伽玛 -wavelengths.waveRange.ir=780nm-1mm -wavelengths.waveRange.visible=400nm-780nm -wavelengths.waveRange.uv=100nm-400nm -wavelengths.waveRange.gamma=<100pm -wavelengths.waveRange.drx=1916169普朗克长度 - -weapon.ability.beheader=斩首 -weapon.ability.bobble=收藏家之运 -# Should rhyme with the translation for "chainsaw" -weapon.ability.chainsaw=痛苦面"锯" -weapon.ability.fire=燃烧 -weapon.ability.radiation=辐射 -weapon.ability.phosphorus=白磷刀刃 -weapon.ability.stun=震撼 -weapon.ability.vampire=吸血 -weapon.elecGun.modeChange=开火模式更改为: -weapon.elecGun.glass_cannon.radio=无线电波 -weapon.elecGun.glass_cannon.micro=微波 -weapon.elecGun.glass_cannon.ir=红外线 -weapon.elecGun.glass_cannon.visible=可见光 -weapon.elecGun.glass_cannon.uv=紫外线 -weapon.elecGun.glass_cannon.xray=X射线 -weapon.elecGun.glass_cannon.gamma=伽马射线 - -#Stuffs that Bob doesn't provide translation for -item.gun_vortex.name=涡流 -tile.crystal_power.name=能量水晶 -tile.crystal_energy.name=能量水晶 -tile.crystal_robust.name=坚固的水晶 -tile.crystal_trixite.name=赛瑞克水晶 \ No newline at end of file +achievement.acidizer.desc=啊艹,我的皮肤 +achievement.acidizer=酸 +achievement.assembly.desc=等等,已经凌晨1点了? +achievement.assembly=这家工厂正在成长 +achievement.FOEQ.desc=向火星轨道发射通讯卫星!...其实我是说Duna轨道 +achievement.FOEQ=飞马座运载火箭和发射架 +achievement.breeding.desc=谢谢你们,上帝保佑你们,上帝保佑镅利坚合众国。 +achievement.breeding=反话 +achievement.bismuth.desc=还记得那时候有人为这个抱怨了一个月吗?我还记得。 +achievement.bismuth=铋 +achievement.blastFurnace.desc=他们为制造探险者1号去打捞了一艘沉没的无畏舰。 +achievement.blastFurnace=煤和铁 +achievement.bossCreeper.desc=核爆苦力怕? 还有这东西?! +achievement.bossCreeper=四条腿的行走核弹 +achievement.bossMaskman.desc=淦飞那个大男孩 +achievement.bossMaskman=服了六个月的强制兵役,我得到的只是一件糟糕的T恤... +achievement.bossMeltdown.desc=比好事要坏,但是差不多得了 +achievement.bossMeltdown=3.6伦琴 +achievement.bossWorm.desc=绝学法杖?绝学法杖个屁。你自己好好看看。 +achievement.bossWorm=拆掉机械蠕虫 +achievement.bossUFO.desc=哟,现在是什么情况?一艘正在接近我们工事的巨大外星飞船? +achievement.bossUFO=啊哈哈哈,笑死我了 +achievement.burnerPress.desc=压力压在你我身上 +achievement.burnerPress=压力之下 +achievement.c20_5.desc=??? +achievement.c20_5=第[二十点五]章 +achievement.c44.desc=镀锌!我是说,锌! +achievement.c44=第四十四章 +achievement.centrifuge.desc=离心力是力请不要@我 +achievement.centrifuge=离心力 +achievement.chemplant.desc=现在你在考虑化学物质! +achievement.chemplant=这家工厂正在成长 第二季 +achievement.chicagoPile.desc=“当地人怎么样?” / “非常友好。” +achievement.chicagoPile=领航员在新大陆着陆 +achievement.concrete.desc=布尔什维克的最爱。 +achievement.concrete=可靠的老伙计 +achievement.desh.desc=“来吧,大家。我们有地方要去!\” +achievement.desh=勒威耶 +achievement.digammaFeel.desc=我的眼睛在流血 +achievement.digammaFeel=废水侵袭的废土世界 +achievement.digammaKauaiMoho.desc=一切都糟透了,这里有些热巧克力 +achievement.digammaKauaiMoho=唱吧,为我唱出奥亚吸蜜鸟的歌声吧 +achievement.digammaKnow.desc=关于这个世界 +achievement.digammaKnow=知 晓 的 恐 惧 +achievement.digammaSee.desc=里面有点黑,带个手电筒。 +achievement.digammaSee=踏 入 深 渊 +achievement.digammaUpOnTop.desc=仰慕我的儿子,他是我的克隆人 +achievement.digammaUpOnTop=仰慕我,仰慕我的家 +achievement.fiend.desc=卑鄙 +achievement.fiend2.desc=更卑鄙 +achievement.fiend2=残忍2:更残忍 +achievement.fiend=残忍 +achievement.freytag.desc=赫罗尔德的保镖 +achievement.freytag=弗赖塔格 +achievement.fusion.desc=氘核、氚核与能量的舞蹈。 +achievement.fusion=聚变 +achievement.gasCent.desc=未浓缩过的铀讨厌他! +achievement.gasCent=齐佩式离心 +achievement.goFish.desc=把鱼钉在十字架上 +achievement.goFish=去钓鱼 +achievement.hidden.desc=使用一节坠落的车厢杀死一只污染苦力怕 +achievement.hidden=隐藏目录 +achievement.horizonsBonus.desc=说实话,你到底怎么了 +achievement.horizonsBonus=地平线! +achievement.horizonsEnd.desc=送他回家 +achievement.horizonsEnd=地平线。 +achievement.horizonsStart.desc=将一个小伙子送上月球 +achievement.horizonsStart=地平线? +achievement.impossible.desc=你不可能取得该成就 +achievement.impossible=真的不可能 +achievement.inferno.desc=“把它变成灰烬!这还不够!投更多的炸弹!” +achievement.inferno=食人行动 +achievement.manhattan.desc=1945年8月6日 8:15 +achievement.manhattan=曼哈顿计划 +achievement.meltdown.desc=你都走到这一步了,怎么还能把事情搞砸? +achievement.meltdown=快速非计划拆卸 +achievement.no9.desc=“我希望我开采的铅能被用在你的油漆里” +achievement.no9=旧数字9 +achievement.omega12.desc=解决在这个可怜的星球上继续生存的问题 +achievement.omega12=欧米伽-12粒子加速器 +achievement.polymer.desc=美味、美味的微塑料。 +achievement.polymer=特氟隆 +achievement.potato.desc=你居然捅我!你没问——喔哦哦哦哦哦! +achievement.potato=反叛的AI +achievement.radDeath.desc=居里夫人开创了放射性理论、放射性治疗和放射性死亡。 +achievement.radDeath= +achievement.radium.desc=你 因 为 往 我 的 咖 啡 里 倒 镭 而 被 解 雇 了 ! +achievement.radium=不 可 思 议 先 生 +achievement.radPoison.desc=受辐射中毒的影响 +achievement.radPoison= +achievement.RBMKBoom.desc=谎言的代价是什么? +achievement.RBMKBoom=是15000伦琴 +achievement.RBMK.desc=他有妄想症,带他去医务室。 +achievement.RBMK=3.6伦琴? +achievement.redBalloons.desc=“这就是我们一直在等待的。就是这样,孩子们,这就是战争。” +achievement.redBalloons=99个红气球 +achievement.redRoom.desc=? +achievement.redRoom=另一边 +achievement.sacrifice.desc=直面火海并存活 +achievement.sacrifice=牺牲 +achievement.schrab.desc=不管怎样,我不会看太久。 +achievement.schrab=稳定岛 +achievement.selenium.desc=耶! +achievement.selenium=XVIII 月亮女神 +achievement.SILEX.desc=我保证这比听起来更酷。 +achievement.SILEX=激光激发法分离同位素 +achievement.slimeball.desc=粘液球 +achievement.slimeball=我应该把蛋蛋浸在硫酸里。 +achievement.stratum.desc=快刹车,Mitts! +achievement.stratum=岩层 +achievement.someWounds.desc=准备好 +achievement.someWounds=有些伤口永远无法愈合 +achievement.soyuz.desc=变得松脆 +achievement.soyuz=土豆烹饪 +achievement.space.desc=屡试屡败,浪费了价值9000万美元的资金 +achievement.space=最后的边疆——呃,算了吧 +achievement.sulfuric.desc=硫酸 +achievement.sulfuric=我不应该把蛋蛋浸在硫酸里的。 +achievement.tantalum.desc=一个难以捉摸但却永远需要的元素。 +achievement.tantalum=钽 +achievement.tasteofblood.desc=这不是任何测试的一部分 +achievement.tasteofblood=血的味道 +achievement.technetium.desc=它是药用的,它是药用的! +achievement.technetium=大个子,猪人 +achievement.watzBoom.desc=下次记得把毒泥浆容器清空 +achievement.watzBoom=令人厌恶 +achievement.watz.desc=可能包括Fólkvangr弗尔克范格场 +achievement.watz=126号元素的力量 +achievement.witchtaunter.desc=那些古怪的生物对你毫无兴趣! +achievement.witchtaunter=巫婆陶恩特 +achievement.ZIRNOXBoom.desc=生气了吗? +achievement.ZIRNOXBoom= +analyze.basic1=========NTM组件======== +analyze.basic2=更多信息请参阅Wiki。 +analyze.basic3=========附加信息======== +analyze.dummy=类型:Dummy Block +analyze.error=此方块的兼容性未正确设定。请将此问题作为Bug反馈! +analyze=名称:%s +analyze.noInfo=无附加信息。 +armor.blastProtection=修正 %s 的爆炸伤害 +armor.cap=伤害上限 %s +armor.damageModifier=修正 %s 对 %s 的伤害 +armor.dash=给予 %s 次冲刺 +armor.electricJetpack=离子喷射背包 +armor.explosionImmune=免疫除爆炸伤害外的一切伤害 +armor.fasterReload=快速装填 +armor.fastFall=快速降落 +armor.fireproof=防火 +armor.fullSetBonus=全套效果: +armor.geigerHUD=盖革计数器HUD +armor.geigerSound=盖革计数器警报 +armor.glider=滑翔 +armor.gravity=重力修正 %s +armor.hardLanding=硬着陆 +armor.ignoreLimit=防御值不受防御上限的影响 +armor.modifier=伤害修正 %s +armor.moreAmmo=更多弹药 +armor.nullDamage=免疫 %s 伤害 +armor.projectileProtection=免疫 %s 的弹射物伤害 +armor.rocketBoots=火箭靴 +armor.sprintBoost=冲刺辅助加速 +armor.stepSize=步长:%s +armor.thermal=热成像 +armor.threshold=伤害阈值 %s +armor.vats=敌对生物HUD +armor.yield=抵御低于%s的伤害 +armorMod.all=所有 +armorMod.applicableTo=适用于: +armorMod.boots=靴子 +armorMod.chestplates=胸甲 +armorMod.helmets=头盔 +armorMod.insertHere=插入装甲以改装。。。 +armorMod.leggings=护腿 +armorMod.type.battery=电池 +armorMod.type.boots=靴子 +armorMod.type.chestplate=胸甲 +armorMod.type.cladding=覆层 +armorMod.type.helmet=头盔 +armorMod.type.insert=插板 +armorMod.type.leggings=护腿 +armorMod.type.servo=伺服电机 +armorMod.type.special=特殊 +battery.mode.buffer=输入/输出模式 +battery.mode.input=输入模式 +battery.mode.off=关闭 +battery.mode.output=输出模式 +battery.priority.high=充电优先级:高 +battery.priority.high.desc=总是需要优先装满的紧急缓冲区 +battery.priority.low=充电优先级:低 +battery.priority.low.desc=在大多数情况下,需要在不影响机器性能的情况下$存储剩余的能量 +battery.priority.normal=充电优先级:正常 +battery.priority.normal.desc=较小的电网,其优先级无关紧要 +battery.priority.recommended=推荐用于: +battery.redstone.off=红石 关 +battery.redstone.on=红石 开 +bomb.detonated=成功引爆! +bomb.incompatible=设备无法触发! +bomb.launched=发射成功! +bomb.missingComponent=组件丢失! +bomb.nobomb=链接位置不兼容或已断开! +bomb.triggered=触发成功! +book.test.cover=停车坐爱枫林晚 +book.test.page1=测试页面1 +book.error.cover=粒子对撞机:$故障排除 +book.error.title1=错误 0x01 [能量不足] +book.error.page1=§l错误类型:§r \"错误_能量不足\" §l描述:§r 粒子到达了能量不足的部分。 §l修复方式:§r 用更高级的电源接口替换粒子成功通过的 其中一个电源接口,或者在粒子终止的段之前额外添加多一个电源接口。 +book.error.title2=错误 0x02 [无法分析] +book.error.page2=§l错误类型:§r \"错误_无法分析\" §l描述:§r 尽管没有通过分析室,但粒子已经到达核心。 §l修复方式:§r 确保加速器有一个分析室,并再次检查工作模式(线性/环形)。 +book.error.title3=错误 0x03 [通道阻塞] +book.error.page3=§l错误类型:§r \"错误_通道阻塞\" §l描述:§r 粒子与对撞机通道内的方块碰撞。 §l修复方式:§r 确保粒子对撞机内部没有任何障碍物, 粒子二极管和核心块除外。 +book.error.title4=错误 0x04 [缺少线圈] +book.error.page4=§l错误类型:§r \"错误_缺少线圈\" §l描述:§r 粒子通过了缺少一个或多个线圈的段。 §l修复方式:§r 移除冲突区域的对撞机镀层,并检查线圈结构是否完整。 这种错误也会发生在没有二极管的T型交叉口上。 +book.error.title5=错误 0x05 [错误区段] +book.error.page5=§l错误类型:§r \"错误_错误区段\" §l描述:§r 粒子通过了一个结构不正确的段(但既没有被阻塞也没有缺少线圈)。 §l修复方式:§r 确保有问题的部分都有镀层包裹,没有线圈暴露。 +book.error.title6=错误 0x06 [分析室过长] +book.error.page6=§l错误类型:§r \"错误_分析室过长\" §l描述:§r 粒子已通过三个以上所需的有效分析室段。 §l修复方式:§r 确保环形加速器的分析室长度正好为3个方块, 直线加速器的分析室长度至少为2个方块。 还要检查粒子是否未通过分支或 环形加速器中的多个分析室。 +book.error.title7=错误 0x07 [分析室过短] +book.error.page7=§l错误类型:§r \"错误_分析室过短\" §l描述:§r 粒子已离开分析室,尽管不符合长度要求。 §l修复方式:§r 确保环形加速器上的分析室正好有3个方块长。 有效的分析段没有线圈,镀层完全由分析室壁/窗组成。 带有线圈的分析室被视为规则段。 +book.error.title8=错误 0x08 [二极管方向错误] +book.error.page8=§l错误类型:§r \"错误_二极管方向错误\" §l描述:§r 该粒子与肖特基粒子二极管的非输入侧碰撞。§l修复方式:§r 检查二极管的配置是否正确。 粒子只能从带有绿色向内箭头的侧面进入二极管。 +book.error.title9=错误 0x09 [多处分支] +book.error.page9=§l错误类型:§r \"错误_多处分支\" §l描述:§r 粒子到达具有多个出口的转弯处。§l修复方式:§r 如果你的对撞机是正常的,检查所有需要的线圈是否都存在(即线圈中没有缺漏)。如果转弯处打算进行分支,则需要正确放置的肖特基粒子二极管。 +book.rbmk.cover=$我的第一个$RBMK石墨式反应堆:$建造一个$反应堆$的基础知识 +book.rbmk.title1=介绍 +book.rbmk.page1=§lRBMK石墨式反应堆§r是一个完全模块化的核反应堆. 与大多数其他反应堆不同的 +book.rbmk.title2=热量 +book.rbmk.page2=当反应堆运行 +book.rbmk.title3=燃料棒 +book.rbmk.page3=反应堆中的 §l燃料棒§r 将捕获周围的中 +book.rbmk.title4=控制棒 +book.rbmk.page4=反应堆中的 §l控制棒§r 将减少中子通过它的数量. 完全插入 +book.rbmk.title5=控制棒 - 使用 +book.rbmk.title5.scale= +book.rbmk.page5=当前控制棒插入的程度将显示在GUI的中心. 边的彩色按钮将把控制棒添加到不同的颜色组 +book.rbmk.title6=自动控制棒 +book.rbmk.page6=§L自动控制棒§r 与常规控制棒几乎相 +book.rbmk.title7=蒸汽管道 +book.rbmk.page7=反应堆中的 §l蒸汽管道§r 是唯一能有效降低反应堆热水平的组件. 如果一个蒸汽管道组件的沸点高于其设定的蒸汽类型的沸 +book.rbmk.title8=碳化钨中子反射器 +book.rbmk.page8=反应堆中的 §l碳化钨中子反射器§r 将阻止中子的通 +book.rbmk.title9=硼中子吸收器 +book.rbmk.page9=§l硼中子吸收器§r 只是阻挡中子. 被吸收的中子不会产生热量,会被有效地吸收. 这有助于防止燃料棒发生过度反应从而超出临界值. +book.rbmk.title10=石墨慢化剂 +book.rbmk.page10=§l石墨慢化剂§r 把穿过它的快中子转换成慢中子. 大多数核燃料反应释放出快中 +book.rbmk.title11=结构柱 +book.rbmk.page11=§l结构柱§r 对中子没有任何影响也没有任何特殊用途. 建议在没有其他合适组件的情况下用结构柱填充反应 +book.rbmk.title12=控制台 +book.rbmk.page12=§lRBMK石墨式反应堆控制台§r 允许你远程控制反应堆. 使用 §lRBMK石墨式反应堆连接装置记录反应堆§r 然后潜行右击控制台就能把反应堆和控制台连接起来. 一个控制台只能控制15x15个组 +book.rbmk.title13=控制台的使用 +book.rbmk.page13=单击屏幕上的组件将选择或取消选择它们. 使用彩色按钮,可以快速选择该颜色组中的所有控制棒. 按钮“A”将选择所有控制 +book.rbmk.page14=在绿色框中输入一个介于0和100之间的数 +book.rbmk.title15=核燃料 +book.rbmk.page15=§l核燃料§r 的反应取决于许多因素. 主要是 §l核燃料强度§ +book.rbmk.title16=熔毁 +book.rbmk.page16=§4§l尽量避免发 +book.starter.cover=重建$社会的实业家$指南 +book.starter.title1=介绍 +book.starter.page1=如果你正在读这篇文章,很可能社会已经因这样或 那样的方式完全崩溃了。政府、国家和权威是过去的概念, 以及文明生活的所有便利设施。因此,本指南将 告诉您如何通过重新创造过去的行业和技术 来改善自己的生活,从而改变这种状况。 +book.starter.title2=煤和芥子气 +book.starter.page2=虽然无法预测世界末日后的实际状态, 但目前形式的战争和工业不太可能没有结束。 为了保护自己的肺部,一种有效且廉价的方法是 在§L布§r上小便,制作一个§L防毒面具§r, 以使你免受煤尘或芥子气的伤害. +book.starter.title3=铁砧和锻压机 +book.starter.page3=开始工业振兴的精髓是§l砧§r和§l火力锻压机§r. 铁砧将允许您手动组合早期机械,如组装机, 而火力锻压机将允许您制作 无法用铁砧制作的板材、电线和电路. +book.starter.title4=模板 +book.starter.page4=为了将金属冲压成有用的 形状、组装机械和执行 化学反应,您需要创建 一个§L机器模板文件夹§r, 以创建右侧显示的 各种锻模以及配方。 +book.starter.title5=废墟探索 +book.starter.page5=根据最初的世界末日事件对世界现有结构的影响程度, 有可能直接从中抢救出许多有用的材料和机器。 钢铁等金属合金、电路等部件,甚至核电站的 裂变材料都可能在等着你。 然而,要小心某些废墟,因为那里可能潜伏着过度的危险, 就像草丛中的蛇一样; 等待着用辐射、陷阱或无法形容的恐怖袭击你... +book.starter.title6=早期机械 +book.starter.page6a=您应首先制造的两台机器是§l高炉§r和§l装配机§r. 前者允许您制造合金,如§L钢§r、§l工业级铜§r和§l高级合金§r; 你需要将这些金属用于机器的机身、 电路的布线、高级电磁铁等. +book.starter.page6b=装配机将用于制造本指南中描述的几乎所有其他机器. 您需要一个电源,如§L火力§r§L发电机§r或§L太阳能锅炉§r. +book.starter.page7a=§l粉碎机§r以及一对粉碎机刀片将会非常有用, 能将大多数矿石粉碎成可熔炼的粉末,使其产量提高一倍. 这些粉末对于开始为各种机器制作电路也至关重要, 例如§l增强电路§r和§l超频电路§r。 +book.starter.page7b=使用您的新机器,您可以制造§L化工厂§r, 用于合成更好的电路、混凝土或进行石化产品加工等。 +book.starter.title8=黑金 +book.starter.page8a=使用§l石油§l储层§r§l探测仪§ +book.starter.page8b=在§l炼油厂§r中提炼和分离石油 成分之 +book.starter.title9=石油化工产品 +book.starter.page9=使用§l化工厂§ +book.starter.title10=先进的机械 +book.starter.page10=通过一套成熟的石油加工系 +book.starter.title11=特殊地层 +book.starter.page11=在你行走的地面之下,有几个 自然形成的§l岩层§r,或者说特殊的 矿层和岩层。 §l片岩地层§r是蓝色的含锂层, 其中有铀、铁、铜、石棉和其他矿石 可供你使用。 §l深层岩石§r含有大量稀有矿 +book.starter.title12=辐射 +book.starter.page12a=本书其余部分将讨论与辐射有关的问题。 为了您和他人的安全,我将提供一些建议以说明如何缓解和处理暴露于此的风险。 +book.starter.page12b=充分暴露在辐射中会导致身体伤害. 第一步是预防; 一定要限制接触,并穿戴防护装备,如§l防辐射套装§ +book.starter.title13=铀浓缩 +book.starter.page13=核反应堆的燃料有几个简单的选择; 例如,§l天然铀§r或§l钍燃料§r。 然 +book.starter.title14=芝加哥反应堆 +book.starter.page14=或者,您可以使用§l芝加哥反应堆§r从天然铀中增殖出 §l反应堆级钚§r,这是一种更强大的燃料. 通过堆叠石墨块并在其中钻孔,您可以将燃料棒插入钚 和中子源棒,例如§l镭226-铍中子源§r,以开始反应. 确保测试你的设计;为防止过 +book.starter.title15=ZIRNOX锆诺克斯 +book.starter.page15=最终,你可以制造你的第一个§o真正§r的能源来源: §lZIRNOX§r核反应堆. 与其他能量源相比,核反应堆需要更多的准备; 首先,你需要有一个强悍的水源,比如§l重型§l无限水罐§r. 要从反应堆堆芯中排出热量并将水煮沸成蒸 +book.starter.title16=结论 +book.starter.page16=如果你已经走到了这一步,你已经走在重建文明大道上了. 你已经成功地用核 +book.starter.title18=关于作者 +book.starter.page18=v?r只是一个被困在\"传声头像\"的§o《一生一次》§r中的 灰色虚空中太久的人. 有一 +_comment=Stuffs that Bob doesn't provide translation for +book_lore.author=%s 著 +book_lore.test=测试 +book_lore.test.author=那个家伙 +book_lore.test.page.0=>哈喽 在我开始之前 我得先澄清一下 我不是同性恋 >做我 >今天晚上 >六点 >趁爸妈出去几天 我和铁哥们去外面玩 >我们成了铁哥们已经有一年了 >喝了点酒 打了很多游戏 还点了个披萨 >我们玩得正高兴 >晚上 在一个什么时候 大概九点吧 他讲了个很好笑的笑话 我记不清了 但是我记着 那笑话让我俩笑疯了 >没来得及细想 我拿手捋了捋他的头发 黑色的微卷的头发 还说他真有意思 >他脸红了 >我意识到自己慌了 >我们有点太亲密了 >突然他亲了我 不知道为什么 我亲回去了 >我们做爱了 >抱在一起睡着了 >半夜我醒了 发现他脑袋贴着我的胸和脖子 >这种感觉很奇妙 但我真的不是同性恋 +book_lore.test.page.1=我打这些字的时候他正在我 怀里睡觉。我怎么就这样让 我哥们失望了?我不想变成 [数据删除] /b/ +book_lore.test.page.2= +book_lore.test.page.3= +book_lore.test.page.4= +book_lore.book_iodine=笔记 +book_lore.book_iodine.author=戴夫 +book_lore.book_iodine.page.0=说起来你肯定不信:“风向 标”那老家伙在离开两个月 之后又重新出现了。而且更 惊人的是,他打算把那伙人 在峡谷里干的秘密勾当泄露 出去。 +book_lore.book_iodine.page.1=搞研发的那群白痴们偶然发 现了一种化合物:大部分是 无机的,很像自然界中的 毒素。但是注意:被这种毒素 杀死的细胞会产生更多的同 种毒素,并将其释放到皮肤 外面,这就产生了传染性极 强的气溶胶。 +book_lore.book_iodine.page.2=这东西像病毒但又不是病毒。 这种物质非常奇怪,你在家 随便找一个瓶子就能混合 出来,但是必须要搞对顺序。 博士告诉我,第一种原料是 粉末状碘晶体,放在 第%d格。 +book_lore.book_phosphorous=笔记 +book_lore.book_phosphorous.author=戴夫 +book_lore.book_phosphorous.page.0=哈喽,又是我。你应该看到 我的上一篇备忘录了吧。 博士对我写备忘录这件事有 点生气,所以我得快点写完。 那群搞研发的傻帽又开始一 个劲地抱怨,估计还是什 么钱的事。 +book_lore.book_phosphorous.page.1=对了,“风向标”博士发现了 第二种原料是红磷,应该 放在第%d格。 +book_lore.book_dust=笔记 +book_lore.book_dust.author=戴夫 +book_lore.book_dust.page.0=博士发现搞研发的那群呆子 还留了个样品之后气得要命, 大喊大叫了一通“总体过失” 和“世界末日”什么的。 我告诉他先冷静一下, +book_lore.book_dust.page.1=太激动对血压不好,而且他 本身就没有那么多血。那群 呆子里面的一个在上周的通 报里说漏了嘴。他们管他们 调出来的那玩意儿叫“MKU” ——管他是什么意思,而且 那玩意儿里面还有家里的 绒毛。 +book_lore.book_dust.page.2=你肯定不信,那群呆子最危 险的发明之一里面还有灰尘 ——奇怪的是,他们甚至提到 这东西应该放在第%d格。 +book_lore.book_mercury=笔记 +book_lore.book_mercury.author=戴夫 +book_lore.book_mercury.page.0=就是这么回事。不算吐血的 部分,毒理学报告很大程度 上呈现了汞中毒的特征。 为什么?因为那堆混合物里 也含有水银! +book_lore.book_mercury.page.1=我很好奇,这东西被细胞复 制的时候,复制出来的物质 是从哪来的? 扯远了。水银应该放到 第%d格。 +book_lore.book_flower=笔记 +book_lore.book_flower.author=戴夫 +book_lore.book_flower.page.0=还记得我在第一篇备忘录里 提到了“这东西大部分是无 机的”吗?你猜怎么着, 老“风向标”跟我分享了第 四样原料:一种花,学名叫 “ipomoea nil”。是牵牛花! +book_lore.book_flower.page.1=可能是由于牵牛花较低的硫 含量,用别的花都不行。 牵牛花应该放在第%d格。 +book_lore.book_syringe=笔记 +book_lore.book_syringe.author=戴夫 +book_lore.book_syringe.page.0=对我第五篇备忘录的一点 补充:很显然你应该找个容 器把这些MKU装进去。搞 研发的那帮疯子用的是从医 疗机构弄到的普通金属注射 器——我推测还有不少多余 的。他们弄了几千个,然后 扔的到处都是。 +book_lore.book_syringe.page.1=金属注射器 应该放在第%d格。 +book_lore.resignation_note=辞职信 +book_lore.resignation_note.author=科斯马 +book_lore.resignation_note.page.0=管理层昨天又对我们的部门 进行裁员了。那群白痴要怪 只能怪他们自己,我都不知 道他们在那场惨败后还在期 待什么。到底是谁他妈泄露 了那种程度的信息? +book_lore.resignation_note.page.1=我们损失了几百万,而且现 在失业的还是爷。老子希望 你们这帮混蛋最后能从你们 的一堆问题中学到点教训然 后给爷滚去自闭。 +book_lore.resignation_note.page.2=我周五不回来了。 记得把工资发我。 +book_lore.memo_stocks=公司内部备忘录 +book_lore.memo_stocks.page.0=投资人相关 - $ $ 上季度报告提供的数字中已 经出现了明显差异。财政部 门即使做出一些调整也是相 当谨慎的,因此无需担心。 +book_lore.memo_schrab_gsa=内部备忘录 +book_lore.memo_schrab_gsa.page.0=合同管理记录 - $ $ 法务部在与DLA的谈判中 取得了突破。他们批准了 450亿的联邦采购服务 总署投资资金用于异变金属 的采购与研究。 +book_lore.memo_schrab_gsa.page.1=就目前的预期,相关事项能 够带来至少40%%的利润, 以及获得未来合同的更大可 能。由于此事件的保密性质, 所有财政证据都将保持机密。 +book_lore.memo_schrab_rd=内部备忘录 +book_lore.memo_schrab_rd.page.0=研发 - $ $ 目前我们生产异变金属的 主要方法是使用新型粒子加 速器。然而,与产出量相比, 能源成本高得惊人。 +book_lore.memo_schrab_rd.page.1=然而,施拉鲍尔博士发现了 一种全新的相互作用—— 暂称为“奇异轻子振荡”—— 该作用可以显著降低生产 成本。通过一个目前未被完 全理解的的过程,提供的电子 被一种奇特的“魔力”转化 为极高能量的光子。 +book_lore.memo_schrab_rd.page.2=这是许多已明确的粒子转换 定律的极端例外。但初步实 验证明,这些质子先转变为 上下夸克,最终形成了异变 金属。 +book_lore.memo_schrab_rd.page.3=奇怪的是,原型机中需要钨与 少量异变金属形成的合金。 另外,原型机中也需要一个 特殊的电容器,用于消除多 余的正电荷。 +book_lore.memo_schrab_nuke=研究报告 +book_lore.memo_schrab_nuke.author=施拉鲍尔博士 +book_lore.memo_schrab_nuke.page.0=最近的研究将我们引至了核 爆对材料的影响。多亏了外 界的拨款,我们“意外地” 测试了我们的铀定向合成异 变金属理论。 +book_lore.memo_schrab_nuke.page.1=而此前我们只在回旋加速器 中制作出异变金属。然而, 我们在埃弗韦彭的地下实验 室的铀矿石中发现了微量的 异变金属,附近所有的纯 金属铀则都发生了裂变。 +book_lore.memo_schrab_nuke.page.2=既然如此,那么使用浓缩到 临界质量附近的铀矿石,或 者是含有大量可裂变核废料 的脏弹,都有可能在理论上 创造足以人工收集的量的 异变金属。 +book_lore.bf_bomb_1=私人笔记 +book_lore.bf_bomb_1.author=M. 波特 +book_lore.bf_bomb_1.page.0=虽然过了很久,但我的工作 调动申请终于批下来了。那 些刚升级的毕业生已经够难 对付了,更别提上边那些人 ——他们一点专业素质 都没有。 $ 换工作地点也不全是好事—— 现在这个实验室拒绝提供进 一步的细节,而且我已经被 另外一个魔法般的新发现 搞得够乱了。 +book_lore.bf_bomb_1.page.1=就是这样。那些学生们各有 各的疑惑 (想想他们多有 精神就知道这有多让人奇怪), 而我唯一的……同事 (竞争 对手?) 只是在做发小册 子的工作。这些事之间的联 系绝对比我想的要复杂。他 的笔记很打击人: +book_lore.bf_bomb_1.page.2=“又有一种奇异物质被偶然 发现;这种物质被指明是反 物质和一种边缘同位素的复 合物。小册子上说它叫‘旋素’ ——鬼知道这名字什么意思, 然后就没了。 +book_lore.bf_bomb_1.page.3=“怪不得他们想找个理论物 理学家,还不是因为他们连 这东西是什么都不知道。但 另一方面,基本上随便什么 工作都比我的旧职位强, 所以我也别抱怨这上面基本 什么都没有了。” +book_lore.bf_bomb_2=私人笔记 +book_lore.bf_bomb_2.author=M. 波特 +book_lore.bf_bomb_2.page.0=即使那本小册子上缺少大量 信息,我还是希望他们知道 的比我更多一点。但是他们 也不知道别的了。其他年长 一些的研究员都对这种物质 有一种盲目的信念:他们的 命题都是完全合理的。 我压根无话可说! +book_lore.bf_bomb_2.page.1=而且我甚至没法责备他们。 “旋素”没个屁的合理性! 这东西和我见过的其他物质 完全不一样。它的外表令人 毛骨悚然:它的颜色不停变 换着,霓虹绿色的表面上弥 漫着颜色略深的线条。 +book_lore.bf_bomb_2.page.2=更糟的是这东西还是个能量 源。我们样品的存在本身 就是对“ALARA”规则的 违背:当样本到达实验室时, 我们都撤离了实验室,唯一 一个够勇敢的人 (叫“梅菲因博士”) 也只穿着A级防护服移动了 样品20米。 +book_lore.bf_bomb_2.page.3=实验上的数据也没有好多少。 这东西辐射的能量非常强, 强到好像热力学第一定律都 要被打破一样;在这东西附 近的任何地方待着——甚至隔 着一米厚的铅——都十分恐怖。 我们做了光谱学方面的推断 就冲出了实验室,但什么新 发现都没有。 +book_lore.bf_bomb_2.page.4=但在这些事之后,科研团队 里的那群白痴竟然一点都没 有动摇!在那么些“讨论” 的时候干坐着够难受了; 一个带头人还胡乱说对这项 试验的禁令会被取消,也就 是说接下来几周我们可以逃 脱这些烂摊子来好好造炸弹。 +book_lore.bf_bomb_2.page.5=他们心里到底觉得谁会来干 这件事?麻烦得要命。最后, 一个理智的助手 (叫安德鲁) 给这种物质起了个外号叫 “野火”——因为和这东西比 起来,在火葬堆上被活活烧 死的痛苦都不算什么。 +book_lore.bf_bomb_3=私人笔记 +book_lore.bf_bomb_3.author=M. 波特 +book_lore.bf_bomb_3.page.0=我和我的团队取得了一些突 破。谈一下我的“分离” ——我把自己从那些更“虔诚” 的人里面分离出来之后,在 那工作变得好受多了。虽然 我们仍然对野火的具体性质 不甚了解 (因为研究一个 会毁了设备的东西非常难) , +book_lore.bf_bomb_3.page.1=但对野火与其他物质相互作 用的研究取得了丰硕成果。 值得注意的是,野火会与其 他物质形成“气态”;所有人 里面,只有安德鲁提醒我: 那其实是悬浮在稀有气体中 的微小野火粒子形成的胶体, +book_lore.bf_bomb_3.page.2=每个野火粒子都被带正电的 “气体泡”包裹着,这样这些 粒子就不会沉降。谁能想到 这东西的致命伽马辐射会有 好处?反正不是我。 +book_lore.bf_bomb_3.page.3=我尽量不去想他们是怎么把 样品转化成微粒的,但我并 不能把这些气态野火的实用 性一笔带过——气态野火使得 对野火的研究更加安全了。 $ 说到安全,带头人 (冷酷无情事不关己地) 做了一项差点让他掉脑袋的 发现。 +book_lore.bf_bomb_3.page.4=他决定把自己“弄脏”: 让一单元量的野火胶体和极 其昂贵的反物质直接反应。 产生的爆炸把它们所在的桌 子化成了一块被大量辐照过 的废渣,并在桌面上刻出了 一个几乎完美的半球, +book_lore.bf_bomb_3.page.5=还让领头人的脑袋吸收了足 以引起急性放射综合征的辐 射。我觉得我们现在知道了 怎么引爆野火, 但是某些人…… +book_lore.bf_bomb_4=私人笔记 +book_lore.bf_bomb_4.author=M. 波特 +book_lore.bf_bomb_4.page.0=我没办法逃脱我的旧工作。 现在这种死气沉沉的动荡 时代,只有这个地方在招人 了;但我不会再回我那个坑 里了。 $ 他们只是在诱惑我,因为我 需要出去,需要挣快钱。 还记得我们一周前退出的空 中试验协定吗? +book_lore.bf_bomb_4.page.1=那些掌管我们实验室的烂人 终于做对了一次。谴责与我 们将野火武器化需要的一大 批科学家一同到来。这里缺 少的批判性思维真是令人费 解——安德鲁甚至在第一份 该死的野火炸弹设计开始草 拟的那一刻突然不干了。 +book_lore.bf_bomb_4.page.2=那个梅菲因看上去打小算盘 打得很高兴,难道他搬野火 样品的时候脑子坏掉了? ——他还提出了使用固化的野 火以及高压电池的傻逼设计。 +book_lore.bf_bomb_4.page.3=很显然,这种形式的物质输 出的能量和激活途径或者别 的什么玩意和传统核弹比, 就像钚跟铀在传统核弹里面 比一样;但最终的结果是初 始的震荡引发了爆炸。 这倒是挺有意思。 +book_lore.bf_bomb_4.page.4=他们这些人都把注意力集中 在了激活上,而完全忽略了 具体机制——因为他们连点头 绪都摸不着!现在看来或许 就是魔法,然而那些人还在 尝试参透整个过程——也只是 为了制造更多战争用的武器 而已。 +book_lore.bf_bomb_5=私人笔记 +book_lore.bf_bomb_5.author=M. 波特 +book_lore.bf_bomb_5.page.0=就算过了很多天,我…… 还是理解不了这些。整个科 研团队对安全的轻率,似乎 让整个事情成了必然结局。 $ $ 梅菲因·M.S.博士,已经 离开了,或许已经离开这个 世界了。悲剧,就在我的眼皮 底下,就在他们的试验仓里, 发生了。 +book_lore.bf_bomb_5.page.1=那时候我们刚刚得到另外一 批野火纯品,而且他已经修 好了用来测试他的提案的电 子设备和能量源。我不知道 到底是什么导致的 (开机了吗?还是开始得 太早了?) ,但是悲剧貌似 已经痛苦地、缓慢地开始了。 +book_lore.bf_bomb_5.page.2=野火的绿色光芒逐渐吞噬了 桌子,吞噬了电池,吞噬了站 在一米之外的梅菲因博士, 甚至桌子都被降解成了地板 上一滩滚烫的金属,但梅菲 因还没有燃烧。我不知道他 从自己的眼里看到了什么…… $ $ 或许,恐惧,或者敬畏笼罩了 梅菲因最后的生存时间? +book_lore.bf_bomb_5.page.3=不管我们的“奇迹”物质是 什么,它都不在乎。突然间, 一束炽热的闪光出现,闪光 过后,梅菲因就消失了。他蒸 发了?被烧化了?还是湮灭 了?见鬼去吧,我没法知道 了! +book_lore.bf_bomb_5.page.4=领头人让我感觉很恶心。 “我们本来能更小心”“本来 能一直监控着”,还有其他 管它是什么的提高士气的污 物从他嘴里呕出来。这家伙 永远都不会明白“玩火自焚”! +book_lore.bf_bomb_5.page.5=我不嫌辞职麻烦,就立马卷 了铺盖,向山里跑去。但后 果并没有那么严重;考虑到 那边缺少电话,而且看到从 我的 (前) 工作地点升起 的蘑菇云,他们应该不是被 炸飞了,就是上了最高等级 的军事法庭了。 +book_lore.bf_bomb_5.page.6=在“死体解剖”和“活体解剖” 之间,我们必须要做出选择; 有一个选项已经在他们身上 明明白白地失败了。他们 想解剖多少金属或者原子就 能解剖多少;但是批判现实、 解剖现实这件事,只能在更 多的梅菲因身上走向终结。 谁知道呢! +book_lore.bf_bomb_5.page.7=到最后,政府还是想把这堆 烂摊子拿来研发炸弹。或许, 我们还会看到更多的战争, 看到更多的人被迫接受比死 亡更惨的命运。 他们不可能永远都藏着掖着。 +book_lore.bf_bomb_5.page.8=我不在乎了。再也不在乎了。 老天爷啊,让我回到真正的 科学之中吧! $ $ 该死,Mae,找找你自己…… +book_lore.beacon=信号信标说明书 +book_lore.beacon.author=Flim Flam工业 +book_lore.beacon.page.0=感谢您购买Mk.2照明信号信标 (版本1.3)! 这本小册子将简要介绍信标 的操作及其内部工作原理。 +book_lore.beacon.page.1=第1章:构成 $ 每个单元由四个主要部分 组成:控制电路、灯笼、雾号 和容纳其他部分的外壳。 有关主电路的详细说明,请 参考外壳维护盖内部的 电路图。 +book_lore.beacon.page.2=灯笼由聚碳酸酯外壳组成, 外壳内有一个标准200mm 的双色250瓦卤素灯泡, 替换用灯泡可以从我们的 商店订购。 +book_lore.beacon.page.3=不建议使用第三方灯泡,因为 我们无法确保安全操作。外壳 由专门的镀锌不锈钢制成, 具有耐用性。 +book_lore.beacon.page.4=第2章:灯笼 $ 灯笼的主要用途是在恶劣的 天气条件下提供照明以便 维护,同时指示信标的状态。 如果开机自检 (POST) 失败,灯将 +book_lore.beacon.page.5=亮起红色,否则就会亮起 绿色。请注意,颜色可能因 替换用灯泡的不同而有所 不同。 +book_lore.beacon.page.6=第3章:雾号 $ 雾号是信标的主要通信设备。 该信标被设计用于点对点 (P2P) 通信以及 消息广播。 +book_lore.beacon.page.7=第4章:P2P通信 $ 有关通信的详细信息,请参阅 通信手册。建立P2P连接的 简要介绍如下:首先,信标 必须给出“开始连接”信号, +book_lore.beacon.page.8=该信号是单一的长音。所有 可用的对等端也应使用一个 长音进行响应 (由接近度指定的顺序,以及 手册“响应连接”一节中 概述的通信指南) +book_lore.beacon.page.9=一旦所需对等端做出响应, 则给出“接受连接”信号, 即两个长音,然后对等端也 将用两个长音调进行响应。 之后的所有通信都必须使用 预先协商的信号来进行, +book_lore.beacon.page.10=最常用的是FAR-5M标准。 如果没有协商标准,通信将 立即结束,起到“ping” 的作用。如果通信继续, 可以使用另一个长单音 “结束连接”来结束连接。 +book_lore.beacon.page.11=第5章:保修 $ [页面故意留空] +cannery.f1=[按F1键获取帮助] +cannery.centrifuge=气体离心机 +cannery.centrifuge.0=气体离心机可以使用通用流体管道传输流体。 +cannery.centrifuge.1=大多数配方需要多台离心机。中间产品不能通过管道运输。 +cannery.centrifuge.2=该侧用作将中间产品输出到相邻离心机的连接口。 +cannery.centrifuge.3=六氟化铀只需两台离心机即可加工,但这将只产出铀燃料和铀-238。 +cannery.centrifuge.4=将其完全加工成铀-235和铀-238总共需要四台离心机。 +cannery.centrifuge.5=一些配方还需要离心机超频升级。 +cannery.crucible=坩埚 +cannery.crucible.0=坩埚用于熔炼矿石、铸锭或其他金属物品以进行合金化,并将其铸造成不同形状。 +cannery.crucible.1=它需要一个外部热源连接到底部,例如燃烧室。 +cannery.crucible.2=一旦加热,坩埚可以以两种方式运行,有或没有配方模板。 +cannery.crucible.3=坩埚有两个材料储存缓冲区: +cannery.crucible.4=左边的缓冲区用于缓存§a副产品§r,所有没有配方模板的熔炼材料都将缓存在这里。 +cannery.crucible.5=如果有熔炼配方,与配方不匹配的材料也将存储在这里。 +cannery.crucible.6=该缓冲区中的材料不会相互反应,只能从绿色出口输出用于铸造。 +cannery.crucible.7=右侧的缓冲区用于放入§c配方§r,如果安装了一个配方,并且该特定材料与该配方相关,则它将储存在此处。 +cannery.crucible.8=这些材料将慢慢结合成输出材料,从红色出口自动输出。 +cannery.crucible.9=请注意,只有这个缓冲区处理配方。如果更换模板,副产品缓冲区中的材料不会结合,也不会转移到配方缓冲区。 +cannery.crucible.10=如果目标有效,例如铸造通道或模具,出口将自动输出材料。 +cannery.crucible.11=与所有铸造块一样,可以使用铲子从坩埚中移除所有材料。 +cannery.fensu= +cannery.fensu.0=FEnSU能够存储超过9EHE(即9后18个零)的荒谬能量。 +cannery.fensu.1=只有在其底部有一个电线接口。 +cannery.fensu.2=这也是FEnSU唯一可以接收红石信号的地方。 +cannery.firebox=燃烧室 +cannery.firebox.0=燃烧室通过燃烧可燃物品产生热量。 +cannery.firebox.1=它可以燃烧任何可燃物品,但更高质量的燃料如煤、焦炭和固体燃料燃烧时间更长,温度更高。 +cannery.firebox.2=燃烧室顶部的铜触点可以传导热量。底部具有相同触点的机器可以通过放置在燃烧室顶部来接收热量。 +cannery.firebox.3=如果热量没有用完,且热量缓冲器变满,燃烧室将暂停运行,以防止燃料浪费。 +cannery.firebox.4=一种这样的机器是斯特林发电机,它将热量直接转化为能量。 +cannery.foundryChannel=铸造通道 +cannery.foundryChannel.0=铸造通道用于将熔融材料从坩埚或储罐输送到模具中。 +cannery.foundryChannel.1=通道可以通过从顶部(通过出口或直接连接坩埚)或从其他通道的侧面倾倒来接收材料。 +cannery.foundryChannel.2=运输材料时,渠道将优先考虑出口和浅铸造池等方块。 +cannery.foundryChannel.3=当无法供应出口或模具时,材料将流入相邻通道。 +cannery.foundryChannel.4=剩余材料可以用铲子清除。 +cannery.silex= +cannery.silex.0=自由电子激光器(FEL)利用能量和激光晶体产生强大的激光束。 +cannery.silex.1=小心,因为激光会烧毁或熔化较脆弱的方块… +cannery.silex.2=…但不是防爆的。 +cannery.silex.3=FEL用于为激光同位素分离室(SILEX)提供能量。FEL和SILEX必须至少相隔两个方块。 +cannery.silex.4=激光必须通过SILEX的玻璃开口进入。在错误的方向上入射可能会摧毁它。 +cannery.silex.5=侧面的开口可以使流体管道连接至SILEX上。 +cannery.silex.6=除了侧面的两个连接口之外,底部还有第三个隐藏连接口,可以从中抽取产品。 +cannery.silex.7=每个配方都需要特定的激光类型。使用比所需类型更强的激光将更快地处理项目。 +cannery.silex.8=一台FEL最多可以为5台SILEX供能。每个SILEX之间必须间隔一个方块。 +cannery.stirling=斯特林发电机 +cannery.stirling.0=斯特林发电机使用来自外部的热能来产生能量。 +cannery.stirling.1=它需要放置在发热机器的顶部,如燃烧室。 +cannery.stirling.2=然而,它可以利用的热量有限,过旋转可能导致灾难性故障。 +cannery.stirling.3=升级版可以在不损坏的情况下承受更多热量。 +cannery.willow=芥子柳 +cannery.willow.0=芥子柳是一种可以富集镉金属的植物。 +cannery.willow.1=芥子柳可以种植在泥土、草地上,甚至是泥渣或油泥上,但它们需要水才能生长。 +cannery.willow.2=芥子柳可以用骨粉或工业肥料催熟。它们不需要光就可以生长。 +cannery.willow.3=在第二阶段的生长之后,它们将需要在上方有至少一个方块的空间才能进一步生长。 +cannery.willow.4=在生长的第四阶段之后,它们需要下面有泥渣或油泥。 +cannery.willow.5=这可以通过在泥渣或油泥上手动种植芥子柳来实现,也可以通过在附近设置一个不断污染地面的水力压裂塔来实现。 +cannery.willow.6=到达最后阶段后,芥子柳将清除地面上的污染物,使泥渣或油泥恢复为正常的泥土。 +cannery.willow.7=现在芥子柳的叶子可以收割了。打破顶部的块状物会掉落一株3-6片叶子的小芥子柳,并保持植物底部的完整。 +cannery.willow.8=很快,这种植物就会重新开始生长,如果泥土被油泥取代,就会长出更多的叶子。叶子可以用酸化机加工成镉粉。 +cannery.willow.9=使用自动锯可以自动收割柳叶,它只会打碎准备收割的植物。 +cannery.hadron=粒子加速器 +cannery.hadron.0=粒子加速器包含3个主要部分: 核心,粒子分析室以及一系列的超导线圈。 +cannery.hadron.1=画面上的方块为粒子加速器核心组件,会以相对论的速度沿线圈向粒子分析室发射粒子。 +cannery.hadron.2=粒子会从此面发射; +cannery.hadron.3=在环形加速器中,会回到此面。 +cannery.hadron.4=每个线圈区段由8个致密线圈构成,中间留空(或放置粒子加速器核心)。 +cannery.hadron.5=线圈区段本身也必须被粒子加速器镀层包裹。 +cannery.hadron.6=加速器中还需要添加一个或多个粒子加速器接入终端,以与核心组件交互。 +cannery.hadron.7=核心组件也需要电力运行,因此需要在边缘添加电源接口。 +cannery.hadron.8=粒子加速器需要足够的电源接口来供给至少10kHE每单位线圈强度的能量。 +cannery.hadron.9=注意:环绕核心组件的线圈区段不参与线圈强度计算, +cannery.hadron.10=而且完全的直线粒子加速器不需要此区段。 +cannery.hadron.11=环形加速器中,需要如下的转角结构来改变粒子的方向: +cannery.hadron.12=外侧转角的线圈可以被完全去除。 +cannery.hadron.13=粒子加速器的最终部分是粒子分析室,这是一个由分析室方块包围的3x3x3空间。 +cannery.hadron.14=搭建完成的粒子加速器的外观应该类似下面这样: +cannery.hadron.math.0=致密钕线圈强度:50 +cannery.hadron.math.1= +cannery.hadron.math.2=致密星辉线圈强度: +cannery.hadron.math.3= +cannery.schottky=肖基特二极管 +cannery.schottky.0=画面上的方块为肖基特二极管。此方块可用于更复杂的粒子加速器设计,也可用于节省电能。 +cannery.schottky.1=默认状态下,二极管会阻挡所有粒子,需要使用螺丝刀进行配置。 +cannery.schottky.2=此面会接受进入的粒子, +cannery.schottky.3=而此面会将进入的粒子发射出去。 +cannery.schottky.4=现在图中的二极管含有两个出口,会表现出“量子”行为:在每个出口创造一个“虚拟粒子”。 +cannery.schottky.5=一旦所有的“虚拟粒子”都达到了分析室,粒子加速器就会选择动量需求最低的配方执行。 +cannery.schottky.6=被选中的粒子会经历“波函数坍缩”,变成真实的粒子,并且加速器只会消耗“坍缩”的虚拟粒子需求的能量。 +cannery.schottky.7=如果某一个虚拟粒子进入了结构不正确的区段,所有的虚拟粒子都会被销毁,而且坍缩的将是出错的粒子而非其他到达分析室的粒子。 +cannery.schottky.8=注意:同一个虚拟粒子只会经过同一个二极管的同一出口一次。虚拟粒子不会进入死循环,但仍然可以进入另一个二极管。 +cannery.schottky.9=肖基特二极管周围应具有合适的结构,使得粒子在每个交叉点处都有路可走。 +chem.ARSENIC=砷提取 +chem.ASPHALT=沥青生产 +chem.BAKELITE=电木生产 +chem.BALEFIRE=野火火箭燃料混合 +chem.BP_BIOFUEL=生物燃料酯化 +chem.BP_BIOGAS=沼气生产 +chem.C4=C-4合成 +chem.CC_CENTRIFUGE=氯方解石分离 +chem.CC_ELECTROLYSIS=氯化钙电解 +chem.CC_HEATING=高级煤液化 +chem.CC_HEAVY=初级煤液化 +chem.CC_I=强化煤液化 +chem.CC_NAPHTHA=煤液化石脑油 +chem.CC_OIL=煤液化 +chem.CIRCUIT_4=超频电路生产 +chem.CIRCUIT_5=高性能电路生产 +chem.CO2=二氧化碳生产 +chem.COALGAS_LEADED=含铅煤汽油混合 +chem.COLTAN_CLEANING=钶钽铁矿提纯 +chem.COLTAN_CRYSTAL=钽结晶 +chem.COLTAN_PAIN=Pn(III)钽铁溶液生产 +chem.CONCRETE=混凝土生产 +chem.CONCRETE_ASBESTOS=石棉夹层混凝土生产 +chem.COOLANT=冷却液混合 +chem.CORDITE=无烟火药生产 +chem.CRYOGEL=冷凝胶混合 +chem.DESH=Desh生产 +chem.DEUTERIUM=氘萃取 +chem.DUCRETE=贫铀混凝土生产 +chem.DYN_DNT=双聚中子态素合成 +chem.DYN_EUPH=Ep合成 +chem.DYN_SCHRAB=Sa326合成 +chem.DYNAMITE=炸药合成 +chem.ELECTROLYSIS=低温电解水 +chem.EPEARL=末影珍珠合成 +chem.ETHANOL=乙醇生产 +chem.FC_BITUMEN=沥青裂化 +chem.FC_DIESEL_KEROSENE=柴油裂化 +chem.FC_GAS_PETROLEUM=天然气裂化 +chem.FC_I_NAPHTHA=工业油裂化 +chem.FC_KEROSENE_PETROLEUM=煤油裂化 +chem.FP_HEAVYOIL=重油加工 +chem.FP_LIGHTOIL=轻油加工 +chem.FP_NAPHTHA=石脑油加工 +chem.FP_SMEAR=工业油加工 +chem.FR_PETROIL=汽油混合 +chem.FR_REOIL=原油再加工 +chem.FRACKSOL=压裂液生产 +chem.GASOLINE=含铅汽油生产 +chem.GASOLINE_LEADED=含铅汽油混合 +chem.HEAVY_ELECTROLYSIS=低温电解重水 +chem.HELIUM3=使用月球草皮提取氦-3 +chem.KEVLAR=凯夫拉生产 +chem.LAMINATE=强化夹层玻璃生产 +chem.LPG=石油天然气液化 +chem.LUBRICANT=润滑剂混合 +chem.METH=甲基苯丙胺合成 +chem.MEAT_PROCESSING=异虫肉矿物提取 +chem.NITAN=NITAN牌超级燃料混合 +chem.NITRIC_ACID=硝酸生产 +chem.OIL_SAND=沥青砂提取 +chem.OSMIRIDIUM_DEATH=锇酸溶液生产 +chem.PC=聚碳酸酯合成 +chem.PC_ELECTROLYSIS=氯化钾电解 +chem.PEROXIDE=过氧化氢生产 +chem.PET=PET合成 +chem.PETROIL_LEADED=含铅石油混合 +chem.POLYMER=聚合物合成 +chem.PUF6=六氟化钚生产 +chem.PVC=聚氯乙烯合成 +chem.RUBBER=橡胶生产 +chem.SAS3=三硫化Sa生产 +chem.SATURN=土星锭生产 +chem.SCHRABIDATE=Sa酸铁生产 +chem.SCHRABIDIC=Sa酸合成 +chem.SF_BIOFUEL=生物燃料固化 +chem.SF_BIOGAS=沼气固化 +chem.SF_DIESEL=柴油凝固 +chem.SF_GAS=天然气固化 +chem.SF_HEATINGOIL=燃油固化 +chem.SF_HEAVYOIL=重油固化 +chem.SF_KEROSENE=煤油固化 +chem.SF_LIGHTOIL=轻油固化 +chem.SF_LUBRICANT=润滑剂固化 +chem.SF_NAPHTHA=石脑油固化 +chem.SF_OIL=原油固化 +chem.SF_PETROIL=石油固化 +chem.SF_PETROLEUM=石油气固化 +chem.SF_RECLAIMED=再生油固化 +chem.SF_SMEAR=工业油固化 +chem.SHELL_CHLORINE=16英寸氯气炮弹生产 +chem.SHELL_MUSTARD=16英寸芥子气炮弹生产 +chem.SHELL_PHOSGENE=16英寸光气炮弹生产 +chem.SOLID_FUEL=固体火箭燃料生产 +chem.SOLVENT=有机溶剂混合 +chem.STEAM=烧水 +chem.SULFURIC_ACID=硫酸生产 +chem.TATB=TATB合成 +chem.TEL=四乙基铅混合 +chem.TEST=测试 +chem.THORIUM_SALT=钍盐富集 +chem.TNT=TNT合成 +chem.UF6=六氟化铀生产 +chem.VIT_GAS=气态核废料玻璃化 +chem.VIT_LIQUID=液态核废料玻璃化 +chem.XENON=林德循环制氙 +chem.XENON_OXY=增强林德循环制氙 +chem.YELLOWCAKE=黄饼生产 +commands.satellite.no_satellite=未找到使用此频率的卫星! +commands.satellite.not_a_satellite=持有的物品不是卫星! +commands.satellite.satellite_descended=卫星成功降落。 +commands.satellite.satellite_orbited=卫星发射。 +commands.satellite.should_be_run_as_player=此命令应该由玩家运行! +container.amsBase=AMS基座(装饰) +container.amsEmitter=AMS发射极(装饰) +container.amsLimiter=AMS稳能器(装饰) +container.anvil=%s级砧 +container.arcFurnace=电弧炉 +container.armorTable=装甲改装台 +container.ashpit=储灰槽 +container.assembler=装配机 +container.autocrafter=自动工作台 +container.barrel=桶 +container.bat9000=巨尻-9000 储罐 +container.battery=储能 +container.bombMulti=多用途炸弹 +container.catalyticReformer=催化重整器 +container.centrifuge=离心机 +container.chemplant=化工厂 +container.compactLauncher=紧凑型发射台 +container.craneBoxer=输送带打包机 +container.craneExtractor=输送带提取器 +container.craneGrabber=输送带抓斗 +container.craneInserter=输送带导入器 +container.craneRouter=传送路由器 +container.craneUnboxer=输送带解包机 +container.crateDesh=Desh箱 +container.crateIron=铁箱 +container.crateSteel=钢箱 +container.crateTemplate=模板箱 +container.crateTungsten=钨箱 +container.crystallizer=矿物酸化器 +container.cyclotron=回旋加速器 +container.dfcCore=暗核聚变堆核心 +container.dfcEmitter=DFC发射器 +container.dfcInjector=DFC燃料喷射器 +container.dfcReceiver=DFC接收器 +container.dfcStabilizer=DFC稳定器 +container.diFurnace=高炉 +container.diFurnaceRTG=核高炉 +container.droneCrate=运输无人机坞 +container.droneDock=物流无人机坞 +container.droneProvider=供应箱 +container.droneRequester=请求箱 +container.electricFurnace=电炉 +container.epress=电动锻压机 +container.exposureChamber=曝光室 +container.factoryAdvanced=高级工厂 +container.factoryTitanium=工厂 +container.fluidtank=储罐 +container.fileCabinet=文件柜 +container.forceField=力场发生器 +container.frackingTower=水力压裂塔 +container.furnaceBrick=砖砌炉 +container.furnaceCombination=复式炼焦炉 +container.furnaceIron=铁炉 +container.furnaceSteel=钢炉 +container.fusionMultiblock=大型聚变反应堆 +container.fusionaryWatzPlant=Watz聚变反应堆 +container.gasCentrifuge=气体离心机 +container.gasFlare=高架火炬 +container.generator=研究型反应堆 +container.hadron=粒子加速器 +container.heaterFirebox=燃烧室 +container.heaterHeatex=热交换器 +container.heaterOilburner=流体燃烧器 +container.heaterOven=加热炉 +container.hydrotreater=加氢装置 +container.iGenerator=工业发电机 +container.keyForge=锁匠桌 +container.launchPad=导弹发射台 +container.launchPadRusted=导弹发射台 +container.launchTable=大型发射台 +container.leadBox=安全盒 +container.machineArcWelder=电弧焊机 +container.machineArcFurnaceLarge=电弧炉 +container.machineBoiler=锅炉 +container.machineCMB=CMB炼钢炉 +container.machineCoal=火力发电机 +container.machineCoker=焦化装置 +container.machineCompressor=压缩机 +container.machineCrucible=坩埚 +container.machineDiesel=柴油发电机 +container.machineElectricBoiler=电锅炉 +container.machineElectrolyser=电解机 +container.machineFEL= +container.machineFunnel=组合漏斗 +container.machineICF=ICF反应堆 +container.machineICFPress=ICF燃料靶丸制造器 +container.machineITER=聚变反应堆 +container.machineLargeTurbine=工业汽轮机 +container.machineLiquefactor=液化机 +container.machineMixer=工业搅拌机 +container.machineOreSlopper= +container.machineRefinery=炼油厂 +container.machineSelenium=星型发动机 +container.machineShredder=粉碎机 +container.machineSILEX=激光同位素分离室 +container.machineSolderingStation=焊接台 +container.machineSolidifier=固化机 +container.machineStrandCaster=连续铸造机 +container.machineTurbine=汽轮机 +container.machineTurbofan=涡扇发动机 +container.machineWoodBurner=火力发电机 +container.machine_schrabidium_transmutator=Sa326嬗变装置 +container.massStorage=存储 +container.microwave=微波炉 +container.miningDrill=自动采矿钻机 +container.miningLaser=采矿激光 +container.missileAssembly=导弹装配台 +container.nukeBoy=小男孩 +container.nukeCustom=自定义核弹 +container.nukeFleija= +container.nukeFstbmb=野火炸弹 +container.nukeFurnace=核熔炉 +container.nukeGadget=小玩意 +container.nukeMan=胖子 +container.nukeMike=常春藤迈克 +container.nukeN2=N2炸弹 +container.nukeN45=N45水雷 +container.nukePrototype=原型 +container.nukeSolinium=蔚蓝洗礼 +container.nukeTsar=沙皇炸弹 +container.oilWell=钻油塔 +container.orbus=重型反物质储罐 +container.plasmaHeater=等离子加热器 +container.press=火力锻压机 +container.puf6_tank=六氟化钚储罐 +container.pumpjack=石油钻机 +container.radGen=辐射能量发电机 +container.radar=雷达 +container.radiobox=FM发射机 +container.radiolysis=RTG辐射裂解室 +container.radiorec=FM收音机 +container.rbmkBoiler=RBMK石墨式反应堆蒸汽管道 +container.rbmkControl=RBMK石墨式反应堆控制棒 +container.rbmkControlAuto=RBMK石墨式反应堆自动控制棒 +container.rbmkHeater=RBMK流体加热器 +container.rbmkOutgasser=RBMK石墨式反应堆辐照通道 +container.rbmkReaSim=RBMK石墨式反应堆燃料棒 (ReaSim) +container.rbmkRod=RBMK石墨式反应堆燃料棒 +container.rbmkStorage=RBMK 燃料存储棒 +container.reactorBreeding=增殖反应堆 +container.reactorControl=反应堆遥控模块 +container.reactorLarge=大型核反应堆 +container.reactorResearch=研究型反应堆 +container.reix=Rei-X主机 +container.rtg=放射性同位素发电机 +container.rtgFurnace=放射性同位素热力炉[RTG] +container.rttyCounter=无线红石物品计数器 +container.rttyLogic=无线红石逻辑接收器 +container.rttyReceiver=无线红石信号接收器 +container.rttySender=无线红石信号发射器 +container.safe=保险箱 +container.satDock=卸货平台 +container.satLinker=卫星ID管理 +container.siren=警报器 +container.soyuzCapsule=货物着陆舱 +container.soyuzLauncher=联盟号发射平台 +container.storageDrum=核废料处理桶 +container.teleLinker=炮塔ID管理 +container.teleporter=传送机 +container.trainTram=平板载货电车 +container.turbinegas=联合循环燃气轮机 +container.turretArty=重炮炮塔“格雷格” +container.turretChekhov=重机枪炮塔“契诃夫的枪” +container.turretFriendly=轻机枪炮塔“友好先生” +container.turretFritz=重型火焰喷射器炮塔“弗里茨” +container.turretHIMARS=火箭炮塔“亨利” +container.turretHoward=双联守门员近防系统“霍华德” +container.turretJeremy=重炮炮塔“杰里米” +container.turretMaxwell=高能微波炮塔”麦克斯韦” +container.turretRichard=火箭炮塔“理查德” +container.turretSentry=哨兵炮塔“布朗” +container.turretTauon=陶子发射器炮塔“陶恩” +container.uf6_tank=六氟化铀储罐 +container.vacuumDistill=真空炼油厂 +container.wasteDrum=乏燃料池 +container.watzPowerplant=Watz发电厂 +container.zirnox=锆诺克斯核反应堆 +crucible.aa=高级合金生产 +crucible.abronze=砷青铜生产 +crucible.bbronze=铋青铜生产 +crucible.bscco=BSCCO生产 +crucible.cdalloy=镉钢生产 +crucible.cmb=CMB钢生产 +crucible.ferro=铀铁合金生产 +crucible.hematite=赤铁矿炼铁 +crucible.hss=高速钢生产 +crucible.malachite=孔雀石炼铜 +crucible.magtung=磁化钨生产 +crucible.redcopper=紫铜生产 +crucible.steel=钢铁生产 +crucible.steelMeteoric=陨铁炼钢 +crucible.steelPig=生铁炼钢 +crucible.steelWrought=锻铁炼钢 +crucible.tcalloy=锝钢合金生产 +death.attack.acid=%1$s 掉进了酸里 +death.attack.acidPlayer=%1$s 被 %2$s 溶解 +death.attack.ams=%1$s 沐浴在尚未被人类科学命名的致命粒子中 +death.attack.amsCore=%1$s 在奇点之火中蒸发 +death.attack.asbestos=%1$s现在有权获得经济补偿 +death.attack.bang=%1$s 被炸成小块碎片 +death.attack.blackhole=%1$s 粉身碎骨 +death.attack.blacklung=%1$s 死于尘肺病 +death.attack.blender=%1$s 被切成小块 +death.attack.boat=%1$s 被船撞了 +death.attack.boil=%1$s被%2$s活活煮沸 +death.attack.boxcar=%1$s 被一节坠落的车厢撞死了...好吧 +death.attack.broadcast=%1$s 的大脑融化了 +death.attack.building=%1$s 被从天而降的建筑砸中了 +death.attack.cheater=%1$s 的肠子变成了燕麦(???) +death.attack.chopperBullet=%1$s 被 %2$s 屠杀 +death.attack.cloud=%1$s 像冰棒一样在太阳下融化 +death.attack.cmb=%1$s 被 %2$s 搞得嘶嘶作响 +death.attack.digamma=%1$s 踏入深渊 +death.attack.electricity=%1$s 被电死 +death.attack.electrified=%1$s 被 %2$s 电死 +death.attack.euthanized=%1$s 被 %2$s 安乐死 +death.attack.euthanizedSelf2=%1$s 获得了达尔文奖 +death.attack.euthanizedSelf=%1$s 把自己安乐死了,可真傻 +death.attack.exhaust=%1$s 被火箭烤成了羊肉串 +death.attack.flamethrower=%1$s 被 %2$s 火化 +death.attack.flamethrower.item=%1$s 被 %2$s 使用 %3$s 火化 +death.attack.ice=%1$s 被 %2$s 做成了冰棒 +death.attack.laser=%1$s 被 %2$s 变成了灰烬 +death.attack.laser.item=%1$s 被 %2$s 使用 %3$s 变成灰烬 +death.attack.lead=%1$s 死于铅中毒 +death.attack.lunar=%1$s 忘记了给重要器官充电 +death.attack.meteorite=%1$s 被来自外太空的陨石击中 +death.attack.microwave=%1s 因微波辐射爆炸 +death.attack.mku=%1$s 死于不明原因 +death.attack.monoxide=%1$s忘了换一氧化碳探测器的电池 +death.attack.mudPoisoning=%1$s 死于毒泥浆中 +death.attack.nuclearBlast=%1$s 被核爆炸飞 +death.attack.overdose=%1$s 上瘾并窒息 +death.attack.pc=%1$s 在粉红色的云中变成了一个水坑 +death.attack.plasma=%1$s 被 %2$s 烧死 +death.attack.radiation=%1$s 死于辐射 +death.attack.revolverBullet=%1$s 被 %2$s 用 %3$s 击中头部 +death.attack.revolverBullet.item=%1$s 被 %2$s 使用 %3$s 爆头 +death.attack.rubble=%1$s 被碎片压扁了 +death.attack.shrapnel=%1$s 被榴弹碎片炸得千疮百孔 +death.attack.spikes=%1$s被刺穿了 +death.attack.subAtomic1=%1$s 的原子已被 %2$s 销毁. +death.attack.subAtomic2=%1$s 因为被 %2$s 篡改了实际速度,导致QPU没有对准 +death.attack.subAtomic3=由于 %2$s,1$s 的偏差下降到1%以下 +death.attack.subAtomic4=%1$s 因为 %2$s 被零除了 +death.attack.subAtomic5=%1$s 因为 %2$s 无效了 +death.attack.suicide=%1$s 打爆了自己的头 +death.attack.taint=%1$s 死于恶性肿瘤 +death.attack.tau=%1$s 被 %2$s 用带负电荷的陶子射穿 +death.attack.tauBlast=%1$s 对XVL1456充能时间过长,被炸成碎片 +death.attack.teleporter=%1$s 被传送到虚空 +desc.gui.assembler.warning=§c错误:§r此机器需要装配机模板! +desc.gui.chemplant.warning=§c错误:§r此机器需要化工厂模板! +desc.gui.gasCent.enrichment=§2浓缩§r$浓缩铀需要串联$两个离心机串联将离心出$铀燃料,四个离心机串联$将完全分离出铀235。 +desc.gui.gasCent.output=§6流体输送§r$流体可通过输出端口输送至另一台离心机$进行进一步处理。 +desc.gui.nukeBoy.desc=§1需要:§r$ * 中子屏蔽罩$ * 铀-235弹头$ * 次临界铀-235标靶$ * 炸药$ * 点火器 +desc.gui.nukeGadget.desc=§1需要:§r$ * 4个 初代$ 炸药透镜阵列$ * 钚核心$ * 线路 +desc.gui.nukeMan.desc=§1需要:§r$ * 4个 初代$ 炸药透镜阵列$ * 钚核心$ * 点火器 +desc.gui.nukeMike.desc=§1需要:§r$ * 4个 炸药透镜阵列$ * 钚核心$ * 氘冷却装置$ * 铀涂层氘罐 * 氘罐 +desc.gui.nukeTsar.desc=§1需要:§r$ * 4个 炸药透镜阵列$ * 钚核心$§9可选:§r$ * 沙皇炸弹核心 +desc.gui.rttyLogic.cond0=信号§6小于§r常量 +desc.gui.rttyLogic.cond1=信号§6小于等于§r常量 +desc.gui.rttyLogic.cond2=信号§6大于等于§r常量 +desc.gui.rttyLogic.cond3=信号§6大于§r常量 +desc.gui.rttyLogic.cond4=信号§6等于§r常量 +desc.gui.rttyLogic.cond5=信号§6不等于§r常量 +desc.gui.rttyLogic.cond6=信号与字符串§6匹配§r +desc.gui.rttyLogic.cond7=信号与字符串§6不匹配§r +desc.gui.rttyLogic.cond8=信号§6包含§r字符串 +desc.gui.rttyLogic.cond9=信号§6不包含§r字符串 +desc.gui.radiolysis.desc=§9说明§r$该RTG比其他RTG更高效,$并且配备了一个用于$裂解和灭菌的辐解室。 +desc.gui.rtgBFurnace.desc=处理裂解配方至少需要15热量,$热量越高,运行速度越快$超过最高处理速度的热量不起作用$短寿命靶丸可能会衰变 +desc.gui.rtg.heat=§e当前热等级:%s +desc.gui.rtg.pellets=接受的靶丸: +desc.gui.rtg.pelletHeat=%s (%s 热量) +desc.gui.rtg.pelletPower=%s (%s HE/刻) +desc.gui.template=§9模板§r$模板可由$机器模板文件夹制作。 +desc.gui.turbinegas.automode=§2自动涡轮机节流模式§r$通过单击“AUTO”按钮,涡轮机$将根据网络所需的功率自动调整发电量$ +desc.gui.turbinegas.fuels=§6可接受的燃料:§r +desc.gui.turbinegas.warning=§c燃油或润滑油液位低!§r +desc.gui.zirnox.coolant=§3冷却剂§r$CO2将热量从堆芯转移到水中$这会令它变成成超热蒸汽$冷却和蒸汽生产的效率取决于压力。 +desc.gui.zirnox.pressure=§6压力§r$排放二氧化碳可以降低压力$然而,压力过低,冷却效率和蒸汽产量将降低$小心熔毁! +desc.gui.zirnox.warning1=§c错误:§r反应堆正常运行需要水! +desc.gui.zirnox.warning2=§c错误:§r二氧化碳是反应堆正常运行所必需的! +desc.item.ammo.con_accuracy2=- 精度大幅降低 +desc.item.ammo.con_damage=- 伤害大幅降低 +desc.item.ammo.con_heavy_wear=- 大幅增加磨损 +desc.item.ammo.con_ling_fire=- 没有火焰 +desc.item.ammo.con_nn=- 甚至没有核爆 +desc.item.ammo.con_no_damage=- 没有伤害 +desc.item.ammo.con_no_explode1=- 非爆炸性 +desc.item.ammo.con_no_explode2=- 不破坏方块 +desc.item.ammo.con_no_explode3=- 无破片伤害 +desc.item.ammo.con_no_fire=- 不能引起燃烧 +desc.item.ammo.con_no_mirv=- 不建议在原始MIRV上使用 +desc.item.ammo.con_no_projectile=- 无抛射物 +desc.item.ammo.con_penetration=- 无穿透能力 +desc.item.ammo.con_radius=- 减小爆炸半径 +desc.item.ammo.con_range2=- 大幅降低射程 +desc.item.ammo.con_sing_projectile=- 单个弹头 +desc.item.ammo.con_speed=- 弹丸速度降低 +desc.item.ammo.con_super_wear=- 磨损严重增加 +desc.item.ammo.con_wear=- 加剧磨损 +desc.item.ammo.neu_40mm=* 这是一枚40毫米的榴弹,我们把它挤到枪管里! +desc.item.ammo.neu_blank=* 这是空包弹 +desc.item.ammo.neu_boat=* 船 +desc.item.ammo.neu_boxcar=* 车厢 +desc.item.ammo.neu_building=* 建筑物 +desc.item.ammo.neu_chlorophyte=* 叶绿 +desc.item.ammo.neu_eraser=* 用于消除重大错误 +desc.item.ammo.neu_fun=* 全家其乐无穷! +desc.item.ammo.neu_heavy_metal=* 重金属 +desc.item.ammo.neu_homing=* 追踪 +desc.item.ammo.neu_jolt=* 震荡 +desc.item.ammo.neu_leadburster=* 附着在表面并喷射子弹 +desc.item.ammo.neu_less_bouncy=* 弹性更小 +desc.item.ammo.neu_maskman_flechette=* 曳光弹,同时引发一场贫铀飞镖弹风暴 +desc.item.ammo.neu_maskman_meteorite=* 高伤害,同时召唤小陨石 +desc.item.ammo.neu_more_bouncy=* 额外弹性 +desc.item.ammo.neu_no_bounce=* 没有弹性 +desc.item.ammo.neu_no_con=* 没有缺点 +desc.item.ammo.neu_starmetal=* 星辉金属 +desc.item.ammo.neu_tracer=* 示踪剂 +desc.item.ammo.neu_uhh= +desc.item.ammo.neu_warcrime1=* 从技术上来讲触犯了战争罪 +desc.item.ammo.neu_warcrime2=* 一发触犯两条战争罪! +desc.item.ammo.pro_accurate1=+ 提升精度 +desc.item.ammo.pro_accurate2=+ 近乎完美的精度 +desc.item.ammo.pro_balefire=+ 野火 +desc.item.ammo.pro_bomb_count=+ 炸弹数量增加 +desc.item.ammo.pro_caustic=+ 腐蚀性 +desc.item.ammo.pro_chainsaw=+ 电锯 +desc.item.ammo.pro_chlorine=+ 氯气 +desc.item.ammo.pro_damage=+ 提升伤害 +desc.item.ammo.pro_damage_slight=+ 高于平均伤害 +desc.item.ammo.pro_emp=+ 电磁脉冲 +desc.item.ammo.pro_explosive=+ 爆炸 +desc.item.ammo.pro_fallout=+ 辐射尘 +desc.item.ammo.pro_fit_357=+ 适用于所有.357枪械 +desc.item.ammo.pro_flames=+ 火焰喷射量增加 +desc.item.ammo.pro_gravity=+ 下坠降低 +desc.item.ammo.pro_heavy_damage=+ 大幅增加伤害 +desc.item.ammo.pro_incendiary=+ 能引起燃烧 +desc.item.ammo.pro_lunatic=+ 疯子 +desc.item.ammo.pro_marauder=+ 立即消除烦人的和不平衡的敌人 +desc.item.ammo.pro_mining=+ 爆炸使所有方块掉落 +desc.item.ammo.pro_no_gravity=+ 不受重力影响 +desc.item.ammo.pro_nuclear=+ 核爆 +desc.item.ammo.pro_penetration=+ 穿透 +desc.item.ammo.pro_percussion=+ 冲击波 +desc.item.ammo.pro_phosphorus=+ 可致磷烧伤 +desc.item.ammo.pro_phosphorus_splash=+ 磷飞溅 +desc.item.ammo.pro_poison_gas=+ 毒物飞溅 +desc.item.ammo.pro_radius=+ 增加爆炸半径 +desc.item.ammo.pro_radius_high=+ 大幅增加爆炸半径 +desc.item.ammo.pro_range=+ 增加射程 +desc.item.ammo.pro_rocket=+ 火箭 +desc.item.ammo.pro_rocket_propelled=+ 火箭推进 +desc.item.ammo.pro_shrapnel=+ 破片 +desc.item.ammo.pro_speed=+ 提高弹头飞行速度 +desc.item.ammo.pro_stunning=+ 眩晕 +desc.item.ammo.pro_toxic=+ 剧毒 +desc.item.ammo.pro_wear=+ 减少磨损 +desc.item.ammo.pro_withering=+ 凋零 +desc.item.armorMod.display=显示已安装的装甲模块 +desc.item.battery.charge=储能: %s / %sHE +desc.item.battery.chargePerc=储能: %s%% +desc.item.battery.chargeRate=充电效率: %sHE/刻 +desc.item.battery.dischargeRate=放电效率: %sHE/刻 +desc.item.durability=耐久: %s +desc.item.grenade.fuse=引信: %s +desc.item.grenade.fuseImpact=碰炸 +desc.item.grenade.fuseInstant=瞬发 +desc.item.gun.ammo=弹药 %s +desc.item.gun.ammoBelt=从背包中使用 +desc.item.gun.ammoEnergy=能耗; %sHE 每发 +desc.item.gun.ammoEnergyAlt=%sHE 每发 +desc.item.gun.ammoMag= +desc.item.gun.ammoType=弹药类型: %s +desc.item.gun.ammoTypeAlt=辅助弹药: %s +desc.item.gun.damage=伤害: %s - %s +desc.item.gun.damageAlt=伤害: %s +desc.item.gun.lore=查看深入的知识 +desc.item.gun.loreFunc=查看深入功能 +desc.item.gun.manufacturer=制造商: %s +desc.item.gun=名称: %s +desc.item.gun.pellets=弹丸数:%s-%s +desc.item.gun.penetration=装甲穿透值: %s +desc.item.kitArmor=装甲将被新的装备取代。 +desc.item.kitHaz=装甲将被防护服取代。 +desc.item.kitPack=真便宜! +desc.item.kitPool=请在打开前清空背包库存! +desc.item.pileRod=§e使用钻孔石墨插入$§E使用螺丝刀拔出$ +desc.item.pipette.corrosive=可处理腐蚀性液体。 +desc.item.pipette.laboratory=现在精度提高了50倍! +desc.item.pipette.noCorrosive=§e无法处理腐蚀性液体。 +desc.item.pipette.noEmpty=§e移液管未排空 +desc.item.rtgDecay=衰变为:%s +desc.item.rtgHeat=功率级别:%s +desc.item.storage.capacity=容量 %s%%s +desc.item.storage.proscons=查看利弊列表 +desc.misc.357=.357 马格南 +desc.misc.556=.223 雷明顿 +desc.misc.762=.308 温彻斯特 +desc.misc.func=§n-- 作用 -- +desc.misc.lanthanum=\"镧\" +desc.misc.lctrl=§8按住 <§e§o左CTRL§8§o> %s +desc.misc.lore=§n-- 知识 -- +desc.misc.lshift=§8按住 <§e§o左SHIFT§8§o> %s +desc.misc.luna= +desc.misc.meltPoint=熔点: §c%s +desc.misc.noPos=未设置位置! +desc.misc.pos=将位置设置为:%s,%s,%s +desc.misc.posSet=位置已设置! +desc.item.wasteCooling=在乏燃料池中冷却 +desc.item.zirnoxBreedingRod=§2[ZIRNOX增殖棒]$§e放在燃料棒旁边增殖$§e持续 %d 刻 +desc.item.zirnoxRod=§a[ZIRNOX燃料棒]$§e每刻产生 %1$d 热量$§e持续 %2$d 刻 +digamma.playerDigamma=玩家F-迪伽马辐照水平: +digamma.playerHealth=玩家所受F-迪伽马辐照影响: +digamma.playerRes=玩家F-迪伽马防护水平: +digamma.title=玩家F-迪伽马辐射自检器 +entity.entity_cyber_crab=赛博螃蟹 +entity.entity_elder_one=上古鸭神 +entity.entity_fucc_a_ducc=鸭子 +entity.entity_glyphid=异虫 +entity.entity_glyphid_behemoth=巨兽异虫 +entity.entity_glyphid_blaster=爆破异虫 +entity.entity_glyphid_bombardier=投弹手异虫 +entity.entity_glyphid_brawler=狂战士异虫 +entity.entity_glyphid_brenda=布伦达 +entity.entity_glyphid_digger=掘地异虫 +entity.entity_glyphid_nuclear=大个子强森 +entity.entity_glyphid_scout=侦察异虫 +entity.entity_ntm_fbi=FBI探员 +entity.entity_ntm_fbi_drone=FBI无人机 +entity.entity_ntm_radiation_blaze=核融元素 +entity.hbm.entity_ntm_ufo=火星入侵者飞船 +entity.entity_mob_hunter_chopper=猎人直升机 +entity.entity_mob_mask_man=面具人 +entity.entity_mob_gold_creeper=黄金爬行者 +entity.entity_mob_nuclear_creeper=核爆爬行者 +entity.entity_mob_phosgene_creeper=光气爬行者 +entity.entity_mob_tainted_creeper=污染爬行者 +entity.entity_mob_volatile_creeper=不稳定爬行者 +entity.entity_parasite_maggot=寄生虫 +entity.entity_pigeon=鸽子 +entity.entity_plastic_bag=塑料袋 +entity.entity_taint_crab=污染螃蟹 +entity.entity_tesla_crab=磁暴螃蟹 +entity.hbm.entity_balls_o_tron=机械蠕虫 +entity.hbm.entity_balls_o_tron_seg=机械蠕虫 +entity.hbm.entity_bullet=子弹 +entity.hbm.entity_rocket=火箭弹 +entity.hbm.entity_schrabnel=Sa破片 +excavator.crusher=粉碎开关 +excavator.drill=挖掘开关 +excavator.silktouch=精准采集开关 +excavator.veinminer=连锁挖矿开关 +excavator.walling=填充开关 +flare.ignition=点火装置 +flare.valve=流量阀 +fluid.acid_fluid=酸 +fluid.corium_fluid=堆芯熔融物 +fluid.mud_fluid=毒泥 +fluid.rad_lava_fluid=放射性火山熔岩 +fluid.schrabidic_fluid=Sa酸 +fluid.toxic_fluid=绿色软泥 +fluid.volcanic_lava_fluid=火山熔岩 +foundry.filter=筛选器:%s +foundry.inverted=红石信号反转 +foundry.invertFilter=过滤器反转 +foundry.noCast=未安装模具! +geiger.chunkRad=当前区块辐射: +geiger.envRad=环境总辐射量: +geiger.playerRad=玩家辐射: +geiger.playerRes=辐射抗性: +geiger.title=盖革计数器 +geiger.title.dosimeter=剂量计 +gun.make.ARMALITE=阿玛莱特公司 +gun.make.AUTO_ORDINANCE=美国自动武器公司 +gun.make.BAE=英国宇航系统公司 +gun.make.BENELLI=伯奈利武器公司 +gun.make.BLACK_MESA=黑山研究所 +gun.make.CERIX=赛里克斯·马格努斯锻造世界 +gun.make.COLT=柯尔特制造公司 +gun.make.COMBINE=世界工会 +gun.make.CUBE= +gun.make.DRG=深岩银河 +gun.make.ENZINGER=Enzinger工会 +gun.make.EQUESTRIA=小马国导弹系统 +gun.make.FLIMFLAM=FlimFlam“欺骗”工业 +gun.make.F_STRONG=史特朗堡 +gun.make.GLORIA=GLORIA公司 +gun.make.HASBRO=孩之宝 +gun.make.H_AND_K=黑克勒和科赫武器公司 +gun.make.H_AND_R=哈林顿-理查森武器公司 +gun.make.IF=蹄铁军工 +gun.make.IMI=以色列军事工业 +gun.make.IMI_BIGMT=以色列军事工业公司/大型MT +gun.make.LANGFORD=朗福德研究实验室 +gun.make.LUNA=月球防御公司 +gun.make.MAGNUM_R_IMI=马格南研究公司 / 以色列军事工业公司 +gun.make.MANN=Open Mann公司 +gun.make.MAXIM=海勒姆·马克沁 +gun.make.METRO=地铁枪手 +gun.make.MWT=MWT原型实验室 +gun.make.NAWS=凯亚姆工业 +gun.make.ERFURT=埃尔福特机械制造厂 +gun.make.NONE= +gun.make.RAYTHEON=导弹系统公司 +gun.make.REMINGTON=雷明登武器公司 +gun.make.ROCKWELL=罗克韦尔国际公司 +gun.make.ROCKWELL_U=罗克韦尔国际公司? +gun.make.RYAN=莱恩工业 +gun.make.SAAB=萨博博福斯动力公司 +gun.make.SACO=萨科防卫军械 +gun.make.TULSKY=图拉武器厂 +gun.make.UAC=联合宇宙航空公司 +gun.make.UNKNOWN= +gun.make.WESTTEK=WestTek研究设施 +gun.make.WGW=威廉·古斯特洛夫·维尔克 +gun.make.WINCHESTER=温彻斯特速射武器公司 +gun.make.WINCHESTER_BIGMT=温彻斯特速射武器公司/大型MT +gun.name.ar15_50=AR-15 .50BMG型 +gun.name.baeAR=英国制式突击步枪 +gun.name.bel=野火蛋发射器 +gun.name.benelli=伯奈利M4 Super 90霰弹枪 +gun.name.benelliDrum=伯奈利M4 Super 90霰弹枪 (泵动供弹改进型) +gun.name.bio= +gun.name.bolter=Manticora Pattern爆弹枪 +gun.name.congoLake=刚果湖水泵动榴弹发射器 +gun.name.cPython=柯尔特蟒蛇 +gun.name.cz53=CZ53 单兵转轮机枪 +gun.name.cz57=CZ57 复仇者机枪 +gun.name.dart=针枪 +gun.name.deagle=以色列军事工业公司沙漠之鹰 +gun.name.emp=EMP投射器 +gun.name.extinguisher=PROTEX灭火器6kg +gun.name.ffiV=FFI 蝰蛇 +gun.name.ffiVInox=FFI 蝰蛇 Inox +gun.name.ffiVLead=铅制 FFI 蝰蛇 +gun.name.ffiVN1=FFI 蝰蛇 N1 +gun.name.ffiVN2=FFI 蝰蛇 N2 +gun.name.ffiVUltra=FFI 蝰蛇 Ultra +gun.name.ffivBling=闪光款 FFI 蝰蛇 +gun.name.ffivSatur=FFI 蝰蛇 D-25A +gun.name.g36=HK G36突击步枪 +gun.name.gPistol=HK69A1 手持单发榴弹发射器 +gun.name.gustav=卡尔·古斯塔夫M1无后坐力炮 +gun.name.ifHorseshoe=IF-18 蹄铁 +gun.name.ifPit=IF-18 蹄铁 Bottomless Pit +gun.name.ifScope=IF-18 蹄铁 Scoped +gun.name.ifStorm=IF-18 蹄铁 银色风暴 +gun.name.ifVanity=IF-18 蹄铁 Vanity +gun.name.karl=M1 卡尔·古斯塔夫 +gun.name.ks23=KS-23霰弹枪 +gun.name.lacunae= +gun.name.lasetDet=霍普维尔激光雷管 +gun.name.lunaAR=1986 Bishamonten式突击步枪 +gun.name.lunaGun=1978年罗睺罗型制式狙击步枪(第二次修订) +gun.name.lunaHLR=1944嫦娥式轻机枪 +gun.name.lunaShotty=1978年关羽式散弹枪(第1次修订) +gun.name.lunaSMG=1956 ānanda type Submachine Gun +gun.name.lunaSniper=1915后羿式反器材步枪 +gun.name.lunaTWR=时间扭曲步枪 +gun.name.m2=M2式勃朗宁大口径重机枪 +gun.name.m42=M-42战术核弹发射器 +gun.name.m42MIRV=M-42实验MIRV +gun.name.m60=7.62毫米口径M60机枪 +gun.name.maxim=马克沁机枪 +gun.name.maximDouble=双重马克沁机枪 +gun.name.mg3=MG-42通用机枪 +gun.name.mp40=MP40冲锋枪 +gun.name.nerf=某些无良记者眼中的大规模杀伤性武器 +gun.name.osipr=守望标准型脉冲步枪 +gun.name.panz=反坦克火箭来复枪 54 +gun.name.quadro=OpenQuadro便携式导弹发射器 +gun.name.remington870=雷明顿870 +gun.name.revolverCursed=不列颠标准问题电动手枪 +gun.name.sauer=绍尔猎枪 +gun.name.spas12=弗兰基SPAS-12式12号霰弹枪 +gun.name.spiw= +gun.name.stinger=FIM-92毒刺便携式防空系统 +gun.name.stingerOneSky=The One Sky 毒刺便携式防空系统 +gun.name.supershotty=双管战斗霰弹枪 +gun.name.tau=XVL1456 陶子加农炮 +gun.name.tommy9=M1A1冲锋枪9毫米型 +gun.name.tommy=M1A1冲锋枪 +gun.name.topaz=重型火焰燃烧器 +gun.name.uacCarbine=UAC-41卡宾枪 +gun.name.uacDeagle=UAC-H54“火星猛禽”大容量手枪 +gun.name.uacDMR=UAC-30 精确射手步枪 +gun.name.uacLMG=UAC-49轻机枪 +gun.name.uacPistol=UAC-B950 .45 标准型手枪 +gun.name.uacSMG=UAC-17小型冲锋枪 +gun.name.uboinik=Uboinik转轮霰弹枪 +gun.name.uzi= +gun.name.uziSatur= +gun.name.win1887=温彻斯特M1887杠杆式连发霰弹枪 +gun.name.win1887Inox=温彻斯特M1887杠杆式连发霰弹枪 Inox +gun.name.win20Inox=温彻斯特20型Inox +gun.name.win20Poly=温彻斯特20型聚合物 +gun.name.win20Satur=温彻斯特20型 D-25A +gun.name.zomg=EMC101棱镜负能量炮 +hadron.analysis=正在分析... +hadron.buttonOn=分析室启动(如果存在) +hadron.buttonOff=分析室关闭 +hadron.error_generic=错误! +hadron.error_no_charge=错误 0x01 [能量不足] +hadron.error_no_analysis=错误 0x02 [无法分析] +hadron.error_obstructed_channel=错误 0x03 [通道阻塞] +hadron.error_expected_coil=错误 0x04 [缺少线圈] +hadron.error_malformed_segment=错误 0x05 [错误区段] +hadron.error_analysis_too_long=错误 0x06 [分析室过长] +hadron.error_analysis_too_short=错误 0x06 [分析室过长] +hadron.error_diode_collision=错误 0x08 [二极管方向错误] +hadron.error_branching_turn=错误 0x09 [多处分支] +hadron.hopper0=§e正常模式:$将使用所有物品 +hadron.hopper1=§e料斗模式:$将始终保留一个物品 +hadron.hopper2=§e单物品模式:$每个槽位只接受一个物品 +hadron.idle=空闲 +hadron.modeCircular=§e环形加速器模式:$磁铁必须环绕核心$解锁更多配方 +hadron.modeLine=§e直线加速器模式:$加速器末端有分析室$更少的配方 +hadron.noresult=无结果 +hadron.noresult_too_slow=动量不足! +hadron.noresult_wrong_ingredient=无效配方! +hadron.noresult_wrong_mode=错误模式! +hadron.progress=正在进行中... +hadron.stats=上一次结果: +hadron.stats_coord=错误位置:%s/%s/%s +hadron.stats_momentum=动量: %s +hadron.success=已完成! +hazard.prot=防止危险: +hazard.noprot=不能防止: +hazard.bacteria=细菌/气溶胶 +hazard.corrosive=腐蚀性烟雾 +hazard.gasChlorine=化学气体 +hazard.gasInert=惰性气体/沥青 +hazard.gasMonoxide=一氧化碳 +hazard.light=亮光 +hazard.nerveAgent=神经毒剂 +hazard.neverProtects=无法防护: +hazard.particleCoarse=空气微粒 +hazard.particleFine=微粒 +hazard.sand=眼睛刺激物 +hbm.key=HBM的核科技mod 热键 +hbm.key.calculator=计算器 +hbm.key.craneLoad=装卸起重机 +hbm.key.craneMoveDown=向后移动起重机 +hbm.key.craneMoveLeft=向左移动起重机 +hbm.key.craneMoveRight=向右移动起重机 +hbm.key.craneMoveUp=向前移动起重机 +hbm.key.dash=冲刺 (在config中解绑) +hbm.key.toggleBack=开关 喷气背包 +hbm.key.toggleHUD=开关 HUD +hbm.key.reload=装弹 +hbmfluid.amat=反物质 +hbmfluid.aromatics=芳香烃 +hbmfluid.aschrab=反Sa326 +hbmfluid.balefire=野火火箭燃料 +hbmfluid.biofuel=生物燃料 +hbmfluid.biogas=沼气 +hbmfluid.bitumen=沥青 +hbmfluid.blood=血 +hbmfluid.blood_hot=热的血 +hbmfluid.calcium_chloride=氯化钙溶液 +hbmfluid.calcium_solution=钙溶液 +hbmfluid.carbondioxide=二氧化碳 +hbmfluid.chlorine=氯气 +hbmfluid.chlorocalcite_cleaned=纯净氯方解石溶液 +hbmfluid.chlorocalcite_mix=混合氯方解石溶液 +hbmfluid.chlorocalcite_solution=氯方解石溶液 +hbmfluid.cholesterol=胆固醇溶液 +hbmfluid.coalcreosote=煤焦杂酚油 +hbmfluid.coalgas=煤汽油 +hbmfluid.coalgas_leaded=含铅煤汽油 +hbmfluid.coaloil=煤液化油 +hbmfluid.colloid=胶体 +hbmfluid.coolant=冷却液 +hbmfluid.coolant_hot=热冷却液 +hbmfluid.crackoil=裂化油 +hbmfluid.crackoil_ds=脱硫裂化油 +hbmfluid.cryogel=冷凝胶 +hbmfluid.death=锇酸溶液 +hbmfluid.deuterium=氘 +hbmfluid.diesel=柴油 +hbmfluid.diesel_crack=裂化柴油 +hbmfluid.diesel_crack_reform=高辛烷值裂化柴油 +hbmfluid.diesel_reform=高辛烷值柴油 +hbmfluid.egg=蛋溶解液 +hbmfluid.estradiol=雌二醇溶液 +hbmfluid.ethanol=乙醇 +hbmfluid.enderjuice=末影果汁 +hbmfluid.fishoil=鱼油 +hbmfluid.fracksol=压裂液 +hbmfluid.fullerene=富勒烯溶液 +hbmfluid.gas=天然气 +hbmfluid.gas_coker=焦化气 +hbmfluid.gasoline=含铅汽油基油 +hbmfluid.gasoline_leaded=含铅汽油 +hbmfluid.heatingoil=燃油 +hbmfluid.heatingoil_vacuum=重质燃油 +hbmfluid.heavyoil=重油 +hbmfluid.heavyoil_vacuum=减压重油 +hbmfluid.heavywater=重水 +hbmfluid.heavywater_hot=高温重水 +hbmfluid.helium3=氦-3 +hbmfluid.helium4=氦-4 +hbmfluid.hotcrackoil=热裂化油 +hbmfluid.hotcrackoil_ds=热的脱硫裂化油 +hbmfluid.hotoil=热原油 +hbmfluid.hotoil_ds=热的脱硫原油 +hbmfluid.hotsteam=热蒸汽 +hbmfluid.hydrogen=液氢 +hbmfluid.iongel=离子凝胶 +hbmfluid.kerosene=煤油 +hbmfluid.kerosene_reform=喷气燃料 +hbmfluid.lava=岩浆 +hbmfluid.lightoil=轻油 +hbmfluid.lightoil_crack=裂化轻油 +hbmfluid.lightoil_ds=脱硫轻油 +hbmfluid.lightoil_vacuum=减压轻油 +hbmfluid.lpg=液化石油气 +hbmfluid.lubricant=润滑油 +hbmfluid.mercury=水银 +hbmfluid.mug=Mug牌树根饮料 +hbmfluid.mug_hot=热的Mug牌树根饮料 +hbmfluid.mustardgas=芥子气 +hbmfluid.naphtha=石脑油 +hbmfluid.naphtha_coker=焦化石脑油 +hbmfluid.naphtha_crack=裂化石脑油 +hbmfluid.naphtha_ds=脱硫石脑油 +hbmfluid.nitan=NITAN牌100号超级燃料 +hbmfluid.nitric_acid=硝酸 +hbmfluid.nitroglycerin=硝酸甘油 +hbmfluid.none=无 +hbmfluid.oil=原油 +hbmfluid.oil_coker=焦化油 +hbmfluid.oil_ds=脱硫原油 +hbmfluid.oxygen=液氧 +hbmfluid.oxyhydrogen=氢氧混合气 +hbmfluid.pain=Pn(III) 钽铁溶液 +hbmfluid.peroxide=过氧化氢 +hbmfluid.petroil=汽油 +hbmfluid.petroil_leaded=含铅石油 +hbmfluid.petroleum=石油气 +hbmfluid.pheromone=异虫信息素 +hbmfluid.pheromone_m=增强异虫信息素 +hbmfluid.phosgene=光气 +hbmfluid.plasma_bf=野火等离子体 +hbmfluid.plasma_dh3=氘-氦3 等离子体 +hbmfluid.plasma_dt=氘-氚等离子体 +hbmfluid.plasma_hd=氢-氘等离子体 +hbmfluid.plasma_ht=氢-氚等离子体 +hbmfluid.plasma_xm=液氧-氦-4等离子体 +hbmfluid.potassium_chloride=氯化钾溶液 +hbmfluid.puf6=六氟化钚 +hbmfluid.radiosolvent=高性能溶剂 +hbmfluid.reclaimed=再生油 +hbmfluid.redmud=红色泥浆 +hbmfluid.reformate=重整油 +hbmfluid.reformgas=重整气 +hbmfluid.salient=绿色液体 +hbmfluid.sas3=三硫化Sa +hbmfluid.schrabidic=Sa酸 +hbmfluid.seedslurry=播种浆料 +hbmfluid.slop=洗矿废水 +hbmfluid.smear=工业油 +hbmfluid.smoke=烟雾 +hbmfluid.smoke_leaded=含铅烟雾 +hbmfluid.smoke_poison=有毒烟雾 +hbmfluid.sodium=液态钠 +hbmfluid.sodium_hot=高温液态钠 +hbmfluid.solvent=有机溶剂 +hbmfluid.sourgas=高硫天然气 +hbmfluid.spentsteam=低压蒸汽 +hbmfluid.steam=蒸汽 +hbmfluid.stellar_flux=星流浆 +hbmfluid.sulfuric_acid=硫酸 +hbmfluid.sunfloweroil=葵花籽油 +hbmfluid.superhotsteam=超热蒸汽 +hbmfluid.syngas=合成气 +hbmfluid.thorium_salt=液态钍盐 +hbmfluid.thorium_salt_depleted=贫化液态钍盐 +hbmfluid.thorium_salt_hot=高温液态钍盐 +hbmfluid.tritium=氚 +hbmfluid.uf6=六氟化铀 +hbmfluid.ultrahotsteam=超浓密蒸汽 +hbmfluid.unsaturateds=不饱和烃 +hbmfluid.vitriol=硫酸盐 +hbmfluid.wastefluid=液态核废料 +hbmfluid.wastegas=气态核废料 +hbmfluid.water=水 +hbmfluid.watz=毒泥浆 +hbmfluid.woodoil=木油 +hbmfluid.xenon=氙气 +hbmfluid.xpjuice=经验汁 +hbmfluid.xylene=轻质芳烃(BTX) +hbmpseudofluid.none=空 +hbmpseudofluid.heuf6=高浓缩六氟化铀 +hbmpseudofluid.meuf6=中浓缩六氟化铀 +hbmpseudofluid.leuf6=低浓缩六氟化铀 +hbmpseudofluid.nuf6=天然浓度六氟化铀 +hbmpseudofluid.pf6=六氟化钚 +hbmpseudofluid.mud_heavy=毒泥浆重馏分 +hbmpseudofluid.mud=毒泥浆气态物 +hbmmat.actinium227=锕-227 +hbmmat.advancedalloy=高级合金 +hbmmat.aluminum=铝 +hbmmat.americiumrg=反应堆级镅 +hbmmat.americium241=镅-241 +hbmmat.americium242=镅-242 +hbmmat.arsenic=砷 +hbmmat.arsenicbronze=砷青铜 +hbmmat.asbestos=石棉 +hbmmat.bakelite=电木 +hbmmat.beryllium=铍 +hbmmat.bismuth=铋 +hbmmat.bismuthbronze=铋青铜 +hbmmat.borax=硼砂 +hbmmat.boron=硼 +hbmmat.bscco= +hbmmat.cadmium=镉 +hbmmat.calcium=钙 +hbmmat.carbon=碳 +hbmmat.cdalloy=镉钢 +hbmmat.chlorocalcite=氯方解石 +hbmmat.cinnabar=朱砂 +hbmmat.cmbsteel=CMB钢 +hbmmat.coal=煤 +hbmmat.coalcoke=焦煤 +hbmmat.cobalt=钴 +hbmmat.cobalt60=钴-60 +hbmmat.coltan=钶钽铁矿 +hbmmat.copper=铜 +hbmmat.desh= +hbmmat.diamond=钻石 +hbmmat.dineutronium=双聚中子态素 +hbmmat.durasteel=高速钢 +hbmmat.emerald=绿宝石 +hbmmat.euphemium=Ep +hbmmat.ferrouranium=铀铁合金 +hbmmat.fiberglass=玻璃纤维 +hbmmat.fluorite=氟石 +hbmmat.flux=助熔剂 +hbmmat.ghiorsium336=Gh-336 +hbmmat.gold=金 +hbmmat.gold198=金-198 +hbmmat.graphene=石墨烯 +hbmmat.graphite=石墨 +hbmmat.hematite=赤铁矿 +hbmmat.iron=铁 +hbmmat.lanthanum=镧 +hbmmat.lapis=青金石 +hbmmat.lead=铅 +hbmmat.lead209=铅-209 +hbmmat.lignitecoke=褐煤焦煤 +hbmmat.lignite=褐煤 +hbmmat.lithium=锂 +hbmmat.magnetizedtungsten=磁化钨 +hbmmat.malachite=孔雀石 +hbmmat.meteoriciron=陨铁 +hbmmat.mingrade=紫铜 +hbmmat.molysite=氯化铁 +hbmmat.neodymium=钕 +hbmmat.neptunium237=镎-237 +hbmmat.niobium=铌 +hbmmat.obsidian=黑曜石 +hbmmat.osmiridium=铱锇合金 +hbmmat.petcoke=石油焦炭 +hbmmat.pigiron=生铁 +hbmmat.plutonium=钚 +hbmmat.plutonium238=钚-238 +hbmmat.plutonium239=钚-239 +hbmmat.plutonium240=钚-240 +hbmmat.plutonium241=钚-241 +hbmmat.plutoniumrg=反应堆级钚 +hbmmat.polonium210=钋-210 +hbmmat.polymer=聚合物 +hbmmat.radium226=镭-226 +hbmmat.rareearth=稀土 +hbmmat.redphosphorus=红磷 +hbmmat.redstone=红石 +hbmmat.rubber=橡胶 +hbmmat.saltpeter=硝石 +hbmmat.saturnite=土星 +hbmmat.schrabidate=Sa酸铁 +hbmmat.schrabidium=Sa326 +hbmmat.schraranium=低丰度Sa326 +hbmmat.silicon=硅 +hbmmat.slag=炉渣 +hbmmat.sodalite=方钠石 +hbmmat.sodium=钠 +hbmmat.solinium=Sa327 +hbmmat.starmetal=星辉 +hbmmat.steel=钢 +hbmmat.stone=石头 +hbmmat.strontium=锶 +hbmmat.sulfur=硫 +hbmmat.tantalum=钽 +hbmmat.tcalloy=锝钢 +hbmmat.technetium99=锝-99 +hbmmat.titanium=钛 +hbmmat.thorium232=钍-232 +hbmmat.tungsten=钨 +hbmmat.uranium=铀 +hbmmat.uranium233=铀-233 +hbmmat.uranium235=铀-235 +hbmmat.uranium238=铀-238 +hbmmat.watzmud=毒泥浆 +hbmmat.whitephosphorus=白磷 +hbmmat.workersalloy= +hbmmat.wroughtiron=锻铁 +hbmmat.zirconium=锆 +matshape.block=%s 块 +matshape.blocks=%s 块 +matshape.ingot=%s 锭 +matshape.ingots=%s 锭 +matshape.nugget=%s 粒 +matshape.nuggets=%s 粒 +matshape.quantum=%s 量子 +matshape.quanta=%s 量子 +icffuel.beryllium=铍 +icffuel.boron=硼 +icffuel.carbon=碳 +icffuel.calcium=钙 +icffuel.chlorine=氯 +icffuel.deuterium=氘 +icffuel.helium3=氦-3 +icffuel.helium4=氦-4 +icffuel.hydrogen=氢 +icffuel.lithium=锂 +icffuel.oxygen=氧 +icffuel.sodium=钠 +icffuel.tritium=氚 +info.asbestos=我感觉我的肺在燃烧。 +info.coaldust=在这里很难呼吸。 +info.coil=线圈强度 +info.templatefolder=需要使用%s创建 +info.template_in=输入: +info.template_in_p=输入: +info.template_out=输出: +info.template_out_p=输出: +info.template_seconds=秒 +info.template_time=生产耗时: +item.acetylene_torch=乙炔焊罐 +item.ajr_boots=AJR 动力装甲靴子 +item.ajr_helmet=AJR 动力装甲头盔 +item.ajr_legs=AJR 动力装甲护腿 +item.ajr_plate=AJR 动力装甲胸甲 +item.ajro_boots=AJR动力装甲靴子 +item.ajro_helmet=AJR 动力装甲头盔 +item.ajro_legs=AJR 动力装甲护腿 +item.ajro_plate=AJR 动力装甲胸甲 +item.alloy_axe=高级合金斧 +item.alloy_boots=高级合金靴子 +item.alloy_helmet=高级合金头盔 +item.alloy_hoe=高级合金锄 +item.alloy_legs=高级合金护腿 +item.alloy_pickaxe=高级合金镐 +item.alloy_plate=高级合金胸甲 +item.alloy_shovel=高级合金锹 +item.alloy_sword=高级合金剑 +item.ammo_12gauge=12号鹿弹 +item.ammo_12gauge_du=12号鹿弹[铀涂层] +item.ammo_12gauge_incendiary=12号鹿弹[燃烧] +item.ammo_12gauge_marauder=12号战术反掠夺鹿弹 +item.ammo_12gauge_percussion=12号冲击火药帽 +item.ammo_12gauge_shrapnel=12号鹿弹[榴霰弹] +item.ammo_12gauge_sleek=12号鹿弹[IF-R&D] +item.ammo_20gauge=20号鹿弹 +item.ammo_20gauge_caustic=20号鹿弹[腐蚀] +item.ammo_20gauge_explosive=20号鹿弹[高爆] +item.ammo_20gauge_flechette=20号箭霰弹 +item.ammo_20gauge_incendiary=20号鹿弹[燃烧] +item.ammo_20gauge_shock=20号鹿弹[震荡] +item.ammo_20gauge_shrapnel=20号鹿弹[榴霰弹] +item.ammo_20gauge_sleek=20号鹿弹[IF-R&D] +item.ammo_20gauge_slug=20号独头弹 +item.ammo_20gauge_wither=20号鹿弹[凋零] +item.ammo_22lr=.22LR子弹 +item.ammo_22lr_ap=.22LR子弹[AP] +item.ammo_22lr_chlorophyte=.22LR子弹[叶绿] +item.ammo_357_desh=.357马格南Desh子弹 +item.ammo_44=.44马格南子弹 +item.ammo_44_ap=.44马格南子弹[AP] +item.ammo_44_bj=.44马格南子弹[船] +item.ammo_44_chlorophyte=.44马格南子弹[叶绿] +item.ammo_44_du=.44马格南子弹[贫铀] +item.ammo_44_phosphorus=.44马格南子弹[白磷] +item.ammo_44_pip=.44马格南子弹[车厢] +item.ammo_44_rocket=.44马格南火箭 +item.ammo_44_silver=.44马格南子弹[建筑] +item.ammo_44_star=.44马格南子弹[星辉] +item.ammo_45=.45 ACP 子弹 +item.ammo_45_ap=.45 ACP 子弹[AP] +item.ammo_45_du=.45 ACP 子弹[贫铀] +item.ammo_4gauge=四号鹿弹 +item.ammo_4gauge_balefire=23mm野火榴弹 +item.ammo_4gauge_canister=23mm 火箭弹[榴霰弹] +item.ammo_4gauge_claw=4号爪弹 +item.ammo_4gauge_explosive=23mm榴弹 +item.ammo_4gauge_flechette=4号箭霰弹 +item.ammo_4gauge_flechette_phosphorus=4号箭霰弹[白磷] +item.ammo_4gauge_kampf=23mm火箭弹 +item.ammo_4gauge_semtex=23mm采矿弹药 +item.ammo_4gauge_sleek=4号鹿弹[IF-R&D] +item.ammo_4gauge_slug=四号实心独头弹 +item.ammo_4gauge_titan=4号Quacker鹿弹 +item.ammo_4gauge_vampire=4号木签弹 +item.ammo_4gauge_void=4号电离粒子弹 +item.ammo_50ae=.50AE子弹 +item.ammo_50ae_ap=.50AE子弹[AP] +item.ammo_50ae_chlorophyte=.50AE子弹[叶绿] +item.ammo_50ae_du=.50AE子弹[贫铀] +item.ammo_50ae_star=.50AE子弹[星辉] +item.ammo_50bmg=.50BMG子弹 +item.ammo_50bmg_ap=.50BMG子弹[AP] +item.ammo_50bmg_chlorophyte=.50BMG子弹[叶绿] +item.ammo_50bmg_du=.50BMG子弹[贫铀] +item.ammo_50bmg_explosive=.50BMG子弹[高爆] +item.ammo_50bmg_flechette=.50 BMG镖形弹 +item.ammo_50bmg_flechette_am=.50 BMG镖形弹[含镅] +item.ammo_50bmg_flechette_po=.50 BMG镖形弹[含钋] +item.ammo_50bmg_incendiary=.50BMG子弹[燃烧] +item.ammo_50bmg_phosphorus=.50BMG子弹[白磷] +item.ammo_50bmg_sleek=.50BMG子弹[IF-R&D] +item.ammo_50bmg_star=.50BMG子弹[星辉] +item.ammo_556=5.56mm子弹 +item.ammo_556_ap=5.56mm子弹[AP] +item.ammo_556_chlorophyte=5.56mm子弹[叶绿] +item.ammo_556_du=5.56mm子弹[贫铀] +item.ammo_556_flechette=5.56mm弗莱彻子弹 +item.ammo_556_flechette_chlorophyte=5.56mm弗莱彻子弹[叶绿] +item.ammo_556_flechette_du=5.56mm弗莱彻子弹 [贫铀穿甲] +item.ammo_556_flechette_incendiary=5.56mm弗莱彻子弹 [燃烧] +item.ammo_556_flechette_phosphorus=5.56mm弗莱彻子弹 [白磷穿甲] +item.ammo_556_flechette_sleek=5.56mm弗莱彻子弹[IF-R&D] +item.ammo_556_k=5.56mm空包弹 +item.ammo_556_phosphorus=5.56mm子弹[白磷] +item.ammo_556_sleek=5.56mm子弹[IF-R&D] +item.ammo_556_star=5.56mm子弹 [星辉] +item.ammo_556_tracer=5.56mm 子弹[曳光弹] +item.ammo_5mm=5mm子弹 +item.ammo_5mm_chlorophyte=5mm子弹[叶绿] +item.ammo_5mm_du=5mm子弹[贫铀] +item.ammo_5mm_explosive=5mm子弹[高爆] +item.ammo_5mm_star=5mm子弹[星辉] +item.ammo_75bolt=.75弹匣(30发) +item.ammo_75bolt_incendiary=.75燃烧弹匣(30发) +item.ammo_75bolt_he=.75高爆弹匣(30发) +item.ammo_762=7.62mm 子弹 +item.ammo_762_ap=7.62mm 子弹[AP] +item.ammo_762_du=7.62mm 子弹[贫铀] +item.ammo_762_k=7.62mm 空包弹 +item.ammo_762_phosphorus=7.62mm 子弹[白磷] +item.ammo_762_tracer=7.62mm 子弹[曳光] +item.ammo_9mm=9mm子弹 +item.ammo_9mm_ap=9mm子弹[AP] +item.ammo_9mm_chlorophyte=9mm子弹[叶绿] +item.ammo_9mm_du=9mm子弹[贫铀] +item.ammo_9mm_rocket=9mm火箭弹 +item.ammo_arty=16英寸炮弹 +item.ammo_arty_cargo=16英寸快递炮弹 +item.ammo_arty_chlorine=16英寸氯气炮弹 +item.ammo_arty_classic=16英寸炮弹 (特制) +item.ammo_arty_he=16英寸高爆炮弹 +item.ammo_arty_mini_nuke=16英寸微型核炮弹 +item.ammo_arty_mini_nuke_multi=16英寸多弹头微型核炮弹 +item.ammo_arty_mustard_gas=16英寸芥子气炮弹 +item.ammo_arty_nuke=16英寸核炮弹 +item.ammo_arty_phosgene=16英寸光气炮弹 +item.ammo_arty_phosphorus=16英寸磷炮弹 +item.ammo_arty_phosphorus_multi=16英寸多弹头磷炮弹 +item.ammo_cell=能量单元 +item.ammo_coilgun=钨制线圈枪子弹 +item.ammo_coilgun_du=铀铁合金制线圈枪子弹 +item.ammo_coilgun_rubber=橡胶制线圈枪子弹 +item.ammo_container=万能弹药盒 +item.ammo_dart=塑料镖[凋零] +item.ammo_dart_nerf=NERF 飞镖 +item.ammo_dart_nuclear=塑料镖[定时炸药] +item.ammo_dgk=双联守门员近防系统200发弹药 +item.ammo_fireext=灭火器 水罐 +item.ammo_fireext_foam=灭火器 泡沫罐 +item.ammo_fireext_sand=灭火器 硼沙罐 +item.ammo_folly=银弹 +item.ammo_folly_du=银弹[贫 +item.ammo_folly_nuclear=银弹[核子] +item.ammo_fuel=柴油罐 +item.ammo_fuel_gas=毒气罐 +item.ammo_fuel_napalm=凝固汽油罐 +item.ammo_fuel_phosphorus=白磷罐 +item.ammo_fuel_vaporizer=汽化罐 +item.ammo_grenade=40mm榴弹 +item.ammo_grenade_concussion=40mm榴弹[震荡] +item.ammo_grenade_finned=40mm榴弹[尾翼稳定] +item.ammo_grenade_he=40mm榴弹[HE] +item.ammo_grenade_incendiary=40mm榴弹[燃烧] +item.ammo_grenade_kampf=40mm战术榴弹 +item.ammo_grenade_leadburster=40mm 开路先锋 +item.ammo_grenade_nuclear=40mm榴弹[核子] +item.ammo_grenade_phosphorus=40mm榴弹[白磷] +item.ammo_grenade_sleek=40mm榴弹[IF-R&D] +item.ammo_grenade_toxic=40mm榴弹[化学] +item.ammo_grenade_tracer=40mm训练榴弹 +item.ammo_himars_standard=M28制导火箭炮系统火箭弹舱 +item.ammo_himars_standard_he=227毫米制导火箭炮系统火箭吊舱(HE) +item.ammo_himars_standard_lava=227毫米制导火箭炮系统火箭吊舱(熔岩) +item.ammo_himars_standard_mini_nuke=227毫米制导火箭炮系统火箭吊舱(迷你核弹) +item.ammo_himars_standard_tb=227毫米制导火箭炮系统火箭吊舱(温压弹) +item.ammo_himars_standard_wp=227毫米制导火箭炮系统火箭吊舱(白磷) +item.ammo_himars_single=M39A1制导火箭炮系统火箭弹舱 +item.ammo_himars_single_tb=610毫米制导火炮火箭吊舱(温压弹) +item.ammo_luna=Lunatic狙击弹 +item.ammo_luna_explosive=Lunatic狙击爆炸弹 +item.ammo_luna_incendiary=Lunatic狙击燃烧弹 +item.ammo_mirv=迷你MIRV +item.ammo_mirv_high=迷你MIRV (高当量) +item.ammo_mirv_low=迷你MIRV (低当量) +item.ammo_mirv_safe=迷你MIRV (安全) +item.ammo_mirv_special=迷你MIRV +item.ammo_nuke=迷你核弹 +item.ammo_nuke_barrel=小型核废料桶 +item.ammo_nuke_high=迷你核弹 (高当量) +item.ammo_nuke_low=迷你核弹 (低当量) +item.ammo_nuke_pumpkin=南瓜炸弹 +item.ammo_nuke_safe=迷你核弹 (安全) +item.ammo_nuke_tots=迷你核弹 (幼体) +item.ammo_rocket=84mm火箭弹 +item.ammo_rocket_canister=84mm 火箭弹[榴霰弹] +item.ammo_rocket_digamma=§4归 零§r +item.ammo_rocket_emp=84mm火箭弹[EMP] +item.ammo_rocket_glare=84mm火箭弹[红光] +item.ammo_rocket_he=84mm火箭弹[HE] +item.ammo_rocket_incendiary=84mm火箭弹[燃烧] +item.ammo_rocket_nuclear=84mm火箭弹[核子] +item.ammo_rocket_phosphorus=84mm火箭弹[白磷] +item.ammo_rocket_rpc=84mm火箭弹[飞行电锯] +item.ammo_rocket_shrapnel=84mm火箭弹[破片] +item.ammo_rocket_sleek=84mm火箭弹[IF-R&D] +item.ammo_rocket_toxic=84mm火箭弹[化学] +item.ammo_shell=240mm炮弹 +item.ammo_shell_apfsds_du=240mm 贫铀尾翼稳定脱壳穿甲弹 +item.ammo_shell_apfsds_t=240mm 钨心尾翼稳定脱壳穿甲弹 +item.ammo_shell_explosive=240mm 高爆炮弹 +item.ammo_shell_w9=240mm W9核子炮弹 +item.ammo_stinger_rocket=毒刺导弹 +item.ammo_stinger_rocket_he=毒刺导弹[高爆] +item.ammo_stinger_rocket_incendiary=毒刺导弹[燃烧] +item.ammo_stinger_rocket_nuclear=毒刺导弹[Привет] +item.ammo_stinger_rocket_bones=毒刺导弹[寻骨] +item.ams_catalyst_aluminium=铝反应催化剂 +item.ams_catalyst_beryllium=铍反应催化剂 +item.ams_catalyst_blank=空白反应催化剂 +item.ams_catalyst_caesium=铯反应催化剂 +item.ams_catalyst_cerium=铈反应催化剂 +item.ams_catalyst_cobalt=钴反应催化剂 +item.ams_catalyst_copper=铜反应催化剂 +item.ams_catalyst_dineutronium=双聚中子态素反应催化剂 +item.ams_catalyst_euphemium=Ep反应催化剂 +item.ams_catalyst_iron=铁反应催化剂 +item.ams_catalyst_lithium=锂反应催化剂 +item.ams_catalyst_niobium=铌反应催化剂 +item.ams_catalyst_schrabidium=Sa326反应催化剂 +item.ams_catalyst_strontium=锶反应催化剂 +item.ams_catalyst_thorium=钍反应催化剂 +item.ams_catalyst_tungsten=钨反应催化剂 +item.ams_core_eyeofharmony=和谐之眼[AMS/DFC核心] +item.ams_core_sing=活跃奇点[AMS/DFC核心] +item.ams_core_thingy=Thingy[AMS/DFC核心] +item.ams_core_wormhole=微型虫洞[AMS/DFC核心] +item.ams_focus_blank=空白稳定器焦点 +item.ams_focus_booster=增压型稳定器焦点 +item.ams_focus_booster.desc=较弱的约束场和核心能量注入:$更多的热量产生,更多的能量。 +item.ams_focus_limiter=限制稳定器焦点 +item.ams_focus_limiter.desc=限制领域的最高性能:$标准冷却,无能源加成。 +item.ams_lens=稳定透镜 +item.ams_muzzle=激活射线发射极 +item.ams_muzzle.desc=...它可以发出一束能量束。 +item.analysis_tool=分析工具 +item.analyzer=分析仪 +item.anchor_remote=召回设备 +item.apple_euphemium=Ep苹果 +item.apple_lead=铅苹果 +item.apple_schrabidium=Sa326苹果 +item.arc_electrode=石墨电极 +item.arc_electrode.desh=Desh电极 +item.arc_electrode.graphite=石墨电极 +item.arc_electrode.lanthanium=镧电极 +item.arc_electrode.saturnite=土星电极 +item.arc_electrode_burnt=熔化电极 +item.arc_electrode_burnt.desh=熔化Desh电极 +item.arc_electrode_burnt.graphite=熔化石墨电极 +item.arc_electrode_burnt.lanthanium=熔化镧电极 +item.arc_electrode_burnt.saturnite=熔化土星电极 +item.arc_electrode_desh=Desh电极 +item.armor_battery=动力装甲电池组 +item.armor_battery_mk2=动力装甲电池组 Mk2 +item.armor_battery_mk3=动力装甲电池组 Mk3 +item.armor_polish=亮甲牌装甲抛光剂 +item.asbestos_boots=防火靴 +item.asbestos_cloth=防火布 +item.asbestos_helmet=防火头盔 +item.asbestos_legs=防火护腿 +item.asbestos_plate=防火胸甲 +item.ashglasses=防灰烬护目镜 +item.assembly_45=.45 ACP子弹[待装配] +item.assembly_556=5.56mm子弹[待装配] +item.assembly_762=7.62mm子弹[待装配] +item.assembly_actionexpress=.50 AE子弹[待装配] +item.assembly_calamity=.50 BMG子弹[待装配] +item.assembly_desh=Desh子弹[待装配] +item.assembly_gold=金子弹[待装配] +item.assembly_iron=铁子弹[待装配] +item.assembly_lacunae=.5mm子弹[待装配] +item.assembly_lead=玻璃子弹[待装配] +item.assembly_luna=Lunatic狙击子弹[待装配] +item.assembly_nightmare=钨子弹[待装配] +item.assembly_nopip=.44马格南[待装配] +item.assembly_nuke=迷你核弹外壳 +item.assembly_pip=污染子弹[待装配] +item.assembly_schrabidium=Sa326子弹[待装配] +item.assembly_smg=9mm子弹[待装配] +item.assembly_steel=铅子弹[待装配] +item.assembly_template=装配机模板: +item.assembly_uzi=.22 LR子弹[待装配] +item.attachment_mask=附加型防毒面具 +item.attachment_mask_mono=可接入式半面罩防毒面具 +item.australium_iii=MkIII寿命延长剂 +item.australium_iv=MkIV寿命延长剂 +item.australium_v=MkV寿命延长剂 +item.back_tesla=背负式特斯拉线圈 +item.balefire_and_ham=火腿野火蛋 +item.balefire_and_steel=野火打火石 +item.balefire_scrambled=炒野火蛋 +item.ball_dynamite=硝糖炸药 +item.ball_fireclay=耐火粘土 +item.ball_resin=乳胶 +item.ball_tatb=三氨基三硝基苯(TATB) +item.ball_tnt=TNT炸药 +item.ballistic_gauntlet=冲击拳套 +item.ballistite=混合无烟火药 +item.bandaid=邦迪创可贴 +item.bathwater=有毒肥皂水 +item.bathwater_mk2=有毒肥皂水(马香味) +item.battery_advanced=高级电池 +item.battery_advanced_cell=高级电池组 +item.battery_advanced_cell_12=十二联高级电池组 +item.battery_advanced_cell_4=四联高级电池组 +item.battery_creative=无限电池 +item.battery_generic=电池 +item.battery_lithium=锂电池 +item.battery_lithium_cell=锂电池组 +item.battery_lithium_cell_3=三联锂电池组 +item.battery_lithium_cell_6=六联锂电池组 +item.battery_potato=马铃薯电池 +item.battery_potatos=马铃薯OS +item.battery_red_cell=红石电池组 +item.battery_red_cell_24=二十四联红石电池组 +item.battery_red_cell_6=六联红石电池组 +item.battery_sc_americium=自充电 镅-241电池 +item.battery_sc_gold=自充电 金-198电池 +item.battery_sc_lead=自充电 铅-209电池 +item.battery_sc_plutonium=自充电 钚-238电池 +item.battery_sc_polonium=自充电 钋-210电池 +item.battery_sc_technetium=自充电 锝-98电池 +item.battery_sc_uranium=自充电 铀-238电池 +item.battery_schrabidium=Sa326电池 +item.battery_schrabidium_cell=Sa326电池组 +item.battery_schrabidium_cell_2=双联Sa326电池组 +item.battery_schrabidium_cell_4=四联Sa326电池组 +item.battery_spark=Spark电池 +item.battery_spark_cell_100=Spark神秘储能电池组 +item.battery_spark_cell_1000=Spark神秘物质能量空间 +item.battery_spark_cell_10000=Spark时空晶体 +item.battery_spark_cell_25=Spark神秘汽车电池 +item.battery_spark_cell_2500=Spark神秘迪拉克之海 +item.battery_spark_cell_6=Spark电池组 +item.battery_spark_cell_power=Spark反物理储能装置 +item.battery_steam=蒸汽动力储能罐 +item.battery_steam_large=大型蒸汽动力储能罐 +item.battery_su=SU-电池 +item.battery_su_l=大型SU-电池 +item.battery_trixite=杂牌Spark电池 +item.bdcl=BDCL牌润滑油 +item.bedrock_ore.grade.base=%s基岩矿石 +item.bedrock_ore.grade.base_roasted=焙烧%s基岩矿石 +item.bedrock_ore.grade.base_washed=洗净%s基岩矿石 +item.bedrock_ore.grade.primary=%s基岩矿石主产物 +item.bedrock_ore.grade.primary_roasted=焙烧%s基岩矿石主产物 +item.bedrock_ore.grade.primary_sulfuric=酸浸%s基岩矿石主产物 +item.bedrock_ore.grade.primary_nosulfuric=离心酸浸%s基岩矿石主产物 +item.bedrock_ore.grade.primary_solvent=溶解%s基岩矿石主产物 +item.bedrock_ore.grade.primary_nosolvent=离心溶解%s基岩矿石主产物 +item.bedrock_ore.grade.primary_rad=清洁%s基岩矿石主产物 +item.bedrock_ore.grade.primary_norad=离心清洁%s基岩矿石主产物 +item.bedrock_ore.grade.primary_first=高重量%s基岩矿石主产物 +item.bedrock_ore.grade.primary_second=低重量%s基岩矿石主产物 +item.bedrock_ore.grade.crumbs=%s基岩矿石矿渣 +item.bedrock_ore.grade.sulfuric_byproduct=酸浸%s基岩矿石副产物 +item.bedrock_ore.grade.sulfuric_roasted=焙烧酸浸%s基岩矿石副产物 +item.bedrock_ore.grade.sulfuric_arc=灼热酸浸%s基岩矿石副产物 +item.bedrock_ore.grade.sulfuric_washed=洗净酸浸%s基岩矿石副产物 +item.bedrock_ore.grade.solvent_byproduct=溶解%s基岩矿石副产物 +item.bedrock_ore.grade.solvent_roasted=焙烧溶解%s基岩矿石副产物 +item.bedrock_ore.grade.solvent_arc=灼热溶解%s基岩矿石副产物 +item.bedrock_ore.grade.solvent_washed=洗净溶解%s基岩矿石副产物 +item.bedrock_ore.grade.rad_byproduct=清洁%s基岩矿石副产物 +item.bedrock_ore.grade.rad_roasted=焙烧清洁%s基岩矿石副产物 +item.bedrock_ore.grade.rad_arc=灼热清洁%s基岩矿石副产物 +item.bedrock_ore.grade.rad_washed=洗净清洁%s基岩矿石副产物 +item.bedrock_ore.trait.arc=§6电弧炉煅烧 +item.bedrock_ore.trait.centrifuged=§9离心处理 +item.bedrock_ore.trait.rad=§a高性能溶剂处理 +item.bedrock_ore.trait.roasted=§e复式炼焦炉焙烧 +item.bedrock_ore.trait.solvent=§f有机溶剂处理 +item.bedrock_ore.trait.sulfuric=§6硫酸处理 +item.bedrock_ore.trait.washed=§b水洗 +item.bedrock_ore.type.actinide=锕系元素 +item.bedrock_ore.type.crystal=晶体 +item.bedrock_ore.type.heavy=重金属 +item.bedrock_ore.type.light=轻金属 +item.bedrock_ore.type.nonmetal=非金属 +item.bedrock_ore.type.rare=稀土 +item.bedrock_ore_base=基岩矿石原矿 +item.bedrock_ore_fragment=%s基岩矿石碎片 +item.beta=Beta测试版功能 +item.big_sword=大剑 +item.billet_actinium=锕-227坯料 +item.billet_am_mix=反应堆级镅坯料 +item.billet_am241=镅-241坯料 +item.billet_am242=镅-242坯料 +item.billet_americium_fuel=镅燃料坯料 +item.billet_au198=金-198坯料 +item.billet_australium=奥斯坯料 +item.billet_australium_greater=富集奥斯坯料 +item.billet_australium_lesser=贫化奥斯坯料 +item.billet_balefire_gold=激活态金-198坯料 +item.billet_beryllium=铍坯料 +item.billet_bismuth=铋坯料 +item.billet_co60=钴-60坯料 +item.billet_cobalt=钴坯料 +item.billet_flashlead=闪光铅坯料 +item.billet_flashlead.desc=晶格衰变,引起反物质湮灭反应,导致π介子释放,衰变为μ子,催化原子核融合,产生新的元素$请尽量跟上。 +item.billet_gh336=Gh336坯料 +item.billet_gh336.desc=钅喜的同事 +item.billet_hes=高浓缩度Sa326燃料坯料 +item.billet_les=低浓缩度Sa326燃料坯料 +item.billet_mox_fuel=MOX燃料坯料 +item.billet_mox_fuel.desc=口袋摩西! +item.billet_neptunium=镎坯料 +item.billet_neptunium_fuel=镎核燃料坯料 +item.billet_nuclear_waste=核废料坯料 +item.billet_pb209=铅-209坯料 +item.billet_po210be=钋210-铍坯料 +item.billet_polonium=钋坯料 +item.billet_pu_mix=反应堆级钚坯料 +item.billet_pu238=钚-238坯料 +item.billet_pu238be=钚238-铍坯料 +item.billet_pu239=钚-239坯料 +item.billet_pu240=钚-240坯料 +item.billet_pu241=钚-241坯料 +item.billet_plutonium=钚坯料 +item.billet_plutonium_fuel=钚燃料坯料 +item.billet_ra226=镭-226坯料 +item.billet_ra226be=镭226-铍坯料 +item.billet_schrabidium=Sa326坯料 +item.billet_schrabidium_fuel=Sa326燃料坯料 +item.billet_silicon=硅晶圆 +item.billet_solinium=Sa327坯料 +item.billet_sr90=锶-90坯料 +item.billet_technetium=锝-99坯料 +item.billet_th232=钍-232坯料 +item.billet_thorium_fuel=钍燃料坯料 +item.billet_u233=铀-233坯料 +item.billet_u235=铀-235坯料 +item.billet_u238=铀-238坯料 +item.billet_uranium=铀坯料 +item.billet_uranium_fuel=铀燃料坯料 +item.billet_yharonite=犽戎龙素坯料 +item.billet_zfb_am_mix=反应堆级镅 ZFB坯料 +item.billet_zfb_bismuth=铋 ZFB坯料 +item.billet_zfb_pu241=钚-241 ZFB坯料 +item.billet_zirconium=锆坯料 +item.bio_wafer=海藻晶片 +item.biomass=生物质 +item.biomass_compressed=压缩生物质 +item.bismuth_boots=铋凉鞋 +item.bismuth_helmet=铋头饰 +item.bismuth_legs=铋护膝 +item.bismuth_axe=铋斧 +item.bismuth_pickaxe=铋镐 +item.bismuth_plate=铋质护肩、项链和腰带 +item.bismuth_tool=磁力提取器 +item.bj_boots=§4月神§r钉靴 +item.bj_helmet=热传感器眼罩 +item.bj_legs=§4月神§r护腿 +item.bj_plate=§4月神§r胸甲 +item.bj_plate_jetpack=§4月神§r胸甲 (带翼) +item.black_diamond=黑色钻石 +item.black_hole=微型黑洞 +item.blade_meteorite=陨石刀 +item.blade_titanium=钛扇片 +item.blade_tungsten=钨强化扇片 +item.blades_advanced_alloy=高级合金刀片 +item.blades_desh=Desh制刀片 +item.blades_steel=钢制刀片 +item.blades_titanium=钛制刀片 +item.blowtorch=喷灯 +item.board_copper=铜片 +item.boat_rubber=橡胶船 +item.bobmazon_hidden=隐藏目录 +item.bobmazon_machines=Bobmazon: 方块和机器 +item.bobmazon_materials=Bobmazon: 材料 +item.bobmazon_tools=Bobmazon: 工具 +item.bobmazon_weapons=Bobmazon: 武器和爆炸物 +item.boltntm=%s螺栓 +item.bolt_compound=加强涡轮机轴 +item.bolt_spike=铁路道钉 +item.bolt_spike.desc=不知何故,散发着威胁的气息 +item.boltgun=气动射钉枪 +item.bomb_caller=空袭指示器 +item.bomb_waffle=大规模杀伤性华夫饼 +item.book_guide=HBM指导书 +item.book_of_=车厢书 +item.book_lemegeton=所罗门之钥 +item.book_secret= +item.bottle2_empty=空瓶 +item.bottle2_fritz=弗里茨可乐 +item.bottle2_fritz_special=第一弗里茨可乐 +item.bottle2_korl= +item.bottle2_korl_special=第一Korl +item.bottle2_sunset=夕阳沙士 +item.bottle_cherry=樱桃味核子可乐 +item.bottle_empty=空可乐瓶 +item.bottle_mercury=一瓶水银 +item.bottle_nuka=核子可乐 +item.bottle_opener=Hbm自制开瓶器 +item.bottle_quantum=量子核子可乐 +item.bottle_rad=辐射S~核子可乐 +item.bottle_sparkle=S~核子可乐 +item.bottled_cloud=瓶中云 +item.boy_bullet=铀-235弹头 +item.boy_igniter=点火器 +item.boy_kit=小男孩 套件 +item.boy_propellant=炸药 +item.boy_shielding=中子屏蔽罩 +item.boy_target=次临界铀-235标靶 +item.briquette.coal=煤球 +item.briquette.lignite=褐煤煤球 +item.briquette.wood=木屑球 +item.bucket_acid=一桶酸 +item.bucket_mud=一桶毒泥 +item.bucket_schrabidic_acid=一桶Sa酸 +item.bucket_sulfuric_acid=一桶硫酸 +item.bucket_toxic=一桶绿色软泥 +item.burnt_bark=烧焦树皮 +item.burnt_bark.desc=爆炸的金橡树的树皮。 +item.can_bepis=白事 +item.can_breen=布雷恩博士的私人珍藏 +item.can_creature='生物'能量饮料 +item.can_empty=空罐 +item.can_key=罐头拉环 +item.can_luna=黑梅萨露娜-黑可乐 +item.can_mrsugar='糖博士'软饮料 +item.can_mug=MUG牌树根啤酒 +item.can_overcharge=超频DeliriumXT +item.can_redbomb='红色炸弹'能量饮料 +item.can_smart=\"智慧\"能量饮料 +item.canister_NITAN=桶装NITAN 100号超级燃料 +item.canister_biofuel=桶装生物燃料 +item.canister_bitumen=桶装沥青 +item.canister_canola=桶装润滑油 +item.canister_empty=空油桶 +item.canister_ethanol=桶装乙醇 +item.canister_fracksol=桶装压裂液 +item.canister_fuel=桶装柴油 +item.canister_fuel.desc=大家欢呼吧! +item.canister_full=油桶: +item.canister_gasoline=桶装含铅汽油 +item.canister_gasoline.desc=铅就是朋友$让朋友进入你的血液$*上膛声*现在就做 +item.canister_heatingoil=桶装燃油 +item.canister_heavyoil=桶装重油 +item.canister_kerosene=桶装煤油 +item.canister_lightoil=桶装轻油 +item.canister_napalm=桶装凝固汽油B +item.canister_naphtha=桶装石脑油 +item.canister_oil=桶装原油 +item.canister_petroil=桶装汽油 +item.canister_reoil=桶装再生油 +item.canister_smear=桶装工业油 +item.canned_asbestos=石棉罐头 +item.canned_asbestos.desc=尝尝石棉肺! +item.canned_ass=驴罐头 +item.canned_ass.desc=100%优质驴肉!* +item.canned_bark=松树皮罐头 +item.canned_bark.desc=更加的“松”脆! +item.canned_beef=牛肉罐头 +item.canned_beef.desc=几个世纪前,一头牛为此而死。 +item.canned_bhole=黑洞罐头 +item.canned_bhole.desc=奇点是我肚肚里的美味! +item.canned_cheese=融化奶酪罐头 +item.canned_cheese.desc=是奶酪吗?是橡胶水泥吗?谁知道,谁在乎。 +item.canned_chinese=中餐罐头 +item.canned_chinese.desc=在中国,中餐被称为饭。 +item.canned_diesel=柴油罐头 +item.canned_diesel.desc=我渐渐地就抖不出包袱了 +item.canned_fist=拳头罐头 +item.canned_fist.desc=给你一拳! +item.canned_fried=炸鸡罐头 +item.canned_fried.desc=甚至罐头都是油炸的! +item.canned_hotdogs=热狗罐头 +item.canned_hotdogs.desc=不要与冷猫混淆。 +item.canned_jizz=FlimFlam工业牌?马奶罐头 +item.canned_jizz.desc=等等什么—— +item.canned_kerosene=煤油罐头 +item.canned_kerosene.desc=想象一下这句俏皮的台词。 +item.canned_leftovers=剩菜罐头 +item.canned_leftovers.desc=你来的太迟了 +item.canned_milk=罐装炼乳 +item.canned_milk.desc=牛奶2:比以往任何时候都更固体! +item.canned_mystery=神秘肉类罐头 +item.canned_mystery.desc=里面是什么?只有一种方法可以找到! +item.canned_napalm=凝固汽油罐头 +item.canned_napalm.desc=我喜欢早上闻着老梗的味道! +item.canned_oil=机油罐头 +item.canned_oil.desc=它既然能让发动机运转的更流畅,那为什么不能用在人类身上? +item.canned_pashtet=牛排罐头 +item.canned_pashtet.desc=翻译服务不可用блядь! +item.canned_pizza=意大利香肠比萨罐头 +item.canned_pizza.desc=反人类罪 +item.canned_recursion=循环罐头 +item.canned_recursion.desc=封闭递归 +item.canned_spam=SPAM斯帕姆午餐肉 +item.canned_spam.desc=这段三分半钟的幽默剧是以布朗利虚构的绿侏儒咖啡馆为背景。$一位女服务生与不喜欢吃午餐肉的本太太之间发生了争执,$女服务生背诵了一份几乎每道菜都含有午餐肉的菜单。$本太太要了一道没有午餐肉的菜,这让她爱吃午餐肉的丈夫大吃一惊。$女服务员也对这个要求很反感。本先生提出要替换她的午餐肉,并要了一道含有大量午餐肉和烤豆的菜。$服务员拒绝了,因为烤豆子已经吃完了;当本先生要求替换午餐肉时,女服务员再次表示厌恶。$有几次,餐厅里的一群维京人高声歌唱午餐肉,打断了谈话。$那个愤怒的女服务员命令他们闭嘴,但他们依旧大声唱歌。$这时一名匈牙利游客来到柜台,试图用一本完全不准确的匈牙利语/英语手册(参考之前的小品)点菜。$紧接着这名匈牙利游客就被一名警察迅速护送离开。$然后这段幽默剧突然切换镜头,一位历史学家在电视演播室谈论维京人在咖啡馆的起源。$他继续说,并开始越来越多地在每一句话中插入“午餐肉”一词。$然后背景被抬高,露出背后的餐厅场景。$那个历史学家加入了维京人的歌曲,本夫妇通过电线离开现场,而歌声还在继续。$在最初的电视表演中,结尾的字幕开始滚动,背景中仍然可以听到歌声。 +item.canned_stew=蘑菇煲罐头 +item.canned_stew.desc= +item.canned_tomato=番茄汤罐头 +item.canned_tomato.desc=谁要浓浓的红糊糊? +item.canned_tube=宇航员食品管 +item.canned_tube.desc=美味的蘑菇。 +item.canned_tuna=金枪鱼罐头 +item.canned_tuna.desc=我不知道那是金枪鱼还是干水泥。 +item.canned_yogurt=酸奶罐头 +item.canned_yogurt.desc=可能坏掉了,但管它呢 +item.canteen_13=Vault13水壶 +item.canteen_fab=极品伏特加 +item.canteen_vodka=伏特加 +item.cap_fritz=弗里茨瓶盖 +item.cap_korl=Korl瓶盖 +item.cap_nuka=核子可乐瓶盖 +item.cap_quantum=樱桃味核子可乐瓶盖 +item.cap_rad=辐射S~核子可乐瓶盖 +item.cap_sparkle=S~核子可乐瓶盖 +item.cap_star=夕阳沙士星星瓶盖 +item.cap_sunset=夕阳沙士瓶盖 +item.cape_ayy=Ayy披风 +item.cape_codered_=codered_披风 +item.cape_dafnik=Dafnik披风 +item.cape_gasmask=披风[防毒面具] +item.cape_hbm=Hbm披风 +item.cape_hidden=隐藏斗篷 +item.cape_lpkukin=LPkukin披风 +item.cape_nostalgia=DrNostalgia披风 +item.cape_radiation=披风[辐射] +item.cape_schrabidium=披风[Sa326] +item.cape_vertice=Lord Vertice披风 +item.card_aos=黑桃A +item.card_qos=黑桃皇后 +item.cart.crate=板条箱运输车 +item.cart.destroyer=废品销毁车 +item.cart.empty=钢箱矿车 +item.casing_357=.357马格南弹壳[x16] +item.casing_44=.44马格南弹壳[x16] +item.casing_50=大口径弹壳[x8] +item.casing_9=小口径弹壳[x24] +item.casing_buckshot=鹿弹弹壳[x8] +item.catalyst_clay=黏土催化剂 +item.catalytic_converter=催化转化器 +item.cbt_device=CBT装置 +item.cell_anti_schrabidium=反Sa326单元 +item.cell_antimatter=反物质单元 +item.cell_balefire=气态野火单元 +item.cell_deuterium=氘单元 +item.cell_empty=空单元 +item.cell_puf6=六氟化钚单元 +item.cell_sas3=三硫化Sa单元 +item.cell_tritium=氚单元 +item.cell_uf6=六氟化铀单元 +item.centri_stick=便携离心机 +item.centrifuge_element=离心元件 +item.centrifuge_tower=离心塔 +item.chainsaw=链锯 +item.cheese=奶酪 +item.cheese_quesadilla=奶酪油炸玉米粉饼 +item.chemical_dye.black=化学染料(黑色) +item.chemical_dye.blue=化学染料(蓝色) +item.chemical_dye.brown=化学染料(棕色) +item.chemical_dye.cyan=化学染料(青色) +item.chemical_dye.gray=化学染料(灰色) +item.chemical_dye.green=化学染料(绿色) +item.chemical_dye.lightblue=化学染料(浅蓝色) +item.chemical_dye.lime=化学染料(石灰) +item.chemical_dye.magenta=化学染料(品红色) +item.chemical_dye.orange=化学染料(橙色) +item.chemical_dye.pink=化学染料(粉色) +item.chemical_dye.purple=化学染料(紫色) +item.chemical_dye.red=化学染料(红色) +item.chemical_dye.silver=化学染料(浅灰色) +item.chemical_dye.white=化学染料(白色) +item.chemical_dye.yellow=化学染料(黄色) +item.chemistry_set=实验室玻璃器皿 +item.chemistry_set_boron=实验室玻璃器皿(硼玻璃) +item.chemistry_template=化工厂模板: +item.chernobylsign=辐射警告标志战斧 +item.chlorine_pinwheel=氯气转轮 +item.chlorophyte_axe=叶绿斧 +item.chlorophyte_pickaxe=叶绿镐 +item.chocolate=“我是-镭牌”巧克力 +item.chocolate.desc=镭巧克力?我很确定这是冰毒。 +item.chocolate_milk=巧克力牛奶 +item.chopper=猎人直升机 +item.chopper_blades=猎人直升机旋翼 +item.chopper_gun=猎人直升机机枪 +item.chopper_head=猎人直升机驾驶舱 +item.chopper_tail=猎人直升机尾部 +item.chopper_torso=猎人直升机主体 +item.chopper_wing=猎人直升机翼片 +item.chunk_ore.rare=稀土矿石块 +item.cigarette=FFI牌香烟 +item.cinnebar=朱砂 +item.circuit.advanced=军用级电路板 +item.circuit.analog=模拟电路板 +item.circuit.atomic_clock=原子钟 +item.circuit.basic=集成电路板 +item.circuit.bismoid=多功能电路板 +item.circuit.capacitor=电容器 +item.circuit.capacitor_board=电容板 +item.circuit.capacitor_tantalium=钽电容器 +item.circuit.chip=微芯片 +item.circuit.chip_bismoid=多功能集成电路 +item.circuit.chip_quantum=固态量子处理器 +item.circuit.controller=控制单元 +item.circuit.controller_advanced=高级控制单元 +item.circuit.controller_chassis=控制单元外壳 +item.circuit.controller_quantum=量子计算机 +item.circuit.pcb=印刷电路板 +item.circuit.quantum=量子处理单元 +item.circuit.silicon=压印硅晶圆 +item.circuit.vacuum_tube=真空管 +item.circuit_aluminium=基础电路 +item.circuit_arsenic=自适应电路 +item.circuit_arsenic_raw=自适应电路组件 +item.circuit_bismuth=多功能芯片组 +item.circuit_bismuth_raw=多功能芯片组组件 +item.circuit_copper=增强电路 +item.circuit_gold=超频电路 +item.circuit_raw=基本电路组件 +item.circuit_red_copper=高级电路 +item.circuit_schrabidium=高性能电路 +item.circuit_star=星控制 电路板 +item.circuit_star.desc=目前未使用,因为它缺少操作系统。 +item.circuit_star_component.card=星控制 扩展卡 +item.circuit_star_component.chipset=星控制 芯片组 +item.circuit_star_component.cpu=星控制 CPU +item.circuit_star_component.ram=星控制 RAM +item.circuit_star_piece.board_blank=SC-印刷电路板 +item.circuit_star_piece.board_converter=SC-电压转换器 +item.circuit_star_piece.board_transistor=SC-晶体管 +item.circuit_star_piece.bridge_bios=SC-BIOS芯片 +item.circuit_star_piece.bridge_bus=SC-总线 +item.circuit_star_piece.bridge_chipset=SC-芯片组 +item.circuit_star_piece.bridge_cmos=SC-CMOS存储器 +item.circuit_star_piece.bridge_io=SC-IO芯片 +item.circuit_star_piece.bridge_north=SC-北桥 +item.circuit_star_piece.bridge_south=SC-南桥 +item.circuit_star_piece.card_board=SC-扩展卡底板 +item.circuit_star_piece.card_processor=SC-扩展卡处理器 +item.circuit_star_piece.cpu_cache=SC-CPU缓存 +item.circuit_star_piece.cpu_clock=SC-CPU时钟 +item.circuit_star_piece.cpu_ext=SC-砷半导体外延片 +item.circuit_star_piece.cpu_logic=SC-算术逻辑单元 +item.circuit_star_piece.cpu_register=SC-CPU寄存器 +item.circuit_star_piece.cpu_socket=SC-CPU插槽 +item.circuit_star_piece.mem_socket=SC-存储插座 +item.circuit_star_piece.mem_16k_a=SC-16k内存条插槽 A +item.circuit_star_piece.mem_16k_b=SC-16k内存条插槽 B +item.circuit_star_piece.mem_16k_c=SC-16k内存条插槽 C +item.circuit_star_piece.mem_16k_d=SC-16k内存条插槽 D +item.circuit_tantalium=电容板 +item.circuit_tantalium_raw=电容板组件 +item.circuit_targeting_tier1=军用级电路板[1级] +item.circuit_targeting_tier2=军用级电路板[2级] +item.circuit_targeting_tier3=军用级电路板[3级] +item.circuit_targeting_tier4=军用级电路板[4级] +item.circuit_targeting_tier5=军用级电路板[5级] +item.circuit_targeting_tier6=军用级电路板[6级] +item.cladding_desh=Desh覆层 +item.cladding_ghiorsium=Gh336覆层 +item.cladding_iron=铁覆层 +item.cladding_lead=铅覆层 +item.cladding_obsidian=黑曜石覆层 +item.cladding_paint=铅涂料 +item.cladding_rubber=橡胶覆层 +item.clip_bf=两包野火子弹 +item.clip_bolt_action=盒装12x74独头弹 +item.clip_cryolator=急冻单元箱 +item.clip_defabricator=毁灭者能量电池弹药带 +item.clip_emp=小包能量电池 +item.clip_euthanasia=最后的医疗箱 +item.clip_fatman=六个核弹 +item.clip_hp=墨水缸 +item.clip_immolator=焚烧者燃料箱 +item.clip_jack=盒装四联12x70鹿弹 +item.clip_lever_action=盒装12x74鹿弹 +item.clip_mirv=三合一微型MIRV包 +item.clip_mp=小型无发射药机枪子弹盒 +item.clip_mp40=9mm冲锋枪子弹盒 +item.clip_osipr=AR2 弹盒 +item.clip_revolver=盒装.357马格南 +item.clip_revolver_cursed=钢子弹弹匣 +item.clip_revolver_gold=小盒金子弹 +item.clip_revolver_iron=盒装铁子弹 +item.clip_revolver_lead=盒装核子弹 +item.clip_revolver_nightmare=子弹袋 +item.clip_revolver_nightmare2=激光弹药带 +item.clip_revolver_nopip=盒装.44子弹 +item.clip_revolver_pip=左轮快速装弹器 +item.clip_revolver_schrabidium=Sa326弹药盒 +item.clip_rpg=火箭弹箱 +item.clip_spark=大型电磁子弹 +item.clip_stinger=包装毒刺导弹 +item.clip_uboinik=盒装12x70鹿弹 +item.clip_uzi=32发装.22LR子弹盒 +item.clip_xvl1456=大型同位素盒 +item.cmb_axe=CMB钢斧 +item.cmb_boots=CMB钢靴子 +item.cmb_helmet=CMB钢头盔 +item.cmb_hoe=CMB钢锄 +item.cmb_legs=CMB钢护腿 +item.cmb_pickaxe=CMB钢镐 +item.cmb_plate=CMB钢胸甲 +item.cmb_shovel=CMB钢锹 +item.cmb_sword=CMB钢剑 +item.coal_infernal=地狱煤炭 +item.cobalt_axe=钴斧 +item.cobalt_boots=钴靴子 +item.cobalt_decorated_axe=镶嵌钴斧 +item.cobalt_decorated_hoe=镶嵌钴锄 +item.cobalt_decorated_pickaxe=镶嵌钴镐 +item.cobalt_decorated_shovel=镶嵌钴锹 +item.cobalt_decorated_sword=镶嵌钴剑 +item.cobalt_helmet=钴头盔 +item.cobalt_hoe=钴锄 +item.cobalt_legs=钴护腿 +item.cobalt_pickaxe=钴镐 +item.cobalt_plate=钴胸甲 +item.cobalt_shovel=钴锹 +item.cobalt_sword=钴剑 +item.coffee=咖啡 +item.coffee_radium=加镭咖啡 +item.coil_advanced_alloy=超导线圈 +item.coil_advanced_torus=超导环形线圈 +item.coil_copper=紫铜线圈 +item.coil_copper_torus=紫铜环形线圈 +item.coil_gold=金线圈 +item.coil_gold_torus=金环形线圈 +item.coil_magnetized_tungsten=4000K高温超导线圈 +item.coil_tungsten=加热线圈 +item.coin_creeper=核爆爬行者硬币 +item.coin_maskman=面具硬币 +item.coin_radiation=辐射硬币 +item.coin_siege=围城硬币 +item.coin_ufo=UFO硬币 +item.coin_worm=机械蠕虫硬币 +item.coke.coal=煤焦炭 +item.coke.lignite=褐煤焦炭 +item.coke.petroleum=石油焦炭 +item.coltan_tool=钶钽铁矿指针 +item.combine_scrap=CMB钢废料 +item.component_emitter=发射器组件 +item.component_limiter=稳定器组件 +item.containment_box=安全盒 +item.cordite=无烟线状火药 +item.cotton_candy=放射性棉花糖 +item.crackpipe=健康烟壶 +item.crate_caller=空投召唤器 +item.crayon.black=黑色蜡笔 +item.crayon.blue=蓝色蜡笔 +item.crayon.brown=棕色蜡笔 +item.crayon.cyan=青色蜡笔 +item.crayon.gray=灰色蜡笔 +item.crayon.green=绿色蜡笔 +item.crayon.lightblue=浅蓝色蜡笔 +item.crayon.lime=青色蜡笔 +item.crayon.magenta=品红蜡笔 +item.crayon.orange=橙色蜡笔 +item.crayon.pink=粉红蜡笔 +item.crayon.purple=紫色蜡笔 +item.crayon.red=红色蜡笔 +item.crayon.silver=浅灰色蜡笔 +item.crayon.white=白色蜡笔 +item.crayon.yellow=黄色蜡笔 +item.crowbar=Mk.V开箱装置\"物理学圣剑\" +item.crucible=裁决剑 +item.crucible_template=坩埚模板 +item.crystal_aluminium=铝晶体 +item.crystal_beryllium=铍晶体 +item.crystal_charred=烧焦的水晶 +item.crystal_charred.desc=优质硅酸盐,轻微灼烧。 +item.crystal_charred.desc.P11=也是一个真正的号角。奇怪吧? +item.crystal_coal=煤晶体 +item.crystal_cobalt=钴晶体 +item.crystal_copper=铜晶体 +item.crystal_cinnebar=朱砂晶体 +item.crystal_diamond=钻石晶体 +item.crystal_energy=能量晶体 +item.crystal_fluorite=氟晶体 +item.crystal_gold=金晶体 +item.crystal_horn=水晶角 +item.crystal_horn.desc=不是真正的号角。 +item.crystal_horn.desc.P11=真正的号角。 +item.crystal_iron=铁晶体 +item.crystal_lead=铅晶体 +item.crystal_lapis=青金石晶体 +item.crystal_lithium=锂晶体 +item.crystal_niter=硝石晶体 +item.crystal_osmiridium=铱锇晶体 +item.crystal_phosphorus=磷晶体 +item.crystal_plutonium=钚晶体 +item.crystal_rare=稀土晶体 +item.crystal_redstone=红石晶体 +item.crystal_schrabidium=Sa326晶体 +item.crystal_schraranium=低丰度Sa326晶体 +item.crystal_starmetal=星辉晶体 +item.crystal_sulfur=硫晶体 +item.crystal_thorium=钍晶体 +item.crystal_titanium=钛晶体 +item.crystal_trixite=赛瑞克晶体 +item.crystal_tungsten=钨晶体 +item.crystal_uranium=铀晶体 +item.crystal_xen=人造X晶体 +item.crt_display=阴极射线管 +item.cube_power=电子块 +item.custom_amat=自定义核弹-反物质棒 +item.custom_dirty=自定义核弹-核废料棒 +item.custom_fall=自定义核弹-掉落升级 +item.custom_fall.desc=这就是你一一一直在等待的$使炸弹在激活时下落 +item.custom_hydro=自定义核弹-氢棒 +item.custom_kit=自定义核弹 套件 +item.custom_nuke=自定义核弹-铀棒 +item.custom_schrab=自定义核弹-Sa326棒 +item.custom_tnt=自定义核弹-炸药 +item.cyclotron_tower=回旋加速器塔 +item.debris_concrete=碎混凝土 +item.debris_element=断裂的锆诺克斯燃料元件 +item.debris_exchanger=换热器片 +item.debris_fuel=RBMK石墨式反应堆燃料块 +item.debris_graphite=热石墨块 +item.debris_metal=断裂金属棒 +item.debris_shrapnel=走道碎片 +item.definitelyfood=完全不脏牌军粮 +item.defuser=高科技拆弹装置 +item.defuser_gold=黄金剪线钳 +item.demon_core_closed=封闭的恶魔核心 +item.demon_core_open=打开的恶魔核心 +item.desh_axe=工人合金斧 +item.desh_hoe=工人合金锄 +item.desh_pickaxe=工人合金镐 +item.desh_shovel=工人合金锹 +item.desh_sword=工人合金剑 +item.designator=短程目标指示器 +item.designator_arty_range=远程火炮遥控器 +item.designator_manual=手动目标指示器 +item.designator_range=远程目标指示器 +item.detonator=起爆器 +item.detonator_de=死亡炸弹 +item.detonator_deadman=死亡雷管 +item.detonator_laser=激光起爆器 +item.detonator_multi=多发起爆器 +item.deuterium_filter=氘过滤器 +item.diamond_gavel=钻石槌 +item.dieselsuit_boots=柴油动力高跟鞋 +item.dieselsuit_helmet=柴油动力头戴式环境传感器 +item.dieselsuit_legs=柴油动力腿部伺服系统 +item.dieselsuit_plate=柴油动力控制器 +item.digamma_diagnostic=玩家F-迪伽马辐射自检器 +item.disperser_canister=流体雾化手雷: +item.disperser_canister_empty=流体雾化手雷 +item.dns_boots=DNT双聚中子态素高科技全环境作战服靴子 +item.dns_legs=DNT双聚中子态素高科技全环境作战服护腿 +item.dns_helmet=DNT双聚中子态素高科技全环境作战服头盔 +item.dns_plate=DNT双聚中子态素高科技全环境作战服胸甲 +item.dnt_boots=双聚态中子素 靴子 +item.dnt_legs=双聚态中子素 护腿 +item.dnt_helmet=双聚态中子素 头盔 +item.dnt_plate=双聚态中子素 胸甲 +item.door_bunker=仓门 +item.door_metal=金属门 +item.door_office=办公室门 +item.door_red=红门 +item.dosimeter=剂量计 +item.drax=采掘钻 +item.drax_mk2=强化型采掘钻 +item.drax_mk3=Sa326采掘钻 +item.drillbit_desh=Desh钻头 +item.drillbit_desh_diamond=Desh钻头(镶钻) +item.drillbit_ferro=铀铁合金钻头 +item.drillbit_ferro_diamond=铀铁合金钻头(镶钻) +item.drillbit_hss=高速钢钻头 +item.drillbit_hss_diamond=高速钢钻头(镶钻) +item.drillbit_steel=钢钻头 +item.drillbit_steel_diamond=钢钻头(镶钻) +item.drillbit_tcalloy=锝钢钻头 +item.drillbit_tcalloy_diamond=锝钢钻头(镶钻) +item.drill_titanium=钛钻头 +item.drone.patrol=运输无人机 +item.drone.patrol.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置 +item.drone.patrol_chunkloading=区块加载无人机 +item.drone.patrol_chunkloading.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置$加载区块 +item.drone.patrol_express=快速无人机 +item.drone.patrol_express.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置 +item.drone.patrol_express_chunkloading=区块加载快速无人机 +item.drone.patrol_express_chunkloading.desc=跟随航路点运动$到达运输无人机坞时会尝试装货/卸货$右键单击运输无人机坞顶面放置$加载区块 +item.drone.request=物流无人机 +item.drone.request.desc=用于使物流无人机坞生成物流无人机$生成的物流无人机会跟随物流无人机航路点$完成一次物流任务后会回到无人机坞 +item.drone_linker=运输无人机链接器 +item.ducttape=胶带 +item.dust=灰尘 +item.dust.desc=我讨厌灰尘! +item.dust.desc.P11=又一小撮灰尘! +item.dust_tiny=一小撮灰尘 +item.dwarven_pickaxe=矮人镐 +item.dynosphere_base=空白动力球 +item.dynosphere_desh=Desh动力球 +item.dynosphere_desh_charged=Desh动力球[带电] +item.dynosphere_dineutronium=双聚中子态素动力球 +item.dynosphere_dineutronium_charged=双聚中子态素动力球[带电] +item.dynosphere_euphemium=Ep动力球 +item.dynosphere_euphemium_charged=Ep动力球[带电] +item.dynosphere_schrabidium=Sa326动力球 +item.dynosphere_schrabidium_charged=Sa326动力球[带电] +item.dysfunctional_reactor=失控反应堆 +item.early_explosive_lenses=初代炸药透镜阵列 +item.early_explosive_lenses.desc=8个炸药透镜的组装,带有铝合金推进器、硬铝外壳和桥丝雷管。 +item.egg_balefire=野火蛋 +item.egg_balefire.desc=什么样的鸟儿才会下带有放射性的蛋? +item.egg_balefire_shard=野火蛋碎片 +item.egg_glyphid=异虫蛋 +item.elec_axe=电锯 +item.elec_pickaxe=冲击钻 +item.elec_shovel=螺旋钻 +item.elec_sword=电棍 +item.energy_core=临时能源核心 +item.entanglement_kit=纠缠部件 +item.entanglement_kit.desc=传送机制作零件$通过$铍增强型资源扫描仪实现尺寸转换。 +item.envsuit_boots=M1TTY环境套装靴子 +item.envsuit_helmet=M1TTY环境套装头盔 +item.envsuit_legs=M1TTY环境套装护腿 +item.envsuit_plate=M1TTY环境套装胸甲 +item.euphemium_boots=Ep靴子 +item.euphemium_capacitor=Ep电容 +item.euphemium_capacitor.desc=允许被动分散累积的正能量。 +item.euphemium_helmet=Ep头盔 +item.euphemium_kit=Ep工具箱 +item.euphemium_legs=Ep护腿 +item.euphemium_plate=Ep胸甲 +item.euphemium_stopper=Ep-阻滞者 +item.explosive_lenses=炸药透镜阵列 +item.explosive_lenses.desc=8个PBX炸药组装的阵列,带有一个薄的$铝推进器、硬铝外壳和$小型桥丝雷管。 +item.fabsols_vodka=Fabsol伏特加 +item.factory_core_advanced=高级工厂能源组件 +item.factory_core_titanium=工厂能源组件 +item.fallout=一堆辐射尘 +item.fau_boots=Fau靴子 +item.fau_helmet=Fau头盔 +item.fau_legs=Fau护腿 +item.fau_plate=Fau胸甲 +item.filter_coal=活性炭过滤器 +item.fins_big_steel=大型钢栅格翼 +item.fins_flat=扁钢外壳 +item.fins_quad_titanium=小型钛翼 +item.fins_small_steel=小型钢栅格翼 +item.fins_tri_steel=大型钢翼 +item.five_htp=5-羟色胺药丸 +item.five_htp.desc=移除所有迪伽马辐射,并获得10分钟稳定效果 +item.flame_conspiracy=阴谋论 +item.flame_conspiracy.desc=钢梁不能熔化喷气燃料! +item.flame_opinion=个人观点 +item.flame_opinion.desc=呃,我喜欢... +item.flame_politics=政治话题 +item.flame_politics.desc=唐老鸭将会修建一堵墙! +item.flame_pony=卡通小马画 +item.flame_pony.desc=黄马胜于蓝马,这是不争的事实! +item.flask_infusion.shield=护盾药水 +item.fleija_core=F.L.E.I.J.A.铀-235装药 +item.fleija_igniter=脉冲点火器 +item.fleija_kit=F.L.E.I.J.A. 套件 +item.fleija_propellant=Sa326炸药 +item.fluid_barrel_empty=空流体桶 +item.fluid_barrel_full=流体桶: +item.fluid_barrel_infinite=无限流体桶 +item.fluid_duct=流体管道: +item.fluid_identifier=流体识别码 +item.fluid_identifier.info=流体标识码用于: +item.fluid_identifier.usage0=在流体管道上单击右键,为该管道指定运输的流体。 +item.fluid_identifier.usage1=按住Shift键并流体管道上单击右键以指定相邻管道 +item.fluid_identifier.usage2=最大范围为64格管道。 +item.fluid_identifier_multi=多类型流体识别码 +item.fluid_identifier_multi.info=通用流体识别码: +item.fluid_identifier_multi.info2=次要类型: +item.fluid_tank_empty=空通用流体罐 +item.fluid_tank_full=通用流体罐: +item.fluid_tank_lead_empty=空危险品罐 +item.fluid_tank_lead_full=危险品罐: +item.fluorite=氟石粉 +item.flywheel_beryllium=铍制飞轮 +item.fmn=氟硝西泮片 +item.fmn.desc=移除2000mDRX以上的所有迪伽马辐射 +item.folly_bullet=128mm星辉弹头 +item.folly_bullet_du=128mm贫铀弹头 +item.folly_bullet_nuclear=128mm核弹头 +item.folly_shell=银弹壳 +item.fooditem=食物 +item.fragment_actinium=锕碎片 +item.fragment_boron=硼碎片 +item.fragment_cerium=铈碎片 +item.fragment_cobalt=钴碎片 +item.fragment_coltan=钶钽铁矿碎片 +item.fragment_lanthanium=镧碎片 +item.fragment_meteorite=陨石碎片 +item.fragment_neodymium=钕碎片 +item.fragment_niobium=铌碎片 +item.fuel_additive.antiknock=四乙基铅抗爆剂 +item.fuel_additive.deicer=除冰剂 +item.fuel_tank_large=大型燃料罐 +item.fuel_tank_medium=中型燃料罐 +item.fuel_tank_small=小型燃料罐 +item.fuse=保险丝 +item.fusion_core=聚变能源核心 +item.fusion_core_infinite=无限能源核心 +item.fusion_shield_chlorophyte=叶绿金属聚变反应堆覆层 +item.fusion_shield_desh=Desh聚变反应堆覆层 +item.fusion_shield_tungsten=钨聚变反应堆覆层 +item.fusion_shield_vaporwave=蒸汽波反应堆覆层 +item.gadget_core=钚核心 +item.gadget_explosive=炸药 +item.gadget_kit=小玩意 套件 +item.gadget_wireing=线路 +item.gas_biogas=沼气罐 +item.gas_empty=空气罐 +item.gas_full=气体罐: +item.gas_lpg=液化石油气罐 +item.gas_mask=防毒面具 +item.gas_mask_filter=防毒面具过滤器 +item.gas_mask_filter_combo=防毒面具组合式过滤器 +item.gas_mask_filter_mono=催化性面罩过滤器 +item.gas_mask_filter_piss=先进的简易防毒面具过滤器 +item.gas_mask_filter_rag=临时防毒面具过滤器 +item.gas_mask_m65=M65-Z防毒面具 +item.gas_mask_mono=半面罩防毒面具 +item.gas_mask_olde=皮革防毒面具 +item.gas_petroleum=石油气罐 +item.gas_tester=气体传感器 +item.gear_large=大型齿轮 +item.gear_large_steel=大型钢齿轮 +item.geiger_counter=手持盖革计数器 +item.gem_alexandrite=亚历山大变石 +item.gem_rad=放射性宝石 +item.gem_sodalite=方钠石 +item.gem_tantalium=钽晶体 +item.gem_tantalium.desc=“钽” +item.gem_tantalium.desc.P11=又名钽。 +item.gem_volcanic=火山宝石 +item.generator_front=发电机前部 +item.generator_steel=发电机主体 +item.glitch=故障 +item.glowing_stew=发光真菌煲 +item.glyphid_meat=异虫肉 +item.glyphid_meat_grilled=熟异虫肉 +item.goggles=护目镜 +item.grenade_aschrab=可抛反Sa326 +item.grenade_black_hole=黑洞手榴弹 +item.grenade_breach=破甲手榴弹 +item.grenade_burst=挖掘手榴弹 +item.grenate_cats=猫猫手榴弹 +item.grenade_cloud=一罐云 +item.grenade_cluster=集束手榴弹 +item.grenade_electric=闪电炸弹 +item.grenade_fire=燃烧破片手榴弹 +item.grenade_flare=信号弹 +item.grenade_frag=破片手榴弹 +item.grenade_gas=毒气手榴弹 +item.grenade_gascan=可抛油桶 +item.grenade_generic=手榴弹 +item.grenade_if_bouncy=IF-弹性手榴弹 +item.grenade_if_brimstone=IF-可抛硫磺矿 +item.grenade_if_concussion=IF-震荡手榴弹 +item.grenade_if_generic=IF-手榴弹 +item.grenade_if_he=IF-HE手榴弹 +item.grenade_if_hopwire=IF-旋涡热线 +item.grenade_if_impact=IF-冲击手榴弹 +item.grenade_if_incendiary=IF-燃烧手榴弹 +item.grenade_if_mystery=IF-M-手榴弹 +item.grenade_if_null=IF-清除手榴弹 +item.grenade_if_spark=IF-S-手榴弹 +item.grenade_if_sticky=IF-粘性手榴弹 +item.grenade_if_toxic=IF-毒物手榴弹 +item.grenade_kit=手榴弹 套件 +item.grenade_kyiv=基辅特供 +item.grenade_lemon=可燃柠檬 +item.grenade_mirv=MIRV型破片手榴弹 +item.grenade_mk2=Mk2手榴弹“菠萝大使” +item.grenade_nuclear=核子手榴弹 +item.grenade_nuke=MkVI钻地手榴弹 +item.grenade_pink_cloud=一罐粉雾 +item.grenade_plasma=等离子手榴弹 +item.grenade_poison=剧毒手榴弹 +item.grenade_pulse=脉冲手榴弹 +item.grenade_schrabidium=Sa326手榴弹 +item.grenade_shrapnel=榴霰弹手榴弹 +item.grenade_smart=智能手榴弹 +item.grenade_strong=增强型手榴弹 +item.grenade_tau=陶子手榴弹 +item.grenade_zomg=负能量湮灭手榴弹 +item.glyphid_gland=囊腺 +item.glyphid_gland_empty=异虫腺体 +item.gun_ar15=阿玛莱特AR15式5.56mm自动步枪 +item.gun_avenger=CZ57复仇者机枪 +item.gun_b92=§9B92能量手枪§r +item.gun_b92_ammo=§9B92能量单元§r +item.gun_b93=§cB93能量手枪§r +item.gun_benelli=伯奈利自动霰弹枪(Drum Mod) +item.gun_bf=野火之卵发射器 +item.gun_bf_ammo=Mk.V小型AMAT-炮弹 –野火型 +item.gun_bio_revolver=阿特拉斯 +item.gun_bolt_action=栓动步枪[原版] +item.gun_bolt_action_ammo=12x74 独头弹 +item.gun_bolt_action_green=栓动步枪[绿色] +item.gun_bolt_action_saturnite=土星来复枪 +item.gun_bolter=爆弹枪 +item.gun_bolter_digamma=迪伽马爆弹枪 +item.gun_calamity=希特勒的电锯 +item.gun_calamity_ammo=.50BMG子弹 +item.gun_calamity_dual=马鞍枪 +item.gun_chemthrower=化学喷射器 +item.gun_coilgun=线圈枪 +item.gun_congolake=刚果湖 +item.gun_cryocannon=低温炮 +item.gun_cryolator=冻结者 +item.gun_cryolator_ammo=急冻单元 +item.gun_dampfmaschine=绝对不是开玩笑的武器 +item.gun_darter=飞镖枪 +item.gun_deagle=大手枪 +item.gun_defabricator=毁灭者 +item.gun_defabricator_ammo=毁灭者能量电池 +item.gun_detonator=激光引爆器 +item.gun_emp=EMP射线 +item.gun_emp_ammo=能量电池 +item.gun_euthanasia=安乐死 +item.gun_euthanasia_ammo=注射器 +item.gun_fatman=M42核弹发射器 \"胖子\" +item.gun_fatman_ammo=迷你核弹 +item.gun_fireext=灭火器 +item.gun_flamer=\"黄玉先生\"喷射器 +item.gun_flechette=弗莱彻突击步枪 +item.gun_folly=Digamma原型\"愚蠢\" +item.gun_glass_cannon=玻璃大炮 +item.gun_hk69=榴弹手枪 +item.gun_hp=HPP射线炮 +item.gun_hp_ammo=墨盒 +item.gun_immolator=焚烧者 +item.gun_immolator_ammo=焚烧者燃料 +item.gun_jack=汽锤 +item.gun_jack_ammo=四联散弹子弹 +item.gun_karl=卡尔-古斯塔夫M3式84mm火箭筒 +item.gun_kit_1=枪械润滑油 +item.gun_kit_2=枪械修理包 +item.gun_ks23=KS-23霰弹枪 +item.gun_lacunae=CZ33亚巴顿 +item.gun_lacunae_ammo=5mm子弹 +item.gun_lever_action=马腿杠杆式霰弹枪[原版] +item.gun_lever_action_ammo=12x74 鹿弹 +item.gun_lever_action_dark=马腿杠杆式霰弹枪[黑暗] +item.gun_lever_action_sonata=自杀霰弹 +item.gun_lever_action_sonata_2=§cSonata的麦克风§r +item.gun_lunatic_marksman=Lunatic狙击步枪 +item.gun_m2=勃朗宁M2HB型重机枪 +item.gun_minigun=CZ53机枪 +item.gun_mirv=M42核弹发射器 \"试验型MIRV\" +item.gun_mirv_ammo=八倍MIRV +item.gun_moist_nugget=莫辛纳甘[迫真] +item.gun_mp=和平主义的机枪 +item.gun_mp40=MP40冲锋枪 +item.gun_mp40_ammo=冲锋枪子弹 +item.gun_pm_ammo=小型无发射药机枪子弹 +item.gun_mymy=Nietes软弹枪 +item.gun_osipr=标准型脉冲机枪 +item.gun_osipr_ammo=暗能量脉冲弹 +item.gun_osipr_ammo2=融合球 +item.gun_panzerschreck=战车噩梦 +item.gun_proto=M42核弹发射器 \"原始MIRV\" +item.gun_quadro=四喜丸子 +item.gun_remington=バイデン ブラスト [拜登冲击波] +item.gun_revolver=强化左轮手枪 +item.gun_revolver_ammo=铅左轮子弹 +item.gun_revolver_blackjack=黑杰克五发装左轮枪 +item.gun_revolver_cursed=诅咒手枪 +item.gun_revolver_cursed_ammo=钢左轮子弹 +item.gun_revolver_gold=黄金左轮手枪 +item.gun_revolver_gold_ammo=金左轮子弹 +item.gun_revolver_inverted=自杀左轮手枪 +item.gun_revolver_iron=简易左轮手枪 +item.gun_revolver_iron_ammo=铁左轮子弹 +item.gun_revolver_lead=核子左轮手枪 +item.gun_revolver_lead_ammo=玻璃左轮子弹 +item.gun_revolver_nightmare=梦魇左轮手枪[原版] +item.gun_revolver_nightmare2=梦魇左轮手枪[黑暗] +item.gun_revolver_nightmare2_ammo=激光子弹 +item.gun_revolver_nightmare_ammo=噩梦子弹 +item.gun_revolver_nopip=Novac +item.gun_revolver_nopip_ammo=.44马格南子弹 +item.gun_revolver_pip=小麦金塔 +item.gun_revolver_pip_ammo=污染子弹 +item.gun_revolver_red=红钥匙左轮手枪 +item.gun_revolver_saturnite=土星手枪 +item.gun_revolver_schrabidium=Sa326左轮手枪 +item.gun_revolver_schrabidium_ammo=Sa326左轮子弹 +item.gun_revolver_silver=银质左轮手枪 +item.gun_rpg=卡尔-古斯塔夫M4无后座力炮 +item.gun_rpg_ammo=火箭弹 +item.gun_sauer=斯坦-索尔的猎枪 +item.gun_skystinger=毒刺-The One Sky +item.gun_spark=火花塞 +item.gun_spark_ammo=电磁弹 +item.gun_spas12=SPAS-12霰弹枪 +item.gun_stinger=FIM-92毒刺导弹 +item.gun_stinger_ammo=毒刺导弹 +item.gun_super_shotgun=\"超级\"猎枪 +item.gun_super_shotgun.desc=超级烂! +item.gun_supershotgun=超级猎枪 +item.gun_thompson=汤姆森冲锋枪 +item.gun_uac_pistol=UAC .45手枪 +item.gun_uboinik= +item.gun_uboinik_ammo=12x70 鹿弹 +item.gun_uzi=Uzi冲锋枪 +item.gun_uzi_ammo=.22LR子弹 +item.gun_uzi_saturnite=土星Uzi冲锋枪 +item.gun_uzi_saturnite_silencer=带消音器的土星Uzi冲锋枪 +item.gun_uzi_silencer=带消音器的Uzi冲锋枪 +item.gun_xvl1456=XVL1456陶子加农炮原型机 +item.gun_xvl1456_ammo=贫化铀235子弹 +item.gun_zomg=奇点能湮灭射线“ZOMG炮” +item.hand_drill=手钻 +item.hand_drill_desh=Desh手钻 +item.hazmat_boots=防辐射靴 +item.hazmat_boots_grey=高性能防辐射靴 +item.hazmat_boots_red=高级防辐射靴 +item.hazmat_cloth=防辐射布 +item.hazmat_cloth_grey=铅防辐射布 +item.hazmat_cloth_red=高级防辐射布 +item.hazmat_grey_kit=高性能防护套装 +item.hazmat_helmet=防辐射头盔 +item.hazmat_helmet_grey=高性能防辐射头盔 +item.hazmat_helmet_red=高级防辐射头盔 +item.hazmat_kit=防护套装 +item.hazmat_legs=防辐射护腿 +item.hazmat_legs_grey=高性能防辐射护腿 +item.hazmat_legs_red=高级防辐射护腿 +item.hazmat_paa_boots=PaA战斗防辐射套装 靴子 +item.hazmat_paa_helmet=PaA战斗防辐射套装 头盔 +item.hazmat_paa_legs=PaA战斗防辐射套装 护腿 +item.hazmat_paa_plate=PaA战斗防辐射套装 胸甲 +item.hazmat_plate=防辐射胸甲 +item.hazmat_plate_grey=高性能防辐射胸甲 +item.hazmat_plate_red=高级防辐射胸甲 +item.hazmat_red_kit=高级防护套装 +item.heart_booster=心之增强器 +item.heart_container=心之容器 +item.heart_fab=心脏抗原结合器 +item.heart_piece=心之碎片 +item.heavy_component=重型%s组件 +item.hev_battery=套装电池 +item.hev_boots=HEV Mk.IV 靴子 +item.hev_plate=HEV Mk.IV 胸甲 +item.hev_helmet=HEV Mk.IV 头盔 +item.hev_legs=HEV Mk.IV 护腿 +item.holotape_damaged=损坏的全息卡带 +item.holotape_image=全息卡带 +item.horseshoe_magnet=马蹄形磁铁 +item.hull_big_aluminium=大型铝壳 +item.hull_big_steel=大型钢壳 +item.hull_big_titanium=大型钛壳 +item.hull_small_aluminium=小型铝壳 +item.hull_small_aluminium.desc=可插入钻孔石墨中 +item.hull_small_steel=小型钢壳 +item.icf_pellet=ICF燃料靶丸 +item.icf_pellet_depleted=枯竭ICF燃料靶丸 +item.icf_pellet_empty=空ICF燃料靶丸 +item.igniter=点火器 +item.igniter.desc=(鼠标右键点击原型)$这是一个绿色金属手柄,带有$亮红色按钮和一个小盖子$在底部,缩写N.E.刻着美元。不管N.E.是谁,他对绿色的色调很有品味。 +item.industrial_magnet=工业磁铁 +item.inf_antimatter=无限反物质罐 +item.inf_antischrabidium=无限反Sa326罐 +item.inf_coolant=无限冷却液罐 +item.inf_deuterium=无限氘罐 +item.inf_diesel=无限柴油罐 +item.inf_sulfur=无限硫磺罐 +item.inf_tritium=无限氚罐 +item.inf_water=无限水罐 +item.inf_water_mk2=重型无限水罐 +item.ingot_actinium=半稳定锕锭 +item.ingot_advanced_alloy=高级合金锭 +item.ingot_aluminium=铝锭 +item.ingot_am_mix=反应堆级镅锭 +item.ingot_am241=镅-241锭 +item.ingot_am242=镅-242锭 +item.ingot_americium_fuel=镅燃料锭 +item.ingot_arsenic=砷锭 +item.ingot_arsenic_bronze=砷青铜锭 +item.ingot_asbestos=石棉板 +item.ingot_asbestos.desc=§o\\“充满了生命、自我怀疑和石棉。这是空气带来的。\\”§r +item.ingot_au198=金-198锭 +item.ingot_australium=奥斯锭 +item.ingot_bakelite=电木锭 +item.ingot_beryllium=铍锭 +item.ingot_biorubber=乳胶锭 +item.ingot_bismuth=铋锭 +item.ingot_bismuth_bronze=铋青铜锭 +item.ingot_boron=硼锭 +item.ingot_bscco=BSCCO锭 +item.ingot_c4=一块C-4 +item.ingot_cadmium=镉锭 +item.ingot_calcium=钙锭 +item.ingot_cdalloy=镉钢锭 +item.ingot_cft=晶化富勒烯 +item.ingot_chainsteel=重链钢 +item.ingot_co60=钴-60锭 +item.ingot_cobalt=钴锭 +item.ingot_combine_steel=CMB钢锭 +item.ingot_combine_steel.desc=*在此处插入民事保护参考* +item.ingot_copper=工业级铜锭 +item.ingot_daffergon=达夫贡锭 +item.ingot_desh=Desh锭 +item.ingot_dineutronium=双聚中子态素锭 +item.ingot_dura_steel=高速钢锭 +item.ingot_electronium=电素锭 +item.ingot_euphemium=Ep锭 +item.ingot_euphemium.desc=一个非常特殊但又奇怪的元素。 +item.ingot_ferrouranium=铀铁合金锭 +item.ingot_fiberglass=玻璃纤维 +item.ingot_fiberglass.desc=纤维含量高,玻璃含量高。身体需要的一切。 +item.ingot_firebrick=耐火砖 +item.ingot_gh336=Gh336锭 +item.ingot_gh336.desc=钅喜的同事。 +item.ingot_graphite=石墨锭 +item.ingot_hes=高浓度Sa326燃料锭 +item.ingot_lanthanium=半稳定镧锭 +item.ingot_lanthanium.desc=“镧” +item.ingot_lanthanium.desc.P11=实际上就是镧,无论怎么说。 +item.ingot_lead=铅锭 +item.ingot_les=低浓度Sa326燃料锭 +item.ingot_magnetized_tungsten=磁化钨锭 +item.ingot_meteorite=陨石锭 +item.ingot_meteorite_forged=锻造陨石锭 +item.ingot_mox_fuel=MOX燃料锭 +item.ingot_mud=固化毒泥浆砖 +item.ingot_neptunium=镎锭 +item.ingot_neptunium.desc=那是我最喜欢的! +item.ingot_neptunium.desc.P11=哇,吓人! +item.ingot_neptunium_fuel=镎燃料锭 +item.ingot_niobium=铌锭 +item.ingot_osmiridium=铱锇锭 +item.ingot_pb209=铅-209锭 +item.ingot_pc=硬质塑料锭 +item.ingot_pet=铝金属化PET锭 +item.ingot_phosphorus=白磷锭 +item.ingot_plutonium=钚锭 +item.ingot_plutonium_fuel=钚燃料锭 +item.ingot_polonium=钋锭 +item.ingot_polymer=聚合物锭 +item.ingot_pu_mix=反应堆级钚锭 +item.ingot_pu238=钚-238锭 +item.ingot_pu239=钚-239锭 +item.ingot_pu240=钚-240锭 +item.ingot_pu241=钚-241锭 +item.ingot_pvc=聚氯乙烯锭(PVC) +item.ingot_ra226=镭-226锭 +item.ingot_red_copper=紫铜锭 +item.ingot_reiium=雷恩锭 +item.ingot_rubber=橡胶锭 +item.ingot_saturnite=土星锭 +item.ingot_schrabidate=Sa酸铁锭 +item.ingot_schrabidium=Sa326锭 +item.ingot_schrabidium_fuel=Sa326燃料锭 +item.ingot_schraranium=低丰度Sa326锭 +item.ingot_schraranium.desc=在Sa326嬗变器中由铀制成 +item.ingot_semtex=塞姆汀塑胶炸药块 +item.ingot_silicon=硅晶 +item.ingot_smore=S'more 锭 +item.ingot_solinium=Sa327锭 +item.ingot_sr90=锶-90锭 +item.ingot_starmetal=§9星辉锭§r +item.ingot_steel=钢锭 +item.ingot_steel_dusted=粉末钢锭 +item.ingot_tantalium=钽锭 +item.ingot_tantalium.desc=“钽” +item.ingot_tantalium.desc.P11=又名钽。 +item.ingot_tcalloy=锝-钢合金锭 +item.ingot_technetium=锝-99锭 +item.ingot_th232=钍-232锭 +item.ingot_thorium_fuel=钍燃料锭 +item.ingot_titanium=钛锭 +item.ingot_tungsten=钨锭 +item.ingot_u233=铀-233锭 +item.ingot_u235=铀-235锭 +item.ingot_u238=铀-238锭 +item.ingot_u238m2=亚稳铀238-2锭 +item.ingot_unobtainium=难得素锭 +item.ingot_uranium=铀锭 +item.ingot_uranium_fuel=铀燃料锭 +item.ingot_verticium=韦德赛锭 +item.ingot_weidanium=魏丹锭 +item.ingot_zirconium=锆块 +item.injector_5htp=5-HTP自动药物注射器 +item.injector_knife=8英寸刀片自动药物注射器 +item.ink=林 墨水 +item.insert_doxium=掺砷Doxium插板 +item.insert_du=贫铀插板 +item.insert_era=反应装甲插板 +item.insert_esapi=ESAPI插板 +item.insert_ghiorsium=Gh插板 +item.insert_kevlar=凯夫拉插板 +item.insert_sapi=SAPI插板 +item.insert_polonium=钋插板 +item.insert_steel=重型钢插板 +item.insert_xsapi=XSAPI插板 +item.insert_yharonite=犽戎龙素插板 +item.item_secret.canister=SB-26成分 +item.item_secret.controller=专用控制单元 +item.iv_blood=血袋 +item.iv_empty=静脉输液袋 +item.iv_xp=经验包 +item.iv_xp_empty=空的经验包 +item.jackt=时尚防弹夹克 +item.jackt2=时尚防弹夹克2:东京漂移 +item.jetpack_boost=弹跳背包 +item.jetpack_break=缓降背包 +item.jetpack_fly=喷气背包 +item.jetpack_tank=喷气背包备用燃料罐 +item.jetpack_vector=矢量喷气背包 +item.journal_bj=被威士忌浸透的笔记本 +item.journal_pip=生存主义者日记 +item.journal_silver=承包商注释 +item.key=钥匙 +item.key_fake=伪造钥匙 +item.key_kit=钥匙仿制套件 +item.key_red=红色钥匙 +item.key_red.desc=探索另一边。 +item.key_red.desc.P11= +item.key_red_cracked=破碎的钥匙 +item.key_red_cracked.desc=??? +item.key_red.key_red_cracked.P11=§4???§r +item.kit_toolbox=工具箱 +item.kit_toolbox_empty=空工具箱 +item.laser_crystal_bismuth.desc=铋-钐-铀-钍晶体基质 +item.laser_crystal_bismuth=铋-钐-铀-钍激光晶体 +item.laser_crystal_cmb.desc=反Sa326被镶嵌在CMB-Sa326合金晶格 +item.laser_crystal_cmb=CMB-Sa326反物质激光晶体 +item.laser_crystal_co2.desc=二氧化碳被包裹在结晶的Desh中 +item.laser_crystal_co2=CO2-Desh激光晶体 +item.laser_crystal_digamma=Digamma迪伽马激光晶体 +item.laser_crystal_dnt.desc=双聚态中子-Spark费米子超晶体 +item.laser_crystal_dnt=Spark激光晶体 +item.launch_code=发射井发射代码 +item.launch_code_piece=发射井发射代码碎片 +item.launch_key=发射井发射钥匙 +item.lead_gavel=铅槌 +item.lemon=\"柠檬\" +item.letter=快捷邮件 +item.levitation_unit=重力控制器 +item.lignite=褐煤 +item.limiter=发电机限制器 +item.linker=链接器 +item.liquidator_boots=核废土清道夫套装靴子 +item.liquidator_helmet=核废土清道夫套装头盔 +item.liquidator_legs=核废土清道夫套装护腿 +item.liquidator_plate=核废土清道夫套装胸甲 +item.lithium=锂锭 +item.lodestone=磁石 +item.loop_stew=程序猿专属早餐 +item.loops=五彩麦圈 +item.loot_10=10号导弹战利箱 +item.loot_15=15号导弹战利箱 +item.loot_misc=普通导弹战利箱 +item.magnet_circular=扁磁铁 +item.magnet_dee=D型磁铁 +item.magnetron=磁控管 +item.man_core=钚核心 +item.man_explosive=炸药 +item.man_igniter=点火器 +item.man_kit=胖子 套件 +item.marshmallow=穿在木棍上的棉花糖 +item.mask_of_infamy=耻辱面具 +item.mask_piss=战壕面具 +item.mask_rag=粗糙防护面罩 +item.matchstick=火柴 +item.mech_key=大号银钥匙 +item.mech_key.desc=它充满力量。 +item.mechanism_launcher_1=发射机构 +item.mechanism_launcher_2=先进发射机构 +item.mechanism_revolver_1=转轮机构 +item.mechanism_revolver_2=先进转轮机构 +item.mechanism_rifle_1=步枪机构 +item.mechanism_rifle_2=先进步枪机构 +item.mechanism_special=高科技武器机构 +item.med_bag=医疗包 +item.med_ipecac=吐根酊催吐剂 +item.med_ptsd=PTSD治疗药物 +item.med_schiziphrenia=抗精神分裂症药物 +item.medal_liquidator=核废土清道夫勋章 +item.meltdown_tool=达洛夫快速熔毁装置 +item.memespoon=§ee花园园丁 +item.memory= +item.mese_gavel=Mese槌 +item.mese_axe=Mese斧 +item.mese_pickaxe=Mese镐 +item.meteor_charm=陨石项链 +item.meteor_remote=陨石召唤器 +item.meteorite_sword=陨石剑 +item.meteorite_sword_seared=陨石剑(烧焦) +item.meteorite_sword_reforged=陨石剑(重铸) +item.meteorite_sword_hardened=陨石剑(硬化) +item.meteorite_sword_alloyed=陨石剑(合金) +item.meteorite_sword_machined=陨石剑(机械加工) +item.meteorite_sword_treated=陨石剑(精制) +item.meteorite_sword_etched=陨石剑(刻蚀) +item.meteorite_sword_bred=陨石剑(增殖) +item.meteorite_sword_irradiated=陨石剑(辐照) +item.meteorite_sword_fused=陨石剑(熔融) +item.meteorite_sword_baleful=陨石剑(凶恶) +item.mike_cooling_unit=氘冷却装置 +item.mike_core=铀涂层氘罐 +item.mike_deut=氘罐 +item.mike_kit=常春藤麦克 套件 +item.mirror_tool=定日镜调整工具 +item.mirror_tool.linked=设置对齐位置! +item.mirror_tool.desc=右键单击“太阳能锅炉”以记忆位置 $再单击“定日镜”可将其转向太阳能锅炉 +item.missile_anti_ballistic=反弹道导弹 +item.missile_assembly=小型导弹[待装配] +item.missile_bhole=黑洞导弹 +item.missile_burst=洲际导弹 +item.missile_buster=掩体破坏弹 +item.missile_buster_strong=强化型掩体破坏弹 +item.missile_carrier=HTR-01运载火箭 +item.missile_cluster=集束导弹 +item.missile_cluster_strong=强化型集束导弹 +item.missile_custom=定制导弹 +item.missile_decoy=诱饵弹 +item.missile_doomsday=末日导弹 +item.missile_doomsday_rusted=损坏的末日导弹 +item.missile_drill=掩体裂解者 +item.missile_emp=EMP导弹 +item.missile_emp_strong=强化型EMP导弹 +item.missile_endo=吸热导弹 +item.missile_exo=放热导弹 +item.missile_generic=高爆导弹 +item.missile_incendiary=燃烧导弹 +item.missile_incendiary_strong=强化型燃烧导弹 +item.missile_inferno=Mk.II G.R.N.地狱导弹 +item.missile_kit=导弹工具箱 +item.missile_micro=战术核导弹 +item.missile_nuclear=核导弹 +item.missile_nuclear_cluster=热核导弹 +item.missile_rain=炸弹雨 +item.missile_schrabidium=Sa326导弹 +item.missile_shuttle=万金罗宾航天飞机 +item.missile_soyuz=联盟-FG运载火箭 +item.missile_soyuz_lander=联盟号轨道舱 +item.missile_soyuz_lander.desc=劣质着陆器! +item.missile_stealth=隐身导弹 +item.missile_strong=强化型高爆导弹 +item.missile_taint=污染导弹 +item.missile_volcano=构造导弹 +item.missile_volcano.desc=利用核爆的威力,我们可以召唤一座火山! +item.mold_base=毛坯铸造模具 +item.mold=铸造模具 +item.morning_glory=牵牛花 +item.motor=马达 +item.motor_bismuth=铋马达 +item.motor_desh=Desh马达 +item.mp_c_1=1级导弹制导芯片 +item.mp_c_2=2级导弹制导芯片 +item.mp_c_3=3级导弹制导芯片 +item.mp_c_4=4级导弹制导芯片 +item.mp_c_5=5级导弹制导芯片 +item.mp_fuselage_10_15_balefire=10/15号弹体[野火燃料] +item.mp_fuselage_10_15_hydrogen=10/15号弹体[液氢] +item.mp_fuselage_10_15_kerosene=10/15号弹体[煤油] +item.mp_fuselage_10_15_solid=10/15号弹体[固体燃料] +item.mp_fuselage_10_kerosene=10号弹体[煤油] +item.mp_fuselage_10_kerosene_camo=10号弹体[煤油] +item.mp_fuselage_10_kerosene_desert=10号弹体[煤油] +item.mp_fuselage_10_kerosene_flames=10号弹体[煤油] +item.mp_fuselage_10_kerosene_insulation=10号弹体[煤油] +item.mp_fuselage_10_kerosene_metal=10号弹体[煤油] +item.mp_fuselage_10_kerosene_sky=10号弹体[煤油] +item.mp_fuselage_10_kerosene_sleek=10号弹体[煤油] +item.mp_fuselage_10_kerosene_taint=10号弹体[煤油] +item.mp_fuselage_10_long_kerosene=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_camo=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_dash=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_desert=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_flames=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_insulation=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_metal=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_sky=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_sleek=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_taint=10号长弹体[煤油] +item.mp_fuselage_10_long_kerosene_vap=10号长弹体[煤油] +item.mp_fuselage_10_long_solid=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_bullet=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_flames=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_insulation=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_silvermoonlight=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_sleek=10号长弹体[固体燃料] +item.mp_fuselage_10_long_solid_soviet_glory=10号长弹体[固体燃料] +item.mp_fuselage_10_solid=10号弹体[固体燃料] +item.mp_fuselage_10_solid_battery=10号弹体[固体燃料] +item.mp_fuselage_10_solid_cathedral=10号弹体[固体燃料] +item.mp_fuselage_10_solid_duracell=10号弹体[固体燃料] +item.mp_fuselage_10_solid_flames=10号弹体[固体燃料] +item.mp_fuselage_10_solid_insulation=10号弹体[固体燃料] +item.mp_fuselage_10_solid_moonlit=10号弹体[固体燃料] +item.mp_fuselage_10_solid_sleek=10号弹体[固体燃料] +item.mp_fuselage_10_solid_soviet_glory=10号弹体[固体燃料] +item.mp_fuselage_10_xenon=10号弹体[氙] +item.mp_fuselage_10_xenon_bhole=10号弹体[氙] +item.mp_fuselage_15_20_kerosene=15/20号弹体[煤油] +item.mp_fuselage_15_20_kerosene_magnusson=15/20号弹体[煤油] +item.mp_fuselage_15_20_solid=15/20号弹体[固体燃料] +item.mp_fuselage_15_balefire=15号弹体[野火燃料] +item.mp_fuselage_15_hydrogen=15号弹体[液氢] +item.mp_fuselage_15_hydrogen_cathedral=15号弹体[液氢] +item.mp_fuselage_15_kerosene=15号弹体[煤油] +item.mp_fuselage_15_kerosene_blackjack=15号弹体[煤油] +item.mp_fuselage_15_kerosene_camo=15号弹体[煤油] +item.mp_fuselage_15_kerosene_decorated=15号弹体[煤油] +item.mp_fuselage_15_kerosene_desert=15号弹体[煤油] +item.mp_fuselage_15_kerosene_insulation=15号弹体[煤油] +item.mp_fuselage_15_kerosene_lambda=15号弹体[煤油] +item.mp_fuselage_15_kerosene_metal=15号弹体[煤油] +item.mp_fuselage_15_kerosene_minuteman=15号弹体[煤油] +item.mp_fuselage_15_kerosene_pip=15号弹体[煤油] +item.mp_fuselage_15_kerosene_polite=15号弹体[煤油] +item.mp_fuselage_15_kerosene_sky=15号弹体[煤油] +item.mp_fuselage_15_kerosene_steampunk=15号弹体[煤油] +item.mp_fuselage_15_kerosene_taint=15号弹体[煤油] +item.mp_fuselage_15_kerosene_yuck=15号弹体[煤油] +item.mp_fuselage_15_solid=15号弹体[固体燃料] +item.mp_fuselage_15_solid_desh=15号弹体[固体燃料] +item.mp_fuselage_15_solid_faust=15号弹体[固体燃料] +item.mp_fuselage_15_solid_insulation=15号弹体[固体燃料] +item.mp_fuselage_15_solid_mimi=15号弹体[固体燃料] +item.mp_fuselage_15_solid_panorama=15号弹体[固体燃料] +item.mp_fuselage_15_solid_roses=15号弹体[固体燃料] +item.mp_fuselage_15_solid_silvermoonlight=15号弹体[固体燃料] +item.mp_fuselage_15_solid_snowy=15号弹体[固体燃料] +item.mp_fuselage_15_solid_soviet_glory=15号弹体[固体燃料] +item.mp_fuselage_15_solid_soviet_stank=15号弹体[固体燃料] +item.mp_stability_10_cruise=10号巡航翼 +item.mp_stability_10_flat=10号水平翼 +item.mp_stability_10_space=10号航天翼 +item.mp_stability_15_flat=15号水平翼 +item.mp_stability_15_soyuz=15号尖翼 +item.mp_stability_15_thin=15号薄翼 +item.mp_thruster_10_kerosene=10号液体燃料推进器 +item.mp_thruster_10_solid=10号固体燃料推进器 +item.mp_thruster_10_xenon=10号离子推进器 +item.mp_thruster_15_balefire=15号带核预热器的野火燃料推进器 +item.mp_thruster_15_balefire_large=15号带核预热器的野火燃料推进器[重型喷管] +item.mp_thruster_15_balefire_large_rad=15号带核预热器的野火燃料推进器[重型喷管-稀有] +item.mp_thruster_15_balefire_short=15号带核预热器的野火燃料推进器[缩短版] +item.mp_thruster_15_hydrogen=15号液氢推进器 +item.mp_thruster_15_hydrogen_dual=15号双喷管氢推进器 +item.mp_thruster_15_kerosene=15号液体燃料推进器 +item.mp_thruster_15_kerosene_dual=15号双喷管液体燃料推进器 +item.mp_thruster_15_kerosene_triple=15号三喷管液体燃料推进器 +item.mp_thruster_15_solid=15号固体燃料推进器 +item.mp_thruster_15_solid_hexdecuple=15号十六喷管固体燃料推进器 +item.mp_thruster_20_kerosene=20号液体燃料推进器 +item.mp_thruster_20_kerosene_dual=20号液体燃料推进器 +item.mp_thruster_20_kerosene_triple=20号液体燃料推进器 +item.mp_thruster_20_solid=20号固体燃料推进器 +item.mp_thruster_20_solid_multi=20号三十喷管固体燃料推进器 +item.mp_thruster_20_solid_multier=20号四十七喷管固体燃料推进器 +item.mp_warhead_10_buster=10号掩体破坏弹头 +item.mp_warhead_10_cloud=10号粉雾弹头 +item.mp_warhead_10_he=10号HE弹头 +item.mp_warhead_10_incendiary=10号燃烧弹头 +item.mp_warhead_10_nuclear=10号微型核弹头 +item.mp_warhead_10_nuclear_large=10号核弹头 +item.mp_warhead_10_taint=10号污染弹头 +item.mp_warhead_15_balefire=15号野火弹头 +item.mp_warhead_15_boxcar=15号 车厢? +item.mp_warhead_15_he=15号HE弹头 +item.mp_warhead_15_incendiary=15号燃烧弹头 +item.mp_warhead_15_n2=15号N2炸弹 +item.mp_warhead_15_nuclear=15号核弹头 +item.mp_warhead_15_nuclear_mimi=15号核弹头 +item.mp_warhead_15_nuclear_shark=15号核弹头 +item.mp_warhead_15_turbine=15号喷气发动机弹头 +item.mucho_mango=亚利桑那芒果味饮料 +item.multi_kit=多用途炸弹 套件 +item.multitool_beam=动力拳套[热射线] +item.multitool_decon=动力拳套[净化] +item.multitool_dig=动力拳套[挖掘] +item.multitool_ext=动力拳套[矿物提取] +item.multitool_hit=动力拳套[攻击] +item.multitool_joule=动力拳套[千兆焦耳] +item.multitool_mega=动力拳套[超级重拳] +item.multitool_miner=动力拳套[采矿激光] +item.multitool_silk=动力拳套[精准采集] +item.multitool_sky=动力拳套[划破天际] +item.mysteryshovel=易碎锹 +item.n2_charge=大型炸药 +item.neutrino_lens=中微子透镜 +item.neutron_reflector=中子反射板 +item.night_vision=夜视眼镜 +item.night_vision.description.item=提供夜视功能(需要全套电动设备) +item.night_vision.description.in_armor=%s(允许夜视) +item.niter=硝石粉 +item.nitra= +item.nitra_small=小撮Nitra +item.no9=矿工头盔 +item.nossy_hat=华丽的帽子 +item.nothing=没有东西 +item.nuclear_waste=核废料 +item.nuclear_waste_pearl=放射性珍珠 +item.nuclear_waste_tiny=小撮核废料 +item.nuclear_waste_long=长半衰期核废料 +item.nuclear_waste_long_tiny=小撮长半衰期核废料 +item.nuclear_waste_long_depleted=腐化的长半衰期核废料 +item.nuclear_waste_long_depleted_tiny=小撮腐化的长半衰期核废料 +item.nuclear_waste_short=短半衰期核废料 +item.nuclear_waste_short_tiny=小撮短半衰期核废料 +item.nuclear_waste_short_depleted=腐化的短半衰期核废料 +item.nuclear_waste_short_depleted_tiny=小撮腐化的短半衰期核废料 +item.nuclear_waste_vitrified=玻璃化核废料 +item.nuclear_waste_vitrified_tiny=小撮玻璃化核废料 +item.nugget=鸡块 +item.nugget_actinium=锕-227粒 +item.nugget_am_mix=反应堆级镅粒 +item.nugget_am241=镅-241粒 +item.nugget_am242=镅-242粒 +item.nugget_americium_fuel=镅燃料粒 +item.nugget_arsenic=砷粒 +item.nugget_au198=金-198粒 +item.nugget_australium=奥斯粒 +item.nugget_australium_greater=富集奥斯粒 +item.nugget_australium_lesser=贫化奥斯粒 +item.nugget_beryllium=铍粒 +item.nugget_bismuth=铋粒 +item.nugget_co60=钴-60粒 +item.nugget_cobalt=钴粒 +item.nugget_daffergon=达夫贡粒 +item.nugget_desh=Desh粒 +item.nugget_dineutronium=双聚中子态素粒 +item.nugget_euphemium=Ep粒 +item.nugget_euphemium.desc=一小块粉红色的金属$它的属性仍然未知,请小心处理。 +item.nugget_gh336=Gh336粒 +item.nugget_gh336.desc=钅喜的同事。 +item.nugget_hes=高浓度Sa326燃料粒 +item.nugget_lead=铅粒 +item.nugget_les=低浓度Sa326燃料粒 +item.nugget_mercury_tiny=一小滴水银 +item.nugget_mercury=一滴水银 +item.nugget_mox_fuel=MOX燃料粒 +item.nugget_mox_fuel.desc=摩西说:§l逃税。§r +item.nugget_neptunium=镎粒 +item.nugget_neptunium_fuel=镎燃料粒 +item.nugget_niobium=铌粒 +item.nugget_osmiridium=铱锇粒 +item.nugget_pb209=铅-209粒 +item.nugget_plutonium=钚粒 +item.nugget_plutonium_fuel=钚燃料粒 +item.nugget_polonium=钋粒 +item.nugget_pu_mix=反应堆级钚粒 +item.nugget_pu238=钚-238粒 +item.nugget_pu239=钚-239粒 +item.nugget_pu240=钚-240粒 +item.nugget_pu241=钚-241粒 +item.nugget_ra226=镭-226粒 +item.nugget_reiium=雷恩粒 +item.nugget_schrabidium=Sa326粒 +item.nugget_schrabidium_fuel=Sa326燃料粒 +item.nugget_silicon=硅粒 +item.nugget_solinium=Sa327粒 +item.nugget_sr90=锶-90粒 +item.nugget_tantalium=钽粒 +item.nugget_tantalium.desc=“钽” +item.nugget_tantalium.desc.P11=又名钽。 +item.nugget_technetium=锝-99粒 +item.nugget_th232=钍232粒 +item.nugget_thorium_fuel=钍燃料粒 +item.nugget_u233=铀-233粒 +item.nugget_u235=铀-235粒 +item.nugget_u238=铀-238粒 +item.nugget_unobtainium=难得素粒 +item.nugget_uranium=铀粒 +item.nugget_uranium_fuel=铀燃料粒 +item.nugget_verticium=韦德赛粒 +item.nugget_weidanium=魏丹粒 +item.nugget_zirconium=锆碎片 +item.nuke_advanced_kit=原子学高级工具箱 +item.nuke_commercially_kit=商用原子学工具箱 +item.nuke_electric_kit=电子工程师工具箱 +item.nuke_starter_kit=原子学入门工具箱 +item.oil_canola=菜籽油 +item.oil_detector=石油探测仪 +item.oil_detector.desc1=单击右键扫描地下是否存在油田 +item.oil_detector.desc2=探测仪只会发现大片油田 +item.oil_detector.bullseye=正下方发现油田! +item.oil_detector.detected=附近存在油田 +item.oil_detector.noOil=未发现油田 +item.oil_tar.coal=煤焦油 +item.oil_tar.crude=焦油 +item.oil_tar.crack=裂化焦油 +item.oil_tar.paraffin=石蜡 +item.oil_tar.wax=氯化石蜡 +item.oil_tar.wood=木馏油 +item.ore.asbestos=石棉 +item.ore.borax=硼砂 +item.ore.chlorocalcite=氯方解石 +item.ore.copper=铜 +item.ore.fluorite=氟石 +item.ore.gold=金 +item.ore.hematite=赤铁矿 +item.ore.iron=铁 +item.ore.malachite=孔雀石 +item.ore.neodymium=钕 +item.ore.niobium=铌 +item.ore.titanium=钛 +item.ore.tungsten=钨 +item.ore.thorium232=钍 +item.ore.uranium=铀 +item.ore_bedrock=基岩%s矿 +item.ore_byproduct.b_aluminium=铝晶体碎片 +item.ore_byproduct.b_bismuth=铋晶体碎片 +item.ore_byproduct.b_calcium=钙晶体碎片 +item.ore_byproduct.b_copper=铜晶体碎片 +item.ore_byproduct.b_iron=铁晶体碎片 +item.ore_byproduct.b_lead=铅晶体碎片 +item.ore_byproduct.b_lithium=锂晶体碎片 +item.ore_byproduct.b_polonium=钋晶体碎片 +item.ore_byproduct.b_radium=镭晶体碎片 +item.ore_byproduct.b_silicon=硅晶体碎片 +item.ore_byproduct.b_sulfur=硫晶体碎片 +item.ore_byproduct.b_technetium=锝晶体碎片 +item.ore_byproduct.b_titanium=钛晶体碎片 +item.ore_byproduct.b_uranium=铀晶体碎片 +item.ore_centrifuged=离心%s矿 +item.ore_cleaned=清洁%s矿 +item.ore_deepcleaned=深清洁%s矿 +item.ore_density_scanner=基岩矿石丰度扫描仪 +item.ore_enriched=富集%s矿 +item.ore_nitrated=硝化%s矿 +item.ore_nitrocrystalline=亚硝基结晶%s矿 +item.ore_purified=净化%s矿 +item.ore_radcleaned=经辐射清洁的%s矿 +item.ore_seared=灼热的%s矿 +item.ore_separated=分离的%s矿 +item.overfuse=奇异螺丝刀 +item.overfuse.desc=说啥? +item.oxy_mask=氧气面罩 +item.paa_boots=PaA \"好鞋\" +item.paa_legs=PaA加固护腿 +item.paa_plate=PaA加固护胸 +item.padlock=挂锁 +item.padlock_reinforced=加强挂锁 +item.padlock_rusty=生锈的挂锁 +item.padlock_unbreakable=牢不可破的挂锁 +item.pads_rubber=橡胶垫 +item.pads_slime=粘液垫 +item.pads_static=静电垫 +item.page_of_.page1=书页之一 +item.page_of_.page2=书页之二 +item.page_of_.page3=书页之三 +item.page_of_.page4=书页之四 +item.page_of_.page5=书页之五 +item.page_of_.page6=书页之六 +item.page_of_.page7=书页之七 +item.page_of_.page8=书页之八 +item.pancake=用废金属、螺栓和宝石粉做成的薄饼 +item.part_beryllium=铍粉盒 +item.part_carbon=碳粉盒 +item.part_copper=铜粉盒 +item.part_generic.hde=重型元件 +item.part_generic.lde=低密度元件 +item.part_generic.piston_electric=电动活塞 +item.part_generic.piston_hydraulic=液压活塞 +item.part_generic.piston_pneumatic=气动活塞 +item.part_lithium=锂粉盒 +item.part_plutonium=钚粉盒 +item.particle_aelectron=正电子胶囊 +item.particle_amat=反物质胶囊 +item.particle_aproton=反质子胶囊 +item.particle_aschrab=反Sa326胶囊 +item.particle_copper=铜离子胶囊 +item.particle_dark=暗物质胶囊 +item.particle_digamma=§c迪伽马粒子胶囊§r +item.particle_empty=空粒子胶囊 +item.particle_higgs=希格斯玻色子胶囊 +item.particle_hydrogen=氢离子胶囊 +item.particle_lead=铅离子胶囊 +item.particle_lutece=Lutece镥准粒子胶囊 +item.particle_muon=μ子胶囊 +item.particle_sparkticle=Spark粒子胶囊 +item.particle_strange=奇异夸克胶囊 +item.particle_tachyon=超光速粒子密封胶囊 +item.parts_legendary=传奇零件 +item.peas=豌豆 +item.pedestal_steel=钢底座 +item.pellet_advanced=高级Watz性能增强剂 +item.pellet_antimatter=反物质团 +item.pellet_beryllium=铍慢化靶丸 +item.pellet_buckshot=铅弹丸 +item.pellet_canister=榴霰弹弹丸 +item.pellet_charged=电离粒子 +item.pellet_chlorophyte=叶绿弹丸 +item.pellet_claws=金属利爪 +item.pellet_cluster=爆炸弹丸 +item.pellet_cluster.desc=用于多用途炸弹:$增加了一些额外的爆炸力! +item.pellet_coal=致密煤 +item.pellet_coolant=冷却液组 +item.pellet_flechette=箭霰弹 +item.pellet_gas=毒气筒 +item.pellet_gas.desc=用于多用途炸弹:$*咳嗽*请停止! +item.pellet_hes=HES Watz靶丸 +item.pellet_lead=铅反射靶丸 +item.pellet_les=LES Watz靶丸 +item.pellet_mercury=水银弹丸 +item.pellet_mes=MES Watz靶丸 +item.pellet_meteorite=陨石弹丸 +item.pellet_neptunium=镎Watz靶丸 +item.pellet_rtg=钚238放射性同位素燃料靶丸 +item.pellet_rtg.desc=无限能量的RTG靶丸!(差不多) +item.pellet_rtg_actinium=锕放射性同位素燃料靶丸 +item.pellet_rtg_actinium.desc=充满了高能电子的蓝色光辉 +item.pellet_rtg_americium=镅-241放射性同位素燃料靶丸 +item.pellet_rtg_americium.desc=稀有可靠,好的老镅! +item.pellet_rtg_berkelium=锫放射性同位素燃料靶丸 +item.pellet_rtg_berkelium.desc= +item.pellet_rtg_cobalt=钴-60放射性同位素燃料靶丸 +item.pellet_rtg_cobalt.desc=不是最好的RTG,但对伽马辐射很好! +item.pellet_rtg_depleted.bismuth=枯竭铋放射性同位素燃料靶丸 +item.pellet_rtg_depleted.lead=枯竭铅放射性同位素燃料靶丸 +item.pellet_rtg_depleted.neptunium=枯竭镎放射性同位素燃料靶丸 +item.pellet_rtg_depleted.mercury=枯竭汞放射性同位素燃料靶丸 +item.pellet_rtg_depleted.nickel=枯竭镍放射性同位素燃料靶丸 +item.pellet_rtg_depleted.zirconium=枯竭锆放射性同位素燃料靶丸 +item.pellet_rtg_lead=铅-209 放射性同位素燃料靶丸 +item.pellet_rtg_lead.desc=接触会导致立即死亡。 +item.pellet_rtg_gold=金-198放射性同位素燃料靶丸 +item.pellet_rtg_gold.desc=由稀有的、高度不稳定的金同位素制成。 +item.pellet_rtg_polonium=钋210放射性同位素燃料靶丸 +item.pellet_rtg_polonium.desc=更多粉末状RTG靶丸,由最好的钋制成! +item.pellet_rtg_strontium=锶-90放射性同位素燃料靶丸 +item.pellet_rtg_strontium.desc=被加利福尼亚洲所熟知... +item.pellet_rtg_radium=镭-226放射性同位素燃料靶丸 +item.pellet_rtg_radium.desc=伟大的启动靶丸,来自全天然镭! +item.pellet_rtg_weak=贫铀放射性同位素燃料靶丸 +item.pellet_rtg_weak.desc=更便宜更弱的靶丸,含有更多的铀238! +item.pellet_schrabidium=纯Sa326Watz靶丸 +item.photo_panel=光伏板 +item.pile_rod_boron=芝加哥反应堆 控制棒 +item.pile_rod_boron.desc=§9[中子吸收器]$§E单击以切换 +item.pile_rod_detector=芝加哥反应堆控制/探测棒 +item.pile_rod_detector.desc=§9[中子探测器/吸收器]$§e使用拆弹器增加/减少中子通量限值$§e使用螺丝刀检查中子通量 +item.pile_rod_lithium=芝加哥反应堆锂燃料棒 +item.pile_rod_lithium.desc=§a[可增殖燃料棒]$§e使用手钻检查棒芯 +item.pile_rod_plutonium=芝加哥反应堆 钚棒 +item.pile_rod_plutonium.desc=§d[中子源棒] +item.pile_rod_pu239=芝加哥反应堆增殖铀棒 +item.pile_rod_pu239.desc=§a[可反应核燃料]$§e富含钚-239 +item.pile_rod_source=芝加哥反应堆 镭226-铍中子源 +item.pile_rod_source.desc=§d[中子源棒] +item.pile_rod_uranium=芝加哥反应堆 铀棒 +item.pile_rod_uranium.desc=§a[可反应核燃料]$§e使用手钻取堆芯样本 +item.pill_iodine=碘丸 +item.pill_iodine.desc=消除负面buff +item.pill_herbal=草药膏 +item.pill_herbal.desc=有效治疗肺部疾病和轻度辐射中毒$有副作用 +item.pill_red=红色药丸 +item.pin=发夹 +item.pin.desc=撬开标准锁的成功率约为10%。 +item.pipentm=%s管 +item.pipes_steel=钢管 +item.pipes_steel.desc=为了避免合成冲 +item.piston_selenium=星型发动机活塞 +item.piston_set_desh=Desh活塞组 +item.piston_set_dura=高速钢活塞组 +item.piston_set_starmetal=星辉活塞组 +item.piston_set_steel=钢活塞组 +item.plan_c=C计划 +item.plan_c.desc=致死 +item.plant_item.mustardwillow=芥子柳叶 +item.plant_item.rope=麻绳 +item.plant_item.tobacco=烟叶 +item.plastic_bag=塑料袋 +item.plate_advanced_alloy=高级合金板 +item.plate_aluminium=铝板 +item.plate_armor_ajr=铁皮装甲板 +item.plate_armor_dnt=DNT装甲板 +item.plate_armor_fau=Fau装甲板 +item.plate_armor_hev=反应装甲板 +item.plate_armor_lunar=月球镀层 +item.plate_armor_titanium=钛装甲板 +item.plate_bismuth=铋复合板 +item.plate_bismuth.desc=伙计们,这是铋的炼金术符号,我发誓。 +item.plate_cast=铸造%s板 +item.plate_combine_steel=CMB钢板 +item.plate_copper=铜板 +item.plate_dalekanium=愤怒的金属 +item.plate_desh=Desh复合板 +item.plate_dineutronium=双聚中子态素复合板 +item.plate_dura_steel=高速钢板 +item.plate_euphemium=Ep复合板 +item.plate_fuel_mox=MOX 板状燃料 +item.plate_fuel_pu238be=钚238-铍 板状燃料 +item.plate_fuel_pu239=高浓度钚-239 板状燃料 +item.plate_fuel_ra226be=镭226-铍 板状燃料 +item.plate_fuel_sa326=高浓度Sa326 板状燃料 +item.plate_fuel_u233=高浓度铀-233 板状燃料 +item.plate_fuel_u235=高浓度铀-235 板状燃料 +item.plate_gold=金板 +item.plate_iron=铁板 +item.plate_kevlar=凯夫拉陶瓷复合材料 +item.plate_lead=铅板 +item.plate_mixed=合金板 +item.plate_paa=PaA合金板 +item.plate_polymer=绝缘体 +item.plate_saturnite=土星板 +item.plate_schrabidium=Sa326板 +item.plate_steel=钢板 +item.plate_titanium=钛板 +item.plate_welded=焊接%s板 +item.polaroid=偏光片 +item.pollution_detector=污染探测器 +item.powder_actinium=锕粉 +item.powder_actinium_tiny=小撮锕粉 +item.powder_advanced_alloy=高级合金粉 +item.powder_aluminium=铝粉 +item.powder_asbestos=石棉粉 +item.powder_asbestos.desc=§o\\\"暴 风 吸 入-- 太 t m 香 了\\\"§r +item.powder_ash.coal=煤灰 +item.powder_ash.fly=飞尘 +item.powder_ash.fullerene=富勒烯 +item.powder_ash.misc=灰尘 +item.powder_ash.soot=细烟灰 +item.powder_ash.wood=木灰 +item.powder_astatine=砹粉 +item.powder_at209=砹-209粉 +item.powder_au198=金-198粉 +item.powder_australium=奥斯粉 +item.powder_bakelite=电木粉 +item.powder_balefire=热核灰烬 +item.powder_beryllium=铍粉 +item.powder_bismuth=铋粉 +item.powder_borax=硼砂 +item.powder_boron=硼粉 +item.powder_boron_tiny=小撮硼粉 +item.powder_bromine=溴粉 +item.powder_cadmium=镉粉 +item.powder_caesium=铯粉 +item.powder_calcium=钙粉 +item.powder_cement=水泥 +item.powder_cerium=铈粉 +item.powder_cerium_tiny=小撮铈粉 +item.powder_chlorocalcite=氯方解石 +item.powder_chlorophyte=叶绿粉 +item.powder_cloud=云粉末 +item.powder_co60=钴-60粉 +item.powder_coal=煤粉 +item.powder_coal_tiny=小撮煤粉 +item.powder_cobalt=钴粉 +item.powder_cobalt_tiny=小撮钴粉 +item.powder_coltan=纯钽铁矿 +item.powder_coltan_ore=粉碎的钶钽铁矿石 +item.powder_combine_steel=CMB钢粉 +item.powder_copper=铜粉 +item.powder_cs137=铯-137粉 +item.powder_cs137_tiny=小撮铯-137粉 +item.powder_daffergon=达夫贡粉 +item.powder_desh=Desh粉 +item.powder_desh_mix=Desh混合物 +item.powder_desh_ready=DeshReady混合物 +item.powder_diamond=钻石粉 +item.powder_dineutronium=双聚中子态素粉 +item.powder_dura_steel=高速钢粉 +item.powder_emerald=绿宝石粉 +item.powder_euphemium=Ep粉 +item.powder_euphemium.desc=粉红色$尝起来像草莓。 +item.powder_fertilizer=工业肥料 +item.powder_fire=红磷粉 +item.powder_fire.desc=用于多用途炸弹:燃烧弹很有趣! +item.powder_flux=助熔剂 +item.powder_gold=金粉 +item.powder_i131=碘-131粉 +item.powder_i131_tiny=小撮碘-131粉 +item.powder_ice=冷冻粉 +item.powder_impure_osmiridium=不纯铱锇粉 +item.powder_iodine=碘粉 +item.powder_iron=铁粉 +item.powder_lanthanium=镧粉 +item.powder_lanthanium_tiny=小撮镧粉 +item.powder_lapis=青金石粉 +item.powder_lead=铅粉 +item.powder_lignite=褐煤粉 +item.powder_limestone=石灰石粉 +item.powder_lithium=锂粉 +item.powder_lithium_tiny=小撮锂粉 +item.powder_magic=粉碎的魔法 +item.powder_magnetized_tungsten=磁化钨粉 +item.powder_meteorite=陨石粉 +item.powder_meteorite_tiny=小撮陨石粉 +item.powder_molysite=氯化铁 +item.powder_neodymium=钕粉 +item.powder_neodymium_tiny=小撮钕粉 +item.powder_neptunium=镎粉 +item.powder_niobium=铌粉 +item.powder_niobium_tiny=小撮铌粉 +item.powder_nitan_mix=Nitan混合物 +item.powder_paleogenite=古近纪岩石粉末 +item.powder_paleogenite_tiny=小撮古近纪岩石粉末 +item.powder_plutonium=钚粉 +item.powder_poison=剧毒粉 +item.powder_poison.desc=用于多用途炸弹:警告:有毒! +item.powder_polonium=钋粉 +item.powder_polymer=聚合物粉 +item.powder_power=能量粉 +item.powder_quartz=石英粉 +item.powder_ra226=镭-226粉 +item.powder_red_copper=紫铜粉 +item.powder_reiium=雷恩粉 +item.powder_sawdust=锯末 +item.powder_schrabidate=Sa酸铁粉 +item.powder_schrabidium=Sa326粉 +item.powder_semtex_mix=塞姆汀塑胶炸药混合物 +item.powder_sodium=钠 +item.powder_spark_mix=Spark闪闪奥术混合物 +item.powder_sr90=锶-90粉 +item.powder_sr90_tiny=小撮锶-90粉末 +item.powder_steel=钢粉 +item.powder_steel_tiny=小撮钢粉 +item.powder_strontium=锶粉 +item.powder_tantalium=钽粉 +item.powder_tantalium.desc=“钽” +item.powder_tantalium.desc.P11=又名钽。 +item.powder_tcalloy=锝-钢粉 +item.powder_tektite=熔融石粉 +item.powder_tennessine=Ts粉 +item.powder_thermite=铝热剂 +item.powder_thorium=钍粉 +item.powder_titanium=钛粉 +item.powder_tungsten=钨粉 +item.powder_unobtainium=难得素粉 +item.powder_uranium=铀粉 +item.powder_verticium=韦德赛粉 +item.powder_weidanium=魏丹粉 +item.powder_xe135=氙-135粉 +item.powder_xe135_tiny=小撮氙-135粉 +item.powder_yellowcake=黄饼 +item.powder_zirconium=锆粉 +item.power_net_tool=电缆网络分析工具 +item.pipette=移液管 +item.pipette_boron=硼玻璃移液管 +item.pipette_laboratory=移液器 +item.primer_357=.357马格南底火[x24] +item.primer_44=.44马格南底火[x24] +item.primer_50=大口径底火[x12] +item.primer_9=小口径底火[x32] +item.primer_buckshot=鹿弹底火[x12] +item.protection_charm=守护项链 +item.prototype_kit=原型 套件 +item.pudding=布丁 +item.pwr_fuel.bfb_am_mix=燃料级镅压水堆BFB燃料棒 +item.pwr_fuel.bfb_pu241=钚-241压水堆BFB棒 +item.pwr_fuel.hea242=HEA-242 高浓缩度镅-242压水堆燃料棒 +item.pwr_fuel.hen237=HEN-237 高浓缩度镎-237压水堆燃料棒 +item.pwr_fuel.hep239=HEP-239 高浓缩度钚-239压水堆燃料棒 +item.pwr_fuel.hep241=HEP-241 高浓缩度钚-241压水堆燃料棒 +item.pwr_fuel.hes326=HES-326 高浓缩度Sa326压水堆燃料棒 +item.pwr_fuel.hes327=HES-327 高浓缩度Sa327压水堆燃料棒 +item.pwr_fuel.heu233=HEU-233 高浓缩度铀-233压水堆燃料棒 +item.pwr_fuel.heu235=HEU-235 高浓缩度铀-235压水堆燃料棒 +item.pwr_fuel.mea=MEA 中浓缩度镅压水堆燃料棒 +item.pwr_fuel.men=MEN 中浓缩度镎压水堆燃料棒 +item.pwr_fuel.mep=MEP 中浓缩度钚压水堆燃料棒 +item.pwr_fuel.meu=MEU 中浓缩度铀压水堆燃料棒 +item.pwr_fuel.mox=MOX 压水堆燃料棒 +item.pwr_fuel_depleted.bfb_am_mix=枯竭燃料级镅压水堆BFB燃料棒 +item.pwr_fuel_depleted.bfb_pu241=枯竭钚-241压水堆BFB棒 +item.pwr_fuel_depleted.hea242=枯竭 HEA-242 高浓缩度镅-242压水堆燃料棒 +item.pwr_fuel_depleted.hen237=枯竭 HEN-237 高浓缩度镎-237压水堆燃料棒 +item.pwr_fuel_depleted.hep239=枯竭 HEP-239 高浓缩度钚-239压水堆燃料棒 +item.pwr_fuel_depleted.hep241=枯竭 HEP-241 高浓缩度钚-241压水堆燃料棒 +item.pwr_fuel_depleted.hes326=枯竭 HES-326 高浓缩度Sa326压水堆燃料棒 +item.pwr_fuel_depleted.hes327=枯竭 HES-327 高浓缩度Sa327压水堆燃料棒 +item.pwr_fuel_depleted.heu233=枯竭 HEU-233 高浓缩度铀-233压水堆燃料棒 +item.pwr_fuel_depleted.heu235=枯竭 HEU-235 高浓缩度铀-235压水堆燃料棒 +item.pwr_fuel_depleted.mea=枯竭 MEA 中浓缩度镅压水堆燃料棒 +item.pwr_fuel_depleted.men=枯竭 MEN 中浓缩度镎压水堆燃料棒 +item.pwr_fuel_depleted.mep=枯竭 MEP 中浓缩度钚压水堆燃料棒 +item.pwr_fuel_depleted.meu=枯竭 MEU 中浓缩度铀压水堆燃料棒 +item.pwr_fuel_depleted.mox=枯竭 MOX 压水堆燃料棒 +item.pwr_fuel_hot.bfb_am_mix=高温 燃料级镅压水堆BFB燃料棒 +item.pwr_fuel_hot.bfb_pu241=高温 钚-241压水堆BFB棒 +item.pwr_fuel_hot.hea242=高温 HEA-242 高浓缩度镅-242压水堆燃料棒 +item.pwr_fuel_hot.hen237=高温 HEN-237 高浓缩度镎-237压水堆燃料棒 +item.pwr_fuel_hot.hep239=高温 HEP-239 高浓缩度钚-239压水堆燃料棒 +item.pwr_fuel_hot.hep241=高温 HEP-241 高浓缩度钚-241压水堆燃料棒 +item.pwr_fuel_hot.hes326=高温 HES-326 高浓缩度Sa326压水堆燃料棒 +item.pwr_fuel_hot.hes327=高温 HES-327 高浓缩度Sa327压水堆燃料棒 +item.pwr_fuel_hot.heu233=高温 HEU-233 高浓缩度铀-233压水堆燃料棒 +item.pwr_fuel_hot.heu235=高温 HEU-235 高浓缩度铀-235压水堆燃料棒 +item.pwr_fuel_hot.mea=高温 MEA 中浓缩度镅压水堆燃料棒 +item.pwr_fuel_hot.men=高温 MEN 中浓缩度镎压水堆燃料棒 +item.pwr_fuel_hot.mep=高温 MEP 中浓缩度钚压水堆燃料棒 +item.pwr_fuel_hot.meu=高温 MEU 中浓缩度铀压水堆燃料棒 +item.pwr_fuel_hot.mox=高温 MOX压水堆燃料棒 +item.quartz_plutonium=深成石英 +item.radar_linker=雷达连接器 +item.radaway=消辐宁 +item.radaway_flush=超级消辐宁 +item.radaway_strong=强效消辐宁 +item.radx=防辐射药 +item.radx.desc=在3分钟内增加0.2(37%)的抗辐射能力 +item.rag=布 +item.rag_damp=湿布 +item.rag_piss=沾有尿的布 +item.rbmk_fuel_balefire=RBMK反应堆野火燃料棒 +item.rbmk_fuel_balefire_gold=RBMK反应堆激活态金-198燃料棒 +item.rbmk_fuel_drx=§cRBMK反应堆F迪伽马粒子燃料棒§r +item.rbmk_fuel_empty=空 RBMK反应堆燃料棒 +item.rbmk_fuel_flashlead=RBMK反应堆闪光铅燃料棒 +item.rbmk_fuel_hea241=HEA-241 RBMK反应堆高浓缩度镅-241燃料棒 +item.rbmk_fuel_hea242=HEA-242 RBMK反应堆高浓缩度镅-242燃料棒 +item.rbmk_fuel_heaus=HEAus RBMK反应堆高浓缩度奥斯燃料棒 +item.rbmk_fuel_hen=HEN RBMK反应堆高浓缩度镎燃料棒 +item.rbmk_fuel_hes=HES RBMK反应堆高浓缩度Sa326燃料棒 +item.rbmk_fuel_hep=HEP-239 RBMK反应堆高浓缩度钚-239燃料棒 +item.rbmk_fuel_hep241=HEP-241 RBMK反应堆高浓缩度钚-241燃料棒 +item.rbmk_fuel_heu233=HEU-233 RBMK反应堆高浓缩度铀-233燃料棒 +item.rbmk_fuel_heu235=HEU-235 RBMK反应堆高浓缩度铀-235燃料棒 +item.rbmk_fuel_lea=LEA RBMK反应堆低浓缩度镅-242燃料棒 +item.rbmk_fuel_leaus=LEAus RBMK反应堆低浓缩度奥斯燃料棒 +item.rbmk_fuel_lep=LEP RBMK反应堆低浓缩度钚-239燃料棒 +item.rbmk_fuel_les=LES RBMK反应堆低浓缩度Sa326燃料棒 +item.rbmk_fuel_mea=MEA RBMK反应堆中浓缩度镅-242燃料棒 +item.rbmk_fuel_men=MEN RBMK反应堆中浓缩度镎-237燃料棒 +item.rbmk_fuel_mep=MEP RBMK反应堆中浓缩度钚-239燃料棒 +item.rbmk_fuel_mes=MES RBMK中浓缩度Sa326燃料棒 +item.rbmk_fuel_meu=MEU RBMK中浓缩度铀-235燃料棒 +item.rbmk_fuel_mox=MOX RBMK反应堆燃料棒 +item.rbmk_fuel_po210be=钋210-铍 RBMK反应堆中子源 +item.rbmk_fuel_pu238be=钚238-铍 RBMK反应堆中子源 +item.rbmk_fuel_ra226be=镭226-铍 RBMK反应堆中子源 +item.rbmk_fuel_thmeu=ThMEU RBMK反应堆中浓缩度铀-233导向钍燃料棒 +item.rbmk_fuel_ueu=NU RBMK反应堆未浓缩铀燃料棒 +item.rbmk_fuel_zfb_am_mix=ZFB 燃料级镅RBMK反应堆燃料棒 +item.rbmk_fuel_zfb_bismuth=ZFB 铋RBMK反应堆燃料棒 +item.rbmk_fuel_zfb_pu241=ZFB 钚-241RBMK反应堆燃料棒 +item.rbmk_lid=RBMK反应堆覆盖层 +item.rbmk_lid_glass=RBMK反应堆玻璃覆盖层 +item.rbmk_pellet_balefire=野火燃料芯块 +item.rbmk_pellet_balefire_gold=激活态金-198燃料芯块 +item.rbmk_pellet_drx=§cF迪伽马粒子燃料芯块§r +item.rbmk_pellet_flashlead=闪光铅燃料芯块 +item.rbmk_pellet_hea241=HEA-241 高浓缩度镅-241料芯块 +item.rbmk_pellet_hea242=HEA-242 高浓缩度镅-242燃料芯块 +item.rbmk_pellet_heaus=HEAus 高浓缩度奥斯燃料芯块 +item.rbmk_pellet_hen=HEN 高浓缩度镎燃料芯块 +item.rbmk_pellet_hep239=HEP-239 高浓缩度钚-239燃料芯块 +item.rbmk_pellet_hep241=HEP-241 高浓缩度钚-241燃料芯块 +item.rbmk_pellet_heu233=HEU-233 高浓缩度铀-233燃料芯块 +item.rbmk_pellet_heu235=HEU-235 高浓缩度铀-235燃料芯块 +item.rbmk_pellet_hes=HES 高浓缩度Sa-326燃料芯块 +item.rbmk_pellet_lea=LEA 低浓缩度镅-242燃料芯块 +item.rbmk_pellet_leaus=LEAus 低浓缩度奥斯燃料芯块 +item.rbmk_pellet_lep=LEP 低浓缩度钚-239燃料芯块 +item.rbmk_pellet_les=LES 低浓缩度Sa-326燃料芯块 +item.rbmk_pellet_mea=MEA 中浓缩度镅-242燃料芯块 +item.rbmk_pellet_men=MEN 中浓缩度镎-237燃料芯块 +item.rbmk_pellet_mep=MEP 中浓缩度钚-239燃料芯块 +item.rbmk_pellet_mes=MES 中浓缩度Sa-326燃料芯块 +item.rbmk_pellet_meu=MEU 中浓缩度铀-235燃料芯块 +item.rbmk_pellet_mox=MOX燃料芯块 +item.rbmk_pellet_po210be=钋210-铍 中子源芯块 +item.rbmk_pellet_pu238be=钚238-铍 中子源芯块 +item.rbmk_pellet_ra226be=镭226-铍 中子源芯块 +item.rbmk_pellet_thmeu=ThMEU 浓缩度铀-235导向钍燃料芯块 +item.rbmk_pellet_ueu=未浓缩铀燃料芯块 +item.rbmk_pellet_zfb_am_mix=ZFB 燃料级镅燃料芯块 +item.rbmk_pellet_zfb_bismuth=ZFB 铋燃料芯块 +item.rbmk_pellet_zfb_pu241=ZFB 钚-241燃料芯块 +item.rbmk_tool=RBMK石墨式反应堆控制台连接装置 +item.rbmk_tool.desc=按住Shift右击RBMK石墨式反应堆保存其坐 +item.rbmk_tool.linked=反应堆坐标已记录! +item.rbmk_tool.set=反应堆已连接! +item.reacher=钨长臂夹 +item.reactor_core=增殖反应堆核心 +item.reactor_sensor=反应堆遥感器 +item.record.glass.desc= +item.record.lc.desc= +item.record.ss.desc= +item.record.vc.desc= +item.redcoil_capacitor=红圈电容器 +item.redstone_depleted=不饱和红石粉 +item.redstone_sword=红石剑 +item.reer_graar=菊 花 护 卫 +item.remote=损坏的遥控器 +item.ring_pull=拉环 +item.ring_starmetal=§9星辉拉环§r +item.robes_boots=战地靴 +item.robes_helmet=休闲兜帽 +item.robes_legs=休闲裤 +item.robes_plate=休闲毛衣 +item.rocket_fuel=固体燃料[火箭推进剂] +item.rod_empty=空燃料棒 +item.rod.lithium=锂棒 +item.rod.tritium=氚棒 +item.rod.co=钴棒 +item.rod.co60=钴-60棒 +item.rod.ra226=镭-226棒 +item.rod.ac227=锕-227棒 +item.rod.th232=钍-232棒 +item.rod.thf=钍燃料棒 +item.rod.u235=铀-235棒 +item.rod.np237=镎-237棒 +item.rod.u238=铀-238棒 +item.rod.pu238=钚-238棒 +item.rod.pu239=钚-239棒 +item.rod.rgp=反应堆级钚棒 +item.rod.waste=核废料棒 +item.rod.lead=铅棒 +item.rod.uranium=铀棒 +item.rod_dual_empty=空双联燃料棒 +item.rod_dual.lithium=双联锂棒 +item.rod_dual.tritium=双联氚棒 +item.rod_dual.co=双联钴棒 +item.rod_dual.co60=双联钴-60棒 +item.rod_dual.ra226=双联镭-226棒 +item.rod_dual.ac227=双联锕-227棒 +item.rod_dual.th232=双联钍-232棒 +item.rod_dual.thf=双联钍燃料棒 +item.rod_dual.u235=双联铀-235棒 +item.rod_dual.np237=双联镎-237棒 +item.rod_dual.u238=双联铀-238棒 +item.rod_dual.pu238=双联钚-238棒 +item.rod_dual.pu239=双联钚-239棒 +item.rod_dual.rgp=双联反应堆级钚棒 +item.rod_dual.waste=双联核废料棒 +item.rod_dual.lead=双联铅棒 +item.rod_dual.uranium=双联铀棒 +item.rod_quad_empty=空四联燃料棒 +item.rod_quad.lithium=四联锂棒 +item.rod_quad.tritium=四联氚棒 +item.rod_quad.co=四联钴棒 +item.rod_quad.co60=四联钴-60棒 +item.rod_quad.ra226=四联镭-226棒 +item.rod_quad.ac227=四联锕-227棒 +item.rod_quad.th232=四联钍-232棒 +item.rod_quad.thf=四联钍燃料棒 +item.rod_quad.u235=四联铀-235棒 +item.rod_quad.np237=四联镎-237棒 +item.rod_quad.u238=四联铀-238棒 +item.rod_quad.pu238=四联钚-238棒 +item.rod_quad.pu239=四联钚-239棒 +item.rod_quad.rgp=四联反应堆级钚棒 +item.rod_quad.waste=四联核废料棒 +item.rod_quad.lead=四联铅棒 +item.rod_quad.uranium=四联铀棒 +item.rod_australium=奥斯棒 +item.rod_balefire=野火燃料棒 +item.rod_balefire_blazing=炽热的野火燃料棒 +item.rod_coolant=燃料棒[冷却液] +item.rod_daffergon=达夫贡棒 +item.rod_dual_balefire=双联野火燃料棒 +item.rod_dual_balefire_blazing=炽热的双联野火燃料棒 +item.rod_dual_coolant=双联燃料棒[冷却液] +item.rod_dual_lead=双联铅棒 +item.rod_dual_lithium=双联锂棒 +item.rod_dual_mox_fuel=核反应堆 双联MOX燃料棒 +item.rod_dual_mox_fuel_depleted=核反应堆 枯竭MOX燃料棒 +item.rod_dual_neptunium=双联镎燃料棒 +item.rod_dual_plutonium=双联钚棒 +item.rod_dual_plutonium_fuel=核反应堆 双联钚燃料棒 +item.rod_dual_plutonium_fuel_depleted=核反应堆 双联枯竭钚燃料棒 +item.rod_dual_polonium=双联钋棒 +item.rod_dual_pu238=双联钚-238燃料棒 +item.rod_dual_pu239=双联钚-239燃料棒 +item.rod_dual_pu240=双联钚-240燃料棒 +item.rod_dual_schrabidium=双联Sa326燃料棒 +item.rod_dual_schrabidium_fuel=核反应堆 双联Sa326燃料棒 +item.rod_dual_schrabidium_fuel_depleted=双联枯竭Sa326燃料棒 +item.rod_dual_solinium=双联Sa327燃料棒 +item.rod_dual_th232=双联钍-232燃料棒 +item.rod_dual_thorium_fuel=双联钍燃料棒 +item.rod_dual_thorium_fuel_depleted=双联枯竭钍燃料棒 +item.rod_dual_tritium=双联氚燃料棒 +item.rod_dual_u233=双联铀-233燃料棒 +item.rod_dual_u235=双联铀-235燃料棒 +item.rod_dual_u238=双联铀-238燃料棒 +item.rod_dual_uranium=双联铀棒 +item.rod_dual_uranium_fuel=核反应堆 双联铀燃料棒 +item.rod_dual_uranium_fuel_depleted=核反应堆 双联枯竭铀燃料棒 +item.rod_dual_waste=双联核废料棒 +item.rod_dual_water=双联燃料棒[水] +item.rod_euphemium=Ep棒 +item.rod_lead=铅棒 +item.rod_lithium=锂棒 +item.rod_mox_fuel=核反应堆 MOX燃料棒 +item.rod_mox_fuel_depleted=核反应堆 枯竭MOX燃料棒 +item.rod_neptunium=镎燃料棒 +item.rod_of_discord=混沌传送杖 +item.rod_plutonium=钚棒 +item.rod_plutonium_fuel=核反应堆 钚燃料棒 +item.rod_plutonium_fuel_depleted=核反应堆 枯竭钚燃料棒 +item.rod_polonium=钋棒 +item.rod_pu238=钚-238燃料棒 +item.rod_pu239=钚-239燃料棒 +item.rod_pu240=钚-240燃料棒 +item.rod_quad_balefire=四联野火燃料棒 +item.rod_quad_balefire_blazing=炽热的四联野火燃料棒 +item.rod_quad_coolant=四联燃料棒[冷却液] +item.rod_quad_euphemium=枯竭的四联Sa326燃料棒 +item.rod_quad_lead=四联铅棒 +item.rod_quad_lithium=四联锂棒 +item.rod_quad_mox_fuel=核反应堆 四联MOX燃料棒 +item.rod_quad_mox_fuel_depleted=核反应堆 枯竭MOX燃料棒 +item.rod_quad_neptunium=四联镎燃料棒 +item.rod_quad_plutonium=四联钚棒 +item.rod_quad_plutonium_fuel=四联钚燃料棒 +item.rod_quad_plutonium_fuel_depleted=四联枯竭钚燃料棒 +item.rod_quad_polonium=四联钋棒 +item.rod_quad_pu238=四联钚-238燃料棒 +item.rod_quad_pu239=四联钚-239燃料棒 +item.rod_quad_pu240=四联钚-240燃料棒 +item.rod_quad_schrabidium=四联Sa326燃料棒 +item.rod_quad_schrabidium_fuel=核反应堆 四联Sa326燃料棒 +item.rod_quad_schrabidium_fuel_depleted=核反应堆 四联枯竭Sa326燃料棒 +item.rod_quad_solinium=四联Sa327燃料棒 +item.rod_quad_th232=四联钍-232燃料棒 +item.rod_quad_thorium_fuel=核反应堆 四联钍燃料棒 +item.rod_quad_thorium_fuel_depleted=四联枯竭钍燃料棒 +item.rod_quad_tritium=四联氚燃料棒 +item.rod_quad_u233=四联铀-233燃料棒 +item.rod_quad_u235=四联铀-235燃料棒 +item.rod_quad_u238=四联铀-238燃料棒 +item.rod_quad_uranium=四联铀棒 +item.rod_quad_uranium_fuel=核反应堆 四联铀燃料棒 +item.rod_quad_uranium_fuel_depleted=四联枯竭铀燃料棒 +item.rod_quad_waste=四联核废料棒 +item.rod_quad_water=四联燃料棒[水] +item.rod_reiium=雷恩棒 +item.rod_schrabidium=Sa326燃料棒 +item.rod_schrabidium_fuel=Sa326燃料棒 +item.rod_schrabidium_fuel_depleted=核反应堆 枯竭Sa326燃料棒 +item.rod_solinium=Sa327燃料棒 +item.rod_th232=钍-232燃料棒 +item.rod_thorium_fuel=钍燃料棒 +item.rod_thorium_fuel_depleted=核反应堆 枯竭钍燃料棒 +item.rod_tritium=氚燃料棒 +item.rod_u233=铀-233燃料棒 +item.rod_u235=铀-235燃料棒 +item.rod_u238=铀-238燃料棒 +item.rod_unobtainium=难得素棒 +item.rod_uranium=铀棒 +item.rod_uranium_fuel=核反应堆 铀燃料棒 +item.rod_uranium_fuel_depleted=核反应堆 枯竭铀燃料棒 +item.rod_verticium=韦德赛棒 +item.rod_waste=核废料棒 +item.rod_water=燃料棒[水] +item.rod_weidanium=魏丹棒 +item.rod_zirnox_empty=空锆诺克斯燃料棒 +item.rod_zirnox_natural_uranium_fuel=锆诺克斯 天然铀燃料棒 +item.rod_zirnox_uranium_fuel=锆诺克斯 铀燃料棒 +item.rod_zirnox_th232=锆诺克斯 钍-232燃料棒 +item.rod_zirnox_thorium_fuel=锆诺克斯 钍燃料棒 +item.rod_zirnox_mox_fuel=锆诺克斯 MOX燃料棒 +item.rod_zirnox_plutonium_fuel=锆诺克斯 钚燃料棒 +item.rod_zirnox_u233_fuel=锆诺克斯 铀-233燃料棒 +item.rod_zirnox_u235_fuel=锆诺克斯 铀-235燃料棒 +item.rod_zirnox_les_fuel=锆诺克斯 LES低浓度Sa326燃料棒 +item.rod_zirnox_lithium=锆诺克斯 锂燃料棒 +item.rod_zirnox_tritium=锆诺克斯 氚燃料棒 +item.rod_zirnox_zfb_mox=锆诺克斯 ZFB MOX燃料棒 +item.rod_zirnox_natural_uranium_fuel_depleted=锆诺克斯 枯竭天然铀燃料棒 +item.rod_zirnox_uranium_fuel_depleted=锆诺克斯 枯竭铀燃料棒 +item.rod_zirnox_thorium_fuel_depleted=锆诺克斯 枯竭钍燃料棒 +item.rod_zirnox_mox_fuel_depleted=锆诺克斯 枯竭MOX燃料棒 +item.rod_zirnox_plutonium_fuel_depleted=锆诺克斯 枯竭钚燃料棒 +item.rod_zirnox_u233_fuel_depleted=锆诺克斯 枯竭铀-233燃料棒 +item.rod_zirnox_u235_fuel_depleted=锆诺克斯 枯竭铀-235燃料棒 +item.rod_zirnox_les_fuel_depleted=锆诺克斯 枯竭LES低浓度Sa326燃料棒 +item.rod_zirnox_zfb_mox_depleted=锆诺克斯 ZFB 枯竭MOX燃料棒 +item.rotor_steel=大型钢转子 +item.rpa_boots=动力装甲 靴子 +item.rpa_helmet=动力装甲 头盔 +item.rpa_legs=动力护甲 护腿 +item.rpa_plate=动力装甲 胸甲 +item.rtg_unit=放射性同位素单元 +item.rubber_gloves=厚橡胶手套 +item.rune_blank=空白催化剂基质 +item.rune_dagaz=平衡催化剂基质 +item.rune_hagalaz=粗催化剂基质 +item.rune_isa=冷却催化剂基质 +item.rune_jera=增殖催化剂基质 +item.rune_thurisaz=添加剂催化剂基质 +item.safety_fuse=安全保险丝 +item.sat_base=卫星基座 +item.sat_chip=卫星ID芯片 +item.sat_coord=卫星指示器 +item.sat_designator=卫星激光指示器 +item.sat_relay=卫星雷达中继器 +item.sat_foeq=实验型核能PEAF-Mk.I FOEQ Duna探测器 +item.sat_gerald=Gerald建筑机器人 +item.sat_head_laser=死光发射器 +item.sat_head_mapper=高增益光学摄像头 +item.sat_head_radar=雷达天线 +item.sat_head_resonator=Xenium共振器 +item.sat_head_scanner=M700测量扫描仪 +item.sat_interface=卫星操作接口 +item.sat_laser=轨道死光炮 +item.sat_lunar_miner=月球采矿飞船 +item.sat_mapper=地表测绘卫星 +item.sat_miner=小行星采矿飞船 +item.sat_radar=雷达探测卫星 +item.sat_resonator=X晶体共振卫星 +item.sat_scanner=绘测和资源探测卫星 +item.sawblade=锯片 +item.schnitzel_vegan=“素”肉排 +item.schrabidium_axe=Sa326斧 +item.schrabidium_boots=Sa326靴子 +item.schrabidium_hammer=Sa326锤 +item.schrabidium_helmet=Sa326头盔 +item.schrabidium_hoe=Sa326锄 +item.schrabidium_legs=Sa326护腿 +item.schrabidium_pickaxe=Sa326镐 +item.schrabidium_plate=Sa326胸甲 +item.schrabidium_shovel=Sa326锹 +item.schrabidium_sword=Sa326剑 +item.scrap=废料 +item.scrap_nuclear=放射性废料 +item.scrap_oil=油性废料 +item.scrap_plastic=塑料废料 +item.scraps=铸造废料 +item.screwdriver=螺丝刀 +item.screwdriver.desc=可以用来代替保险丝…… +item.screwdriver_desh=Desh螺丝刀 +item.scrumpy=一瓶烈性苹果酒 +item.security_boots=防护靴子 +item.security_helmet=防护头盔 +item.security_legs=防护裤 +item.security_plate=防护胸甲 +item.seg_10=10号连接器 +item.seg_15=15号连接器 +item.seg_20=20号连接器 +item.serum=血清 +item.servo_set=伺服装置 +item.servo_set_desh=Desh伺服装置 +item.shackles=枷锁 +item.shellntm=%s壳 +item.shimmer_axe=闪耀斧 +item.shimmer_axe_head=重型斧头 +item.shimmer_handle=强化聚合物手柄 +item.shimmer_head=重型锤头 +item.shimmer_sledge=闪耀锤 +item.singularity=奇点 +item.singularity_counter_resonant=可控反振谐奇点 +item.singularity_micro=微型奇点 +item.singularity_spark=Spark奇点 +item.singularity_super_heated=超热共振奇点 +item.siox=SiOX抗癌药物 +item.siox.desc=使用石棉的力量逆转间皮瘤! +item.siphon=虹吸管 +item.siren_track=警报声轨 +item.sliding_blast_door_skin.0=滑动防爆门 皮肤:默认 +item.sliding_blast_door_skin.1=滑动防爆门 皮肤:变型1 +item.sliding_blast_door_skin.2=滑动防爆门 皮肤:变型2 +item.smashing_hammer=粉碎锤 +item.solid_fuel=固体燃料 +item.solid_fuel_bf=固体燃料(野火) +item.solid_fuel_presto=Presto固体燃料 +item.solid_fuel_presto_bf=Presto固体燃料(野火) +item.solid_fuel_presto_triplet=增强型Presto固体燃料 +item.solid_fuel_presto_triplet_bf=增强型Presto固体燃料(野火) +item.solinium_core=半稳定Sa327核心 +item.solinium_igniter=Sa327脉冲点火器 +item.solinium_kit=蔚蓝洗礼套件 +item.solinium_propellant=Sa327压缩装药 +item.sopsign=Sop标志战斧 +item.spawn_duck=金蛋 +item.spawn_ufo=火星入侵者飞船 +item.spawn_worm=机械蠕虫 +item.sphere_steel=钢球 +item.spider_milk=一瓶蜘蛛奶 +item.spongebob_macaroni=海绵宝宝通心粉 +item.stamp_357=.357马格南锻模 +item.stamp_44=.44马格南锻模 +item.stamp_50=大口径弹壳锻模 +item.stamp_9=小口径弹壳锻模 +item.stamp_book.printing1=书页锻模之一 +item.stamp_book.printing2=书页锻模之二 +item.stamp_book.printing3=书页锻模之三 +item.stamp_book.printing4=书页锻模之四 +item.stamp_book.printing5=书页锻模之五 +item.stamp_book.printing6=书页锻模之六 +item.stamp_book.printing7=书页锻模之七 +item.stamp_book.printing8=书页锻模之八 +item.stamp_desh_circuit=Desh电路板锻模 +item.stamp_desh_flat=Desh锻模 +item.stamp_desh_plate=Desh板锻模 +item.stamp_desh_wire=Desh电线锻模 +item.stamp_desh_357=.357马格南锻模 (Desh) +item.stamp_desh_44=.44马格南锻模 (Desh) +item.stamp_desh_50=大口径弹壳锻模(Desh) +item.stamp_desh_9=小口径弹壳锻模(Desh) +item.stamp_iron_circuit=铁质电路板锻模 +item.stamp_iron_flat=铁质锻模 +item.stamp_iron_plate=铁质板锻模 +item.stamp_iron_wire=铁质电线锻模 +item.stamp_obsidian_circuit=黑曜石电路板锻模 +item.stamp_obsidian_flat=黑曜石锻模 +item.stamp_obsidian_plate=黑曜石板锻模 +item.stamp_obsidian_wire=黑曜石电线锻模 +item.stamp_steel_circuit=钢质电路板锻模 +item.stamp_steel_flat=钢质锻模 +item.stamp_steel_plate=钢质板锻模 +item.stamp_steel_wire=钢质电线锻模 +item.stamp_stone_circuit=石质电路板锻模 +item.stamp_stone_flat=石质锻模 +item.stamp_stone_plate=石质板锻模 +item.stamp_stone_wire=石质电线锻模 +item.stamp_titanium_circuit=钛质电路板锻模 +item.stamp_titanium_flat=钛质锻模 +item.stamp_titanium_plate=钛质板锻模 +item.stamp_titanium_wire=钛质电线锻模 +item.starmetal_axe=星辉斧 +item.starmetal_boots=星辉靴子 +item.starmetal_helmet=星辉头盔 +item.starmetal_hoe=星辉锄 +item.starmetal_legs=星辉护腿 +item.starmetal_pickaxe=星辉镐 +item.starmetal_plate=星辉胸甲 +item.starmetal_shovel=星辉锹 +item.starmetal_sword=星辉剑 +item.static_sandwich=TV三明治 +item.stealth_boy=隐形小子 +item.steamsuit_boots=蒸汽动力靴子 +item.steamsuit_helmet=蒸汽动力呼吸器头盔 +item.steamsuit_legs=蒸汽动力护腿 +item.steamsuit_plate=蒸汽动力胸甲 +item.steel_axe=钢斧 +item.steel_boots=钢靴子 +item.steel_helmet=钢头盔 +item.steel_hoe=钢锄 +item.steel_legs=钢护腿 +item.steel_pickaxe=钢镐 +item.steel_plate=钢胸甲 +item.steel_shovel=钢锹 +item.steel_sword=钢剑 +item.stick_c4=C-4炸药棒 +item.stick_dynamite=炸药棒 +item.stick_dynamite_fishing=捕鱼炸药棒 +item.stick_semtex=塞姆汀塑胶炸药棒 +item.stick_tnt=TNT棒 +item.stopsign=停车标志战斧 +item.sulfur=硫粉 +item.survey_scanner=勘测扫描仪 +item.syringe_antidote=解毒剂 +item.syringe_awesome=米青采彡 +item.syringe_empty=空注射器 +item.syringe_metal_empty=金属注射器 +item.syringe_metal_medx=Med-X抗痛宁 +item.syringe_metal_psycho=Psycho\"捷特\" +item.syringe_metal_stimpak=治疗针 +item.syringe_metal_super=超级治疗针 +item.syringe_mkunicorn=独角兽 +item.syringe_poison=毒针 +item.syringe_taint=污染水注射液 +item.t45_boots=T45动力装甲 靴子 +item.t45_helmet=T45动力装甲 头盔 +item.t45_kit=T45动力装甲套装 +item.t45_legs=T45动力装甲 护腿 +item.t45_plate=T45动力装甲 胸甲 +item.tank_steel=钢罐 +item.tank_waste_0=泥浆容器 +item.tank_waste_1=泥浆容器 +item.tank_waste_2=泥浆容器 +item.tank_waste_3=泥浆容器 +item.tank_waste_4=泥浆容器 +item.tank_waste_5=泥浆容器 +item.tank_waste_6=泥浆容器 +item.tank_waste_7=泥浆容器 +item.tank_waste_8=泥浆容器 +item.telepad=传送部件 +item.tem_flakes=Tem薄片 +item.template_folder=机器模板文件夹 +item.template_folder.desc=机器模板:纸张+染料$流体识别码:铁板+染料$锻模:空白锻模 $警报声轨:绝缘体+钢板 +item.test_nuke_igniter=点火器 +item.test_nuke_propellant=推进剂 +item.test_nuke_tier1_bullet=铀235弹头[1级] +item.test_nuke_tier1_shielding=中子反射器[1级] +item.test_nuke_tier1_target=次临界铀235靶丸[1级] +item.test_nuke_tier2_bullet=MOX弹头[2级] +item.test_nuke_tier2_shielding=中子反射器[2级] +item.test_nuke_tier2_target=次临界MOX靶丸[2级] +item.thermo_element=热电元件 +item.thermo_unit_empty=热量分配装置 +item.thermo_unit_endo=吸热装置 +item.thermo_unit_exo=放热装置 +item.thruster_large=大型推进器 +item.thruster_medium=中型推进器 +item.thruster_nuclear=LV-N核能火箭发动机 +item.thruster_small=小型推进器 +item.titanium_axe=钛斧 +item.titanium_boots=钛靴子 +item.titanium_filter=钛过滤器 +item.titanium_helmet=钛头盔 +item.titanium_hoe=钛锄 +item.titanium_legs=钛护腿 +item.titanium_pickaxe=钛镐 +item.titanium_plate=钛胸甲 +item.titanium_shovel=钛锹 +item.titanium_sword=钛剑 +item.toothpicks=牙签 +item.train.cargo_tram=平板载货电车 +item.trenchmaster_boots=战壕王者的胸甲 +item.trenchmaster_helmet=战壕王者的头盔 +item.trenchmaster_legs=战壕王者的护腿 +item.trenchmaster_plate=战壕王者的胸甲 +item.trinitite=玻璃石 +item.tritium_deuterium_cake=氚氘饼 +item.tritium_deuterium_cake.desc=不是真正的蛋糕,而是很棒的$聚变燃料! +item.tsar_core=沙皇炸弹核心 +item.tsar_kit=沙皇炸弹 套件 +item.turbine_titanium=钛汽轮转子 +item.turbine_tungsten=强化汽轮转子 +item.turret_biometry=炮塔遥测卡 +item.turret_cheapo_ammo=6x24奇普机枪炮台弹药 +item.turret_chip=炮塔AI芯片 +item.turret_control=炮塔控制器 +item.turret_cwis_ammo=近防系统20mm弹药筒 +item.turret_flamer_ammo=火焰炮塔燃料箱 +item.turret_heavy_ammo=重型机枪炮塔弹药箱 +item.turret_light_ammo=轻型机枪炮塔弹药箱 +item.turret_rocket_ammo=火箭炮塔弹药 +item.turret_spitfire_ammo=防空炮弹 +item.turret_tau_ammo=陶子炮塔铀弹药 +item.twinkie=小蛋糕 +item.ullapool_caber=阿勒浦长木杆 +item.undefined=形态未定义物质 +item.upgrade_5g=5G辐射发射器升级 +item.upgrade_afterburn_1=一级粉色机器升级 +item.upgrade_afterburn_2=二级粉色机器升级 +item.upgrade_afterburn_3=三级粉色机器升级 +item.upgrade_centrifuge=采矿激光升级-自动离心 +item.upgrade_crystallizer=采矿激光升级-自动结晶 +item.upgrade_effect_1=一级绿色机器升级 +item.upgrade_effect_2=二级绿色机器升级 +item.upgrade_effect_3=三级绿色机器升级 +item.upgrade_ejector_1=一级弹射速度升级 +item.upgrade_ejector_2=二级弹射速度升级 +item.upgrade_ejector_3=三级弹射速度升级 +item.upgrade_fortune_1=一级紫色机器升级 +item.upgrade_fortune_2=二级紫色机器升级 +item.upgrade_fortune_3=三级紫色机器升级 +item.upgrade_gc_speed=气体离心机超频升级 +item.upgrade_health=粉色力场发生器升级 +item.upgrade_muffler=消音器 +item.upgrade_nullifier=采矿激光升级-自动销毁 +item.upgrade_overdrive_1=一级超速传动机器升级 +item.upgrade_overdrive_2=二级超速传动机器升级 +item.upgrade_overdrive_3=三级超速传动机器升级 +item.upgrade_power_1=一级蓝色机器升级 +item.upgrade_power_2=二级蓝色机器升级 +item.upgrade_power_3=三级蓝色机器升级 +item.upgrade_radius=青色力场发生器升级 +item.upgrade_screm=采矿激光升级-目 力 科 学 家 +item.upgrade_shredder=采矿激光升级-自动粉碎 +item.upgrade_smelter=采矿激光升级-自动熔炼 +item.upgrade_speed_1=一级红色机器升级 +item.upgrade_speed_2=二级红色机器升级 +item.upgrade_speed_3=三级红色机器升级 +item.upgrade_stack_1=一级堆叠弹出升级 +item.upgrade_stack_2=二级堆叠弹出升级 +item.upgrade_stack_3=三级堆叠弹出升级 +item.upgrade_template=机器升级模板 +item.volcanic_axe=熔岩斧 +item.volcanic_pickaxe=熔岩镐 +item.wand_d=调试魔杖 +item.wand_k=建筑魔杖 +item.wand_s=结构魔杖 +item.structure_custommachine=自定义机器结构输出杖 +item.warhead_buster_large=大型掩体破坏弹头 +item.warhead_buster_medium=中型掩体破坏弹头 +item.warhead_buster_small=小型掩体破坏弹头 +item.warhead_cluster_large=大型集束弹头 +item.warhead_cluster_medium=中型集束弹头 +item.warhead_cluster_small=小型集束弹头 +item.warhead_generic_large=大型弹头 +item.warhead_generic_medium=中型弹头 +item.warhead_generic_small=小型弹头 +item.warhead_incendiary_large=大型燃烧弹头 +item.warhead_incendiary_medium=中型燃烧弹头 +item.warhead_incendiary_small=小型燃烧弹头 +item.warhead_mirv=热核弹头 +item.warhead_mirvlet=MIRV 弹头 +item.warhead_nuclear=核弹头 +item.warhead_thermo_endo=吸热弹头 +item.warhead_thermo_exo=放热弹头 +item.warhead_volcano=构造弹头 +item.waste_mox=枯竭MOX燃料 +item.waste_natural_uranium=枯竭天然铀燃料 +item.waste_plate_mox=枯竭MOX 板状燃料 +item.waste_plate_pu238be=枯竭钚238-铍 板状燃料 +item.waste_plate_pu239=枯竭高浓度钚-239 板状燃料 +item.waste_plate_ra226be=枯竭镭226-铍 板状燃料 +item.waste_plate_sa326=枯竭高浓度Sa326 板状燃料 +item.waste_plate_u233=枯竭高浓度铀-233 板状燃料 +item.waste_plate_u235=枯竭高浓度铀-235 板状燃料 +item.waste_plutonium=枯竭钚燃料 +item.waste_schrabidium=枯竭Sa326燃料 +item.waste_thorium=枯竭钍燃料 +item.waste_u235=枯竭铀-235燃料 +item.waste_u233=枯竭铀-233燃料 +item.waste_uranium=枯竭铀燃料 +item.waste_zfb_mox=枯竭的ZFB MOX燃料 +item.watch=破旧怀表 +item.watch.desc=一块蓝色的小怀表$玻璃上有一些裂缝,还有一些碎片不见了$指针定格在了2点34分。 +item.watz_pellet.boron=硼吸收靶丸 +item.watz_pellet.du=贫铀吸收靶丸 +item.watz_pellet.hes=HES Watz靶丸 +item.watz_pellet.lead=铅吸收靶丸 +item.watz_pellet.les=LES Watz靶丸 +item.watz_pellet.mes=MES Watz靶丸 +item.watz_pellet.mep=MEP Watz靶丸 +item.watz_pellet.meu=MEU Watz靶丸 +item.watz_pellet.nqd=浓缩硅岩金属 Watz靶丸 +item.watz_pellet.nqr=硅岩金属化合物 Watz靶丸 +item.watz_pellet.hen=HEN Watz靶丸 +item.watz_pellet.schrabidium=Sa326 Watz靶丸 +item.watz_pellet_depleted.boron=硼吸收靶丸(枯竭) +item.watz_pellet_depleted.du=贫铀吸收靶丸(枯竭) +item.watz_pellet_depleted.hes=HES Watz靶丸(枯竭) +item.watz_pellet_depleted.lead=铅吸收靶丸(枯竭) +item.watz_pellet_depleted.les=LES Watz靶丸(枯竭) +item.watz_pellet_depleted.mes=MES Watz靶丸(枯竭) +item.watz_pellet_depleted.mep=MEP Watz靶丸(枯竭) +item.watz_pellet_depleted.meu=MEU Watz靶丸(枯竭) +item.watz_pellet_depleted.nqd=浓缩硅岩金属 Watz靶丸(枯竭) +item.watz_pellet_depleted.nqr=硅岩金属化合物 Watz靶丸(枯竭) +item.watz_pellet_depleted.hen=HEN Watz靶丸(枯竭) +item.watz_pellet_depleted.schrabidium=Sa326 Watz靶丸(枯竭) +item.weapon_bat=板球棒 +item.weapon_bat_nail=板上钉钉 +item.weapon_golf_club=黑手党快乐杆 +item.weapon_pipe_lead=手动覆盖控制 +item.weapon_pipe_rusty=姿态调节器 +item.weapon_saw=肢解骨锯 +item.weaponized_starblaster_cell=§c星际爆能电池§r +item.wd40=VT-40防锈油 +item.wild_p=野生珀伽索斯干威士忌 +item.wings_limp=无力之翼 +item.wings_murk=暗黑之翼 +item.wire_advanced_alloy=超导体 +item.wire_aluminium=铝线 +item.wire_copper=铜线 +item.wire_dense=致密%s线 +item.wire_fine=%s线 +item.wire_gold=金线 +item.wire_magnetized_tungsten=4000K高温超导体 +item.wire_red_copper=紫铜线 +item.wire_schrabidium=Sa326线 +item.wire_tungsten=钨线 +item.wiring_red_copper=电缆卷 +item.wood_gavel=木槌 +item.wrench=管道扳手 +item.wrench_archineer=建筑工程师的扳手 +item.wrench_flipped=刺刀扳手 +item.xanax=NAXA 抗迪伽马药物 +item.xanax.desc=移除500mDRX迪伽马辐射 +item.zirconium_legs=锆质护腿 +itemGroup.tabBlocks=HBM 矿石和方块 +itemGroup.tabConsumable=HBM 食物和装备 +itemGroup.tabControl=HBM 机器项目和燃料 +itemGroup.tabMachine=HBM 机器 +itemGroup.tabMissile=HBM 导弹和卫星 +itemGroup.tabNuke=HBM 炸弹 +itemGroup.tabParts=HBM 资源和零件 +itemGroup.tabTemplate=HBM 模板 +itemGroup.tabTest=HBM的核科技mod测试项[S166、Bismarck、Nukesteve、牛牛联合汉化] +itemGroup.tabWeapon=HBM 武器和炮塔 +potion.hbm_bang= +potion.hbm_death=重度突变 +potion.hbm_lead=铅中毒 +potion.hbm_mutation=变异 +potion.hbm_phosphorus=磷烧伤 +potion.hbm_potionsickness=药水病 +potion.hbm_radaway=消辐宁 +potion.hbm_radiation=辐射 +potion.hbm_radx=抗辐射 +potion.hbm_stability=稳定 +potion.hbm_taint=污染 +potion.hbm_telekinesis= +radar.clearMap=清空地图 +radar.detectMissiles=探测导弹 +radar.detectPlayers=探测玩家 +radar.detectShells=探测炮弹 +radar.redMode=红石控制模式$开启: 基于导弹距离输出红石信号$关闭: 基于导弹级别输出红石信号 +radar.showMap=显示地图 +radar.smartMode=智能模式$有红石信号时忽略上升段的导弹 +radar.toggleGui=切换视图 +radar.target.abm=反弹道导弹 +radar.target.custom10=10号定制导弹 +radar.target.custom1015=10/15号定制导弹 +radar.target.custom15=15号定制导弹 +radar.target.custom1520=15/20号定制导弹 +radar.target.custom20=20号定制导弹 +radar.target.doomsday=末日导弹 +radar.target.shuttle=万金罗宾航天飞机 +radar.target.tier0=0级导弹 +radar.target.tier1=1级导弹 +radar.target.tier2=2级导弹 +radar.target.tier3=3级导弹 +radar.target.tier4=4级导弹 +rbmk.heat=柱体温度: %s +rbmk.boiler.water=供水速率: %s / %s +rbmk.boiler.steam=蒸汽产生速率: %s / %s +rbmk.boiler.type=蒸汽压缩等级: %s +rbmk.console.assign=将选定列分配给屏幕#%s +rbmk.console.none=关 +rbmk.console.col_temp=监测平均柱温 +rbmk.console.rod_extraction=监控平均控制棒抽出量 +rbmk.console.fuel_depletion=监测平均燃料消耗 +rbmk.console.fuel_poison=监测平均氙中毒程度 +rbmk.console.fuel_temp=监测平均燃料温度 +rbmk.control.level= +rbmk.control.red=§c红色组 +rbmk.control.yellow=§e黄色组 +rbmk.control.green=§a绿色组 +rbmk.control.blue=§1蓝色组 +rbmk.control.purple=§5紫色组 +rbmk.moderated=慢化剂 +rbmk.rod.depletion=燃料消耗: %s +rbmk.rod.xenon=氙元素堆积程度: %s +rbmk.rod.coreTemp=核心温度: %s +rbmk.rod.skinTemp=表面温度: %s / %s +rbmk.screen.core=核心:%s +rbmk.screen.depletion=消耗: %s +rbmk.screen.rod=控制:%s +rbmk.screen.temp=温度:%s +rbmk.screen.xenon=氙:%s +shape.billet=坯料 +shape.blade=扇片 +shape.blades=粉碎机刀片 +shape.block=块 +shape.dust=粉末 +shape.dusttiny=小撮粉末 +shape.hull_big=大型外壳 +shape.hull_small=小型外壳 +shape.ingot=锭 +shape.nugget=粒 +shape.quantum=量子 +shape.quart=四分之一块 +shape.ntmpipe=管 +shape.plate=板 +shape.plateTriple=铸造板 +shape.shell=外壳 +shape.stamp=锻模 +shape.wireFine=线 +shape.wireDense=致密线 +shape.wiresDense=致密线 +soundCategory.ntmMachines=NTM机器 +block.absorber=辐射吸收器 +block.absorber_green=高级辐射吸收器 +block.absorber_pink=精英辐射吸收器 +block.absorber_red=增强型辐射吸收器 +block.acid_block=酸 +block.ams_base=AMS基座 [开发中] +block.ams_emitter=AMS发射极 [开发中] +block.ams_limiter=AMS稳能器 [开发中] +block.ancient_scrap=古代废金属 +block.anvil_arsenic_bronze=砷青铜砧 +block.anvil_bismuth=铋砧 +block.anvil_bismuth_bronze=铋青铜砧 +block.anvil_desh=Desh砧 +block.anvil_dnt=双聚中子态素砧 +block.anvil_ferrouranium=铀铁合金砧 +block.anvil_iron=铁砧 +block.anvil_lead=铅砧 +block.anvil_meteorite=陨石砧 +block.anvil_murky=暗黑砧 +block.anvil_osmiridium=铱锇合金砧 +block.anvil_saturnite=土星砧 +block.anvil_schrabidate=Sa酸铁砧 +block.anvil_starmetal=星辉金属砧 +block.anvil_steel=钢砧 +block.ash_digamma=灰烬 +block.asphalt=沥青 +block.asphalt_stairs=沥青楼梯 +block.asphalt_light=发光沥青 +block.barbed_wire=带刺铁丝网 +block.barbed_wire_acid=腐蚀铁丝网 +block.barbed_wire_fire=烈焰铁丝网 +block.barbed_wire_poison=剧毒铁丝网 +block.barbed_wire_ultradeath=辐射铁丝网 +block.barbed_wire_wither=凋零铁丝网 +block.barrel_antimatter=磁约束反物质容器 +block.barrel_corroded=被腐蚀的桶 +block.barrel_iron=铁桶 +block.barrel_plastic=安全桶 +block.barrel_steel=钢桶 +block.barrel_tcalloy=锝-钢合金桶 +block.barricade=沙袋 +block.basalt=玄武岩 +block.basalt_brick=玄武岩砖 +block.basalt_polished=抛光玄武岩 +block.basalt_smooth=平滑玄武岩 +block.basalt_tiles=玄武岩砖 +block.blast_door=防爆闸门 +block.block_actinium=锕块 +block.block_advanced_alloy=高级合金块 +block.block_aluminium=铝块 +block.block_asbestos=石棉块 +block.block_australium=奥斯块 +block.block_bakelite=电木块 +block.block_beryllium=铍块 +block.block_bismuth=铋块 +block.block_boron=硼块 +block.block_c4=C-4块 +block.block_cadmium=镉块 +block.block_cap_fritz=弗里茨瓶盖方块 +block.block_cap_korl=Korl瓶盖方块 +block.block_cap_nuka=核子可乐瓶盖方块 +block.block_cap_quantum=樱桃味核子可乐瓶盖方块 +block.block_cap_rad=辐射 S~核子可乐瓶盖方块 +block.block_cap_sparkle=核子可乐瓶盖方块 +block.block_cap_star=夕阳沙士星星瓶盖方块 +block.block_cap_sunset=夕阳沙士瓶盖方块 +block.block_cdalloy=镉钢块 +block.block_cobalt=钴块 +block.block_coke.coal=煤焦炭块 +block.block_coke.lignite=褐煤焦炭块 +block.block_coke.petroleum=石油焦炭块 +block.block_coltan=钶钽铁矿块 +block.block_combine_steel=CMB钢块 +block.block_copper=铜块 +block.block_corium=熔融堆芯冷凝物 +block.block_corium_cobble=熔融物凝固石 +block.block_daffergon=达夫贡块 +block.block_desh=Desh块 +block.block_dineutronium=双聚中子态素块 +block.block_dura_steel=强化高速钢块 +block.block_electrical_scrap=电子废料块 +block.block_euphemium=Ep块 +block.block_euphemium_cluster=Ep刻蚀Sa326团 +block.block_fallout=辐射尘块 +block.block_fiberglass=玻璃纤维卷 +block.block_fluorite=氟石块 +block.block_foam=泡沫 +block.block_insulator=绝缘卷 +block.block_graphite=石墨块 +block.block_graphite_detector=反应堆中子探测棒 +block.block_graphite_drilled=钻孔石墨 +block.block_graphite_fuel=反应堆燃料 +block.block_graphite_lithium=反应堆锂燃料 +block.block_graphite_plutonium=反应堆燃料(增殖) +block.block_graphite_rod=反应堆控制棒 +block.block_graphite_source=反应堆中子源 +block.block_graphite_tritium=反应堆锂燃料(增殖) +block.block_lead=铅块 +block.block_lanthanium=镧块 +block.block_lithium=锂块 +block.block_magnetized_tungsten=磁化钨块 +block.block_meteor=陨石块 +block.block_meteor_broken=破碎的陨石块 +block.block_meteor_cobble=陨石 +block.block_meteor_molten=高温陨石 +block.block_meteor_treasure=宝藏陨石块 +block.block_mox_fuel=MOX燃料块 +block.block_neptunium=镎块 +block.block_niter=硝石块 +block.block_niter_reinforced=硝石加固块 +block.block_niobium=铌块 +block.block_plutonium=钚块 +block.block_plutonium_fuel=钚燃料块 +block.block_polonium=钋块 +block.block_polymer=聚合物块 +block.block_pu_mix=反应堆级钚块 +block.block_pu238=钚-238块 +block.block_pu239=钚-239块 +block.block_pu240=钚-240块 +block.block_ra226=镭-226块 +block.block_red_copper=紫铜块 +block.block_red_phosphorus=红磷块 +block.block_reiium=雷恩块 +block.block_rubber=橡胶块 +block.block_schrabidate=Sa酸铁块 +block.block_schrabidium=Sa326块 +block.block_schrabidium_cluster=Sa326团 +block.block_schrabidium_fuel=Sa326燃料块 +block.block_schraranium=低丰度Sa326块 +block.block_scrap=废品块 +block.block_semtex=塞姆汀块 +block.block_slag=矿渣块 +block.block_smore=S'more块 +block.block_solinium=Sa327块 +block.block_starmetal=星辉块 +block.block_steel=钢块 +block.block_sulfur=硫磺块 +block.block_tantalium=钽块 +block.block_tcalloy=锝钢块 +block.block_thorium=钍块 +block.block_thorium_fuel=钍燃料块 +block.block_titanium=钛块 +block.block_trinitite=玻璃石块 +block.block_tritium=氚单元块 +block.block_tungsten=钨块 +block.block_u233=铀-233块 +block.block_u235=铀-235块 +block.block_u238=铀-238块 +block.block_unobtainium=难得素块 +block.block_uranium=铀块 +block.block_uranium_fuel=铀燃料块 +block.block_verticium=韦德赛块 +block.block_waste=核废料块 +block.block_waste_painted=带标志的核废料块 +block.block_waste_vitrified=玻璃化核废料块 +block.block_weidanium=魏丹块 +block.block_white_phosphorus=白磷块 +block.block_yellowcake=黄饼块 +block.block_zirconium=锆块 +block.boat=船 +block.bobblehead=Bob的魔法娃娃 +block.bomb_multi=多功能炸弹 +block.bomber=坠毁轰炸机 +block.book_guide=HBM的核科技mod手册[遗留] +block.boxcar=车厢 +block.brick_asbestos=石棉砖块 +block.brick_asbestos_stairs=石棉砖楼梯 +block.brick_compound=复合网格砖块 +block.brick_compound_stairs=复合网格砖楼梯 +block.brick_concrete=混凝土砖块 +block.brick_concrete_stairs=混凝土砖楼梯 +block.brick_concrete_broken=破碎混凝土砖块 +block.brick_concrete_broken_stairs=破碎混凝土砖楼梯 +block.brick_concrete_cracked=开裂混凝土砖块 +block.brick_concrete_cracked_stairs=开裂混凝土砖楼梯 +block.brick_concrete_marked=标记混凝土砖 +block.brick_concrete_mossy=苔混凝土砖块 +block.brick_concrete_mossy_stairs=苔混凝土砖楼梯 +block.brick_ducrete=高密度贫铀混凝土砖块 +block.brick_ducrete_stairs=高密度贫铀混凝土砖楼梯 +block.brick_dungeon=硒铜砖 +block.brick_dungeon_circle=圆环硒铜块 +block.brick_dungeon_flat=硒铜块 +block.brick_dungeon_tile=硒铜瓦 +block.brick_fire=耐火砖块 +block.brick_fire_stairs=耐火砖楼梯 +block.brick_jungle=硫砷钢砖块 +block.brick_jungle_circle=机械师之环 +block.brick_jungle_cracked=开裂硫砷钢砖块 +block.brick_jungle_fragile=粉碎硫砷钢砖块 +block.brick_jungle_glyph=硫砷钢石雕砖块 +block.brick_jungle_lava=岩浆硫砷钢砖块 +block.brick_jungle_mystic=奥术硫砷钢砖块 +block.brick_jungle_ooze=放射硫砷钢砖块 +block.brick_jungle_trap=陷阱硫砷钢砖块 +block.brick_light=轻质砖块 +block.brick_light_stairs=轻质砖楼梯 +block.brick_obsidian=黑曜石砖块 +block.brick_obsidian_stairs=黑曜石砖楼梯 +block.brick_red=红房间砖块 +block.brick_slab.brick_asbestos=石棉砖台阶 +block.brick_slab.brick_compound=复合网格砖台阶 +block.brick_slab.brick_fire=耐火砖台阶 +block.brick_slab.brick_light=轻质砖台阶 +block.brick_slab.brick_obsidian=黑曜石砖台阶 +block.brick_slab.reinforced_brick=强化石头台阶 +block.brick_slab.reinforced_stone=致密石头台阶 +block.broadcaster_pc=腐败广播 +block.burning_earth=燃烧草地 +block.c4= +block.cable_detector=红石电源开关 +block.cable_diode=紫铜二极管 +block.cable_switch=电源开关 +block.capacitor_bus=电容总线 +block.capacitor_bus.desc=电容器的输出方块$可以连成一条直线 +block.capacitor_copper=铜电容 +block.capacitor_gold=金电容 +block.capacitor_niobium=铌电容 +block.capacitor_schrabidate=Sa酸铁电容 +block.capacitor_tantalium=钽电容 +block.capacitor.desc=输入:顶部$输出:底部,通过电容总线 +block.charge_c4=炸药包 +block.charge_dynamite=定时炸弹 +block.charge_miner=定时采矿炸药 +block.charge_semtex=塞姆汀采矿炸药 +block.charger=充电站 +block.cheater_virus=冻结Ep +block.cheater_virus_seed=不稳定的Sa326化Ep块 +block.chimney_brick=烟囱 +block.chimney_brick.desc=使用排气管连接污染机器$减少75%的污染排放 +block.chimney_industrial=工业烟囱 +block.chimney_industrial.desc=使用排气管连接污染机器$减少90%的污染排放 +block.chlorine_gas=氯气 +block.cluster_aluminium=铝矿簇 +block.cluster_copper=铜矿簇 +block.cluster_depth_iron=深层铁矿簇 +block.cluster_depth_titanium=深层钛矿簇 +block.cluster_depth_tungsten=深层钨矿簇 +block.cluster_iron=铁矿簇 +block.cluster_titanium=钛矿簇 +block.custom_machine_anchor=自定义机器结构定位锚 +block.cm_block.alloy=高级合金机器外壳 +block.cm_block.desh=Desh机器外壳 +block.cm_block.steel=钢制机器外壳 +block.cm_block.tcalloy=锝钢机器外壳 +block.cm_circuit.aluminium=一级电路块 +block.cm_circuit.copper=二级电路块 +block.cm_circuit.gold=四级电路块 +block.cm_circuit.red_copper=三级电路块 +block.cm_circuit.schrabidium=五级电路块 +block.cm_engine.bismuth=铋电机组 +block.cm_engine.desh=Desh电机组 +block.cm_engine.standard=电机组 +block.cm_flux=中子接收器 +block.cm_heat=热量接收器 +block.cm_port.alloy=高级合金端口 +block.cm_port.desh=Desh端口 +block.cm_port.steel=钢制端口 +block.cm_port.tcalloy=锝钢端口 +block.cm_sheet.alloy=高级合金建筑板 +block.cm_sheet.desh=Desh建筑板 +block.cm_sheet.steel=钢建筑板 +block.cm_sheet.tcalloy=锝钢建筑板 +block.cm_tank.alloy=高级合金储罐 +block.cm_tank.desh=Desh储罐 +block.cm_tank.steel=钢制储罐 +block.cm_tank.tcalloy=锝钢储罐 +block.cmb_brick=CMB钢瓦块 +block.cmb_brick_reinforced=加固CMB钢砖块 +block.compact_launcher=紧凑型发射台 +block.concrete=混凝土瓦块 +block.concrete_asbestos=石棉混凝土 +block.concrete_asbestos_stairs=石棉混凝土楼梯 +block.concrete_brick_slab.brick_concrete=混凝土砖台阶 +block.concrete_brick_slab.brick_concrete_broken=破碎混凝土砖台阶 +block.concrete_brick_slab.brick_concrete_cracked=开裂混凝土砖台阶 +block.concrete_brick_slab.brick_concrete_mossy=苔混凝土砖台阶 +block.concrete_brick_slab.brick_ducrete=高密度贫铀混凝土砖台阶 +block.concrete_colored.black=黑色混凝土 +block.concrete_colored.blue=蓝色混凝土 +block.concrete_colored.brown=棕色混凝土 +block.concrete_colored.cyan=青色混凝土 +block.concrete_colored.gray=灰色混凝土 +block.concrete_colored.green=绿色混凝土 +block.concrete_colored.lightBlue=淡蓝色混凝土 +block.concrete_colored.lime=黄绿色混凝土 +block.concrete_colored.magenta=品红色混凝土 +block.concrete_colored.orange=橙色混凝土 +block.concrete_colored.pink=粉色混凝土 +block.concrete_colored.purple=紫色混凝土 +block.concrete_colored.red=红色混凝土 +block.concrete_colored.silver=淡灰色混凝土 +block.concrete_colored.white=白色混凝土 +block.concrete_colored.yellow=黄色混凝土 +block.concrete_colored_ext.bronze=建筑工指定混凝土-青铜板材 +block.concrete_colored_ext.hazard=建筑工指定混凝土-危险地带 +block.concrete_colored_ext.indigo=建筑工指定混凝土-深靛蓝 +block.concrete_colored_ext.machine=建筑工指定混凝土-工业风 +block.concrete_colored_ext.machine_stripe=建筑工指定混凝土-工业条纹 +block.concrete_colored_ext.pink=建筑工指定混凝土-猛男粉 +block.concrete_colored_ext.purple=建筑工指定混凝土-神秘紫 +block.concrete_colored_ext.sand=建筑工指定混凝土-沙漠风暴 +block.concrete_pillar=钢筋混凝土柱 +block.concrete_slab.asphalt=沥青台阶 +block.concrete_slab.concrete=混凝土瓦块台阶 +block.concrete_slab.concrete_asbestos=石棉混凝土台阶 +block.concrete_slab.concrete_smooth=混凝土台阶 +block.concrete_slab.ducrete=高密度贫铀混凝土瓷砖台阶 +block.concrete_slab.ducrete_smooth=高密度贫铀混凝土台阶 +block.concrete_smooth=混凝土 +block.concrete_smooth_stairs=混凝土楼梯 +block.concrete_stairs=混凝土瓦块楼梯 +block.concrete_super=Über混凝土 +block.concrete_super_broken=发霉的Über混凝土残骸 +block.conveyor=输送带 +block.conveyor.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 +block.conveyor_chute=输送带滑槽 +block.conveyor_chute.desc=向下移动物品$最底部的滑槽将起到普通传送带的作用 +block.conveyor_double=双轨道输送带 +block.conveyor_double.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 +block.conveyor_express=快速输送带 +block.conveyor_express.desc=快速移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按Shift键转弯 +block.conveyor_lift=垂直输送带 +block.conveyor_lift.desc=向上移动物品$至少需要两个块才能正常工作 +block.conveyor_triple=三轨道输送带 +block.conveyor_triple.desc=移动掉在上面的物品$可以用螺丝刀顺时针旋转$用螺丝刀按住Shift键单击以转弯 +block.corium_block=堆芯熔融物 +block.crane_boxer=输送带打包机 +block.crane_boxer.desc=将可配置数量的堆叠装载到沿着传送带移动的箱子中$用螺丝刀右键单击以设置输入侧$用螺丝起子平移单击以设置输出侧$单击两次以设置相反侧 +block.crane_extractor=输送带提取器 +block.crane_extractor.desc=从库存中取出物品并将其放置在传送带上$最多有9个带黑白名单的过滤器插槽$用螺丝刀右键单击以设置输出侧$手持螺丝刀按住Shift单击以设置输入侧$单击两次以设置相反侧 +block.crane_grabber=输送带抓斗 +block.crane_grabber.desc=从经过的输送带中取出物品并将其放入容器$将只从最近的通道中取出物品$最多有9个带黑白名单的过滤槽$用螺丝刀右键单击以设置输入侧$用螺丝起子平移单击以设置输出侧$单击两次以设置对侧 +block.crane_inserter=输送带导入器 +block.crane_inserter.desc=接受输送带上的物品并将其放入容器中$用螺丝刀右键单击以设置输入侧$用螺丝刀单击以设置输出侧$单击两次以设置相反侧 +block.crane_partitioner=酸化器输入分隔器 +block.crane_partitioner.desc=接受并存储至多9种输入矿物酸化器的物品$并在物品数量达到配方要求时将其输出$无配方物品也会被存储,需要从侧面导出 +block.crane_router=输送带分拣机 +block.crane_router.desc=根据定义的条件对项目排序$侧面可以定义为黑名单、白名单或通配符$只有在没有其他筛选器匹配的情况下才选择通配符侧面 +block.crane_splitter=输送带分离器 +block.crane_splitter.desc=将物品分开并均匀堆放在两条传送带上$其本身就是一条传送带,因此它可以直接输入到插入器或分拣器中 +block.crane_unboxer=输送带解包机 +block.crane_unboxer.desc=接收打包好的物品并解包$用螺丝刀右键单击以设置输出侧$手持螺丝刀按住Shift单击以设置输入侧$单击两次以设置相反侧 +block.crashed_bomb=哑弹 +block.crate=补给箱 +block.crate_ammo=星辉补给箱 +block.crate_can=罐头补给箱 +block.crate_desh=Desh板条箱 +block.crate_iron=铁箱 +block.crate_jungle=硫砷钢箱 +block.crate_lead=危险品补给箱 +block.crate_metal=机器补给箱 +block.crate_red=红色补给箱 +block.crate_steel=钢箱 +block.crate_template=模板箱 +block.crate_tungsten=钨箱 +block.crate_weapon=武器补给箱 +block.crystal_hardened=硬化黑水晶 +block.crystal_pulsar=脉动水晶 +block.crystal_virus=黑水晶 +block.deco_aluminium=铝装饰块 +block.deco_asbestos=石棉瓦 +block.deco_beryllium=铍装饰块 +block.deco_computer.ibm_300pl=IBM个人电脑300PL +block.deco_crt=老CRT显示屏 +block.deco_emitter=装饰性发光体 +block.deco_lead=铅装饰块 +block.deco_rbmk=RBMK装饰块 +block.deco_rbmk_smooth=平滑RBMK装饰块 +block.deco_red_copper=紫铜装饰块 +block.deco_pipe=钢制管道 +block.deco_pipe_rusted=生锈的钢制管道 +block.deco_pipe_green=绿色钢制管道 +block.deco_pipe_green_rusted=生锈的绿色钢制管道 +block.deco_pipe_red=红色钢制管道 +block.deco_pipe_marked=气体管道 +block.deco_pipe_framed=钢制管道 (镶框) +block.deco_pipe_framed_rusted=生锈的钢制管道 (镶框) +block.deco_pipe_framed_green=绿色钢制管道 (镶框) +block.deco_pipe_framed_green_rusted=生锈的绿色钢制管道 (镶框) +block.deco_pipe_framed_red=红色钢制管道 (镶框) +block.deco_pipe_framed_marked=气体管道 (镶框) +block.deco_pipe_quad=钢制管道束 +block.deco_pipe_quad_rusted=生锈的钢制管道束 +block.deco_pipe_quad_green=绿色钢制管道束 +block.deco_pipe_quad_green_rusted=生锈的绿色钢制管道束 +block.deco_pipe_quad_red=红色钢制管道束 +block.deco_pipe_quad_marked=气体管道束 +block.deco_pipe_rim=钢制管道 (镶边) +block.deco_pipe_rim_rusted=生锈的钢制管道 (镶边) +block.deco_pipe_rim_green=绿色钢制管道 (镶边) +block.deco_pipe_rim_green_rusted=生锈的绿色钢制管道 (镶边) +block.deco_pipe_rim_red=红色钢制管道 (镶边) +block.deco_pipe_rim_marked=气体管道 (镶边) +block.deco_steel=钢装饰块 +block.deco_titanium=钛装饰块 +block.deco_toaster=坏掉的烤面包机 +block.deco_tungsten=钨装饰块 +block.decon=玩家去污器 +block.depth_brick=深层岩石砖 +block.depth_dnt=DNT加固深层岩石砖 +block.depth_nether_brick=下界深层岩石砖 +block.depth_nether_tiles=下界深层岩石瓷砖 +block.depth_tiles=深层岩石瓷砖 +block.det_charge=炸药 +block.det_cord=炸药引信 +block.det_miner=采矿炸药 +block.det_nuke=核炸药 +block.dfc_core=暗核聚变堆核心 +block.dfc_emitter=DFC发射器 +block.dfc_injector=DFC燃料喷射器 +block.dfc_receiver=DFC接收器 +block.dfc_stabilizer=DFC稳定器 +block.dirt_dead=泥渣 +block.dirt_oily=油泥 +block.drill_pipe=钻杆 +block.drone_crate=运输无人机坞 +block.drone_crate.desc=运输无人机的装货点和卸货点$也作为航路点使 +block.drone_crate_provider=物流供应箱 +block.drone_crate_provider.desc=向物流网络提供物品$物流无人机会尝试将物品从物流供应箱移至物流请求箱 +block.drone_crate_requester=物流请求箱 +block.drone_crate_requester.desc=从物流网络请求物品$若物品栏内没有标记的物品,则会请求该物品 +block.drone_dock=物流无人机坞 +block.drone_dock.desc=物流无人机的生成点$只能检测5区块半径内的物流供应箱和物流请求箱$每个连接中物流无人机最多跟随10个路径点 +block.drone_waypoint=运输无人机航路点 +block.drone_waypoint.desc=运输无人机的航路点$使用运输无人机链接器设置路径$按顺序单击每个航路点和坞即可创建路径$Shift+右键单击以清除保存的位置$右键单击或Shift+右键单击航路点以更改航路点的高度偏移 +block.drone_waypoint_request=物流无人机航路点 +block.door_bunker=仓门 +block.door_metal=金属门 +block.door_office=办公室门 +block.door_red=红门 +block.ducrete=高密度贫铀混凝土瓷砖 +block.ducrete_stairs=高密度贫铀混凝土瓷砖楼梯 +block.ducrete_smooth=高密度贫铀混凝土 +block.ducrete_smooth_stairs=高密度贫铀混凝土楼梯 +block.dummy_block=虚拟方块 +block.dummy_port=虚拟方块[电力接口] +block.dungeon_chain=金属链 +block.dynamite=炸药 +block.emp_bomb=EMP炸弹 +block.factory_advanced_conductor=高级工厂电力端口 +block.factory_advanced_core=高级工厂核心组件 +block.factory_advanced_furnace=高级工厂端口 +block.factory_advanced_hull=高级工厂外壳 +block.factory_titanium_conductor=工厂电力端口 +block.factory_titanium_core=工厂核心组件 +block.factory_titanium_furnace=工厂端口 +block.factory_titanium_hull=工厂外壳 +block.fallout=辐射尘 +block.fan=风扇 +block.fan.desc=使用红石激活$将实体推至最多10个方块外$用螺丝刀右键点击即可翻转 +block.fence_metal=铁丝网围栏 +block.fence_metal_post=铁丝网围栏立柱 +block.field_disturber=高能场干扰机 +block.filing_cabinet.green=蒙尘的文件柜 +block.filing_cabinet.steel=钢制文件柜 +block.fire_digamma=挥之不去的迪伽马之火 +block.fire_door=防火门 +block.fireworks=烟花箱 +block.fireworks.charges=已充能: %s +block.fireworks.message=信息: %s +block.fireworks.color=颜色: %s +block.fissure_bomb=裂缝炸弹 +block.flame_war=盒中论战 +block.float_bomb=悬浮炸弹 +block.floodlight=电力泛光灯 +block.fluid_duct=通用流体管道 +block.fluid_duct_box=通用流体管道(方形) +block.fluid_duct_exhaust=排气管 +block.fluid_duct_gauge=流量计管 +block.fluid_duct_gauge.desc=显示每个游戏刻在管网有多少流体移动的管道$由桶或罐连接的分离网络被视为一个共享网络。 +block.fluid_duct_neo=通用流体管道 +block.fluid_duct_paintable=可喷漆涂层通用流体导管 +block.fluid_duct_solid=带涂层的通用流体导管 +block.fluid_switch=红石流体阀 +block.fluid_valve=流体阀 +block.foam_layer=泡沫层 +block.foundry_basin=铸造盘 +block.foundry_channel=铸造浇道 +block.foundry_tank=铸造池 +block.foundry_mold=浅铸造池 +block.foundry_outlet=浇筑出口 +block.foundry_slagtap=炉渣出口 +block.fraction_spacer=分馏塔分隔器 +block.frozen_dirt=冰冻土 +block.frozen_grass=冰冻草 +block.frozen_log=冰冻原木 +block.frozen_planks=冰冻木板 +block.machine_furnace_brick_off=砖砌炉 +block.machine_furnace_brick_on=砖砌炉 +block.furnace_combination=复式炼焦炉 +block.furnace_combination.desc=一种可以生产木炭和煤焦炭的大熔炉$产生流体副产品$传热速率:ΔT*0.25 TU/T +block.furnace_iron=铁炉 +block.furnace_iron.desc=更大、效率更高的炉子,在闲置时不会浪费燃料。 +block.furnace_steel=钢炉 +block.furnace_steel.desc=非常大的熔炉,冶炼矿石时可提供加成。$需要外部热源$传热率:ΔT*0.05tu/T$(Δ表示差值,T表示温度) +block.fusion_center=中心磁铁 +block.fusion_conductor=超导磁体 +block.fusion_conductor_welded=超导磁体(焊接) +block.fusion_core=聚变反应堆控制器 +block.fusion_hatch=聚变反应堆端口 +block.fusion_heater=等离子加热器 +block.fusion_motor=磁体马达 +block.fwatz_computer=Watz聚变反应堆计算矩阵 +block.fwatz_conductor=4000K超导磁体 +block.fwatz_cooler=冷却液罐壳 +block.fwatz_core=Watz聚变反应堆控制器 +block.fwatz_hatch=Watz聚变反应堆端口 +block.fwatz_plasma=不稳定反Sa326等离子体 +block.fwatz_scaffold=Watz聚变反应堆结构支架 +block.fwatz_tank=冷却液罐 +block.gas_asbestos=石棉粉尘 +block.gas_coal=空气中的煤尘 +block.gas_duct=输气管道 +block.gas_duct_solid=密封输气管 +block.gas_explosive=爆炸性气体 +block.gas_flammable=可燃气体 +block.gas_meltdown=熔毁气体 +block.gas_monoxide=一氧化碳 +block.gas_radon=氡气 +block.gas_radon_dense=高浓度氡气 +block.gas_radon_tomb=古墓气体 +block.geiger=盖革计数器 +block.glass_ash=灰烬玻璃 +block.glass_boron=硼玻璃 +block.glass_lead=铅玻璃 +block.glass_polonium=钋玻璃 +block.glass_quartz=石英玻璃 +block.glass_trinitite=核融玻璃 +block.glass_uranium=铀玻璃 +block.glyphid_base=异虫蜂巢块 +block.glyphid_spawner=异虫蜂巢繁殖方块 +block.gneiss_brick=页岩砖 +block.gneiss_chiseled=錾制页岩砖 +block.gneiss_tile=页岩瓷砖 +block.gravel_diamond=钻石砂砾 +block.gravel_obsidian=碎黑曜石 +block.hadron_access=粒子加速器接入终端 +block.hadron_analysis=粒子加速器分析室壁 +block.hadron_analysis_glass=粒子加速器分析室窗口 +block.hadron_coil_alloy=致密超导线圈 +block.hadron_coil_chlorophyte=致密叶绿线圈 +block.hadron_coil_gold=致密金线圈 +block.hadron_coil_magtung=致密4000K超导线圈 +block.hadron_coil_mese=致密Mese线圈 +block.hadron_coil_neodymium=致密钕线圈 +block.hadron_coil_schrabidate=致密Sa酸铁线圈 +block.hadron_coil_schrabidium=致密Sa326线圈 +block.hadron_coil_starmetal=致密星辉线圈 +block.hadron_cooler=粒子加速器冷却装置 +block.hadron_cooler.desc=冷却功率:10$过冷阈值:10$冷却加成:+10%%$过冷惩罚:-25%% +block.hadron_cooler_mk2=粒子加速器冷却装置-回文特制 +block.hadron_cooler_mk2.desc=冷却功率:5$效率功能:2-(冷却-15)²/225$最高惩罚:-90%% +block.hadron_core=粒子加速器核心组件 +block.hadron_diode=肖基特二极管 +block.hadron_plating=粒子加速器镀层 +block.hadron_plating_black=粒子加速器镀层 (黑) +block.hadron_plating_blue=粒子加速器镀层 (蓝) +block.hadron_plating_glass=粒子加速器镀层 (窗口) +block.hadron_plating_striped=粒子加速器镀层(低温危险) +block.hadron_plating_voltz=粒子加速器镀层 (VOLTZ) +block.hadron_plating_yellow=粒子加速器镀层(Yello染料) +block.hadron_power=粒子加速器电源接口 +block.hadron_power_10m=粒子加速器电源接口(10MHE) +block.hadron_power_100m=粒子加速器电源接口(100MHE) +block.hadron_power_1g=粒子加速器电源接口(1GHE) +block.hadron_power_10g=粒子加速器电源接口(10GHE) +block.hazmat=防辐射布块 +block.heater_electric=电加热器 +block.heater_electric.desc=利用电能产生热量$以85%的效率接受来自底部的热量$可使用螺丝刀进行配置。 +block.heater_firebox=燃烧室 +block.heater_firebox.desc=燃烧固体燃料以产生热量。 +block.heater_heatex=换热加热器 +block.heater_heatex.desc=从热流体中产生热量。 +block.heater_oilburner=流体燃烧器 +block.heater_oilburner.desc=燃烧可燃液体产生热量。 +block.heater_oven=加热炉 +block.heater_oven.desc=燃烧固体燃料以产生热量$以50%的效率接受来自底部的热量。 +block.hev_battery=盔甲电池 +block.machine_hydrotreater=加氢装置 +block.impact_dirt=烧焦的泥土 +block.icf=惯性约束聚变反应堆(ICF) +block.icf_block=ICF激光器 +block.icf_component=ICF稳定元件 +block.icf_component.structure=ICF外壳 +block.icf_component.structure_bolted=ICF外壳(铆接) +block.icf_component.vessel=ICF密封容器壁 +block.icf_component.vessel_welded=ICF密封容器壁(焊接) +block.icf_controller=ICF激光器控制器 +block.icf_laser_component.capacitor=ICF激光器电容 +block.icf_laser_component.casing=ICF激光器外壳 +block.icf_laser_component.cell=ICF激光器单元 +block.icf_laser_component.emitter=ICF激光器闪光管 +block.icf_laser_component.port=ICF激光器端口 +block.icf_laser_component.turbo=ICF激光器涡轮增压器 +block.iter=聚变反应堆 +block.ladder_aluminium=铝制梯子 +block.ladder_cobalt=钴制梯子 +block.ladder_copper=铜制梯子 +block.ladder_gold=金制梯子 +block.ladder_iron=铁制梯子 +block.ladder_lead=铅制梯子 +block.ladder_steel=钢制梯子 +block.ladder_sturdy=坚固木头制梯子 +block.ladder_titanium=钛制梯子 +block.ladder_tungsten=钨制梯子 +block.lamp_demon=恶魔核心灯 +block.lamp_tritium_blue_off=蓝色氚灯 +block.lamp_tritium_blue_on=蓝色氚灯 +block.lamp_tritium_green_off=绿色氚灯 +block.lamp_tritium_green_on=绿色氚灯 +block.lantern=路灯 +block.lantern_behemoth=旧路灯 +block.launch_pad=导弹发射台 +block.launch_pad_large=发射台 +block.launch_pad_rusted=锈迹斑斑的发射台 +block.launch_table=大型发射台 +block.leaves_layer=落叶 +block.lox_barrel=液氧桶 +block.machine_amgen=环境辐射发电机 +block.machine_arc_furnace=大型电弧炉 +block.machine_arc_furnace_off=电弧炉 +block.machine_arc_furnace_on=电弧炉 +block.machine_arc_welder=电弧焊机 +block.machine_armor_table=装甲改装台 +block.machine_ashpit=储灰槽 +block.machine_ashpit.desc=收集来自燃烧室和加热炉的灰烬 +block.machine_assembler=装配机 +block.machine_assemfac=装配厂 +block.machine_autocrafter=自动工作台 +block.machine_autosaw=自动嗡嗡锯 +block.machine_autosaw.desc=砍伐附近的植物,重新种植树木$接受:$-木油$-乙醇$-鱼油$-重油 +block.machine_bat9000=巨尻-9000 储罐 +block.machine_battery=蓄电池 +block.machine_battery_potato=马铃薯电池组 +block.machine_boiler=大型锅炉 +block.machine_boiler.desc=可以烧水或加热油的大型锅炉$需要外部热源$传热速率:ΔT*0.01 TU/T +block.machine_boiler_electric_off=电锅炉 +block.machine_boiler_electric_on=电锅炉 +block.machine_boiler_off=锅炉 +block.machine_boiler_on=锅炉 +block.machine_catalytic_cracker=催化裂化塔 +block.machine_catalytic_reformer=催化重整器 +block.machine_centrifuge=离心机 +block.machine_chemfac=大型化工厂 +block.machine_chemplant=化工厂 +block.machine_chungus=“利维坦”巨型汽轮机 +block.machine_chungus.desc=效率: 85%% +block.machine_coal_off=火力发电机 +block.machine_coal_on=火力发电机 +block.machine_coker=焦化装置 +block.machine_coker.desc=炼焦,并产生各类流体副产品$需要外部热源$传热速率:ΔT*0.025 TU/T +block.machine_combine_factory=CMB炼钢炉 +block.machine_combustion_engine=工业内燃机 +block.machine_compressor=压缩机 +block.machine_condenser=蒸汽冷凝器 +block.machine_condenser_powered=大功率蒸汽冷凝器 +block.machine_controller=反应堆遥控模块 +block.machine_converter_he_rf=HE→RF转换器 +block.machine_converter_rf_he=RF→HE转换器 +block.machine_conveyor_press=输送带锻压机 +block.machine_conveyor_press.desc=传送带从左向右移动$手持锻模右键单击以安装$使用螺丝刀移除锻模 +block.machine_crucible=坩埚 +block.machine_crystallizer=矿物酸化器 +block.machine_cyclotron=回旋加速器 +block.machine_detector=功率检测器 +block.machine_deuterium_extractor=氘提取器 +block.machine_deuterium_tower=氘萃取塔 +block.machine_diesel=柴油发电机 +block.machine_difurnace_extension=高炉烟道 +block.machine_difurnace_off=高炉 +block.machine_difurnace_on=高炉 +block.machine_difurnace_rtg_off=核高炉 +block.machine_difurnace_rtg_on=核高炉 +block.machine_dineutronium_battery=Spark蓄电池 +block.machine_drain=排液管 +block.machine_drill=自动采矿钻机 +block.machine_electric_furnace_off=电炉 +block.machine_electric_furnace_on=电炉 +block.machine_electrolyser=电解机 +block.machine_epress=电动锻压机 +block.machine_excavator=大型采矿钻机 +block.machine_exposure_chamber=曝光室 +block.machine_fel=FEL自由电子激光器 +block.machine_fensu=FEnSU飞轮储能系统 +block.machine_flare=高架火炬 +block.machine_fluidtank=储罐 +block.machine_forcefield=力场发生器 +block.machine_fraction_tower=分馏塔 +block.machine_fracking_tower=水力压裂塔 +block.machine_funnel=组合漏斗 +block.machine_funnel.desc=自动在2x2或3x3的合成格中压缩内部物品$顶面:输入$底面:输出$侧面:输出内部原料 +block.machine_gascent=气体离心机 +block.machine_generator=核反应堆[旧] +block.machine_geo=地热发电机 +block.machine_hephaestus=地热换热器 +block.machine_icf_press=ICF燃料靶丸制造器 +block.machine_icf_press.desc=用于装填ICF靶丸$左侧燃料槽接收顶面/底面输入,右侧燃料槽接收侧面输入$μ子胶囊和空靶丸可从任意面输入 +block.machine_industrial_boiler=工业锅炉 +block.machine_industrial_boiler.desc=可以烧水或加热油的大型锅炉$需要外部热源$传热率:ΔT*0.01 TU/T$不会爆炸 +block.machine_industrial_generator=工业发电机 +block.machine_keyforge=锁匠桌 +block.machine_large_turbine=工业汽轮机 +block.machine_large_turbine.desc=效率: 100%% +block.machine_liquefactor=工业液化机 +block.machine_liquefactor.desc=强大的通用机器,可将物品转化为液体$配有多功能催化组件、加热元件和用于石化液化的内置水合器。 +block.machine_lithium_battery=锂蓄电池 +block.machine_microwave=微波炉 +block.machine_mining_laser=采矿激光 +block.machine_minirtg=放射性同位素电池 +block.machine_missile_assembly=导弹装配台 +block.machine_mixer=工业搅拌机 +block.machine_nuke_furnace_off=核熔炉 +block.machine_nuke_furnace_on=核熔炉 +block.machine_orbus=重型磁约束储罐 +block.machine_ore_slopper=基岩矿石处理机 +block.machine_powerrtg=PT同位素电池 +block.machine_press=火力锻压机 +block.machine_puf6_tank=六氟化钚储罐 +block.machine_pumpjack=石油钻机 +block.machine_radar=雷达 +block.machine_radar_large=大型雷达 +block.machine_radgen=辐射能量发电机 +block.machine_radiolysis=放射性同位素热电机和辐射裂解室 +block.machine_reactor=增殖反应堆 +block.machine_reactor_small=研究型反应堆 +block.machine_refinery=炼油厂 +block.machine_reix_mainframe=Rei-X主机[开发中] +block.machine_rtg_blue=对流发电机 +block.machine_rtg_cyan=Sa326衰变发电机 [开发中] +block.machine_rtg_furnace_off=放射性同位素热力炉[RTG] +block.machine_rtg_furnace_on=放射性同位素热力炉[RTG] +block.machine_rtg_green=韦德赛富集发电机 +block.machine_rtg_grey=放射性同位素发电机 +block.machine_rtg_orange=强RT发电机 +block.machine_rtg_purple=反物质湮灭发发电机 +block.machine_rtg_red=离子发生器 +block.machine_rtg_yellow=奥斯超级燃料反应堆 +block.machine_satlinker=卫星ID管理器 +block.machine_sawmill=斯特林锯木机 +block.machine_sawmill.desc=需要外部热源$传热速率:T*0.1 TU/T$最小进气量:100 TU/T,最大进气量:300 TU/T +block.machine_schrabidium_battery=Sa326蓄电池 +block.machine_schrabidium_transmutator=Sa326嬗变装置 +block.machine_selenium=星型发动机 +block.machine_shredder=粉碎机 +block.machine_silex=SILEX激光同位素分离室 +block.machine_siren=警报器 +block.machine_solar_boiler=太阳能锅炉 +block.machine_soldering_station=焊接台 +block.machine_solidifier=工业固化机 +block.machine_solidifier.desc=配备冷却系统和其他多功能工具的通用机器,用于使用冷冻和石化聚合等多种工艺将流体转化为固体。 +block.machine_spp_bottom=ZPE电位发生器 [底部] +block.machine_spp_top=ZPE电位发生器 [顶部] +block.machine_steam_engine=蒸汽机 +block.machine_steam_engine.desc=效率:85% +block.machine_stirling=斯特林发电机 +block.machine_stirling.desc=它将热量转化为能量。需要外部热源$传热率:T*0.1 TU/T$最大进气量:300 TU/T$效率:50% +block.machine_stirling_creative=创造斯特林发动机 +block.machine_stirling_creative.desc=将热量转化为能量。需要外部热源$传热率:T*0.1 TU/T$无限吸热/T$效率:100% +block.machine_stirling_steel=重型斯特林发电机 +block.machine_stirling_steel.desc=它将热量转化为能量。需要外部热源$使用更重的齿轮来支持更高的温度$传热率:T*0.1 TU/T$最大进气量:1500 TU/T$效率:50% +block.machine_storage_drum=核废料处理桶 +block.machine_strand_caster=连续铸造机 +block.machine_telelinker=炮塔ID管理器 +block.machine_teleporter=传送机 +block.machine_tower_large=冷却塔 +block.machine_tower_small=辅助冷却塔 +block.machine_transformer=10k-20Hz变频器 +block.machine_transformer_20=10k-1Hz变频器 +block.machine_transformer_dnt=DNT-20Hz变频器 +block.machine_transformer_dnt_20=DNT-1Hz变频器 +block.machine_turbine=汽轮机 +block.machine_turbine.desc=效率: 85%% +block.machine_turbinegas=联合循环燃气轮机 +block.machine_turbofan=涡扇发动机 +block.machine_uf6_tank=六氟化铀储罐 +block.machine_vacuum_distill=真空炼油厂 +block.machine_waste_drum=乏燃料池 +block.machine_wood_burner=火力发电机 +block.machine_wood_burner.desc=燃烧物品时100HE/t,同时$收集灰烬$可以以40mb/s的速度燃烧流体,效率为50%% +block.machine_well=钻油塔 +block.machine_zirnox=锆诺克斯核反应堆 +block.marker_structure=多方块结构信标 +block.mass_storage=大规模存储单元 +block.meteor_battery=星辉静电发生器 +block.meteor_brick=陨石砖 +block.meteor_brick_chiseled=錾制陨石砖 +block.meteor_brick_cracked=裂纹陨石砖 +block.meteor_brick_mossy=苔藓陨石砖 +block.meteor_pillar=竖纹陨石砖 +block.meteor_polished=平滑陨石块 +block.meteor_spawner=赛博螃蟹组装机 +block.mine_ap=反步兵地雷 +block.mine_fat=核地雷 +block.mine_he=反坦克地雷 +block.mine_shrap=破片地雷 +block.moon_turf=月壤 +block.mud_block=毒泥 +block.muffler=消声器 +block.mush=发光真菌 +block.ntm_dirt=泥土 +block.nuke_boy=小男孩 +block.nuke_custom=自定义核弹 +block.nuke_fleija=芙蕾雅 +block.nuke_fstbmb=野火炸弹 +block.nuke_gadget=小玩意 +block.nuke_man=胖子 +block.nuke_mike=常春藤迈克 +block.nuke_n2=N2炸弹 +block.nuke_n45=N45水雷 +block.nuke_prototype=原型 +block.nuke_solinium=蔚蓝洗礼 +block.nuke_tsar=沙皇炸弹 +block.oil_duct=输油管 +block.oil_duct_solid=粗输油管 +block.oil_pipe=原油抽取管 +block.oil_spill=泄漏的原油 +block.ore_alexandrite=亚历山大变石矿 +block.ore_aluminium=铝矿石 +block.ore_asbestos=石棉矿 +block.ore_australium=奥斯矿石 +block.ore_basalt_asbestos=富含石棉的玄武岩 +block.ore_basalt_fluorite=富含氟石的玄武岩 +block.ore_basalt_gem=富含宝石的玄武岩 +block.ore_basalt_molysite=富含氯化铁的玄武岩 +block.ore_basalt_sulfur=富含硫的玄武岩 +block.ore_bedrock=基岩矿石 +block.ore_bedrock_coltan=基岩钶钽铁矿 +block.ore_bedrock_oil=基岩油层 +block.ore_beryllium=铍矿石 +block.ore_cinnebar=朱砂矿石 +block.ore_coal_oil=含油煤矿石 +block.ore_coal_oil_burning=燃烧的含油煤矿石 +block.ore_cobalt=钴矿石 +block.ore_coltan=钶钽铁矿 +block.ore_copper=铜矿石 +block.ore_daffergon=达夫贡矿石 +block.ore_depth_borax=深层硼砂矿 +block.ore_depth_cinnebar=深层朱砂矿石 +block.ore_depth_nether_neodymium=深层钕矿石 +block.ore_depth_zirconium=深层锆矿石 +block.ore_fluorite=氟石矿石 +block.ore_gneiss_asbestos=石棉矿页岩 +block.ore_gneiss_copper=铜矿页岩 +block.ore_gneiss_gas=气页岩 +block.ore_gneiss_gold=金矿页岩 +block.ore_gneiss_iron=铁矿页岩 +block.ore_gneiss_lithium=锂矿页岩 +block.ore_gneiss_rare=稀土矿页岩 +block.ore_gneiss_schrabidium=Sa326矿页岩 +block.ore_gneiss_uranium=铀矿页岩 +block.ore_gneiss_uranium_scorched=烧焦的铀矿页岩 +block.ore_lead=铅矿石 +block.ore_lignite=褐煤矿石 +block.ore_meteor.aluminium=铝矿陨石 +block.ore_meteor.cobalt=钴矿陨石 +block.ore_meteor.copper=铜矿陨石 +block.ore_meteor.iron=铁矿陨石 +block.ore_meteor.rareearth=稀土矿陨石 +block.ore_meteor_aluminium=铝矿陨石 +block.ore_meteor_copper=铜矿陨石 +block.ore_meteor_lead=铅矿陨石 +block.ore_meteor_lithium=锂矿陨石 +block.ore_meteor_starmetal=星辉矿陨石 +block.ore_meteor_sulfur=硫磺矿陨石 +block.ore_meteor_thorium=钍矿陨石 +block.ore_meteor_titanium=钛矿陨石 +block.ore_meteor_tungsten=钨矿陨石 +block.ore_meteor_uranium=铀矿陨石 +block.ore_nether_coal=燃烧下界煤矿 +block.ore_nether_cobalt=下界钴矿石 +block.ore_nether_fire=磷矿石 +block.ore_nether_plutonium=下界钚矿石 +block.ore_nether_schrabidium=下界Sa326矿石 +block.ore_nether_smoldering=阴燃下界岩 +block.ore_nether_sulfur=下界硫磺矿石 +block.ore_nether_tungsten=下界钨矿石 +block.ore_nether_uranium=下界铀矿石 +block.ore_nether_uranium_scorched=烧焦的下界铀矿石 +block.ore_niter=硝石矿石 +block.ore_oil=油岩 +block.ore_oil_empty=空油岩 +block.ore_oil_sand=沥青砂 +block.ore_random=%s 矿 +block.ore_rare=稀土矿石 +block.ore_reiium=雷恩矿石 +block.ore_schrabidium=Sa326矿石 +block.ore_sellafield_diamond=放射性熔融钻石矿 +block.ore_sellafield_emerald=放射性熔融绿宝石矿 +block.ore_sellafield_radgem=富含宝石的放射性熔融物 +block.ore_sellafield_schrabidium=放射性熔融Sa326矿石 +block.ore_sellafield_uranium_scorched=放射性熔融烧焦铀矿 +block.ore_sulfur=硫磺矿石 +block.ore_tektite_osmiridium=渗锇熔融石 +block.ore_thorium=钍矿石 +block.ore_tikite=赛瑞克矿石 +block.ore_titanium=钛矿石 +block.ore_tungsten=钨矿石 +block.ore_unobtainium=难得素矿石 +block.ore_uranium=铀矿石 +block.ore_uranium_scorched=烧焦的铀矿石 +block.ore_verticium=韦德赛矿石 +block.ore_volcano=地热裂缝 +block.ore_weidanium=魏丹矿石 +block.part_emitter=装饰性粒子发射器 +block.pedestal=物品基座 +block.pink_barrel=煤油桶 +block.pink_log=粉色原木 +block.pink_planks=粉色木板 +block.pink_slab=粉色木半砖 +block.pink_stairs=粉色木台阶 +block.piston_inserter=插入器 +block.piston_inserter.desc=可以使用自动化接收一件物品$使用红石,它会将物品插入钻孔石墨中$钻孔石墨的物品都会被推出一格$插入器与钻孔石墨之间需要有一格空气 +block.plant_dead=死亡植物 +block.plant_flower.cd0=芥子柳 +block.plant_flower.cd1=芥子柳 +block.plant_flower.foxglove=毛地黄 +block.plant_flower.nightshade=颠茄 +block.plant_flower.tobacco=烟草 +block.plant_flower.weed=大麻 +block.plant_reeds=芦苇 +block.plant_tall.cd2=芥子柳 +block.plant_tall.cd3=芥子柳 +block.plant_tall.cd4=芥子柳(成熟) +block.plant_tall.weed=大麻 +block.plasma=等离子 +block.plasma_heater=等离子加热器 +block.plushie=%s布娃娃 +block.pole_satellite_receiver=卫星天线 +block.pole_top=天线顶部 +block.press_preheater=锻压机压力预热器 +block.pribris=RBMK石墨式反应堆残骸 +block.pribris_burning=燃烧的RBMK反应堆残骸 +block.pribris_digamma=发黑的RBMK反应堆残骸 +block.pribris_radiating=阴燃的RBMK反应堆残骸 +block.pump_electric=电动地下水泵 +block.pump_electric.desc=用电力抽取地下水$产水量高达10000mB/t$需要放置在Y:70以下 +block.pump_steam=蒸汽动力地下水泵 +block.pump_steam.desc=使用蒸汽抽取地下水$产水量高达1000mB/t$需要放置在Y:70以下 +block.pwr_block=PWR压水反应堆 +block.pwr_casing=PWR压力容器 +block.pwr_casing.desc=需要覆盖反应堆的所有内部零件以形成$位置:外壳 +block.pwr_channel=PWR冷却剂通道 +block.pwr_channel.desc=传导热量以加热冷却剂$位置:任意 +block.pwr_control=PWR控制棒 +block.pwr_control.desc=允许控制连接的燃料棒$放置:各燃料棒连线网格之间 +block.pwr_controller=PWR控制器 +block.pwr_controller.desc=PWR的接入终端$位置:外壳,每个反应堆只要一个$右键单击以组装反应堆 +block.pwr_fuel=PWR燃料棒 +block.pwr_fuel.desc=增加压水堆燃料容量$位置:网格,用于增加反应效率 +block.pwr_heatex=PWR换热器 +block.pwr_heatex.desc=将核心热量转移到外壳$位置:任意 +block.pwr_heatsink=PWR热容器 +block.pwr_heatsink.desc=增加5%%的核心热容$略微降低冷却剂通道和换热器的效率$位置:任意 +block.pwr_neutron_source=PWR中子源 +block.pwr_neutron_source.desc=向堆芯添加20个中子通量$位置:任意$中子通量只有在连接打开时才能到达燃料棒 +block.pwr_port=PWR接入端口 +block.pwr_port.desc=允许物品和液体交换$位置:组件 +block.pwr_reflector=PWR中子反射器 +block.pwr_reflector.desc=将中子通量反射回燃料棒$位置:网格,用于增加反应速率$可作为外壳材料 +block.rad_lava_block=放射性火山熔岩 +block.radar_screen=雷达显示屏 +block.radio_telex=电报机 +block.radio_torch_counter=无线红石物品计数器 +block.radio_torch_counter.desc=可在平坦表面或与比较器兼容的方块上放置$根据匹配物品的数量发出信号 +block.radio_torch_logic=无线红石逻辑接收器 +block.radio_torch_logic.desc=可在平坦表面或与比较器兼容的方块上放置$将红石信号与条件一一对应,并按照设定的顺序检测$输入的数值或字符串会与常量进行比较 +block.radio_torch_receiver=无线红石信号接收器 +block.radio_torch_receiver.desc=可在平坦表面或与比较器兼容的方块上放置 +block.radio_torch_sender=无线红石信号发射器 +block.radio_torch_sender.desc=可在平坦表面或比较器兼容的方块上放置$读取红石信号或比较器输入 +block.radiobox=无线怪物清除箱 +block.radiorec=坏掉的收音机 +block.rail_booster=高速动力轨道 +block.rail_highspeed=高速轨道 +block.rail_large_buffer=标准轨距缓冲停止轨道(5m) +block.rail_large_curve=标准轨距弯曲轨道(5m) +block.rail_large_curve_7=标准轨距弯曲轨道(7m) +block.rail_large_curve_9=标准轨距弯曲轨道(9m) +block.rail_large_ramp=标准轨距坡道铁轨(5m) +block.rail_large_straight=标准轨距铁轨(5m) +block.rail_large_straight_short=标准轨距铁轨(1m) +block.rail_large_switch=标准轨距铁路道岔(15m 左转) +block.rail_large_switch_flipped=标准轨距铁路道岔(15m 右转) +block.rail_narrow=窄轨距轨道 +block.rail_wood=木制轨道 +block.rbmk_absorber=RBMK反应堆硼中子吸收器 +block.rbmk_blank=RBMK反应堆结构柱 +block.rbmk_boiler=RBMK反应堆蒸汽管道 +block.rbmk_console=RBMK石墨式反应堆控制台 +block.rbmk_cooler=RBMK冷却器 +block.rbmk_control=RBMK反应堆控制棒 +block.rbmk_control_auto=RBMK反应堆自动控制棒 +block.rbmk_control_mod=RBMK反应堆慢化控制棒 +block.rbmk_crane_console=RBMK起重机控制台 +block.rbmk_heater=RBMK流体加热器 +block.rbmk_heatex=RBMK换热器 +block.rbmk_loader=RBMK反应堆蒸汽导出器 +block.rbmk_loader.desc=让RBMK反应堆在底部同时拥有水接口和蒸汽接口$在RBMK蒸汽管道下方放置水管道,再在下面放置蒸汽导出器$最后将管道连接至蒸汽导出器即可 +block.rbmk_moderator=RBMK反应堆石墨慢化剂 +block.rbmk_outgasser=RBMK反应堆辐照通道 +block.rbmk_reflector=RBMK反应堆碳化钨中子反射器 +block.rbmk_rod=RBMK反应堆燃料棒 +block.rbmk_rod_mod=RBMK反应堆慢化燃料棒 +block.rbmk_rod_reasim=RBMK反应堆燃料棒(ReaSim) +block.rbmk_rod_reasim_mod=RBMK反应堆慢化燃料棒(ReaSim) +block.rbmk_steam_inlet=RBMK ReaSim进水口 +block.rbmk_steam_inlet.desc=当启用ReaSim锅炉时向反应堆内输入水$从侧面连接至反应堆结构 +block.rbmk_steam_outlet=RBMK ReaSim蒸汽出口 +block.rbmk_steam_outlet.desc=当启用ReaSim锅炉时从反应堆内输出超热蒸汽$从侧面连接至反应堆结构 +block.rbmk_storage=RBMK燃料棒存储棒 +block.reactor_computer=反应堆控制器 +block.reactor_conductor=反应堆锅炉 +block.reactor_control=控制棒 +block.reactor_ejector=反应堆废料排出器 +block.reactor_element=反应堆室 +block.reactor_hatch=反应堆端口 +block.reactor_inserter=反应堆燃料插入器 +block.red_barrel=炸药桶 +block.red_cable=紫铜电线 +block.red_cable_classic=紫铜电缆(经典型) +block.red_cable_gauge=功率计 +block.red_cable_gauge.desc=显示每刻在网络中流动的电力$的电缆$由储能方块连接的拆分网络被视为一个共享网络。 +block.red_cable_paintable=可涂漆紫铜线 +block.red_connector=电力连接器 +block.red_pylon=电线杆 +block.red_pylon_large=大型输电塔 +block.red_pylon_medium_steel=中型钢制电线杆 +block.red_pylon_medium_steel_transformer=中型钢制电线杆(带变压器) +block.red_pylon_medium_wood=中型木制电线杆 +block.red_pylon_medium_wood_transformer=中型木制电线杆(带变压器) +block.red_wire_coated=密封紫铜电缆 +block.reinforced_brick=强化石头 +block.reinforced_brick_stairs=强化石头楼梯 +block.reinforced_ducrete=加固高密度贫铀混凝土 +block.reinforced_glass=强化玻璃 +block.reinforced_glass_pane=强化玻璃窗 +block.reinforced_lamp_off=强化红石灯 +block.reinforced_lamp_on=强化红石灯 +block.reinforced_light=强化萤石 +block.reinforced_sand=强化砂石 +block.reinforced_stone=致密石头 +block.reinforced_stone_stairs=致密石头楼梯 +block.reinforced_laminate=强化夹层玻璃 +block.reinforced_laminate_pane=强化夹层隔板 +block.rejuvinator=再生装置 +block.residue=云残留 +block.safe=保险箱 +block.sand_boron=硼沙 +block.sand_boron_layer=硼沙层 +block.sand_dirty=油砂 +block.sand_dirty_red=红色油砂 +block.sand_gold=金沙 +block.sand_gold198=金-198沙 +block.sand_lead=铅沙 +block.sand_polonium=钋沙 +block.sand_quartz=石英沙 +block.sand_uranium=铀沙 +block.sat_dock=卸货平台 +block.sat_foeq=实验型核能PEAF-Mk.I FOEQ Duna探测器[装饰块] +block.sat_laser=轨道死光炮[装饰块] +block.sat_mapper=地表测绘卫星[装饰块] +block.sat_radar=雷达探测卫星[装饰块] +block.sat_resonator=X晶体共振卫星[装饰块] +block.sat_scanner=绘测和资源探测卫星[装饰块] +block.schrabidic_block=Sa酸 +block.seal_controller=发射井舱门开关 +block.seal_frame=发射井舱门框架 +block.seal_hatch=发射井舱门 +block.sellafield.0=放射性熔融凝固物 +block.sellafield.1=高温放射性熔融凝固物 +block.sellafield.2=沸腾的放射性熔融凝固物 +block.sellafield.3=灼热的放射性熔融凝固物 +block.sellafield.4=地狱般的放射性熔融凝固物 +block.sellafield.5=放射性熔融凝固物核心 +block.sellafield_bedrock=基岩放射性熔融凝固物 +block.sellafield_slaked=消沉的放射性熔融凝固物 +block.semtex=塞姆汀塑胶炸药 +block.silo_hatch=发射井舱门 +block.silo_hatch_large=大型发射井舱门 +block.sliding_blast_door=滑动防爆门 +block.solar_mirror=定日镜 +block.soyuz_capsule=货物着陆舱 +block.soyuz_launcher=联盟号发射平台 +block.spikes=地刺 +block.snowglobe=雪景球 +block.spotlight_incandescent=罩灯 +block.spotlight_fluoro=荧光灯 +block.spotlight_halogen=卤素泛光灯 +block.stalactite.asbestos=石棉钟乳石 +block.stalactite.sulfur=含硫钟乳石 +block.stalagmite.asbestos=石棉石笋 +block.stalagmite.sulfur=含硫石笋 +block.steel_beam=钢梁 +block.steel_corner=钢墙角 +block.steel_grate=钢格栅 +block.steel_grate_wide=物品格栅 +block.steel_grate_wide.desc=只会让物品和经验球掉落下去 +block.steel_poles=钢杆 +block.steel_roof=钢天花顶 +block.steel_scaffold=钢脚手架 +block.steel_wall=钢墙 +block.stone_cracked=破碎的石头 +block.stone_depth=深层岩石 +block.stone_depth_nether=下界深层岩石 +block.stone_gneiss=石墨页岩 +block.stone_keyhole=奇怪的石头 +block.stone_porous=多孔石 +block.stone_resource.asbestos=温石棉 +block.stone_resource.bauxite=铝土矿 +block.stone_resource.hematite=赤铁矿 +block.stone_resource.limestone=石灰石 +block.stone_resource.malachite=孔雀石 +block.stone_resource.sulfur=硫磺石 +block.struct_icf_core=ICF反应堆核心组件 +block.struct_iter_core=聚变反应堆核心组件 +block.struct_launcher=发射台部件 +block.struct_launcher_core=紧凑型发射台核心组件 +block.struct_launcher_core_large=发射台核心组件 +block.struct_plasma_core=等离子加热器核心组件 +block.struct_scaffold=发射台骨架 +block.struct_soyuz_core=联盟号发射器核心组件 +block.struct_watz_core=Watz发电厂核心组件 +block.substation=变电站 +block.sulfuric_acid_block=硫酸 +block.taint=腐质 +block.taint_barrel=IMP残渣桶 +block.tape_recorder=录音机 +block.tektite=熔融石 +block.teleanchor=传送锚 +block.tesla=特斯拉线圈 +block.test_nuke=测试核弹 +block.therm_endo=吸热炸弹 +block.therm_exo=放热炸弹 +block.tile_lab=实验室瓷砖 +block.tile_lab_broken=破损实验室瓷砖 +block.tile_lab_cracked=开裂实验室瓷砖 +block.tnt_ntm=货真价实的TNT +block.toxic_block=绿色软泥 +block.transition_seal=巨型安全门 +block.turret_arty=重炮炮塔“格雷格” +block.turret_cheapo=奇普-加特林哨兵 +block.turret_chekhov=重机枪炮塔“契诃夫的枪” +block.turret_cwis=Mk-15“密集阵”近防系统 +block.turret_flamer=喷火炮塔 +block.turret_friendly=轻机枪炮塔“友好先生” +block.turret_fritz=重型火焰喷射器炮塔“弗里茨” +block.turret_heavy=重型机枪炮塔 +block.turret_himars=火箭炮塔“亨利” +block.turret_howard=双联守门员近防系统“霍华德” +block.turret_howard_damaged=CIWS双联守门员近防系统 \"玛士撒拉\" +block.turret_jeremy=重炮炮塔“杰里米” +block.turret_light=轻型机枪炮塔 +block.turret_maxwell=高能微波炮塔 \"麦克斯韦\" +block.turret_rocket=火箭炮塔 +block.turret_richard=火箭炮塔“理查德” +block.turret_spitfire=目前没有名字[开发中] +block.turret_sentry=哨兵炮塔“布朗” +block.turret_sentry_damaged=哨兵炮塔\"埃德温\" +block.turret_tau=陶子炮塔 +block.turret_tauon=XVL1456原型陶子发射器炮塔\"陶恩\" +block.vacuum=真空 +block.vault_door=避难所防爆门 +block.vent_chlorine=氯气排气口 +block.vent_chlorine_seal=氯气容器 +block.vent_cloud=云排气口 +block.vent_pink_cloud=粉雾排气口 +block.vinyl_tile.large=大型乙烯基瓷砖 +block.vinyl_tile.small=小型乙烯基瓷砖 +block.vitrified_barrel=玻璃化核废料桶 +block.volcanic_lava_block=火山熔岩 +block.volcano_core=火山核心 +block.volcano_rad_core=放射性火山核心 +block.waste_earth=死亡草地 +block.waste_leaves=枯叶 +block.waste_log=烧焦原木 +block.waste_mycelium=发光菌丝 +block.waste_planks=烧焦木板 +block.waste_trinitite=核融玻璃矿石 +block.waste_trinitite_red=红色核融玻璃矿石 +block.watz=Watz发电厂 +block.watz_conductor=Watz电力端口 +block.watz_control=加强控制棒 +block.watz_cooler=Watz反应堆高效冷却器 +block.watz_core=Watz反应堆控制器 +block.watz_element=Watz反应室 +block.watz_end=Watz反应堆稳定元件 +block.watz_end_bolted=Watz反应堆稳定元件(铆接) +block.watz_hatch=Watz反应堆端口 +block.watz_pump=Watz压力泵 +block.yellow_barrel=核废料桶 +block.zirnox_destroyed=损毁的ZIRNOX +block.large_vehicle_door=大型机械门 +block.water_door=水闸门 +block.qe_containment=QE安全门 +block.qe_sliding_door=QE滑动门 +block.round_airlock_door=圆形气闸门 +block.secure_access_door=安全检修门 +block.sliding_seal_door=滑动密封门 +trait.asbestos=石棉 +trait.blinding=致盲 +trait.coal=煤尘 +trait.digamma=迪伽马辐射 +trait.drop=掉落物危险 +trait.explosive=高度易燃/易爆 +trait.furnace=可在核熔炉中工作 %s 次 +trait.heat=提供 %s 热量 +trait.hlParticle=粒子半衰期: %s +trait.hlPlayer=玩家半衰期: %s +trait.hot=自燃/高温 +trait.hydro=与水反应 +trait.radioactive=放射性 +trait.radResistance=辐射抗性: %s +trait.rbmk.coreTemp=核心温度: %s +trait.rbmk.depletion=燃料消耗: %s +trait.rbmk.diffusion=扩散度: %s +trait.rbmk.fluxFunc=中子放射函数: %s +trait.rbmk.funcType=中子放射函数类型: %s +trait.rbmk.heat=每接受一个中子产生的热量: %s +trait.rbmk.melt=熔点: %s +trait.rbmk.neutron.any=所有中子 +trait.rbmk.neutron.fast=快中子 +trait.rbmk.neutron.slow=慢中子 +trait.rbmk.skinTemp=表面温度: %s +trait.rbmk.source=自燃 +trait.rbmk.splitsInto=裂变后释放出: %s +trait.rbmk.splitsWith=裂变需要: %s +trait.rbmk.xenon=氙元素堆积程度: %s +trait.rbmk.xenonBurn=氙元素燃烧函数: %s +trait.rbmk.xenonGen=氙元素产生函数: %s +trait.rbmx.coreTemp=核心熵: %s +trait.rbmx.depletion=衰变: %s +trait.rbmx.diffusion=能量潮涌: %s +trait.rbmx.fluxFunc=F迪伽马粒子放射函数: %s +trait.rbmx.funcType=F迪伽马粒子放射函数类型: %s +trait.rbmx.heat=满功率下每刻产生的热量: %s +trait.rbmx.melt=崩溃深度: %s +trait.rbmk.neutron.any.x=所有非欧几里德形时空平面 +trait.rbmk.neutron.fast.x=椭圆非欧几里德形时空平面 +trait.rbmk.neutron.slow.x=双曲非欧几里德形时空平面 +trait.rbmx.skinTemp=表面熵: %s +trait.rbmx.source=自燃 +trait.rbmx.splitsInto=释放: %s +trait.rbmx.splitsWith=接受: %s +trait.rbmx.xenon=铅元素堆积程度: %s +trait.rbmx.xenonBurn=铅元素寂灭函数: %s +trait.rbmx.xenonGen=铅元素产生函数: %s +trait.tile.cluster=只有在被玩家破坏时才会掉落 +trait.tile.depth=只能被爆炸破坏 +tool.ability.centrifuge=自动离心 +tool.ability.crystallizer=自动结晶 +tool.ability.explosion=爆破 +tool.ability.hammer=范围挖掘 +tool.ability.luck=时运 +tool.ability.mercury=水银提取 +tool.ability.midas=点石成金 +tool.ability.recursion=连锁挖矿 +tool.ability.shredder=自动粉碎 +tool.ability.silktouch=精准采集 +tool.ability.smelter=自动熔炼 +turret.animals=被动目标:%s +turret.arty.artillery=§e火炮模式$最低射程: 250m$最大射程: +turret.arty.cannon=§e炮塔模式$最低射程: 32m$射程: 250m +turret.arty.manual=§e手动模式$射程: +turret.machines=以机械为目标: %s +turret.mobs=以怪物为目标: %s +turret.none=无 +turret.off=关 +turret.on=开 +turret.players=以玩家为目标:%s +upgrade.acid=流体需求量 %s +upgrade.burn=燃烧内部天然气 %smB/t,产能 %sHE/t +upgrade.consumption=消耗 %s +upgrade.coolantConsumption=冷却剂消耗 %s +upgrade.delay=工作时间 %s +upgrade.efficiency=效率 %s +upgrade.fortune=时运 %s +upgrade.overheatChance=过热几率 %s +upgrade.range=范围 %s +upgrade.gui.title=§l接受的升级:§r +upgrade.gui.afterburner=* §d加力燃烧§r:叠加至%s级 +upgrade.gui.effectiveness=* §a效率§r:叠加至%s级 +upgrade.gui.overdrive=* §7超速传动§r:叠加至%s级 +upgrade.gui.power=* §9节能§r:叠加至%s级 +upgrade.gui.speed=* §4速度§r:叠加至%s级 +wavelengths.name.ir=红外线 +wavelengths.name.visible=可见光 +wavelengths.name.uv=紫外线 +wavelengths.name.gamma=伽马射线 +wavelengths.name.drx=迪伽玛 +wavelengths.waveRange.ir= +wavelengths.waveRange.visible= +wavelengths.waveRange.uv= +wavelengths.waveRange.gamma= +wavelengths.waveRange.drx=1916169普朗克长度 +weapon.ability.beheader=斩首 +weapon.ability.bobble=收藏家之运 +weapon.ability.chainsaw=痛苦面\"锯\" +weapon.ability.fire=燃烧 +weapon.ability.radiation=辐射 +weapon.ability.phosphorus=白磷刀刃 +weapon.ability.stun=震撼 +weapon.ability.vampire=吸血 +weapon.elecGun.modeChange=开火模式更改为: +weapon.elecGun.glass_cannon.radio=无线电波 +weapon.elecGun.glass_cannon.micro=微波 +weapon.elecGun.glass_cannon.ir=红外线 +weapon.elecGun.glass_cannon.visible=可见光 +weapon.elecGun.glass_cannon.uv=紫外线 +weapon.elecGun.glass_cannon.xray=X射线 +weapon.elecGun.glass_cannon.gamma=伽马射线 +desc.gui.upgrade=§l可接受的升级:§r +desc.gui.upgrade.afterburner=*§d加力燃烧§r:堆叠至3级 +desc.gui.upgrade.effectiveness=*§a效率§r:堆叠至3级 +desc.gui.upgrade.overdrive=*§7超速§r:堆叠至3级 +desc.gui.upgrade.power=*§1节能§r:堆叠至3级 +desc.gui.upgrade.speed=*§4速度§r:堆叠至3级 From b65dd8ef88f5a06930a0cda85cef52d6dc1fc9dd Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 19 Sep 2024 16:57:14 +0200 Subject: [PATCH 02/63] minor recipe changes --- changelog | 17 ++--------------- src/main/java/com/hbm/blocks/ModBlocks.java | 2 +- .../inventory/recipes/AssemblerRecipes.java | 6 +++--- .../hbm/inventory/recipes/PyroOvenRecipes.java | 2 +- .../textures/items/ingot_beskar_single_alt.png | Bin 0 -> 482 bytes .../hbm/textures/items/ingot_ceramic.png | Bin 0 -> 344 bytes 6 files changed, 7 insertions(+), 20 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/items/ingot_beskar_single_alt.png create mode 100644 src/main/resources/assets/hbm/textures/items/ingot_ceramic.png diff --git a/changelog b/changelog index 954da9f28..2d40670a6 100644 --- a/changelog +++ b/changelog @@ -1,16 +1,3 @@ ## Changed -* The ambient radiation generator's functionality and recipe have been disabled as it is being deprecated -* The pyrolysis oven is now compatible with overdrive upgrades -* Steel walls and corners no longer use TESRs for rendering, making them more performant at large scale and fixing any oddities regarding their rendering -* Steel walls and corners can now be rotated using the screwdriver (right click for clockwise, shift click for counter-clockwise) -* Steel walls and corners now use new textures as well as slightly cleaner models -* Steel corner bounding boxes now closely match their model - -## Fixed -* Fixed crash caused by the pyrolysis oven on servers - * Due this type of issue happening constantly, the GUI provider system no longer uses any client-only code -* Fixed small black bar rendering under the arrow box of NEI universal handlers when using the NH NEI fork -* Fixed desh screwdrivers not being usable for picking locks -* Possibly fixed an issue caused by MouseTweaks (in combination with other mods) duplicating click input (I can't replicate the issue so I can at best guess) -* Fixed pyrolysis ovens not being able to operate due to the output buffer being full, despite the buffer being a different type -* Fixed a vanilla bug in the standard block renderer causing boxduct bends to have incorrect UV on the -Z and +X sides \ No newline at end of file +* The fine soot recipe in the pyrolysis oven now only needs 4 tar +* Overdrive upgrades now use fullerite instead of lithium crystals \ No newline at end of file diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index de8842189..9550cd93d 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -2736,7 +2736,7 @@ public class ModBlocks { register(steel_scaffold); GameRegistry.registerBlock(steel_grate, steel_grate.getUnlocalizedName()); register(steel_grate_wide); - register(scaffold_dynamic); + //register(scaffold_dynamic); GameRegistry.registerBlock(deco_pipe, ItemBlockBase.class, deco_pipe.getUnlocalizedName()); GameRegistry.registerBlock(deco_pipe_rusted, ItemBlockBase.class, deco_pipe_rusted.getUnlocalizedName()); GameRegistry.registerBlock(deco_pipe_green, ItemBlockBase.class, deco_pipe_green.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index af36e0fbe..5b52a30fd 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -363,7 +363,7 @@ public class AssemblerRecipes extends SerializableRecipe { new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), new OreDictStack(DESH.ingot(), 16), - new ComparableStack(ModItems.crystal_lithium, 4), + new ComparableStack(ModItems.ingot_cft, 2), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.ADVANCED), }, 200); makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_2, 1), new AStack[] { @@ -371,7 +371,7 @@ public class AssemblerRecipes extends SerializableRecipe { new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), new OreDictStack(BIGMT.ingot(), 16), - new ComparableStack(ModItems.crystal_lithium, 8), + new ComparableStack(ModItems.ingot_cft, 6), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.CAPACITOR_BOARD), }, 300); makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_3, 1), new AStack[] { @@ -379,7 +379,7 @@ public class AssemblerRecipes extends SerializableRecipe { new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), new OreDictStack(STAR.ingot(), 16), - new ComparableStack(ModItems.crystal_lithium, 16), + new ComparableStack(ModItems.ingot_cft, 8), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.BISMOID), }, 500); diff --git a/src/main/java/com/hbm/inventory/recipes/PyroOvenRecipes.java b/src/main/java/com/hbm/inventory/recipes/PyroOvenRecipes.java index 456c8af93..384783d3f 100644 --- a/src/main/java/com/hbm/inventory/recipes/PyroOvenRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/PyroOvenRecipes.java @@ -92,7 +92,7 @@ public class PyroOvenRecipes extends SerializableRecipe { .out(new FluidStack(Fluids.SYNGAS, 1_000)).out(new ItemStack(Items.coal, 1, 1))); //soot from tar recipes.add(new PyroOvenRecipe(40) - .out(new FluidStack(Fluids.HYDROGEN, 250)).in(new OreDictStack(ANY_TAR.any(), 8)) + .out(new FluidStack(Fluids.HYDROGEN, 250)).in(new OreDictStack(ANY_TAR.any(), 4)) .out(new FluidStack(Fluids.CARBONDIOXIDE, 1_000)).out(DictFrame.fromOne(ModItems.powder_ash, EnumAshType.SOOT))); //heavyoil from coal recipes.add(new PyroOvenRecipe(100) diff --git a/src/main/resources/assets/hbm/textures/items/ingot_beskar_single_alt.png b/src/main/resources/assets/hbm/textures/items/ingot_beskar_single_alt.png new file mode 100644 index 0000000000000000000000000000000000000000..0f0a229dea8d30ed38d813db856a1c406b316d3d GIT binary patch literal 482 zcmV<80UiE{P)?>o_r9-P6KQ(?2`(B++M?W49;y9+??|*s!6432-bs~{KDTQs@IF5tXn$>E>U@#Cb0qu5M zM^QvNoyK)tJkR5JJR+qe3`6esJBdVsAPDe%Uwi=gzOOCIBA3hII1Z+1B81?4KBJUE z2!RlSIF7MxoAr84x7!u)XN*cI>h(I0$Ad5ox!rDrVfZXgCX>J2gg_}psZ^rTXlMZW z*2-?Tqf)7`SS*lIl1im841*|&ux%SDC7Dcy)9LhtJv-?2dSW`AayT5QR;w6>!R>ZK zYfYh0pja&8x-Of|hW&oecDu#0tglmOwOYDXtKoSbm&=80Hp^@_BcIQ6y|6oICgf^u^0ULLZYFL-tEviHZ;VL}0c+Fca=}^)z%)&3P=q8$Nx=Z% zoI@!USAf3nF~%f`h8^SmA6JkOM6N!NAMbq&C>EcAW9 znT6IGYb|M-egGjMP(#|f|1?ceN-+#WymP%?6ZQTMpXYfj1Ynr_{eIt=SV;jGV-gYZ qTI*QYCvl)nK}7uH@%U=`TlxXXQ>pB-RaO)L0000 Date: Thu, 19 Sep 2024 21:59:18 +0200 Subject: [PATCH 03/63] the malicious gigglefish from the silly dimension --- .../blocks/generic/BlockScaffoldDynamic.java | 1 - .../assets/hbm/models/weapons/moonlight.obj | 2921 +++++++++++++++++ .../hbm/sounds/weapon/loudestNoiseOnEarth.ogg | Bin 0 -> 74458 bytes .../hbm/textures/models/weapons/moonlight.png | Bin 0 -> 3037 bytes 4 files changed, 2921 insertions(+), 1 deletion(-) create mode 100644 src/main/resources/assets/hbm/models/weapons/moonlight.obj create mode 100644 src/main/resources/assets/hbm/sounds/weapon/loudestNoiseOnEarth.ogg create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/moonlight.png diff --git a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java index 61e314085..814ddb5b1 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java +++ b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java @@ -24,7 +24,6 @@ import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -import net.minecraft.item.ItemTool; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.NetworkManager; import net.minecraft.network.Packet; diff --git a/src/main/resources/assets/hbm/models/weapons/moonlight.obj b/src/main/resources/assets/hbm/models/weapons/moonlight.obj new file mode 100644 index 000000000..aa4bfc765 --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/moonlight.obj @@ -0,0 +1,2921 @@ +# Blender v2.79 (sub 0) OBJ File: 'nice_try_shitass' +# www.blender.org +o Circle +v 0.000000 2.000000 0.500000 +v -0.382683 1.923880 0.500000 +v -0.707107 1.707107 0.500000 +v -0.923880 1.382683 0.500000 +v -1.000000 1.000000 0.500000 +v -0.923880 0.617316 0.500000 +v -0.707107 0.292893 0.500000 +v -0.382683 0.076120 0.500000 +v 0.000000 0.000000 0.500000 +v 0.382683 0.076120 0.500000 +v 0.707107 0.292893 0.500000 +v 0.923880 0.617316 0.500000 +v 1.000000 1.000000 0.500000 +v 0.923880 1.382684 0.500000 +v 0.707107 1.707107 0.500000 +v 0.382683 1.923880 0.500000 +v 0.000000 1.750000 0.500000 +v -0.287013 1.692910 0.500000 +v -0.530330 1.530330 0.500000 +v -0.692910 1.287013 0.500000 +v -0.750000 1.000000 0.500000 +v -0.692910 0.712987 0.500000 +v -0.530330 0.469670 0.500000 +v -0.287013 0.307090 0.500000 +v 0.000000 0.250000 0.500000 +v 0.287013 0.307090 0.500000 +v 0.530330 0.469670 0.500000 +v 0.692910 0.712987 0.500000 +v 0.750000 1.000000 0.500000 +v 0.692910 1.287013 0.500000 +v 0.530330 1.530330 0.500000 +v 0.287012 1.692910 0.500000 +v 0.000000 2.250000 0.500000 +v -0.478354 2.154850 0.500000 +v -0.883883 1.883883 0.500000 +v -1.154850 1.478354 0.500000 +v -1.250000 1.000000 0.500000 +v -1.154850 0.521646 0.500000 +v -0.883883 0.116117 0.500000 +v -0.478354 -0.154850 0.500000 +v -0.000000 -0.250000 0.500000 +v 0.478354 -0.154850 0.500000 +v 0.883883 0.116117 0.500000 +v 1.154849 0.521646 0.500000 +v 1.250000 1.000000 0.500000 +v 1.154849 1.478354 0.500000 +v 0.883883 1.883883 0.500000 +v 0.478354 2.154850 0.500000 +v 0.000000 2.250000 -4.000000 +v -0.478354 2.154850 -4.000000 +v -0.883883 1.883883 -4.000000 +v -1.154850 1.478354 -4.000000 +v -1.250000 1.000000 -4.000000 +v -1.154850 0.521646 -4.000000 +v -0.883883 0.116117 -4.000000 +v -0.478354 -0.154850 -4.000000 +v -0.000000 -0.250000 -4.000000 +v 0.478354 -0.154850 -4.000000 +v 0.883883 0.116117 -4.000000 +v 1.154849 0.521646 -4.000000 +v 1.250000 1.000000 -4.000000 +v 1.154849 1.478354 -4.000000 +v 0.883883 1.883883 -4.000000 +v 0.478354 2.154850 -4.000000 +v 0.000000 2.000000 -4.000000 +v -0.382683 1.923880 -4.000000 +v -0.707107 1.707107 -4.000000 +v -0.923880 1.382683 -4.000000 +v -1.000000 1.000000 -4.000000 +v -0.923880 0.617316 -4.000000 +v -0.707107 0.292893 -4.000000 +v -0.382683 0.076120 -4.000000 +v 0.000000 0.000000 -4.000000 +v 0.382683 0.076120 -4.000000 +v 0.707107 0.292893 -4.000000 +v 0.923880 0.617316 -4.000000 +v 1.000000 1.000000 -4.000000 +v 0.923880 1.382684 -4.000000 +v 0.707107 1.707107 -4.000000 +v 0.382683 1.923880 -4.000000 +v 0.382683 1.923880 -4.500000 +v 0.707107 1.707107 -4.500000 +v 0.923880 1.382684 -4.500000 +v 1.000000 1.000000 -4.500000 +v 0.923880 0.617316 -4.500000 +v 0.707107 0.292893 -4.500000 +v 0.382683 0.076120 -4.500000 +v 0.000000 0.000000 -4.500000 +v -0.382683 0.076120 -4.500000 +v -0.707107 0.292893 -4.500000 +v -0.923880 0.617316 -4.500000 +v -1.000000 1.000000 -4.500000 +v -0.923880 1.382683 -4.500000 +v -0.707107 1.707107 -4.500000 +v -0.382683 1.923880 -4.500000 +v 0.000000 2.000000 -4.500000 +v 0.000000 2.000000 -3.500000 +v -0.382683 1.923880 -3.500000 +v -0.707107 1.707107 -3.500000 +v -0.923880 1.382683 -3.500000 +v -1.000000 1.000000 -3.500000 +v -0.923880 0.617316 -3.500000 +v -0.707107 0.292893 -3.500000 +v -0.382683 0.076120 -3.500000 +v 0.000000 0.000000 -3.500000 +v 0.382683 0.076120 -3.500000 +v 0.707107 0.292893 -3.500000 +v 0.923880 0.617316 -3.500000 +v 1.000000 1.000000 -3.500000 +v 0.923880 1.382684 -3.500000 +v 0.707107 1.707107 -3.500000 +v 0.382683 1.923880 -3.500000 +v -0.500000 0.000000 -6.000000 +v 0.500000 0.000000 -6.000000 +v -0.500000 0.000000 -7.000000 +v 0.500000 0.000000 -7.000000 +v -0.500000 -0.250000 -7.250000 +v 0.500000 -0.250000 -7.250000 +v -0.500000 -0.250000 -5.750000 +v 0.500000 -0.250000 -5.750000 +v 0.250000 0.125000 -7.187500 +v -0.250000 0.125000 -7.187500 +v 0.250000 0.125000 -5.812500 +v -0.250000 0.125000 -5.812500 +v -0.500000 -0.250000 -5.625000 +v 0.500000 -0.250000 -5.625000 +v -0.500000 0.125000 -5.625000 +v 0.500000 0.125000 -5.625000 +v 0.500000 -0.250000 -7.375000 +v -0.500000 -0.250000 -7.375000 +v 0.500000 0.125000 -7.375000 +v -0.500000 0.125000 -7.375000 +v 0.250000 0.375000 -5.812500 +v 0.250000 0.375000 -7.187500 +v -0.250000 0.375000 -7.187500 +v -0.250000 0.375000 -5.812500 +v 1.250000 0.750000 -4.375000 +v -1.250000 0.750000 -4.375000 +v 1.250000 1.250000 -4.375000 +v -1.250000 1.250000 -4.375000 +v -1.250000 1.250000 -4.125000 +v 1.250000 1.250000 -4.125000 +v -1.250000 0.750000 -4.125000 +v 1.250000 0.750000 -4.125000 +v 0.250000 2.250000 -4.125000 +v 0.250000 -0.250000 -4.125000 +v -0.250000 2.250000 -4.125000 +v -0.250000 -0.250000 -4.125000 +v -0.250000 -0.250000 -4.375000 +v -0.250000 2.250000 -4.375000 +v 0.250000 -0.250000 -4.375000 +v 0.250000 2.250000 -4.375000 +v -0.707107 2.060660 -4.125000 +v 1.060660 0.292893 -4.125000 +v -1.060660 1.707107 -4.125000 +v 0.707107 -0.060660 -4.125000 +v 0.707107 -0.060660 -4.375000 +v -1.060660 1.707107 -4.375000 +v 1.060660 0.292893 -4.375000 +v -0.707107 2.060660 -4.375000 +v 1.060660 1.707107 -4.375000 +v -0.707107 -0.060660 -4.375000 +v 0.707107 2.060660 -4.375000 +v -1.060660 0.292893 -4.375000 +v -1.060660 0.292893 -4.125000 +v 0.707107 2.060660 -4.125000 +v -0.707107 -0.060660 -4.125000 +v 1.060660 1.707107 -4.125000 +v 0.000000 2.000000 -4.500000 +v -0.382683 1.923880 -4.500000 +v -0.707107 1.707107 -4.500000 +v -0.923880 1.382683 -4.500000 +v -1.000000 1.000000 -4.500000 +v -0.923880 0.617316 -4.500000 +v -0.707107 0.292893 -4.500000 +v -0.382683 0.076120 -4.500000 +v 0.000000 0.000000 -4.500000 +v 0.382683 0.076120 -4.500000 +v 0.707107 0.292893 -4.500000 +v 0.923880 0.617316 -4.500000 +v 1.000000 1.000000 -4.500000 +v 0.923880 1.382684 -4.500000 +v 0.707107 1.707107 -4.500000 +v 0.382683 1.923880 -4.500000 +v 0.000000 1.750000 -5.500000 +v -0.287013 1.692910 -5.500000 +v -0.530330 1.530330 -5.500000 +v -0.692910 1.287013 -5.500000 +v -0.750000 1.000000 -5.500000 +v -0.692910 0.712987 -5.500000 +v -0.530330 0.469670 -5.500000 +v -0.287013 0.307090 -5.500000 +v 0.000000 0.250000 -5.500000 +v 0.287013 0.307090 -5.500000 +v 0.530330 0.469670 -5.500000 +v 0.692910 0.712987 -5.500000 +v 0.750000 1.000000 -5.500000 +v 0.692910 1.287013 -5.500000 +v 0.530330 1.530330 -5.500000 +v 0.287012 1.692910 -5.500000 +v 0.000000 1.750000 -7.500000 +v -0.287013 1.692910 -7.500000 +v -0.530330 1.530330 -7.500000 +v -0.692910 1.287013 -7.500000 +v -0.750000 1.000000 -7.500000 +v -0.692910 0.712987 -7.500000 +v -0.530330 0.469670 -7.500000 +v -0.287013 0.307090 -7.500000 +v 0.000000 0.250000 -7.500000 +v 0.287013 0.307090 -7.500000 +v 0.530330 0.469670 -7.500000 +v 0.692910 0.712987 -7.500000 +v 0.750000 1.000000 -7.500000 +v 0.692910 1.287013 -7.500000 +v 0.530330 1.530330 -7.500000 +v 0.287012 1.692910 -7.500000 +v 0.000000 1.500000 -8.000000 +v -0.191342 1.461940 -8.000000 +v -0.353553 1.353553 -8.000000 +v -0.461940 1.191342 -8.000000 +v -0.500000 1.000000 -8.000000 +v -0.461940 0.808658 -8.000000 +v -0.353553 0.646447 -8.000000 +v -0.191342 0.538060 -8.000000 +v 0.000000 0.500000 -8.000000 +v 0.191341 0.538060 -8.000000 +v 0.353553 0.646446 -8.000000 +v 0.461940 0.808658 -8.000000 +v 0.500000 1.000000 -8.000000 +v 0.461940 1.191342 -8.000000 +v 0.353553 1.353554 -8.000000 +v 0.191341 1.461940 -8.000000 +v 0.000000 2.000000 -3.500000 +v -0.382683 1.923880 -3.500000 +v -0.707107 1.707107 -3.500000 +v -0.923880 1.382683 -3.500000 +v -1.000000 1.000000 -3.500000 +v -0.923880 0.617316 -3.500000 +v -0.707107 0.292893 -3.500000 +v -0.382683 0.076120 -3.500000 +v 0.000000 0.000000 -3.500000 +v 0.382683 0.076120 -3.500000 +v 0.707107 0.292893 -3.500000 +v 0.923880 0.617316 -3.500000 +v 1.000000 1.000000 -3.500000 +v 0.923880 1.382684 -3.500000 +v 0.707107 1.707107 -3.500000 +v 0.382683 1.923880 -3.500000 +v 0.000000 1.562500 -3.500000 +v -0.215260 1.519682 -3.500000 +v -0.397748 1.397748 -3.500000 +v -0.519682 1.215260 -3.500000 +v -0.562500 1.000000 -3.500000 +v -0.519682 0.784740 -3.500000 +v -0.397748 0.602252 -3.500000 +v -0.215260 0.480318 -3.500000 +v 0.000000 0.437500 -3.500000 +v 0.215260 0.480318 -3.500000 +v 0.397747 0.602252 -3.500000 +v 0.519682 0.784740 -3.500000 +v 0.562500 1.000000 -3.500000 +v 0.519682 1.215260 -3.500000 +v 0.397747 1.397748 -3.500000 +v 0.215259 1.519682 -3.500000 +v -0.250000 -0.375000 -2.000000 +v 0.250000 -0.375000 -2.000000 +v -0.250000 -0.375000 -3.000000 +v 0.250000 -0.375000 -3.000000 +v -0.250000 -0.187500 -2.000000 +v 0.250000 -0.187500 -2.000000 +v -0.250000 -0.187500 -3.000000 +v 0.250000 -0.187500 -3.000000 +v 0.187500 -1.375000 -2.125000 +v -0.187500 -1.375000 -2.125000 +v -0.187500 -1.375000 -3.125000 +v 0.187500 -1.375000 -3.125000 +v 0.187500 -1.250000 -3.125000 +v -0.187500 -1.250000 -3.125000 +v 0.187500 -1.250000 -2.125000 +v -0.187500 -1.250000 -2.125000 +v -0.125000 -0.375000 -2.625000 +v -0.062500 -0.375000 -2.562500 +v 0.062500 -0.375000 -2.562500 +v 0.125000 -0.375000 -2.625000 +v -0.062500 -0.375000 -2.937500 +v -0.125000 -0.375000 -2.875000 +v 0.125000 -0.375000 -2.875000 +v 0.062500 -0.375000 -2.937500 +v -0.125000 -1.250000 -3.000000 +v -0.062500 -1.250000 -3.062500 +v -0.062500 -1.250000 -2.687500 +v -0.125000 -1.250000 -2.750000 +v 0.125000 -1.250000 -2.750000 +v 0.062500 -1.250000 -2.687500 +v 0.062500 -1.250000 -3.062500 +v 0.125000 -1.250000 -3.000000 +v -0.187500 -0.375000 -2.000000 +v 0.187500 -0.375000 -2.000000 +v -0.187500 -1.250000 -2.125000 +v 0.187500 -1.250000 -2.125000 +v 0.187500 -1.250000 -2.250000 +v 0.187500 -0.375000 -2.125000 +v -0.187500 -0.375000 -2.125000 +v -0.187500 -1.250000 -2.250000 +v -0.062500 -0.375000 -2.500000 +v 0.062500 -0.375000 -2.500000 +v -0.062500 -0.625000 -2.437500 +v 0.062500 -0.625000 -2.437500 +v 0.062500 -0.375000 -2.562500 +v -0.062500 -0.375000 -2.562500 +v 0.062500 -0.625000 -2.625000 +v -0.062500 -0.625000 -2.625000 +v 1.315785 0.529006 -1.250000 +v 1.065785 0.095994 -1.250000 +v 1.315785 0.529006 -2.250000 +v 1.065785 0.095994 -2.250000 +v 1.153405 0.622756 -2.250000 +v 1.153405 0.622756 -1.250000 +v 0.903405 0.189744 -1.250000 +v 0.903405 0.189744 -2.250000 +v 1.190784 0.312500 -1.812500 +v 1.212882 0.350773 -1.794194 +v 1.222034 0.366626 -1.750000 +v 1.212882 0.350773 -1.705806 +v 1.190784 0.312500 -1.687500 +v 1.168688 0.274227 -1.705806 +v 1.159534 0.258373 -1.750000 +v 1.168688 0.274227 -1.794194 +v 1.407291 0.187500 -1.812500 +v 1.429388 0.225773 -1.794194 +v 1.438541 0.241626 -1.750000 +v 1.429388 0.225773 -1.705806 +v 1.407291 0.187500 -1.687500 +v 1.385194 0.149227 -1.705806 +v 1.376041 0.133373 -1.750000 +v 1.385194 0.149227 -1.794194 +v 1.623797 0.062500 -2.062500 +v 1.645895 0.100773 -2.044194 +v 1.655047 0.116626 -2.000000 +v 1.645895 0.100773 -1.955806 +v 1.623797 0.062500 -1.937500 +v 1.601700 0.024227 -1.955806 +v 1.592547 0.008373 -2.000000 +v 1.601700 0.024227 -2.044194 +v 1.732050 -0.000000 -2.062500 +v 1.754148 0.038273 -2.044194 +v 1.763300 0.054127 -2.000000 +v 1.754148 0.038273 -1.955806 +v 1.732050 -0.000000 -1.937500 +v 1.709953 -0.038273 -1.955806 +v 1.700800 -0.054127 -2.000000 +v 1.709953 -0.038273 -2.044194 +v 1.732050 -0.000000 -2.125000 +v 1.776245 0.076546 -2.088388 +v 1.794550 0.108253 -2.000000 +v 1.776245 0.076546 -1.911612 +v 1.732050 -0.000000 -1.875000 +v 1.687856 -0.076547 -1.911612 +v 1.669550 -0.108253 -2.000000 +v 1.687856 -0.076547 -2.088388 +v 2.381570 -0.375000 -2.125000 +v 2.425764 -0.298454 -2.088388 +v 2.444070 -0.266747 -2.000000 +v 2.425764 -0.298454 -1.911612 +v 2.381570 -0.375000 -1.875000 +v 2.337376 -0.451547 -1.911612 +v 2.319070 -0.483253 -2.000000 +v 2.337376 -0.451547 -2.088388 +v 1.375000 1.250000 -2.500000 +v 1.375000 0.750000 -2.500000 +v 1.375000 1.250000 -3.000000 +v 1.375000 0.750000 -3.000000 +v 1.187500 1.250000 -3.000000 +v 1.187500 1.250000 -2.500000 +v 1.187500 0.750000 -2.500000 +v 1.187500 0.750000 -3.000000 +v 1.437500 1.437500 -2.687500 +v 1.437500 0.562500 -2.687500 +v 1.437500 1.437500 -2.812500 +v 1.437500 0.562500 -2.812500 +v 2.562500 1.437500 -2.812500 +v 2.562500 1.437500 -2.687500 +v 2.562500 0.562500 -2.687500 +v 2.562500 0.562500 -2.812500 +v 1.375000 0.500000 -2.812500 +v 1.375000 1.500000 -2.812500 +v 2.625000 0.500000 -2.812500 +v 2.625000 1.500000 -2.812500 +v 1.375000 1.500000 -2.687500 +v 1.375000 0.500000 -2.687500 +v 2.625000 1.500000 -2.687500 +v 2.625000 0.500000 -2.687500 +v 0.287012 1.692909 -3.250000 +v 0.530330 1.530331 -3.250000 +v 0.692910 1.287012 -3.250000 +v 0.750000 1.000000 -3.250000 +v 0.692910 0.712988 -3.250000 +v 0.530330 0.469669 -3.250000 +v 0.287013 0.307091 -3.250000 +v 0.000000 0.250000 -3.250000 +v -0.287013 0.307091 -3.250000 +v -0.530330 0.469669 -3.250000 +v -0.692910 0.712988 -3.250000 +v -0.750000 1.000000 -3.250000 +v -0.692910 1.287012 -3.250000 +v -0.530330 1.530331 -3.250000 +v -0.287013 1.692909 -3.250000 +v 0.000000 1.750000 -3.250000 +v 0.000000 2.000000 8.000000 +v -0.382683 1.923880 8.000000 +v -0.707107 1.707107 8.000000 +v -0.923880 1.382683 8.000000 +v -1.000000 1.000000 8.000000 +v -0.923880 0.617316 8.000000 +v -0.707107 0.292893 8.000000 +v -0.382683 0.076120 8.000000 +v 0.000000 0.000000 8.000000 +v 0.382683 0.076120 8.000000 +v 0.707107 0.292893 8.000000 +v 0.923880 0.617316 8.000000 +v 1.000000 1.000000 8.000000 +v 0.923880 1.382684 8.000000 +v 0.707107 1.707107 8.000000 +v 0.382683 1.923880 8.000000 +v 0.000000 2.000000 0.500000 +v -0.382683 1.923880 0.500000 +v -0.707107 1.707107 0.500000 +v -0.923880 1.382683 0.500000 +v -1.000000 1.000000 0.500000 +v -0.923880 0.617316 0.500000 +v -0.707107 0.292893 0.500000 +v -0.382683 0.076120 0.500000 +v 0.000000 0.000000 0.500000 +v 0.382683 0.076120 0.500000 +v 0.707107 0.292893 0.500000 +v 0.923880 0.617316 0.500000 +v 1.000000 1.000000 0.500000 +v 0.923880 1.382684 0.500000 +v 0.707107 1.707107 0.500000 +v 0.382683 1.923880 0.500000 +v 0.287012 1.692910 0.500000 +v 0.530330 1.530330 0.500000 +v 0.692910 1.287013 0.500000 +v 0.750000 1.000000 0.500000 +v 0.692910 0.712987 0.500000 +v 0.530330 0.469670 0.500000 +v 0.287013 0.307090 0.500000 +v 0.000000 0.250000 0.500000 +v -0.287013 0.307090 0.500000 +v -0.530330 0.469670 0.500000 +v -0.692910 0.712987 0.500000 +v -0.750000 1.000000 0.500000 +v -0.692910 1.287013 0.500000 +v -0.530330 1.530330 0.500000 +v -0.287013 1.692910 0.500000 +v 0.000000 1.750000 0.500000 +v 1.500000 1.375000 -1.250000 +v 1.500000 0.625000 -1.250000 +v 1.500000 1.375000 -2.250000 +v 1.500000 0.625000 -2.250000 +v 1.125000 1.375000 -2.250000 +v 1.125000 1.375000 -1.250000 +v 1.125000 0.625000 -1.250000 +v 1.125000 0.625000 -2.250000 +v 1.281250 0.968750 -2.500000 +v 1.343750 0.968750 -2.500000 +v 1.281250 1.031250 -2.500000 +v 1.343750 1.031250 -2.500000 +v 1.281250 0.968750 -2.250000 +v 1.343750 0.968750 -2.250000 +v 1.281250 1.031250 -2.250000 +v 1.343750 1.031250 -2.250000 +v 1.281250 1.093750 -2.500000 +v 1.343750 1.093750 -2.500000 +v 1.281250 1.156250 -2.500000 +v 1.343750 1.156250 -2.500000 +v 1.281250 1.093750 -2.250000 +v 1.343750 1.093750 -2.250000 +v 1.281250 1.156250 -2.250000 +v 1.343750 1.156250 -2.250000 +v 1.281250 0.843750 -2.500000 +v 1.343750 0.843750 -2.500000 +v 1.281250 0.906250 -2.500000 +v 1.343750 0.906250 -2.500000 +v 1.281250 0.843750 -2.250000 +v 1.343750 0.843750 -2.250000 +v 1.281250 0.906250 -2.250000 +v 1.343750 0.906250 -2.250000 +v -0.375000 2.500000 -1.250000 +v 0.375000 2.500000 -1.250000 +v -0.375000 2.500000 -2.250000 +v 0.375000 2.500000 -2.250000 +v -0.375000 2.125000 -2.625000 +v -0.375000 2.125000 -1.250000 +v 0.375000 2.125000 -1.250000 +v 0.375000 2.125000 -2.625000 +v 0.375000 2.750000 -2.500000 +v 0.375000 2.750000 -1.000000 +v 0.551776 2.676777 -2.500000 +v 0.551776 2.676777 -1.000000 +v 0.625000 2.500000 -2.500000 +v 0.625000 2.500000 -1.000000 +v 0.551776 2.323223 -2.500000 +v 0.551776 2.323223 -1.000000 +v 0.375000 2.250000 -2.500000 +v 0.375000 2.250000 -1.000000 +v 0.198223 2.323223 -2.500000 +v 0.198223 2.323223 -1.000000 +v 0.125000 2.500000 -2.500000 +v 0.125000 2.500000 -1.000000 +v 0.198223 2.676777 -2.500000 +v 0.198223 2.676777 -1.000000 +v -0.218750 2.450000 -1.250000 +v -0.293880 2.418880 -1.250000 +v -0.325000 2.343750 -1.250000 +v -0.293880 2.268620 -1.250000 +v -0.218750 2.237500 -1.250000 +v -0.143620 2.268620 -1.250000 +v -0.112500 2.343750 -1.250000 +v -0.143620 2.418880 -1.250000 +v -0.218750 2.450000 -1.187500 +v -0.293880 2.418880 -1.187500 +v -0.325000 2.343750 -1.187500 +v -0.293880 2.268620 -1.187500 +v -0.218750 2.237500 -1.187500 +v -0.143620 2.268620 -1.187500 +v -0.112500 2.343750 -1.187500 +v -0.143620 2.418880 -1.187500 +v 0.507582 2.632582 -1.000000 +v 0.375000 2.687500 -1.000000 +v 0.562500 2.500000 -1.000000 +v 0.507582 2.367418 -1.000000 +v 0.375000 2.312500 -1.000000 +v 0.242417 2.367418 -1.000000 +v 0.187500 2.500000 -1.000000 +v 0.242417 2.632582 -1.000000 +v 0.507582 2.632582 -0.875000 +v 0.375000 2.687500 -0.875000 +v 0.562500 2.500000 -0.875000 +v 0.507582 2.367418 -0.875000 +v 0.375000 2.312500 -0.875000 +v 0.242417 2.367418 -0.875000 +v 0.187500 2.500000 -0.875000 +v 0.242417 2.632582 -0.875000 +v 0.000000 2.312500 -1.500000 +v 0.883883 1.883883 -1.625000 +v 0.478354 2.154849 -1.625000 +v 0.000000 2.312500 -1.625000 +v 0.000000 2.250000 -1.625000 +v 1.312500 1.000000 -1.625000 +v 1.250000 1.000000 -1.625000 +v 0.478354 2.154850 -1.500000 +v 0.883883 1.883883 -1.500000 +v 1.154849 1.478354 -1.500000 +v 1.250000 1.000000 -1.500000 +v 0.000000 2.250000 -1.500000 +v 1.312500 1.000000 -1.500000 +v 1.212592 1.502272 -1.500000 +v 0.928077 1.928078 -1.500000 +v 0.502271 2.212592 -1.500000 +v 1.154849 1.478354 -1.625000 +v 1.212592 1.502272 -1.625000 +v 0.928077 1.928078 -1.625000 +v 0.502271 2.212592 -1.625000 +v 0.502271 2.212592 -2.000000 +v 0.928077 1.928078 -2.000000 +v 1.212592 1.502272 -2.000000 +v 1.154849 1.478354 -2.000000 +v 0.502271 2.212592 -1.875000 +v 0.928077 1.928078 -1.875000 +v 1.212592 1.502272 -1.875000 +v 1.312500 1.000000 -1.875000 +v 0.000000 2.250000 -1.875000 +v 1.250000 1.000000 -1.875000 +v 1.154849 1.478354 -1.875000 +v 0.883883 1.883883 -1.875000 +v 0.478354 2.154850 -1.875000 +v 1.250000 1.000000 -2.000000 +v 1.312500 1.000000 -2.000000 +v 0.000000 2.250000 -2.000000 +v 0.000000 2.312500 -2.000000 +v 0.478354 2.154849 -2.000000 +v 0.883883 1.883883 -2.000000 +v 0.000000 2.312500 -1.875000 +v 0.000000 1.750000 8.000000 +v -0.287013 1.692910 8.000000 +v -0.530330 1.530330 8.000000 +v -0.692910 1.287013 8.000000 +v -0.750000 1.000000 8.000000 +v -0.692910 0.712987 8.000000 +v -0.530330 0.469670 8.000000 +v -0.287013 0.307090 8.000000 +v 0.000000 0.250000 8.000000 +v 0.287013 0.307090 8.000000 +v 0.530330 0.469670 8.000000 +v 0.692910 0.712987 8.000000 +v 0.750000 1.000000 8.000000 +v 0.692910 1.287013 8.000000 +v 0.530330 1.530330 8.000000 +v 0.287012 1.692910 8.000000 +v 0.000000 1.750000 -3.500000 +v -0.287013 1.692910 -3.500000 +v -0.530330 1.530330 -3.500000 +v -0.692910 1.287013 -3.500000 +v -0.750000 1.000000 -3.500000 +v -0.692910 0.712987 -3.500000 +v -0.530330 0.469670 -3.500000 +v -0.287013 0.307090 -3.500000 +v 0.000000 0.250000 -3.500000 +v 0.287013 0.307090 -3.500000 +v 0.530330 0.469670 -3.500000 +v 0.692910 0.712987 -3.500000 +v 0.750000 1.000000 -3.500000 +v 0.692910 1.287013 -3.500000 +v 0.530330 1.530330 -3.500000 +v 0.287012 1.692910 -3.500000 +v 0.287012 1.692909 -1.000000 +v 0.530330 1.530331 -1.000000 +v 0.692910 1.287012 -1.000000 +v 0.750000 1.000000 -1.000000 +v 0.692910 0.712988 -1.000000 +v 0.530330 0.469669 -1.000000 +v 0.287013 0.307091 -1.000000 +v 0.000000 0.250000 -1.000000 +v -0.287013 0.307091 -1.000000 +v -0.530330 0.469669 -1.000000 +v -0.692910 0.712988 -1.000000 +v -0.750000 1.000000 -1.000000 +v -0.692910 1.287012 -1.000000 +v -0.530330 1.530331 -1.000000 +v -0.287013 1.692909 -1.000000 +v 0.000000 1.750000 -1.000000 +v 0.179382 1.433068 0.000000 +v 0.331456 1.331457 0.000000 +v 0.433069 1.179382 0.000000 +v 0.468750 1.000000 0.000000 +v 0.433069 0.820618 0.000000 +v 0.331456 0.668543 0.000000 +v 0.179383 0.566932 0.000000 +v 0.000000 0.531250 0.000000 +v -0.179383 0.566932 0.000000 +v -0.331456 0.668543 0.000000 +v -0.433069 0.820618 0.000000 +v -0.468750 1.000000 0.000000 +v -0.433069 1.179382 0.000000 +v -0.331456 1.331457 0.000000 +v -0.179383 1.433068 0.000000 +v 0.000000 1.468750 0.000000 +v 0.000000 1.000000 0.500000 +vt 0.455224 0.320312 +vt 0.462687 0.375000 +vt 0.455224 0.367188 +vt 0.455224 0.382812 +vt 0.462687 0.437500 +vt 0.455224 0.429688 +vt 0.455224 0.492188 +vt 0.455224 0.445312 +vt 0.462687 0.500000 +vt 0.455224 0.554688 +vt 0.455224 0.507812 +vt 0.462687 0.562500 +vt 0.455224 0.617188 +vt 0.455224 0.570312 +vt 0.462687 0.625000 +vt 0.455224 0.679688 +vt 0.455224 0.632812 +vt 0.455224 0.695312 +vt 0.462687 0.750000 +vt 0.455224 0.742188 +vt 0.455224 0.804688 +vt 0.455224 0.757812 +vt 0.455224 0.820312 +vt 0.462687 0.875000 +vt 0.455224 0.867188 +vt 0.455224 0.929688 +vt 0.455224 0.882812 +vt 0.455224 0.945312 +vt 0.462687 1.000000 +vt 0.455224 0.992188 +vt 0.455224 0.007812 +vt 0.462687 0.062500 +vt 0.455224 0.054688 +vt 0.455224 0.117188 +vt 0.455224 0.070312 +vt 0.462687 0.125000 +vt 0.455224 0.179688 +vt 0.455224 0.132812 +vt 0.462687 0.187500 +vt 0.455224 0.242188 +vt 0.455224 0.195312 +vt 0.462687 0.250000 +vt 0.455224 0.304688 +vt 0.455224 0.257812 +vt 0.604478 0.257812 +vt 0.597015 0.312500 +vt 0.597015 0.250000 +vt 0.604478 0.320312 +vt 0.597015 0.375000 +vt 0.604478 0.382812 +vt 0.597015 0.437500 +vt 0.604478 0.492188 +vt 0.597015 0.500000 +vt 0.604478 0.554688 +vt 0.597015 0.562500 +vt 0.604478 0.570312 +vt 0.597015 0.625000 +vt 0.604478 0.632812 +vt 0.597015 0.687500 +vt 0.604478 0.695312 +vt 0.597015 0.750000 +vt 0.604478 0.757812 +vt 0.597015 0.812500 +vt 0.604478 0.820312 +vt 0.597015 0.875000 +vt 0.604478 0.882812 +vt 0.597015 0.937500 +vt 0.604478 0.945312 +vt 0.597015 1.000000 +vt 0.604478 0.007812 +vt 0.597015 0.062500 +vt 0.597015 0.000000 +vt 0.604478 0.070312 +vt 0.597015 0.125000 +vt 0.604478 0.179688 +vt 0.597015 0.187500 +vt 0.604478 0.195312 +vt 0.668136 0.865446 +vt 0.629147 0.797819 +vt 0.645297 0.634554 +vt 0.705005 0.634623 +vt 0.743971 0.702209 +vt 0.727831 0.865378 +vt 0.085821 0.796875 +vt 0.115672 0.671875 +vt 0.115672 0.796875 +vt 0.078358 0.796875 +vt 0.085821 0.671875 +vt 0.123134 0.671875 +vt 0.022388 0.656250 +vt 0.063433 0.671875 +vt 0.011194 0.671875 +vt 0.011194 0.796875 +vt 0.014925 0.843750 +vt 0.022388 0.812500 +vt 0.078358 0.625000 +vt 0.063433 0.656250 +vt 0.063433 0.625000 +vt 0.000000 0.796875 +vt 0.000000 0.671875 +vt 0.126866 0.796875 +vt 0.123134 0.796875 +vt 0.175373 0.625000 +vt 0.134328 0.656250 +vt 0.134328 0.625000 +vt 0.119403 0.625000 +vt 0.078358 0.656250 +vt 0.063433 0.796875 +vt 0.074627 0.671875 +vt 0.074627 0.796875 +vt 0.078358 0.671875 +vt 0.119403 0.656250 +vt 0.126866 0.765625 +vt 0.134328 0.828125 +vt 0.126866 0.828125 +vt 0.216418 0.828125 +vt 0.208955 0.765625 +vt 0.216418 0.765625 +vt 0.134328 0.671875 +vt 0.208955 0.734375 +vt 0.134328 0.734375 +vt 0.208955 0.765625 +vt 0.134328 0.828125 +vt 0.134328 0.765625 +vt 0.134328 0.859375 +vt 0.208955 0.828125 +vt 0.208955 0.859375 +vt 0.216418 0.828125 +vt 0.216418 0.765625 +vt 0.126866 0.765625 +vt 0.126866 0.828125 +vt 0.134328 0.859375 +vt 0.208955 0.828125 +vt 0.208955 0.859375 +vt 0.208955 0.734375 +vt 0.134328 0.765625 +vt 0.134328 0.734375 +vt 0.134328 0.671875 +vt 0.126866 0.765625 +vt 0.134328 0.828125 +vt 0.126866 0.828125 +vt 0.216418 0.828125 +vt 0.208955 0.765625 +vt 0.216418 0.765625 +vt 0.134328 0.859375 +vt 0.208955 0.828125 +vt 0.208955 0.859375 +vt 0.208955 0.734375 +vt 0.134328 0.765625 +vt 0.134328 0.734375 +vt 0.134328 0.671875 +vt 0.134328 0.671875 +vt 0.208955 0.734375 +vt 0.134328 0.734375 +vt 0.134328 0.765625 +vt 0.208955 0.828125 +vt 0.134328 0.828125 +vt 0.134328 0.859375 +vt 0.208955 0.859375 +vt 0.216418 0.828125 +vt 0.208955 0.765625 +vt 0.216418 0.765625 +vt 0.126866 0.765625 +vt 0.126866 0.828125 +vt 0.810345 0.643319 +vt 0.831446 0.643319 +vt 0.831446 0.731681 +vt 0.626866 0.421875 +vt 0.619403 0.468750 +vt 0.619403 0.421875 +vt 0.619403 0.328125 +vt 0.626866 0.367188 +vt 0.619403 0.375000 +vt 0.626866 0.234375 +vt 0.619403 0.281250 +vt 0.619403 0.234375 +vt 0.626866 0.140625 +vt 0.619403 0.187500 +vt 0.619403 0.140625 +vt 0.626866 0.046875 +vt 0.619403 0.093750 +vt 0.619403 0.046875 +vt 0.626866 0.703125 +vt 0.619403 0.750000 +vt 0.619403 0.703125 +vt 0.626866 0.609375 +vt 0.619403 0.656250 +vt 0.619403 0.609375 +vt 0.626866 0.515625 +vt 0.619403 0.562500 +vt 0.619403 0.515625 +vt 0.619403 0.000000 +vt 0.626866 0.039062 +vt 0.626866 0.695312 +vt 0.626866 0.601562 +vt 0.626866 0.507812 +vt 0.626866 0.414062 +vt 0.626866 0.281250 +vt 0.626866 0.226562 +vt 0.626866 0.132812 +vt 0.449627 0.773438 +vt 0.419776 0.835938 +vt 0.419776 0.773438 +vt 0.455224 0.835938 +vt 0.449627 0.835938 +vt 0.414179 0.773438 +vt 0.419776 0.859375 +vt 0.449627 0.750000 +vt 0.389925 0.750000 +vt 0.360075 0.796875 +vt 0.360075 0.750000 +vt 0.410448 0.968750 +vt 0.414179 0.859375 +vt 0.414179 0.968750 +vt 0.395522 0.968750 +vt 0.399254 0.859375 +vt 0.399254 0.968750 +vt 0.360075 0.812500 +vt 0.389925 0.859375 +vt 0.360075 0.859375 +vt 0.408582 0.968750 +vt 0.401119 0.859375 +vt 0.408582 0.859375 +vt 0.401119 0.968750 +vt 0.410448 0.859375 +vt 0.416045 0.859375 +vt 0.416045 0.968750 +vt 0.425373 0.859375 +vt 0.423507 0.968750 +vt 0.423507 0.859375 +vt 0.360075 0.875000 +vt 0.389925 0.812500 +vt 0.393657 0.859375 +vt 0.389925 0.796875 +vt 0.356343 0.812500 +vt 0.425373 0.859375 +vt 0.436567 0.968750 +vt 0.425373 0.968750 +vt 0.440298 0.968750 +vt 0.451493 0.859375 +vt 0.451493 0.968750 +vt 0.455224 0.859375 +vt 0.397388 0.781250 +vt 0.389925 0.796875 +vt 0.389925 0.781250 +vt 0.436567 0.859375 +vt 0.399254 0.750000 +vt 0.402985 0.781250 +vt 0.080224 0.820312 +vt 0.110075 0.882812 +vt 0.080224 0.882812 +vt 0.397388 0.796875 +vt 0.401119 0.828125 +vt 0.399254 0.828125 +vt 0.402985 0.796875 +vt 0.110075 0.796875 +vt 0.110075 0.820312 +vt 0.115672 0.820312 +vt 0.115672 0.882812 +vt 0.074627 0.820312 +vt 0.080224 0.906250 +vt 0.764925 0.851562 +vt 0.766791 0.843750 +vt 0.766791 0.859375 +vt 0.764925 0.757812 +vt 0.766791 0.750000 +vt 0.766791 0.765625 +vt 0.764925 0.789062 +vt 0.766791 0.781250 +vt 0.766791 0.796875 +vt 0.764925 0.835938 +vt 0.766791 0.828125 +vt 0.764925 0.859375 +vt 0.766791 0.875000 +vt 0.764925 0.867188 +vt 0.764925 0.765625 +vt 0.764925 0.773438 +vt 0.764925 0.796875 +vt 0.766791 0.812500 +vt 0.764925 0.804688 +vt 0.764925 0.820312 +vt 0.789154 0.765625 +vt 0.792910 0.749897 +vt 0.796666 0.765625 +vt 0.132463 0.882812 +vt 0.147388 0.945312 +vt 0.132463 0.945312 +vt 0.830224 0.937500 +vt 0.833955 0.812500 +vt 0.833955 0.937500 +vt 0.126866 0.882812 +vt 0.147388 0.859375 +vt 0.147388 0.882812 +vt 0.132463 0.968750 +vt 0.152985 0.945312 +vt 0.789179 0.812500 +vt 0.792910 0.937500 +vt 0.789179 0.937500 +vt 0.830224 0.953125 +vt 0.828358 0.820312 +vt 0.794776 0.835938 +vt 0.794776 0.820312 +vt 0.839552 0.929688 +vt 0.835821 0.820312 +vt 0.839552 0.820312 +vt 0.830224 0.812500 +vt 0.792910 0.796875 +vt 0.830224 0.796875 +vt 0.828358 0.929688 +vt 0.794776 0.929688 +vt 0.792910 0.812500 +vt 0.835821 0.929688 +vt 0.869403 0.820312 +vt 0.871269 0.937500 +vt 0.869403 0.929688 +vt 0.871269 0.812500 +vt 0.865672 0.929688 +vt 0.865672 0.820312 +vt 0.794776 0.914062 +vt 0.231343 0.468750 +vt 0.223881 0.507812 +vt 0.223881 0.468750 +vt 0.231343 0.093750 +vt 0.223881 0.046875 +vt 0.231343 0.046875 +vt 0.223881 0.421875 +vt 0.231343 0.421875 +vt 0.231343 -0.000000 +vt 0.223881 0.039062 +vt 0.223881 0.000000 +vt 0.223881 0.375000 +vt 0.231343 0.375000 +vt 0.231343 0.703125 +vt 0.223881 0.742188 +vt 0.223881 0.703125 +vt 0.223881 0.328125 +vt 0.231343 0.328125 +vt 0.231343 0.656250 +vt 0.223881 0.695312 +vt 0.223881 0.656250 +vt 0.223881 0.281250 +vt 0.231343 0.281250 +vt 0.231343 0.609375 +vt 0.223881 0.648438 +vt 0.223881 0.609375 +vt 0.223881 0.234375 +vt 0.231343 0.234375 +vt 0.231343 0.562500 +vt 0.223881 0.601562 +vt 0.223881 0.562500 +vt 0.231343 0.187500 +vt 0.223881 0.226562 +vt 0.223881 0.187500 +vt 0.223881 0.140625 +vt 0.231343 0.140625 +vt 0.223881 0.515625 +vt 0.231343 0.515625 +vt 0.223881 0.132812 +vt 0.223881 0.093750 +vt 0.313433 0.796875 +vt 0.343284 0.890625 +vt 0.313433 0.890625 +vt 0.242537 0.796875 +vt 0.250000 0.789062 +vt 0.250000 0.796875 +vt 0.343284 0.796875 +vt 0.354478 0.890625 +vt 0.302239 0.796875 +vt 0.343284 0.750000 +vt 0.313433 0.937500 +vt 0.242537 0.812500 +vt 0.250000 0.804688 +vt 0.250000 0.812500 +vt 0.242537 0.804688 +vt 0.242537 0.789062 +vt 0.250000 0.781250 +vt 0.242537 0.828125 +vt 0.250000 0.820312 +vt 0.250000 0.828125 +vt 0.242537 0.843750 +vt 0.250000 0.835938 +vt 0.250000 0.843750 +vt 0.242537 0.835938 +vt 0.242537 0.820312 +vt 0.250000 0.812500 +vt 0.242537 0.765625 +vt 0.250000 0.757812 +vt 0.250000 0.765625 +vt 0.242537 0.781250 +vt 0.250000 0.773438 +vt 0.250000 0.781250 +vt 0.242537 0.773438 +vt 0.242537 0.757812 +vt 0.250000 0.750000 +vt 0.261194 0.796875 +vt 0.291045 0.890625 +vt 0.261194 0.890625 +vt 0.291045 0.796875 +vt 0.302239 0.890625 +vt 0.250000 0.796875 +vt 0.261194 0.750000 +vt 0.302239 0.750000 +vt 0.261194 0.937500 +vt 0.875000 0.742188 +vt 0.873134 0.757812 +vt 0.873134 0.742188 +vt 0.921958 0.634135 +vt 0.932520 0.634135 +vt 0.932520 0.678365 +vt 0.925373 0.734382 +vt 0.929103 0.750000 +vt 0.925373 0.765618 +vt 0.875000 0.671875 +vt 0.873134 0.687500 +vt 0.873134 0.671875 +vt 0.875000 0.789062 +vt 0.873134 0.804688 +vt 0.873134 0.789062 +vt 0.873134 0.718750 +vt 0.875000 0.718750 +vt 0.873134 0.695312 +vt 0.875000 0.695312 +vt 0.873134 0.648438 +vt 0.875000 0.648438 +vt 0.873134 0.765625 +vt 0.875000 0.765625 +vt 0.873134 0.625000 +vt 0.875000 0.625000 +vt 0.925373 0.687509 +vt 0.929329 0.694371 +vt 0.930968 0.710938 +vt 0.074627 0.843750 +vt 0.059701 0.851562 +vt 0.059701 0.843750 +vt 0.074627 0.875000 +vt 0.059701 0.867188 +vt 0.074627 0.867188 +vt 0.074627 0.875000 +vt 0.059701 0.867188 +vt 0.074627 0.867188 +vt 0.044776 0.851562 +vt 0.029851 0.843750 +vt 0.044776 0.843750 +vt 0.029851 0.851562 +vt 0.014925 0.843750 +vt 0.029851 0.867188 +vt 0.014925 0.875000 +vt 0.014925 0.867188 +vt 0.044776 0.867188 +vt 0.029851 0.875000 +vt 0.044776 0.875000 +vt 0.074627 0.843750 +vt 0.059701 0.851562 +vt 0.059701 0.843750 +vt 0.014925 0.625000 +vt 0.059701 0.625000 +vt 0.063433 0.625000 +vt 0.059701 0.843750 +vt 0.052239 0.812500 +vt 0.864481 0.745016 +vt 0.840742 0.745016 +vt 0.840743 0.645609 +vt 0.044776 0.851562 +vt 0.029851 0.843750 +vt 0.044776 0.843750 +vt 0.029851 0.851562 +vt 0.014925 0.843750 +vt 0.029851 0.867188 +vt 0.014925 0.875000 +vt 0.014925 0.867188 +vt 0.044776 0.867188 +vt 0.029851 0.875000 +vt 0.044776 0.875000 +vt 0.462687 0.312500 +vt 0.462687 0.687500 +vt 0.462687 0.812500 +vt 0.462687 0.937500 +vt 0.462687 0.000000 +vt 0.604478 0.304688 +vt 0.604478 0.367188 +vt 0.604478 0.429688 +vt 0.604478 0.445312 +vt 0.604478 0.507812 +vt 0.604478 0.617188 +vt 0.604478 0.679688 +vt 0.604478 0.742188 +vt 0.604478 0.804688 +vt 0.604478 0.867188 +vt 0.604478 0.929688 +vt 0.604478 0.992188 +vt 0.604478 0.054688 +vt 0.604478 0.117188 +vt 0.604478 0.132812 +vt 0.604478 0.242188 +vt 0.656716 0.874957 +vt 0.645297 0.865445 +vt 0.635616 0.838358 +vt 0.626876 0.750000 +vt 0.629147 0.702181 +vt 0.635616 0.661642 +vt 0.656716 0.625043 +vt 0.668136 0.634554 +vt 0.677817 0.661642 +vt 0.684285 0.702181 +vt 0.686557 0.750000 +vt 0.684285 0.797819 +vt 0.677817 0.838358 +vt 0.716418 0.874884 +vt 0.705005 0.865378 +vt 0.695330 0.838306 +vt 0.688865 0.797791 +vt 0.686595 0.750000 +vt 0.688865 0.702209 +vt 0.695330 0.661694 +vt 0.716418 0.625117 +vt 0.727831 0.634623 +vt 0.737506 0.661694 +vt 0.746241 0.750000 +vt 0.743971 0.797791 +vt 0.737506 0.838306 +vt 0.052239 0.656250 +vt 0.011194 0.843750 +vt 0.126866 0.671875 +vt 0.175373 0.656250 +vt 0.208955 0.671875 +vt 0.208955 0.671875 +vt 0.208955 0.671875 +vt 0.208955 0.671875 +vt 0.826605 0.745225 +vt 0.820895 0.749981 +vt 0.815185 0.745225 +vt 0.810345 0.731681 +vt 0.807110 0.711411 +vt 0.805975 0.687500 +vt 0.807110 0.663589 +vt 0.815185 0.629775 +vt 0.820895 0.625019 +vt 0.826605 0.629775 +vt 0.834680 0.663589 +vt 0.835816 0.687500 +vt 0.834680 0.711411 +vt 0.626866 0.460938 +vt 0.626866 0.328125 +vt 0.626866 0.273438 +vt 0.626866 0.179688 +vt 0.626866 0.085938 +vt 0.626866 0.742188 +vt 0.626866 0.648438 +vt 0.626866 0.554688 +vt 0.626866 0.000000 +vt 0.626866 0.656250 +vt 0.626866 0.562500 +vt 0.626866 0.468750 +vt 0.626866 0.375000 +vt 0.626866 0.320312 +vt 0.626866 0.187500 +vt 0.626866 0.093750 +vt 0.455224 0.773438 +vt 0.414179 0.835938 +vt 0.449627 0.859375 +vt 0.419776 0.750000 +vt 0.395522 0.859375 +vt 0.425373 0.968750 +vt 0.389925 0.875000 +vt 0.393657 0.812500 +vt 0.356343 0.859375 +vt 0.440298 0.859375 +vt 0.455224 0.968750 +vt 0.401119 0.750000 +vt 0.080224 0.796875 +vt 0.074627 0.882812 +vt 0.110075 0.906250 +vt 0.764925 0.843750 +vt 0.764925 0.750000 +vt 0.764925 0.781250 +vt 0.764925 0.828125 +vt 0.764925 0.812500 +vt 0.795566 0.776746 +vt 0.792910 0.781353 +vt 0.790255 0.776746 +vt 0.790255 0.754503 +vt 0.795566 0.754503 +vt 0.126866 0.945312 +vt 0.132463 0.859375 +vt 0.147388 0.968750 +vt 0.152985 0.882812 +vt 0.792910 0.953125 +vt 0.828358 0.835938 +vt 0.828358 0.914062 +vt 0.223881 0.085938 +vt 0.223881 0.460938 +vt 0.223881 0.414062 +vt 0.231343 0.750000 +vt 0.223881 0.367188 +vt 0.223881 0.320312 +vt 0.223881 0.273438 +vt 0.223881 0.179688 +vt 0.223881 0.554688 +vt 0.354478 0.796875 +vt 0.302239 0.890625 +vt 0.313433 0.750000 +vt 0.343284 0.937500 +vt 0.242537 0.781250 +vt 0.242537 0.812500 +vt 0.242537 0.750000 +vt 0.302239 0.796875 +vt 0.250000 0.890625 +vt 0.302239 0.937500 +vt 0.927239 0.687525 +vt 0.921958 0.678365 +vt 0.919770 0.656250 +vt 0.927239 0.624975 +vt 0.934708 0.656250 +vt 0.922736 0.761044 +vt 0.921643 0.750000 +vt 0.922736 0.738956 +vt 0.928010 0.738957 +vt 0.928010 0.761044 +vt 0.875000 0.812500 +vt 0.873134 0.734375 +vt 0.873134 0.710938 +vt 0.873134 0.664062 +vt 0.873134 0.781250 +vt 0.873134 0.640625 +vt 0.929329 0.727504 +vt 0.925373 0.734367 +vt 0.921417 0.727504 +vt 0.919778 0.710938 +vt 0.921417 0.694371 +vt 0.074627 0.851562 +vt 0.059701 0.875000 +vt 0.059701 0.875000 +vt 0.014925 0.851562 +vt 0.074627 0.851562 +vt 0.011194 0.625000 +vt 0.063433 0.843750 +vt 0.846188 0.630372 +vt 0.852612 0.625022 +vt 0.859036 0.630372 +vt 0.864481 0.645610 +vt 0.868120 0.668414 +vt 0.869398 0.695313 +vt 0.868120 0.722212 +vt 0.859036 0.760253 +vt 0.852612 0.765604 +vt 0.846188 0.760253 +vt 0.837104 0.722212 +vt 0.835826 0.695313 +vt 0.837104 0.668414 +vt 0.014925 0.851562 +vt 0.000000 0.156250 +vt 0.223881 0.195312 +vt 0.000000 0.195312 +vt 0.000000 -0.000000 +vt 0.223881 0.039062 +vt 0.000000 0.039062 +vt 0.000000 0.507812 +vt 0.223881 0.546875 +vt 0.000000 0.546875 +vt 0.000000 0.351562 +vt 0.223881 0.390625 +vt 0.000000 0.390625 +vt 0.223881 0.234375 +vt 0.000000 0.234375 +vt 0.223881 0.078125 +vt 0.000000 0.078125 +vt 0.223881 0.585938 +vt 0.000000 0.585938 +vt 0.223881 0.429688 +vt 0.000000 0.429688 +vt 0.223881 0.273438 +vt 0.000000 0.273438 +vt 0.223881 0.117188 +vt 0.000000 0.117188 +vt 0.223881 0.625000 +vt 0.000000 0.625000 +vt 0.223881 0.468750 +vt 0.000000 0.468750 +vt 0.000000 0.312500 +vt 0.223881 0.351562 +vt 0.223881 0.507812 +vt 0.223881 0.156250 +vt 0.223881 0.312500 +vt 0.776119 0.562500 +vt 0.746269 0.515625 +vt 0.776119 0.515625 +vt 0.776119 0.187500 +vt 0.746269 0.140625 +vt 0.776119 0.140625 +vt 0.776119 0.609375 +vt 0.746269 0.562500 +vt 0.776119 0.234375 +vt 0.746269 0.187500 +vt 0.776119 0.656250 +vt 0.746269 0.609375 +vt 0.776119 0.281250 +vt 0.746269 0.234375 +vt 0.776119 0.703125 +vt 0.746269 0.656250 +vt 0.776119 0.328125 +vt 0.746269 0.281250 +vt 0.776119 0.750000 +vt 0.746269 0.703125 +vt 0.776119 0.421875 +vt 0.746269 0.375000 +vt 0.776119 0.375000 +vt 0.746269 0.328125 +vt 0.776119 0.046875 +vt 0.746269 -0.000000 +vt 0.776119 -0.000000 +vt 0.776119 0.468750 +vt 0.746269 0.421875 +vt 0.776119 0.093750 +vt 0.746269 0.046875 +vt 0.746269 0.468750 +vt 0.746269 0.093750 +vt 0.776119 0.281250 +vt 0.805970 0.234375 +vt 0.805970 0.273438 +vt 0.776119 0.656250 +vt 0.805970 0.695312 +vt 0.776119 0.703125 +vt 0.805970 0.320312 +vt 0.776119 0.328125 +vt 0.805970 0.742188 +vt 0.776119 0.750000 +vt 0.776119 0.421875 +vt 0.805970 0.375000 +vt 0.805970 0.414062 +vt 0.805970 0.367188 +vt 0.776119 0.375000 +vt 0.776119 0.046875 +vt 0.805970 -0.000000 +vt 0.805970 0.039062 +vt 0.776119 0.468750 +vt 0.805970 0.421875 +vt 0.805970 0.460938 +vt 0.805970 0.085938 +vt 0.776119 0.093750 +vt 0.776119 0.515625 +vt 0.805970 0.468750 +vt 0.805970 0.507812 +vt 0.805970 0.132812 +vt 0.776119 0.140625 +vt 0.805970 0.554688 +vt 0.776119 0.562500 +vt 0.805970 0.179688 +vt 0.776119 0.187500 +vt 0.776119 0.609375 +vt 0.805970 0.562500 +vt 0.805970 0.601562 +vt 0.776119 0.234375 +vt 0.805970 0.187500 +vt 0.805970 0.226562 +vt 0.805970 0.648438 +vt 0.805970 0.117188 +vt 0.865672 0.156250 +vt 0.805970 0.156250 +vt 0.805970 0.468750 +vt 0.865672 0.507812 +vt 0.805970 0.507812 +vt 0.865672 0.195312 +vt 0.805970 0.195312 +vt 0.865672 0.546875 +vt 0.805970 0.546875 +vt 0.865672 0.234375 +vt 0.805970 0.234375 +vt 0.865672 0.585938 +vt 0.805970 0.585938 +vt 0.865672 0.273438 +vt 0.805970 0.273438 +vt 0.865672 0.625000 +vt 0.805970 0.625000 +vt 0.805970 0.312500 +vt 0.865672 0.351562 +vt 0.805970 0.351562 +vt 0.865672 0.312500 +vt 0.865672 0.039062 +vt 0.865672 0.390625 +vt 0.805970 0.390625 +vt 0.865672 0.078125 +vt 0.805970 0.078125 +vt 0.865672 0.429688 +vt 0.805970 0.429688 +vt 0.865672 0.117188 +vt 0.865672 0.468750 +vt 0.880597 0.203125 +vt 0.880597 0.242188 +vt 0.880597 0.281250 +vt 0.880597 0.320312 +vt 0.880597 0.359375 +vt 0.880597 0.421875 +vt 0.880597 0.437500 +vt 0.880597 0.500000 +vt 0.880597 0.515625 +vt 0.880597 0.578125 +vt 0.880597 0.593750 +vt 0.865672 -0.000000 +vt 0.880597 0.031250 +vt 0.880597 0.070312 +vt 0.880597 0.085938 +vt 0.880597 0.125000 +vt 0.880597 0.187500 +vt 0.604478 0.000000 +vt 0.604478 0.046875 +vt 0.604478 0.421875 +vt 0.604478 0.468750 +vt 0.604478 0.093750 +vt 0.604478 0.515625 +vt 0.604478 0.140625 +vt 0.604478 0.562500 +vt 0.604478 0.187500 +vt 0.604478 0.609375 +vt 0.604478 0.234375 +vt 0.604478 0.656250 +vt 0.604478 0.281250 +vt 0.604478 0.703125 +vt 0.604478 0.328125 +vt 0.604478 0.750000 +vt 0.604478 0.375000 +vt 1.000000 0.242188 +vt 0.992537 0.273438 +vt 0.992537 0.234375 +vt 1.000000 0.007812 +vt 0.992537 0.039062 +vt 0.992537 0.000000 +vt 0.992537 0.351562 +vt 1.000000 0.382812 +vt 0.992537 0.390625 +vt 1.000000 0.554688 +vt 0.992537 0.585938 +vt 0.992537 0.546875 +vt 1.000000 0.320312 +vt 0.992537 0.312500 +vt 1.000000 0.164062 +vt 0.992537 0.195312 +vt 0.992537 0.156250 +vt 1.000000 0.617188 +vt 0.992537 0.625000 +vt 1.000000 0.398438 +vt 0.992537 0.429688 +vt 0.992537 0.078125 +vt 1.000000 0.109375 +vt 0.992537 0.117188 +vt 1.000000 0.476562 +vt 0.992537 0.507812 +vt 0.992537 0.468750 +vt 1.000000 0.539062 +vt 1.000000 0.148438 +vt 1.000000 0.304688 +vt 1.000000 0.203125 +vt 1.000000 0.070312 +vt 1.000000 0.460938 +vt 0.746269 0.773438 +vt 0.753731 0.765625 +vt 0.753731 0.773438 +vt 0.746269 0.796875 +vt 0.753731 0.789062 +vt 0.753731 0.796875 +vt 0.746269 0.804688 +vt 0.753731 0.812500 +vt 0.746269 0.812500 +vt 0.746269 0.757812 +vt 0.746269 0.765625 +vt 0.746269 0.781250 +vt 0.753731 0.781250 +vt 0.746269 0.789062 +vt 0.753731 0.804688 +vt 0.746269 0.750000 +vt 0.753731 0.757812 +vt 0.761194 0.812500 +vt 0.761194 0.757812 +vt 0.761194 0.765625 +vt 0.761194 0.773438 +vt 0.761194 0.781250 +vt 0.761194 0.789062 +vt 0.761194 0.804688 +vt 0.761194 0.750000 +vt 0.761194 0.796875 +vt 0.764925 0.789062 +vt 0.764925 0.796875 +vt 0.764925 0.804688 +vt 0.764925 0.812500 +vt 0.764925 0.765625 +vt 0.764925 0.773438 +vt 0.764925 0.781250 +vt 0.789179 0.812500 +vt 0.789179 0.828125 +vt 0.789179 0.859375 +vt 0.789179 0.765625 +vt 0.789179 0.781250 +vt 0.789179 0.796875 +vt 0.789179 0.843750 +vt 0.789179 0.875000 +vt 0.455224 0.046875 +vt 0.455224 0.468750 +vt 0.455224 0.093750 +vt 0.455224 0.515625 +vt 0.455224 0.140625 +vt 0.455224 0.562500 +vt 0.455224 0.187500 +vt 0.455224 0.609375 +vt 0.455224 0.234375 +vt 0.455224 0.656250 +vt 0.455224 0.281250 +vt 0.455224 0.703125 +vt 0.455224 0.375000 +vt 0.455224 0.328125 +vt 0.455224 -0.000000 +vt 0.455224 0.421875 +vt 0.919776 0.695312 +vt 0.919776 0.718750 +vt 0.919776 0.671875 +vt 0.919776 0.648438 +vt 0.919776 0.625000 +vt 0.919776 0.789062 +vt 0.919776 0.812500 +vt 0.919776 0.765625 +vt 0.919776 0.742188 +vt 0.921642 0.765625 +vt 0.919776 0.757812 +vt 0.921642 0.757812 +vt 0.921642 0.750000 +vt 0.919776 0.742188 +vt 0.921642 0.742188 +vt 0.921642 0.796875 +vt 0.919776 0.789062 +vt 0.921642 0.789062 +vt 0.921642 0.781250 +vt 0.919776 0.773438 +vt 0.921642 0.773438 +vt 0.919776 0.750000 +vt 0.919776 0.734375 +vt 0.921642 0.734375 +vt 0.919776 0.781250 +vt 0.919776 0.765625 +vt 0.869403 0.765625 +vt 0.869403 0.625000 +vt 0.869403 0.671875 +vt 0.869403 0.742188 +vt 0.869403 0.789062 +vt 0.869403 0.648438 +vt 0.869403 0.695312 +vt 0.869403 0.718750 +vt 0.626866 0.273438 +vt 0.746269 0.312500 +vt 0.626866 0.312500 +vt 0.626866 0.195312 +vt 0.746269 0.234375 +vt 0.626866 0.234375 +vt 0.626866 0.117188 +vt 0.746269 0.156250 +vt 0.626866 0.156250 +vt 0.746269 0.351562 +vt 0.626866 0.351562 +vt 0.626866 0.585938 +vt 0.746269 0.625000 +vt 0.626866 0.625000 +vt 0.746269 0.195312 +vt 0.626866 0.039062 +vt 0.746269 0.078125 +vt 0.626866 0.078125 +vt 0.626866 0.429688 +vt 0.746269 0.468750 +vt 0.626866 0.468750 +vt 0.626866 0.390625 +vt 0.746269 0.429688 +vt 0.626866 -0.000000 +vt 0.746269 0.039062 +vt 0.746269 0.273438 +vt 0.626866 0.507812 +vt 0.746269 0.546875 +vt 0.626866 0.546875 +vt 0.746269 0.117188 +vt 0.746269 0.507812 +vt 0.746269 0.390625 +vt 0.746269 0.585938 +vt 0.925373 0.156250 +vt 0.925373 0.078125 +vt 0.925373 0.585938 +vt 0.925373 0.468750 +vt 0.925373 0.390625 +vt 0.925373 0.507812 +vt 0.925373 0.234375 +vt 0.925373 0.117188 +vt 0.925373 0.000000 +vt 0.925373 0.273438 +vt 0.925373 0.351562 +vt 0.925373 0.195312 +vt 0.925373 0.546875 +vt 0.925373 0.429688 +vt 0.925373 0.312500 +vt 0.925373 0.039062 +vt 0.895522 0.007812 +vt 0.895522 0.320312 +vt 0.895522 0.539062 +vt 0.895522 0.515625 +vt 0.895522 0.164062 +vt 0.895522 0.304688 +vt 0.895522 0.281250 +vt 0.895522 0.226562 +vt 0.895522 0.203125 +vt 0.895522 0.554688 +vt 0.895522 0.070312 +vt 0.895522 0.046875 +vt 0.895522 0.617188 +vt 0.895522 0.593750 +vt 0.895522 0.085938 +vt 0.895522 0.398438 +vt 0.895522 0.242188 +vt 0.895522 0.125000 +vt 0.895522 0.437500 +vt 0.895522 0.382812 +vt 0.895522 0.359375 +vt 0.895522 0.476562 +vt 0.895522 0.460938 +vt 0.880597 0.445312 +vt 0.880597 0.367188 +vt 0.895522 0.031250 +vt 0.880597 0.015625 +vt 0.895522 0.343750 +vt 0.880597 0.328125 +vt 0.880597 0.523438 +vt 0.895522 0.187500 +vt 0.880597 0.171875 +vt 0.880597 0.289062 +vt 0.880597 0.210938 +vt 0.895522 0.578125 +vt 0.880597 0.562500 +vt 0.880597 0.054688 +vt 0.880597 0.601562 +vt 0.895522 0.109375 +vt 0.880597 0.093750 +vt 0.895522 0.421875 +vt 0.880597 0.406250 +vt 0.895522 0.265625 +vt 0.880597 0.250000 +vt 0.895522 0.148438 +vt 0.880597 0.132812 +vt 0.895522 0.500000 +vt 0.880597 0.484375 +vt 0.223881 -0.000000 +vt 0.746269 0.750000 +vt 0.805970 0.656250 +vt 0.805970 0.281250 +vt 0.805970 0.703125 +vt 0.805970 0.328125 +vt 0.776119 -0.000000 +vt 0.805970 0.046875 +vt 0.805970 0.093750 +vt 0.805970 0.515625 +vt 0.805970 0.140625 +vt 0.805970 0.609375 +vt 0.880597 0.226562 +vt 0.880597 0.265625 +vt 0.880597 0.304688 +vt 0.880597 0.343750 +vt 0.880597 0.382812 +vt 0.880597 0.398438 +vt 0.880597 0.460938 +vt 0.880597 0.476562 +vt 0.880597 0.539062 +vt 0.880597 0.554688 +vt 0.880597 0.617188 +vt 0.880597 0.007812 +vt 0.880597 0.046875 +vt 0.880597 0.109375 +vt 0.880597 0.148438 +vt 0.880597 0.164062 +vt 1.000000 0.265625 +vt 1.000000 0.031250 +vt 1.000000 0.359375 +vt 1.000000 0.578125 +vt 1.000000 0.343750 +vt 1.000000 0.187500 +vt 1.000000 0.593750 +vt 1.000000 0.421875 +vt 1.000000 0.085938 +vt 1.000000 0.500000 +vt 1.000000 0.515625 +vt 1.000000 0.125000 +vt 1.000000 0.281250 +vt 1.000000 0.226562 +vt 1.000000 0.046875 +vt 1.000000 0.437500 +vt 0.753731 0.750000 +vt 0.789179 0.750000 +vt 0.455224 0.750000 +vt 0.919776 0.796875 +vt 0.869403 0.781250 +vt 0.869403 0.640625 +vt 0.869403 0.687500 +vt 0.869403 0.757812 +vt 0.869403 0.804688 +vt 0.869403 0.664062 +vt 0.869403 0.710938 +vt 0.869403 0.734375 +vt 0.746269 0.000000 +vt 0.925373 0.625000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.0000 0.1414 -0.9899 +vn 0.0000 -0.1414 0.9899 +vn 0.7035 -0.1005 0.7035 +vn 0.7035 0.1005 -0.7035 +vn -0.7035 0.1005 -0.7035 +vn -0.7035 -0.1005 0.7035 +vn 0.0000 0.2425 0.9701 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.8660 0.5000 -0.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.9239 -0.3827 0.0000 +vn 0.3827 0.9239 0.0000 +vn -0.9239 0.3827 0.0000 +vn -0.3827 -0.9239 0.0000 +vn -0.3827 0.9239 0.0000 +vn -0.9239 -0.3827 0.0000 +vn 0.3827 -0.9239 0.0000 +vn 0.9239 0.3827 0.0000 +vn 0.6860 0.6860 -0.2425 +vn 0.8963 0.3713 -0.2425 +vn -0.6860 -0.6860 -0.2425 +vn -0.3713 -0.8963 -0.2425 +vn 0.3713 0.8963 -0.2425 +vn -0.0000 -0.9701 -0.2425 +vn -0.3713 0.8963 -0.2425 +vn -0.0000 0.9701 -0.2425 +vn 0.3713 -0.8963 -0.2425 +vn -0.6860 0.6860 -0.2425 +vn 0.6860 -0.6860 -0.2425 +vn -0.8963 0.3713 -0.2425 +vn 0.8963 -0.3713 -0.2425 +vn -0.9701 -0.0000 -0.2425 +vn 0.9701 0.0000 -0.2425 +vn -0.8963 -0.3713 -0.2425 +vn 0.8263 0.3423 -0.4472 +vn 0.6325 0.6325 -0.4472 +vn 0.3423 0.8263 -0.4472 +vn -0.0000 0.8944 -0.4472 +vn -0.3423 0.8263 -0.4472 +vn -0.6325 0.6325 -0.4472 +vn -0.8263 0.3423 -0.4472 +vn -0.8944 -0.0000 -0.4472 +vn -0.8263 -0.3423 -0.4472 +vn -0.6325 -0.6325 -0.4472 +vn -0.3423 -0.8263 -0.4472 +vn -0.0000 -0.8944 -0.4472 +vn 0.3423 -0.8263 -0.4472 +vn 0.6325 -0.6325 -0.4472 +vn 0.8263 -0.3423 -0.4472 +vn 0.8944 -0.0000 -0.4472 +vn 0.5657 0.5657 -0.6000 +vn 0.3061 0.7391 -0.6000 +vn 0.0000 -0.8000 -0.6000 +vn 0.3061 -0.7391 -0.6000 +vn -0.3061 0.7391 -0.6000 +vn -0.5657 0.5657 -0.6000 +vn -0.5657 -0.5657 -0.6000 +vn -0.3061 -0.7391 -0.6000 +vn 0.0000 0.8000 -0.6000 +vn 0.8000 0.0000 -0.6000 +vn 0.7391 0.3061 -0.6000 +vn -0.7391 0.3061 -0.6000 +vn 0.5657 -0.5657 -0.6000 +vn 0.7391 -0.3061 -0.6000 +vn -0.8000 -0.0000 -0.6000 +vn -0.7391 -0.3061 -0.6000 +vn 0.3536 0.6124 -0.7071 +vn 0.5738 0.8140 0.0899 +vn 0.1205 0.7727 -0.6233 +vn -0.6089 -0.4907 -0.6233 +vn -0.4181 -0.9040 0.0899 +vn -0.3536 -0.6124 0.7071 +vn 0.3058 -0.1766 0.9356 +vn 0.3536 0.6124 0.7071 +vn -0.3639 0.2101 -0.9074 +vn -0.3536 -0.6124 -0.7071 +vn -0.0595 -0.7094 0.7023 +vn 0.5846 0.4062 0.7023 +vn 0.3639 -0.2101 0.9074 +vn 0.6089 0.4907 0.6233 +vn 0.4181 0.9040 -0.0899 +vn 0.0595 0.7094 -0.7023 +vn -0.3058 0.1766 -0.9356 +vn -0.5846 -0.4062 -0.7023 +vn -0.1205 -0.7727 0.6233 +vn -0.5738 -0.8140 -0.0899 +vn 0.1951 0.9808 -0.0000 +vn 0.9808 0.1951 0.0000 +vn 0.3684 -0.8894 0.2707 +vn 0.0000 -0.8777 0.4792 +vn 0.0000 -0.9627 0.2707 +vn -0.3684 0.8894 0.2707 +vn 0.0000 0.8777 0.4792 +vn 0.0000 0.9627 0.2707 +vn -0.8894 -0.3684 0.2707 +vn -0.6206 -0.6207 0.4792 +vn -0.8109 -0.3359 0.4792 +vn 0.8894 0.3684 0.2707 +vn 0.8777 0.0000 0.4792 +vn 0.9627 0.0000 0.2707 +vn 0.3684 0.8894 0.2707 +vn 0.3359 0.8109 0.4792 +vn 0.6206 0.6207 0.4792 +vn 0.8109 0.3359 0.4792 +vn -0.3684 -0.8894 0.2707 +vn -0.6807 -0.6807 0.2707 +vn 0.6206 -0.6207 0.4792 +vn 0.3359 -0.8109 0.4792 +vn -0.3359 -0.8109 0.4792 +vn 0.8894 -0.3684 0.2707 +vn 0.6807 -0.6807 0.2707 +vn -0.8894 0.3684 0.2707 +vn -0.6206 0.6207 0.4792 +vn -0.6807 0.6807 0.2707 +vn 0.6807 0.6807 0.2707 +vn 0.8109 -0.3359 0.4792 +vn -0.9627 -0.0000 0.2707 +vn -0.8109 0.3359 0.4792 +vn -0.3359 0.8109 0.4792 +vn -0.8777 -0.0000 0.4792 +s off +f 14/1/1 47/2/1 15/3/1 +f 15/4/1 48/5/1 16/6/1 +f 48/5/1 1/7/1 16/8/1 +f 33/9/1 2/10/1 1/11/1 +f 34/12/1 3/13/1 2/14/1 +f 35/15/1 4/16/1 3/17/1 +f 4/18/1 37/19/1 5/20/1 +f 37/19/1 6/21/1 5/22/1 +f 6/23/1 39/24/1 7/25/1 +f 39/24/1 8/26/1 7/27/1 +f 8/28/1 41/29/1 9/30/1 +f 9/31/1 42/32/1 10/33/1 +f 42/32/1 11/34/1 10/35/1 +f 43/36/1 12/37/1 11/38/1 +f 44/39/1 13/40/1 12/41/1 +f 45/42/1 14/43/1 13/44/1 +f 77/45/2 62/46/2 61/47/2 +f 78/48/2 63/49/2 62/46/2 +f 79/50/2 64/51/2 63/49/2 +f 64/51/2 65/52/2 49/53/2 +f 49/53/2 66/54/2 50/55/2 +f 66/56/2 51/57/2 50/55/2 +f 67/58/2 52/59/2 51/57/2 +f 68/60/2 53/61/2 52/59/2 +f 69/62/2 54/63/2 53/61/2 +f 70/64/2 55/65/2 54/63/2 +f 71/66/2 56/67/2 55/65/2 +f 72/68/2 57/69/2 56/67/2 +f 73/70/2 58/71/2 57/72/2 +f 74/73/2 59/74/2 58/71/2 +f 59/74/2 76/75/2 60/76/2 +f 76/77/2 61/47/2 60/76/2 +f 112/78/1 100/79/1 104/80/1 +f 87/81/2 91/82/2 95/83/2 +f 115/84/3 114/85/3 113/86/3 +f 117/87/4 116/88/4 115/84/4 +f 120/89/5 113/86/5 114/85/5 +f 114/90/6 131/91/6 128/92/6 +f 131/91/7 127/93/7 128/92/7 +f 119/94/8 127/93/8 113/95/8 +f 123/96/1 136/97/1 124/98/1 +f 128/92/1 125/99/1 126/100/1 +f 120/89/3 125/101/3 119/102/3 +f 124/103/8 135/104/8 122/105/8 +f 121/106/6 133/107/6 123/96/6 +f 132/108/2 129/109/2 130/110/2 +f 117/87/3 129/109/3 118/111/3 +f 122/105/2 134/112/2 121/106/2 +f 145/113/7 150/114/7 147/115/7 +f 148/116/3 151/117/3 146/118/3 +f 142/119/1 143/120/1 144/121/1 +f 138/122/2 139/123/2 137/124/2 +f 143/120/3 137/124/3 144/121/3 +f 142/125/7 140/126/7 141/127/7 +f 141/128/8 138/122/8 143/129/8 +f 144/130/6 139/123/6 142/131/6 +f 147/132/8 149/133/8 148/134/8 +f 146/135/6 152/136/6 145/137/6 +f 151/117/2 150/114/2 152/136/2 +f 147/138/1 146/135/1 145/137/1 +f 153/139/9 158/140/9 155/141/9 +f 156/142/10 159/143/10 154/144/10 +f 155/145/11 157/146/11 156/147/11 +f 154/148/12 160/149/12 153/150/12 +f 159/143/2 158/140/2 160/149/2 +f 155/151/1 154/148/1 153/150/1 +f 166/152/1 167/153/1 168/154/1 +f 161/155/2 164/156/2 163/157/2 +f 167/153/10 161/155/10 168/154/10 +f 166/158/9 164/156/9 165/159/9 +f 165/160/11 162/161/11 167/162/11 +f 168/163/12 163/157/12 166/164/12 +f 227/165/2 223/166/2 219/167/2 +f 602/168/2 235/169/2 234/170/2 +f 248/171/2 601/172/2 233/173/2 +f 614/174/2 247/175/2 246/176/2 +f 612/177/2 245/178/2 244/179/2 +f 610/180/2 243/181/2 242/182/2 +f 608/183/2 241/184/2 240/185/2 +f 606/186/2 239/187/2 238/188/2 +f 604/189/2 237/190/2 236/191/2 +f 241/192/2 610/193/2 242/182/2 +f 239/187/2 608/194/2 240/185/2 +f 237/190/2 606/195/2 238/188/2 +f 235/169/2 604/196/2 236/191/2 +f 233/173/2 602/197/2 234/170/2 +f 615/198/2 248/171/2 247/175/2 +f 245/178/2 614/199/2 246/176/2 +f 243/181/2 612/200/2 244/179/2 +f 267/201/3 266/202/3 265/203/3 +f 267/201/2 272/204/2 268/205/2 +f 266/202/1 269/206/1 265/203/1 +f 268/205/6 270/207/6 266/202/6 +f 265/203/8 271/208/8 267/201/8 +f 275/209/3 273/210/3 274/211/3 +f 288/212/13 290/213/13 285/214/13 +f 282/215/14 294/216/14 283/217/14 +f 279/218/7 278/219/7 280/220/7 +f 287/221/6 293/222/6 296/223/6 +f 294/216/15 284/224/15 283/217/15 +f 288/212/16 296/223/16 295/225/16 +f 285/214/17 289/226/17 286/227/17 +f 291/228/18 281/229/18 292/230/18 +f 286/227/8 292/230/8 281/229/8 +f 278/219/8 274/231/8 280/220/8 +f 277/232/2 275/233/2 278/219/2 +f 279/218/6 276/234/6 277/232/6 +f 280/220/1 273/235/1 279/218/1 +f 299/236/14 298/237/14 297/238/14 +f 302/239/13 304/240/13 303/241/13 +f 299/242/8 303/241/8 304/240/8 +f 307/243/19 306/244/19 305/245/19 +f 300/246/6 302/239/6 298/237/6 +f 305/247/8 312/248/8 307/243/8 +f 314/249/20 315/250/20 313/251/20 +f 308/252/6 309/253/6 306/254/6 +f 307/243/3 311/255/3 308/252/3 +f 314/249/21 320/256/21 316/257/21 +f 315/250/2 320/258/2 317/259/2 +f 313/251/1 319/260/1 314/249/1 +f 315/250/22 318/261/22 313/251/22 +f 350/262/23 359/263/23 358/264/23 +f 348/265/23 357/266/23 356/267/23 +f 346/268/23 355/269/23 354/270/23 +f 351/271/23 360/272/23 359/263/23 +f 350/273/23 357/274/23 349/275/23 +f 348/276/23 355/269/23 347/277/23 +f 346/278/23 353/279/23 345/280/23 +f 352/281/23 353/279/23 360/272/23 +f 365/282/20 367/283/20 361/284/20 +f 370/285/6 371/286/6 369/287/6 +f 386/288/8 390/289/8 389/290/8 +f 369/287/1 375/291/1 370/285/1 +f 370/285/3 376/292/3 372/293/3 +f 371/286/7 374/294/7 369/287/7 +f 372/293/2 373/295/2 371/286/2 +f 392/296/6 388/297/6 391/298/6 +f 389/299/7 388/297/7 386/288/7 +f 380/300/7 383/301/7 384/302/7 +f 379/303/6 378/304/6 380/305/6 +f 385/306/3 392/307/3 390/308/3 +f 380/300/2 386/288/2 379/309/2 +f 381/310/2 387/311/2 384/302/2 +f 379/309/2 388/297/2 381/310/2 +f 384/302/2 385/306/2 380/300/2 +f 377/312/1 390/289/1 378/304/1 +f 383/313/1 391/314/1 382/315/1 +f 382/315/1 389/290/1 377/312/1 +f 378/304/1 392/316/1 383/313/1 +f 383/313/8 381/317/8 384/318/8 +f 382/319/3 379/309/3 381/310/3 +f 411/320/1 588/321/1 587/322/1 +f 419/323/1 594/324/1 418/325/1 +f 411/320/1 586/326/1 410/327/1 +f 417/328/1 594/329/1 593/330/1 +f 410/327/1 585/331/1 409/332/1 +f 416/333/1 593/334/1 592/335/1 +f 409/332/1 600/336/1 424/337/1 +f 415/338/1 592/339/1 591/340/1 +f 424/337/1 599/341/1 423/342/1 +f 414/343/1 591/344/1 590/345/1 +f 423/342/1 598/346/1 422/347/1 +f 413/348/1 590/349/1 589/350/1 +f 421/351/1 598/352/1 597/353/1 +f 421/351/1 596/354/1 420/355/1 +f 413/348/1 588/356/1 412/357/1 +f 419/323/1 596/358/1 595/359/1 +f 458/360/6 459/361/6 457/362/6 +f 472/363/6 466/364/6 468/365/6 +f 460/366/2 461/367/2 459/361/2 +f 457/362/1 463/368/1 458/360/1 +f 458/360/3 464/369/3 460/366/3 +f 459/361/7 462/370/7 457/362/7 +f 469/371/8 467/372/8 465/373/8 +f 471/374/7 468/365/7 467/372/7 +f 470/375/3 465/376/3 466/364/3 +f 480/377/6 474/378/6 476/379/6 +f 477/380/8 475/381/8 473/382/8 +f 479/383/7 476/379/7 475/381/7 +f 478/384/3 473/385/3 474/378/3 +f 488/386/6 482/387/6 484/388/6 +f 485/389/8 483/390/8 481/391/8 +f 487/392/7 484/388/7 483/390/7 +f 486/393/3 481/394/3 482/387/3 +f 490/395/7 491/396/7 489/397/7 +f 492/398/24 493/399/24 491/396/24 +f 489/397/1 495/400/1 490/395/1 +f 492/398/6 495/401/6 496/402/6 +f 491/396/8 494/403/8 489/397/8 +f 512/404/1 535/405/1 536/406/1 +f 503/407/2 507/408/2 511/409/2 +f 525/410/1 527/411/1 521/412/1 +f 502/413/1 529/414/1 531/415/1 +f 508/416/1 533/417/1 534/418/1 +f 512/404/1 530/419/1 498/420/1 +f 498/420/1 529/421/1 500/422/1 +f 502/413/1 532/423/1 504/424/1 +f 508/416/1 535/425/1 510/426/1 +f 504/424/1 533/427/1 506/428/1 +f 541/429/1 540/430/1 539/431/1 +f 555/432/1 558/433/1 554/434/1 +f 551/435/2 562/436/2 550/437/2 +f 578/438/2 567/439/2 579/440/2 +f 559/441/1 552/442/1 553/443/1 +f 558/433/1 553/443/1 554/434/1 +f 560/444/1 556/445/1 552/442/1 +f 564/446/2 549/447/2 548/448/2 +f 563/449/2 547/450/2 564/446/2 +f 562/436/2 546/451/2 563/449/2 +f 574/452/1 571/453/1 575/454/1 +f 128/92/6 120/455/6 114/90/6 +f 131/91/6 118/456/6 129/457/6 +f 132/108/8 117/458/8 115/459/8 +f 127/93/8 115/459/8 113/95/8 +f 251/460/2 263/461/2 259/462/2 +f 570/463/1 577/464/1 576/465/1 +f 571/453/1 576/465/1 575/454/1 +f 569/466/1 573/467/1 577/464/1 +f 565/468/2 580/469/2 581/470/2 +f 566/471/2 582/472/2 565/468/2 +f 567/439/2 583/473/2 566/471/2 +f 14/1/1 46/474/1 47/2/1 +f 15/4/1 47/2/1 48/5/1 +f 48/5/1 33/9/1 1/7/1 +f 33/9/1 34/12/1 2/10/1 +f 34/12/1 35/15/1 3/13/1 +f 35/15/1 36/475/1 4/16/1 +f 4/18/1 36/475/1 37/19/1 +f 37/19/1 38/476/1 6/21/1 +f 6/23/1 38/476/1 39/24/1 +f 39/24/1 40/477/1 8/26/1 +f 8/28/1 40/477/1 41/29/1 +f 9/31/1 41/478/1 42/32/1 +f 42/32/1 43/36/1 11/34/1 +f 43/36/1 44/39/1 12/37/1 +f 44/39/1 45/42/1 13/40/1 +f 45/42/1 46/474/1 14/43/1 +f 77/45/2 78/479/2 62/46/2 +f 78/48/2 79/480/2 63/49/2 +f 79/50/2 80/481/2 64/51/2 +f 64/51/2 80/482/2 65/52/2 +f 49/53/2 65/483/2 66/54/2 +f 66/56/2 67/484/2 51/57/2 +f 67/58/2 68/485/2 52/59/2 +f 68/60/2 69/486/2 53/61/2 +f 69/62/2 70/487/2 54/63/2 +f 70/64/2 71/488/2 55/65/2 +f 71/66/2 72/489/2 56/67/2 +f 72/68/2 73/490/2 57/69/2 +f 73/70/2 74/491/2 58/71/2 +f 74/73/2 75/492/2 59/74/2 +f 59/74/2 75/493/2 76/75/2 +f 76/77/2 77/494/2 61/47/2 +f 112/78/1 97/495/1 98/496/1 +f 98/496/1 99/497/1 112/78/1 +f 99/497/1 100/79/1 112/78/1 +f 100/79/1 101/498/1 102/499/1 +f 102/499/1 103/500/1 100/79/1 +f 103/500/1 104/80/1 100/79/1 +f 104/80/1 105/501/1 106/502/1 +f 106/502/1 107/503/1 108/504/1 +f 108/504/1 109/505/1 112/78/1 +f 109/505/1 110/506/1 112/78/1 +f 110/506/1 111/507/1 112/78/1 +f 104/80/1 106/502/1 112/78/1 +f 106/502/1 108/504/1 112/78/1 +f 95/83/2 96/508/2 81/509/2 +f 81/509/2 82/510/2 83/511/2 +f 83/511/2 84/512/2 87/81/2 +f 84/512/2 85/513/2 87/81/2 +f 85/513/2 86/514/2 87/81/2 +f 87/81/2 88/515/2 89/516/2 +f 89/516/2 90/517/2 87/81/2 +f 90/517/2 91/82/2 87/81/2 +f 91/82/2 92/518/2 93/519/2 +f 93/519/2 94/520/2 91/82/2 +f 94/520/2 95/83/2 91/82/2 +f 95/83/2 81/509/2 87/81/2 +f 81/509/2 83/511/2 87/81/2 +f 115/84/3 116/88/3 114/85/3 +f 117/87/4 118/111/4 116/88/4 +f 120/89/5 119/102/5 113/86/5 +f 114/90/6 116/521/6 131/91/6 +f 131/91/7 132/108/7 127/93/7 +f 119/94/8 125/522/8 127/93/8 +f 123/96/1 133/107/1 136/97/1 +f 128/92/1 127/93/1 125/99/1 +f 120/89/3 126/523/3 125/101/3 +f 124/103/8 136/524/8 135/104/8 +f 121/106/6 134/112/6 133/107/6 +f 132/108/2 131/91/2 129/109/2 +f 117/87/3 130/110/3 129/109/3 +f 122/105/2 135/104/2 134/112/2 +f 145/113/7 152/136/7 150/114/7 +f 148/116/3 149/133/3 151/117/3 +f 142/119/1 141/525/1 143/120/1 +f 138/122/2 140/126/2 139/123/2 +f 143/120/3 138/122/3 137/124/3 +f 142/125/7 139/123/7 140/126/7 +f 141/128/8 140/126/8 138/122/8 +f 144/130/6 137/124/6 139/123/6 +f 147/132/8 150/114/8 149/133/8 +f 146/135/6 151/117/6 152/136/6 +f 151/117/2 149/133/2 150/114/2 +f 147/138/1 148/526/1 146/135/1 +f 153/139/9 160/149/9 158/140/9 +f 156/142/10 157/146/10 159/143/10 +f 155/145/11 158/140/11 157/146/11 +f 154/148/12 159/143/12 160/149/12 +f 159/143/2 157/146/2 158/140/2 +f 155/151/1 156/527/1 154/148/1 +f 166/152/1 165/528/1 167/153/1 +f 161/155/2 162/161/2 164/156/2 +f 167/153/10 162/161/10 161/155/10 +f 166/158/9 163/157/9 164/156/9 +f 165/160/11 164/156/11 162/161/11 +f 168/163/12 161/155/12 163/157/12 +f 219/167/2 218/529/2 217/530/2 +f 217/530/2 232/531/2 219/167/2 +f 232/531/2 231/532/2 219/167/2 +f 231/532/2 230/533/2 229/534/2 +f 229/534/2 228/535/2 227/165/2 +f 227/165/2 226/536/2 223/166/2 +f 226/536/2 225/537/2 223/166/2 +f 225/537/2 224/538/2 223/166/2 +f 223/166/2 222/539/2 221/540/2 +f 221/540/2 220/541/2 219/167/2 +f 231/532/2 229/534/2 219/167/2 +f 229/534/2 227/165/2 219/167/2 +f 223/166/2 221/540/2 219/167/2 +f 602/168/2 603/542/2 235/169/2 +f 248/171/2 616/543/2 601/172/2 +f 614/174/2 615/544/2 247/175/2 +f 612/177/2 613/545/2 245/178/2 +f 610/180/2 611/546/2 243/181/2 +f 608/183/2 609/547/2 241/184/2 +f 606/186/2 607/548/2 239/187/2 +f 604/189/2 605/549/2 237/190/2 +f 241/192/2 609/550/2 610/193/2 +f 239/187/2 607/551/2 608/194/2 +f 237/190/2 605/552/2 606/195/2 +f 235/169/2 603/553/2 604/196/2 +f 233/173/2 601/554/2 602/197/2 +f 615/198/2 616/555/2 248/171/2 +f 245/178/2 613/556/2 614/199/2 +f 243/181/2 611/557/2 612/200/2 +f 267/201/3 268/205/3 266/202/3 +f 267/201/2 271/558/2 272/204/2 +f 266/202/1 270/559/1 269/206/1 +f 268/205/6 272/560/6 270/207/6 +f 265/203/8 269/561/8 271/208/8 +f 275/209/3 276/234/3 273/210/3 +f 288/212/13 295/225/13 290/213/13 +f 282/215/14 291/562/14 294/216/14 +f 279/218/7 277/232/7 278/219/7 +f 287/221/6 284/224/6 293/222/6 +f 294/216/15 293/222/15 284/224/15 +f 288/212/16 287/221/16 296/223/16 +f 285/214/17 290/213/17 289/226/17 +f 291/228/18 282/563/18 281/229/18 +f 286/227/8 289/226/8 292/230/8 +f 278/219/8 275/564/8 274/231/8 +f 277/232/2 276/565/2 275/233/2 +f 279/218/6 273/210/6 276/234/6 +f 280/220/1 274/566/1 273/235/1 +f 299/236/14 300/246/14 298/237/14 +f 302/239/13 301/567/13 304/240/13 +f 299/242/8 297/568/8 303/241/8 +f 307/243/19 308/252/19 306/244/19 +f 300/246/6 301/567/6 302/239/6 +f 305/247/8 310/569/8 312/248/8 +f 314/249/20 316/257/20 315/250/20 +f 308/252/6 311/255/6 309/253/6 +f 307/243/3 312/248/3 311/255/3 +f 314/249/21 319/570/21 320/256/21 +f 315/250/2 316/257/2 320/258/2 +f 313/251/1 318/571/1 319/260/1 +f 315/250/22 317/572/22 318/261/22 +f 350/262/23 351/573/23 359/263/23 +f 348/265/23 349/574/23 357/266/23 +f 346/268/23 347/575/23 355/269/23 +f 351/271/23 352/576/23 360/272/23 +f 350/273/23 358/264/23 357/274/23 +f 348/276/23 356/267/23 355/269/23 +f 346/278/23 354/270/23 353/279/23 +f 352/281/23 345/577/23 353/279/23 +f 361/284/20 362/578/20 363/579/20 +f 363/579/20 364/580/20 365/282/20 +f 365/282/20 366/581/20 367/283/20 +f 367/283/20 368/582/20 361/284/20 +f 361/284/20 363/579/20 365/282/20 +f 370/285/6 372/293/6 371/286/6 +f 386/288/8 385/306/8 390/289/8 +f 369/287/1 374/583/1 375/291/1 +f 370/285/3 375/584/3 376/292/3 +f 371/286/7 373/585/7 374/294/7 +f 372/293/2 376/586/2 373/295/2 +f 392/296/6 387/311/6 388/297/6 +f 389/299/7 391/587/7 388/297/7 +f 380/300/7 378/588/7 383/301/7 +f 379/303/6 377/312/6 378/304/6 +f 385/306/3 387/311/3 392/307/3 +f 380/300/2 385/306/2 386/288/2 +f 381/310/2 388/297/2 387/311/2 +f 379/309/2 386/288/2 388/297/2 +f 384/302/2 387/311/2 385/306/2 +f 377/312/1 389/290/1 390/289/1 +f 383/313/1 392/316/1 391/314/1 +f 382/315/1 391/314/1 389/290/1 +f 378/304/1 390/289/1 392/316/1 +f 383/313/8 382/315/8 381/317/8 +f 382/319/3 377/589/3 379/309/3 +f 411/320/1 412/357/1 588/321/1 +f 419/323/1 595/590/1 594/324/1 +f 411/320/1 587/591/1 586/326/1 +f 417/328/1 418/325/1 594/329/1 +f 410/327/1 586/592/1 585/331/1 +f 416/333/1 417/593/1 593/334/1 +f 409/332/1 585/594/1 600/336/1 +f 415/338/1 416/333/1 592/339/1 +f 424/337/1 600/595/1 599/341/1 +f 414/343/1 415/338/1 591/344/1 +f 423/342/1 599/596/1 598/346/1 +f 413/348/1 414/343/1 590/349/1 +f 421/351/1 422/347/1 598/352/1 +f 421/351/1 597/597/1 596/354/1 +f 413/348/1 589/598/1 588/356/1 +f 419/323/1 420/355/1 596/358/1 +f 458/360/6 460/366/6 459/361/6 +f 472/363/6 470/375/6 466/364/6 +f 460/366/2 464/599/2 461/367/2 +f 457/362/1 462/600/1 463/368/1 +f 458/360/3 463/601/3 464/369/3 +f 459/361/7 461/602/7 462/370/7 +f 469/371/8 471/374/8 467/372/8 +f 471/374/7 472/363/7 468/365/7 +f 470/375/3 469/603/3 465/376/3 +f 480/377/6 478/384/6 474/378/6 +f 477/380/8 479/383/8 475/381/8 +f 479/383/7 480/377/7 476/379/7 +f 478/384/3 477/604/3 473/385/3 +f 488/386/6 486/393/6 482/387/6 +f 485/389/8 487/392/8 483/390/8 +f 487/392/7 488/386/7 484/388/7 +f 486/393/3 485/605/3 481/394/3 +f 490/395/7 492/398/7 491/396/7 +f 492/398/24 496/606/24 493/399/24 +f 489/397/1 494/607/1 495/400/1 +f 492/398/6 490/395/6 495/401/6 +f 491/396/8 493/608/8 494/403/8 +f 512/404/1 510/426/1 535/405/1 +f 511/409/2 497/609/2 499/610/2 +f 499/610/2 501/611/2 511/409/2 +f 501/611/2 503/407/2 511/409/2 +f 503/407/2 505/612/2 507/408/2 +f 507/408/2 509/613/2 511/409/2 +f 521/412/1 522/614/1 523/615/1 +f 523/615/1 524/616/1 525/410/1 +f 525/410/1 526/617/1 527/411/1 +f 527/411/1 528/618/1 521/412/1 +f 521/412/1 523/615/1 525/410/1 +f 502/413/1 500/422/1 529/414/1 +f 508/416/1 506/619/1 533/417/1 +f 512/404/1 536/620/1 530/419/1 +f 498/420/1 530/621/1 529/421/1 +f 502/413/1 531/622/1 532/423/1 +f 508/416/1 534/623/1 535/425/1 +f 504/424/1 532/624/1 533/427/1 +f 539/431/1 537/625/1 538/626/1 +f 538/626/1 544/627/1 539/431/1 +f 544/627/1 543/628/1 539/431/1 +f 543/628/1 542/629/1 539/431/1 +f 542/629/1 541/429/1 539/431/1 +f 555/432/1 557/630/1 558/433/1 +f 551/435/2 561/631/2 562/436/2 +f 578/438/2 568/632/2 567/439/2 +f 559/441/1 560/444/1 552/442/1 +f 558/433/1 559/441/1 553/443/1 +f 560/444/1 545/633/1 556/445/1 +f 564/446/2 547/450/2 549/447/2 +f 563/449/2 546/451/2 547/450/2 +f 562/436/2 561/631/2 546/451/2 +f 574/452/1 572/634/1 571/453/1 +f 128/92/6 126/635/6 120/455/6 +f 131/91/6 116/521/6 118/456/6 +f 132/108/8 130/636/8 117/458/8 +f 127/93/8 132/108/8 115/459/8 +f 259/462/2 258/637/2 257/638/2 +f 257/638/2 256/639/2 259/462/2 +f 256/639/2 255/640/2 259/462/2 +f 255/640/2 254/641/2 253/642/2 +f 253/642/2 252/643/2 251/460/2 +f 251/460/2 250/644/2 263/461/2 +f 250/644/2 249/645/2 263/461/2 +f 249/645/2 264/646/2 263/461/2 +f 263/461/2 262/647/2 261/648/2 +f 261/648/2 260/649/2 259/462/2 +f 255/640/2 253/642/2 259/462/2 +f 253/642/2 251/460/2 259/462/2 +f 263/461/2 261/648/2 259/462/2 +f 570/463/1 569/466/1 577/464/1 +f 571/453/1 570/463/1 576/465/1 +f 569/466/1 584/650/1 573/467/1 +f 565/468/2 582/472/2 580/469/2 +f 566/471/2 583/473/2 582/472/2 +f 567/439/2 568/632/2 583/473/2 +s 1 +f 589/651/6 453/652/25 588/653/25 +f 593/654/7 449/655/26 592/656/26 +f 596/657/27 446/658/9 595/659/9 +f 600/660/28 442/661/11 599/662/11 +f 588/653/25 454/663/10 587/664/10 +f 592/656/26 450/665/12 591/666/12 +f 595/659/9 447/667/29 594/668/29 +f 599/662/11 443/669/30 598/670/30 +f 587/664/10 455/671/31 586/672/31 +f 591/666/12 451/673/32 590/674/32 +f 594/668/29 448/675/7 593/676/7 +f 598/670/30 444/677/8 597/678/8 +f 585/679/3 441/680/28 600/660/28 +f 597/678/8 445/681/27 596/657/27 +f 590/674/32 452/682/6 589/651/6 +f 586/672/31 456/683/3 585/679/3 +f 36/475/27 53/61/8 37/19/8 +f 44/39/25 61/47/6 45/42/6 +f 37/19/8 54/63/30 38/476/30 +f 45/42/6 62/46/32 46/474/32 +f 38/476/30 55/65/11 39/24/11 +f 46/474/32 63/49/12 47/2/12 +f 39/24/11 56/67/28 40/477/28 +f 47/2/12 64/51/26 48/5/26 +f 40/477/28 57/69/3 41/29/3 +f 33/9/7 50/55/29 34/12/29 +f 48/5/26 49/53/7 33/9/7 +f 41/478/3 58/71/31 42/32/31 +f 34/12/29 51/57/9 35/15/9 +f 42/32/31 59/74/10 43/36/10 +f 35/15/9 52/59/27 36/475/27 +f 43/36/10 60/76/25 44/39/25 +f 92/684/8 100/685/27 93/686/27 +f 84/687/6 108/688/25 85/689/25 +f 91/690/30 101/691/8 92/684/8 +f 83/692/32 109/693/6 84/687/6 +f 90/694/11 102/695/30 91/690/30 +f 82/696/12 110/697/32 83/692/32 +f 89/698/28 103/699/11 90/694/11 +f 81/700/26 111/701/12 82/696/12 +f 88/702/3 104/703/28 89/698/28 +f 95/704/29 97/705/7 96/706/7 +f 96/706/7 112/707/26 81/700/26 +f 87/708/31 105/709/3 88/710/3 +f 94/711/9 98/712/29 95/704/29 +f 86/713/10 106/714/31 87/708/31 +f 93/686/27 99/715/9 94/711/9 +f 85/689/25 107/716/10 86/713/10 +f 183/717/33 198/718/34 199/719/33 +f 175/720/35 192/721/36 176/722/36 +f 183/717/33 200/723/37 184/724/37 +f 176/722/36 193/725/38 177/726/38 +f 170/727/39 185/728/40 186/729/39 +f 184/724/37 185/730/40 169/731/40 +f 178/732/41 193/733/38 194/734/41 +f 171/735/42 186/736/39 187/737/42 +f 178/732/41 195/738/43 179/739/43 +f 172/740/44 187/741/42 188/742/44 +f 179/739/43 196/743/45 180/744/45 +f 172/740/44 189/745/46 173/746/46 +f 180/744/45 197/747/47 181/748/47 +f 174/749/48 189/750/46 190/751/48 +f 182/752/34 197/753/47 198/754/34 +f 174/749/48 191/755/35 175/720/35 +f 196/756/25 213/757/6 197/758/6 +f 189/759/8 206/760/30 190/761/30 +f 197/758/6 214/762/32 198/763/32 +f 190/761/30 207/764/11 191/765/11 +f 198/763/32 215/766/12 199/767/12 +f 191/765/11 208/768/28 192/769/28 +f 199/767/12 216/770/26 200/771/26 +f 192/769/28 209/772/3 193/773/3 +f 185/774/7 202/775/29 186/776/29 +f 200/771/26 201/777/7 185/774/7 +f 193/733/3 210/778/31 194/734/31 +f 186/776/29 203/779/9 187/780/9 +f 194/734/31 211/781/10 195/782/10 +f 187/780/9 204/783/27 188/784/27 +f 195/782/10 212/785/25 196/756/25 +f 188/784/27 205/786/8 189/759/8 +f 230/787/49 215/766/50 214/762/49 +f 231/788/50 216/770/51 215/766/50 +f 232/789/51 201/777/52 216/770/51 +f 217/790/52 202/775/53 201/777/52 +f 218/791/53 203/779/54 202/775/53 +f 203/779/54 220/792/55 204/783/55 +f 220/793/55 205/786/56 204/783/55 +f 205/786/56 222/794/57 206/760/57 +f 222/795/57 207/764/58 206/760/57 +f 207/764/58 224/796/59 208/768/59 +f 224/797/59 209/772/60 208/768/59 +f 209/798/60 226/799/61 210/778/61 +f 210/778/61 227/800/62 211/781/62 +f 227/801/62 212/785/63 211/781/62 +f 228/802/63 213/757/64 212/785/63 +f 213/757/64 230/803/49 214/762/49 +f 73/804/7 242/182/29 74/805/29 +f 66/806/31 235/169/10 67/807/10 +f 74/805/29 243/181/9 75/808/9 +f 67/807/10 236/191/25 68/809/25 +f 75/808/9 244/179/27 76/810/27 +f 68/809/25 237/190/6 69/811/6 +f 76/810/27 245/178/8 77/812/8 +f 69/811/6 238/188/32 70/813/32 +f 77/812/8 246/176/30 78/814/30 +f 70/813/32 239/187/12 71/815/12 +f 78/814/30 247/175/11 79/816/11 +f 71/815/12 240/185/26 72/817/26 +f 79/816/11 248/171/28 80/818/28 +f 72/817/26 241/184/7 73/819/7 +f 65/820/3 234/170/31 66/806/31 +f 80/818/28 233/173/3 65/820/3 +f 263/821/65 393/822/66 394/823/65 +f 257/824/67 399/825/68 400/826/67 +f 407/827/69 251/828/70 406/829/70 +f 255/830/71 401/831/72 402/832/71 +f 249/833/73 407/827/69 408/834/73 +f 261/835/74 395/836/75 396/837/74 +f 401/831/72 257/838/67 400/839/67 +f 251/840/70 405/841/76 406/829/70 +f 398/842/77 260/843/78 397/844/78 +f 253/845/79 403/846/80 404/847/79 +f 403/846/80 255/848/71 402/832/71 +f 397/844/78 261/849/74 396/837/74 +f 393/822/66 249/850/73 408/834/73 +f 262/851/75 394/823/65 395/836/75 +f 399/825/68 259/852/77 398/842/77 +f 405/841/76 253/853/79 404/847/79 +f 322/854/81 331/855/82 330/856/83 +f 327/857/21 336/858/84 335/859/85 +f 326/860/86 333/861/87 325/862/1 +f 324/863/88 331/855/82 323/864/22 +f 321/865/2 330/856/83 329/866/89 +f 321/865/2 336/858/84 328/867/90 +f 326/860/86 335/859/85 334/868/91 +f 325/869/1 332/870/92 324/863/88 +f 334/868/91 341/871/93 333/861/87 +f 331/855/82 340/872/94 339/873/95 +f 329/866/89 338/874/96 337/875/97 +f 329/866/89 344/876/98 336/858/84 +f 335/859/85 342/877/99 334/868/91 +f 332/870/92 341/878/93 340/872/94 +f 330/856/83 339/873/95 338/874/96 +f 336/858/84 343/879/100 335/859/85 +f 343/879/100 352/880/90 351/881/21 +f 341/871/93 350/882/86 349/883/1 +f 339/873/95 348/265/88 347/884/22 +f 337/875/97 346/885/81 345/886/2 +f 337/875/97 352/880/90 344/876/98 +f 342/877/99 351/881/21 350/882/86 +f 341/878/93 348/265/88 340/872/94 +f 339/873/95 346/885/81 338/874/96 +f 354/270/81 361/887/2 353/279/2 +f 353/279/2 368/888/90 360/272/90 +f 359/263/21 366/889/86 358/264/86 +f 357/266/1 364/890/88 356/267/88 +f 354/270/81 363/891/22 362/892/81 +f 359/263/21 368/888/90 367/893/21 +f 357/274/1 366/889/86 365/894/1 +f 356/267/88 363/891/22 355/269/22 +f 434/895/31 419/323/10 418/325/31 +f 427/896/9 412/357/27 411/320/9 +f 435/897/10 420/355/25 419/323/10 +f 428/898/27 413/348/8 412/357/27 +f 436/899/25 421/351/6 420/355/25 +f 429/900/8 414/343/30 413/348/8 +f 437/901/6 422/347/32 421/351/6 +f 430/902/30 415/338/11 414/343/30 +f 438/903/32 423/342/12 422/347/32 +f 431/904/11 416/333/28 415/338/11 +f 439/905/12 424/337/26 423/342/12 +f 432/906/28 417/593/3 416/333/28 +f 425/907/7 410/327/29 409/332/7 +f 440/908/26 409/332/7 424/337/26 +f 433/909/3 418/325/31 417/328/3 +f 426/910/29 411/320/9 410/327/29 +f 498/420/7 499/911/12 497/912/7 +f 500/422/12 501/913/6 499/911/12 +f 502/413/6 503/914/10 501/913/6 +f 504/424/10 505/915/3 503/914/10 +f 506/619/3 507/916/11 505/917/3 +f 508/416/11 509/918/8 507/916/11 +f 510/426/8 511/919/9 509/918/8 +f 512/404/9 497/912/7 511/919/9 +f 513/920/7 528/921/12 520/922/12 +f 519/923/6 526/924/10 518/925/10 +f 517/926/3 524/927/11 516/928/11 +f 515/929/8 522/930/9 514/931/9 +f 520/922/12 527/932/6 519/923/6 +f 518/925/10 525/933/3 517/934/3 +f 516/928/11 523/935/8 515/929/8 +f 514/931/9 521/936/7 513/920/7 +f 534/623/11 543/937/8 535/425/8 +f 532/624/10 541/938/3 533/427/3 +f 529/414/12 539/939/6 531/415/6 +f 535/405/8 544/940/9 536/406/9 +f 533/417/3 542/941/11 534/418/11 +f 531/622/6 540/942/10 532/423/10 +f 530/621/7 537/943/12 529/421/12 +f 536/620/9 538/944/7 530/419/7 +f 560/444/26 548/448/101 545/633/101 +f 557/630/102 562/436/32 558/433/32 +f 558/433/32 563/449/12 559/441/12 +f 559/441/12 564/446/26 560/444/26 +f 18/945/31 601/946/3 17/947/3 +f 20/948/25 603/949/10 19/950/10 +f 22/951/32 605/952/6 21/953/6 +f 17/947/3 616/954/28 32/955/28 +f 26/956/29 609/957/7 25/958/7 +f 21/953/6 604/959/25 20/948/25 +f 24/960/26 607/961/12 23/962/12 +f 30/963/30 613/964/8 29/965/8 +f 31/966/11 614/967/30 30/963/30 +f 25/968/7 608/969/26 24/960/26 +f 19/950/10 602/970/31 18/945/31 +f 28/971/27 611/972/9 27/973/9 +f 23/962/12 606/974/32 22/951/32 +f 29/965/8 612/975/27 28/971/27 +f 32/955/28 615/976/11 31/966/11 +f 27/973/9 610/977/29 26/956/29 +f 395/836/32 620/978/6 396/837/6 +f 397/844/25 622/979/10 398/842/10 +f 400/839/3 625/980/28 401/831/28 +f 403/846/30 628/981/8 404/847/8 +f 405/841/27 630/982/9 406/829/9 +f 402/832/11 627/983/30 403/846/30 +f 393/822/26 618/984/12 394/823/12 +f 396/837/6 621/985/25 397/844/25 +f 399/825/31 624/986/3 400/826/3 +f 408/834/7 617/987/26 393/822/26 +f 406/829/9 631/988/29 407/827/29 +f 394/823/12 619/989/32 395/836/32 +f 401/831/28 626/990/11 402/832/11 +f 404/847/8 629/991/27 405/841/27 +f 407/827/29 632/992/7 408/834/7 +f 398/842/10 623/993/31 399/825/31 +f 623/993/103 640/994/104 624/986/105 +f 631/988/106 648/995/107 632/992/108 +f 627/983/109 642/996/110 643/997/111 +f 619/989/112 636/998/113 620/978/114 +f 617/987/115 648/999/107 633/1000/116 +f 619/989/112 634/1001/117 635/1002/118 +f 625/980/119 642/1003/110 626/990/120 +f 623/993/103 638/1004/121 639/1005/122 +f 625/980/119 640/1006/104 641/1007/123 +f 621/985/124 638/1008/121 622/979/125 +f 629/991/126 646/1009/127 630/982/128 +f 617/987/115 634/1010/117 618/984/129 +f 620/978/114 637/1011/130 621/985/124 +f 628/981/131 645/1012/132 629/991/126 +f 631/988/106 646/1013/127 647/1014/133 +f 627/983/109 644/1015/134 628/981/131 +f 644/1016/134 649/1017/1 645/1012/132 +f 646/1013/127 649/1018/1 647/1014/133 +f 639/1019/122 649/1020/1 640/994/104 +f 647/1021/133 649/1022/1 648/995/107 +f 642/996/110 649/1023/1 643/997/111 +f 635/1024/118 649/1025/1 636/998/113 +f 648/999/107 649/1026/1 633/1000/116 +f 634/1001/117 649/1027/1 635/1002/118 +f 641/1028/123 649/1029/1 642/1003/110 +f 638/1004/121 649/1030/1 639/1005/122 +f 640/1006/104 649/1031/1 641/1007/123 +f 637/1032/130 649/1033/1 638/1008/121 +f 645/1034/132 649/1035/1 646/1009/127 +f 633/1036/116 649/1037/1 634/1010/117 +f 636/1038/113 649/1039/1 637/1011/130 +f 643/1040/111 649/1041/1 644/1015/134 +f 569/466/26 581/470/101 584/650/101 +f 572/634/102 567/439/32 571/453/32 +f 571/453/32 566/471/12 570/463/12 +f 570/463/12 565/468/26 569/466/26 +f 589/651/6 452/682/6 453/652/25 +f 593/654/7 448/1042/7 449/655/26 +f 596/657/27 445/681/27 446/658/9 +f 600/660/28 441/680/28 442/661/11 +f 588/653/25 453/652/25 454/663/10 +f 592/656/26 449/655/26 450/665/12 +f 595/659/9 446/658/9 447/667/29 +f 599/662/11 442/661/11 443/669/30 +f 587/664/10 454/663/10 455/671/31 +f 591/666/12 450/665/12 451/673/32 +f 594/668/29 447/667/29 448/675/7 +f 598/670/30 443/669/30 444/677/8 +f 585/679/3 456/683/3 441/680/28 +f 597/678/8 444/677/8 445/681/27 +f 590/674/32 451/673/32 452/682/6 +f 586/672/31 455/671/31 456/683/3 +f 36/475/27 52/59/27 53/61/8 +f 44/39/25 60/76/25 61/47/6 +f 37/19/8 53/61/8 54/63/30 +f 45/42/6 61/47/6 62/46/32 +f 38/476/30 54/63/30 55/65/11 +f 46/474/32 62/46/32 63/49/12 +f 39/24/11 55/65/11 56/67/28 +f 47/2/12 63/49/12 64/51/26 +f 40/477/28 56/67/28 57/69/3 +f 33/9/7 49/53/7 50/55/29 +f 48/5/26 64/51/26 49/53/7 +f 41/478/3 57/72/3 58/71/31 +f 34/12/29 50/55/29 51/57/9 +f 42/32/31 58/71/31 59/74/10 +f 35/15/9 51/57/9 52/59/27 +f 43/36/10 59/74/10 60/76/25 +f 92/684/8 101/691/8 100/685/27 +f 84/687/6 109/693/6 108/688/25 +f 91/690/30 102/695/30 101/691/8 +f 83/692/32 110/697/32 109/693/6 +f 90/694/11 103/699/11 102/695/30 +f 82/696/12 111/701/12 110/697/32 +f 89/698/28 104/703/28 103/699/11 +f 81/700/26 112/707/26 111/701/12 +f 88/702/3 105/1043/3 104/703/28 +f 95/704/29 98/712/29 97/705/7 +f 96/706/7 97/705/7 112/707/26 +f 87/708/31 106/714/31 105/709/3 +f 94/711/9 99/715/9 98/712/29 +f 86/713/10 107/716/10 106/714/31 +f 93/686/27 100/685/27 99/715/9 +f 85/689/25 108/688/25 107/716/10 +f 183/717/33 182/752/34 198/718/34 +f 175/720/35 191/1044/35 192/721/36 +f 183/717/33 199/1045/33 200/723/37 +f 176/722/36 192/1046/36 193/725/38 +f 170/727/39 169/731/40 185/728/40 +f 184/724/37 200/1047/37 185/730/40 +f 178/732/41 177/1048/38 193/733/38 +f 171/735/42 170/727/39 186/736/39 +f 178/732/41 194/1049/41 195/738/43 +f 172/740/44 171/735/42 187/741/42 +f 179/739/43 195/1050/43 196/743/45 +f 172/740/44 188/1051/44 189/745/46 +f 180/744/45 196/1052/45 197/747/47 +f 174/749/48 173/746/46 189/750/46 +f 182/752/34 181/748/47 197/753/47 +f 174/749/48 190/1053/48 191/755/35 +f 196/756/25 212/785/25 213/757/6 +f 189/759/8 205/786/8 206/760/30 +f 197/758/6 213/757/6 214/762/32 +f 190/761/30 206/760/30 207/764/11 +f 198/763/32 214/762/32 215/766/12 +f 191/765/11 207/764/11 208/768/28 +f 199/767/12 215/766/12 216/770/26 +f 192/769/28 208/768/28 209/772/3 +f 185/774/7 201/777/7 202/775/29 +f 200/771/26 216/770/26 201/777/7 +f 193/733/3 209/798/3 210/778/31 +f 186/776/29 202/775/29 203/779/9 +f 194/734/31 210/778/31 211/781/10 +f 187/780/9 203/779/9 204/783/27 +f 195/782/10 211/781/10 212/785/25 +f 188/784/27 204/783/27 205/786/8 +f 230/787/49 231/1054/50 215/766/50 +f 231/788/50 232/1055/51 216/770/51 +f 232/789/51 217/1056/52 201/777/52 +f 217/790/52 218/1057/53 202/775/53 +f 218/791/53 219/1058/54 203/779/54 +f 203/779/54 219/1059/54 220/792/55 +f 220/793/55 221/1060/56 205/786/56 +f 205/786/56 221/1061/56 222/794/57 +f 222/795/57 223/1062/58 207/764/58 +f 207/764/58 223/1063/58 224/796/59 +f 224/797/59 225/1064/60 209/772/60 +f 209/798/60 225/1065/60 226/799/61 +f 210/778/61 226/1066/61 227/800/62 +f 227/801/62 228/1067/63 212/785/63 +f 228/802/63 229/1068/64 213/757/64 +f 213/757/64 229/1069/64 230/803/49 +f 73/804/7 241/192/7 242/182/29 +f 66/806/31 234/170/31 235/169/10 +f 74/805/29 242/182/29 243/181/9 +f 67/807/10 235/169/10 236/191/25 +f 75/808/9 243/181/9 244/179/27 +f 68/809/25 236/191/25 237/190/6 +f 76/810/27 244/179/27 245/178/8 +f 69/811/6 237/190/6 238/188/32 +f 77/812/8 245/178/8 246/176/30 +f 70/813/32 238/188/32 239/187/12 +f 78/814/30 246/176/30 247/175/11 +f 71/815/12 239/187/12 240/185/26 +f 79/816/11 247/175/11 248/171/28 +f 72/817/26 240/185/26 241/184/7 +f 65/820/3 233/173/3 234/170/31 +f 80/818/28 248/171/28 233/173/3 +f 263/821/65 264/1070/66 393/822/66 +f 257/824/67 258/1071/68 399/825/68 +f 407/827/69 250/1072/69 251/828/70 +f 255/830/71 256/1073/72 401/831/72 +f 249/833/73 250/1074/69 407/827/69 +f 261/835/74 262/1075/75 395/836/75 +f 401/831/72 256/1076/72 257/838/67 +f 251/840/70 252/1077/76 405/841/76 +f 398/842/77 259/1078/77 260/843/78 +f 253/845/79 254/1079/80 403/846/80 +f 403/846/80 254/1080/80 255/848/71 +f 397/844/78 260/1081/78 261/849/74 +f 393/822/66 264/1082/66 249/850/73 +f 262/851/75 263/1083/65 394/823/65 +f 399/825/68 258/1084/68 259/852/77 +f 405/841/76 252/1085/76 253/853/79 +f 322/854/81 323/864/22 331/855/82 +f 327/857/21 328/867/90 336/858/84 +f 326/860/86 334/868/91 333/861/87 +f 324/863/88 332/870/92 331/855/82 +f 321/865/2 322/854/81 330/856/83 +f 321/865/2 329/866/89 336/858/84 +f 326/860/86 327/857/21 335/859/85 +f 325/869/1 333/1086/87 332/870/92 +f 334/868/91 342/877/99 341/871/93 +f 331/855/82 332/870/92 340/872/94 +f 329/866/89 330/856/83 338/874/96 +f 329/866/89 337/875/97 344/876/98 +f 335/859/85 343/879/100 342/877/99 +f 332/870/92 333/1086/87 341/878/93 +f 330/856/83 331/855/82 339/873/95 +f 336/858/84 344/876/98 343/879/100 +f 343/879/100 344/876/98 352/880/90 +f 341/871/93 342/877/99 350/882/86 +f 339/873/95 340/872/94 348/265/88 +f 337/875/97 338/874/96 346/885/81 +f 337/875/97 345/886/2 352/880/90 +f 342/877/99 343/879/100 351/881/21 +f 341/878/93 349/574/1 348/265/88 +f 339/873/95 347/884/22 346/885/81 +f 354/270/81 362/892/81 361/887/2 +f 353/279/2 361/887/2 368/888/90 +f 359/263/21 367/893/21 366/889/86 +f 357/266/1 365/1087/1 364/890/88 +f 354/270/81 355/269/22 363/891/22 +f 359/263/21 360/272/90 368/888/90 +f 357/274/1 358/264/86 366/889/86 +f 356/267/88 364/890/88 363/891/22 +f 434/895/31 435/897/10 419/323/10 +f 427/896/9 428/898/27 412/357/27 +f 435/897/10 436/899/25 420/355/25 +f 428/898/27 429/900/8 413/348/8 +f 436/899/25 437/901/6 421/351/6 +f 429/900/8 430/902/30 414/343/30 +f 437/901/6 438/903/32 422/347/32 +f 430/902/30 431/904/11 415/338/11 +f 438/903/32 439/905/12 423/342/12 +f 431/904/11 432/906/28 416/333/28 +f 439/905/12 440/908/26 424/337/26 +f 432/906/28 433/1088/3 417/593/3 +f 425/907/7 426/910/29 410/327/29 +f 440/908/26 425/907/7 409/332/7 +f 433/909/3 434/895/31 418/325/31 +f 426/910/29 427/896/9 411/320/9 +f 498/420/7 500/422/12 499/911/12 +f 500/422/12 502/413/6 501/913/6 +f 502/413/6 504/424/10 503/914/10 +f 504/424/10 506/428/3 505/915/3 +f 506/619/3 508/416/11 507/916/11 +f 508/416/11 510/426/8 509/918/8 +f 510/426/8 512/404/9 511/919/9 +f 512/404/9 498/420/7 497/912/7 +f 513/920/7 521/936/7 528/921/12 +f 519/923/6 527/932/6 526/924/10 +f 517/926/3 525/1089/3 524/927/11 +f 515/929/8 523/935/8 522/930/9 +f 520/922/12 528/921/12 527/932/6 +f 518/925/10 526/924/10 525/933/3 +f 516/928/11 524/927/11 523/935/8 +f 514/931/9 522/930/9 521/936/7 +f 534/623/11 542/1090/11 543/937/8 +f 532/624/10 540/1091/10 541/938/3 +f 529/414/12 537/1092/12 539/939/6 +f 535/405/8 543/1093/8 544/940/9 +f 533/417/3 541/1094/3 542/941/11 +f 531/622/6 539/1095/6 540/942/10 +f 530/621/7 538/1096/7 537/943/12 +f 536/620/9 544/1097/9 538/944/7 +f 560/444/26 564/446/26 548/448/101 +f 557/630/102 550/437/102 562/436/32 +f 558/433/32 562/436/32 563/449/12 +f 559/441/12 563/449/12 564/446/26 +f 18/945/31 602/970/31 601/946/3 +f 20/948/25 604/959/25 603/949/10 +f 22/951/32 606/974/32 605/952/6 +f 17/947/3 601/946/3 616/954/28 +f 26/956/29 610/977/29 609/957/7 +f 21/953/6 605/952/6 604/959/25 +f 24/960/26 608/969/26 607/961/12 +f 30/963/30 614/967/30 613/964/8 +f 31/966/11 615/976/11 614/967/30 +f 25/968/7 609/1098/7 608/969/26 +f 19/950/10 603/949/10 602/970/31 +f 28/971/27 612/975/27 611/972/9 +f 23/962/12 607/961/12 606/974/32 +f 29/965/8 613/964/8 612/975/27 +f 32/955/28 616/954/28 615/976/11 +f 27/973/9 611/972/9 610/977/29 +f 395/836/32 619/989/32 620/978/6 +f 397/844/25 621/985/25 622/979/10 +f 400/839/3 624/1099/3 625/980/28 +f 403/846/30 627/983/30 628/981/8 +f 405/841/27 629/991/27 630/982/9 +f 402/832/11 626/990/11 627/983/30 +f 393/822/26 617/987/26 618/984/12 +f 396/837/6 620/978/6 621/985/25 +f 399/825/31 623/993/31 624/986/3 +f 408/834/7 632/992/7 617/987/26 +f 406/829/9 630/982/9 631/988/29 +f 394/823/12 618/984/12 619/989/32 +f 401/831/28 625/980/28 626/990/11 +f 404/847/8 628/981/8 629/991/27 +f 407/827/29 631/988/29 632/992/7 +f 398/842/10 622/979/10 623/993/31 +f 623/993/103 639/1019/122 640/994/104 +f 631/988/106 647/1021/133 648/995/107 +f 627/983/109 626/990/120 642/996/110 +f 619/989/112 635/1024/118 636/998/113 +f 617/987/115 632/992/108 648/999/107 +f 619/989/112 618/984/129 634/1001/117 +f 625/980/119 641/1028/123 642/1003/110 +f 623/993/103 622/979/125 638/1004/121 +f 625/980/119 624/1099/105 640/1006/104 +f 621/985/124 637/1032/130 638/1008/121 +f 629/991/126 645/1034/132 646/1009/127 +f 617/987/115 633/1036/116 634/1010/117 +f 620/978/114 636/1038/113 637/1011/130 +f 628/981/131 644/1016/134 645/1012/132 +f 631/988/106 630/982/128 646/1013/127 +f 627/983/109 643/1040/111 644/1015/134 +f 569/466/26 565/468/26 581/470/101 +f 572/634/102 579/440/102 567/439/32 +f 571/453/32 567/439/32 566/471/12 +f 570/463/12 566/471/12 565/468/26 diff --git a/src/main/resources/assets/hbm/sounds/weapon/loudestNoiseOnEarth.ogg b/src/main/resources/assets/hbm/sounds/weapon/loudestNoiseOnEarth.ogg new file mode 100644 index 0000000000000000000000000000000000000000..15b4cb7fe2b8186ad83b89f60426121e20a743b4 GIT binary patch literal 74458 zcmeFZby!=?w?Dek;tnNPaR@GfBBc#MgS(dE5~Mh#P(XRVoF?CEI^5CeZh=NrO>lceS6 zhAJW+qA>p;7gX>`260T!$rl)I5S@PACo(>%`JZr7^W=>c#E+f9@z4JVZ%NJ?k^tY^ zpaQ(4jDtLReNiq}r_J*sdF5ne6=Y;(6nI777AO2CLQmQ|8IJpPSARG6ATQIAWMwc9b&|(``1eCg*$aHD zPQjh9CZj|X|6b__SAv$Z4Fj0B&YM7wxQ~f%PzDPND(ITTlPj-tCG<&%rp67(+-FN5 zRS-qTy^|T4kEcc?W8#qtKR6OR)x+7&`Vdst&5S2kA7M|>RtHBwu6&;*VO+h2BSB1= z;z9y1%#9Vu1c34i(bNi2Dh7@=DqsWv7~rNX!+~6*SzM#7T+|e_wqyW61WR7G|VsQ!0KWpEPy) zu{pTGRlxBZfK`drI8(A&=7ANFf;d4ShVr^r2G*R-(h9v)7WXI2d&CAqdKJ@FGza? zIm9i~^rU5%WN39s5S3WX898}RSOWmY-?(NNx&JGE<(g&`GGzjzFv}TM2h)pwri$)!3J&Iq4whDa*7<(+U7;%l?kfjT zum4+gICnZlCIC>$7Jz2+L$lYEG6a!uuMsf-PJXf?Q{ReatSMy+BC~~1*`7D^Yl<)% zMP*`jr$qpUlOiV}6(62j8=hJdp0S>s?NyXtQ;QKF!*6#tZT+7j^{Idh0zinMPLQCE znV^;#m^h_w49y93x%y=VwSpwZXJKb^oMBc232Gg3rZoOC003x4TUf?txD1(u7R)3q z%_SGiv=+=Q|4+ei4ra&<5|$FkBm&AA?DZQ5Ur>5;xy%Ml2! ztqX97d4E&JvQW%|^}k*jvtYYT9PW!fmDjp2c9pe``oCWN_Y|m^*#p20Tn0nJ0!pYg*p05HDIM#-L>hQpM!W3EAWE18;%bi4CLxf*7F5aIq~D0Wnc3zP1i* z<&rUr)(p&Y!4ic5+XBH7s;+MH+a<80IdF>t@yl&|N(BmYlD*Zpt2qNR1at z@+<&gDV7BMyKUk%q6hHO12MeX;HK?LBZp^kol-uRXO=4au_OmAJ5(4vg@i&}CzL

|E2KP9&r5lC)V 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⁣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 literal 0 HcmV?d00001 From fcf0f0d2d97d5837b8c315d7c95086d5261040fc Mon Sep 17 00:00:00 2001 From: Boblet Date: Fri, 20 Sep 2024 15:03:52 +0200 Subject: [PATCH 04/63] yet more gun stuff! --- .../projectile/EntityBulletBaseMK4.java | 19 ++++- .../hbm/handler/guncfg/Gun12GaugeFactory.java | 10 +-- .../hbm/handler/guncfg/Gun20GaugeFactory.java | 16 ++-- .../hbm/handler/guncfg/Gun45ACPFactory.java | 10 +-- .../hbm/handler/guncfg/Gun4GaugeFactory.java | 26 +++--- .../hbm/handler/guncfg/Gun50BMGFactory.java | 28 +++---- .../hbm/handler/guncfg/Gun556mmFactory.java | 4 +- .../hbm/handler/guncfg/Gun75BoltFactory.java | 20 ++--- .../hbm/handler/guncfg/Gun762mmFactory.java | 62 +++++++------- .../hbm/handler/guncfg/GunGaussFactory.java | 4 +- .../hbm/handler/guncfg/GunRocketFactory.java | 20 ++--- .../java/com/hbm/items/tool/ItemBoltgun.java | 4 +- .../com/hbm/items/weapon/ItemCoilgun.java | 10 +-- .../java/com/hbm/items/weapon/ItemGunBio.java | 60 +++++++------- .../java/com/hbm/items/weapon/ItemGunPip.java | 72 ++++++++--------- .../hbm/items/weapon/sedna/BulletConfig.java | 27 ++++--- .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 1 + .../com/hbm/items/weapon/sedna/Receiver.java | 16 ++++ .../weapon/sedna/WeaponUpgradeManager.java | 3 + .../weapon/sedna/factory/GunFactory.java | 25 +++--- .../sedna/factory/GunFactoryClient.java | 75 +++++++++++++++++ .../hbm/items/weapon/sedna/factory/Lego.java | 80 ++++++++++++------- .../sedna/mags/MagazineRevolverDrum.java | 2 + src/main/java/com/hbm/main/ClientProxy.java | 53 ++++++------ src/main/java/com/hbm/main/ServerProxy.java | 1 + .../hbm/render/anim/BusAnimationSequence.java | 4 +- .../entity/projectile/RenderBulletMK4.java | 36 +++++++++ .../item/weapon/sedna/ItemRenderDebug.java | 18 ++++- 28 files changed, 454 insertions(+), 252 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java create mode 100644 src/main/java/com/hbm/render/entity/projectile/RenderBulletMK4.java diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index 92938b64a..8491176be 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -11,6 +11,8 @@ import net.minecraft.world.World; public class EntityBulletBaseMK4 extends EntityThrowableInterp { public BulletConfig config; + public double velocity; + public double prevVelocity; public EntityBulletBaseMK4(World world) { super(world); @@ -69,16 +71,25 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { return; } - this.prevPosX = posX; - this.prevPosY = posY; - this.prevPosZ = posZ; + this.prevPosX = this.posX; + this.prevPosY = this.posY; + this.prevPosZ = this.posZ; super.onUpdate(); + + double dX = this.posX - this.prevPosX; + double dY = this.posY - this.prevPosY; + double dZ = this.posZ - this.prevPosZ; + + this.prevVelocity = this.velocity; + this.velocity = Math.sqrt(dX * dX + dY * dY + dZ * dZ); } @Override protected void onImpact(MovingObjectPosition mop) { - this.setDead(); + if(!worldObj.isRemote) { + this.setDead(); + } } @Override protected double headingForceMult() { return 1D; } diff --git a/src/main/java/com/hbm/handler/guncfg/Gun12GaugeFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun12GaugeFactory.java index 1502b98ab..9ee46a194 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun12GaugeFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun12GaugeFactory.java @@ -70,13 +70,13 @@ public class Gun12GaugeFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL_TRANSLATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, -2, 100) - .addKeyframePosition(0, 0, 0, 200) + .addPos(0, 0, -2, 100) + .addPos(0, 0, 0, 200) ) .addBus("PUMP", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 450) - .addKeyframePosition(0, 0, -1.8, 200) - .addKeyframePosition(0, 0, 0, 200) + .addPos(0, 0, 0, 450) + .addPos(0, 0, -1.8, 200) + .addPos(0, 0, 0, 200) ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun20GaugeFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun20GaugeFactory.java index 60daa8afb..3aa45c9ab 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun20GaugeFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun20GaugeFactory.java @@ -49,16 +49,16 @@ public class Gun20GaugeFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("LEVER_ROTATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 250) - .addKeyframePosition(0, 0, 45, 500) - .addKeyframePosition(0, 0, 0, 500) + .addPos(0, 0, 0, 250) + .addPos(0, 0, 45, 500) + .addPos(0, 0, 0, 500) ) .addBus("LEVER_RECOIL", new BusAnimationSequence() - .addKeyframePosition(0.5, 0, 0, 50) - .addKeyframePosition(0, 0, 0, 50) - .addKeyframePosition(0, 0, 0, 150) - .addKeyframePosition(0, -0.5, 0, 500) - .addKeyframePosition(0, 0, 0, 500) + .addPos(0.5, 0, 0, 50) + .addPos(0, 0, 0, 50) + .addPos(0, 0, 0, 150) + .addPos(0, -0.5, 0, 500) + .addPos(0, 0, 0, 500) ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java index d9ae7f897..c09794ca6 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun45ACPFactory.java @@ -80,12 +80,12 @@ public class Gun45ACPFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("SLIDE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 10)// Wait for hammer - .addKeyframePosition(0, 0, -3.5, 40)// Slide back - .addKeyframePosition(0, 0, 0, 40))// Return + .addPos(0, 0, 0, 10)// Wait for hammer + .addPos(0, 0, -3.5, 40)// Slide back + .addPos(0, 0, 0, 40))// Return .addBus("HAMMER", new BusAnimationSequence() - .addKeyframePosition(15, 0, 0, 10) - .addKeyframePosition(0, 0, 0, 40))); + .addPos(15, 0, 0, 10) + .addPos(0, 0, 0, 40))); return config; } diff --git a/src/main/java/com/hbm/handler/guncfg/Gun4GaugeFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun4GaugeFactory.java index 9ebcb6f44..8869e7259 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun4GaugeFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun4GaugeFactory.java @@ -123,25 +123,25 @@ public class Gun4GaugeFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("SAUER_RECOIL", new BusAnimationSequence() - .addKeyframePosition(0.5, 0, 0, 50) - .addKeyframePosition(0, 0, 0, 50) + .addPos(0.5, 0, 0, 50) + .addPos(0, 0, 0, 50) ) .addBus("SAUER_TILT", new BusAnimationSequence() - .addKeyframePosition(0.0, 0, 0, 200) // do nothing for 200ms - .addKeyframePosition(0, 0, 30, 150) //tilt forward - .addKeyframePosition(45, 0, 30, 150) //tilt sideways - .addKeyframePosition(45, 0, 30, 200) //do nothing for 200ms (eject) - .addKeyframePosition(0, 0, 30, 150) //restore sideways - .addKeyframePosition(0, 0, 0, 150) //restore forward + .addPos(0.0, 0, 0, 200) // do nothing for 200ms + .addPos(0, 0, 30, 150) //tilt forward + .addPos(45, 0, 30, 150) //tilt sideways + .addPos(45, 0, 30, 200) //do nothing for 200ms (eject) + .addPos(0, 0, 30, 150) //restore sideways + .addPos(0, 0, 0, 150) //restore forward ) .addBus("SAUER_COCK", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 500) //do nothing for 500ms - .addKeyframePosition(1, 0, 0, 100) //pull back lever for 100ms - .addKeyframePosition(0, 0, 0, 100) //release lever for 100ms + .addPos(0, 0, 0, 500) //do nothing for 500ms + .addPos(1, 0, 0, 100) //pull back lever for 100ms + .addPos(0, 0, 0, 100) //release lever for 100ms ) .addBus("SAUER_SHELL_EJECT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 500) //do nothing for 500ms - .addKeyframePosition(0, 0, 1, 500) //FLING! + .addPos(0, 0, 0, 500) //do nothing for 500ms + .addPos(0, 0, 1, 500) //FLING! ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun50BMGFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun50BMGFactory.java index 9494ba9a9..846d931b9 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun50BMGFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun50BMGFactory.java @@ -137,20 +137,20 @@ public class Gun50BMGFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) ); config.animations.put(AnimType.RELOAD, new BusAnimation() .addBus("TILT", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 125) - .addKeyframePosition(1, 0, 0, 750) - .addKeyframePosition(0, 0, 0, 125) + .addPos(1, 0, 0, 125) + .addPos(1, 0, 0, 750) + .addPos(0, 0, 0, 125) ) .addBus("MAG", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 200) - .addKeyframePosition(1, 0, 1, 200) - .addKeyframePosition(0, 0, 0, 200) + .addPos(0, 0, 1, 200) + .addPos(1, 0, 1, 200) + .addPos(0, 0, 0, 200) ) ); @@ -190,8 +190,8 @@ public class Gun50BMGFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) ); @@ -237,10 +237,10 @@ public class Gun50BMGFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(-0.45, 0.15, 0, 40) // Moves back and raise slightly - .addKeyframePosition(0, 0, 0, 75)) // Then forward again - .addBus("EJECT", new BusAnimationSequence().addKeyframePosition(0, 0, 0, 30) // Wait - .addKeyframePosition(50, 0, 0, 120))); // Fly // out + .addPos(-0.45, 0.15, 0, 40) // Moves back and raise slightly + .addPos(0, 0, 0, 75)) // Then forward again + .addBus("EJECT", new BusAnimationSequence().addPos(0, 0, 0, 30) // Wait + .addPos(50, 0, 0, 120))); // Fly // out config.ejector = EJECTOR_SNIPER; return config; diff --git a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java index df66f7f16..25f683b8a 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun556mmFactory.java @@ -92,8 +92,8 @@ public class Gun556mmFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(0.5, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(0.5, 0, 0, 25) + .addPos(0, 0, 0, 75) ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun75BoltFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun75BoltFactory.java index 09384bcc7..e8e667fab 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun75BoltFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun75BoltFactory.java @@ -47,25 +47,25 @@ public class Gun75BoltFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) .addBus("EJECT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 25) - .addKeyframePosition(0, 0, 1, 75) + .addPos(0, 0, 0, 25) + .addPos(0, 0, 1, 75) ) ); config.animations.put(AnimType.RELOAD, new BusAnimation() .addBus("TILT", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 250) - .addKeyframePosition(1, 0, 0, 1500) - .addKeyframePosition(0, 0, 0, 250) + .addPos(1, 0, 0, 250) + .addPos(1, 0, 0, 1500) + .addPos(0, 0, 0, 250) ) .addBus("MAG", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 500) - .addKeyframePosition(1, 0, 1, 500) - .addKeyframePosition(0, 0, 0, 500) + .addPos(0, 0, 1, 500) + .addPos(1, 0, 1, 500) + .addPos(0, 0, 0, 500) ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/Gun762mmFactory.java b/src/main/java/com/hbm/handler/guncfg/Gun762mmFactory.java index 6f08a02eb..619a3fe96 100644 --- a/src/main/java/com/hbm/handler/guncfg/Gun762mmFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/Gun762mmFactory.java @@ -57,15 +57,15 @@ public class Gun762mmFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) ); config.animations.put(AnimType.RELOAD, new BusAnimation() .addBus("MAG", new BusAnimationSequence() - .addKeyframePosition(0, -1, 0, 500) - .addKeyframePosition(0, 0, 0, 500) + .addPos(0, -1, 0, 500) + .addPos(0, 0, 0, 500) ) ); @@ -176,19 +176,19 @@ public class Gun762mmFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) .addBus("LEVER_PULL", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 375) //wait out recoil and lever flick - .addKeyframePosition(-1, 0, 0, 375) //pull back bolt - .addKeyframePosition(0, 0, 0, 375) //release bolt + .addPos(0, 0, 0, 375) //wait out recoil and lever flick + .addPos(-1, 0, 0, 375) //pull back bolt + .addPos(0, 0, 0, 375) //release bolt ) .addBus("LEVER_ROTATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 250) //wait out recoil - .addKeyframePosition(1, 0, 0, 125) //flick up lever in 125ms - .addKeyframePosition(1, 0, 0, 750) //pull action - .addKeyframePosition(0, 0, 0, 125) //flick down lever again + .addPos(0, 0, 0, 250) //wait out recoil + .addPos(1, 0, 0, 125) //flick up lever in 125ms + .addPos(1, 0, 0, 750) //pull action + .addPos(0, 0, 0, 125) //flick down lever again ) ); @@ -215,19 +215,19 @@ public class Gun762mmFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) .addBus("LEVER_PULL", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 375) //wait out recoil and lever flick - .addKeyframePosition(-1, 0, 0, 375) //pull back bolt - .addKeyframePosition(0, 0, 0, 375) //release bolt + .addPos(0, 0, 0, 375) //wait out recoil and lever flick + .addPos(-1, 0, 0, 375) //pull back bolt + .addPos(0, 0, 0, 375) //release bolt ) .addBus("LEVER_ROTATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 250) //wait out recoil - .addKeyframePosition(1, 0, 0, 125) //flick up lever in 125ms - .addKeyframePosition(1, 0, 0, 750) //pull action - .addKeyframePosition(0, 0, 0, 125) //flick down lever again + .addPos(0, 0, 0, 250) //wait out recoil + .addPos(1, 0, 0, 125) //flick up lever in 125ms + .addPos(1, 0, 0, 750) //pull action + .addPos(0, 0, 0, 125) //flick down lever again ) ); @@ -258,19 +258,19 @@ public class Gun762mmFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) .addBus("LEVER_PULL", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 375) //wait out recoil and lever flick - .addKeyframePosition(-1, 0, 0, 375) //pull back bolt - .addKeyframePosition(0, 0, 0, 375) //release bolt + .addPos(0, 0, 0, 375) //wait out recoil and lever flick + .addPos(-1, 0, 0, 375) //pull back bolt + .addPos(0, 0, 0, 375) //release bolt ) .addBus("LEVER_ROTATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 250) //wait out recoil - .addKeyframePosition(1, 0, 0, 125) //flick up lever in 125ms - .addKeyframePosition(1, 0, 0, 750) //pull action - .addKeyframePosition(0, 0, 0, 125) //flick down lever again + .addPos(0, 0, 0, 250) //wait out recoil + .addPos(1, 0, 0, 125) //flick up lever in 125ms + .addPos(1, 0, 0, 750) //pull action + .addPos(0, 0, 0, 125) //flick down lever again ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/GunGaussFactory.java b/src/main/java/com/hbm/handler/guncfg/GunGaussFactory.java index 572bf3674..000e74d4e 100644 --- a/src/main/java/com/hbm/handler/guncfg/GunGaussFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/GunGaussFactory.java @@ -41,8 +41,8 @@ public class GunGaussFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 25) - .addKeyframePosition(0, 0, 0, 75) + .addPos(1, 0, 0, 25) + .addPos(0, 0, 0, 75) ) ); diff --git a/src/main/java/com/hbm/handler/guncfg/GunRocketFactory.java b/src/main/java/com/hbm/handler/guncfg/GunRocketFactory.java index 02a1e5a37..08a7bdc35 100644 --- a/src/main/java/com/hbm/handler/guncfg/GunRocketFactory.java +++ b/src/main/java/com/hbm/handler/guncfg/GunRocketFactory.java @@ -82,23 +82,23 @@ public class GunRocketFactory { config.animations.put(AnimType.CYCLE, new BusAnimation() .addBus("QUADRO_RECOIL", new BusAnimationSequence() - .addKeyframePosition(0, 0, -0.5, 50) - .addKeyframePosition(0, 0, 0, 50) + .addPos(0, 0, -0.5, 50) + .addPos(0, 0, 0, 50) ) ); config.animations.put(AnimType.RELOAD, new BusAnimation() .addBus("QUADRO_RELOAD_ROTATE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 60, 750) - .addKeyframePosition(0, 0, 60, 3500) - .addKeyframePosition(0, 0, 0, 750) + .addPos(0, 0, 60, 750) + .addPos(0, 0, 60, 3500) + .addPos(0, 0, 0, 750) ) .addBus("QUADRO_RELOAD_PUSH", new BusAnimationSequence() - .addKeyframePosition(-1, -1, 0, 0) - .addKeyframePosition(-1, -1, 0, 750) - .addKeyframePosition(-1, 0, 0, 500) - .addKeyframePosition(0, 0, 0, 3000) - .addKeyframePosition(0, 0, 0, 750) + .addPos(-1, -1, 0, 0) + .addPos(-1, -1, 0, 750) + .addPos(-1, 0, 0, 500) + .addPos(0, 0, 0, 3000) + .addPos(0, 0, 0, 750) ) ); diff --git a/src/main/java/com/hbm/items/tool/ItemBoltgun.java b/src/main/java/com/hbm/items/tool/ItemBoltgun.java index 16eb83a0b..837eb7207 100644 --- a/src/main/java/com/hbm/items/tool/ItemBoltgun.java +++ b/src/main/java/com/hbm/items/tool/ItemBoltgun.java @@ -127,7 +127,7 @@ public class ItemBoltgun extends Item implements IAnimatedItem { public BusAnimation getAnimation(NBTTagCompound data, ItemStack stack) { return new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 1, 50) - .addKeyframePosition(0, 0, 1, 100)); + .addPos(1, 0, 1, 50) + .addPos(0, 0, 1, 100)); } } diff --git a/src/main/java/com/hbm/items/weapon/ItemCoilgun.java b/src/main/java/com/hbm/items/weapon/ItemCoilgun.java index af245c5d2..86e8dc937 100644 --- a/src/main/java/com/hbm/items/weapon/ItemCoilgun.java +++ b/src/main/java/com/hbm/items/weapon/ItemCoilgun.java @@ -22,16 +22,16 @@ public class ItemCoilgun extends ItemGunBase { if(type == AnimType.CYCLE) { return new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 100) - .addKeyframePosition(0, 0, 0, 200)); + .addPos(1, 0, 0, 100) + .addPos(0, 0, 0, 200)); } if(type == AnimType.RELOAD) { return new BusAnimation() .addBus("RELOAD", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 250) - .addKeyframePosition(1, 0, 0, 500) - .addKeyframePosition(0, 0, 0, 250)); + .addPos(1, 0, 0, 250) + .addPos(1, 0, 0, 500) + .addPos(0, 0, 0, 250)); } GunConfiguration config = ((ItemGunBase) stack.getItem()).mainConfig; diff --git a/src/main/java/com/hbm/items/weapon/ItemGunBio.java b/src/main/java/com/hbm/items/weapon/ItemGunBio.java index 1e7184e84..5ba412702 100644 --- a/src/main/java/com/hbm/items/weapon/ItemGunBio.java +++ b/src/main/java/com/hbm/items/weapon/ItemGunBio.java @@ -69,54 +69,54 @@ public class ItemGunBio extends ItemGunBase { lastShot = System.currentTimeMillis(); return new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 50) - .addKeyframePosition(0, 0, -3, 50) - .addKeyframePosition(0, 0, 0, 250) + .addPos(0, 0, 0, 50) + .addPos(0, 0, -3, 50) + .addPos(0, 0, 0, 250) ) .addBus("HAMMER", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 50) - .addKeyframePosition(0, 0, 1, 300) - .addKeyframePosition(0, 0, 0, 200) + .addPos(0, 0, 1, 50) + .addPos(0, 0, 1, 300) + .addPos(0, 0, 0, 200) ) .addBus("DRUM", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 50) + .addPos(0, 0, 1, 50) ); } if(type == AnimType.RELOAD) { return new BusAnimation() .addBus("LATCH", new BusAnimationSequence() - .addKeyframePosition(0, 0, 90, 300) - .addKeyframePosition(0, 0, 90, 2000) - .addKeyframePosition(0, 0, 0, 150) + .addPos(0, 0, 90, 300) + .addPos(0, 0, 90, 2000) + .addPos(0, 0, 0, 150) ) .addBus("FRONT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 200) - .addKeyframePosition(0, 0, 45, 150) - .addKeyframePosition(0, 0, 45, 2000) - .addKeyframePosition(0, 0, 0, 75) + .addPos(0, 0, 0, 200) + .addPos(0, 0, 45, 150) + .addPos(0, 0, 45, 2000) + .addPos(0, 0, 0, 75) ) .addBus("RELOAD_ROT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 300) - .addKeyframePosition(60, 0, 0, 500) - .addKeyframePosition(60, 0, 0, 500) - .addKeyframePosition(0, -90, -90, 0) - .addKeyframePosition(0, -90, -90, 600) - .addKeyframePosition(0, 0, 0, 300) - .addKeyframePosition(0, 0, 0, 100) - .addKeyframePosition(-45, 0, 0, 50) - .addKeyframePosition(-45, 0, 0, 100) - .addKeyframePosition(0, 0, 0, 300) + .addPos(0, 0, 0, 300) + .addPos(60, 0, 0, 500) + .addPos(60, 0, 0, 500) + .addPos(0, -90, -90, 0) + .addPos(0, -90, -90, 600) + .addPos(0, 0, 0, 300) + .addPos(0, 0, 0, 100) + .addPos(-45, 0, 0, 50) + .addPos(-45, 0, 0, 100) + .addPos(0, 0, 0, 300) ) .addBus("RELOAD_MOVE", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 300) - .addKeyframePosition(0, -15, 0, 1000) - .addKeyframePosition(0, 0, 0, 450) + .addPos(0, 0, 0, 300) + .addPos(0, -15, 0, 1000) + .addPos(0, 0, 0, 450) ) .addBus("DRUM_PUSH", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 1600) - .addKeyframePosition(0, 0, -5, 0) - .addKeyframePosition(0, 0, 0, 300) + .addPos(0, 0, 0, 1600) + .addPos(0, 0, -5, 0) + .addPos(0, 0, 0, 300) ); } diff --git a/src/main/java/com/hbm/items/weapon/ItemGunPip.java b/src/main/java/com/hbm/items/weapon/ItemGunPip.java index c6ed8aaf9..5e0e636ca 100644 --- a/src/main/java/com/hbm/items/weapon/ItemGunPip.java +++ b/src/main/java/com/hbm/items/weapon/ItemGunPip.java @@ -64,7 +64,7 @@ public class ItemGunPip extends ItemGunBase { if(type == AnimType.EQUIP) { return new BusAnimation() .addBus("ROTATE", new BusAnimationSequence() - .addKeyframePosition(-360, 0, 0, 350) + .addPos(-360, 0, 0, 350) ); } @@ -73,17 +73,17 @@ public class ItemGunPip extends ItemGunBase { int s = 1; return new BusAnimation() .addBus("RECOIL", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 50 * s) - .addKeyframePosition(0, 0, -3, 50 * s) - .addKeyframePosition(0, 0, 0, 250 * s) + .addPos(0, 0, 0, 50 * s) + .addPos(0, 0, -3, 50 * s) + .addPos(0, 0, 0, 250 * s) ) .addBus("HAMMER", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 50 * s) - .addKeyframePosition(0, 0, 1, 300 * s) - .addKeyframePosition(0, 0, 0, 200 * s) + .addPos(0, 0, 1, 50 * s) + .addPos(0, 0, 1, 300 * s) + .addPos(0, 0, 0, 200 * s) ) .addBus("DRUM", new BusAnimationSequence() - .addKeyframePosition(0, 0, 1, 50 * s) + .addPos(0, 0, 1, 50 * s) ); } @@ -91,44 +91,44 @@ public class ItemGunPip extends ItemGunBase { int s = 1; return new BusAnimation() .addBus("RELAOD_TILT", new BusAnimationSequence() - .addKeyframePosition(-15, 0, 0, 100 * s) - .addKeyframePosition(65, 0, 0, 100 * s) //200 - .addKeyframePosition(45, 0, 0, 50 * s) //250 - .addKeyframePosition(0, 0, 0, 200 * s) //450 - .addKeyframePosition(0, 0, 0, 1450 * s) //1900 - .addKeyframePosition(-80, 0, 0, 100 * s) //2000 - .addKeyframePosition(-80, 0, 0, 100 * s) //2100 - .addKeyframePosition(0, 0, 0, 200 * s) //2300 + .addPos(-15, 0, 0, 100 * s) + .addPos(65, 0, 0, 100 * s) //200 + .addPos(45, 0, 0, 50 * s) //250 + .addPos(0, 0, 0, 200 * s) //450 + .addPos(0, 0, 0, 1450 * s) //1900 + .addPos(-80, 0, 0, 100 * s) //2000 + .addPos(-80, 0, 0, 100 * s) //2100 + .addPos(0, 0, 0, 200 * s) //2300 ) .addBus("RELOAD_CYLINDER", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 200 * s) - .addKeyframePosition(90, 0, 0, 100 * s) //300 - .addKeyframePosition(90, 0, 0, 1700 * s) //2000 - .addKeyframePosition(0, 0, 0, 70 * s) //2100 + .addPos(0, 0, 0, 200 * s) + .addPos(90, 0, 0, 100 * s) //300 + .addPos(90, 0, 0, 1700 * s) //2000 + .addPos(0, 0, 0, 70 * s) //2100 ) .addBus("RELOAD_LIFT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 350 * s) - .addKeyframePosition(-45, 0, 0, 250 * s) //600 - .addKeyframePosition(-45, 0, 0, 350 * s) //950 - .addKeyframePosition(-15, 0, 0, 200 * s) //1150 - .addKeyframePosition(-15, 0, 0, 1050 * s) //2200 - .addKeyframePosition(0, 0, 0, 100 * s) //2300 + .addPos(0, 0, 0, 350 * s) + .addPos(-45, 0, 0, 250 * s) //600 + .addPos(-45, 0, 0, 350 * s) //950 + .addPos(-15, 0, 0, 200 * s) //1150 + .addPos(-15, 0, 0, 1050 * s) //2200 + .addPos(0, 0, 0, 100 * s) //2300 ) .addBus("RELOAD_JOLT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 600 * s) - .addKeyframePosition(2, 0, 0, 50 * s) //650 - .addKeyframePosition(0, 0, 0, 100 * s) //750 + .addPos(0, 0, 0, 600 * s) + .addPos(2, 0, 0, 50 * s) //650 + .addPos(0, 0, 0, 100 * s) //750 ) .addBus("RELOAD_BULLETS", new BusAnimationSequence() - .addKeyframePosition(0, 0, 0, 650 * s) - .addKeyframePosition(10, 0, 0, 300 * s) //950 - .addKeyframePosition(10, 0, 0, 200 * s) //1150 - .addKeyframePosition(0, 0, 0, 700 * s) //1850 + .addPos(0, 0, 0, 650 * s) + .addPos(10, 0, 0, 300 * s) //950 + .addPos(10, 0, 0, 200 * s) //1150 + .addPos(0, 0, 0, 700 * s) //1850 ) .addBus("RELOAD_BULLETS_CON", new BusAnimationSequence() - .addKeyframePosition(1, 0, 0, 0 * s) - .addKeyframePosition(1, 0, 0, 950 * s) - .addKeyframePosition(0, 0, 0, 1 * s) + .addPos(1, 0, 0, 0 * s) + .addPos(1, 0, 0, 950 * s) + .addPos(0, 0, 0, 1 * s) ); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index 9a43ef50b..b3651a976 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -2,7 +2,9 @@ package com.hbm.items.weapon.sedna; import java.util.ArrayList; import java.util.List; +import java.util.function.BiConsumer; +import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.inventory.RecipesCommon.ComparableStack; import net.minecraft.item.Item; @@ -27,19 +29,24 @@ public class BulletConfig { public double gravity = 0; public int expires = 100; + public boolean renderRotations = true; + public BiConsumer renderer; + public BulletConfig() { this.id = configs.size(); configs.add(this); } - public BulletConfig setItem(Item ammo) { this.ammo = new ComparableStack(ammo); return this; } - public BulletConfig setReloadCount(int ammoReloadCount) { this.ammoReloadCount = ammoReloadCount; return this; } - public BulletConfig setVel(float velocity) { this.velocity = velocity; return this; } - public BulletConfig setSpread(float spread) { this.spread = spread; return this; } - public BulletConfig setWear(float wear) { this.wear = wear; return this; } - public BulletConfig setProjectiles(int min, int max) { this.projectilesMin = min; this.projectilesMax = max; return this; } - public BulletConfig setDamage(float damageMult) { this.damageMult = damageMult; return this; } - public BulletConfig setHeadshot(float headshotMult) { this.headshotMult = headshotMult; return this; } - public BulletConfig setGrav(double gravity) { this.gravity = gravity; return this; } - public BulletConfig setLife(int expires) { this.expires = expires; return this; } + public BulletConfig setItem(Item ammo) { this.ammo = new ComparableStack(ammo); return this; } + public BulletConfig setReloadCount(int ammoReloadCount) { this.ammoReloadCount = ammoReloadCount; return this; } + public BulletConfig setVel(float velocity) { this.velocity = velocity; return this; } + public BulletConfig setSpread(float spread) { this.spread = spread; return this; } + public BulletConfig setWear(float wear) { this.wear = wear; return this; } + public BulletConfig setProjectiles(int min, int max) { this.projectilesMin = min; this.projectilesMax = max; return this; } + public BulletConfig setDamage(float damageMult) { this.damageMult = damageMult; return this; } + public BulletConfig setHeadshot(float headshotMult) { this.headshotMult = headshotMult; return this; } + public BulletConfig setGrav(double gravity) { this.gravity = gravity; return this; } + public BulletConfig setLife(int expires) { this.expires = expires; return this; } + public BulletConfig setRenderRotations(boolean rot) { this.renderRotations = rot; return this; } + public BulletConfig setRenderer(BiConsumer renderer) { this.renderer = renderer; return this; } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 36a3e9bfa..5b6ccf842 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -51,6 +51,7 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public ItemGunBaseNT(GunConfig cfg) { this.setMaxStackSize(1); this.config_DNA = cfg; + this.setCreativeTab(MainRegistry.weaponTab); } public static enum GunState { diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 7c9ad2e14..c1a6603a3 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -24,6 +24,9 @@ public class Receiver { public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; public static final String O_EJECTOR = "O_EJECTOR"; public static final String I_RELOADDURATION = "I_RELOADDURATION"; + public static final String S_FIRESOUND = "S_FIRESOUND"; + public static final String F_FIREVOLUME = "F_FIREVOLUME"; + public static final String F_FIREPITCH = "F_FIREPITCH"; public static final String O_MAGAZINE = "O_MAGAZINE"; public static final String FUN_CANFIRE = "FUN_CANFIRE"; public static final String CON_ONFIRE = "CON_ONFIRE"; @@ -40,6 +43,9 @@ public class Receiver { protected boolean refireOnHold_DNA = false; protected CasingEjector ejector_DNA = null; protected int reloadDuration_DNA; + protected String fireSound_DNA; + protected float fireVolume_DNA = 1.0F; + protected float firePitch_DNA = 1.0F; protected IMagazine magazine_DNA; protected BiFunction canFire_DNA; protected BiConsumer onFire_DNA; @@ -52,6 +58,9 @@ public class Receiver { public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } + public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } + public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } + public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } public IMagazine getMagazine(ItemStack stack) { return WeaponUpgradeManager.eval(this.magazine_DNA, stack, O_MAGAZINE, this); } public BiFunction getCanFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.canFire_DNA, stack, FUN_CANFIRE, this); } @@ -69,4 +78,11 @@ public class Receiver { public Receiver canFire(BiFunction lambda) { this.canFire_DNA = lambda; return this; } public Receiver fire(BiConsumer lambda) { this.onFire_DNA = lambda; return this; } + + public Receiver sound(String sound, float volume, float pitch) { + this.fireSound_DNA = sound; + this.fireVolume_DNA = volume; + this.firePitch_DNA = pitch; + return this; + } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java b/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java index 4674ee866..c54dccb21 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java +++ b/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java @@ -10,6 +10,9 @@ import net.minecraft.item.ItemStack; */ public class WeaponUpgradeManager { + //TODO: add caching so this doesn't have to run 15 times per single action + + public static ItemStack[] getUpgrades(ItemStack stack) { return null; // TBI } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 434bf5949..99140471a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -13,23 +13,30 @@ import com.hbm.main.MainRegistry; import net.minecraft.item.Item; public class GunFactory { + + public static BulletConfig ammo_debug; public static void init() { + /// AMMO ITEMS /// ModItems.ammo_debug = new Item().setUnlocalizedName("ammo_debug").setTextureName(RefStrings.MODID + ":ammo_45"); - - BulletConfig ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F); - + + /// BULLLET CFGS /// + ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F); + + /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() .dura(600).draw(15).crosshair(Crosshair.L_CLASSIC) .rec(new Receiver(0) - .dmg(10F).delay(12).mag(new MagazineRevolverDrum(0, 6).addConfigs(ammo_debug)) - .canFire(Lego.LAMBDA_DEBUG_CAN_FIRE).fire(Lego.LAMBDA_DEBUG_FIRE)) - .pr(Lego.LAMBDA_STANDARD_RELOAD) - .pp(Lego.LAMBDA_STANDARD_FIRE) - .pt(Lego.LAMBDA_TOGGLE_AIM) + .dmg(10F).delay(12).reload(20).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .mag(new MagazineRevolverDrum(0, 6).addConfigs(ammo_debug)) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) + .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) .anim(Lego.LAMBDA_DEBUG_ANIMS) - ).setUnlocalizedName("gun_debug").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_darter"); + ).setUnlocalizedName("gun_debug").setTextureName(RefStrings.MODID + ":gun_darter"); + + /// PROXY BULLSHIT /// + MainRegistry.proxy.registerGunCfg(); } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java new file mode 100644 index 000000000..6712017ec --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -0,0 +1,75 @@ +package com.hbm.items.weapon.sedna.factory; + +import static com.hbm.items.weapon.sedna.factory.GunFactory.*; + +import java.util.function.BiConsumer; + +import org.lwjgl.opengl.GL11; + +import com.hbm.entity.projectile.EntityBulletBaseMK4; + +import net.minecraft.client.renderer.Tessellator; + +public class GunFactoryClient { + + public static void init() { + ammo_debug.setRenderer(RENDER_STANDARD_BULLET); + } + + public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { + Tessellator tess = Tessellator.instance; + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(tess, 0xFFBF00, 0xFFFFFF, length, false); + }; + + public static BiConsumer RENDER_TRACER_BULLET = (bullet, interp) -> { + Tessellator tess = Tessellator.instance; + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(tess, 0x9E082E, 0xFF8A79, length, true); + }; + + public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, boolean fullbright) { renderBulletStandard(tess, dark, light, length, 0.03125D, 0.03125D * 0.25D, fullbright); } + + public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, double widthF, double widthB, boolean fullbright) { + + GL11.glDisable(GL11.GL_TEXTURE_2D); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + GL11.glColor4f(1F, 1F, 1F, 1F); + + tess.startDrawingQuads(); + if(fullbright) tess.setBrightness(240); + tess.setNormal(0F, 1F, 0F); + tess.setColorOpaque_I(dark); + tess.addVertex(length, widthB, -widthB); tess.addVertex(length, widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, -widthF, widthF); tess.addVertex(0, -widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, widthB); tess.addVertex(length, widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, -widthF, widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, widthB, -widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, -widthF); tess.addVertex(0, -widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, widthB, widthB); tess.addVertex(length, widthB, -widthB); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); + tess.addVertex(0, -widthF, -widthF); tess.addVertex(0, -widthF, widthF); + tess.draw(); + + GL11.glShadeModel(GL11.GL_FLAT); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + GL11.glEnable(GL11.GL_TEXTURE_2D); + } +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 8546cfa39..0cb990e23 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -1,5 +1,6 @@ package com.hbm.items.weapon.sedna.factory; +import java.util.Random; import java.util.function.BiConsumer; import java.util.function.BiFunction; @@ -9,6 +10,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.GunAnimationPacket; import com.hbm.render.anim.BusAnimation; @@ -26,24 +28,42 @@ import net.minecraft.item.ItemStack; */ public class Lego { + public static final Random ANIM_RAND = new Random(); + /** * If IDLE and the mag of receiver 0 can be loaded, set state to RELOADING. Used by keybinds. */ public static BiConsumer LAMBDA_STANDARD_RELOAD = (stack, ctx) -> { - if(ItemGunBaseNT.getState(stack) == GunState.IDLE && ctx.config.getReceivers(stack)[0].getMagazine(stack).canReload(stack, ctx.player)) { - ItemGunBaseNT.setState(stack, GunState.RELOADING); - ItemGunBaseNT.setTimer(stack, ctx.config.getReceivers(stack)[0].getReloadDuration(stack)); + EntityPlayer player = ctx.player; + Receiver rec = ctx.config.getReceivers(stack)[0]; + + if(ItemGunBaseNT.getState(stack) == GunState.IDLE) { + + ItemGunBaseNT.setIsAiming(stack, false); + + if(rec.getMagazine(stack).canReload(stack, ctx.player)) { + ItemGunBaseNT.setState(stack, GunState.RELOADING); + ItemGunBaseNT.setTimer(stack, rec.getReloadDuration(stack)); + if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.RELOAD.ordinal()), (EntityPlayerMP) player); + } else { + if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.INSPECT.ordinal()), (EntityPlayerMP) player); + } } }; /** * If IDLE and ammo is loaded, fire and set to JUST_FIRED. */ - public static BiConsumer LAMBDA_STANDARD_FIRE = (stack, ctx) -> { + public static BiConsumer LAMBDA_STANDARD_CLICK_PRIMARY = (stack, ctx) -> { - if(ItemGunBaseNT.getState(stack) == GunState.IDLE && ctx.config.getReceivers(stack)[0].getCanFire(stack).apply(stack, ctx)) { + Receiver rec = ctx.config.getReceivers(stack)[0]; + + if(ItemGunBaseNT.getState(stack) == GunState.IDLE && rec.getCanFire(stack).apply(stack, ctx)) { ItemGunBaseNT.setState(stack, GunState.COOLDOWN); - ItemGunBaseNT.setTimer(stack, ctx.config.getReceivers(stack)[0].getDelayAfterFire(stack)); - ctx.config.getReceivers(stack)[0].getOnFire(stack).accept(stack, ctx); + ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + rec.getOnFire(stack).accept(stack, ctx); + + int remaining = rec.getRoundsPerCycle(stack) - 1; + for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); } }; @@ -59,18 +79,21 @@ public class Lego { /** JUMPER - bypasses mag testing and just allows constant fire */ public static BiFunction LAMBDA_DEBUG_CAN_FIRE = (stack, ctx) -> { return true; }; - /** simply plays a sound to indicate that the keybind has triggered */ - public static BiConsumer LAMBDA_DEBUG_FIRE = (stack, ctx) -> { + /** Spawns an EntityBulletBaseMK4 with the loaded bulletcfg */ + public static BiConsumer LAMBDA_STANDARD_FIRE = (stack, ctx) -> { EntityPlayer player = ctx.player; if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.CYCLE.ordinal()), (EntityPlayerMP) player); - double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : -0.2D; + double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : -0.3125D; float aim = ItemGunBaseNT.getIsAiming(stack) ? 0.25F : 1F; Receiver primary = ctx.config.getReceivers(stack)[0]; + IMagazine mag = primary.getMagazine(stack); - EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, (BulletConfig) primary.getMagazine(stack).getType(stack), primary.getBaseDamage(stack), primary.getSpreadMod(stack) * aim, sideOffset, -0.1, 0.75); + EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, (BulletConfig) mag.getType(stack), primary.getBaseDamage(stack), primary.getSpreadMod(stack) * aim, sideOffset, -0.0625, 0.75); player.worldObj.spawnEntityInWorld(mk4); - player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, "hbm:weapon.shotgunShoot", 1F, 1F); + player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, primary.getFireSound(stack), primary.getFireVolume(stack), primary.getFirePitch(stack)); + + mag.setAmount(stack, mag.getAmount(stack) - 1);; }; /** No reload, simply play inspect animation */ @@ -80,23 +103,24 @@ public class Lego { }; /** anims for the DEBUG revolver, mostly a copy of the li'lpip but with some fixes regarding the cylinder movement */ - public static BiFunction LAMBDA_DEBUG_ANIMS = (stack, type) -> { + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DEBUG_ANIMS = (stack, type) -> { switch(type) { - case CYCLE: - return new BusAnimation() - .addBus("RECOIL", new BusAnimationSequence().addKeyframePosition(0, 0, 0, 50).addKeyframePosition(0, 0, -3, 50).addKeyframePosition(0, 0, 0, 250)) - .addBus("HAMMER", new BusAnimationSequence().addKeyframePosition(0, 0, 1, 50).addKeyframePosition(0, 0, 1, 300 + 100).addKeyframePosition(0, 0, 0, 200)) - .addBus("DRUM", new BusAnimationSequence().addKeyframePosition(0, 0, 0, 350 + 100).addKeyframePosition(0, 0, 1, 200)); - case CYCLE_EMPTY: break; - case ALT_CYCLE: break; - case EQUIP: return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addKeyframePosition(-360, 0, 0, 350)); - case RELOAD: break; - case RELOAD_CYCLE: break; - case RELOAD_EMPTY: break; - case RELOAD_END: break; - case SPINDOWN: break; - case SPINUP: break; - case INSPECT: break; + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 300 + 100).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 350 + 100).addPos(0, 0, 1, 200)); + case EQUIP: return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(-360, 0, 0, 350)); + case RELOAD: return new BusAnimation() + .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 1450).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) + .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 1700).addPos(0, 0, 0, 70)) + .addBus("RELOAD_LIFT", new BusAnimationSequence().addPos(0, 0, 0, 350).addPos(-45, 0, 0, 250).addPos(-45, 0, 0, 350).addPos(-15, 0, 0, 200).addPos(-15, 0, 0, 1050).addPos(0, 0, 0, 100)) + .addBus("RELOAD_JOLT", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(2, 0, 0, 50).addPos(0, 0, 0, 100)) + .addBus("RELOAD_BULLETS", new BusAnimationSequence().addPos(0, 0, 0, 650).addPos(10, 0, 0, 300).addPos(10, 0, 0, 200).addPos(0, 0, 0, 700)) + .addBus("RELOAD_BULLETS_CON", new BusAnimationSequence().addPos(1, 0, 0, 0).addPos(1, 0, 0, 950).addPos(0, 0, 0, 1 ) ); + case INSPECT: if(ANIM_RAND.nextBoolean()) return new BusAnimation() + .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 1450 - 1250).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) + .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 1700 - 1250).addPos(0, 0, 0, 70)); + else return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(-360 * 5, 0, 0, 350 * 5)); } return null; diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java index 628d1a73d..df7990b0e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java @@ -16,6 +16,8 @@ public class MagazineRevolverDrum extends MagazineStandardBase { @Override public boolean canReload(ItemStack stack, EntityPlayer player) { + if(this.getAmount(stack) >= this.getCapacity(stack)) return false; + for(ItemStack slot : player.inventory.mainInventory) { if(slot != null) { diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index f7d519d68..98114e26c 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -86,6 +86,7 @@ import com.hbm.handler.ImpactWorldHandler; import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.items.IAnimatedItem; import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.factory.GunFactoryClient; import com.hbm.lib.RefStrings; import com.hbm.particle.*; import com.hbm.particle.helper.ExplosionCreator; @@ -170,6 +171,11 @@ public class ClientProxy extends ServerProxy { public void handleNHNEICompat(){ IMCHandlerNHNEI.IMCSender(); } + + @Override + public void registerGunCfg() { + GunFactoryClient.init(); + } @Override public void registerTileEntitySpecialRenderer() { @@ -626,6 +632,7 @@ public class ClientProxy extends ServerProxy { RenderingRegistry.registerEntityRenderingHandler(EntitySchrab.class, new RenderFlare()); RenderingRegistry.registerEntityRenderingHandler(EntityBullet.class, new RenderRocket()); RenderingRegistry.registerEntityRenderingHandler(EntityBulletBaseNT.class, new RenderBullet()); + RenderingRegistry.registerEntityRenderingHandler(EntityBulletBaseMK4.class, new RenderBulletMK4()); RenderingRegistry.registerEntityRenderingHandler(EntityRainbow.class, new RenderRainbow()); RenderingRegistry.registerEntityRenderingHandler(EntityNightmareBlast.class, new RenderOminousBullet()); RenderingRegistry.registerEntityRenderingHandler(EntityFire.class, new RenderFireball(ModItems.nothing)); @@ -1815,9 +1822,9 @@ public class ClientProxy extends ServerProxy { BusAnimation animation = new BusAnimation() .addBus("GUARD_ROT", new BusAnimationSequence() - .addKeyframePosition(90, 0, 1, 0) - .addKeyframePosition(90, 0, 1, 800) - .addKeyframePosition(0, 0, 1, 50)); + .addPos(90, 0, 1, 0) + .addPos(90, 0, 1, 800) + .addPos(0, 0, 1, 50)); HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } @@ -1831,13 +1838,13 @@ public class ClientProxy extends ServerProxy { BusAnimation animation = new BusAnimation() .addBus("SWING_ROT", new BusAnimationSequence() - .addKeyframePosition(90 - offset, 90 - offset, 35, 75) - .addKeyframePosition(90 + offset, 90 - offset, -45, 150) - .addKeyframePosition(0, 0, 0, 500)) + .addPos(90 - offset, 90 - offset, 35, 75) + .addPos(90 + offset, 90 - offset, -45, 150) + .addPos(0, 0, 0, 500)) .addBus("SWING_TRANS", new BusAnimationSequence() - .addKeyframePosition(-3, 0, 0, 75) - .addKeyframePosition(8, 0, 0, 150) - .addKeyframePosition(0, 0, 0, 500)); + .addPos(-3, 0, 0, 75) + .addPos(8, 0, 0, 150) + .addPos(0, 0, 0, 500)); Minecraft.getMinecraft().getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:weapon.cSwing"), 0.8F + player.getRNG().nextFloat() * 0.2F)); @@ -1856,13 +1863,13 @@ public class ClientProxy extends ServerProxy { BusAnimation animation = new BusAnimation() .addBus("SWING_ROT", new BusAnimationSequence() - .addKeyframePosition(0, 0, 90, forward) - .addKeyframePosition(45, 0, 90, sideways) - .addKeyframePosition(0, 0, 0, retire)) + .addPos(0, 0, 90, forward) + .addPos(45, 0, 90, sideways) + .addPos(0, 0, 0, retire)) .addBus("SWING_TRANS", new BusAnimationSequence() - .addKeyframePosition(0, 0, 3, forward) - .addKeyframePosition(2, 0, 2, sideways) - .addKeyframePosition(0, 0, 0, retire)); + .addPos(0, 0, 3, forward) + .addPos(2, 0, 2, sideways) + .addPos(0, 0, 0, retire)); HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); @@ -1876,15 +1883,15 @@ public class ClientProxy extends ServerProxy { BusAnimation animation = new BusAnimation() .addBus("SWING_ROT", new BusAnimationSequence() - .addKeyframePosition(rot[0], rot[1], rot[2], 0) - .addKeyframePosition(0, 0, 90, forward) - .addKeyframePosition(45, 0, 90, sideways) - .addKeyframePosition(0, 0, 0, retire)) + .addPos(rot[0], rot[1], rot[2], 0) + .addPos(0, 0, 90, forward) + .addPos(45, 0, 90, sideways) + .addPos(0, 0, 0, retire)) .addBus("SWING_TRANS", new BusAnimationSequence() - .addKeyframePosition(trans[0], trans[1], trans[2], 0) - .addKeyframePosition(0, 0, 3, forward) - .addKeyframePosition(2, 0, 2, sideways) - .addKeyframePosition(0, 0, 0, retire)); + .addPos(trans[0], trans[1], trans[2], 0) + .addPos(0, 0, 3, forward) + .addPos(2, 0, 2, sideways) + .addPos(0, 0, 0, retire)); HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } diff --git a/src/main/java/com/hbm/main/ServerProxy.java b/src/main/java/com/hbm/main/ServerProxy.java index 3e48b8e15..530bf6c59 100644 --- a/src/main/java/com/hbm/main/ServerProxy.java +++ b/src/main/java/com/hbm/main/ServerProxy.java @@ -34,6 +34,7 @@ public class ServerProxy { public void registerItemRenderer() { } public void registerEntityRenderer() { } public void registerBlockRenderer() { } + public void registerGunCfg() { } public void handleNHNEICompat() { } public void particleControl(double x, double y, double z, int type) { } diff --git a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java index ea573fb96..00c8ab137 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java @@ -49,7 +49,7 @@ public class BusAnimationSequence { // Two helper methods for the old hard-coded animations - public BusAnimationSequence addKeyframePosition(double x, double y, double z, int duration) { + public BusAnimationSequence addPos(double x, double y, double z, int duration) { addKeyframe(Dimension.TX, new BusAnimationKeyframe(x, duration)); addKeyframe(Dimension.TY, new BusAnimationKeyframe(y, duration)); addKeyframe(Dimension.TZ, new BusAnimationKeyframe(z, duration)); @@ -57,7 +57,7 @@ public class BusAnimationSequence { return this; } - public BusAnimationSequence addKeyframeRotation(double x, double y, double z, int duration) { + public BusAnimationSequence addRot(double x, double y, double z, int duration) { addKeyframe(Dimension.RX, new BusAnimationKeyframe(x, duration)); addKeyframe(Dimension.RY, new BusAnimationKeyframe(y, duration)); addKeyframe(Dimension.RZ, new BusAnimationKeyframe(z, duration)); diff --git a/src/main/java/com/hbm/render/entity/projectile/RenderBulletMK4.java b/src/main/java/com/hbm/render/entity/projectile/RenderBulletMK4.java new file mode 100644 index 000000000..561a71271 --- /dev/null +++ b/src/main/java/com/hbm/render/entity/projectile/RenderBulletMK4.java @@ -0,0 +1,36 @@ +package com.hbm.render.entity.projectile; + +import org.lwjgl.opengl.GL11; + +import com.hbm.entity.projectile.EntityBulletBaseMK4; +import com.hbm.main.ResourceManager; + +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.entity.Entity; +import net.minecraft.util.ResourceLocation; + +public class RenderBulletMK4 extends Render { + + @Override + public void doRender(Entity entity, double x, double y, double z, float f0, float interp) { + EntityBulletBaseMK4 bullet = (EntityBulletBaseMK4) entity; + if(bullet.config == null) bullet.config = bullet.getBulletConfig(); + if(bullet.config == null) return; + + GL11.glPushMatrix(); + GL11.glTranslatef((float) x, (float) y, (float) z); + + if(bullet.config.renderRotations) { + GL11.glRotatef(bullet.prevRotationYaw + (bullet.rotationYaw - bullet.prevRotationYaw) * interp - 90.0F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(bullet.prevRotationPitch + (bullet.rotationPitch - bullet.prevRotationPitch) * interp + 180, 0.0F, 0.0F, 1.0F); + } + + if(bullet.config.renderer != null) { + bullet.config.renderer.accept(bullet, interp); + } + + GL11.glPopMatrix(); + } + + @Override protected ResourceLocation getEntityTexture(Entity entity) { return ResourceManager.universal; } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java index 1294c7443..b6981e6f1 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java @@ -30,25 +30,37 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { double scale = 0.125D; GL11.glScaled(scale, scale, scale); GL11.glRotated(90, 0, 1, 0); - + double[] equipSpin = HbmAnimations.getRelevantTransformation("ROTATE"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] reloadLift = HbmAnimations.getRelevantTransformation("RELOAD_LIFT"); + double[] reloadJolt = HbmAnimations.getRelevantTransformation("RELOAD_JOLT"); + double[] reloadTilt = HbmAnimations.getRelevantTransformation("RELAOD_TILT"); + double[] cylinderFlip = HbmAnimations.getRelevantTransformation("RELOAD_CYLINDER"); + double[] reloadBullets = HbmAnimations.getRelevantTransformation("RELOAD_BULLETS"); + GL11.glRotated(equipSpin[0], 0, 0, 1); - double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); standardAimingTransform(stack, 0, 0, recoil[2], -recoil[2], 0, 0); - GL11.glRotated(recoil[2] * 10, 0, 0, 1); + GL11.glRotated(reloadLift[0], 0, 0, 1); + GL11.glTranslated(reloadJolt[0], 0, 0); + GL11.glRotated(reloadTilt[0], 1, 0, 0); + GL11.glShadeModel(GL11.GL_SMOOTH); Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.debug_gun_tex); ResourceManager.lilmac.renderPart("Gun"); GL11.glPushMatrix(); + GL11.glRotated(cylinderFlip[0], 1, 0, 0); ResourceManager.lilmac.renderPart("Pivot"); GL11.glTranslated(0, 1.75, 0); GL11.glRotated(HbmAnimations.getRelevantTransformation("DRUM")[2] * -60, 1, 0, 0); GL11.glTranslated(0, -1.75, 0); ResourceManager.lilmac.renderPart("Cylinder"); + GL11.glTranslated(reloadBullets[0], reloadBullets[1], reloadBullets[2]); + if(HbmAnimations.getRelevantTransformation("RELOAD_BULLETS_CON")[0] != 1) ResourceManager.lilmac.renderPart("Bullets"); ResourceManager.lilmac.renderPart("Casings"); GL11.glPopMatrix(); From 51839e8abbe9ac3ae560195f34fe99168ef26687 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 22 Sep 2024 00:03:28 +0200 Subject: [PATCH 05/63] substantial amounts of trolling --- .../projectile/EntityBulletBaseMK4.java | 19 +++ .../hbm/items/weapon/sedna/BulletConfig.java | 2 +- .../com/hbm/items/weapon/sedna/GunConfig.java | 23 ++- .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 121 ++++++++++++-- .../com/hbm/items/weapon/sedna/Receiver.java | 6 +- .../weapon/sedna/factory/GunFactory.java | 38 ++++- .../sedna/factory/GunFactoryClient.java | 1 + .../weapon/sedna/factory/GunStateDecider.java | 6 + .../hbm/items/weapon/sedna/factory/Lego.java | 53 ++++--- .../sedna/hud/HUDComponentAmmoCounter.java | 52 ++++++ .../sedna/hud/HUDComponentDurabilityBar.java | 43 +++++ .../items/weapon/sedna/hud/IHUDComponent.java | 12 ++ .../items/weapon/sedna/mags/IMagazine.java | 10 +- ...olverDrum.java => MagazineFullReload.java} | 17 +- ...dBase.java => MagazineSingleTypeBase.java} | 25 ++- .../packet/toclient/GunAnimationPacket.java | 7 +- .../com/hbm/render/anim/HbmAnimations.java | 3 +- .../item/weapon/sedna/ItemRenderDebug.java | 22 ++- .../weapon/sedna/ItemRenderWeaponBase.java | 148 ++++++++++++++++++ src/main/resources/assets/hbm/sounds.json | 24 +++ .../hbm/sounds/weapon/reload/boltClose.ogg | Bin 0 -> 5441 bytes .../hbm/sounds/weapon/reload/boltOpen.ogg | Bin 0 -> 6790 bytes .../hbm/sounds/weapon/reload/closeClick.ogg | Bin 0 -> 8917 bytes .../hbm/sounds/weapon/reload/dryFireClick.ogg | Bin 0 -> 5902 bytes .../sounds/weapon/reload/insertCanister.ogg | Bin 0 -> 5884 bytes .../sounds/weapon/reload/insertGrenade.ogg | Bin 0 -> 23147 bytes .../hbm/sounds/weapon/reload/insertLarge.ogg | Bin 0 -> 9563 bytes .../hbm/sounds/weapon/reload/insertRocket.ogg | Bin 0 -> 14065 bytes .../hbm/sounds/weapon/reload/leverCock.ogg | Bin 0 -> 13265 bytes .../hbm/sounds/weapon/reload/magInsert.ogg | Bin 0 -> 6650 bytes .../hbm/sounds/weapon/reload/magRemove.ogg | Bin 0 -> 6234 bytes .../sounds/weapon/reload/magSmallInsert.ogg | Bin 0 -> 7792 bytes .../sounds/weapon/reload/magSmallRemove.ogg | Bin 0 -> 7771 bytes .../hbm/sounds/weapon/reload/openLatch.ogg | Bin 0 -> 8002 bytes .../hbm/sounds/weapon/reload/pistolCock.ogg | Bin 0 -> 10081 bytes .../sounds/weapon/reload/pressureValve.ogg | Bin 0 -> 20590 bytes .../sounds/weapon/reload/revolverClose.ogg | Bin 0 -> 6508 bytes .../hbm/sounds/weapon/reload/revolverCock.ogg | Bin 0 -> 6215 bytes .../hbm/sounds/weapon/reload/revolverSpin.ogg | Bin 0 -> 12144 bytes .../hbm/sounds/weapon/reload/rifleCock.ogg | Bin 0 -> 8963 bytes .../hbm/sounds/weapon/reload/shotgunCock.ogg | Bin 0 -> 14550 bytes .../sounds/weapon/reload/shotgunReload1.ogg | Bin 0 -> 11862 bytes .../sounds/weapon/reload/shotgunReload2.ogg | Bin 0 -> 11573 bytes .../sounds/weapon/reload/shotgunReload3.ogg | Bin 0 -> 13929 bytes .../hbm/sounds/weapon/reload/tubeFwoomp.ogg | Bin 0 -> 12558 bytes 45 files changed, 555 insertions(+), 77 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java rename src/main/java/com/hbm/items/weapon/sedna/mags/{MagazineRevolverDrum.java => MagazineFullReload.java} (83%) rename src/main/java/com/hbm/items/weapon/sedna/mags/{MagazineStandardBase.java => MagazineSingleTypeBase.java} (70%) create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/boltClose.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/boltOpen.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/closeClick.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/dryFireClick.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/insertCanister.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/insertGrenade.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/insertLarge.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/insertRocket.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/leverCock.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/magInsert.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/magRemove.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/magSmallInsert.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/magSmallRemove.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/openLatch.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/pistolCock.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/pressureValve.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/revolverClose.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/revolverCock.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/revolverSpin.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/rifleCock.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/shotgunCock.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload1.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload2.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload3.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/tubeFwoomp.ogg diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index 8491176be..7eba8ed07 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -1,8 +1,13 @@ package com.hbm.entity.projectile; import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.lib.ModDamageSource; +import com.hbm.packet.PacketDispatcher; +import com.hbm.packet.toclient.AuxParticlePacketNT; +import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.EntityLivingBase; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; @@ -88,7 +93,21 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { @Override protected void onImpact(MovingObjectPosition mop) { if(!worldObj.isRemote) { + if(mop.typeOfHit == mop.typeOfHit.ENTITY && !mop.entityHit.isEntityAlive()) return; + this.setDead(); + + if(mop.typeOfHit == mop.typeOfHit.ENTITY && mop.entityHit.isEntityAlive()) { + mop.entityHit.attackEntityFrom(ModDamageSource.turbofan, 1_000F); + + NBTTagCompound vdat = new NBTTagCompound(); + vdat.setString("type", "giblets"); + vdat.setInteger("ent", mop.entityHit.getEntityId()); + vdat.setInteger("cDiv", 2); + PacketDispatcher.wrapper.sendToAllAround( + new AuxParticlePacketNT(vdat, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ), + new TargetPoint(this.dimension, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ, 150)); + } } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index b3651a976..578770787 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -17,7 +17,7 @@ public class BulletConfig { public ComparableStack ammo; public int ammoReloadCount = 1; - public float velocity = 5F; + public float velocity = 10F; public float spread = 0F; public float wear = 1F; public int projectilesMin = 1; diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index e0388871c..eeeaee080 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -4,6 +4,7 @@ import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.hud.IHUDComponent; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.HbmAnimations.AnimType; @@ -20,8 +21,11 @@ public class GunConfig { public static final String O_RECEIVERS = "O_RECEIVERS"; public static final String F_DURABILITY = "F_DURABILITY"; public static final String I_DRAWDURATION = "I_DRAWDURATION"; + public static final String I_INSPECTDURATION = "I_INSPECTDURATION"; public static final String O_CROSSHAIR = "O_CROSSHAIR"; + public static final String B_DOESSMOKE = "B_DOESSMOKE"; public static final String B_RELOADANIMATIONSEQUENTIAL = "B_RELOADANIMATIONSEQUENTIAL"; + public static final String CON_ORCHESTRA = "CON_ORCHESTRA"; public static final String CON_ONPRESSPRIMARY = "CON_ONPRESSPRIMARY"; public static final String CON_ONPRESSSECONDARY = "CON_ONPRESSSECONDARY"; public static final String CON_ONPRESSTERTIARY = "CON_ONPRESSTERTIARY"; @@ -32,6 +36,7 @@ public class GunConfig { public static final String CON_ONRELEASERELOAD = "CON_ONRELEASERELOAD"; public static final String CON_DECIDER = "CON_DECIDER"; public static final String FUN_ANIMNATIONS = "FUN_ANIMNATIONS"; + public static final String O_HUDCOMPONENTS = "O_HUDCOMPONENTS"; /* FIELDS */ @@ -39,8 +44,12 @@ public class GunConfig { protected Receiver[] receivers_DNA; protected float durability_DNA; protected int drawDuration_DNA = 0; + protected int inspectDuration_DNA = 0; protected Crosshair crosshair_DNA; + protected boolean doesSmoke_DNA; protected boolean reloadAnimationsSequential_DNA; + /** This piece only triggers during reloads, playing sounds depending on the reload's progress making reload sounds easier and synced to animations */ + protected BiConsumer orchestra_DNA; /** Lambda functions for clicking shit */ protected BiConsumer onPressPrimary_DNA; protected BiConsumer onPressSecondary_DNA; @@ -55,14 +64,18 @@ public class GunConfig { protected BiConsumer decider_DNA; /** Lambda that returns the relevant animation for the given params */ protected BiFunction animations_DNA; + protected IHUDComponent[] hudComponents_DNA; /* GETTERS */ public Receiver[] getReceivers(ItemStack stack) { return WeaponUpgradeManager.eval(receivers_DNA, stack, O_RECEIVERS, this); } public float getDurability(ItemStack stack) { return WeaponUpgradeManager.eval(durability_DNA, stack, F_DURABILITY, this); } public int getDrawDuration(ItemStack stack) { return WeaponUpgradeManager.eval(drawDuration_DNA, stack, I_DRAWDURATION, this); } + public int getInspectDuration(ItemStack stack) { return WeaponUpgradeManager.eval(inspectDuration_DNA, stack, I_INSPECTDURATION, this); } public Crosshair getCrosshair(ItemStack stack) { return WeaponUpgradeManager.eval(crosshair_DNA, stack, O_CROSSHAIR, this); } + public boolean getDoesSmoke(ItemStack stack) { return WeaponUpgradeManager.eval(doesSmoke_DNA, stack, B_DOESSMOKE, this); } public boolean getReloadAnimSequential(ItemStack stack) { return WeaponUpgradeManager.eval(reloadAnimationsSequential_DNA, stack, B_RELOADANIMATIONSEQUENTIAL, this); } + public BiConsumer getOrchestra(ItemStack stack) { return WeaponUpgradeManager.eval(this.orchestra_DNA, stack, CON_ORCHESTRA, this); } public BiConsumer getPressPrimary(ItemStack stack) { return WeaponUpgradeManager.eval(this.onPressPrimary_DNA, stack, CON_ONPRESSPRIMARY, this); } public BiConsumer getPressSecondary(ItemStack stack) { return WeaponUpgradeManager.eval(this.onPressSecondary_DNA, stack, CON_ONPRESSSECONDARY, this); } @@ -77,13 +90,18 @@ public class GunConfig { public BiConsumer getDecider(ItemStack stack) { return WeaponUpgradeManager.eval(this.decider_DNA, stack, CON_DECIDER, this); } public BiFunction getAnims(ItemStack stack) { return WeaponUpgradeManager.eval(this.animations_DNA, stack, FUN_ANIMNATIONS, this); } + public IHUDComponent[] getHUDComponents(ItemStack stack) { return WeaponUpgradeManager.eval(this.hudComponents_DNA, stack, O_HUDCOMPONENTS, this); } /* SETTERS */ public GunConfig rec(Receiver... receivers) { this.receivers_DNA = receivers; return this; } public GunConfig dura(float dura) { this.durability_DNA = dura; return this; } public GunConfig draw(int draw) { this.drawDuration_DNA = draw; return this; } + public GunConfig inspect(int inspect) { this.inspectDuration_DNA = inspect; return this; } public GunConfig crosshair(Crosshair crosshair) { this.crosshair_DNA = crosshair; return this; } + public GunConfig smoke(boolean doesSmoke) { this.doesSmoke_DNA = doesSmoke; return this; } + + public GunConfig orchestra(BiConsumer orchestra) { this.orchestra_DNA = orchestra; return this; } //press public GunConfig pp(BiConsumer lambda) { this.onPressPrimary_DNA = lambda; return this; } @@ -100,6 +118,7 @@ public class GunConfig { //decider public GunConfig decider(BiConsumer lambda) { this.decider_DNA = lambda; return this; } - //anims - public GunConfig anim(BiFunction lambda) { this.animations_DNA = lambda; return this; } + //client + public GunConfig anim(BiFunction lambda) { this.animations_DNA = lambda; return this; } + public GunConfig hud(IHUDComponent... components) { this.hudComponents_DNA = components; return this; } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 5b6ccf842..6b911c9c1 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -1,9 +1,14 @@ package com.hbm.items.weapon.sedna; +import java.util.ArrayList; +import java.util.List; +import java.util.function.BiConsumer; + import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.interfaces.IItemHUD; import com.hbm.items.IEquipReceiver; import com.hbm.items.IKeybindReceiver; +import com.hbm.items.weapon.sedna.hud.IHUDComponent; import com.hbm.main.MainRegistry; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.GunAnimationPacket; @@ -21,22 +26,32 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.MathHelper; +import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipReceiver, IItemHUD { + /** Timestamp for rendering smoke nodes and muzzle flashes */ + public long lastShot; + /** [0;1] randomized every shot for various rendering applications */ + public double shotRand = 0D; + public List smokeNodes = new ArrayList(); + public static final String O_GUNCONFIG = "O_GUNCONFIG"; public static final String KEY_DRAWN = "drawn"; public static final String KEY_AIMING = "aiming"; + public static final String KEY_WEAR = "wear"; public static final String KEY_TIMER = "timer"; public static final String KEY_STATE = "state"; public static final String KEY_PRIMARY = "mouse1"; public static final String KEY_SECONDARY = "mouse2"; public static final String KEY_TERTIARY = "mouse3"; public static final String KEY_RELOAD = "reload"; + public static final String KEY_LASTANIM = "lastanim"; + public static final String KEY_ANIMTIMER = "animtimer"; public static float prevAimingProgress; public static float aimingProgress; @@ -59,7 +74,8 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei IDLE, //gun can be fired or reloaded WINDUP, //fire button is down, added delay before fire COOLDOWN, //gun has been fired, cooldown - RELOADING //gun is currently reloading + RELOADING, //gun is currently reloading + JAMMED, //gun is jammed, either after reloading or while firing } @Override @@ -85,7 +101,15 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei @Override public void onEquip(EntityPlayer player, ItemStack stack) { - if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.EQUIP.ordinal()), (EntityPlayerMP) player); + playAnimation(player, stack, AnimType.EQUIP); + } + + public static void playAnimation(EntityPlayer player, ItemStack stack, AnimType type) { + if(player instanceof EntityPlayerMP) { + PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(type.ordinal()), (EntityPlayerMP) player); + setLastAnim(stack, type); + setAnimTimer(stack, 0); + } } @Override @@ -93,6 +117,7 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei if(!(entity instanceof EntityPlayer)) return; EntityPlayer player = (EntityPlayer) entity; + GunConfig config = this.getConfig(stack); if(world.isRemote) { @@ -104,50 +129,90 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei offset.rotateAroundY(-entity.rotationYaw / 180F * (float) Math.PI); world.spawnParticle("flame", entity.posX + offset.xCoord, entity.posY + entity.getEyeHeight() + offset.yCoord, entity.posZ + offset.zCoord, 0, 0, 0);*/ + /// AIMING /// prevAimingProgress = aimingProgress; boolean aiming = this.getIsAiming(stack); float aimSpeed = 0.25F; if(aiming && aimingProgress < 1F) aimingProgress += aimSpeed; if(!aiming && aimingProgress > 0F) aimingProgress -= aimSpeed; aimingProgress = MathHelper.clamp_float(aimingProgress, 0F, 1F); + + /// SMOKE NODES /// + if(config.getDoesSmoke(stack)) { + + boolean smoking = lastShot + 2000 > System.currentTimeMillis(); + if(!smoking && !smokeNodes.isEmpty()) smokeNodes.clear(); + + if(smoking) { + Vec3 prev = Vec3.createVectorHelper(-entity.motionX, -entity.motionY, -entity.motionZ); + prev.rotateAroundY((float) (entity.rotationYaw * Math.PI / 180D)); + double accel = 15D; + double side = (entity.rotationYaw - player.prevRotationYawHead) * 0.1D; + double waggle = 0.025D; + + for(SmokeNode node : smokeNodes) { + node.forward += -prev.zCoord * accel + world.rand.nextGaussian() * waggle; + node.lift += prev.yCoord + 1.5D; + node.side += prev.xCoord * accel + world.rand.nextGaussian() * waggle + side; + if(node.alpha > 0) node.alpha -= 0.025D; + node.width *= 1.15; + } + + double alpha = (System.currentTimeMillis() - lastShot) / 2000D; + alpha = (1 - alpha) * 0.5D; + + if(this.getState(stack) == GunState.RELOADING || smokeNodes.size() == 0) alpha = 0; + smokeNodes.add(new SmokeNode(alpha)); + } + } } return; } - GunConfig config = this.getConfig(stack); - + /// RESET WHEN NOT EQUIPPED /// if(!isHeld) { - this.setState(stack, GunState.DRAWING); - this.setTimer(stack, config.getDrawDuration(stack)); + GunState current = this.getState(stack); + if(current != GunState.JAMMED) { + this.setState(stack, GunState.DRAWING); + this.setTimer(stack, config.getDrawDuration(stack)); + } this.setIsAiming(stack, false); return; } + LambdaContext ctx = new LambdaContext(config, player); + + BiConsumer orchestra = config.getOrchestra(stack); + if(orchestra != null) orchestra.accept(stack, ctx); + + setAnimTimer(stack, getAnimTimer(stack) + 1); + + /// STTATE MACHINE /// int timer = this.getTimer(stack); if(timer > 0) this.setTimer(stack, timer - 1); - if(timer <= 1) nextState(player, stack); - } - - public void nextState(EntityPlayer player, ItemStack stack) { - GunConfig cfg = this.getConfig(stack); - cfg.getDecider(stack).accept(stack, new LambdaContext(cfg, player)); + if(timer <= 1) config.getDecider(stack).accept(stack, ctx); } // GUN DRAWN // public static boolean getIsDrawn(ItemStack stack) { return getValueBool(stack, KEY_DRAWN); } public static void setIsDrawn(ItemStack stack, boolean value) { setValueBool(stack, KEY_DRAWN, value); } - // GUN STATE TIMER // public static int getTimer(ItemStack stack) { return getValueInt(stack, KEY_TIMER); } public static void setTimer(ItemStack stack, int value) { setValueInt(stack, KEY_TIMER, value); } - // GUN STATE // public static GunState getState(ItemStack stack) { return EnumUtil.grabEnumSafely(GunState.class, getValueByte(stack, KEY_STATE)); } public static void setState(ItemStack stack, GunState value) { setValueByte(stack, KEY_STATE, (byte) value.ordinal()); } - // GUN AIMING // public static boolean getIsAiming(ItemStack stack) { return getValueBool(stack, KEY_AIMING); } public static void setIsAiming(ItemStack stack, boolean value) { setValueBool(stack, KEY_AIMING, value); } + // GUN AIMING // + public static float getWear(ItemStack stack) { return getValueFloat(stack, KEY_WEAR); } + public static void setWear(ItemStack stack, float value) { setValueFloat(stack, KEY_WEAR, value); } + // ANIM TRACKING // + public static AnimType getLastAnim(ItemStack stack) { return EnumUtil.grabEnumSafely(AnimType.class, getValueInt(stack, KEY_LASTANIM)); } + public static void setLastAnim(ItemStack stack, AnimType value) { setValueInt(stack, KEY_LASTANIM, value.ordinal()); } + public static int getAnimTimer(ItemStack stack) { return getValueInt(stack, KEY_ANIMTIMER); } + public static void setAnimTimer(ItemStack stack, int value) { setValueInt(stack, KEY_ANIMTIMER, value); } // BUTTON STATES // public static boolean getPrimary(ItemStack stack) { return getValueBool(stack, KEY_PRIMARY); } @@ -164,6 +229,9 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public static int getValueInt(ItemStack stack, String name) { if(stack.hasTagCompound()) return stack.getTagCompound().getInteger(name); return 0; } public static void setValueInt(ItemStack stack, String name, int value) { if(!stack.hasTagCompound()) stack.stackTagCompound = new NBTTagCompound(); stack.getTagCompound().setInteger(name, value); } + public static float getValueFloat(ItemStack stack, String name) { if(stack.hasTagCompound()) return stack.getTagCompound().getFloat(name); return 0; } + public static void setValueFloat(ItemStack stack, String name, float value) { if(!stack.hasTagCompound()) stack.stackTagCompound = new NBTTagCompound(); stack.getTagCompound().setFloat(name, value); } + public static byte getValueByte(ItemStack stack, String name) { if(stack.hasTagCompound()) return stack.getTagCompound().getByte(name); return 0; } public static void setValueByte(ItemStack stack, String name, byte value) { if(!stack.hasTagCompound()) stack.stackTagCompound = new NBTTagCompound(); stack.getTagCompound().setByte(name, value); } @@ -184,11 +252,32 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei @Override @SideOnly(Side.CLIENT) public void renderHUD(Pre event, ElementType type, EntityPlayer player, ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + if(type == ElementType.CROSSHAIRS) { event.setCanceled(true); if(aimingProgress >= 1F) return; - ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); RenderScreenOverlay.renderCustomCrosshairs(event.resolution, Minecraft.getMinecraft().ingameGUI, gun.getConfig(stack).getCrosshair(stack)); } + + IHUDComponent[] components = gun.getConfig(stack).getHUDComponents(stack); + + for(IHUDComponent component : components) { + int bottomOffset = 0; + component.renderHUDComponent(event, type, player, stack, bottomOffset); + bottomOffset += component.getComponentHeight(player, stack); + } + } + + public static class SmokeNode { + + public double forward = 0D; + public double side = 0D; + public double lift = 0D; + public double alpha; + public double width = 1D; + + public SmokeNode(double alpha) { this.alpha = alpha; } } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index c1a6603a3..793b0d45c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -39,7 +39,7 @@ public class Receiver { protected float baseDamage_DNA; protected int delayAfterFire_DNA; protected int roundsPerCycle_DNA = 1; - protected float spreadMod_DNA = 1F; + protected float spreadModExtra_DNA = 0F; protected boolean refireOnHold_DNA = false; protected CasingEjector ejector_DNA = null; protected int reloadDuration_DNA; @@ -54,7 +54,7 @@ public class Receiver { public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } public int getDelayAfterFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterFire_DNA, stack, I_DELAYAFTERFIRE, this); } public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } - public float getSpreadMod(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadMod_DNA, stack, F_SPREADMOD, this); } + public float getSpreadMod(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } @@ -70,7 +70,7 @@ public class Receiver { public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } - public Receiver spread(int spread) { this.spreadMod_DNA = spread; return this; } + public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } public Receiver burst(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 99140471a..a67ef8f06 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -1,20 +1,27 @@ package com.hbm.items.weapon.sedna.factory; +import java.util.function.BiConsumer; + import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; -import com.hbm.items.weapon.sedna.mags.MagazineRevolverDrum; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; +import com.hbm.render.anim.HbmAnimations.AnimType; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; public class GunFactory { - + public static BulletConfig ammo_debug; + public static BulletConfig ammo_debug_buckshot; public static void init() { @@ -23,13 +30,14 @@ public class GunFactory { /// BULLLET CFGS /// ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F); + ammo_debug_buckshot = new BulletConfig().setItem(ModItems.ammo_12gauge).setSpread(0.1F).setProjectiles(6, 6); /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600).draw(15).crosshair(Crosshair.L_CLASSIC) + .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(DEBUG_ORCHESTRA) .rec(new Receiver(0) - .dmg(10F).delay(12).reload(20).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) - .mag(new MagazineRevolverDrum(0, 6).addConfigs(ammo_debug)) + .dmg(10F).delay(12).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) @@ -39,4 +47,24 @@ public class GunFactory { /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); } + + public static BiConsumer DEBUG_ORCHESTRA = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 6712017ec..f5b50fa2b 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -14,6 +14,7 @@ public class GunFactoryClient { public static void init() { ammo_debug.setRenderer(RENDER_STANDARD_BULLET); + ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index 3fc55d712..1cdfd9e26 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -64,6 +64,7 @@ public class GunStateDecider { if(lastState == GunState.COOLDOWN) { + EntityPlayer player = ctx.player; GunConfig cfg = ctx.config; Receiver rec = cfg.getReceivers(stack)[recIndex]; @@ -74,6 +75,11 @@ public class GunStateDecider { rec.getOnFire(stack).accept(stack, ctx); ItemGunBaseNT.setState(stack, GunState.COOLDOWN); ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + + player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, rec.getFireSound(stack), rec.getFireVolume(stack), rec.getFirePitch(stack)); + + int remaining = rec.getRoundsPerCycle(stack) - 1; + for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); //if not, revert to idle } else { ItemGunBaseNT.setState(stack, GunState.IDLE); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 0cb990e23..06caabc1b 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -10,15 +10,14 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.hud.HUDComponentAmmoCounter; +import com.hbm.items.weapon.sedna.hud.HUDComponentDurabilityBar; import com.hbm.items.weapon.sedna.mags.IMagazine; -import com.hbm.packet.PacketDispatcher; -import com.hbm.packet.toclient.GunAnimationPacket; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.BusAnimationSequence; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.entity.player.EntityPlayerMP; import net.minecraft.item.ItemStack; /** @@ -29,6 +28,9 @@ import net.minecraft.item.ItemStack; public class Lego { public static final Random ANIM_RAND = new Random(); + + public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY = new HUDComponentDurabilityBar(); + public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); /** * If IDLE and the mag of receiver 0 can be loaded, set state to RELOADING. Used by keybinds. */ @@ -36,17 +38,18 @@ public class Lego { EntityPlayer player = ctx.player; Receiver rec = ctx.config.getReceivers(stack)[0]; + GunState state = ItemGunBaseNT.getState(stack); - if(ItemGunBaseNT.getState(stack) == GunState.IDLE) { + if(state == GunState.IDLE) { ItemGunBaseNT.setIsAiming(stack, false); if(rec.getMagazine(stack).canReload(stack, ctx.player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); ItemGunBaseNT.setTimer(stack, rec.getReloadDuration(stack)); - if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.RELOAD.ordinal()), (EntityPlayerMP) player); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD); } else { - if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.INSPECT.ordinal()), (EntityPlayerMP) player); + ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT); } } }; @@ -54,14 +57,18 @@ public class Lego { /** * If IDLE and ammo is loaded, fire and set to JUST_FIRED. */ public static BiConsumer LAMBDA_STANDARD_CLICK_PRIMARY = (stack, ctx) -> { - + + EntityPlayer player = ctx.player; Receiver rec = ctx.config.getReceivers(stack)[0]; + GunState state = ItemGunBaseNT.getState(stack); - if(ItemGunBaseNT.getState(stack) == GunState.IDLE && rec.getCanFire(stack).apply(stack, ctx)) { + if(state == GunState.IDLE && rec.getCanFire(stack).apply(stack, ctx)) { ItemGunBaseNT.setState(stack, GunState.COOLDOWN); ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); rec.getOnFire(stack).accept(stack, ctx); + player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, rec.getFireSound(stack), rec.getFireVolume(stack), rec.getFirePitch(stack)); + int remaining = rec.getRoundsPerCycle(stack) - 1; for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); } @@ -82,24 +89,24 @@ public class Lego { /** Spawns an EntityBulletBaseMK4 with the loaded bulletcfg */ public static BiConsumer LAMBDA_STANDARD_FIRE = (stack, ctx) -> { EntityPlayer player = ctx.player; - if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.CYCLE.ordinal()), (EntityPlayerMP) player); + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE); double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : -0.3125D; float aim = ItemGunBaseNT.getIsAiming(stack) ? 0.25F : 1F; Receiver primary = ctx.config.getReceivers(stack)[0]; IMagazine mag = primary.getMagazine(stack); + BulletConfig config = (BulletConfig) mag.getType(stack); - EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, (BulletConfig) mag.getType(stack), primary.getBaseDamage(stack), primary.getSpreadMod(stack) * aim, sideOffset, -0.0625, 0.75); - player.worldObj.spawnEntityInWorld(mk4); - player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, primary.getFireSound(stack), primary.getFireVolume(stack), primary.getFirePitch(stack)); + int projectiles = config.projectilesMin; + if(config.projectilesMax > config.projectilesMin) projectiles += player.getRNG().nextInt(config.projectilesMax - config.projectilesMin + 1); - mag.setAmount(stack, mag.getAmount(stack) - 1);; - }; - - /** No reload, simply play inspect animation */ - public static BiConsumer LAMBDA_DEBUG_RELOAD = (stack, ctx) -> { - EntityPlayer player = ctx.player; - if(player instanceof EntityPlayerMP) PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(AnimType.INSPECT.ordinal()), (EntityPlayerMP) player); + for(int i = 0; i < projectiles; i++) { + EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, primary.getBaseDamage(stack), primary.getSpreadMod(stack) * aim + 1F, sideOffset, -0.0625, 0.75); + player.worldObj.spawnEntityInWorld(mk4); + } + + mag.setAmount(stack, mag.getAmount(stack) - 1); + ItemGunBaseNT.setWear(stack, ItemGunBaseNT.getWear(stack) + config.wear); }; /** anims for the DEBUG revolver, mostly a copy of the li'lpip but with some fixes regarding the cylinder movement */ @@ -117,10 +124,10 @@ public class Lego { .addBus("RELOAD_JOLT", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(2, 0, 0, 50).addPos(0, 0, 0, 100)) .addBus("RELOAD_BULLETS", new BusAnimationSequence().addPos(0, 0, 0, 650).addPos(10, 0, 0, 300).addPos(10, 0, 0, 200).addPos(0, 0, 0, 700)) .addBus("RELOAD_BULLETS_CON", new BusAnimationSequence().addPos(1, 0, 0, 0).addPos(1, 0, 0, 950).addPos(0, 0, 0, 1 ) ); - case INSPECT: if(ANIM_RAND.nextBoolean()) return new BusAnimation() - .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 1450 - 1250).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) - .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 1700 - 1250).addPos(0, 0, 0, 70)); - else return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(-360 * 5, 0, 0, 350 * 5)); + case INSPECT: //if(ANIM_RAND.nextBoolean()) return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(-360 * 5, 0, 0, 350 * 5)); + case JAMMED: return new BusAnimation() + .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 200).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) + .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 450).addPos(0, 0, 0, 70)); } return null; diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java new file mode 100644 index 000000000..e305c3572 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java @@ -0,0 +1,52 @@ +package com.hbm.items.weapon.sedna.hud; + +import org.lwjgl.opengl.GL11; +import org.lwjgl.opengl.GL12; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.mags.IMagazine; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.ScaledResolution; +import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.entity.RenderItem; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; +import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; + +public class HUDComponentAmmoCounter implements IHUDComponent { + + protected static final RenderItem itemRenderer = RenderItem.getInstance(); + protected int receiver; + + public HUDComponentAmmoCounter(int receiver) { + this.receiver = receiver; + } + + @Override + public int getComponentHeight(EntityPlayer player, ItemStack stack){ + return 22; + } + + @Override + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset) { + + ScaledResolution resolution = event.resolution; + Minecraft mc = Minecraft.getMinecraft(); + + int pX = resolution.getScaledWidth() / 2 + 62 + 36; + int pZ = resolution.getScaledHeight() - bottomOffset - 21; + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + IMagazine mag = gun.getConfig(stack).getReceivers(stack)[this.receiver].getMagazine(stack); + + mc.fontRenderer.drawString(mag.reportAmmoStateForHUD(stack), pX + 17, pZ + 6, 0xFFFFFF); + + GL11.glDisable(GL11.GL_BLEND); + GL11.glEnable(GL12.GL_RESCALE_NORMAL); + RenderHelper.enableGUIStandardItemLighting(); + itemRenderer.renderItemAndEffectIntoGUI(mc.fontRenderer, mc.getTextureManager(), mag.getIconForHUD(stack), pX, pZ); + RenderHelper.disableStandardItemLighting(); + GL11.glDisable(GL12.GL_RESCALE_NORMAL); + } +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java new file mode 100644 index 000000000..93f7cbbf0 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java @@ -0,0 +1,43 @@ +package com.hbm.items.weapon.sedna.hud; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.lib.RefStrings; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.ScaledResolution; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.util.ResourceLocation; +import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; +import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; + +public class HUDComponentDurabilityBar implements IHUDComponent { + + private static final ResourceLocation misc = new ResourceLocation(RefStrings.MODID + ":textures/misc/overlay_misc.png"); + + @Override + public int getComponentHeight(EntityPlayer player, ItemStack stack) { + return 5; + } + + @Override + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset) { + + ScaledResolution resolution = event.resolution; + Minecraft mc = Minecraft.getMinecraft(); + + int pX = resolution.getScaledWidth() / 2 + 62 + 36; + int pZ = resolution.getScaledHeight() - 21; + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + int dura = (int) (50 * gun.getWear(stack) / gun.getConfig(stack).getDurability(stack)); + + GL11.glColor4f(1F, 1F, 1F, 1F); + + mc.renderEngine.bindTexture(misc); + mc.ingameGUI.drawTexturedModalRect(pX, pZ + 16, 94, 0, 52, 3); + mc.ingameGUI.drawTexturedModalRect(pX + 1, pZ + 16, 95, 3, 50 - dura, 3); + } +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java b/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java new file mode 100644 index 000000000..4405d6abd --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java @@ -0,0 +1,12 @@ +package com.hbm.items.weapon.sedna.hud; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; +import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; + +public interface IHUDComponent { + + public int getComponentHeight(EntityPlayer player, ItemStack stack); + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset); +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java index 55d7d4bb7..b875e1ee5 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java @@ -9,12 +9,12 @@ import net.minecraft.item.ItemStack; * * @author hbm */ -public interface IMagazine { +public interface IMagazine { /** What ammo is loaded currently */ - public Object getType(ItemStack stack); + public T getType(ItemStack stack); /** Sets the mag's ammo type */ - public void setType(ItemStack stack, Object type); + public void setType(ItemStack stack, T type); /** How much ammo this mag can carry */ public int getCapacity(ItemStack stack); /** How much ammo is currently loaded */ @@ -26,5 +26,7 @@ public interface IMagazine { /** The action done at the end of one reload cycle, either loading one shell or replacing the whole mag */ public void reloadAction(ItemStack stack, EntityPlayer player); /** The stack that should be displayed for the ammo HUD */ - public ItemStack getIcon(ItemStack stack); + public ItemStack getIconForHUD(ItemStack stack); + /** It explains itself */ + public String reportAmmoStateForHUD(ItemStack stack); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineFullReload.java similarity index 83% rename from src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java rename to src/main/java/com/hbm/items/weapon/sedna/mags/MagazineFullReload.java index df7990b0e..473958f62 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineRevolverDrum.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineFullReload.java @@ -6,9 +6,9 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; /** Uses individual bullets which are loaded all at once */ -public class MagazineRevolverDrum extends MagazineStandardBase { +public class MagazineFullReload extends MagazineSingleTypeBase { - public MagazineRevolverDrum(int index, int capacity) { + public MagazineFullReload(int index, int capacity) { super(index, capacity); } @@ -26,7 +26,7 @@ public class MagazineRevolverDrum extends MagazineStandardBase { if(config.ammo.matchesRecipe(slot, true)) return true; } } else { - BulletConfig config = (BulletConfig) this.getType(stack); + BulletConfig config = this.getType(stack); if(config == null) { config = this.acceptedBullets.get(0); this.setType(stack, config); } if(config.ammo.matchesRecipe(slot, true)) return true; } @@ -59,7 +59,7 @@ public class MagazineRevolverDrum extends MagazineStandardBase { } //mag has a type set, only load that } else { - BulletConfig config = (BulletConfig) this.getType(stack); + BulletConfig config = this.getType(stack); if(config == null) { config = this.acceptedBullets.get(0); this.setType(stack, config); } //fixing broken NBT if(config.ammo.matchesRecipe(slot, true)) { @@ -72,13 +72,4 @@ public class MagazineRevolverDrum extends MagazineStandardBase { } } } - - @Override - public ItemStack getIcon(ItemStack stack) { - Object o = this.getType(stack); - if(o instanceof BulletConfig) { - return ((BulletConfig) o).ammo.toStack(); - } - return null; - } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineStandardBase.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java similarity index 70% rename from src/main/java/com/hbm/items/weapon/sedna/mags/MagazineStandardBase.java rename to src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java index 874d14195..0af651cca 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineStandardBase.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java @@ -8,8 +8,8 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import net.minecraft.item.ItemStack; -/** Base class for typical magazines, i.e. ones that hold bullets, shells, grenades, etc, any ammo item. Type methods deal with BulletConfigs */ -public abstract class MagazineStandardBase implements IMagazine { +/** Base class for typical magazines, i.e. ones that hold bullets, shells, grenades, etc, any ammo item. Stores a single type of BulletConfigs */ +public abstract class MagazineSingleTypeBase implements IMagazine { public static final String KEY_MAG_COUNT = "magcount"; public static final String KEY_MAG_TYPE = "magtype"; @@ -21,15 +21,15 @@ public abstract class MagazineStandardBase implements IMagazine { /** How much ammo this mag can hold */ public int capacity; - public MagazineStandardBase(int index, int capacity) { + public MagazineSingleTypeBase(int index, int capacity) { this.index = index; this.capacity = capacity; } - public MagazineStandardBase addConfigs(BulletConfig... cfgs) { for(BulletConfig cfg : cfgs) acceptedBullets.add(cfg); return this; } + public MagazineSingleTypeBase addConfigs(BulletConfig... cfgs) { for(BulletConfig cfg : cfgs) acceptedBullets.add(cfg); return this; } @Override - public Object getType(ItemStack stack) { + public BulletConfig getType(ItemStack stack) { int type = getMagType(stack, index); if(type >= 0 && type < BulletConfig.configs.size()) { return BulletConfig.configs.get(type); @@ -38,12 +38,23 @@ public abstract class MagazineStandardBase implements IMagazine { } @Override - public void setType(ItemStack stack, Object type) { - if(!(type instanceof BulletConfig)) return; + public void setType(ItemStack stack, BulletConfig type) { int i = BulletConfig.configs.indexOf(type); if(i >= 0) setMagType(stack, index, i); } + @Override + public ItemStack getIconForHUD(ItemStack stack) { + BulletConfig config = this.getType(stack); + if(config != null) return config.ammo.toStack(); + return null; + } + + @Override + public String reportAmmoStateForHUD(ItemStack stack) { + return getAmount(stack) + " / " + getCapacity(stack); + } + @Override public int getCapacity(ItemStack stack) { return capacity; } @Override public int getAmount(ItemStack stack) { return getMagCount(stack, index); } @Override public void setAmount(ItemStack stack, int amount) { setMagCount(stack, index, amount); } diff --git a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java index 377ac340b..51aaca407 100644 --- a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java +++ b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java @@ -55,7 +55,7 @@ public class GunAnimationPacket implements IMessage { if(stack == null) return null; - if(stack.getItem() instanceof com.hbm.items.weapon.sedna.ItemGunBaseNT) { + if(stack.getItem() instanceof ItemGunBaseNT) { handleSedna(player, stack, slot, AnimType.values()[m.type]); } @@ -94,6 +94,11 @@ public class GunAnimationPacket implements IMessage { ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); GunConfig config = gun.getConfig(stack); + if(type == AnimType.CYCLE) { + gun.lastShot = System.currentTimeMillis(); + gun.shotRand = player.worldObj.rand.nextDouble(); + } + BiFunction anims = config.getAnims(stack); BusAnimation animation = anims.apply(stack, type); diff --git a/src/main/java/com/hbm/render/anim/HbmAnimations.java b/src/main/java/com/hbm/render/anim/HbmAnimations.java index 699703db6..078c479b6 100644 --- a/src/main/java/com/hbm/render/anim/HbmAnimations.java +++ b/src/main/java/com/hbm/render/anim/HbmAnimations.java @@ -28,7 +28,8 @@ public class HbmAnimations { SPINUP, //animation for actionstart SPINDOWN, //animation for actionend EQUIP, //animation for drawing the weapon - INSPECT //animation for inspecting the weapon + INSPECT, //animation for inspecting the weapon + JAMMED //animation for jammed weapons } // A NOTE ON SHOTGUN STYLE RELOADS diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java index b6981e6f1..8b8247ac3 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java @@ -27,6 +27,8 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { @Override public void renderFirstPerson(ItemStack stack) { + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + double scale = 0.125D; GL11.glScaled(scale, scale, scale); GL11.glRotated(90, 0, 1, 0); @@ -44,11 +46,18 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { standardAimingTransform(stack, 0, 0, recoil[2], -recoil[2], 0, 0); GL11.glRotated(recoil[2] * 10, 0, 0, 1); + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + GL11.glTranslated(-9, 2.5, 0); + GL11.glRotated(recoil[2] * -10, 0, 0, 1); + this.renderSmokeNodes(gun.smokeNodes, 0.5D); + GL11.glPopMatrix(); + GL11.glRotated(reloadLift[0], 0, 0, 1); GL11.glTranslated(reloadJolt[0], 0, 0); GL11.glRotated(reloadTilt[0], 1, 0, 0); - GL11.glShadeModel(GL11.GL_SMOOTH); Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.debug_gun_tex); ResourceManager.lilmac.renderPart("Gun"); @@ -73,6 +82,17 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0.125, 2.5, 0); + this.renderGapFlash(gun.lastShot); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(-9.5, 2.5, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + //this.renderMuzzleFlash(gun.lastShot); + GL11.glPopMatrix(); } @Override diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java index dc9a64b8b..1c714db8e 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java @@ -1,10 +1,14 @@ package com.hbm.render.item.weapon.sedna; +import java.util.List; + import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; import org.lwjgl.util.glu.Project; import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.SmokeNode; +import com.hbm.lib.RefStrings; import net.minecraft.block.Block; import net.minecraft.block.material.Material; @@ -14,14 +18,18 @@ import net.minecraft.client.renderer.ActiveRenderInfo; import net.minecraft.client.renderer.EntityRenderer; import net.minecraft.client.renderer.OpenGlHelper; import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.Tessellator; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; import net.minecraft.util.MathHelper; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.IItemRenderer; public abstract class ItemRenderWeaponBase implements IItemRenderer { + public static final ResourceLocation flash_plume = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lilmac_plume.png"); + public static float interp; @Override @@ -226,4 +234,144 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { double z = sZ + (aZ - sZ) * aimingProgress; GL11.glTranslated(x, y, z); } + + public static void renderSmokeNodes(List nodes, double scale) { + Tessellator tess = Tessellator.instance; + + if(nodes.size() > 1) { + + GL11.glEnable(GL11.GL_BLEND); + GL11.glDisable(GL11.GL_TEXTURE_2D); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glAlphaFunc(GL11.GL_GREATER, 0F); + GL11.glDepthMask(false); + + tess.startDrawingQuads(); + tess.setNormal(0F, 1F, 0F); + + for(int i = 0; i < nodes.size() - 1; i++) { + SmokeNode node = nodes.get(i); + SmokeNode past = nodes.get(i + 1); + + tess.setColorRGBA_F(1F, 1F, 1F, (float) node.alpha); + tess.addVertex(node.forward, node.lift, node.side); + tess.setColorRGBA_F(1F, 1F, 1F, 0F); + tess.addVertex(node.forward, node.lift, node.side + node.width * scale); + tess.setColorRGBA_F(1F, 1F, 1F, 0F); + tess.addVertex(past.forward, past.lift, past.side + past.width * scale); + tess.setColorRGBA_F(1F, 1F, 1F, (float) past.alpha); + tess.addVertex(past.forward, past.lift, past.side); + + tess.setColorRGBA_F(1F, 1F, 1F, (float) node.alpha); + tess.addVertex(node.forward, node.lift, node.side); + tess.setColorRGBA_F(1F, 1F, 1F, 0F); + tess.addVertex(node.forward, node.lift, node.side - node.width * scale); + tess.setColorRGBA_F(1F, 1F, 1F, 0F); + tess.addVertex(past.forward, past.lift, past.side - past.width * scale); + tess.setColorRGBA_F(1F, 1F, 1F, (float) past.alpha); + tess.addVertex(past.forward, past.lift, past.side); + } + tess.draw(); + + GL11.glDepthMask(true); + GL11.glAlphaFunc(GL11.GL_GEQUAL, 0.1F); + GL11.glEnable(GL11.GL_TEXTURE_2D); + GL11.glEnable(GL11.GL_CULL_FACE); + GL11.glDisable(GL11.GL_BLEND); + } + } + + public static void renderMuzzleFlash(long lastShot) { + Tessellator tess = Tessellator.instance; + + int flash = 75; + + if(System.currentTimeMillis() - lastShot < flash) { + GL11.glEnable(GL11.GL_BLEND); + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); + GL11.glPushMatrix(); + + double fire = (System.currentTimeMillis() - lastShot) / (double) flash; + + double width = 6 * fire; + double length = 15 * fire; + double inset = 2; + Minecraft.getMinecraft().renderEngine.bindTexture(flash_plume); + tess.startDrawingQuads(); + tess.setNormal(0F, 1F, 0F); + tess.setColorRGBA_F(1F, 1F, 1F, 1F); + + tess.addVertexWithUV(0, -width, - inset, 1, 1); + tess.addVertexWithUV(0, width, - inset, 0, 1); + tess.addVertexWithUV(0.1, width, length - inset, 0 ,0); + tess.addVertexWithUV(0.1, -width, length - inset, 1, 0); + + tess.addVertexWithUV(0, width, inset, 0, 1); + tess.addVertexWithUV(0, -width, inset, 1, 1); + tess.addVertexWithUV(0.1, -width, -length + inset, 1, 0); + tess.addVertexWithUV(0.1, width, -length + inset, 0 ,0); + + tess.addVertexWithUV(0, - inset, width, 0, 1); + tess.addVertexWithUV(0, - inset, -width, 1, 1); + tess.addVertexWithUV(0.1, length - inset, -width, 1, 0); + tess.addVertexWithUV(0.1, length - inset, width, 0 ,0); + + tess.addVertexWithUV(0, inset, -width, 1, 1); + tess.addVertexWithUV(0, inset, width, 0, 1); + tess.addVertexWithUV(0.1, -length + inset, width, 0 ,0); + tess.addVertexWithUV(0.1, -length + inset, -width, 1, 0); + + tess.draw(); + GL11.glPopMatrix(); + GL11.glDisable(GL11.GL_BLEND); + } + } + + public static void renderGapFlash(long lastShot) { + Tessellator tess = Tessellator.instance; + + int flash = 75; + + if(System.currentTimeMillis() - lastShot < flash) { + GL11.glEnable(GL11.GL_BLEND); + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); + GL11.glPushMatrix(); + + double fire = (System.currentTimeMillis() - lastShot) / (double) flash; + + double height = 4 * fire; + double length = 15 * fire; + double lift = 3 * fire; + double offset = 1 * fire; + double lengthOffset = 0.125; + Minecraft.getMinecraft().renderEngine.bindTexture(flash_plume); + tess.startDrawingQuads(); + tess.setNormal(0F, 1F, 0F); + tess.setColorRGBA_F(1F, 1F, 1F, 1F); + + tess.addVertexWithUV(0, -height, -offset, 1, 1); + tess.addVertexWithUV(0, height, -offset, 0, 1); + tess.addVertexWithUV(0, height + lift, length - offset, 0 ,0); + tess.addVertexWithUV(0, -height + lift, length - offset, 1, 0); + + tess.addVertexWithUV(0, height, offset, 0, 1); + tess.addVertexWithUV(0, -height, offset, 1, 1); + tess.addVertexWithUV(0, -height + lift, -length + offset, 1, 0); + tess.addVertexWithUV(0, height + lift, -length + offset, 0 ,0); + + tess.addVertexWithUV(0, -height, -offset, 1, 1); + tess.addVertexWithUV(0, height, -offset, 0, 1); + tess.addVertexWithUV(lengthOffset, height, length - offset, 0 ,0); + tess.addVertexWithUV(lengthOffset, -height, length - offset, 1, 0); + + tess.addVertexWithUV(0, height, offset, 0, 1); + tess.addVertexWithUV(0, -height, offset, 1, 1); + tess.addVertexWithUV(lengthOffset, -height, -length + offset, 1, 0); + tess.addVertexWithUV(lengthOffset, height, -length + offset, 0 ,0); + + tess.draw(); + GL11.glPopMatrix(); + GL11.glDisable(GL11.GL_BLEND); + } + } } diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index 02bb67a4c..27d07dcc9 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -220,6 +220,30 @@ "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, "weapon.switchmode2": {"category": "player", "sounds": [{"name": "weapon/switchmode2", "stream": false}]}, + "weapon.reload.boltClose": {"category": "player", "sounds": ["weapon/reload/boltClose"]}, + "weapon.reload.boltOpen": {"category": "player", "sounds": ["weapon/reload/boltOpen"]}, + "weapon.reload.closeClick": {"category": "player", "sounds": ["weapon/reload/closeClick"]}, + "weapon.reload.dryFireClick": {"category": "player", "sounds": ["weapon/reload/dryFireClick"]}, + "weapon.reload.insertCanister": {"category": "player", "sounds": ["weapon/reload/insertCanister"]}, + "weapon.reload.insertGrenade": {"category": "player", "sounds": ["weapon/reload/insertGrenade"]}, + "weapon.reload.insertLarge": {"category": "player", "sounds": ["weapon/reload/insertLarge"]}, + "weapon.reload.insertRocket": {"category": "player", "sounds": ["weapon/reload/insertRocket"]}, + "weapon.reload.leverCock": {"category": "player", "sounds": ["weapon/reload/leverCock"]}, + "weapon.reload.magInsert": {"category": "player", "sounds": ["weapon/reload/magInsert"]}, + "weapon.reload.magRemove": {"category": "player", "sounds": ["weapon/reload/magRemove"]}, + "weapon.reload.magSmallInsert": {"category": "player", "sounds": ["weapon/reload/magSmallInsert"]}, + "weapon.reload.magSmallRemove": {"category": "player", "sounds": ["weapon/reload/magSmallRemove"]}, + "weapon.reload.openLatch": {"category": "player", "sounds": ["weapon/reload/openLatch"]}, + "weapon.reload.pistolCock": {"category": "player", "sounds": ["weapon/reload/pistolCock"]}, + "weapon.reload.pressureValve": {"category": "player", "sounds": ["weapon/reload/pressureValve"]}, + "weapon.reload.revolverClose": {"category": "player", "sounds": ["weapon/reload/revolverClose"]}, + "weapon.reload.revolverCock": {"category": "player", "sounds": ["weapon/reload/revolverCock"]}, + "weapon.reload.revolverSpin": {"category": "player", "sounds": ["weapon/reload/revolverSpin"]}, + "weapon.reload.rifleCock": {"category": "player", "sounds": ["weapon/reload/rifleCock"]}, + "weapon.reload.shotgunCock": {"category": "player", "sounds": ["weapon/reload/shotgunCock"]}, + "weapon.reload.shotgunReload": {"category": "player", "sounds": ["weapon/reload/shotgunReload1", "weapon/reload/shotgunReload2", "weapon/reload/shotgunReload3"]}, + "weapon.reload.tubeFwoomp": {"category": "player", "sounds": ["weapon/reload/tubeFwoomp"]}, + "turret.chekhov_fire": {"category": "block", "sounds": [{"name": "turret/chekhov_fire", "stream": false}]}, "turret.jeremy_fire": {"category": "block", "sounds": ["turret/jeremy_fire1", "turret/jeremy_fire2", "turret/jeremy_fire3", "turret/jeremy_fire4", "turret/jeremy_fire5"]}, "turret.jeremy_reload": {"category": "block", "sounds": [{"name": "turret/jeremy_reload", "stream": false}]}, diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/boltClose.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/boltClose.ogg new file mode 100644 index 0000000000000000000000000000000000000000..45bd9317106e5cd66d5f18d33485f0e7a5857324 GIT binary patch literal 5441 zcmahs3pkWp*RT7yq;W|@!x`l^LPkTT=pe#mTxJZ$7;+i6X^=6+DIGB!A<3<1LS@|P zs9aKXp$Rc5p^`4g$+bh@QIt!4d&W8E|NiHH{^#4ze)qffy6v^sUi)3^bqfn4LE_L~ zt+!UnR|w9$erznJC3Yk_HYkE6M2Okf311Ktqa-GJw~Dz5CI4wcNg<`*Bq2dD_4|J` zC5d%4Mu6%Q5fg6W78`~-6cOYlQjT&)nVDkDO);kCD1+ZFaQ^9Np;2bwAw`GA9Sw}7 zTa%)r5>TXQc2o#ze{^gZ9kt8EbkF}mTAG+{1XA|4o(|S#rl#h`rdVTBGcl=kBevS@ z^Adw>AV`OWFx<~$sd3;McJAuqNIL=JgSwrIQZmxah5AUBm7`r=W|vMiI606*hJ*sY z*v6}JGHhYm99?Ul+!TFl0HxyqE<%Wd+xqqd2jgz$#KB>zyWRw z#o1`rTAWgc1I#++PVOnvxG5y(zL7yja+hhV8b{LHAS?NI)9z;}@^5C zxqB!$99ESP$%Q}=tjscl=aaz;&zMZlhH=vB#Gxbzk_5|O_mQj|^X(sdl1G}EqyN#V zg>-e1IPf9-X+&tXbh@d8y0qvVfEh_j8KzxHe>*t|fmggNTaSCg9WSFO7ULUnnp~%* zgxm`mH*u3(mY`>XixB|mGMA!I4EQFwU1b!xbx6N4VW8Mhh&wEpKFC$#14yqvA*c9s z6M&@ZBeIJRGy=%!W&-iT0U?ehR3#c_9!w*-D#B@1`^~}&0}lY?#-D!8h5y4M;uAR; z?AHdKb~^AC8uoND9JOC5NW*N}c4^8~RwIRLH}hmFygYw5Ot;`L5wE}QaB;{6rk$!v zbozS;O4m+9#P*^q%aZYi)m4|X%pMtC?-LEXKh#}U+@pZ$g74d2-$f)b&4+y$bGXUk zlp9{YjQS=b9?i=q%8C4k0=~DCRu9SX5NZxeM^|!Vw4NL30|( zf=2dYdKWUO&Fs;0^wFinH~-OTGNLUiL(uNrZRp&s=-hG3Y#nEt@NPrMMp}3yGk!D3 z9=FWZan99^$PG&TssN+BcfXKT^3PSH9J25&Au||)cV%PWhM8z67)H`ndqw&`P zK#)Suud0upAPLI4LquaT$#{t9FhnB%w?-Jm5>$X=WrY{^E|McKuF7$iH9ntV(4{j) zw3R_m2~3mAmXvWR+=r?-yBvO@Gv~bUUP(e8;9g<6FZZ3tFJus zz&BPPcH(uLJsIO%Fr6{rX&lJZ_wXbWR0%_#WQrPLs6dynlR!`0=aa{_+Q7lQX}(K7e&|#NPKVl<`^edT#KeDD#NCa+*dJwF{ITf`!oO_t{qeYf*&6yh9ttQ?|@HZPZ$ zsmnubpDYg<@R&xGdlFAom#YRF=<;)kS-Lz8YKCzOf~5#l5l=M&LMHm5TChMV*d3?> zi=%lryzr6rv95Tas?XLLs5;<`4iz}hpvs@wIto=eqk&b2fT{z|m}Uek3f-)Mj{vF| z&S*YRW!(H~H>^I@Gf08g^*pHWW|J2~w0NB^?`2S36Igr$ugiy6EtIHj96<#4qnrIm zndU8sV-3bF{w&44OjE44+SIMBRIw-nw95eUu zZajpNgCNs1%p?jc2eMecG`O94xi}eZPQKYBijzZ}L~?R{XSpfvcm^*&-#4={KbOeB zsDWJn7G&syDHUD6L8)nVk`Pf0QpgUbl!O)6L_W&aO(-#_si>W4-bN|W�-XX=Wyr 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 tC-C_QyYO@Lz;#qJ#hd literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/closeClick.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/closeClick.ogg new file mode 100644 index 0000000000000000000000000000000000000000..39f03614335dd13dd2f1b02e28f9da43b6e7919f GIT binary patch literal 8917 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 JEnk57e*lneVweB` literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/dryFireClick.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/dryFireClick.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a34d6da1de20d0209279a31a487dc0e22f7ca5ea GIT binary patch literal 5902 zcmai2c|6qJ_y3G_QfVw{XsWTrh%$_2ltR`i+b|d!vTsq0DJq#KLySna!kFZ-Z$*qq zr7V?YQW}#)N?C@7c3biL%y^#X_x=6xdwuWg&i$ObocBHV+;i_ackBZLod6-=?_~K+ z+KNw}zH_A-vJ-OpWTa0pncn~bV)-91Ew6v>LhSjR|0X^s1gu3LWVcBkSo@D8CABZJ*AFVS~h#9JaJds?f*;6mbIs$fU0B~^JWDy}N zF5vS60BE5hy~K@P5=5U&N`ul8tAzk60EmFoU=BMSu*x!j?o8ma!iN7Nd*t}b3)n#& z!d?akREQ;M3(JcM_5l=wDn-}sp#Gy|DjX+Sw4nz3jxkCM=B~N~}|Abus;U8vM2h_VjUvR2N9?u8B#{OKk)x(VF12 zyd!lWW!)Tu&p*O%BlDpI1+Q}&!I0rs%kMYm z;&G^wEWCt3e@IaGW@7Sw>5hD4pCnWnBT_=6d|jPL{?-71{a3^bsU82DzaXAVsX9u7 zS!+N?Z@|fdK=J41P>4;j9aWqVq+5YR0A*(rrbeY;2ms>`;U{`&G`%94ULKt`m6Q>bn^Rtqx2L;wwxxFFzvYbr z16KinC>5(n6)U`o1s)^>+NEydYZuXuR4QR|n+-x~k`o1Wd4 z?RkN)l~(28wFpjH9J~d`iSXZ&?EuDB22|_@{()^n(AZk#={6g*uG7^!RHpEz;;1RM z_Qk>lX>2^>i7eJEy(`CtcAbB&L;y$dT%n($I}nj_LSqzh|R@#iZ?TwN(# z7pKZ{4jpHJRi1i@!jY66C9=NsI*;l#$O7i4u~cNb(zqe>XQU@s$!ZS#qd`O-!mw2w9j_%l<-_*nojHDK%%qAwF; zE30ZNV_`2#;>cKVvN3%aJx6DPt*kA_nLw1Ye|}M5}af#2wMqGIktps|L2&n zA!ovf9D&f}@9`6~6UsYX+aWmuXV8|=NCB%O*%-{NydW9N46kjlR(~g+5Q5V`MpjQ z3W*iwdp*o!n;j@K*z2858o5RphKG|DQu{Dr!%-xX0m+pcMlwhwa$~)m30|)LLk2Fy zpWr#Hqr8J#5;zp6(+OS_f3Ld~FJd@pvXzy3Vx=2B^Fa5PWt5j;4u^%h6~3{(dS>zQ zoaVjHdyEGfC<6q_h%?FST9}7?ILS%?N?f#c{h8pwO&uSM4U{KctL?7eS6yGdscC+D z``pUo`ZuhIURGM@On2Q1&VM1>KRRsKHGrhn+Y*MjcT4wzH|Pu6sKS5=b%TGQz&scL z5T8y?LP4+kfX)w<0K?Pa@#$DKRbM+CO104e7b4{g(|A(s$F|u}(jbcqMrFNpN2#(L za49v7?oOd~iFo&oB@J%4V05F4Z)iq@u6%`pj0P7s3SIL7MvW8VkzK)L8wq0 zR2K-P#d>Q5tx0h9*;LZ;+NZa<(Ir$cd9`ZE8=vY%aPrM19d7svK1Wp@7w+4KVjXiz z(QAUAtJP}qBugG_bRpAGTshx4bQ3a^eg6y$TzLl^mt5EB5}JaZbinb~am1z$oII>% za3|QopS+?A?#r(0@^lJqWWmqbX$>AD&)x4r#D~;OfKVtFBeeED_w7Y696ByIax@)> zpr<$hDFFc5iReirMgsI=Sz_Sn%*?=wE7G!bCXuvs{3L>w;XcENcff^~WM#Rh)MaJh zL(y`euO9hX9+>e2L7!yvmTCG}RcUdSz)9kEKjxs?jSeD_LPN zOceNSsjc-8w6xS#%`k%nEt)eAK(5Nl+C4oFPF7ZeH!T=ee9o`rwSX=4e{HOq>8{rt zW`%EW=e2+l2PA_B59yMMbWbGpi2@%0D#a@bzyje~q^2 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 Pz%Qh52H1^+><0b^@@`G1 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/insertCanister.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/insertCanister.ogg new file mode 100644 index 0000000000000000000000000000000000000000..bff37cdd38c3da42f11a6e09ccbd1dd0f5b4ab99 GIT binary patch literal 5884 zcmcgQdpwj|yKCe!Bn=HsE;Y(zUQtH0jVMNLQ%NtO(M5(dB$uItN-kZDq%kB7Q8P4Z z6d9%6g!O#a2vU7Wyh40H|dAe2Op|6g&TJik%qvHdautqm};S zzclHLpJdD-)}Ix%Yw3oVP~vV@knc2cq6g8+l44^?v9uwQU!P6;yCVvwtl-Z(a%b$m z9Wfye-jRFu6TKtj_5>4MBV$5Ch`%hgT=_pHZI@ckhP&1{`M5Y(Sz6jySpH&RMa8K6 zWMU!B*%t#G0U*$DW-4N4mR+N+apt`9#k6Lm!HCvje8I%|n4Qd~fxvXD4bGr79q!29 z1oZ)cz|hYt#=}C+XI~)rwMLH+Av8n`ZH-nZK`4tV=f-4Feqyy^5XHK~c(;t`G6IAI zh7h`_fFdZ@xiRfj2n`dDqA?XV3M?U1D`uvGicCRoR6#k@=6cW1b<>NdhfD?eX=o2c zuE(xWP=T+8Kj(Kqc@jMZ+8d4Ya?D7g;$&27YqP4keqSB zHfzwIE8JY9mUiT_5=aI>8LrcGtHiG#H+k?6`v)KXd;fVX5de@v4kpa_%LG_s{dvxX zsLmD*J({7mvk|S`StLw-iKLU5UEY_Su*OO69X>rzeE-t~H~@CwZI2ypFu@w91>sHC zM3)jFG-Tr6ynn<5`z#elyTMOvsf9bHRRLwJBc|bKa19&~0S|RYO7nvLcEpAnI3dhTij44|!=h<5K!I_p^MbP> zgK79_qA`%3;ZLz3QsK9TE~trHjENi9q={?pkz?O-P0`o)tXZ$SsdrOE|767W$%q%d zAulFFp7e%n%?o)ZiP+k=b!&gzzxHX-la)bo)*#e6?Cx0tca3S|WMcphBww)27;uO7 z$Rcg#E@tJ0?$0aRUvTmG{OKjoFi>l-C7+)*o5|+9QdUu!!r0~I8Kt7~^00zZ*1zvc zCB~NkPzS)MA==O_+OQ#7A=R{oi8BBZ0OyT{E-~f}TTPBMd`?f|#r&Xkc7KRy zs)$@%v?5Vr;fzwpk|2FAI-23 z_%K-({axq@3mHEk^Y#&5kcFt1!MIc_^=ETzJ~dM5g}gpHL@ewJTQBZ??7^}S^aZgj zWPL$xh>X7+5vS(`EfGl{2DR8o^4X9Sp7{Wg6@_1}ZQ!R`ihKEt7OFHqv9(g3&z{X? z^B}1>l(AOaTfn$vlheguiDlUgj^c0*B@|_ti=_UH42m?L&9Uh3U{t^}ygAecMk=>* zavS54f>eeWlCoUUP_&X>o7b1HRQz!pdnv8&DQB03yeDk7nXHK2UjOiEDo#Aa4}0q% zeVF);N_fH^6ZgFgXme@gr*_nSE={y_?R}iuD#4y% z+Nju0#ydpz+?#W|zv%4M+iJ#)7Dy^JgYvn6ZD}VD@)6fV0kb7~C5g-Eaw4x>qIM?S z%c>uel8zK}mH`l0hXKU8G%K%NjTwOG36h-}sX{^;9l@5Q@n~dZQ>I5_ekzw@D&(OI zEJ*^bc7};sH3-sl7-pnu9Xdtc|Fk~~HxBGGe3MCmAFiLg44QBINgGVkZ}TB!)! zK}W>7DC3f04wpg}rDoF+M2eyuXlJXDi?KMmndrU`$`T8@P(%nFU^gQ53E)VMC{%sl z7Y(CG;47v77zLRJcgSHzLltLGO@*mh^x8)K4U50K(foFtMh6@-R3Pd1?j7#4wmKFr;rvCGAdRS#| z9y7dhxCcFfNFbtC#`8WYndC#ykoYJN{sECNX|9A$1|=s+^BJ5<=$2$s&Gg{}xT8jo zIlH9VACeO2FyU#0fGm-O0THD=L1M|IVZa^-px42h!$| zt%FGb2WuDM9)XF|7xH00~k;z;udg3B?tW6Rl-rslwPYevTIc-Py|ux{DWmn9s)1)s1;5 zoo<|lLQ*hbl@tMNU`^6fgABR+WQfUM-fpZ>C~QYfL>KxthLeT*YcmUFzKNr?-TH|U zwZHJ_Cq#W&;Vrej&spmot{XyzRzikWUd3t5+N=%+VIqedX*>pps+NOt zY~;^Vp(+bf+Z}p+6)BV-bQ#XEVZiLG$AGtWuBY16T~q!R0;^D7`#d3m-Aa{bqL~z^ z!3>HFUQ(Q-1ZF!`&6o)h#I$S$0!JI+!?cJsj#VJiaCY)yC@dBVp{UsZn-I3JicHt? z|NjB93hnZ*gDGgd{u`$5N4;#GFSlL8Ep?{Cm}xTr&~PFPgP<))@M3`!=0HoGN=4~! zV7$`RVFICJrw1b*N`vNthWl%<`wMEOBElR6VokdTqHsV&s4(zf>;8iNzTEs9g(!g= z28MvBvzxzz^yYGu^^IwNfET-BJUfeyMR?ih#r*SGGz1Z#bPa80yT|W_uoS`U)J(++ z1w5LWaa_BT8Yw*+RX5JfvKt}uyihX|uZv0+rs3&yBsZJpE{f%$WKynTaV|=CC*|Vk z8ifKMx`s&LgJKI~vuUOz0T;gJ@Zeq{k4`7WqBJu^2qRa-!_nOlp(m_)0z8duoDRh$ z3Ar%la(!s(kOP!l0;xcmxhMj_%jrywwQIUqg*8}zV+`Q+t8@Uoi8%6N`&eZj3$YZJ zGp4f;8BroIzlZbY9v{auGpS@(XD!Mgk1&^xElCZsU!3dQ?6tA>dJk1as>e)vUpW_E z3$RK+IZYW5h~#_>P*uY&Qd2U*C~HN4Y5rQ^-ha{z2h2p6>wZVqbq$W);J|r zJ9xY=T*VA-!bab4465;6RIQ^NWT(@v~3Mf9a6crL5pooawVb*?roBg)@cI!2GNXpKCV5ymwV>Z+h16 zReR^ghwB&49+_&&amzgZC~%_gMC_-Txil~LLwLV@Lg;5SuDPjXvk_{y^?9^I|7v^L zi36fct!1Q$HjU(ofhc=>%30sx?67N5W1o+mE;|1MXl`0wBDDzCCXydv_S%ULtbP>c z;DB4@8JS^T$+}aq;iyZlaqfZn932dZ(wg~DRdRQ`Pr(se-M7cCW_-*Z$EB%fy(mj@ z_~A6Ehf_-`*d%$R^yTzKUMEPNSuGIHq>3?@TZ;1i=chWT^S|M5pxx78&O^}5EOA#n7!@N2?@6_JF5gEars z<>TAz@hjXMkH+dpwf%8iX(u>%O!3it;UVVg?E9o|iC-QR-XGFaT4c7@X}22>bH+>~(9+^F?1;Dp=o=^OGJu_+sbt^t@C=>X_4tRidM)c?cVC3QX7VaJ@p)irbyLrk z+g~nT4VE>2$=Y4C_0Ths^Ygtrb~_3@F$aQtQO@GgQ$V)ohhHuI{fko`7N4n^ODp@7 zY;tnmfP)@l3II32<(m7#sk`zg*D?ov_bi&Ysyon;uRKI0y}`tP@%&^pIlkL{7b{`G zh8pjx%Ni;zjdl~21H9A3ys5os?B7gb{i9qv)k^z)R=<*;=^WpZ-|H({R+KV#%C|=4 zx%(gRPY@F=$L{DeH8sEaJy_vnul42bx|VT=&%yojHam@9Ki+#qFi?(83fVvx&V4Y7ssFxlg~{4DlV(Sy?8}F~ zN)DF9$1gqwzV8wvfSi5PJ|*Z>i=lqcU>kkXZWTYRuXV*{t@BFu*X9^8_Zc}K5r4dv zq|{*a@&NP9n!~PlY{yq`im~1iNq%#Ox-_9Mx5oF>>%M;ZxYlFpJHL8NTas!0RD#+> zc4g4*P~PoP?)}W}nq^ww{lzftR9if*SpwEPq|8Wmo0ES1#i!6F^Te+Pw}-EUzqa1$ z?96{@@aLPoCmxmT8;BhgA3Z+2sa%>O{^2*iDXey$W&~r$h39%24FeahS6_KjUoIKC zRc|Z)EhkNQ?r0`6G_INH#-7}72x{WfGyvE#d)G>7RnX|Qs4S|{z~rFri^TZrm0!Ml zjQ!!@FZR83hq%3JS2W(CnIvA=QJX)fMA_uX{jcM;F{UfP@<>b5?aCD%mF?1ymqRLy zpgC!+kYSN2ISFtX9osdu`!ay@)h?C_ea2`lu9J;AFh*OLR~uMb=|y?W~@W0m}{ zwG&zGh}wSbxu=&7EE-<*DLU)Vq<4FYJQldh7xWoRGRGrBGBXxGPZ@o3ZXgbK^rmXZ zEY+SL9O{>0ho!o}u+8uU>&{q|O{Zw+&DiU%x$oke4At|Qv&~m$<-4Xwq-rz1Y+H0_ zYopG&@88ZE;*ktYIPMZ(hqT8-&TB}RwR&hPA3TW zx40Awj2-d0i@jL4OY6UKqKK-6a>6>wiAUA@{mQfVr`rDi5Xj8jfRugcDVCrd>#pR`nE(( z)6dQMpwpc<7DT7CT@wMGTjHsiW7YAu-UnVJVUzAZlbhZ>DZ*6kY>HiS>)Xx7?iHKf zJuzBq^l&N(p##ka%C9|o0v)?;Gj;^@_s@MGe`YVa|Lp6)h_xT=EN#!mk=k#boBT9$gfX}NLrPCh(&im^Z8taGw7oSr z1CU61dTDai*F8<6{$nZu(E*9&98jzILp0kipWXFrR&k0^a?J{M&~F!f+Yhe0F|aoL zdyDIvO@$juG(T)9?Q!yddU8XV`vT{67T*a@9_rEGRos(ysvFeNJr@n_*oithdyiY& zGhFWswcj3J)9hgHBB{Ltd>lKf$A6uSuPbFJZ5x@IqwP2dOyW)Gn0yD;O;u3c->^&1 Z+u=lxwnWMH-k(U|9M8M^HT;3me*g_5(Qp6& literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/insertGrenade.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/insertGrenade.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0b7a888a0ebfc82b697df2486e8e5a6de78b3706 GIT binary patch literal 23147 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/insertLarge.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/insertLarge.ogg new file mode 100644 index 0000000000000000000000000000000000000000..35e2a855bb611e460544abaade45aef3a84d4eb9 GIT binary patch literal 9563 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 VT)vqiOFvP_6sN%Q_#1`u{{pj{3mO0b literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/insertRocket.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/insertRocket.ogg new file mode 100644 index 0000000000000000000000000000000000000000..eb24d346ac53b8e596ad8e0400136411c4783a79 GIT binary patch literal 14065 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 K4L2T};(q}!kR}rV literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/leverCock.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/leverCock.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1591a49036dc8e0a32d6f0a812b1c5120430c829 GIT binary patch literal 13265 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 A$N&HU literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/magRemove.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/magRemove.ogg new file mode 100644 index 0000000000000000000000000000000000000000..995ada889f2514ad014650bac8ec2c0c8a0a8a6d GIT binary patch literal 6234 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/magSmallInsert.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/magSmallInsert.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7c9b92a319add04536d156904942aa04f52b3bb4 GIT binary patch literal 7792 zcmaiYc|6qL_y21o+0t0DPNmQoON@PFFJbJ%SR2X`60#LaycuPQG}#+VWnaTs8&rg> zMPo^*Fk@e`718%K`g}g$&+m`l<9i=>?(5up?s?vG&pr2b&TCBF+$;bF;9td&Gl40XPM_zZfQ}Jo1WeAzzFW*c@pNvEPPD!FKOYjY0A1jLb`TFfR-5@W zUQFGF5D8ZYsb~~9=0P8W>ioOWMY)4qZRQjBDOnZv$QhNNFuX3x1`3YN3geII)MrGN zqQJ?biuz`eOsH8H{;iaFY($%EJujY7QT$=Vv~1_6NH(45j7S5;pMrQd?I7O2Ylv#= zCq^=9ck<&eX@eRtq3U_?-P(nMcnK8qDZH?P%W)tP0CJv-$37Qlg$h=&0-XQ=)iUSl z@P)m940~S*V`DyQ3myvuU_hUDucA z$bp;-05IpM#OB$==DEkxq7#_$_e&XoZ~$Ngmr=N2p{AE~vELFqT|lB<603@wCo`Prh{_;)d=T|m2C_Ew~@p7(HzfN%21QUsT^C540I*x1W~^xnD8{V z0YxMF_r0eQk$oWboM_9Q0nVcl+j4AK|5EVE;13xR^fBMQxhq7@c91$-7Mz$7UjtHy z%RCY?3@brOzabd&)Q~>rPlq~a=HJc1h}`sUVN*lO(+}@J%CvoMf(ZT3l!JK(Mh5q* z1-&1C^$UV|faWfIiPK3?Zccl9R+dFDlBhHPan?OINtIbF*%yO`|1~%Rpv8PTiU*_r z@5U+m^nHH6E<{021X`k~@cBczZmH^?gGP0+w3_2QJF*RWL9(n3W8tMZWaGJvqGd#q ztn56?YA|R-UJ{1&z<$D@?RA(0ToTRc$WGCS0-_(QMB!g^3e%4U08D?tK60M;-?|3t z=M*#N0;}|(oZ_H`E;i70I3>`wF4TS`3b!3P4%VN6S8Y;UZU3M8ckAE<7Y3dE??w>q z{QfXDnSH6ID;TesU(ORXt{Sv09s7+8yWju zJYhj?7DJ;s6?8;wk zEMNG)D%*jBivmD^sGgsw9!69b0}=<;4QHoY7uJdt)%BC=9#HtZ$B*3Vph2wz{=PK+ zbpQas{{AIT_eYp9mly>jjkS=bV00-K*#D~-4=NaQgN9|HU)a|$e4lh-q5+F^TC8}R z=qyJ22x7KRHX>)63l&N1;6dpmwx<~2)9Ck#5ikeu6|xiA2J`DPpBL5bLrI*-Ye(r7 zz4&B~uFU6`M~l^3dQK6+?!0)OpkdsJJRaxRN>B(m0{+;ZeMmeG(c%Gsf1nsvL{ySf zAA**M=|WOrm{?Q+(V`C}o|)8zI-B`~3z0{32D!wfK7$$JlK}&9&_7;7z@Lt|f{QKy zg#%x2!g`-581sl3bL*P&;3(X>lw^fo1x0g9tTB%<#S&}FYfMQNGnO|t=D}KU>tc^% zEmDlJ$*%nhUZa-Sab7I8&eeVk^pn6zdE-%DEM>?TTN4O&$CJIrQ~v{n9k#^UD`6?M zisk`0bF8Z^hzE{C(EC7d7##s-0;gs*& z4u?8gVjZnrN0qH?x4?T?892#*2}=pIxE19X=;~M>=xFPWqmgUlZ|rs<7n~$+bt;@S_t3KEI_S7bLE_7AyqFuL>U4y*FtgqqVJ&j(lR~7R2u7a`P zb@(AbE1bnO=fFLP01%nzAB|vs>;wisL=+Sg%O9DDf{Qtupb=sqMdD`(HL_Glzax<5vamYamJlguNf zp!D+m6ER0l=MgY*VtM?Mv|N`D=5xZimYA5LTpnj}v33IHp;(@veXMjHzdr{Eg^8&I z8F7dXUgtheXEP8ATpW={vO-@k^D{w%P(9iPAe5m2;#!}B_eRtTqCG$;PXk0d2qj(nMU}ZM%F>BFuWiJsr=iBm^I-8(vAoYtr8VH$L(`_iY^EQ5TOyxT( z&p0H_3{BsMp+P0MxL4WGNsvKbyr`Yuxv#R_!NRkqmj8~4^w4Gh<)(I6`~(S-4d7#a*u zuv;KTnxQ@Ol9KG=Dw7BpPb4oG>%W2#`buPe+jk)9ekmh>fdK3Y&bC=@8O7JT6U2hE z#EbJw=4(Z4v*5AC#l^K=!C46K*;rm~e=yQmUb2woaWEpa&#jn#S!wazz!8Aq+xLYFT%X}7r&rdM0O+bH|H{U-R{ReJ*g z3SZx+aGJ!nGqBNLg)X3q?ZPflOs6m&jHd{E5(W%OOfUdoFcLp>p!Rd{oqwjZX2{OD z3~b`)lxGqYCMC8LF*;QMU{683oi{*i4B}Ni3 z=wyEk+MuXri0-X)>s^ClJfzzNJ$r>gi#|kdf&L@iZs*^x4*Gmt&CnNrunW7>ug&}f zQ&K~P;W>(H>^%EWKZT7vD~ALFpgR0O_#kNhkSne8%y3=jfBt;{%=jdy9&phMXe5=M zsyz7H^*2GbgI#UrXLK$-BGb9_M6?Gy^GNVQX8Lm+q@=0`T;|gOf4e$h4tkKQe)w0` z`iwrAp1(qX@WUKns8K3SxQS8VwV}HbJx`4I>?ehk*GEyMlo(GRZoujz-jS|d5}2vS zvYyUWa4|u;op+!4dg9Nc$SelK?wk~qkEt+_oKe9=5Pt0 z$!7>}V~n~C6uzw2e^noT?$G5A@4#TstOJd(foVZlR8+p*hfl2Hg@`#8mh-|OE&y-< zUm?KPdf?2NjMmN%BVT7%e*!FEU<3;c_z3_i7sI2Ysj_kkN-C;q8d^G_Py8+6;o%2_ z7TAV||NYX?Qal&}=wBN2iBHRa8tICQ$tuau!Oz0a%FD|rD9R(w%FD`1z~SPO@``dR z^Kc0`LQX**jyQ`Dla-fMgiDAcl_cQ^1*9UlD9BWh-}^jMD(nn=fG}%|+rR#^uADB&Q5j{sk@6$^!3AgNIG369xmz&#KriE^@y-3v+qZh>#@!xD8v8s7)nq+< zWQ+3XW#}CUf$zH;LDPq~DXpN+CYYN3b3XOg>bIXeZJTNQdz%XnhTrpxyg5l*V*#o& z2uWwGR)Z{>_vTk!(^qbU`7Ktwe=gCy{&8Wo#o*BD_}g@)d(-@%MeaO&9A=Mu^f*Li zs6^`1dr5Y;Emvl1Ta^b)ytd28?L2 zx_S*FmCrWVAu_@l5p_3C)`yeat9lyR+&nbrQPg6$x^s+0n&Guwt7qH23lOrdWu`}Z zDa{x#c_o3k5*pVToSD73X>3tc9_QR7z{YkW%ep4Xz%dvTz!^m-6B?fHpZBr=0F{D^EGxAxc2;{tT7U zR|+XCGKE)cYFv9JU#Cgtn-ZncGO5IVPnu*1+3skM)~I-Zz)ndlCxax^Dp)blL)pZ^ zbb?K!XH7=Q$fu$q^{3oDzPr8^=W0@5mz2pD3lG2UAvZQIG84m#1C9HtN*XkqdRF*C zqh?)4+rG(+UfypH%ZqZe7CZXm#9~L^y;|VY#S!Y2=IOAC5RpL+b_ED_z*|1%T+u~T zy=7fog{kl4ZQPE3)1G0H!!j@RavAfJE0tLQS;uB))nwnxu}$evB;&Io-#R5zDAEdn zdK7r;SL0NwZSp+t?=pk7N{EUP*Nl+v-REaF zeZJ_K23XG!_a@HeGT$8&@6qbC>T@|6{V6*9<-D)4sfvknP1WGdwraP^3eP*wD9ER8 z?MgVNwQ878uAb89S?5A(t6V5GP$}-Fl%>ube&p7%zcu9fZE3%+U#>2)WHxkdOy$=0 zcG90|4I6LSr^eD}t++XJ=8yfE2-{&XxiV;)OPzKuI1$>A?Th;?R55t=OuMYrhRyA{ zFRC`*=boub6o{l=lJU@@Y(&-WbO_9|39<if`y%-gX#$N%)4Q}KS6;2kD2rq`eo=UhIRwZG$uOwt5MCYY}8NlU=7 zx5Pk(VhMpOMK3fpeUwu-42Grjuqs&omfhqvPOL`!&z20o+2vEP{0R;wGJ3>n?aKa< zd3G1TGRl2v1*f?@d=C6%+LtR|nL3to@mbW$Q^g6x7X_@Dx1aB|wJ>BbTb_${i#*KC zP|>_NLmZs)nBV+ee^2F<$Z#i8>3iFkLzfuPl46phE)_C08F!X~l1@^nC+_^Yd%I!I zx1G820rc+JcHxum-3JTDlpmzQ;r_)6C3l*-lstnKtYasypO*aa{JNfBK%k-=H;;A8 z!$S@tXXZ)!7t`k6CO~&cE}OH+`@w&@*HPXRu9AakmB+L=z6tbg3X35`NT&e^TSGUg2D+uup za*4byJM*ehutIqdKd*XX0UI7Qz0}K)@}Rmln#OP=U0c9GbBWrz68c9iR0C_0Jy)$a z(uY)S$UF*Mb1uLW&@P)Iskx{Bd|NXv**;61EvX|#gx2w4f`#kShp0sPz#G%iq2yb9 znl28(O1WhC4On7yKL97+9{RYnVY3| zw@1S!;`z7|z>Pl!u`bvhwRn=NFF*eFQ-*-#w=s0)^)6`V<;*_zHZ_}bt0Npavd|Fr zG|S#tL>Slhn(DEc&^u<_t=rg>eul>zl|#MlnMg{7J>e%>K1+sQfW9rC`jY3fc)903Zj%F zf$ovBXjFWg?SP1XH-GH+_hwi|(E0P7jyx zz;y@xGKxo0swJ8PGuL92iyRs!28&4#@YhEJ+geJg?uSTfHkahygyr7VdM(Rr>h1A4 zxW7(HRTJAq<*OZ^w!uRNlKt-`c z@9%54YwCVS1J*3L$XYepYTc$~>y+^0z;5cfmVsq1`!+I!QYy zNoUk-!_Ode_PNj)=U2vW)Q>F}hl5(na?`u7_oR(}R&Q}zsy6&Z9V@%wx^YY+n~|hq z!}KE6C^IC>g22SeEUuEWvAZJlvVk` zC|*+%zNiEsbE+6%8uzwoS}&=)%M)C2%|+<*jXgg?5+rYCrM*1sCB{P17@NDMiNQ>vo=sPh7@KKRyzQuYfUE%wzDbkqJ`#8_{xIX-hYjWBAM7@M zAAH{N3rr1!+*cP>c*aBXlQ`U_Wh=}px^E3nm+b@!x8j0*$^I^>ZF9bu!e3ICr!Vhy zeJ^WS+!PPK?8xy){h@SvwHfvk23SAzWV4$#Z+xRl;D%OmgZYt`F~6E_P z(u7sr?-ez>-~6`4Hhby!qtlqeNG->;$HAus&BSh3C@;}`_U#7iyzx`CYR7Eb0=?ya zi-OUyU+OibG7D8Tgi06>cEky=(zNy!ia~4D=x1bmETuM&Q+D&xXq%?-C;cat_x)5S zeTGo{(gYdteG7hy*r6V?kurw0BiS)VZOnx!BNIUbz$U zBEKnfgDfHKaAMt0z_zMYzvoh6p1zfuriL)1rTmKf0>+`gvF>x7_s=XZ!Su$sk@!;V zQ>me(Du0GH^oWkmdyRHW2)CJ{%nIMBM|EG4d}kwCH|ytvt{=5&ATB7lyaPx^z_AA< ziyeDfOh#JCwUfUSQc}0DE{`~gHxco-Oyzw&QVH6^{Be*)OpyZY;+>yb_HB%o@rk{k zdp4H#=7iq=_*@*)WF8am8;Zp^+~uXj+goRa54`3pp5O;%Y(gS`9~!P85E;45ybPXb zfdM0$-^6F&qAAPME9CYaf2OSZ{c<&*j9^U+}y{QtR~rS3>Z=P@ZZ?)xkNQ?Kla$`73D{Mi)O_ss8^jdVlP zd7g!c7V1Lxc`eI_YYmKwO@HKMpw=EdDgI%uz=HOX-W7^{>10!B920Nw&~eUfr4Knd zu8R$>OuO)8+hXeC%c})QmRF)T^FNtVTBl;J_;jDBu#zchuCK<2m@E89m(_$z@u|j` z1*1Ki{gW9v86rO;yBT`CLbavIYuAxJ-60MXp=ZlFiPmplH66~P87RN;uH*hBFWc$- z(Z%yZHalFzIicaU)c^wF#hO0R>~0@d{*8C(lW6>%23lj^l?2WG-Kq8d{%za!`X0`A zHkW_fk!Mf8Pa0WgP`fBt6YYd0wp`gx__)0E%`EFId(FF<*A5zyp_*2NRLABWGOS{I zcw5mem;g61QCDoSJYMpyY~}ZrFc+6x&xo~Vc(Avf1nqKWiYu>wCR^fG(?*%~H!(+< z*+#EwNBm$xG@m@b=}l#Cogd}pwsV6PKUkg8jT)NrQ_ihyCy)^L<4Y(j($0A{!d!8) zKMhL;6|Y+8969(mgpmXFzyF3D0?Boo)OyHshk}Oetm8tm8%OixKJ>&2#f)CP$XIxH z==rE_N~ZVF$SdD!>i+be^SeEJWm^EqYm?7S6(`c)}#<&mSwNX%i`y&k<6_JdJ#9%ra?b92t;v@)}@m;zv?{x-Kc pSYIzZO}oZKd!y~Q+`=6-Km3(l{!vgUoA7I=lGlu9fg21`{{vMj8p8kp literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/magSmallRemove.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/magSmallRemove.ogg new file mode 100644 index 0000000000000000000000000000000000000000..2411f23eb5dfefb147cda164c26fa9f125da5f4c GIT binary patch literal 7771 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 XLA{#gzh0^`$$}O^ny~8;=z;$M<~BY# literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/openLatch.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/openLatch.ogg new file mode 100644 index 0000000000000000000000000000000000000000..57ce982d294b7f071951e4a858053ffe57fb66e9 GIT binary patch literal 8002 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/pistolCock.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/pistolCock.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0898895cbdb5e5424c74fb8e08a6aa5c77e6648c GIT binary patch literal 10081 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/revolverClose.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/revolverClose.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1e682c858d7edcea0309c04e59078fd72df03f7f GIT binary patch literal 6508 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/revolverSpin.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/revolverSpin.ogg new file mode 100644 index 0000000000000000000000000000000000000000..25cd591a6afd8975812a4e6e0e9122c6a77b92c8 GIT binary patch literal 12144 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/rifleCock.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/rifleCock.ogg new file mode 100644 index 0000000000000000000000000000000000000000..474c918269b19e09328ccf5b57bf393eb310c945 GIT binary patch literal 8963 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload1.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..7ab6c8105ccc2a04c88f70fbf7e5c67a2a4654bd GIT binary patch literal 11862 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 k3CEwH%@3;9g^`S98Z(M z5(PsfH%NjZfiB+AQvs>Q+tVK~gpi#5G?N&g*8EpEt$AAV;q`0|O&IY%!aUiZhJ?X# zEARVWBF2H99Dd#|7H7?K=yFJiiA#%#i%E0v&*#PdD+-);>n3=cK|CIYI0w2bnLz@) zT{*NMK>==oVH{?szhExV)150@QvInd|D&(Z&4JSj@oJ$A zu?cEaoUy!0R%tPON?_`#JSg)%mC>mG^Pws41(vE&U5{N5lcSDVlsjOH)s(lQ0c9&3 zu~*cab7S7hgUUS8I(K6zZI{lr}3V}rDqkw{dH$i z;;gz30Ngd9)_lM~c~;L20H|KdC6rhtlz1g9KTV;EjeAQ9L<7J%(2Ud_Gezxmjp2Ld zs78PEe~Gr4?ks23K@4d|y*xUvmXdWe7UA=r%jzb*1A^N^65{rWgRVoew&In z=P(``B+b|yzF(7M89zTz}e&W#@qVK3e@7C zY3>MBeKs}om!7cl-I8C%x>l^JB+6lFX4#2yzl3&w*W zXRAzi>;H&j^tWvcLT9<7aZ#B6674C^hDZkhx6`-< z(zpcD7UWWRbXC2+2m-1Ur*CA!Jb%i9TpEvV8n1VnXIN%gPVQ<>pz6gRTHMSpD+|>n_akSdf5h?ye9xnF3I=%Y^rs_s&!Il$N<1|sY_oKue?({ z^_ZuD$B<0em`rMz>`(T8^i&;{Qr%Gm<3Cyf4gJ!f1>-;R!oy^WBV>vup!fJ6hrdVu z(-t_QQ(KDvv;~d`H1vPR*8jM(|G$C%*Aburx4Q4(?ZnBzTE_)Er3b|1E=yg?r5GlY z%OoF;Syp2pNpb(M^F544^WRuV4aZcdoByZ)26vn)?wXg0{JSV~S`Dv#a>bWvrqTs65L6E=moG# z0Fbg^#Rzh;Ox^?laI((j2Oa(YEc~ZII^ZcOAjS_G1Q~{tbtbvgU>%T2@l`Q;nFRC* zpfdky@7}4Ixjcvl9X}~x0ss`6wZewTn2q4C5TwyG2T{5E{S@{X#OHb7N!;6WfI2Bao#J9$$Om$w1VniS*ovYtgXV~o z`M9}vF4z`Gmb@z}*0vQvLu23;1@f0Ch-a_8b5F(VA9plHqzpk{Js$KU?6p@e*aEn1 z&}f=~?SPs=_8bXd=PK4(>!?9R(4*U1W)& z%m@avKCzpe#WbwlJh61@H+eJC^(r`uO-%)^#@;g(LXxIV=5q!aY0?MB;y_c zOgP8Fb#E;{J>4dus*FKGK%iv8h2|re^(|@Oh!rgVoN42$MrCj2Bak`y zn5MBY%`{1z;zvwsZHAQ(wekUnt&sS*4FGt=kO3NxFI95qGbEEUvewZ7ASN71CJEvo zi33S4k86@RIOE_s=9OC#xF|r&RGjH&?Dy4#X>bkro-%bxWH0oeq(@)Pubn5)PAi`%d{#V5yd*zHZRi`RR2T>PzLZb(!(oA&) zO6c^?g9WE426ZZ4uu$-H63)K@n-?entLbs3-&Gd?XO2w{B)-gQd@SaS&Tq~$-T31% z+yEfG&Qy=T%3PJJgt>THT{|a+0s2fBN^LV(;&NGlqACs~OU&;XC8%;t4fM|Q1{nzO z-RjB)mv(VBG#MNK=<(Em=;-GFKz5E?68QT&@B>Qoko27PHSo>R@OY~6N&SB4-SafG zW+bXEkJUwhdscSE_I9dSBqA&G)nuIKIH}ZxFTadF$CiKp6FnsK<0Yf70)jytV7nj- z1b%^Q&JLiZ9T{+T^YXj@Ff=kc_G!{{(D{LZ8Hfb=7q6;@h7^>Uh4mWS^&9LQoLt;I zpo{) zW()!dYg7F519S*%OXB9?@Y?45>z}LZsqnIDR>JghR}%8X+a=`9mb_yHu&Z-n`d*D& z$6R$2dY4;RGD;J1-1>m-??{2;VSVib6fmiNkkU zST9}qsfQ?LYN2C64C`)=kgrFRjotsK*ES)_6f$O9^AUNHH~a&YNJMrX4&<$|Ep-K{ z5&DCf-#{N`H7J+Qh5{RUS2=H-&PR_tIT@@g<4-oq{vc^3|o}o?y0Q$l;~6R z*U6UEMn8bpTA@@8xQ9-&x}SKro4ower|z+_6xek_aBh&eals3CD!zYs(R2Cr^%q4S zv3rZ240ke&yK|ug%XUD~MCU;XxA#Xs2Fhxj@ssqmex|&rHRS$#KZX6ZX|ftw6-8-( zk&_?6JEiOcHOdf{iPee*uK6VhVXQ{?8ZA+mE1a$a&SPRO@L-p#!iQ69f4#%X-+>lu zDTcUSxH(=UgU;r(UZyW%acb*AiNa6Twp$w7gX+<1uRI?dXsQ@GAg^gF7DF5bcOf>E zbf_7(ujj`y$$9x=-bydbWnVMr;R&M&dd8Nfjp}iq!Z$1Hd-}R9>F)IF#ma5G&VL(= z06oU{FWfc+W8ov46i=)rr1uR$LmPr&e0#t*H4`#i+I`|7p~TjMSA^}eBja}lUK}nQ zeUG?$8>tDMPTkqsujwCxTICLNx^TlridOsf6x#5FW9LGTgI>7hcUHTQ!9A=$j0h98 zgAuFkL{UlwM@^doJNICSqUKfveF&0ktaI}nWwneYGD{vNikdtk*!N@n3~N?LR^B5N zpF4jx3D4t8MmTi}Z5+N}&E8a)wcY#1_QL%6rNT7xEXa;wJSs~xYz*P;NA7jYVj#%C zHVQk@FV75+eK)!>(kFMz*0`Y{?`Tg(F( zPK4)~VsCGX>GPwZ9c&0xJAzoc`lhJ9YiB0_y+@1~fTt$AZvXIko&8FmM1*P6F|0VxRmi(~n0y57u!CL2uf(YM1*oQJiip-g42HmM&f z;N9m{mm$_!c6@7lZ7)}UZlEm>7wWrUJgR5rKWeKvc5|FmyD3Ai*jsW&>lp_#2hF>y z%d8aM9la)k6c1>CLdxr=T%60kIUn{orKS~E?$9=&Wz_~ns4lYxb z6P4MP)=5U+!f%1*W31x%mc14ida;pM`C$w414$($DSTw$f6%5uFM zRQO6nWxD*cTeHe|ht{{{8$CHkCw`Zvnr0R4iH%D~Cq$;Py}%B!lgJu)!5q?U_Za$N zFJf_fr$b9jdGBlTAWi7@!Ons$xY$pKF(W3T%$%#|1C)a=EJR&ruAf zxsJNf+!mWvGoO)Qc$_3%bg{VRH~C~OpDL9aUAt2tQKe%M&R=>wpy%0s>!QL242H=o zA}V2nDY|=a+$)h*8k3Eh$r_7)^NygSAMfe&DgDMJ`-v)btafha@d&QIK;OQZQDjPN zxJ6_1s8_x;xmia|7bCyU_%czWaW0yn;3)p011bvIu>til!VUHi`%b70zpKiB z5#qrf-R!wth47}AXb3YhEEa)C!;DI{FgLwf(=3RH$!>U-<&6bNVx@hXauxH~-g~9> z9YqB@W4jW|u*z2ieA0i(ceE2SEg*3 zWMDm~TCn_5QRfxsiWu!)on{ ztZx%KQ$;2 z6BVp_e);1#Ilc!w9^@M1YhR;)nyQ@Vnnbb*^$G50k(}=*Pe|PL*tc9fK3vy4a^$-; z{^}%nZn?vw$1=m-oY#KZry3u6ZR8&MW_jZbafHxl1bOlR^DJ$8c`qm3cx$?-sP9g)QJ))Zb$s&5@2V2 zEA1Q4jY^z<@J`b~P3L_gvI~)%<7-3IJ52hkkzz)R{_?(7qXF{(y!p*Eosw3D!h53{ zB5~erUfqvLh%2T?B~=6eIbmV{O2_sMG#l>^7!AsOPp7>c>YD-8H0n z{QFV+ZH424q7z}dW<249H!m;Gp1IaU8ovkstkgdC-f)huH{^DTyTKJt>czCZoC#F+^MRd*5B>rtFzANGm0A2V)2is0M*d!K$E z4~L)~HkFZwa~&}PR1IQEviVrec7TMWnC?cC&9LRFMScQ z=-NXE#`iC)IJfZnAM+mOl{Ebh>v(9hhm=YwwUBS`+fpx4OL|XZ#n#|?a=%5pyR1=G zdTU!bL>c{)pr$O8Sy{nyn9*(IqqIC8SSCT60}SZZpI=SPFHl!h#%k7jtkL!o9u|FQ z@0bxS^e1=@dt~iQcA`H^_bIslM2^bX*b)41je5ud?S18l*s{NpFLogTrS6Q#vfno! zW#y*9Q?9IsOt7zCGR(Dbdsq_&3za<-Ln8SU#~>3wTpc#LOL0A$+;J5i7I}T7?OIc! zhzSkt3qC`8S*t02Xmt0mH?QlLJFI<^({L5+rcI~fCT~cM$hMr_`r=oqQip0UY1ZMw z!%pIpZIt+}C_{VJI@~}+Z_Lz(n7d4^^2;xs@)d>d6?xgOhT%$n`?*2*jZ*|^t;g1f zr=hKvzs72QZk&W3v~b{1&w2!FdKZ2C*m3njtHk%{@<*tHA5MdZKRC9JbOW=o7}jpW z@~5s72(%+&s3+#e<>0okM%eH&dMFDP9IVhWu#@{akf{Ht|L0J82)Yr!ohT&Z_j9qS zeqm#0e0+8LU=5n%-;F>U0P9pJ$u2%iIs?uLP%G@&5TuenS6E2c{yZ1+n-dE}QEG?kV z&GdCKsxKggm|UNlY`haQozfL3w@CTRkGX|tzDh9u{(H%SkcbGqUY#c{4%c>W7A$6> zp3#$K_4;OiULi7iQMnaw@7$=M+$CK%ys6p_*Uk0{S`I6zpGC(`xK7CD8cDg!`Z({mL}k=^dEQw zKL@&;?l$!O6`;uceH!y%??c@s_JTKrFxSZxp%Xt9;@$g;$FrM}JLdbrG66$jmE|8P zVmbowLz?1c4!Z_D7mSwjE%SH3R6z_Iy(VfWru?Z>JbH?%m2AU^izlgBDh_i|2a!Sj z8SUCC-VG)aX4fNp(0$L1-`Zv)S@#i-eN}i z5^OVaq*I|=9Fuoaht9`z!YCq9;(j*8jYe2~(dJUMH@z)#+%-ApKkEV4Wxs6)r(M>+ zPa8p8WnMRM+{l6NHrmY(Iayym-I1U-qwE`;nu*ahKx&Idm`uZmT%qos z-c~Dm@B2xop?;gALqPCO5WdScNJ*gs7h@~!AJBs{f3t{4EAQ9K9YCLbV>oxk;OrB_ z**AvMzYTfbZieux>Jx9uNy^I0N=xZ!5QT5cnBGyB)zmYPlvdT$A#xFEz)SR;@u>Rw z?=(;RnUtE8q@SgqNcbzX5s!=Kt_PgpEBTt>(0-XvJkk+YnMJi~H1pJv_=e>K#go?A zxs#dwg8&21IE=JRW(Fh!BGoO*<{P)SD#Ro3o?AGlgP_el_xi4>Zvr_z3&SDxA?%J_ zkx*p?qM3mf);zZ;t75o`25lxUiXre}+N?wBQ}^I0~F?eaNaDV8Ep zp|r)}h>t%4ars2W{r2a_jp!U^>UNHDzdcddWaj3A$Ti73@-DYMwj;o|2SMCoI*-eANi;(^& zKY#Bhk^^SYj1#6wOy%$ie6IB6nh7Un0dXL0Qk;lc9=u z=lUx!%^T#SblUyX>Ps*;Ji9SJ%MdmCXmq~LCfXK$`(kB}O2^=q2uAiNw7=EZ$QzF0 zXv*j@UdvhaH<{6~a`$zC+FB@V48Ny$2--Na@`Swa!gAsu<4o~b`*)qwl~cp zd>%okN2XrSD`pBTto){BW%KK49#ucJ`b2A_VR4^~U-h2qar(kEh7Xz6f+r^SZPyl! zA5>UGBu)t4v71aJ`>X+!kaOHj%LGy*Jkea-8#n8Uwas0Q7ICg^^$q#;2e;gaNKHn= zX<9;7r{kcpP_KFSZYMCKWi2w}WX(;I&KiEcz9FrF@9(<7)sb(TxeCIRuYx2J@OxN@ z6X96&Rn?FYe8WrNB%~9)c1wn3MrX<xzx zPk);az^7Y2T8hFdMeOyDJpJx9af<I%!VznTK|Zm4Bicg` z z9LYZJPL8+NcBbG25da#95c1BclN~`FaA0L|ADIN9q zR4r+b{SYBHU7k_pSwb+bM9U1z+c8)my7bPqEMHgXHn?%Q_Se)$&4=T}BORkh0w}bJQ*Hkj; z9Gu7E|vUykUcO4Q=&V zLyGF^Y|n0cC-_|JeP_NkpvwF=$*A3r&g%+tY&Y}63xfGk_;CcwHo9{3%LQOV-HPk! z#cvu`0Zz9EAFR6`W{2zd@v?0p`$mW@_@Lpvc?|Eg8xh{@*braciRKy83j3yamB67(Z`I%Esom?S{v7F1gqp`K z(g6&{_15%p#nVY?Q`5JOPVD41YS2KB?gbo1B}!^z zcKHSJS8pnOS2)eh>dGgv)6bt-Sy{RVc*m%HJAlp1l=bt&AGGF`%=uO0?t3f>`I2%y zebWT<_GySEHVZy9rw}x@xmi@L3{iH5G9LTDl68iMMXzGtOm|O=+E>ewuvwd0ysWrf z0gUETiJY^ggq^(JFmrY6AiRIEA+ZG!*^0|TwoOsg)`sCA^~u?oYuDqHXCv6nTVs`L zB^PmFkQ)pprXC-T%6iQj$@tp#u6S#E!MrAt6d(lZKr8T0CX|FF9G^`cAyN)06Q*(;b$A zN2(x(3%@)+gLWhwz$1yDHfI(b>{2*;OGmK5 zBL>sjDta$?E=3)UbopXS943UWD4JYlF#14mo)|-tWUFFkEG@a|i&QS3FXU{GG9>)Q zpL`!pg-`2wW*@86(H~~Hj&YJ{OjVP147A;2O7G={sMv-KKed`@Lmb|zF7?Rx^}-QR z=>Xea#z}1I+!EZ?2{B~q*`!$@(=h*G-m78qOxs?tI=?|A9u~yqF!-(?y7Vr|aX;i* z06cW>=k|90Y+YVc*e#jl@-&UyeSHZR*NsxQN!E(e3mRtOr1n}GCeCCbIW4sHYFa9N z1&zCQ#nd%23(FqI&inGnsW$E7)+}Yr)Tnb3wR#>NFI{k_4yD8-+M116VnJ69kSm(G z-+Y*Z3=@a+8J5OSL zG&o+jHIijcL@C3s5UPgbo4tE4QiVS5y+(h^nBOiE4k=^` zJgNVl*poGk#J9c_2`P6u#FKLEnn19K)rq*ou}C#Me!o;At3Ly|-sQe?kuOflWna*h zK0`3`W>@9nw?oU1-W_%?$1y+FXv=Lh)Zgg3`KuR4anJFx^BQiq`A8S>)A@;&Ge!n6 zw4*$Ke-6X;H{-xCJ-E}%e!l*;_QsQ=UFYC#BawiM$)vGzZn@Nth+#O=mzO$mY;{^< zd(TDcAK`EVf|rW7R+34(jGH!k%z*3h6jWT!G=6l8E_mVy1=djU;X^5xT@Ry7g;gPP z9}zEiYc|U3u6^_lGvi~lF_9Z=h3^#~9$4kYXlD7e@+(~GDD<|g#+ip-F^&^(fCkDD z%yNoEvxJzKzNkz!g|&Kk^p8_SPVodhgViKD+>r%bE)OD$bTM4ya3q{k!3jEk)doZ8 zzwp4eGor9{^I3vV#^t}v1={(HUwX6d0k8HvHaFkqJbYy^EtP>F#C=uE)v8B`CL?rT z_hSpW{N?CK~K*vNr2kEcG(QGl@!1xi8l4zF(?Jw9$YD za($p+17MU5&lu6PS2#JTCX~w5J;mmGL`iNv!yJ6;mI!N96PTPIKEc&M))y{uEk2yv za;R;FJ&c*Ml0-EORrb(#Gv(Aa!y&V>H+UlWlv@eVywZNRj4j8eDb4T}7ClLA@_iKu z#!4dxsTA+E6J}{@K<>Xw;F;O#giBLSHrM1*D0VW45PCNI7w|4~zYfJ!V~#TCq#7Mq z-_;%-_bw(VzOsWEt0=;>yUVX6{M= zJEVKTFw1h*p&%1d^l3B9E=Z0iK7Qx^jqrPd4G$fTgePqM+d^;-?eLvrStM}@1K+_m zp)N9s1hupdAgn!XJ38>K;FS$CNUh33ErJ(pJlSq3k{!d2sqAma!tBFERSK#zl(b|i zUd%Ad1kT(O7hURNy>2YC+~|#|#ZD$k$QZIF7a#h=@-QCH^@6ZW&>pP`QfH;62&CAo zbA6*@m^9ze($d!O&Af$PY)cJ%I9Ya~2F{naaM`N#Xg~RHS09puQ?a3pnW`8wi5v;= FzX0O0ez5=m literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload3.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/shotgunReload3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..512c6ea819941bced082f6f05a3808f1241a630b GIT binary patch literal 13929 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

hLQ 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 literal 0 HcmV?d00001 From 42b7d1f6573a9862b509cc560819e4975e559be8 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 22 Sep 2024 22:52:47 +0200 Subject: [PATCH 06/63] dry fire animations, clicky stuff --- .../com/hbm/items/weapon/sedna/Receiver.java | 6 +++- .../weapon/sedna/factory/GunFactory.java | 10 ++++-- .../hbm/items/weapon/sedna/factory/Lego.java | 36 +++++++++++++------ .../com/hbm/render/anim/HbmAnimations.java | 1 + 4 files changed, 38 insertions(+), 15 deletions(-) diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 793b0d45c..3223ae20b 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -22,6 +22,7 @@ public class Receiver { public static final String I_ROUNDSPERCYCLE = "I_ROUNDSPERCYCLE"; public static final String F_SPREADMOD = "F_SPREADMOD"; public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; + public static final String B_DOESDRYFIRE = "B_DOESDRYFIRE"; public static final String O_EJECTOR = "O_EJECTOR"; public static final String I_RELOADDURATION = "I_RELOADDURATION"; public static final String S_FIRESOUND = "S_FIRESOUND"; @@ -41,6 +42,7 @@ public class Receiver { protected int roundsPerCycle_DNA = 1; protected float spreadModExtra_DNA = 0F; protected boolean refireOnHold_DNA = false; + protected boolean doesDryFire_DNA = true; protected CasingEjector ejector_DNA = null; protected int reloadDuration_DNA; protected String fireSound_DNA; @@ -56,6 +58,7 @@ public class Receiver { public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } public float getSpreadMod(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } + public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } @@ -70,8 +73,9 @@ public class Receiver { public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } - public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } + public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } + public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } public Receiver burst(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index a67ef8f06..9e572d3fd 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -36,7 +36,7 @@ public class GunFactory { ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(DEBUG_ORCHESTRA) .rec(new Receiver(0) - .dmg(10F).delay(12).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) @@ -54,7 +54,7 @@ public class GunFactory { int timer = ItemGunBaseNT.getAnimTimer(stack); if(type == AnimType.RELOAD) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); @@ -62,8 +62,12 @@ public class GunFactory { if(type == AnimType.CYCLE) { if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); } - if(type == AnimType.INSPECT) { + if(type == AnimType.CYCLE_DRY) { if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); } }; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 06caabc1b..817b4bfef 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -62,15 +62,26 @@ public class Lego { Receiver rec = ctx.config.getReceivers(stack)[0]; GunState state = ItemGunBaseNT.getState(stack); - if(state == GunState.IDLE && rec.getCanFire(stack).apply(stack, ctx)) { - ItemGunBaseNT.setState(stack, GunState.COOLDOWN); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); - rec.getOnFire(stack).accept(stack, ctx); + if(state == GunState.IDLE) { - player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, rec.getFireSound(stack), rec.getFireVolume(stack), rec.getFirePitch(stack)); - - int remaining = rec.getRoundsPerCycle(stack) - 1; - for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); + if(rec.getCanFire(stack).apply(stack, ctx)) { + rec.getOnFire(stack).accept(stack, ctx); + + player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, rec.getFireSound(stack), rec.getFireVolume(stack), rec.getFirePitch(stack)); + + int remaining = rec.getRoundsPerCycle(stack) - 1; + for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); + + ItemGunBaseNT.setState(stack, GunState.COOLDOWN); + ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + } else { + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); + + if(rec.getDoesDryFire(stack)) { + ItemGunBaseNT.setState(stack, GunState.COOLDOWN); + ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + } + } } }; @@ -113,9 +124,12 @@ public class Lego { @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DEBUG_ANIMS = (stack, type) -> { switch(type) { case CYCLE: return new BusAnimation() - .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) - .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 300 + 100).addPos(0, 0, 0, 200)) - .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 350 + 100).addPos(0, 0, 1, 200)); + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 400).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 450).addPos(0, 0, 1, 200)); + case CYCLE_DRY: return new BusAnimation() + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 300 + 100).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 450).addPos(0, 0, 1, 200)); case EQUIP: return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(-360, 0, 0, 350)); case RELOAD: return new BusAnimation() .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 1450).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) diff --git a/src/main/java/com/hbm/render/anim/HbmAnimations.java b/src/main/java/com/hbm/render/anim/HbmAnimations.java index 078c479b6..b7a26823c 100644 --- a/src/main/java/com/hbm/render/anim/HbmAnimations.java +++ b/src/main/java/com/hbm/render/anim/HbmAnimations.java @@ -24,6 +24,7 @@ public class HbmAnimations { RELOAD_END, //animation for transitioning from our RELOAD_CYCLE to idle CYCLE, //animation for every firing cycle CYCLE_EMPTY, //animation for the final shot in the magazine + CYCLE_DRY, //animation for trying to fire, but no round is available ALT_CYCLE, //animation for alt fire cycles SPINUP, //animation for actionstart SPINDOWN, //animation for actionend From d56a9306ffb70a979b1afe31ec20c90e997e9722 Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 15:17:12 +0300 Subject: [PATCH 07/63] Expand gitignore --- .gitignore | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 22222fc39..1317d0286 100644 --- a/.gitignore +++ b/.gitignore @@ -1,25 +1,28 @@ # eclipse -eclipse -bin -*.launch -.settings -.metadata -.classpath -.project +/eclipse +/bin +/*.launch +/.settings +/.metadata +/.classpath +/.project # idea -out -*.ipr -*.iws -*.iml -.idea +/out +/*.ipr +/*.iws +/*.iml +/.idea # gradle -build -.gradle +/build +/.gradle + +# vscode +/.vscode # other -run +/run # CurseForge configuration /curseforge.properties From cf69c0e4c0285aec753d1adf02a619ee2517971f Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 16:20:17 +0300 Subject: [PATCH 08/63] Preserve inventories of crates and mass storages when upgrading --- .../ContainerUpgradeCraftingHandler.java | 58 +++++++++++++++++++ .../java/com/hbm/main/CraftingManager.java | 17 ++++-- 2 files changed, 69 insertions(+), 6 deletions(-) create mode 100644 src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java diff --git a/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java b/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java new file mode 100644 index 000000000..22949d25f --- /dev/null +++ b/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java @@ -0,0 +1,58 @@ +package com.hbm.crafting.handlers; + +import java.util.ArrayList; + +import com.hbm.blocks.generic.BlockStorageCrate; +import com.hbm.blocks.machine.BlockMassStorage; + +import net.minecraft.block.Block; +import net.minecraft.inventory.InventoryCrafting; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.item.crafting.IRecipe; +import net.minecraft.util.MathHelper; +import net.minecraft.world.World; +import net.minecraftforge.oredict.ShapedOreRecipe; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; + +/** + * Handles upgrading storage crates and mass storage blocks, preserving their contents. + * + * Note: this assumes the input and the output items store their inventory in the same format + * in the NBT + */ +public class ContainerUpgradeCraftingHandler extends ShapedOreRecipe { + + public ContainerUpgradeCraftingHandler(ItemStack result, Object... items){ + super(result, items); + } + + @Override + public ItemStack getCraftingResult(InventoryCrafting inventoryCrafting) { + + ItemStack source = getFirstContainer(inventoryCrafting); + ItemStack result = super.getCraftingResult(inventoryCrafting); + + result.setTagCompound(source.getTagCompound()); + + return result; + } + + private static ItemStack getFirstContainer(InventoryCrafting inventoryCrafting) { + for (int i = 0; i < 9; ++i) { + ItemStack itemstack = inventoryCrafting.getStackInRowAndColumn(i % 3, i / 3); + if (itemstack == null) + continue; + + Block block = Block.getBlockFromItem(itemstack.getItem()); + if (block == null) + continue; + + if (block instanceof BlockStorageCrate || block instanceof BlockMassStorage) + return itemstack; + } + return null; + } + +} diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index b4dc3b87f..cce77298b 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -79,6 +79,7 @@ public class CraftingManager { RecipeSorter.register("hbm:cargo", CargoShellCraftingHandler.class, RecipeSorter.Category.SHAPELESS, "after:minecraft:shapeless"); RecipeSorter.register("hbm:scraps", ScrapsCraftingHandler.class, RecipeSorter.Category.SHAPELESS, "after:minecraft:shapeless"); RecipeSorter.register("hbm:mku", MKUCraftingHandler.class, RecipeSorter.Category.SHAPED, "after:minecraft:shaped before:minecraft:shapeless"); + RecipeSorter.register("hbm:containerupgrade", ContainerUpgradeCraftingHandler.class, RecipeSorter.Category.SHAPED, "after:minecraft:shaped before:minecraft:shapeless"); } public static void AddCraftingRec() { @@ -282,13 +283,17 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModBlocks.crate_template, 1), new Object[] { "IPI", "P P", "IPI", 'I', IRON.ingot(), 'P', Items.paper }); addRecipeAuto(new ItemStack(ModBlocks.crate_iron, 1), new Object[] { "PPP", "I I", "III", 'P', IRON.plate(), 'I', IRON.ingot() }); addRecipeAuto(new ItemStack(ModBlocks.crate_steel, 1), new Object[] { "PPP", "I I", "III", 'P', STEEL.plate(), 'I', STEEL.ingot() }); - addRecipeAuto(new ItemStack(ModBlocks.crate_desh, 1), new Object[] { " D ", "DSD", " D ", 'D', ModItems.plate_desh, 'S', ModBlocks.crate_steel }); - addRecipeAuto(new ItemStack(ModBlocks.crate_tungsten, 1), new Object[] { "BPB", "PCP", "BPB", 'B', W.block(), 'P', CU.plateCast(), 'C', ModBlocks.crate_steel }); - addRecipeAuto(new ItemStack(ModBlocks.safe, 1), new Object[] { "LAL", "ACA", "LAL", 'L', PB.plate(), 'A', ALLOY.plate(), 'C', ModBlocks.crate_steel }); + + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.crate_desh, 1), new Object[] { " D ", "DSD", " D ", 'D', ModItems.plate_desh, 'S', ModBlocks.crate_steel })); + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.crate_tungsten, 1), new Object[] { "BPB", "PCP", "BPB", 'B', W.block(), 'P', CU.plateCast(), 'C', ModBlocks.crate_steel })); + // Note: voids the last few slots when placed, because a safe's inventory is smaller than a crate's one + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.safe, 1), new Object[] { "LAL", "ACA", "LAL", 'L', PB.plate(), 'A', ALLOY.plate(), 'C', ModBlocks.crate_steel })); + // Note: doesn't preserve storage because a crate's contents are different items, but a mass storage's is just one addRecipeAuto(new ItemStack(ModBlocks.mass_storage, 1, 0), new Object[] { "ICI", "CLC", "ICI", 'I', TI.ingot(), 'C', ModBlocks.crate_steel, 'L', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE) }); - addRecipeAuto(new ItemStack(ModBlocks.mass_storage, 1, 1), new Object[] { "PCP", "PMP", "PPP", 'P', DESH.ingot(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CHIP), 'M', new ItemStack(ModBlocks.mass_storage, 1, 0) }); - addRecipeAuto(new ItemStack(ModBlocks.mass_storage, 1, 2), new Object[] { "PCP", "PMP", "PPP", 'P', ANY_RESISTANTALLOY.ingot(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED), 'M', new ItemStack(ModBlocks.mass_storage, 1, 1) }); - addRecipeAuto(new ItemStack(ModBlocks.mass_storage, 1, 3), new Object[] { "PPP", "PIP", "PPP", 'P', KEY_PLANKS, 'I', IRON.plate() }); + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.mass_storage, 1, 1), new Object[] { "PCP", "PMP", "PPP", 'P', DESH.ingot(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CHIP), 'M', new ItemStack(ModBlocks.mass_storage, 1, 0) })); + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.mass_storage, 1, 2), new Object[] { "PCP", "PMP", "PPP", 'P', ANY_RESISTANTALLOY.ingot(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED), 'M', new ItemStack(ModBlocks.mass_storage, 1, 1) })); + GameRegistry.addRecipe(new ContainerUpgradeCraftingHandler(new ItemStack(ModBlocks.mass_storage, 1, 3), new Object[] { "PPP", "PIP", "PPP", 'P', KEY_PLANKS, 'I', IRON.plate() })); + addRecipeAuto(new ItemStack(ModBlocks.machine_autocrafter, 1), new Object[] { "SCS", "MWM", "SCS", 'S', STEEL.plate(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), 'M', ModItems.motor, 'W', Blocks.crafting_table }); addRecipeAuto(new ItemStack(ModBlocks.machine_funnel, 1), new Object[] { "S S", "SRS", " S ", 'S', STEEL.ingot(), 'R', REDSTONE.dust() }); addRecipeAuto(new ItemStack(ModBlocks.machine_waste_drum, 1), new Object[] { "LRL", "BRB", "LRL", 'L', PB.ingot(), 'B', Blocks.iron_bars, 'R', ModItems.rod_quad_empty }); From 99426322312df8a711ea700ea69083212c68bd4f Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 16:21:57 +0300 Subject: [PATCH 09/63] Fix TileEntityScaffoldDynamic --- src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java index 814ddb5b1..62a42594c 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java +++ b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java @@ -167,7 +167,8 @@ public class BlockScaffoldDynamic extends BlockContainer implements IToolable, I } } - public static class TileEntityScaffoldDynamic extends TileEntity { + // Full class name needed because otherwise there's some conflict with the static import * from this class + public static class TileEntityScaffoldDynamic extends net.minecraft.tileentity.TileEntity { public int composite; public int prevComposite; From 33c8ad70a37067b31fd9955e386e3e1bf38cbe55 Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 15:17:12 +0300 Subject: [PATCH 10/63] Expand gitignore --- .gitignore | 33 ++++++++++++++++++--------------- 1 file changed, 18 insertions(+), 15 deletions(-) diff --git a/.gitignore b/.gitignore index 22222fc39..1317d0286 100644 --- a/.gitignore +++ b/.gitignore @@ -1,25 +1,28 @@ # eclipse -eclipse -bin -*.launch -.settings -.metadata -.classpath -.project +/eclipse +/bin +/*.launch +/.settings +/.metadata +/.classpath +/.project # idea -out -*.ipr -*.iws -*.iml -.idea +/out +/*.ipr +/*.iws +/*.iml +/.idea # gradle -build -.gradle +/build +/.gradle + +# vscode +/.vscode # other -run +/run # CurseForge configuration /curseforge.properties From 8aad7fb44b771d0d332806a07f958124c08014ed Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 18:21:57 +0300 Subject: [PATCH 11/63] Fix conveyor grabber delay --- .../tileentity/network/TileEntityCraneGrabber.java | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java b/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java index 728ff2e67..b5bf3c2d0 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java @@ -32,6 +32,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP public boolean isWhitelist = false; public ModulePatternMatcher matcher; + public long lastGrabbedTick = 0; public TileEntityCraneGrabber() { super(11); @@ -63,7 +64,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP } } - if(worldObj.getTotalWorldTime() % delay == 0 && !this.worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord)) { + if(worldObj.getTotalWorldTime() >= lastGrabbedTick + delay && !this.worldObj.isBlockIndirectlyGettingPowered(xCoord, yCoord, zCoord)) { int amount = 1; if(slots[9] != null && slots[9].getItem() == ModItems.upgrade_stack) { @@ -111,6 +112,8 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP boolean match = this.matchesFilter(stack); if(this.isWhitelist && !match || !this.isWhitelist && match) continue; + lastGrabbedTick = worldObj.getTotalWorldTime(); + ItemStack copy = stack.copy(); int toAdd = Math.min(stack.stackSize, amount); copy.stackSize = toAdd; @@ -132,8 +135,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP NBTTagCompound data = new NBTTagCompound(); - data.setBoolean("isWhitelist", isWhitelist); - this.matcher.writeToNBT(data); + this.writeToNBT(data); this.networkPack(data, 15); } } @@ -141,9 +143,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP public void networkUnpack(NBTTagCompound nbt) { super.networkUnpack(nbt); - this.isWhitelist = nbt.getBoolean("isWhitelist"); - this.matcher.modes = new String[this.matcher.modes.length]; - this.matcher.readFromNBT(nbt); + this.readFromNBT(nbt); } public boolean matchesFilter(ItemStack stack) { @@ -175,6 +175,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP super.readFromNBT(nbt); this.isWhitelist = nbt.getBoolean("isWhitelist"); this.matcher.readFromNBT(nbt); + this.lastGrabbedTick = nbt.getLong("lastGrabbedTick"); } @Override @@ -182,6 +183,7 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP super.writeToNBT(nbt); nbt.setBoolean("isWhitelist", this.isWhitelist); this.matcher.writeToNBT(nbt); + nbt.setLong("lastGrabbedTick", lastGrabbedTick); } @Override From df92d913da853b0b7dbfa6f84fed2d3c5c39855f Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 18:36:03 +0300 Subject: [PATCH 12/63] Add caching for TileEntityMachineBase update packages Now they aren't send unless something has changed, except for one every second as a workaround for an apparent issue --- .../hbm/tileentity/TileEntityMachineBase.java | 39 ++++++++++++++++++- 1 file changed, 37 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java b/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java index d34c5ee38..81c099073 100644 --- a/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java +++ b/src/main/java/com/hbm/tileentity/TileEntityMachineBase.java @@ -8,6 +8,7 @@ import com.hbm.util.fauxpointtwelve.DirPos; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import io.netty.buffer.ByteBuf; +import io.netty.buffer.Unpooled; import net.minecraft.block.Block; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; @@ -23,6 +24,9 @@ public abstract class TileEntityMachineBase extends TileEntityLoadedBase impleme private String customName; + private NBTTagCompound lastPackedNBT = null; + private ByteBuf lastPackedBuf = null; + public TileEntityMachineBase(int slotCount) { slots = new ItemStack[slotCount]; } @@ -157,7 +161,18 @@ public abstract class TileEntityMachineBase extends TileEntityLoadedBase impleme @Deprecated public void networkPack(NBTTagCompound nbt, int range) { nbt.setBoolean("muffled", muffled); - if(!worldObj.isRemote) PacketDispatcher.wrapper.sendToAllAround(new NBTPacket(nbt, xCoord, yCoord, zCoord), new TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range)); + + if(worldObj.isRemote) { + return; + } + + // Same as networkPackNT + if (lastPackedNBT != null && lastPackedNBT.equals(nbt) && worldObj.getWorldTime() % 20 != 0) { + return; + } + this.lastPackedNBT = nbt; + + PacketDispatcher.wrapper.sendToAllAround(new NBTPacket(nbt, xCoord, yCoord, zCoord), new TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range)); } @Deprecated @@ -167,7 +182,27 @@ public abstract class TileEntityMachineBase extends TileEntityLoadedBase impleme /** Sends a sync packet that uses ByteBuf for efficient information-cramming */ public void networkPackNT(int range) { - if(!worldObj.isRemote) PacketDispatcher.wrapper.sendToAllAround(new BufPacket(xCoord, yCoord, zCoord, this), new TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range)); + if(worldObj.isRemote) { + return; + } + + BufPacket packet = new BufPacket(xCoord, yCoord, zCoord, this); + ByteBuf buf = Unpooled.buffer(); + packet.toBytes(buf); + + // Don't send unnecessary packets, except for maybe one every second or so. + // If we stop sending duplicate packets entirely, this causes issues when + // a client unloads and then loads back a chunk with an unchanged tile entity. + // For that client, the tile entity will appear default until anything changes about it. + // In my testing, this can be reliably reproduced with a full fluid barrel, for instance. + // I think it might be fixable by doing something with getDescriptionPacket() and onDataPacket(), + // but this sidesteps the problem for the mean time. + if (lastPackedBuf != null && buf.equals(lastPackedBuf) && worldObj.getWorldTime() % 20 != 0) { + return; + } + this.lastPackedBuf = buf; + + PacketDispatcher.wrapper.sendToAllAround(packet, new TargetPoint(this.worldObj.provider.dimensionId, xCoord, yCoord, zCoord, range)); } @Override public void serialize(ByteBuf buf) { From c5fa0c5d2b504a3dce0d8a30ad8026c32f007c9c Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 18:41:57 +0300 Subject: [PATCH 13/63] Fix builder's choice concrete tooltip --- src/main/java/com/hbm/blocks/ModBlocks.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 9550cd93d..e03b7e264 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -2626,7 +2626,7 @@ public class ModBlocks { GameRegistry.registerBlock(reinforced_ducrete, ItemBlockBlastInfo.class, reinforced_ducrete.getUnlocalizedName()); GameRegistry.registerBlock(concrete_smooth, ItemBlockBlastInfo.class, concrete_smooth.getUnlocalizedName()); GameRegistry.registerBlock(concrete_colored, ItemBlockColoredConcrete.class, concrete_colored.getUnlocalizedName()); - register(concrete_colored_ext); + GameRegistry.registerBlock(concrete_colored_ext, ItemBlockBlastInfo.class, concrete_colored_ext.getUnlocalizedName()); GameRegistry.registerBlock(concrete, ItemBlockBlastInfo.class, concrete.getUnlocalizedName()); GameRegistry.registerBlock(concrete_asbestos, ItemBlockBlastInfo.class, concrete_asbestos.getUnlocalizedName()); GameRegistry.registerBlock(concrete_super, ItemBlockBlastInfo.class, concrete_super.getUnlocalizedName()); From c41bdc68865430f30a26a2495ef427c09461416e Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 23 Sep 2024 16:21:57 +0300 Subject: [PATCH 14/63] Fix TileEntityScaffoldDynamic --- src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java index 814ddb5b1..62a42594c 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java +++ b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java @@ -167,7 +167,8 @@ public class BlockScaffoldDynamic extends BlockContainer implements IToolable, I } } - public static class TileEntityScaffoldDynamic extends TileEntity { + // Full class name needed because otherwise there's some conflict with the static import * from this class + public static class TileEntityScaffoldDynamic extends net.minecraft.tileentity.TileEntity { public int composite; public int prevComposite; From b2c2ce9e4ee79ec49bc9a3c6ada5ce07aaaa2b63 Mon Sep 17 00:00:00 2001 From: Bob Date: Mon, 23 Sep 2024 22:39:38 +0200 Subject: [PATCH 15/63] casing ejectors, bullet ricochet --- .../projectile/EntityBulletBaseMK4.java | 83 ++++++++++++++++--- .../entity/projectile/EntityThrowableNT.java | 18 +--- .../java/com/hbm/handler/CasingEjector.java | 12 +-- .../java/com/hbm/itempool/ItemPoolsPile.java | 2 +- .../hbm/items/weapon/sedna/BulletConfig.java | 8 ++ .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 19 +++++ .../com/hbm/items/weapon/sedna/Receiver.java | 22 +++-- .../weapon/sedna/factory/GunFactory.java | 19 ++++- .../item/weapon/sedna/ItemRenderDebug.java | 8 ++ 9 files changed, 148 insertions(+), 43 deletions(-) diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index 7eba8ed07..d9760ba2f 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -4,6 +4,8 @@ import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.lib.ModDamageSource; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.AuxParticlePacketNT; +import com.hbm.util.BobMathUtil; +import com.hbm.util.TrackerUtil; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.EntityLivingBase; @@ -12,12 +14,15 @@ import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; import net.minecraft.world.World; +import net.minecraft.world.WorldServer; +import net.minecraftforge.common.util.ForgeDirection; public class EntityBulletBaseMK4 extends EntityThrowableInterp { public BulletConfig config; public double velocity; public double prevVelocity; + public int ricochets = 0; public EntityBulletBaseMK4(World world) { super(world); @@ -88,25 +93,81 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { this.prevVelocity = this.velocity; this.velocity = Math.sqrt(dX * dX + dY * dY + dZ * dZ); + + if(!this.onGround && velocity > 0) { + + float hyp = MathHelper.sqrt_double(dX * dX + dZ * dZ); + this.rotationYaw = (float) (Math.atan2(dX, dZ) * 180.0D / Math.PI); + + for(this.rotationPitch = (float) (Math.atan2(dY, (double) hyp) * 180.0D / Math.PI); this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F); + + while(this.rotationPitch - this.prevRotationPitch >= 180.0F) this.prevRotationPitch += 360.0F; + while(this.rotationYaw - this.prevRotationYaw < -180.0F) this.prevRotationYaw -= 360.0F; + while(this.rotationYaw - this.prevRotationYaw >= 180.0F) this.prevRotationYaw += 360.0F; + } + + if(!worldObj.isRemote && this.ticksExisted > config.expires) this.setDead(); + } + + @Override + public void setDead() { + super.setDead(); + + //send a teleport on collision so that the bullets are forced to move even if their lifetime is only 1 tick, letting them render + if(worldObj instanceof WorldServer) TrackerUtil.sendTeleport((WorldServer) worldObj, this); } @Override protected void onImpact(MovingObjectPosition mop) { if(!worldObj.isRemote) { - if(mop.typeOfHit == mop.typeOfHit.ENTITY && !mop.entityHit.isEntityAlive()) return; - this.setDead(); + if(mop.typeOfHit == mop.typeOfHit.BLOCK) { + + ForgeDirection dir = ForgeDirection.getOrientation(mop.sideHit); + Vec3 face = Vec3.createVectorHelper(dir.offsetX, dir.offsetY, dir.offsetZ); + Vec3 vel = Vec3.createVectorHelper(motionX, motionY, motionZ).normalize(); + + double angle = Math.abs(BobMathUtil.getCrossAngle(vel, face) - 90); + + if(angle <= config.ricochetAngle) { + + this.ricochets++; + if(this.ricochets > this.config.maxRicochetCount) { + this.setPosition(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord); + this.setDead(); + } + + switch(mop.sideHit) { + case 0: case 1: motionY *= -1; break; + case 2: case 3: motionZ *= -1; break; + case 4: case 5: motionX *= -1; break; + } + worldObj.playSoundAtEntity(this, "hbm:weapon.ricochet", 0.25F, 1.0F); + this.setPosition(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord); + //send a teleport so the ricochet is more accurate instead of the interp smoothing fucking everything up + if(worldObj instanceof WorldServer) TrackerUtil.sendTeleport((WorldServer) worldObj, this); + return; + + } else { + this.setPosition(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord); + this.setDead(); + } + } - if(mop.typeOfHit == mop.typeOfHit.ENTITY && mop.entityHit.isEntityAlive()) { - mop.entityHit.attackEntityFrom(ModDamageSource.turbofan, 1_000F); + if(mop.typeOfHit == mop.typeOfHit.ENTITY) { + if(!mop.entityHit.isEntityAlive()) return; - NBTTagCompound vdat = new NBTTagCompound(); - vdat.setString("type", "giblets"); - vdat.setInteger("ent", mop.entityHit.getEntityId()); - vdat.setInteger("cDiv", 2); - PacketDispatcher.wrapper.sendToAllAround( - new AuxParticlePacketNT(vdat, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ), - new TargetPoint(this.dimension, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ, 150)); + if(mop.entityHit.isEntityAlive()) { + mop.entityHit.attackEntityFrom(ModDamageSource.turbofan, 1_000F); + + NBTTagCompound vdat = new NBTTagCompound(); + vdat.setString("type", "giblets"); + vdat.setInteger("ent", mop.entityHit.getEntityId()); + vdat.setInteger("cDiv", 2); + PacketDispatcher.wrapper.sendToAllAround( + new AuxParticlePacketNT(vdat, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ), + new TargetPoint(this.dimension, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ, 150)); + } } } } diff --git a/src/main/java/com/hbm/entity/projectile/EntityThrowableNT.java b/src/main/java/com/hbm/entity/projectile/EntityThrowableNT.java index a96f66097..f3b70f6a6 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityThrowableNT.java +++ b/src/main/java/com/hbm/entity/projectile/EntityThrowableNT.java @@ -235,21 +235,11 @@ public abstract class EntityThrowableNT extends Entity implements IProjectile { float hyp = MathHelper.sqrt_double(this.motionX * this.motionX + this.motionZ * this.motionZ); this.rotationYaw = (float) (Math.atan2(this.motionX, this.motionZ) * 180.0D / Math.PI); - for(this.rotationPitch = (float) (Math.atan2(this.motionY, (double) hyp) * 180.0D / Math.PI); this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F) { - ; - } + for(this.rotationPitch = (float) (Math.atan2(this.motionY, (double) hyp) * 180.0D / Math.PI); this.rotationPitch - this.prevRotationPitch < -180.0F; this.prevRotationPitch -= 360.0F); - while(this.rotationPitch - this.prevRotationPitch >= 180.0F) { - this.prevRotationPitch += 360.0F; - } - - while(this.rotationYaw - this.prevRotationYaw < -180.0F) { - this.prevRotationYaw -= 360.0F; - } - - while(this.rotationYaw - this.prevRotationYaw >= 180.0F) { - this.prevRotationYaw += 360.0F; - } + while(this.rotationPitch - this.prevRotationPitch >= 180.0F) this.prevRotationPitch += 360.0F; + while(this.rotationYaw - this.prevRotationYaw < -180.0F) this.prevRotationYaw -= 360.0F; + while(this.rotationYaw - this.prevRotationYaw >= 180.0F) this.prevRotationYaw += 360.0F; this.rotationPitch = this.prevRotationPitch + (this.rotationPitch - this.prevRotationPitch) * 0.2F; this.rotationYaw = this.prevRotationYaw + (this.rotationYaw - this.prevRotationYaw) * 0.2F; diff --git a/src/main/java/com/hbm/handler/CasingEjector.java b/src/main/java/com/hbm/handler/CasingEjector.java index eda29d1a0..0802d0ad0 100644 --- a/src/main/java/com/hbm/handler/CasingEjector.java +++ b/src/main/java/com/hbm/handler/CasingEjector.java @@ -30,9 +30,9 @@ public class CasingEjector implements Cloneable { private static int nextId = 0; private Vec3 posOffset = Vec3.createVectorHelper(0, 0, 0); private Vec3 initialMotion = Vec3.createVectorHelper(0, 0, 0); - private int casingAmount = 1; - private boolean afterReload = false; - private int delay = 0; + @Deprecated private int casingAmount = 1; + @Deprecated private boolean afterReload = false; + @Deprecated private int delay = 0; private float randomYaw = 0F; private float randomPitch = 0F; @@ -61,17 +61,17 @@ public class CasingEjector implements Cloneable { return this; } - public CasingEjector setAmount(int am) { + @Deprecated public CasingEjector setAmount(int am) { this.casingAmount = am; return this; } - public CasingEjector setAfterReload() { + @Deprecated public CasingEjector setAfterReload() { this.afterReload = true; return this; } - public CasingEjector setDelay(int delay) { + @Deprecated public CasingEjector setDelay(int delay) { this.delay = delay; return this; } diff --git a/src/main/java/com/hbm/itempool/ItemPoolsPile.java b/src/main/java/com/hbm/itempool/ItemPoolsPile.java index 254016416..c296003dc 100644 --- a/src/main/java/com/hbm/itempool/ItemPoolsPile.java +++ b/src/main/java/com/hbm/itempool/ItemPoolsPile.java @@ -98,7 +98,7 @@ public class ItemPoolsPile { //makeshift gun new ItemPool(POOL_PILE_MAKESHIFT_GUN) {{ this.pool = new WeightedRandomChestContent[] { weighted(ModItems.gun_lever_action, 0, 1, 1, 10) }; }}; new ItemPool(POOL_PILE_MAKESHIFT_WRENCH) {{ this.pool = new WeightedRandomChestContent[] { weighted(ModItems.wrench, 0, 1, 1, 10) }; }}; - new ItemPool(POOL_PILE_MAKESHIFT_PLATES) {{ this.pool = new WeightedRandomChestContent[] { weighted(ModItems.plate_combine_steel, 0, 1, 1, 10) }; }}; + new ItemPool(POOL_PILE_MAKESHIFT_PLATES) {{ this.pool = new WeightedRandomChestContent[] { weighted(ModItems.plate_steel, 0, 1, 1, 10) }; }}; new ItemPool(POOL_PILE_MAKESHIFT_WIRE) {{ this.pool = new WeightedRandomChestContent[] { weighted(ModItems.wire_fine, Mats.MAT_ALUMINIUM.id, 1, 1, 10) }; }}; new ItemPool(POOL_PILE_NUKE_STORAGE) {{ diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index 578770787..909e5cb50 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -6,6 +6,7 @@ import java.util.function.BiConsumer; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.inventory.RecipesCommon.ComparableStack; +import com.hbm.particle.SpentCasing; import net.minecraft.item.Item; @@ -26,10 +27,14 @@ public class BulletConfig { public float damageMult = 1.0F; public float headshotMult = 1.0F; + public float ricochetAngle = 5F; + public int maxRicochetCount = 2; + public double gravity = 0; public int expires = 100; public boolean renderRotations = true; + public SpentCasing casing; public BiConsumer renderer; public BulletConfig() { @@ -45,8 +50,11 @@ public class BulletConfig { public BulletConfig setProjectiles(int min, int max) { this.projectilesMin = min; this.projectilesMax = max; return this; } public BulletConfig setDamage(float damageMult) { this.damageMult = damageMult; return this; } public BulletConfig setHeadshot(float headshotMult) { this.headshotMult = headshotMult; return this; } + public BulletConfig setRicochetAngle(float angle) { this.ricochetAngle = angle; return this; } + public BulletConfig setRicochetCount(int count) { this.maxRicochetCount = count; return this; } public BulletConfig setGrav(double gravity) { this.gravity = gravity; return this; } public BulletConfig setLife(int expires) { this.expires = expires; return this; } public BulletConfig setRenderRotations(boolean rot) { this.renderRotations = rot; return this; } + public BulletConfig setCasing(SpentCasing casing) { this.casing = casing; return this; } public BulletConfig setRenderer(BiConsumer renderer) { this.renderer = renderer; return this; } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 6b911c9c1..39662b8aa 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.List; import java.util.function.BiConsumer; +import com.hbm.handler.CasingEjector; import com.hbm.handler.HbmKeybinds.EnumKeybind; import com.hbm.interfaces.IItemHUD; import com.hbm.items.IEquipReceiver; @@ -11,11 +12,13 @@ import com.hbm.items.IKeybindReceiver; import com.hbm.items.weapon.sedna.hud.IHUDComponent; import com.hbm.main.MainRegistry; import com.hbm.packet.PacketDispatcher; +import com.hbm.packet.toclient.AuxParticlePacketNT; import com.hbm.packet.toclient.GunAnimationPacket; import com.hbm.render.anim.HbmAnimations.AnimType; import com.hbm.render.util.RenderScreenOverlay; import com.hbm.util.EnumUtil; +import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.Minecraft; @@ -192,6 +195,22 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei if(timer > 0) this.setTimer(stack, timer - 1); if(timer <= 1) config.getDecider(stack).accept(stack, ctx); } + + public static void trySpawnCasing(Entity entity, CasingEjector ejector, BulletConfig bullet, ItemStack stack) { + + if(ejector == null) return; //abort if the gun can't eject bullets at all + if(bullet == null) return; //abort if there's no valid bullet cfg + if(bullet.casing == null) return; //abort if the bullet is caseless + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "casing"); + data.setFloat("pitch", (float) Math.toRadians(entity.rotationPitch)); + data.setFloat("yaw", (float) Math.toRadians(entity.rotationYaw)); + data.setBoolean("crouched", entity.isSneaking()); + data.setString("name", bullet.casing.getName()); + data.setInteger("ej", ejector.getId()); + PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, entity.posX, entity.posY + entity.getEyeHeight(), entity.posZ), new TargetPoint(entity.dimension, entity.posX, entity.posY, entity.posZ, 50)); + } // GUN DRAWN // public static boolean getIsDrawn(ItemStack stack) { return getValueBool(stack, KEY_DRAWN); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 3223ae20b..3d700eca0 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -24,6 +24,7 @@ public class Receiver { public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; public static final String B_DOESDRYFIRE = "B_DOESDRYFIRE"; public static final String O_EJECTOR = "O_EJECTOR"; + public static final String B_EJECTONFIRE = "B_EJECTONFIRE"; public static final String I_RELOADDURATION = "I_RELOADDURATION"; public static final String S_FIRESOUND = "S_FIRESOUND"; public static final String F_FIREVOLUME = "F_FIREVOLUME"; @@ -44,6 +45,7 @@ public class Receiver { protected boolean refireOnHold_DNA = false; protected boolean doesDryFire_DNA = true; protected CasingEjector ejector_DNA = null; + protected boolean ejectOnFire_DNA = true; protected int reloadDuration_DNA; protected String fireSound_DNA; protected float fireVolume_DNA = 1.0F; @@ -60,6 +62,7 @@ public class Receiver { public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } + public boolean getEjectOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejectOnFire_DNA, stack, B_EJECTONFIRE, this); } public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } @@ -70,15 +73,16 @@ public class Receiver { public BiConsumer getOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.onFire_DNA, stack, CON_ONFIRE, this); } /* SETTERS */ - public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } - public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } - public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } - public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } - public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } - public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } - public Receiver burst(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } - public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } - public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } + public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } + public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } + public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } + public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } + public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } + public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } + public Receiver ejector(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } + public Receiver ejectOnFire(boolean eject) { this.ejectOnFire_DNA = eject; return this; } + public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } + public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } public Receiver canFire(BiFunction lambda) { this.canFire_DNA = lambda; return this; } public Receiver fire(BiConsumer lambda) { this.onFire_DNA = lambda; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 9e572d3fd..d263aed23 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -2,6 +2,7 @@ package com.hbm.items.weapon.sedna.factory; import java.util.function.BiConsumer; +import com.hbm.handler.CasingEjector; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; @@ -9,9 +10,12 @@ import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; @@ -22,6 +26,8 @@ public class GunFactory { public static BulletConfig ammo_debug; public static BulletConfig ammo_debug_buckshot; + + public static SpentCasing CASING44 = new SpentCasing(CasingType.STRAIGHT).setScale(1.5F, 1.0F, 1.5F).setBounceMotion(0.01F, 0.05F).setColor(SpentCasing.COLOR_CASE_44); public static void init() { @@ -29,8 +35,8 @@ public class GunFactory { ModItems.ammo_debug = new Item().setUnlocalizedName("ammo_debug").setTextureName(RefStrings.MODID + ":ammo_45"); /// BULLLET CFGS /// - ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F); - ammo_debug_buckshot = new BulletConfig().setItem(ModItems.ammo_12gauge).setSpread(0.1F).setProjectiles(6, 6); + ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F).setRicochetAngle(45).setCasing(CASING44.clone().register("DEBUG0")); + ammo_debug_buckshot = new BulletConfig().setItem(ModItems.ammo_12gauge).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setCasing(CASING44.clone().register("DEBUG1")); /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() @@ -38,6 +44,7 @@ public class GunFactory { .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) + .ejector(new CasingEjector().setMotion(0, -0.1, 0).setAngleRange(0.01F, 0.025F)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) @@ -58,6 +65,14 @@ public class GunFactory { if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + + if(timer == 20) { + Receiver rec = ctx.config.getReceivers(stack)[0]; + IMagazine mag = rec.getMagazine(stack); + CasingEjector ejector = rec.getEjector(stack); + BulletConfig bullet = (BulletConfig) mag.getType(stack); + for(int i = 0; i < mag.getCapacity(stack); i++) ItemGunBaseNT.trySpawnCasing(player, ejector, bullet, stack); + } } if(type == AnimType.CYCLE) { if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java index 8b8247ac3..72b12c03d 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java @@ -95,6 +95,14 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { GL11.glPopMatrix(); } + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glScaled(0.75, 0.75, 0.75); + GL11.glTranslated(0, 1, 3); + + } + @Override protected void setupInv(ItemStack stack) { super.setupInv(stack); From 36a02151bcb0591a3c3ec941cf8e4b38ddd1ca8b Mon Sep 17 00:00:00 2001 From: Boblet Date: Tue, 24 Sep 2024 16:13:39 +0200 Subject: [PATCH 16/63] sure whatever --- changelog | 8 +++++++- gradle.properties | 10 ++++++++++ src/main/java/com/hbm/explosion/ExplosionTom.java | 10 +++++----- .../hbm/tileentity/network/TileEntityCraneGrabber.java | 8 +++++--- src/main/java/com/hbm/util/EntityDamageUtil.java | 5 +++-- 5 files changed, 30 insertions(+), 11 deletions(-) diff --git a/changelog b/changelog index 2d40670a6..9786bc247 100644 --- a/changelog +++ b/changelog @@ -1,3 +1,9 @@ ## Changed +* Updated russian and chinese localization * The fine soot recipe in the pyrolysis oven now only needs 4 tar -* Overdrive upgrades now use fullerite instead of lithium crystals \ No newline at end of file +* Overdrive upgrades now use fullerite instead of lithium crystals +* Machines now only send their sync packets once a second instead of once per tick if the values haven't changed, reducing network traffic by a considerable amount +* Tom's explosion no longer causes any block updates on the millions of blocks it deletes which hopefully fixes a majority of the lag caused by the crater + +## Fixed +* The conveyor grabber should no longer skip over items when used in long lines \ No newline at end of file diff --git a/gradle.properties b/gradle.properties index 4509b36fe..d0028d08c 100644 --- a/gradle.properties +++ b/gradle.properties @@ -20,6 +20,15 @@ credits=HbMinecraft,\ \ Pashtet (russian localization),\ \ Bismarck (chinese localization),\ \ Creeper-banner (chinese localization),\ + \ 5467864 (chinese localization),\ + \ eeeeee0a (chinese localization),\ + \ hz0909adc (chinese localization),\ + \ LSKLW (chinese localization),\ + \ R-Kaenbyou (chinese localization),\ + \ scp-000000000 (chinese localization),\ + \ UnnameTokiko (chinese localization),\ + \ Herobrine 457985 (chinese localization),\ + \ xxwinhere (chinese localization),\ \ Maksymisio (polish localization)\ \ el3ctro4ndre (italian localization),\ \ Pu-238 (Tom impact effects),\ @@ -39,6 +48,7 @@ credits=HbMinecraft,\ \ Voxelstice (OpenComputers integration, turbine spinup),\ \ BallOfEnergy1 (OpenComputers integration),\ \ sdddddf80 (recipe configs, chinese localization, custom machine holograms),\ + \ Abel1502 (optimization, crate upgrade recipes),\ \ SuperCraftAlex (tooltips)\ \ Ice-Arrow (research reactor tweaks),\ \ 245tt (anvil GUI improvements),\ diff --git a/src/main/java/com/hbm/explosion/ExplosionTom.java b/src/main/java/com/hbm/explosion/ExplosionTom.java index bd049ed6e..21ae8f7cd 100644 --- a/src/main/java/com/hbm/explosion/ExplosionTom.java +++ b/src/main/java/com/hbm/explosion/ExplosionTom.java @@ -106,14 +106,14 @@ public class ExplosionTom { while(y > threshold) { - if(y == 0) - break; + if(y == 0) break; + if(y <= craterFloor) { if(worldObj.rand.nextInt(499) < 1) { - worldObj.setBlock(pX, y, pZ, ModBlocks.ore_tektite_osmiridium); + worldObj.setBlock(pX, y, pZ, ModBlocks.ore_tektite_osmiridium, 0, 2); } else { - worldObj.setBlock(pX, y, pZ, ModBlocks.tektite); + worldObj.setBlock(pX, y, pZ, ModBlocks.tektite, 0, 2); } } else { @@ -130,7 +130,7 @@ public class ExplosionTom { } } } - worldObj.setBlockToAir(pX, y, pZ); + worldObj.setBlock(pX, y, pZ, Blocks.air, 0, 2); } } else { for(int i = -2; i < 3; i++) { diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java b/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java index b5bf3c2d0..96af1dbc2 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityCraneGrabber.java @@ -135,15 +135,17 @@ public class TileEntityCraneGrabber extends TileEntityCraneBase implements IGUIP NBTTagCompound data = new NBTTagCompound(); - this.writeToNBT(data); + data.setBoolean("isWhitelist", isWhitelist); + this.matcher.writeToNBT(data); this.networkPack(data, 15); } } public void networkUnpack(NBTTagCompound nbt) { super.networkUnpack(nbt); - - this.readFromNBT(nbt); + this.isWhitelist = nbt.getBoolean("isWhitelist"); + this.matcher.modes = new String[matcher.modes.length]; + this.matcher.readFromNBT(nbt); } public boolean matchesFilter(ItemStack stack) { diff --git a/src/main/java/com/hbm/util/EntityDamageUtil.java b/src/main/java/com/hbm/util/EntityDamageUtil.java index 137256643..b6344e4e0 100644 --- a/src/main/java/com/hbm/util/EntityDamageUtil.java +++ b/src/main/java/com/hbm/util/EntityDamageUtil.java @@ -7,6 +7,7 @@ import net.minecraft.enchantment.EnchantmentHelper; import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.passive.EntityTameable; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.potion.Potion; import net.minecraft.util.DamageSource; @@ -104,8 +105,8 @@ public class EntityDamageUtil { if(entity instanceof EntityPlayer) { living.recentlyHit = 100; living.attackingPlayer = (EntityPlayer) entity; - } else if(entity instanceof net.minecraft.entity.passive.EntityTameable) { - net.minecraft.entity.passive.EntityTameable entitywolf = (net.minecraft.entity.passive.EntityTameable) entity; + } else if(entity instanceof EntityTameable) { + EntityTameable entitywolf = (EntityTameable) entity; if(entitywolf.isTamed()) { living.recentlyHit = 100; From 1d92bcbf138f34c615bb90707a7749be5a089d00 Mon Sep 17 00:00:00 2001 From: Bob Date: Tue, 24 Sep 2024 23:53:14 +0200 Subject: [PATCH 17/63] ball and powder torture --- src/main/java/com/hbm/items/ModItems.java | 7 + .../hbm/items/weapon/sedna/BulletConfig.java | 5 + .../weapon/sedna/factory/GunFactory.java | 49 +- .../sedna/factory/GunFactoryClient.java | 8 + .../weapon/sedna/factory/Orchestras.java | 70 + .../sedna/factory/XFactoryBlackPowder.java | 68 + src/main/java/com/hbm/main/ClientProxy.java | 3 - .../java/com/hbm/main/ResourceManager.java | 4 + .../com/hbm/render/anim/AnimationLoader.java | 4 +- .../hbm/render/anim/BusAnimationKeyframe.java | 13 +- .../hbm/render/anim/BusAnimationSequence.java | 33 +- .../weapon/sedna/ItemRenderPepperbox.java | 129 + .../java/com/hbm/util/EntityDamageUtil.java | 18 + .../assets/hbm/models/weapons/pepperbox.obj | 6221 +++++++++-------- src/main/resources/assets/hbm/sounds.json | 2 + .../hbm/sounds/weapon/fire/blackPowder.ogg | Bin 0 -> 17929 bytes .../textures/items/ammo_standard.stone.png | Bin 0 -> 276 bytes .../textures/items/ammo_standard.stone_ap.png | Bin 0 -> 274 bytes .../items/ammo_standard.stone_shot.png | Bin 0 -> 248 bytes .../hbm/textures/models/weapons/pepperbox.png | Bin 3118 -> 2729 bytes 20 files changed, 3510 insertions(+), 3124 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java create mode 100644 src/main/resources/assets/hbm/sounds/weapon/fire/blackPowder.ogg create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.stone.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.stone_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.stone_shot.png diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 562f86c53..f14c4b01a 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1610,6 +1610,10 @@ public class ModItems { public static Item gun_debug; public static Item ammo_debug; + public static Item gun_pepperbox; + + public static Item ammo_standard; + public static Item crucible; public static Item stick_dynamite; @@ -6994,6 +6998,9 @@ public class ModItems { GameRegistry.registerItem(gun_debug, gun_debug.getUnlocalizedName()); GameRegistry.registerItem(ammo_debug, ammo_debug.getUnlocalizedName()); + GameRegistry.registerItem(gun_pepperbox, gun_pepperbox.getUnlocalizedName()); + GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); + //Ammo GameRegistry.registerItem(gun_b92_ammo, gun_b92_ammo.getUnlocalizedName()); GameRegistry.registerItem(gun_xvl1456_ammo, gun_xvl1456_ammo.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index 909e5cb50..acfcc783c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -6,6 +6,8 @@ import java.util.function.BiConsumer; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.inventory.RecipesCommon.ComparableStack; +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.particle.SpentCasing; import net.minecraft.item.Item; @@ -25,6 +27,7 @@ public class BulletConfig { public int projectilesMax = 1; public float damageMult = 1.0F; + public float armorPiercingPercent = 0.0F; public float headshotMult = 1.0F; public float ricochetAngle = 5F; @@ -43,12 +46,14 @@ public class BulletConfig { } public BulletConfig setItem(Item ammo) { this.ammo = new ComparableStack(ammo); return this; } + public BulletConfig setItem(EnumAmmo ammo) { this.ammo = new ComparableStack(ModItems.ammo_standard, 1, ammo.ordinal()); return this; } public BulletConfig setReloadCount(int ammoReloadCount) { this.ammoReloadCount = ammoReloadCount; return this; } public BulletConfig setVel(float velocity) { this.velocity = velocity; return this; } public BulletConfig setSpread(float spread) { this.spread = spread; return this; } public BulletConfig setWear(float wear) { this.wear = wear; return this; } public BulletConfig setProjectiles(int min, int max) { this.projectilesMin = min; this.projectilesMax = max; return this; } public BulletConfig setDamage(float damageMult) { this.damageMult = damageMult; return this; } + public BulletConfig setArmorPiercing(float armorPiercingPercent) { this.armorPiercingPercent = armorPiercingPercent; return this; } public BulletConfig setHeadshot(float headshotMult) { this.headshotMult = headshotMult; return this; } public BulletConfig setRicochetAngle(float angle) { this.ricochetAngle = angle; return this; } public BulletConfig setRicochetCount(int count) { this.maxRicochetCount = count; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index d263aed23..7c80b3a52 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -1,26 +1,20 @@ package com.hbm.items.weapon.sedna.factory; -import java.util.function.BiConsumer; - import com.hbm.handler.CasingEjector; +import com.hbm.items.ItemEnumMulti; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; -import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; -import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.lib.RefStrings; import com.hbm.main.MainRegistry; import com.hbm.particle.SpentCasing; import com.hbm.particle.SpentCasing.CasingType; -import com.hbm.render.anim.HbmAnimations.AnimType; -import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; -import net.minecraft.item.ItemStack; public class GunFactory { @@ -33,6 +27,7 @@ public class GunFactory { /// AMMO ITEMS /// ModItems.ammo_debug = new Item().setUnlocalizedName("ammo_debug").setTextureName(RefStrings.MODID + ":ammo_45"); + ModItems.ammo_standard = new ItemEnumMulti(EnumAmmo.class, true, true).setUnlocalizedName("ammo_standard").setTextureName(RefStrings.MODID + ":ammo_standard"); /// BULLLET CFGS /// ammo_debug = new BulletConfig().setItem(ModItems.ammo_debug).setSpread(0.01F).setRicochetAngle(45).setCasing(CASING44.clone().register("DEBUG0")); @@ -40,7 +35,7 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(DEBUG_ORCHESTRA) + .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) @@ -50,40 +45,16 @@ public class GunFactory { .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) .anim(Lego.LAMBDA_DEBUG_ANIMS) ).setUnlocalizedName("gun_debug").setTextureName(RefStrings.MODID + ":gun_darter"); + + XFactoryBlackPowder.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); } - public static BiConsumer DEBUG_ORCHESTRA = (stack, ctx) -> { - EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); - - if(type == AnimType.RELOAD) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); - if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); - if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); - if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); - - if(timer == 20) { - Receiver rec = ctx.config.getReceivers(stack)[0]; - IMagazine mag = rec.getMagazine(stack); - CasingEjector ejector = rec.getEjector(stack); - BulletConfig bullet = (BulletConfig) mag.getType(stack); - for(int i = 0; i < mag.getCapacity(stack); i++) ItemGunBaseNT.trySpawnCasing(player, ejector, bullet, stack); - } - } - if(type == AnimType.CYCLE) { - if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); - } - if(type == AnimType.CYCLE_DRY) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); - if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); - } - if(type == AnimType.INSPECT) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); - if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); - } - }; + public static enum EnumAmmo { + STONE, + STONE_AP, + STONE_SHOT, + } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index f5b50fa2b..8d584f367 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -7,12 +7,20 @@ import java.util.function.BiConsumer; import org.lwjgl.opengl.GL11; import com.hbm.entity.projectile.EntityBulletBaseMK4; +import com.hbm.items.ModItems; +import com.hbm.render.item.weapon.sedna.ItemRenderDebug; +import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; import net.minecraft.client.renderer.Tessellator; +import net.minecraftforge.client.MinecraftForgeClient; public class GunFactoryClient { public static void init() { + //GUNS + MinecraftForgeClient.registerItemRenderer(ModItems.gun_debug, new ItemRenderDebug()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_pepperbox, new ItemRenderPepperbox()); + //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java new file mode 100644 index 000000000..e9b6b5962 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -0,0 +1,70 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiConsumer; + +import com.hbm.handler.CasingEjector; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.mags.IMagazine; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; + +public class Orchestras { + + public static BiConsumer DEBUG_ORCHESTRA = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + + if(timer == 20) { + Receiver rec = ctx.config.getReceivers(stack)[0]; + IMagazine mag = rec.getMagazine(stack); + CasingEjector ejector = rec.getEjector(stack); + BulletConfig bullet = (BulletConfig) mag.getType(stack); + for(int i = 0; i < mag.getCapacity(stack); i++) ItemGunBaseNT.trySpawnCasing(player, ejector, bullet, stack); + } + } + if(type == AnimType.CYCLE) { + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; + + public static BiConsumer ORCHESTRA_PEPPERBOX = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 20) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 55) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverSpin", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 21) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverSpin", 1F, 1F); + } + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java new file mode 100644 index 000000000..d783d5810 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -0,0 +1,68 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactoryBlackPowder { + + public static void init() { + + BulletConfig stone = new BulletConfig().setItem(EnumAmmo.STONE).setSpread(0.025F).setRicochetAngle(15); + BulletConfig flint = new BulletConfig().setItem(EnumAmmo.STONE_AP).setSpread(0.01F).setRicochetAngle(5); + BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.2F); + + ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(4).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .rec(new Receiver(0) + .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, shot)) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) + .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) + .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) + .anim(LAMBDA_PEPPERBOX_ANIMS) + ).setUnlocalizedName("gun_pepperbox").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_PEPPERBOX_ANIMS = (stack, type) -> { + switch(type) { + case CYCLE: return new BusAnimation() + .addBus("ROTATE", new BusAnimationSequence().addPos(0, 0, 0, 1025).addPos(60, 0, 0, 250)) + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(45, 0, 0, 150, IType.SIN_DOWN).addPos(45, 0, 0, 50).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("HAMMER", new BusAnimationSequence().addPos(80, 0, 0, 25).addPos(80, 0, 0, 1000).addPos(0, 0, 0, 250)) + .addBus("TRIGGER", new BusAnimationSequence().addPos(1, 0, 0, 25).addPos(1, 0, 0, 250).addPos(0, 0, 0, 100)); + case CYCLE_DRY: return new BusAnimation() + .addBus("ROTATE", new BusAnimationSequence().addPos(0, 0, 0, 525).addPos(60, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(80, 0, 0, 25).addPos(80, 0, 0, 500).addPos(0, 0, 0, 250)) + .addBus("TRIGGER", new BusAnimationSequence().addPos(1, 0, 0, 25).addPos(1, 0, 0, 250).addPos(0, 0, 0, 100)); + case EQUIP: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(-45, 0, 0, 0).addPos(0, 0, 0, 200, IType.SIN_DOWN)); + case RELOAD: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(90, 0, 0, 500, IType.SIN_FULL).addPos(90, 0, 0, 1600).addPos(0, 0, 0, 500, IType.SIN_FULL).addPos(-5, 0, 0, 200, IType.SIN_UP).addPos(0, 0, 0, 200, IType.SIN_DOWN)) + .addBus("TRANSLATE", new BusAnimationSequence().addPos(0, -12, 5, 500, IType.SIN_FULL).addPos(0, -12, 5, 700).addPos(0, -13, 5, 200).addPos(0, -12, 5, 200).addPos(0, -12, 5, 500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("LOADER", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 5, -5, 0).addPos(0, 0, -0.1, 500, IType.SIN_FULL).addPos(0, 0, -1, 200).addPos(0, 0, -1, 200).addPos(0, 0, -0.1, 200).addPos(0, 5, -5, 500, IType.SIN_FULL).addPos(0, 0, 0, 0)) + .addBus("ROTATE", new BusAnimationSequence().addPos(0, 0, 0, 2600).addPos(-360 * 1, 0, 0, 750, IType.SIN_FULL)) + .addBus("SHOT", new BusAnimationSequence().addPos(1, 0, 0, 1400).addPos(0, 0, 0, 0)); + case INSPECT: return new BusAnimation() + .addBus("ROTATE", new BusAnimationSequence().addPos(-360 * 1, 0, 0, 750, IType.SIN_FULL)) + .addBus("RECOIL", new BusAnimationSequence().addPos(-5, 0, 0, 200, IType.SIN_UP).addPos(0, 0, 0, 200, IType.SIN_DOWN)); + case JAMMED: break; + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 98114e26c..27ddf61d2 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -105,7 +105,6 @@ import com.hbm.render.item.*; import com.hbm.render.item.ItemRenderMissileGeneric.RenderMissileType; import com.hbm.render.item.block.*; import com.hbm.render.item.weapon.*; -import com.hbm.render.item.weapon.sedna.*; import com.hbm.render.loader.HmfModelLoader; import com.hbm.render.model.ModelPigeon; import com.hbm.render.tileentity.*; @@ -608,8 +607,6 @@ public class ClientProxy extends ServerProxy { MinecraftForgeClient.registerItemRenderer(ModItems.gun_coilgun, new ItemRenderWeaponCoilgun()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_cryocannon, new ItemRenderWeaponCryoCannon()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_congolake, new ItemRenderWeaponCongo()); - //SEDNA - MinecraftForgeClient.registerItemRenderer(ModItems.gun_debug, new ItemRenderDebug()); //multitool MinecraftForgeClient.registerItemRenderer(ModItems.multitool_dig, new ItemRenderMultitool()); MinecraftForgeClient.registerItemRenderer(ModItems.multitool_silk, new ItemRenderMultitool()); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 285cd917e..3ac8dcb38 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -845,6 +845,8 @@ public class ResourceManager { public static final IModelCustom congolake = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/congolake.obj")).asVBO(); public static final IModelCustom lilmac = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/lilmac.obj")).asVBO(); + public static final IModelCustom pepperbox = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/pepperbox.obj")).asVBO(); + public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); public static final HashMap novac_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/novac.json")); @@ -953,7 +955,9 @@ public class ResourceManager { public static final ResourceLocation congolake_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/congolake.png"); public static final ResourceLocation lilmac_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lilmac.png"); public static final ResourceLocation lilmac_scope_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lilmac_scope.png"); + public static final ResourceLocation debug_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/debug_gun.png"); + public static final ResourceLocation pepperbox_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/pepperbox.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/anim/AnimationLoader.java b/src/main/java/com/hbm/render/anim/AnimationLoader.java index 4ad0edb6a..048663b88 100644 --- a/src/main/java/com/hbm/render/anim/AnimationLoader.java +++ b/src/main/java/com/hbm/render/anim/AnimationLoader.java @@ -14,7 +14,7 @@ import com.google.gson.JsonArray; import net.minecraft.client.Minecraft; import net.minecraft.util.ResourceLocation; -import com.hbm.render.anim.BusAnimationKeyframe.InterpolationType; +import com.hbm.render.anim.BusAnimationKeyframe.IType; import com.hbm.render.anim.BusAnimationSequence.Dimension; public class AnimationLoader { @@ -143,7 +143,7 @@ public class AnimationLoader { double value = array.get(0).getAsDouble(); int duration = array.get(1).getAsInt(); - InterpolationType interpolation = array.size() >= 3 ? InterpolationType.valueOf(array.get(2).getAsString()) : InterpolationType.LINEAR; + IType interpolation = array.size() >= 3 ? IType.valueOf(array.get(2).getAsString()) : IType.LINEAR; return new BusAnimationKeyframe(value, duration, interpolation); } diff --git a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java index 6833652dd..e04fa11a2 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java @@ -6,20 +6,23 @@ public class BusAnimationKeyframe { //whether the next frame "snaps" to the intended value or has interpolation //it's an enum so stuff like accelerated animations between just //two frames could be implemented - public static enum InterpolationType { + public static enum IType { CONSTANT, - LINEAR + LINEAR, + SIN_UP, + SIN_DOWN, + SIN_FULL, } public double value; - public InterpolationType interpolationType; + public IType interpolationType; public int duration; //this one can be used for "reset" type keyframes public BusAnimationKeyframe() { this.value = 0; this.duration = 1; - this.interpolationType = InterpolationType.LINEAR; + this.interpolationType = IType.LINEAR; } public BusAnimationKeyframe(double value, int duration) { @@ -28,7 +31,7 @@ public class BusAnimationKeyframe { this.duration = duration; } - public BusAnimationKeyframe(double value, int duration, InterpolationType interpolation) { + public BusAnimationKeyframe(double value, int duration, IType interpolation) { this(value, duration); this.interpolationType = interpolation; } diff --git a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java index 00c8ab137..0a08dad9d 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java @@ -3,7 +3,7 @@ package com.hbm.render.anim; import java.util.ArrayList; import java.util.List; -import com.hbm.render.anim.BusAnimationKeyframe.InterpolationType; +import com.hbm.render.anim.BusAnimationKeyframe.IType; //the actual bus, a sequence of keyframes with their own behavior and such public class BusAnimationSequence { @@ -50,10 +50,12 @@ public class BusAnimationSequence { // Two helper methods for the old hard-coded animations public BusAnimationSequence addPos(double x, double y, double z, int duration) { - addKeyframe(Dimension.TX, new BusAnimationKeyframe(x, duration)); - addKeyframe(Dimension.TY, new BusAnimationKeyframe(y, duration)); - addKeyframe(Dimension.TZ, new BusAnimationKeyframe(z, duration)); - + return addPos(x, y, z, duration, IType.LINEAR); + } + public BusAnimationSequence addPos(double x, double y, double z, int duration, IType type) { + addKeyframe(Dimension.TX, new BusAnimationKeyframe(x, duration, type)); + addKeyframe(Dimension.TY, new BusAnimationKeyframe(y, duration, type)); + addKeyframe(Dimension.TZ, new BusAnimationKeyframe(z, duration, type)); return this; } @@ -61,7 +63,6 @@ public class BusAnimationSequence { addKeyframe(Dimension.RX, new BusAnimationKeyframe(x, duration)); addKeyframe(Dimension.RY, new BusAnimationKeyframe(y, duration)); addKeyframe(Dimension.RZ, new BusAnimationKeyframe(z, duration)); - return this; } @@ -77,33 +78,33 @@ public class BusAnimationSequence { int startTime = 0; int endTime = 0; - for (BusAnimationKeyframe keyframe: keyframes) { + for(BusAnimationKeyframe keyframe : keyframes) { startTime = endTime; endTime += keyframe.duration; previousFrame = currentFrame; currentFrame = keyframe; - if (millis < endTime) break; + if(millis < endTime) break; } - if (currentFrame == null) { + if(currentFrame == null) { // Scale defaults to 1, others are 0 transform[i] = i >= 6 ? 1 : 0; continue; } - if (millis >= endTime) { + if(millis >= endTime) { transform[i] = currentFrame.value; continue; } - if (previousFrame != null && previousFrame.interpolationType == InterpolationType.CONSTANT) { + if(previousFrame != null && previousFrame.interpolationType == IType.CONSTANT) { transform[i] = previousFrame.value; continue; } double a = currentFrame.value; double b = previousFrame != null ? previousFrame.value : 0; - double t = (double)(millis - startTime) / (double)currentFrame.duration; + double t = interpolate(startTime, millis, currentFrame.duration, currentFrame.interpolationType); transform[i] = (a - b) * t + b; } @@ -115,6 +116,14 @@ public class BusAnimationSequence { return transform; } + public double interpolate(double start, double end, double duration, IType interp) { + if(interp == IType.LINEAR) return (end - start) / duration; + if(interp == IType.SIN_UP) return -Math.sin(((end - start) / duration * Math.PI + Math.PI) / 2) + 1; + if(interp == IType.SIN_DOWN) return Math.sin((end - start) / duration * Math.PI / 2); + if(interp == IType.SIN_FULL) return (-Math.cos((end - start) / duration * Math.PI) + 1) / 2D; + return end - start; + } + public int getTotalTime() { int highestTime = 0; diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java new file mode 100644 index 000000000..0c4dd80a6 --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java @@ -0,0 +1,129 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderPepperbox extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 1.5); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.25F * offset, -0.75F * offset, 1F * offset, + 0, -2.5 / 8D, 0.5); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + + double scale = 0.25D; + GL11.glScaled(scale, scale, scale); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] cylinder = HbmAnimations.getRelevantTransformation("ROTATE"); + double[] hammer = HbmAnimations.getRelevantTransformation("HAMMER"); + double[] trigger = HbmAnimations.getRelevantTransformation("TRIGGER"); + double[] translate = HbmAnimations.getRelevantTransformation("TRANSLATE"); + double[] loader = HbmAnimations.getRelevantTransformation("LOADER"); + double[] shot = HbmAnimations.getRelevantTransformation("SHOT"); + + GL11.glTranslated(translate[0], translate[1], translate[2]); + + GL11.glTranslated(0, 0, -5); + GL11.glRotated(recoil[0], -1, 0, 0); + GL11.glTranslated(0, 0, 5); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.5, 7); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.5D); + GL11.glPopMatrix(); + + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.pepperbox_tex); + + if(loader[0] != 0 || loader[1] != 0 || loader[2] != 0) { + GL11.glPushMatrix(); + GL11.glTranslated(loader[0], loader[1], loader[2]); + ResourceManager.pepperbox.renderPart("Speedloader"); + if(shot[0] != 0) ResourceManager.pepperbox.renderPart("Shot"); + GL11.glPopMatrix(); + } + + ResourceManager.pepperbox.renderPart("Grip"); + + GL11.glPushMatrix(); + GL11.glRotated(cylinder[0], 0, 0, 1); + ResourceManager.pepperbox.renderPart("Cylinder"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.375, -1.875); + GL11.glRotated(hammer[0], 1, 0, 0); + GL11.glTranslated(0, -0.375, 1.875); + ResourceManager.pepperbox.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, -trigger[0] * 0.5); + ResourceManager.pepperbox.renderPart("Trigger"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.5, 7); + GL11.glScaled(0.5, 0.5, 0.5); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + this.renderMuzzleFlash(gun.lastShot); + GL11.glRotated(45, 1, 0, 0); + this.renderMuzzleFlash(gun.lastShot); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.5D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(0.5, 0.5, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.pepperbox_tex); + ResourceManager.pepperbox.renderPart("Grip"); + ResourceManager.pepperbox.renderPart("Cylinder"); + ResourceManager.pepperbox.renderPart("Hammer"); + ResourceManager.pepperbox.renderPart("Trigger"); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/util/EntityDamageUtil.java b/src/main/java/com/hbm/util/EntityDamageUtil.java index b6344e4e0..1e5b3a623 100644 --- a/src/main/java/com/hbm/util/EntityDamageUtil.java +++ b/src/main/java/com/hbm/util/EntityDamageUtil.java @@ -53,6 +53,24 @@ public class EntityDamageUtil { } } + public static float getDamageAfterTax(EntityLivingBase living, DamageSource source, float amount) { + amount = ForgeHooks.onLivingHurt(living, source, amount); + if(amount <= 0) return 0; + amount = applyArmorCalculations(living, source, amount); + return amount; + } + + public static boolean attackArmorPiercing(EntityLivingBase living, DamageSource sourceDamageCalc, DamageSource sourceArmorPiercing, float amount, float piercing) { + if(piercing <= 0) return living.attackEntityFrom(sourceDamageCalc, amount); + //damage intended to pass the armor + float afterTax = getDamageAfterTax(living, sourceDamageCalc, amount); + //damage removed by the calculation + float reduced = Math.max(amount - afterTax, 0F); + //damage that would pass + damage tthat wouldn't pass * AP percentage + return living.attackEntityFrom(sourceArmorPiercing, Math.max(afterTax + (reduced * piercing), 0F)); + + } + /** Currently just a copy of the vanilla damage code */ public static boolean attackEntityFromNT(EntityLivingBase living, DamageSource source, float amount) { diff --git a/src/main/resources/assets/hbm/models/weapons/pepperbox.obj b/src/main/resources/assets/hbm/models/weapons/pepperbox.obj index a138f7e89..5682c46c4 100644 --- a/src/main/resources/assets/hbm/models/weapons/pepperbox.obj +++ b/src/main/resources/assets/hbm/models/weapons/pepperbox.obj @@ -1,6 +1,6 @@ # Blender v2.79 (sub 0) OBJ File: 'pepperbox.blend' # www.blender.org -o Circle +o Cylinder v 0.000000 0.125000 7.000000 v -0.088388 0.088388 7.000000 v -0.125000 -0.000000 7.000000 @@ -161,658 +161,6 @@ v -0.270633 0.156250 6.000000 v -0.251902 0.298529 6.000000 v -0.339262 0.412380 6.000000 v -0.481541 0.431111 6.000000 -v 0.000000 1.000000 0.000000 -v -0.500000 0.866025 0.000000 -v -0.866025 0.500000 0.000000 -v -1.000000 -0.000000 -0.000000 -v -0.866025 -0.500000 -0.000000 -v -0.500000 -0.866025 -0.000000 -v 0.000000 -1.000000 -0.000000 -v 0.500000 -0.866026 -0.000000 -v 0.866025 -0.500000 -0.000000 -v 1.000000 -0.000000 -0.000000 -v 0.866026 0.499999 0.000000 -v 0.500000 0.866025 0.000000 -v -0.500000 0.866025 -0.500000 -v 0.000000 1.000000 -0.500000 -v -0.866025 0.500000 -0.500000 -v -1.000000 -0.000000 -0.500000 -v -0.866025 -0.500000 -0.500000 -v -0.500000 -0.866025 -0.500000 -v 0.000000 -1.000000 -0.500000 -v 0.500000 -0.866026 -0.500000 -v 0.866025 -0.500000 -0.500000 -v 1.000000 -0.000000 -0.500000 -v 0.866026 0.500000 -0.500000 -v 0.500000 0.866025 -0.500000 -v 0.875000 -0.875000 -0.125000 -v 0.875000 0.125000 -0.125000 -v 0.875000 -0.875000 -0.375000 -v 0.875000 0.125000 -0.375000 -v 1.125000 -0.875000 -0.125000 -v 1.125000 -0.125000 -0.125000 -v 1.125000 -0.875000 -0.375000 -v 1.125000 -0.125000 -0.375000 -v -1.125000 -0.125000 -0.125000 -v 0.875000 -1.125000 -0.125000 -v -1.125000 -0.875000 -0.125000 -v 1.125000 -1.125000 -0.125000 -v 0.875000 -0.875000 6.125000 -v 1.125000 -0.875000 6.125000 -v 0.875000 -1.125000 6.125000 -v 1.125000 -1.125000 6.125000 -v 0.875000 -0.875000 6.375000 -v 1.125000 -0.875000 6.375000 -v -1.125000 -0.125000 -0.375000 -v -1.125000 -0.875000 -0.375000 -v 0.875000 0.625000 6.125000 -v 1.125000 0.625000 6.125000 -v 0.875000 0.625000 6.375000 -v 1.125000 0.625000 6.375000 -v 0.625000 0.875000 6.125000 -v 0.625000 0.875000 6.375000 -v -0.625000 0.875000 6.125000 -v -0.625000 0.875000 6.375000 -v 0.625000 1.125000 6.125000 -v 0.625000 1.125000 6.375000 -v -0.625000 1.125000 6.125000 -v -0.625000 1.125000 6.375000 -v -0.875000 -0.875000 -0.125000 -v -0.875000 0.125000 -0.125000 -v -0.875000 -0.875000 -0.375000 -v -0.875000 0.125000 -0.375000 -v -1.125000 -1.125000 -0.125000 -v -0.875000 -1.125000 -0.125000 -v -1.125000 -0.875000 6.125000 -v -0.875000 -0.875000 6.125000 -v -1.125000 -1.125000 6.125000 -v -0.875000 -1.125000 6.125000 -v -1.125000 -0.875000 6.375000 -v -0.875000 -0.875000 6.375000 -v -1.125000 0.625000 6.125000 -v -0.875000 0.625000 6.125000 -v -1.125000 0.625000 6.375000 -v -0.875000 0.625000 6.375000 -v -0.875000 -0.375000 -0.500000 -v 0.875000 -0.375000 -0.500000 -v -0.875000 0.375000 -0.500000 -v 0.875000 0.375000 -0.500000 -v -0.375000 0.875000 -0.500000 -v -0.375000 -0.875000 -0.500000 -v 0.375000 0.875000 -0.500000 -v 0.375000 -0.875000 -0.500000 -v -0.875000 -0.375000 -3.000000 -v 0.875000 -0.375000 -3.000000 -v -0.875000 0.375000 -3.000000 -v 0.875000 0.375000 -3.000000 -v -0.375000 0.875000 -3.000000 -v -0.375000 -0.875000 -3.000000 -v 0.375000 0.875000 -3.000000 -v 0.375000 -0.875000 -3.000000 -v -0.875000 -1.625000 -4.875000 -v 0.875000 -1.625000 -4.875000 -v -0.875000 -0.875000 -5.250000 -v 0.875000 -0.875000 -5.250000 -v -0.375000 -0.375000 -5.500000 -v -0.375000 -2.125000 -4.625000 -v 0.375000 -0.375000 -5.500000 -v 0.375000 -2.125000 -4.625000 -v -0.875000 -2.875000 -5.750000 -v 0.875000 -2.875000 -5.750000 -v -0.875000 -2.125000 -6.500000 -v 0.875000 -2.125000 -6.500000 -v -0.375000 -1.625000 -7.000000 -v -0.375000 -3.375000 -5.250000 -v 0.375000 -1.625000 -7.000000 -v 0.375000 -3.375000 -5.250000 -v 0.875000 0.250000 -0.500000 -v 1.000000 0.250000 -0.500000 -v 0.875000 0.250000 -1.000000 -v 1.000000 0.250000 -1.000000 -v 0.875000 0.375000 -1.000000 -v 0.875000 0.375000 -0.500000 -v 1.000000 0.375000 -0.500000 -v 1.000000 0.375000 -1.000000 -v 0.625000 0.375000 -2.125000 -v 0.625000 0.551777 -2.051777 -v 0.625000 0.625000 -1.875000 -v 0.625000 0.551777 -1.698223 -v 0.625000 0.375000 -1.625000 -v 0.625000 0.198223 -1.698223 -v 0.625000 0.125000 -1.875000 -v 0.625000 0.198223 -2.051777 -v 1.000000 0.375000 -2.125000 -v 1.000000 0.551777 -2.051777 -v 1.000000 0.625000 -1.875000 -v 1.000000 0.551777 -1.698223 -v 1.000000 0.375000 -1.625000 -v 1.000000 0.198223 -1.698223 -v 1.000000 0.125000 -1.875000 -v 1.000000 0.198223 -2.051777 -v 0.906250 0.500000 -1.750000 -v 0.968750 0.500000 -1.750000 -v 0.906250 0.500000 -2.000000 -v 0.968750 0.500000 -2.000000 -v 0.906250 1.375000 -1.750000 -v 0.968750 1.375000 -1.750000 -v 0.906250 1.375000 -2.000000 -v 0.968750 1.375000 -2.000000 -v 0.906250 1.500000 -2.000000 -v 0.906250 1.500000 -1.625000 -v 0.968750 1.500000 -1.625000 -v 0.968750 1.500000 -2.000000 -v -0.875000 0.250000 -0.500000 -v -1.000000 0.250000 -0.500000 -v -0.875000 0.250000 -1.000000 -v -1.000000 0.250000 -1.000000 -v -0.875000 0.375000 -1.000000 -v -0.875000 0.375000 -0.500000 -v -1.000000 0.375000 -0.500000 -v -1.000000 0.375000 -1.000000 -v -0.125000 -0.875000 -1.250000 -v 0.125000 -0.875000 -1.250000 -v -0.125000 -0.875000 -1.500000 -v 0.125000 -0.875000 -1.500000 -v -0.125000 -1.250000 -1.250000 -v 0.125000 -1.250000 -1.250000 -v -0.125000 -1.250000 -1.500000 -v 0.125000 -1.250000 -1.500000 -v -0.125000 -2.000000 -1.750000 -v 0.125000 -2.000000 -1.750000 -v 0.125000 -1.500000 -1.750000 -v -0.125000 -1.500000 -1.750000 -v 0.125000 -2.000000 -1.000000 -v -0.125000 -2.000000 -1.000000 -v 0.125000 -1.500000 -1.000000 -v -0.125000 -1.500000 -1.000000 -v -0.125000 -1.500000 -0.875000 -v -0.125000 -1.250000 -1.125000 -v 0.125000 -1.250000 -1.125000 -v 0.125000 -1.500000 -0.875000 -v -0.125000 -1.250000 -1.625000 -v -0.125000 -1.500000 -1.875000 -v 0.125000 -1.500000 -1.875000 -v 0.125000 -1.250000 -1.625000 -v -0.125000 -2.250000 -1.125000 -v -0.125000 -2.000000 -0.875000 -v 0.125000 -2.000000 -0.875000 -v 0.125000 -2.250000 -1.125000 -v 0.125000 -2.250000 -1.625000 -v 0.125000 -2.000000 -1.875000 -v -0.125000 -2.000000 -1.875000 -v -0.125000 -2.250000 -1.625000 -v -0.125000 -1.375000 -1.125000 -v 0.125000 -1.375000 -1.125000 -v -0.125000 -1.375000 -1.625000 -v 0.125000 -1.375000 -1.625000 -v -0.125000 -2.125000 -1.125000 -v 0.125000 -2.125000 -1.125000 -v 0.125000 -2.125000 -1.625000 -v -0.125000 -2.125000 -1.625000 -v -0.187500 0.875000 -0.562500 -v 0.187500 0.875000 -0.562500 -v -0.187500 0.875000 -0.937500 -v 0.187500 0.875000 -0.937500 -v -0.187500 1.375000 -0.812500 -v -0.187500 1.375000 -0.687500 -v 0.187500 1.375000 -0.687500 -v 0.187500 1.375000 -0.812500 -v -0.062500 1.375000 -0.687500 -v 0.062500 1.375000 -0.687500 -v 0.062500 1.375000 -0.812500 -v -0.062500 1.375000 -0.812500 -v -0.062500 1.125000 -0.625000 -v 0.062500 1.125000 -0.625000 -v 0.062500 1.125000 -0.875000 -v -0.062500 1.125000 -0.875000 -v 0.000000 0.875000 8.062500 -v -0.437500 0.757773 8.062500 -v -0.757772 0.437500 8.062500 -v -0.875000 -0.000000 8.062500 -v -0.757772 -0.437500 8.062500 -v -0.437500 -0.757773 8.062500 -v 0.000000 -0.875000 8.062500 -v 0.437500 -0.757773 8.062500 -v 0.757772 -0.437500 8.062500 -v 0.875000 -0.000000 8.062500 -v 0.757772 0.437500 8.062500 -v 0.437500 0.757773 8.062500 -v 0.000000 0.875000 8.312500 -v -0.437500 0.757773 8.312500 -v -0.757772 0.437500 8.312500 -v -0.875000 -0.000000 8.312500 -v -0.757772 -0.437500 8.312500 -v -0.437500 -0.757773 8.312500 -v 0.000000 -0.875000 8.312500 -v 0.437500 -0.757773 8.312500 -v 0.757772 -0.437500 8.312500 -v 0.875000 -0.000000 8.312500 -v 0.757772 0.437500 8.312500 -v 0.437500 0.757773 8.312500 -v 0.000000 0.500000 8.187500 -v -0.132583 0.500000 8.132584 -v -0.187500 0.500000 8.000000 -v -0.132583 0.500000 7.867418 -v 0.000000 0.500000 7.812500 -v 0.132583 0.500000 7.867418 -v 0.187500 0.500000 8.000000 -v 0.132583 0.500000 8.132584 -v 0.000000 0.367418 8.132584 -v 0.000000 0.312500 8.000000 -v 0.000000 0.367418 7.867418 -v 0.000000 0.632583 7.867418 -v 0.000000 0.687500 8.000000 -v 0.000000 0.632583 8.132584 -v 0.093750 0.406250 8.132584 -v 0.132583 0.367418 8.000000 -v 0.093750 0.406250 7.867418 -v -0.093750 0.593750 7.867418 -v -0.132583 0.632583 8.000000 -v -0.093750 0.593750 8.132584 -v 0.093750 0.593750 8.132584 -v 0.132583 0.632583 8.000000 -v 0.093750 0.593750 7.867418 -v -0.093750 0.406250 7.867418 -v -0.132583 0.367418 8.000000 -v -0.093750 0.406250 8.132584 -v 0.187500 -0.500000 8.000000 -v -0.187500 -0.500000 8.000000 -v 0.000000 -0.312500 8.000000 -v 0.000000 -0.687500 8.000000 -v -0.132583 -0.367418 8.000000 -v 0.132583 -0.632583 8.000000 -v -0.132583 -0.632583 8.000000 -v 0.132583 -0.367418 8.000000 -v 0.000000 -0.750000 8.000000 -v 0.176776 -0.676777 8.000000 -v 0.250000 -0.500000 8.000000 -v 0.176777 -0.323224 8.000000 -v 0.000000 -0.250000 8.000000 -v -0.176777 -0.323224 8.000000 -v -0.250000 -0.500000 8.000000 -v -0.176777 -0.676777 8.000000 -v 0.000000 -0.312500 8.062500 -v -0.132583 -0.367418 8.062500 -v 0.132583 -0.367418 8.062500 -v 0.187500 -0.500000 8.062500 -v 0.132583 -0.632583 8.062500 -v 0.000000 -0.687500 8.062500 -v -0.132583 -0.632583 8.062500 -v -0.187500 -0.500000 8.062500 -v 0.176776 -0.676777 8.062500 -v 0.000000 -0.750000 8.062500 -v 0.250000 -0.500000 8.062500 -v 0.176777 -0.323224 8.062500 -v 0.000000 -0.250000 8.062500 -v -0.176777 -0.323224 8.062500 -v -0.250000 -0.500000 8.062500 -v -0.176777 -0.676777 8.062500 -v 0.000000 0.250000 8.312500 -v -0.125000 0.216506 8.312500 -v -0.216506 0.125000 8.312500 -v -0.250000 0.000000 8.312500 -v -0.216506 -0.125000 8.312500 -v -0.125000 -0.216506 8.312500 -v 0.000000 -0.250000 8.312500 -v 0.125000 -0.216506 8.312500 -v 0.216506 -0.125000 8.312500 -v 0.250000 0.000000 8.312500 -v 0.216506 0.125000 8.312500 -v 0.125000 0.216506 8.312500 -v 0.000000 0.250000 8.812500 -v -0.125000 0.216506 8.812500 -v -0.216506 0.125000 8.812500 -v -0.250000 0.000000 8.812500 -v -0.216506 -0.125000 8.812500 -v -0.125000 -0.216506 8.812500 -v 0.000000 -0.250000 8.812500 -v 0.125000 -0.216506 8.812500 -v 0.216506 -0.125000 8.812500 -v 0.250000 0.000000 8.812500 -v 0.216506 0.125000 8.812500 -v 0.125000 0.216506 8.812500 -v 0.000000 0.625000 8.812500 -v -0.312500 0.541265 8.812500 -v -0.541266 0.312500 8.812500 -v -0.625000 0.000000 8.812500 -v -0.541266 -0.312500 8.812500 -v -0.312500 -0.541265 8.812500 -v 0.000000 -0.625000 8.812500 -v 0.312500 -0.541265 8.812500 -v 0.541265 -0.312500 8.812500 -v 0.625000 0.000000 8.812500 -v 0.541266 0.312500 8.812500 -v 0.312500 0.541265 8.812500 -v 0.000000 0.625000 9.062500 -v -0.312500 0.541265 9.062500 -v -0.541266 0.312500 9.062500 -v -0.625000 0.000000 9.062500 -v -0.541266 -0.312500 9.062500 -v -0.312500 -0.541265 9.062500 -v 0.000000 -0.625000 9.062500 -v 0.312500 -0.541265 9.062500 -v 0.541265 -0.312500 9.062500 -v 0.625000 0.000000 9.062500 -v 0.541266 0.312500 9.062500 -v 0.312500 0.541265 9.062500 -v -0.625000 0.375000 -2.125000 -v -0.625000 0.551777 -2.051777 -v -0.625000 0.625000 -1.875000 -v -0.625000 0.551777 -1.698223 -v -0.625000 0.375000 -1.625000 -v -0.625000 0.198223 -1.698223 -v -0.625000 0.125000 -1.875000 -v -0.625000 0.198223 -2.051777 -v -1.000000 0.375000 -2.125000 -v -1.000000 0.551777 -2.051777 -v -1.000000 0.625000 -1.875000 -v -1.000000 0.551777 -1.698223 -v -1.000000 0.375000 -1.625000 -v -1.000000 0.198223 -1.698223 -v -1.000000 0.125000 -1.875000 -v -1.000000 0.198223 -2.051777 -v -0.906250 0.500000 -1.750000 -v -0.968750 0.500000 -1.750000 -v -0.906250 0.500000 -2.000000 -v -0.968750 0.500000 -2.000000 -v -0.906250 1.375000 -1.750000 -v -0.968750 1.375000 -1.750000 -v -0.906250 1.375000 -2.000000 -v -0.968750 1.375000 -2.000000 -v -0.906250 1.500000 -2.000000 -v -0.906250 1.500000 -1.625000 -v -0.968750 1.500000 -1.625000 -v -0.968750 1.500000 -2.000000 -v 0.000000 -0.500000 8.187500 -v 0.132583 -0.500000 8.132584 -v 0.187500 -0.500000 8.000000 -v 0.132583 -0.500000 7.867418 -v 0.000000 -0.500000 7.812500 -v -0.132583 -0.500000 7.867418 -v -0.187500 -0.500000 8.000000 -v -0.132583 -0.500000 8.132584 -v 0.000000 -0.367418 8.132584 -v 0.000000 -0.312500 8.000000 -v 0.000000 -0.367418 7.867418 -v 0.000000 -0.632583 7.867418 -v 0.000000 -0.687500 8.000000 -v 0.000000 -0.632583 8.132584 -v -0.093750 -0.406250 8.132584 -v -0.132583 -0.367418 8.000000 -v -0.093750 -0.406250 7.867418 -v 0.093750 -0.593750 7.867418 -v 0.132583 -0.632583 8.000000 -v 0.093750 -0.593750 8.132584 -v -0.093750 -0.593750 8.132584 -v -0.132583 -0.632583 8.000000 -v -0.093750 -0.593750 7.867418 -v 0.093750 -0.406250 7.867418 -v 0.132583 -0.367418 8.000000 -v 0.093750 -0.406250 8.132584 -v -0.187500 0.500000 8.000000 -v 0.187500 0.500000 8.000000 -v 0.000000 0.312500 8.000000 -v 0.000000 0.687500 8.000000 -v 0.132583 0.367418 8.000000 -v -0.132583 0.632583 8.000000 -v 0.132583 0.632583 8.000000 -v -0.132583 0.367418 8.000000 -v 0.000000 0.750000 8.000000 -v -0.176776 0.676777 8.000000 -v -0.250000 0.500000 8.000000 -v -0.176777 0.323224 8.000000 -v 0.000000 0.250000 8.000000 -v 0.176777 0.323224 8.000000 -v 0.250000 0.500000 8.000000 -v 0.176777 0.676777 8.000000 -v 0.000000 0.312500 8.062500 -v 0.132583 0.367418 8.062500 -v -0.132583 0.367418 8.062500 -v -0.187500 0.500000 8.062500 -v -0.132583 0.632583 8.062500 -v 0.000000 0.687500 8.062500 -v 0.132583 0.632583 8.062500 -v 0.187500 0.500000 8.062500 -v -0.176776 0.676777 8.062500 -v 0.000000 0.750000 8.062500 -v -0.250000 0.500000 8.062500 -v -0.176777 0.323224 8.062500 -v 0.000000 0.250000 8.062500 -v 0.176777 0.323224 8.062500 -v 0.250000 0.500000 8.062500 -v 0.176777 0.676777 8.062500 -v 0.433013 0.250000 8.187500 -v 0.366722 0.364820 8.132584 -v 0.339263 0.412380 8.000000 -v 0.366722 0.364820 7.867418 -v 0.433013 0.250000 7.812500 -v 0.499304 0.135180 7.867418 -v 0.526763 0.087620 8.000000 -v 0.499304 0.135180 8.132584 -v 0.318193 0.183709 8.132584 -v 0.270633 0.156250 8.000000 -v 0.318193 0.183709 7.867418 -v 0.547833 0.316292 7.867418 -v 0.595393 0.343750 8.000000 -v 0.547833 0.316292 8.132584 -v 0.398698 0.121935 8.132584 -v 0.384484 0.068889 8.000000 -v 0.398698 0.121935 7.867418 -v 0.467328 0.378065 7.867418 -v 0.481542 0.431112 8.000000 -v 0.467328 0.378065 8.132584 -v 0.561078 0.215685 8.132584 -v 0.614124 0.201472 8.000000 -v 0.561078 0.215685 7.867418 -v 0.304948 0.284315 7.867418 -v 0.251902 0.298529 8.000000 -v 0.304948 0.284315 8.132584 -v -0.339263 -0.412380 8.000000 -v -0.526763 -0.087620 8.000000 -v -0.270633 -0.156250 8.000000 -v -0.595393 -0.343750 8.000000 -v -0.384484 -0.068889 8.000000 -v -0.481542 -0.431112 8.000000 -v -0.614124 -0.201472 8.000000 -v -0.251902 -0.298529 8.000000 -v -0.649519 -0.375000 8.000000 -v -0.497718 -0.491482 8.000000 -v -0.308013 -0.466507 8.000000 -v -0.191531 -0.314705 8.000000 -v -0.216507 -0.125000 8.000000 -v -0.368308 -0.008519 8.000000 -v -0.558013 -0.033494 8.000000 -v -0.674495 -0.185295 8.000000 -v -0.270633 -0.156250 8.062500 -v -0.384484 -0.068889 8.062500 -v -0.251902 -0.298529 8.062500 -v -0.339263 -0.412380 8.062500 -v -0.481542 -0.431112 8.062500 -v -0.595393 -0.343750 8.062500 -v -0.614124 -0.201472 8.062500 -v -0.526763 -0.087620 8.062500 -v -0.497718 -0.491482 8.062500 -v -0.649519 -0.375000 8.062500 -v -0.308013 -0.466507 8.062500 -v -0.191531 -0.314705 8.062500 -v -0.216507 -0.125000 8.062500 -v -0.368308 -0.008519 8.062500 -v -0.558013 -0.033494 8.062500 -v -0.674495 -0.185295 8.062500 -v -0.433013 -0.250000 8.187500 -v -0.366722 -0.364820 8.132584 -v -0.339263 -0.412380 8.000000 -v -0.366722 -0.364820 7.867418 -v -0.433013 -0.250000 7.812500 -v -0.499304 -0.135180 7.867418 -v -0.526763 -0.087620 8.000000 -v -0.499304 -0.135180 8.132584 -v -0.318193 -0.183709 8.132584 -v -0.270633 -0.156250 8.000000 -v -0.318193 -0.183709 7.867418 -v -0.547833 -0.316292 7.867418 -v -0.595393 -0.343750 8.000000 -v -0.547833 -0.316292 8.132584 -v -0.398698 -0.121935 8.132584 -v -0.384484 -0.068889 8.000000 -v -0.398698 -0.121935 7.867418 -v -0.467328 -0.378065 7.867418 -v -0.481542 -0.431112 8.000000 -v -0.467328 -0.378065 8.132584 -v -0.561078 -0.215685 8.132584 -v -0.614124 -0.201472 8.000000 -v -0.561078 -0.215685 7.867418 -v -0.304948 -0.284315 7.867418 -v -0.251902 -0.298529 8.000000 -v -0.304948 -0.284315 8.132584 -v 0.339263 0.412380 8.000000 -v 0.526763 0.087620 8.000000 -v 0.270633 0.156250 8.000000 -v 0.595393 0.343750 8.000000 -v 0.384484 0.068889 8.000000 -v 0.481542 0.431112 8.000000 -v 0.614124 0.201472 8.000000 -v 0.251902 0.298529 8.000000 -v 0.649519 0.375000 8.000000 -v 0.497718 0.491482 8.000000 -v 0.308013 0.466507 8.000000 -v 0.191531 0.314705 8.000000 -v 0.216507 0.125000 8.000000 -v 0.368308 0.008519 8.000000 -v 0.558013 0.033494 8.000000 -v 0.674495 0.185295 8.000000 -v 0.270633 0.156250 8.062500 -v 0.384484 0.068889 8.062500 -v 0.251902 0.298529 8.062500 -v 0.339263 0.412380 8.062500 -v 0.481542 0.431112 8.062500 -v 0.595393 0.343750 8.062500 -v 0.614124 0.201472 8.062500 -v 0.526763 0.087620 8.062500 -v 0.497718 0.491482 8.062500 -v 0.649519 0.375000 8.062500 -v 0.308013 0.466507 8.062500 -v 0.191531 0.314705 8.062500 -v 0.216507 0.125000 8.062500 -v 0.368308 0.008519 8.062500 -v 0.558013 0.033494 8.062500 -v 0.674495 0.185295 8.062500 -v 0.433013 -0.250000 8.187500 -v 0.499304 -0.135180 8.132584 -v 0.526763 -0.087620 8.000000 -v 0.499304 -0.135180 7.867418 -v 0.433013 -0.250000 7.812500 -v 0.366722 -0.364820 7.867418 -v 0.339263 -0.412380 8.000000 -v 0.366722 -0.364820 8.132584 -v 0.318193 -0.183709 8.132584 -v 0.270633 -0.156250 8.000000 -v 0.318193 -0.183709 7.867418 -v 0.547833 -0.316292 7.867418 -v 0.595393 -0.343750 8.000000 -v 0.547833 -0.316292 8.132584 -v 0.304948 -0.284315 8.132584 -v 0.251902 -0.298529 8.000000 -v 0.304948 -0.284315 7.867418 -v 0.561078 -0.215685 7.867418 -v 0.614124 -0.201472 8.000000 -v 0.561078 -0.215685 8.132584 -v 0.467328 -0.378065 8.132584 -v 0.481542 -0.431112 8.000000 -v 0.467328 -0.378065 7.867418 -v 0.398698 -0.121935 7.867418 -v 0.384484 -0.068889 8.000000 -v 0.398698 -0.121935 8.132584 -v -0.526763 0.087620 8.000000 -v -0.339263 0.412380 8.000000 -v -0.270633 0.156250 8.000000 -v -0.595393 0.343750 8.000000 -v -0.251902 0.298529 8.000000 -v -0.614124 0.201472 8.000000 -v -0.481542 0.431112 8.000000 -v -0.384484 0.068889 8.000000 -v -0.649519 0.375000 8.000000 -v -0.674495 0.185296 8.000000 -v -0.558013 0.033494 8.000000 -v -0.368308 0.008518 8.000000 -v -0.216507 0.125000 8.000000 -v -0.191531 0.314705 8.000000 -v -0.308013 0.466507 8.000000 -v -0.497718 0.491482 8.000000 -v -0.270633 0.156250 8.062500 -v -0.251902 0.298529 8.062500 -v -0.384484 0.068889 8.062500 -v -0.526763 0.087620 8.062500 -v -0.614124 0.201472 8.062500 -v -0.595393 0.343750 8.062500 -v -0.481542 0.431112 8.062500 -v -0.339263 0.412380 8.062500 -v -0.674495 0.185296 8.062500 -v -0.649519 0.375000 8.062500 -v -0.558013 0.033494 8.062500 -v -0.368308 0.008518 8.062500 -v -0.216507 0.125000 8.062500 -v -0.191531 0.314705 8.062500 -v -0.308013 0.466507 8.062500 -v -0.497718 0.491482 8.062500 -v -0.433013 0.250000 8.187500 -v -0.499304 0.135180 8.132584 -v -0.526763 0.087620 8.000000 -v -0.499304 0.135180 7.867418 -v -0.433013 0.250000 7.812500 -v -0.366722 0.364820 7.867418 -v -0.339263 0.412380 8.000000 -v -0.366722 0.364820 8.132584 -v -0.318193 0.183709 8.132584 -v -0.270633 0.156250 8.000000 -v -0.318193 0.183709 7.867418 -v -0.547833 0.316292 7.867418 -v -0.595393 0.343750 8.000000 -v -0.547833 0.316292 8.132584 -v -0.304948 0.284315 8.132584 -v -0.251902 0.298529 8.000000 -v -0.304948 0.284315 7.867418 -v -0.561078 0.215685 7.867418 -v -0.614124 0.201472 8.000000 -v -0.561078 0.215685 8.132584 -v -0.467328 0.378065 8.132584 -v -0.481542 0.431112 8.000000 -v -0.467328 0.378065 7.867418 -v -0.398698 0.121935 7.867418 -v -0.384484 0.068889 8.000000 -v -0.398698 0.121935 8.132584 -v 0.526763 -0.087620 8.000000 -v 0.339263 -0.412380 8.000000 -v 0.270633 -0.156250 8.000000 -v 0.595393 -0.343750 8.000000 -v 0.251902 -0.298529 8.000000 -v 0.614124 -0.201472 8.000000 -v 0.481542 -0.431112 8.000000 -v 0.384484 -0.068889 8.000000 -v 0.649519 -0.375000 8.000000 -v 0.674495 -0.185296 8.000000 -v 0.558013 -0.033494 8.000000 -v 0.368308 -0.008518 8.000000 -v 0.216507 -0.125000 8.000000 -v 0.191531 -0.314705 8.000000 -v 0.308013 -0.466507 8.000000 -v 0.497718 -0.491482 8.000000 -v 0.270633 -0.156250 8.062500 -v 0.251902 -0.298529 8.062500 -v 0.384484 -0.068889 8.062500 -v 0.526763 -0.087620 8.062500 -v 0.614124 -0.201472 8.062500 -v 0.595393 -0.343750 8.062500 -v 0.481542 -0.431112 8.062500 -v 0.339263 -0.412380 8.062500 -v 0.674495 -0.185296 8.062500 -v 0.649519 -0.375000 8.062500 -v 0.558013 -0.033494 8.062500 -v 0.368308 -0.008518 8.062500 -v 0.216507 -0.125000 8.062500 -v 0.191531 -0.314705 8.062500 -v 0.308013 -0.466507 8.062500 -v 0.497718 -0.491482 8.062500 vt 0.241282 0.246079 vt 0.233209 0.265596 vt 0.225136 0.246079 @@ -910,351 +258,6 @@ vt 0.244403 0.374973 vt 0.244403 0.328152 vt 0.249994 0.351562 vt 0.244403 0.374973 -vt 0.276412 0.187560 -vt 0.328065 0.187560 -vt 0.302239 0.374880 -vt 0.276412 0.437560 -vt 0.302239 0.375120 -vt 0.328065 0.562440 -vt -0.000000 0.125000 -vt 0.029851 0.093750 -vt 0.029851 0.125000 -vt 0.007463 0.062500 -vt 0.029851 0.062500 -vt 0.029851 0.031250 -vt 0.007463 0.031250 -vt 0.029851 0.000000 -vt 0.037313 0.031250 -vt -0.000000 0.062500 -vt 0.619403 0.031250 -vt 0.597015 0.062500 -vt 0.597015 0.031250 -vt 0.037313 0.093750 -vt 0.223881 0.125000 -vt 0.037313 0.125000 -vt 0.619403 0.062500 -vt 0.597015 0.093750 -vt 0.037313 0.125000 -vt 0.231343 0.000000 -vt 0.276119 0.031250 -vt 0.231343 0.031250 -vt 0.037313 0.031250 -vt 0.223881 0.062500 -vt 0.037313 0.062500 -vt 0.037313 -0.000000 -vt 0.223881 0.031250 -vt 0.223881 0.093750 -vt 0.231343 0.125000 -vt 0.223881 0.125000 -vt 0.231343 0.093750 -vt 0.626866 0.093750 -vt 0.597015 0.125000 -vt 0.223881 0.031250 -vt 0.231343 0.062500 -vt 0.279851 0.093750 -vt 0.291045 0.125000 -vt 0.279851 0.125000 -vt 0.276119 0.125000 -vt 0.276119 0.093750 -vt 0.276119 0.062500 -vt 0.294776 0.093750 -vt 0.332090 0.125000 -vt 0.294776 0.125000 -vt 0.332090 0.062500 -vt 0.332090 0.093750 -vt 0.332090 0.000000 -vt 0.294776 0.031250 -vt 0.294776 0.000000 -vt 0.332090 0.031250 -vt 0.291045 0.000000 -vt 0.279851 0.000000 -vt 0.294776 0.062500 -vt 0.597015 0.000000 -vt 0.589552 0.125000 -vt 0.626866 0.031250 -vt 0.626866 0.062500 -vt 0.589552 0.062500 -vt 0.402985 0.031250 -vt 0.589552 0.031250 -vt 0.589552 0.031250 -vt 0.395522 0.031250 -vt 0.350746 0.000000 -vt 0.395522 0.000000 -vt 0.589552 0.125000 -vt 0.402985 0.093750 -vt 0.589552 0.093750 -vt 0.402985 0.000000 -vt 0.589552 0.000000 -vt 0.402985 0.062500 -vt 0.402985 0.031250 -vt 0.395522 0.062500 -vt 0.402985 0.125000 -vt 0.395522 0.125000 -vt 0.395522 0.093750 -vt 0.350746 0.031250 -vt 0.350746 0.062500 -vt 0.350746 0.093750 -vt 0.335821 0.093750 -vt 0.347015 0.125000 -vt 0.335821 0.125000 -vt 0.347015 0.000000 -vt 0.335821 0.000000 -vt 0.347015 0.093750 -vt 0.570895 0.828125 -vt 0.548507 0.671875 -vt 0.570895 0.609375 -vt 0.656716 0.562500 -vt 0.641791 0.578125 -vt 0.641791 0.562500 -vt 0.641791 0.593750 -vt 0.656716 0.609375 -vt 0.641791 0.609375 -vt 0.660448 0.578125 -vt 0.656716 0.593750 -vt 0.656716 0.578125 -vt 0.638060 0.593750 -vt 0.638060 0.578125 -vt 0.735075 0.187432 -vt 0.727628 0.156250 -vt 0.735075 0.125068 -vt 0.679105 0.421875 -vt 0.690298 0.437500 -vt 0.679105 0.437500 -vt 0.682836 0.406250 -vt 0.690298 0.421875 -vt 0.690298 0.296875 -vt 0.682836 0.296875 -vt 0.701493 0.296875 -vt 0.694030 0.406250 -vt 0.694030 0.296875 -vt 0.690298 0.406250 -vt 0.679105 0.406250 -vt 0.679105 0.296875 -vt 0.701493 0.406250 -vt 0.694030 0.421875 -vt 0.675373 0.421875 -vt 0.675373 0.437500 -vt 0.641791 0.593750 -vt 0.656716 0.609375 -vt 0.641791 0.609375 -vt 0.656716 0.562500 -vt 0.641791 0.578125 -vt 0.641791 0.562500 -vt 0.656716 0.578125 -vt 0.660448 0.593750 -vt 0.656716 0.593750 -vt 0.638060 0.578125 -vt 0.638060 0.593750 -vt 0.119403 0.828125 -vt 0.126866 0.781250 -vt 0.126866 0.828125 -vt 0.104478 0.828125 -vt 0.111940 0.781250 -vt 0.111940 0.828125 -vt 0.119403 0.781250 -vt 0.134328 0.781250 -vt 0.134328 0.828125 -vt 0.041045 0.859375 -vt 0.026119 0.875000 -vt 0.026119 0.859375 -vt 0.078358 0.828125 -vt 0.093284 0.812500 -vt 0.093284 0.828125 -vt 0.026119 0.828125 -vt 0.041045 0.812500 -vt 0.041045 0.828125 -vt 0.093284 0.859375 -vt 0.078358 0.875000 -vt 0.078358 0.859375 -vt 0.067164 0.859375 -vt 0.052239 0.875000 -vt 0.052239 0.859375 -vt 0.052239 0.828125 -vt 0.067164 0.812500 -vt 0.067164 0.828125 -vt 0.000000 0.828125 -vt 0.014925 0.812500 -vt 0.014925 0.828125 -vt 0.014925 0.859375 -vt 0.000000 0.875000 -vt 0.000000 0.859375 -vt 0.018657 0.875000 -vt 0.022388 0.875000 -vt 0.022388 0.812500 -vt 0.044776 0.875000 -vt 0.048507 0.812500 -vt 0.044776 0.812500 -vt 0.070896 0.875000 -vt 0.074627 0.875000 -vt 0.074627 0.812500 -vt 0.104478 0.859375 -vt 0.097015 0.875000 -vt 0.100746 0.812500 -vt 0.097015 0.812500 -vt 0.690298 0.203125 -vt 0.694030 0.187500 -vt 0.694030 0.203125 -vt 0.675373 0.171875 -vt 0.675373 0.218750 -vt 0.716418 0.218750 -vt 0.701493 0.187500 -vt 0.716418 0.171875 -vt 0.697761 0.203125 -vt 0.701493 0.203125 -vt 0.686567 0.281250 -vt 0.694030 0.296875 -vt 0.686567 0.296875 -vt 0.705224 0.296875 -vt 0.697761 0.265625 -vt 0.705224 0.281250 -vt 0.694030 0.234375 -vt 0.697761 0.234375 -vt 0.701493 0.265625 -vt 0.697761 0.156250 -vt 0.697761 0.187500 -vt 0.694030 0.156250 -vt 0.690298 0.187500 -vt 0.690298 0.125000 -vt 0.701493 0.125000 -vt 0.697761 0.296875 -vt 0.694030 0.265625 -vt 0.574405 0.179713 -vt 0.619624 0.179713 -vt 0.597015 0.343699 -vt 0.574406 0.507787 -vt 0.574406 0.398463 -vt 0.597015 0.343801 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 -vt 0.640568 0.398416 -vt 0.656716 0.281294 -vt 0.672865 0.398416 -vt 0.640568 0.164085 -vt 0.672864 0.164085 -vt 0.656716 0.281206 -vt 0.600746 0.609375 -vt 0.623134 0.765625 -vt 0.600746 0.828125 -vt 0.729809 0.178299 -vt 0.735075 0.187432 -vt 0.735075 0.125068 -vt 0.690298 0.437500 -vt 0.679105 0.421875 -vt 0.679105 0.437500 -vt 0.682836 0.406250 -vt 0.690298 0.421875 -vt 0.690298 0.406250 -vt 0.690298 0.296875 -vt 0.682836 0.296875 -vt 0.694030 0.406250 -vt 0.701493 0.296875 -vt 0.694030 0.296875 -vt 0.679105 0.406250 -vt 0.679105 0.296875 -vt 0.694030 0.421875 -vt 0.701493 0.406250 -vt 0.675373 0.421875 -vt 0.675373 0.437500 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 -vt 0.671642 0.484375 -vt 0.667910 0.468750 -vt 0.671642 0.468750 -vt 0.667910 0.500000 -vt 0.667910 0.484375 -vt 0.671642 0.500000 -vt 0.667910 0.515625 -vt 0.671642 0.515625 -vt 0.667910 0.531250 -vt 0.671642 0.546875 -vt 0.671642 0.531250 -vt 0.667910 0.562500 -vt 0.667910 0.546875 -vt 0.671642 0.453125 -vt 0.667910 0.437500 -vt 0.671642 0.437500 -vt 0.667910 0.453125 vt 0.657842 0.464038 vt 0.656762 0.453126 vt 0.657842 0.442213 @@ -1310,107 +313,6 @@ vt 0.238812 0.351562 vt 0.240450 0.335009 vt 0.248356 0.335009 vt 0.248356 0.368116 -vt 0.287328 0.358149 -vt 0.276412 0.312440 -vt 0.272417 0.250000 -vt 0.287328 0.141851 -vt 0.302239 0.125120 -vt 0.317150 0.141851 -vt 0.332061 0.250000 -vt 0.328065 0.312440 -vt 0.317150 0.358149 -vt 0.317150 0.608149 -vt 0.302239 0.624880 -vt 0.287328 0.608149 -vt 0.276412 0.562440 -vt 0.272417 0.500000 -vt 0.287328 0.391851 -vt 0.317150 0.391851 -vt 0.328065 0.437560 -vt 0.332061 0.500000 -vt -0.000000 0.093750 -vt -0.000000 0.000000 -vt -0.000000 0.031250 -vt 0.276119 0.000000 -vt 0.223881 0.000000 -vt 0.626866 0.125000 -vt 0.291045 0.093750 -vt 0.626866 0.000000 -vt 0.402985 0.125000 -vt 0.350746 0.125000 -vt 0.548507 0.765625 -vt 0.660448 0.593750 -vt 0.742521 0.156250 -vt 0.740340 0.178299 -vt 0.729809 0.178299 -vt 0.729809 0.134201 -vt 0.740340 0.134201 -vt 0.705224 0.421875 -vt 0.660448 0.578125 -vt 0.104478 0.781250 -vt 0.041045 0.875000 -vt 0.078358 0.812500 -vt 0.026119 0.812500 -vt 0.093284 0.875000 -vt 0.067164 0.875000 -vt 0.052239 0.812500 -vt 0.000000 0.812500 -vt 0.014925 0.875000 -vt 0.018657 0.812500 -vt 0.048507 0.875000 -vt 0.070896 0.812500 -vt 0.100746 0.875000 -vt 0.104478 0.828125 -vt 0.690298 0.265625 -vt 0.583961 0.329052 -vt 0.574405 0.289037 -vt 0.570908 0.234375 -vt 0.583961 0.139698 -vt 0.597015 0.125051 -vt 0.610068 0.139698 -vt 0.623122 0.234375 -vt 0.619624 0.289037 -vt 0.610068 0.329052 -vt 0.619624 0.507787 -vt 0.610068 0.547802 -vt 0.597015 0.562449 -vt 0.583961 0.547802 -vt 0.570908 0.453125 -vt 0.583961 0.358448 -vt 0.610068 0.358448 -vt 0.619624 0.398463 -vt 0.623122 0.453125 -vt 0.671642 0.562500 -vt 0.666040 0.426995 -vt 0.656716 0.437456 -vt 0.647393 0.426995 -vt 0.638070 0.359375 -vt 0.640568 0.320335 -vt 0.647393 0.291755 -vt 0.666040 0.291755 -vt 0.672865 0.320335 -vt 0.675363 0.359375 -vt 0.647393 0.270745 -vt 0.640568 0.242166 -vt 0.638070 0.203125 -vt 0.647393 0.135505 -vt 0.656716 0.125044 -vt 0.666039 0.135505 -vt 0.675363 0.203125 -vt 0.672864 0.242166 -vt 0.666039 0.270745 -vt 0.623134 0.671875 -vt 0.740340 0.178299 -vt 0.742521 0.156250 -vt 0.740340 0.134201 -vt 0.729809 0.134201 -vt 0.727628 0.156250 -vt 0.705224 0.421875 -vt 0.671642 0.562500 -vt 0.671642 0.562500 -vt 0.671642 0.562500 -vt 0.671642 0.562500 -vt 0.671642 0.562500 vt 0.656716 0.531250 vt 0.652985 0.515625 vt 0.656716 0.515625 @@ -1555,6 +457,2917 @@ vt 0.238806 0.359375 vt 0.238806 0.437500 vt 0.238806 0.437500 vt 0.238806 0.390625 +vt 0.652985 0.562500 +vt 0.208955 0.125000 +vt 0.238806 0.328125 +vt 0.238806 0.328125 +vt 0.238806 0.328125 +vt 0.238806 0.328125 +vt 0.238806 0.328125 +vt 0.238806 0.328125 +vn 0.0000 0.0000 1.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.1499 0.9887 0.0000 +vn 0.7813 0.6242 0.0000 +vn 0.1499 -0.9887 0.0000 +vn -0.2208 -0.9753 0.0000 +vn 0.7813 -0.6242 0.0000 +vn 0.9550 -0.2965 0.0000 +vn -0.7813 0.6242 0.0000 +vn -0.1499 0.9887 0.0000 +vn -0.7813 -0.6242 0.0000 +vn -0.9550 -0.2965 0.0000 +vn -0.9550 0.2965 0.0000 +vn 0.2208 -0.9753 0.0000 +vn -0.1499 -0.9887 0.0000 +vn 0.9550 0.2965 0.0000 +vn 0.9312 0.3645 0.0000 +vn 0.9312 -0.3645 0.0000 +vn -0.9312 0.3645 0.0000 +vn -0.7343 0.6788 0.0000 +vn -0.2208 0.9753 0.0000 +vn -0.7343 -0.6788 0.0000 +vn -0.9312 -0.3645 0.0000 +vn 0.7343 -0.6788 0.0000 +vn 0.2208 0.9753 0.0000 +vn 0.7343 0.6788 0.0000 +vn 0.9659 -0.2588 0.0000 +vn 0.2588 -0.9659 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.9659 -0.2588 0.0000 +vn 0.2588 0.9659 0.0000 +vn -0.5000 0.8660 0.0000 +vn -0.9659 0.2588 0.0000 +vn 0.9659 0.2588 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.2588 0.9659 0.0000 +vn -0.2588 -0.9659 0.0000 +vn 0.5000 -0.8660 0.0000 +s off +f 29/1/1 13/2/1 53/3/1 +f 61/4/1 63/5/1 58/6/1 +f 73/7/1 74/8/1 49/9/1 +f 68/10/1 67/11/1 9/12/1 +f 72/13/1 71/14/1 25/15/1 +f 76/16/1 75/17/1 41/18/1 +f 65/19/1 66/20/1 17/21/1 +f 69/22/1 70/23/1 33/24/1 +f 81/25/1 82/26/1 39/27/1 +f 11/28/1 86/29/1 55/30/1 +f 80/31/1 79/32/1 15/33/1 +f 84/34/1 83/35/1 31/36/1 +f 19/37/1 87/38/1 47/39/1 +f 77/40/1 78/41/1 23/42/1 +f 39/27/1 52/43/1 51/44/1 +f 37/45/1 52/43/1 38/46/1 +f 12/47/1 55/30/1 54/48/1 +f 12/47/1 53/3/1 13/2/1 +f 14/49/1 27/50/1 15/33/1 +f 14/49/1 29/1/1 28/51/1 +f 30/52/1 43/53/1 31/36/1 +f 29/1/1 44/54/1 30/52/1 +f 19/37/1 46/55/1 20/56/1 +f 20/56/1 45/57/1 21/58/1 +f 23/42/1 36/59/1 35/60/1 +f 21/58/1 36/59/1 22/61/1 +f 69/62/2 94/63/2 70/64/2 +f 68/65/3 91/66/3 67/67/3 +f 76/68/4 99/69/4 75/70/4 +f 73/71/5 98/72/5 74/73/5 +f 72/74/6 95/75/6 71/76/6 +f 65/77/7 90/78/7 66/79/7 +f 135/80/1 136/81/1 129/82/1 +f 151/83/1 152/84/1 145/85/1 +f 125/86/1 127/87/1 121/88/1 +f 143/89/1 144/90/1 137/91/1 +f 159/92/1 160/93/1 153/94/1 +f 117/95/1 119/96/1 113/97/1 +f 53/3/1 37/45/1 29/1/1 +f 37/45/1 21/58/1 29/1/1 +f 21/58/1 45/57/1 29/1/1 +f 58/6/1 57/98/1 59/99/1 +f 59/99/1 60/100/1 61/4/1 +f 61/4/1 62/101/1 63/5/1 +f 63/5/1 64/102/1 58/6/1 +f 58/6/1 59/99/1 61/4/1 +f 81/25/1 50/103/1 74/8/1 +f 50/103/1 49/9/1 74/8/1 +f 49/9/1 56/104/1 73/7/1 +f 56/104/1 86/29/1 73/7/1 +f 85/105/1 10/106/1 67/11/1 +f 10/106/1 9/12/1 67/11/1 +f 9/12/1 16/107/1 68/10/1 +f 16/107/1 79/32/1 68/10/1 +f 80/31/1 26/108/1 71/14/1 +f 26/108/1 25/15/1 71/14/1 +f 25/15/1 32/109/1 72/13/1 +f 32/109/1 83/35/1 72/13/1 +f 84/34/1 42/110/1 75/17/1 +f 42/110/1 41/18/1 75/17/1 +f 41/18/1 48/111/1 76/16/1 +f 48/111/1 87/38/1 76/16/1 +f 88/112/1 18/113/1 66/20/1 +f 18/113/1 17/21/1 66/20/1 +f 17/21/1 24/114/1 65/19/1 +f 24/114/1 78/41/1 65/19/1 +f 77/40/1 34/115/1 70/23/1 +f 34/115/1 33/24/1 70/23/1 +f 33/24/1 40/116/1 69/22/1 +f 40/116/1 82/26/1 69/22/1 +f 82/26/1 40/116/1 39/27/1 +f 39/27/1 51/44/1 81/25/1 +f 51/44/1 50/103/1 81/25/1 +f 11/28/1 10/106/1 85/105/1 +f 85/105/1 86/29/1 11/28/1 +f 86/29/1 56/104/1 55/30/1 +f 79/32/1 16/107/1 15/33/1 +f 15/33/1 27/50/1 80/31/1 +f 27/50/1 26/108/1 80/31/1 +f 83/35/1 32/109/1 31/36/1 +f 31/36/1 43/53/1 84/34/1 +f 43/53/1 42/110/1 84/34/1 +f 19/37/1 18/113/1 88/112/1 +f 88/112/1 87/38/1 19/37/1 +f 87/38/1 48/111/1 47/39/1 +f 78/41/1 24/114/1 23/42/1 +f 23/42/1 35/60/1 77/40/1 +f 35/60/1 34/115/1 77/40/1 +f 39/27/1 38/46/1 52/43/1 +f 37/45/1 53/3/1 52/43/1 +f 12/47/1 11/28/1 55/30/1 +f 12/47/1 54/48/1 53/3/1 +f 14/49/1 28/51/1 27/50/1 +f 14/49/1 13/2/1 29/1/1 +f 30/52/1 44/54/1 43/53/1 +f 29/1/1 45/57/1 44/54/1 +f 19/37/1 47/39/1 46/55/1 +f 20/56/1 46/55/1 45/57/1 +f 23/42/1 22/61/1 36/59/1 +f 21/58/1 37/45/1 36/59/1 +f 69/62/2 93/117/2 94/63/2 +f 68/65/3 92/118/3 91/66/3 +f 76/68/4 100/119/4 99/69/4 +f 73/71/5 97/120/5 98/72/5 +f 72/74/6 96/121/6 95/75/6 +f 65/77/7 89/122/7 90/78/7 +f 129/82/1 130/123/1 131/124/1 +f 131/124/1 132/125/1 129/82/1 +f 132/125/1 133/126/1 129/82/1 +f 133/126/1 134/127/1 129/82/1 +f 134/127/1 135/80/1 129/82/1 +f 145/85/1 146/128/1 147/129/1 +f 147/129/1 148/130/1 145/85/1 +f 148/130/1 149/131/1 145/85/1 +f 149/131/1 150/132/1 145/85/1 +f 150/132/1 151/83/1 145/85/1 +f 121/88/1 122/133/1 123/134/1 +f 123/134/1 124/135/1 125/86/1 +f 125/86/1 126/136/1 127/87/1 +f 127/87/1 128/137/1 121/88/1 +f 121/88/1 123/134/1 125/86/1 +f 137/91/1 138/138/1 139/139/1 +f 139/139/1 140/140/1 137/91/1 +f 140/140/1 141/141/1 137/91/1 +f 141/141/1 142/142/1 137/91/1 +f 142/142/1 143/89/1 137/91/1 +f 153/94/1 154/143/1 155/144/1 +f 155/144/1 156/145/1 153/94/1 +f 156/145/1 157/146/1 153/94/1 +f 157/146/1 158/147/1 153/94/1 +f 158/147/1 159/92/1 153/94/1 +f 113/97/1 114/148/1 115/149/1 +f 115/149/1 116/150/1 117/95/1 +f 117/95/1 118/151/1 119/96/1 +f 119/96/1 120/152/1 113/97/1 +f 113/97/1 115/149/1 117/95/1 +s 1 +f 3/153/8 57/154/9 2/155/9 +f 8/156/10 63/157/11 7/158/11 +f 6/159/12 61/160/7 5/161/7 +f 3/153/8 60/162/13 59/163/8 +f 2/155/9 58/164/3 1/165/3 +f 1/165/3 64/166/10 8/156/10 +f 7/158/11 62/167/12 6/159/12 +f 5/168/7 60/162/13 4/169/13 +f 80/170/14 103/171/15 79/172/15 +f 87/173/16 100/119/17 76/68/17 +f 88/174/18 111/175/16 87/173/16 +f 66/176/19 112/177/18 88/174/18 +f 85/178/20 110/179/21 86/180/21 +f 78/181/22 89/122/23 65/77/23 +f 67/67/24 109/182/20 85/178/20 +f 70/64/25 101/183/26 77/184/26 +f 79/172/15 92/118/27 68/65/27 +f 84/185/28 107/186/29 83/187/29 +f 82/188/30 93/117/31 69/62/31 +f 71/76/32 104/189/14 80/170/14 +f 77/184/26 102/190/22 78/181/22 +f 74/73/33 105/191/34 81/192/34 +f 83/187/29 96/121/35 72/74/35 +f 81/192/34 106/193/30 82/188/30 +f 86/180/21 97/120/36 73/71/36 +f 75/70/37 108/194/28 84/185/28 +f 29/195/6 132/196/38 28/197/38 +f 56/198/39 159/199/40 55/200/40 +f 16/201/13 119/202/8 15/203/8 +f 43/204/40 146/205/41 42/206/41 +f 30/207/42 133/208/6 29/209/6 +f 49/210/4 160/211/39 56/198/39 +f 9/212/7 120/213/13 16/201/13 +f 44/214/39 147/215/40 43/204/40 +f 31/216/43 134/217/42 30/207/42 +f 18/218/9 121/219/3 17/220/3 +f 45/221/4 148/222/39 44/214/39 +f 32/223/44 135/224/43 31/216/43 +f 19/225/8 122/226/9 18/218/9 +f 46/227/45 149/228/4 45/229/4 +f 25/230/2 136/231/44 32/223/44 +f 20/232/13 123/233/8 19/225/8 +f 47/234/46 150/235/45 46/227/45 +f 34/236/42 137/237/6 33/238/6 +f 21/239/7 124/240/13 20/232/13 +f 48/241/47 151/242/46 47/234/46 +f 35/243/43 138/244/42 34/236/42 +f 22/245/12 125/246/7 21/247/7 +f 41/248/5 152/249/47 48/241/47 +f 36/250/44 139/251/43 35/243/43 +f 23/252/11 126/253/12 22/245/12 +f 50/254/45 153/255/4 49/210/4 +f 10/256/12 113/257/7 9/212/7 +f 37/258/2 140/259/44 36/250/44 +f 24/260/10 127/261/11 23/252/11 +f 51/262/46 154/263/45 50/254/45 +f 11/264/11 114/265/12 10/256/12 +f 38/266/48 141/267/2 37/268/2 +f 17/220/3 128/269/10 24/260/10 +f 52/270/47 155/271/46 51/262/46 +f 12/272/10 115/273/11 11/264/11 +f 39/274/49 142/275/48 38/266/48 +f 26/276/48 129/277/2 25/230/2 +f 53/278/5 156/279/47 52/270/47 +f 13/280/3 116/281/10 12/272/10 +f 40/282/38 143/283/49 39/274/49 +f 27/284/49 130/285/48 26/276/48 +f 54/286/41 157/287/5 53/288/5 +f 14/289/9 117/290/3 13/291/3 +f 33/238/6 144/292/38 40/282/38 +f 28/197/38 131/293/49 27/284/49 +f 55/200/40 158/294/41 54/286/41 +f 15/203/8 118/295/9 14/289/9 +f 42/206/41 145/296/5 41/248/5 +f 3/153/8 59/163/8 57/154/9 +f 8/156/10 64/166/10 63/157/11 +f 6/159/12 62/167/12 61/160/7 +f 3/153/8 4/169/13 60/162/13 +f 2/155/9 57/154/9 58/164/3 +f 1/165/3 58/164/3 64/166/10 +f 7/158/11 63/157/11 62/167/12 +f 5/168/7 61/297/7 60/162/13 +f 80/170/14 104/189/14 103/171/15 +f 87/173/16 111/175/16 100/119/17 +f 88/174/18 112/177/18 111/175/16 +f 66/176/19 90/298/19 112/177/18 +f 85/178/20 109/182/20 110/179/21 +f 78/181/22 102/190/22 89/122/23 +f 67/67/24 91/66/24 109/182/20 +f 70/64/25 94/63/25 101/183/26 +f 79/172/15 103/171/15 92/118/27 +f 84/185/28 108/194/28 107/186/29 +f 82/188/30 106/193/30 93/117/31 +f 71/76/32 95/75/32 104/189/14 +f 77/184/26 101/183/26 102/190/22 +f 74/73/33 98/72/33 105/191/34 +f 83/187/29 107/186/29 96/121/35 +f 81/192/34 105/191/34 106/193/30 +f 86/180/21 110/179/21 97/120/36 +f 75/70/37 99/69/37 108/194/28 +f 29/195/6 133/299/6 132/196/38 +f 56/198/39 160/211/39 159/199/40 +f 16/201/13 120/213/13 119/202/8 +f 43/204/40 147/215/40 146/205/41 +f 30/207/42 134/217/42 133/208/6 +f 49/210/4 153/255/4 160/211/39 +f 9/212/7 113/257/7 120/213/13 +f 44/214/39 148/222/39 147/215/40 +f 31/216/43 135/224/43 134/217/42 +f 18/218/9 122/226/9 121/219/3 +f 45/221/4 149/300/4 148/222/39 +f 32/223/44 136/231/44 135/224/43 +f 19/225/8 123/233/8 122/226/9 +f 46/227/45 150/235/45 149/228/4 +f 25/230/2 129/277/2 136/231/44 +f 20/232/13 124/240/13 123/233/8 +f 47/234/46 151/242/46 150/235/45 +f 34/236/42 138/244/42 137/237/6 +f 21/239/7 125/301/7 124/240/13 +f 48/241/47 152/249/47 151/242/46 +f 35/243/43 139/251/43 138/244/42 +f 22/245/12 126/253/12 125/246/7 +f 41/248/5 145/296/5 152/249/47 +f 36/250/44 140/259/44 139/251/43 +f 23/252/11 127/261/11 126/253/12 +f 50/254/45 154/263/45 153/255/4 +f 10/256/12 114/265/12 113/257/7 +f 37/258/2 141/302/2 140/259/44 +f 24/260/10 128/269/10 127/261/11 +f 51/262/46 155/271/46 154/263/45 +f 11/264/11 115/273/11 114/265/12 +f 38/266/48 142/275/48 141/267/2 +f 17/220/3 121/219/3 128/269/10 +f 52/270/47 156/279/47 155/271/46 +f 12/272/10 116/281/10 115/273/11 +f 39/274/49 143/283/49 142/275/48 +f 26/276/48 130/285/48 129/277/2 +f 53/278/5 157/303/5 156/279/47 +f 13/280/3 117/304/3 116/281/10 +f 40/282/38 144/292/38 143/283/49 +f 27/284/49 131/293/49 130/285/48 +f 54/286/41 158/294/41 157/287/5 +f 14/289/9 118/295/9 117/290/3 +f 33/238/6 137/237/6 144/292/38 +f 28/197/38 132/196/38 131/293/49 +f 55/200/40 159/199/40 158/294/41 +f 15/203/8 119/202/8 118/295/9 +f 42/206/41 146/205/41 145/296/5 +o Speedloader +v 0.000000 0.875000 8.062500 +v -0.437500 0.757773 8.062500 +v -0.757772 0.437500 8.062500 +v -0.875000 -0.000000 8.062500 +v -0.757772 -0.437500 8.062500 +v -0.437500 -0.757773 8.062500 +v 0.000000 -0.875000 8.062500 +v 0.437500 -0.757773 8.062500 +v 0.757772 -0.437500 8.062500 +v 0.875000 -0.000000 8.062500 +v 0.757772 0.437500 8.062500 +v 0.437500 0.757773 8.062500 +v 0.000000 0.875000 8.312500 +v -0.437500 0.757773 8.312500 +v -0.757772 0.437500 8.312500 +v -0.875000 -0.000000 8.312500 +v -0.757772 -0.437500 8.312500 +v -0.437500 -0.757773 8.312500 +v 0.000000 -0.875000 8.312500 +v 0.437500 -0.757773 8.312500 +v 0.757772 -0.437500 8.312500 +v 0.875000 -0.000000 8.312500 +v 0.757772 0.437500 8.312500 +v 0.437500 0.757773 8.312500 +v 0.187500 -0.500000 8.000000 +v -0.187500 -0.500000 8.000000 +v 0.000000 -0.312500 8.000000 +v 0.000000 -0.687500 8.000000 +v -0.132583 -0.367418 8.000000 +v 0.132583 -0.632583 8.000000 +v -0.132583 -0.632583 8.000000 +v 0.132583 -0.367418 8.000000 +v 0.000000 -0.750000 8.000000 +v 0.176776 -0.676777 8.000000 +v 0.250000 -0.500000 8.000000 +v 0.176777 -0.323224 8.000000 +v 0.000000 -0.250000 8.000000 +v -0.176777 -0.323224 8.000000 +v -0.250000 -0.500000 8.000000 +v -0.176777 -0.676777 8.000000 +v 0.000000 -0.312500 8.062500 +v -0.132583 -0.367418 8.062500 +v 0.132583 -0.367418 8.062500 +v 0.187500 -0.500000 8.062500 +v 0.132583 -0.632583 8.062500 +v 0.000000 -0.687500 8.062500 +v -0.132583 -0.632583 8.062500 +v -0.187500 -0.500000 8.062500 +v 0.176776 -0.676777 8.062500 +v 0.000000 -0.750000 8.062500 +v 0.250000 -0.500000 8.062500 +v 0.176777 -0.323224 8.062500 +v 0.000000 -0.250000 8.062500 +v -0.176777 -0.323224 8.062500 +v -0.250000 -0.500000 8.062500 +v -0.176777 -0.676777 8.062500 +v 0.000000 0.250000 8.312500 +v -0.125000 0.216506 8.312500 +v -0.216506 0.125000 8.312500 +v -0.250000 0.000000 8.312500 +v -0.216506 -0.125000 8.312500 +v -0.125000 -0.216506 8.312500 +v 0.000000 -0.250000 8.312500 +v 0.125000 -0.216506 8.312500 +v 0.216506 -0.125000 8.312500 +v 0.250000 0.000000 8.312500 +v 0.216506 0.125000 8.312500 +v 0.125000 0.216506 8.312500 +v 0.000000 0.250000 8.812500 +v -0.125000 0.216506 8.812500 +v -0.216506 0.125000 8.812500 +v -0.250000 0.000000 8.812500 +v -0.216506 -0.125000 8.812500 +v -0.125000 -0.216506 8.812500 +v 0.000000 -0.250000 8.812500 +v 0.125000 -0.216506 8.812500 +v 0.216506 -0.125000 8.812500 +v 0.250000 0.000000 8.812500 +v 0.216506 0.125000 8.812500 +v 0.125000 0.216506 8.812500 +v 0.000000 0.625000 8.812500 +v -0.312500 0.541265 8.812500 +v -0.541266 0.312500 8.812500 +v -0.625000 0.000000 8.812500 +v -0.541266 -0.312500 8.812500 +v -0.312500 -0.541265 8.812500 +v 0.000000 -0.625000 8.812500 +v 0.312500 -0.541265 8.812500 +v 0.541265 -0.312500 8.812500 +v 0.625000 0.000000 8.812500 +v 0.541266 0.312500 8.812500 +v 0.312500 0.541265 8.812500 +v 0.000000 0.625000 9.062500 +v -0.312500 0.541265 9.062500 +v -0.541266 0.312500 9.062500 +v -0.625000 0.000000 9.062500 +v -0.541266 -0.312500 9.062500 +v -0.312500 -0.541265 9.062500 +v 0.000000 -0.625000 9.062500 +v 0.312500 -0.541265 9.062500 +v 0.541265 -0.312500 9.062500 +v 0.625000 0.000000 9.062500 +v 0.541266 0.312500 9.062500 +v 0.312500 0.541265 9.062500 +v -0.187500 0.500000 8.000000 +v 0.187500 0.500000 8.000000 +v 0.000000 0.312500 8.000000 +v 0.000000 0.687500 8.000000 +v 0.132583 0.367418 8.000000 +v -0.132583 0.632583 8.000000 +v 0.132583 0.632583 8.000000 +v -0.132583 0.367418 8.000000 +v 0.000000 0.750000 8.000000 +v -0.176776 0.676777 8.000000 +v -0.250000 0.500000 8.000000 +v -0.176777 0.323224 8.000000 +v 0.000000 0.250000 8.000000 +v 0.176777 0.323224 8.000000 +v 0.250000 0.500000 8.000000 +v 0.176777 0.676777 8.000000 +v 0.000000 0.312500 8.062500 +v 0.132583 0.367418 8.062500 +v -0.132583 0.367418 8.062500 +v -0.187500 0.500000 8.062500 +v -0.132583 0.632583 8.062500 +v 0.000000 0.687500 8.062500 +v 0.132583 0.632583 8.062500 +v 0.187500 0.500000 8.062500 +v -0.176776 0.676777 8.062500 +v 0.000000 0.750000 8.062500 +v -0.250000 0.500000 8.062500 +v -0.176777 0.323224 8.062500 +v 0.000000 0.250000 8.062500 +v 0.176777 0.323224 8.062500 +v 0.250000 0.500000 8.062500 +v 0.176777 0.676777 8.062500 +v -0.339263 -0.412380 8.000000 +v -0.526763 -0.087620 8.000000 +v -0.270633 -0.156250 8.000000 +v -0.595393 -0.343750 8.000000 +v -0.384484 -0.068889 8.000000 +v -0.481542 -0.431112 8.000000 +v -0.614124 -0.201472 8.000000 +v -0.251902 -0.298529 8.000000 +v -0.649519 -0.375000 8.000000 +v -0.497718 -0.491482 8.000000 +v -0.308013 -0.466507 8.000000 +v -0.191531 -0.314705 8.000000 +v -0.216507 -0.125000 8.000000 +v -0.368308 -0.008519 8.000000 +v -0.558013 -0.033494 8.000000 +v -0.674495 -0.185295 8.000000 +v -0.270633 -0.156250 8.062500 +v -0.384484 -0.068889 8.062500 +v -0.251902 -0.298529 8.062500 +v -0.339263 -0.412380 8.062500 +v -0.481542 -0.431112 8.062500 +v -0.595393 -0.343750 8.062500 +v -0.614124 -0.201472 8.062500 +v -0.526763 -0.087620 8.062500 +v -0.497718 -0.491482 8.062500 +v -0.649519 -0.375000 8.062500 +v -0.308013 -0.466507 8.062500 +v -0.191531 -0.314705 8.062500 +v -0.216507 -0.125000 8.062500 +v -0.368308 -0.008519 8.062500 +v -0.558013 -0.033494 8.062500 +v -0.674495 -0.185295 8.062500 +v 0.339263 0.412380 8.000000 +v 0.526763 0.087620 8.000000 +v 0.270633 0.156250 8.000000 +v 0.595393 0.343750 8.000000 +v 0.384484 0.068889 8.000000 +v 0.481542 0.431112 8.000000 +v 0.614124 0.201472 8.000000 +v 0.251902 0.298529 8.000000 +v 0.649519 0.375000 8.000000 +v 0.497718 0.491482 8.000000 +v 0.308013 0.466507 8.000000 +v 0.191531 0.314705 8.000000 +v 0.216507 0.125000 8.000000 +v 0.368308 0.008519 8.000000 +v 0.558013 0.033494 8.000000 +v 0.674495 0.185295 8.000000 +v 0.270633 0.156250 8.062500 +v 0.384484 0.068889 8.062500 +v 0.251902 0.298529 8.062500 +v 0.339263 0.412380 8.062500 +v 0.481542 0.431112 8.062500 +v 0.595393 0.343750 8.062500 +v 0.614124 0.201472 8.062500 +v 0.526763 0.087620 8.062500 +v 0.497718 0.491482 8.062500 +v 0.649519 0.375000 8.062500 +v 0.308013 0.466507 8.062500 +v 0.191531 0.314705 8.062500 +v 0.216507 0.125000 8.062500 +v 0.368308 0.008519 8.062500 +v 0.558013 0.033494 8.062500 +v 0.674495 0.185295 8.062500 +v -0.526763 0.087620 8.000000 +v -0.339263 0.412380 8.000000 +v -0.270633 0.156250 8.000000 +v -0.595393 0.343750 8.000000 +v -0.251902 0.298529 8.000000 +v -0.614124 0.201472 8.000000 +v -0.481542 0.431112 8.000000 +v -0.384484 0.068889 8.000000 +v -0.649519 0.375000 8.000000 +v -0.674495 0.185296 8.000000 +v -0.558013 0.033494 8.000000 +v -0.368308 0.008518 8.000000 +v -0.216507 0.125000 8.000000 +v -0.191531 0.314705 8.000000 +v -0.308013 0.466507 8.000000 +v -0.497718 0.491482 8.000000 +v -0.270633 0.156250 8.062500 +v -0.251902 0.298529 8.062500 +v -0.384484 0.068889 8.062500 +v -0.526763 0.087620 8.062500 +v -0.614124 0.201472 8.062500 +v -0.595393 0.343750 8.062500 +v -0.481542 0.431112 8.062500 +v -0.339263 0.412380 8.062500 +v -0.674495 0.185296 8.062500 +v -0.649519 0.375000 8.062500 +v -0.558013 0.033494 8.062500 +v -0.368308 0.008518 8.062500 +v -0.216507 0.125000 8.062500 +v -0.191531 0.314705 8.062500 +v -0.308013 0.466507 8.062500 +v -0.497718 0.491482 8.062500 +v 0.526763 -0.087620 8.000000 +v 0.339263 -0.412380 8.000000 +v 0.270633 -0.156250 8.000000 +v 0.595393 -0.343750 8.000000 +v 0.251902 -0.298529 8.000000 +v 0.614124 -0.201472 8.000000 +v 0.481542 -0.431112 8.000000 +v 0.384484 -0.068889 8.000000 +v 0.649519 -0.375000 8.000000 +v 0.674495 -0.185296 8.000000 +v 0.558013 -0.033494 8.000000 +v 0.368308 -0.008518 8.000000 +v 0.216507 -0.125000 8.000000 +v 0.191531 -0.314705 8.000000 +v 0.308013 -0.466507 8.000000 +v 0.497718 -0.491482 8.000000 +v 0.270633 -0.156250 8.062500 +v 0.251902 -0.298529 8.062500 +v 0.384484 -0.068889 8.062500 +v 0.526763 -0.087620 8.062500 +v 0.614124 -0.201472 8.062500 +v 0.595393 -0.343750 8.062500 +v 0.481542 -0.431112 8.062500 +v 0.339263 -0.412380 8.062500 +v 0.674495 -0.185296 8.062500 +v 0.649519 -0.375000 8.062500 +v 0.558013 -0.033494 8.062500 +v 0.368308 -0.008518 8.062500 +v 0.216507 -0.125000 8.062500 +v 0.191531 -0.314705 8.062500 +v 0.308013 -0.466507 8.062500 +v 0.497718 -0.491482 8.062500 +vt 0.574405 0.179713 +vt 0.619624 0.179713 +vt 0.597015 0.343699 +vt 0.574406 0.507787 +vt 0.574406 0.398463 +vt 0.597015 0.343801 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.640568 0.398416 +vt 0.656716 0.281294 +vt 0.672865 0.398416 +vt 0.640568 0.164085 +vt 0.672864 0.164085 +vt 0.656716 0.281206 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.671642 0.484375 +vt 0.667910 0.468750 +vt 0.671642 0.468750 +vt 0.667910 0.500000 +vt 0.667910 0.484375 +vt 0.671642 0.500000 +vt 0.667910 0.515625 +vt 0.671642 0.515625 +vt 0.667910 0.531250 +vt 0.671642 0.546875 +vt 0.671642 0.531250 +vt 0.667910 0.562500 +vt 0.667910 0.546875 +vt 0.671642 0.453125 +vt 0.667910 0.437500 +vt 0.671642 0.437500 +vt 0.667910 0.453125 +vt 0.583961 0.329052 +vt 0.574405 0.289037 +vt 0.570908 0.234375 +vt 0.583961 0.139698 +vt 0.597015 0.125051 +vt 0.610068 0.139698 +vt 0.623122 0.234375 +vt 0.619624 0.289037 +vt 0.610068 0.329052 +vt 0.619624 0.507787 +vt 0.610068 0.547802 +vt 0.597015 0.562449 +vt 0.583961 0.547802 +vt 0.570908 0.453125 +vt 0.583961 0.358448 +vt 0.610068 0.358448 +vt 0.619624 0.398463 +vt 0.623122 0.453125 +vt 0.671642 0.562500 +vt 0.666040 0.426995 +vt 0.656716 0.437456 +vt 0.647393 0.426995 +vt 0.638070 0.359375 +vt 0.640568 0.320335 +vt 0.647393 0.291755 +vt 0.666040 0.291755 +vt 0.672865 0.320335 +vt 0.675363 0.359375 +vt 0.647393 0.270745 +vt 0.640568 0.242166 +vt 0.638070 0.203125 +vt 0.647393 0.135505 +vt 0.656716 0.125044 +vt 0.666039 0.135505 +vt 0.675363 0.203125 +vt 0.672864 0.242166 +vt 0.666039 0.270745 +vt 0.671642 0.562500 +vt 0.671642 0.562500 +vt 0.671642 0.562500 +vt 0.671642 0.562500 +vt 0.671642 0.562500 +vt 0.630597 0.187500 +vt 0.623134 0.125000 +vt 0.630597 0.125000 +vt 0.630597 0.750000 +vt 0.623134 0.687500 +vt 0.630597 0.687500 +vt 0.630597 0.437500 +vt 0.623134 0.375000 +vt 0.630597 0.375000 +vt 0.630597 0.562500 +vt 0.623134 0.500000 +vt 0.630597 0.500000 +vt 0.630597 0.250000 +vt 0.623134 0.187500 +vt 0.630597 0.812500 +vt 0.623134 0.750000 +vt 0.623134 0.437500 +vt 0.630597 0.625000 +vt 0.623134 0.562500 +vt 0.630597 0.312500 +vt 0.623134 0.250000 +vt 0.630597 0.875000 +vt 0.623134 0.812500 +vt 0.623134 0.625000 +vt 0.623134 0.312500 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.570895 0.265625 +vt 0.555970 0.250000 +vt 0.570895 0.250000 +vt 0.570895 0.187500 +vt 0.555970 0.171875 +vt 0.570895 0.171875 +vt 0.570895 0.140625 +vt 0.555970 0.125000 +vt 0.570895 0.125000 +vt 0.570895 0.281250 +vt 0.555970 0.265625 +vt 0.570895 0.203125 +vt 0.555970 0.187500 +vt 0.570895 0.234375 +vt 0.555970 0.218750 +vt 0.570895 0.218750 +vt 0.570895 0.156250 +vt 0.555970 0.140625 +vt 0.570895 0.296875 +vt 0.555970 0.281250 +vt 0.555970 0.203125 +vt 0.555970 0.234375 +vt 0.555970 0.156250 +vt 0.570895 0.312500 +vt 0.555970 0.296875 +vt 0.638060 0.359375 +vt 0.630597 0.312500 +vt 0.638060 0.312500 +vt 0.638060 0.453125 +vt 0.630597 0.406250 +vt 0.638060 0.406250 +vt 0.638060 0.218750 +vt 0.630597 0.171875 +vt 0.638060 0.171875 +vt 0.638060 0.640625 +vt 0.630597 0.593750 +vt 0.638060 0.593750 +vt 0.630597 0.359375 +vt 0.638060 0.500000 +vt 0.630597 0.453125 +vt 0.638060 0.265625 +vt 0.630597 0.218750 +vt 0.638060 0.687500 +vt 0.630597 0.640625 +vt 0.638060 0.546875 +vt 0.630597 0.500000 +vt 0.630597 0.265625 +vt 0.630597 0.125000 +vt 0.638060 0.125000 +vt 0.630597 0.546875 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.664179 0.468750 +vt 0.675373 0.484375 +vt 0.675373 0.453125 +vt 0.664179 0.484375 +vt 0.664179 0.500000 +vt 0.675373 0.562500 +vt 0.664179 0.515625 +vt 0.675373 0.546875 +vt 0.664179 0.531250 +vt 0.675373 0.531250 +vt 0.664179 0.546875 +vt 0.675373 0.515625 +vt 0.664179 0.437500 +vt 0.675373 0.500000 +vt 0.664179 0.453125 +vt 0.675373 0.468750 +vt 0.623134 0.875000 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vt 0.555970 0.312500 +vt 0.630597 0.687500 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vt 0.675373 0.437500 +vt 0.664179 0.562500 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.5000 0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 0.7071 0.0000 +vn -0.9659 0.2588 0.0000 +vn 0.9659 -0.2588 0.0000 +vn -0.2588 -0.9659 0.0000 +vn 0.2588 0.9659 0.0000 +vn -0.2588 0.9659 0.0000 +vn 0.2588 -0.9659 0.0000 +vn -0.9659 -0.2588 0.0000 +vn 0.9659 0.2588 0.0000 +s off +f 177/305/50 181/306/50 173/307/50 +f 171/308/51 169/309/51 167/310/51 +f 191/311/51 199/312/51 186/313/51 +f 191/311/51 193/314/51 200/315/51 +f 188/316/51 194/317/51 193/314/51 +f 190/318/51 195/319/51 194/317/51 +f 192/320/51 195/319/51 185/321/51 +f 192/320/51 197/322/51 196/323/51 +f 189/324/51 197/325/51 187/326/51 +f 189/324/51 199/312/51 198/327/51 +f 251/328/51 247/329/51 243/330/51 +f 257/331/50 261/332/50 253/333/50 +f 271/334/51 279/335/51 266/336/51 +f 271/334/51 273/337/51 280/338/51 +f 268/339/51 274/340/51 273/337/51 +f 270/341/51 275/342/51 274/340/51 +f 272/343/51 275/342/51 265/344/51 +f 272/343/51 277/345/51 276/346/51 +f 269/347/51 277/348/51 267/349/51 +f 269/347/51 279/335/51 278/350/51 +f 303/351/51 311/352/51 298/353/51 +f 303/351/51 305/354/51 312/355/51 +f 300/356/51 306/357/51 305/354/51 +f 302/358/51 307/359/51 306/357/51 +f 304/360/51 307/359/51 297/361/51 +f 304/360/51 309/362/51 308/363/51 +f 301/364/51 309/365/51 299/366/51 +f 301/364/51 311/352/51 310/367/51 +f 335/368/51 343/369/51 330/370/51 +f 335/368/51 337/371/51 344/372/51 +f 332/373/51 338/374/51 337/371/51 +f 334/375/51 339/376/51 338/374/51 +f 336/377/51 339/376/51 329/378/51 +f 336/377/51 341/379/51 340/380/51 +f 333/381/51 341/382/51 331/383/51 +f 333/381/51 343/369/51 342/384/51 +f 367/385/51 375/386/51 362/387/51 +f 367/385/51 369/388/51 376/389/51 +f 364/390/51 370/391/51 369/388/51 +f 366/392/51 371/393/51 370/391/51 +f 368/394/51 371/393/51 361/395/51 +f 368/394/51 373/396/51 372/397/51 +f 365/398/51 373/399/51 363/400/51 +f 365/398/51 375/386/51 374/401/51 +f 399/402/51 407/403/51 394/404/51 +f 399/402/51 401/405/51 408/406/51 +f 396/407/51 402/408/51 401/405/51 +f 398/409/51 403/410/51 402/408/51 +f 400/411/51 403/410/51 393/412/51 +f 400/411/51 405/413/51 404/414/51 +f 397/415/51 405/416/51 395/417/51 +f 397/415/51 407/403/51 406/418/51 +f 173/307/50 174/419/50 175/420/50 +f 175/420/50 176/421/50 173/307/50 +f 176/421/50 177/305/50 173/307/50 +f 177/305/50 178/422/50 179/423/50 +f 179/423/50 180/424/50 181/306/50 +f 181/306/50 182/425/50 183/426/50 +f 183/426/50 184/427/50 173/307/50 +f 177/305/50 179/423/50 181/306/50 +f 181/306/50 183/426/50 173/307/50 +f 163/428/51 162/429/51 161/430/51 +f 161/430/51 172/431/51 171/308/51 +f 171/308/51 170/432/51 169/309/51 +f 169/309/51 168/433/51 167/310/51 +f 167/310/51 166/434/51 165/435/51 +f 165/435/51 164/436/51 167/310/51 +f 164/436/51 163/428/51 167/310/51 +f 163/428/51 161/430/51 167/310/51 +f 161/430/51 171/308/51 167/310/51 +f 191/311/51 200/315/51 199/312/51 +f 191/311/51 188/316/51 193/314/51 +f 188/316/51 190/318/51 194/317/51 +f 190/318/51 185/321/51 195/319/51 +f 192/320/51 196/323/51 195/319/51 +f 192/320/51 187/437/51 197/322/51 +f 189/324/51 198/327/51 197/325/51 +f 189/324/51 186/313/51 199/312/51 +f 243/330/51 242/438/51 251/328/51 +f 242/438/51 241/439/51 251/328/51 +f 241/439/51 252/440/51 251/328/51 +f 251/328/51 250/441/51 249/442/51 +f 249/442/51 248/443/51 251/328/51 +f 248/443/51 247/329/51 251/328/51 +f 247/329/51 246/444/51 243/330/51 +f 246/444/51 245/445/51 243/330/51 +f 245/445/51 244/446/51 243/330/51 +f 253/333/50 254/447/50 257/331/50 +f 254/447/50 255/448/50 257/331/50 +f 255/448/50 256/449/50 257/331/50 +f 257/331/50 258/450/50 261/332/50 +f 258/450/50 259/451/50 261/332/50 +f 259/451/50 260/452/50 261/332/50 +f 261/332/50 262/453/50 263/454/50 +f 263/454/50 264/455/50 261/332/50 +f 264/455/50 253/333/50 261/332/50 +f 271/334/51 280/338/51 279/335/51 +f 271/334/51 268/339/51 273/337/51 +f 268/339/51 270/341/51 274/340/51 +f 270/341/51 265/344/51 275/342/51 +f 272/343/51 276/346/51 275/342/51 +f 272/343/51 267/456/51 277/345/51 +f 269/347/51 278/350/51 277/348/51 +f 269/347/51 266/336/51 279/335/51 +f 303/351/51 312/355/51 311/352/51 +f 303/351/51 300/356/51 305/354/51 +f 300/356/51 302/358/51 306/357/51 +f 302/358/51 297/361/51 307/359/51 +f 304/360/51 308/363/51 307/359/51 +f 304/360/51 299/457/51 309/362/51 +f 301/364/51 310/367/51 309/365/51 +f 301/364/51 298/353/51 311/352/51 +f 335/368/51 344/372/51 343/369/51 +f 335/368/51 332/373/51 337/371/51 +f 332/373/51 334/375/51 338/374/51 +f 334/375/51 329/378/51 339/376/51 +f 336/377/51 340/380/51 339/376/51 +f 336/377/51 331/458/51 341/379/51 +f 333/381/51 342/384/51 341/382/51 +f 333/381/51 330/370/51 343/369/51 +f 367/385/51 376/389/51 375/386/51 +f 367/385/51 364/390/51 369/388/51 +f 364/390/51 366/392/51 370/391/51 +f 366/392/51 361/395/51 371/393/51 +f 368/394/51 372/397/51 371/393/51 +f 368/394/51 363/459/51 373/396/51 +f 365/398/51 374/401/51 373/399/51 +f 365/398/51 362/387/51 375/386/51 +f 399/402/51 408/406/51 407/403/51 +f 399/402/51 396/407/51 401/405/51 +f 396/407/51 398/409/51 402/408/51 +f 398/409/51 393/412/51 403/410/51 +f 400/411/51 404/414/51 403/410/51 +f 400/411/51 395/460/51 405/413/51 +f 397/415/51 406/418/51 405/416/51 +f 397/415/51 394/404/51 407/403/51 +s 1 +f 168/461/52 179/462/53 167/463/53 +f 165/464/54 176/465/55 164/466/55 +f 172/467/56 183/468/57 171/469/57 +f 162/470/58 173/471/59 161/472/59 +f 169/473/60 180/474/52 168/461/52 +f 166/475/61 177/476/54 165/464/54 +f 161/472/59 184/477/56 172/467/56 +f 163/478/62 174/479/58 162/470/58 +f 170/480/63 181/481/60 169/473/60 +f 167/482/53 178/483/61 166/475/61 +f 164/466/55 175/484/62 163/478/62 +f 171/469/57 182/485/63 170/480/63 +f 200/315/64 215/486/55 199/312/55 +f 186/313/63 207/487/65 191/311/65 +f 187/326/53 202/488/66 189/324/66 +f 193/314/53 216/489/64 200/315/64 +f 194/317/66 210/490/53 193/314/53 +f 192/320/64 201/491/53 187/437/53 +f 195/319/63 209/492/66 194/317/66 +f 185/321/55 203/493/64 192/320/64 +f 196/323/65 211/494/63 195/319/63 +f 190/318/67 204/495/55 185/321/55 +f 197/322/59 212/496/65 196/323/65 +f 188/316/59 205/497/67 190/318/67 +f 198/327/67 213/498/59 197/325/59 +f 191/311/65 206/499/59 188/316/59 +f 199/312/55 214/500/67 198/327/67 +f 189/324/66 208/501/63 186/313/63 +f 220/502/55 231/503/62 219/504/62 +f 227/505/57 238/506/63 226/507/63 +f 224/508/52 235/509/53 223/510/53 +f 221/511/54 232/512/55 220/502/55 +f 228/513/56 239/514/57 227/505/57 +f 218/515/58 229/516/59 217/517/59 +f 225/518/60 236/519/52 224/508/52 +f 222/520/61 233/521/54 221/511/54 +f 217/517/59 240/522/56 228/513/56 +f 219/504/62 230/523/58 218/515/58 +f 226/507/63 237/524/60 225/518/60 +f 223/525/53 234/526/61 222/520/61 +f 252/527/56 263/528/57 251/529/57 +f 242/530/58 253/531/59 241/532/59 +f 249/533/60 260/534/52 248/535/52 +f 246/536/61 257/537/54 245/538/54 +f 241/532/59 264/539/56 252/527/56 +f 243/540/62 254/541/58 242/530/58 +f 250/542/63 261/543/60 249/533/60 +f 247/544/53 258/545/61 246/536/61 +f 244/546/55 255/547/62 243/540/62 +f 251/529/57 262/548/63 250/542/63 +f 248/535/52 259/549/53 247/550/53 +f 245/538/54 256/551/55 244/546/55 +f 280/338/65 295/552/63 279/335/63 +f 266/336/55 287/553/64 271/334/64 +f 267/349/59 282/554/67 269/347/67 +f 273/337/59 296/555/65 280/338/65 +f 274/340/67 290/556/59 273/337/59 +f 272/343/65 281/557/59 267/456/59 +f 275/342/55 289/558/67 274/340/67 +f 265/344/63 283/559/65 272/343/65 +f 276/346/64 291/560/55 275/342/55 +f 270/341/66 284/561/63 265/344/63 +f 277/345/53 292/562/64 276/346/64 +f 268/339/53 285/563/66 270/341/66 +f 278/350/66 293/564/53 277/348/53 +f 271/334/64 286/565/53 268/339/53 +f 279/335/63 294/566/66 278/350/66 +f 269/347/67 288/567/55 266/336/55 +f 312/355/68 327/568/58 311/352/58 +f 298/353/52 319/569/69 303/351/69 +f 299/366/54 314/570/70 301/364/70 +f 305/354/54 328/571/68 312/355/68 +f 306/357/70 322/572/54 305/354/54 +f 304/360/68 313/573/54 299/457/54 +f 307/359/52 321/574/70 306/357/70 +f 297/361/58 315/575/68 304/360/68 +f 308/363/69 323/576/52 307/359/52 +f 302/358/71 316/577/58 297/361/58 +f 309/362/57 324/578/69 308/363/69 +f 300/356/57 317/579/71 302/358/71 +f 310/367/71 325/580/57 309/365/57 +f 303/351/69 318/581/57 300/356/57 +f 311/352/58 326/582/71 310/367/71 +f 301/364/70 320/583/52 298/353/52 +f 344/372/69 359/584/52 343/369/52 +f 330/370/58 351/585/68 335/368/68 +f 331/383/57 346/586/71 333/381/71 +f 337/371/57 360/587/69 344/372/69 +f 338/374/71 354/588/57 337/371/57 +f 336/377/69 345/589/57 331/458/57 +f 339/376/58 353/590/71 338/374/71 +f 329/378/52 347/591/69 336/377/69 +f 340/380/68 355/592/58 339/376/58 +f 334/375/70 348/593/52 329/378/52 +f 341/379/54 356/594/68 340/380/68 +f 332/373/54 349/595/70 334/375/70 +f 342/384/70 357/596/54 341/382/54 +f 335/368/68 350/597/54 332/373/54 +f 343/369/52 358/598/70 342/384/70 +f 333/381/71 352/599/58 330/370/58 +f 376/389/72 391/600/56 375/386/56 +f 362/387/61 383/601/73 367/385/73 +f 363/400/62 378/602/74 365/398/74 +f 369/388/62 392/603/72 376/389/72 +f 370/391/74 386/604/62 369/388/62 +f 368/394/72 377/605/62 363/459/62 +f 371/393/61 385/606/74 370/391/74 +f 361/395/56 379/607/72 368/394/72 +f 372/397/73 387/608/61 371/393/61 +f 366/392/75 380/609/56 361/395/56 +f 373/396/60 388/610/73 372/397/73 +f 364/390/60 381/611/75 366/392/75 +f 374/401/75 389/612/60 373/399/60 +f 367/385/73 382/613/60 364/390/60 +f 375/386/56 390/614/75 374/401/75 +f 365/398/74 384/615/61 362/387/61 +f 408/406/73 423/616/61 407/403/61 +f 394/404/56 415/617/72 399/402/72 +f 395/417/60 410/618/75 397/415/75 +f 401/405/60 424/619/73 408/406/73 +f 402/408/75 418/620/60 401/405/60 +f 400/411/73 409/621/60 395/460/60 +f 403/410/56 417/622/75 402/408/75 +f 393/412/61 411/623/73 400/411/73 +f 404/414/72 419/624/56 403/410/56 +f 398/409/74 412/625/61 393/412/61 +f 405/413/62 420/626/72 404/414/72 +f 396/407/62 413/627/74 398/409/74 +f 406/418/74 421/628/62 405/416/62 +f 399/402/72 414/629/62 396/407/62 +f 407/403/61 422/630/74 406/418/74 +f 397/415/75 416/631/56 394/404/56 +f 168/461/52 180/474/52 179/462/53 +f 165/464/54 177/476/54 176/465/55 +f 172/467/56 184/477/56 183/468/57 +f 162/470/58 174/479/58 173/471/59 +f 169/473/60 181/481/60 180/474/52 +f 166/475/61 178/483/61 177/476/54 +f 161/472/59 173/471/59 184/477/56 +f 163/478/62 175/484/62 174/479/58 +f 170/480/63 182/485/63 181/481/60 +f 167/482/53 179/632/53 178/483/61 +f 164/466/55 176/465/55 175/484/62 +f 171/469/57 183/468/57 182/485/63 +f 200/315/64 216/489/64 215/486/55 +f 186/313/63 208/501/63 207/487/65 +f 187/326/53 201/633/53 202/488/66 +f 193/314/53 210/490/53 216/489/64 +f 194/317/66 209/492/66 210/490/53 +f 192/320/64 203/493/64 201/491/53 +f 195/319/63 211/494/63 209/492/66 +f 185/321/55 204/495/55 203/493/64 +f 196/323/65 212/496/65 211/494/63 +f 190/318/67 205/497/67 204/495/55 +f 197/322/59 213/634/59 212/496/65 +f 188/316/59 206/499/59 205/497/67 +f 198/327/67 214/500/67 213/498/59 +f 191/311/65 207/487/65 206/499/59 +f 199/312/55 215/486/55 214/500/67 +f 189/324/66 202/488/66 208/501/63 +f 220/502/55 232/512/55 231/503/62 +f 227/505/57 239/514/57 238/506/63 +f 224/508/52 236/519/52 235/509/53 +f 221/511/54 233/521/54 232/512/55 +f 228/513/56 240/522/56 239/514/57 +f 218/515/58 230/523/58 229/516/59 +f 225/518/60 237/524/60 236/519/52 +f 222/520/61 234/526/61 233/521/54 +f 217/517/59 229/516/59 240/522/56 +f 219/504/62 231/503/62 230/523/58 +f 226/507/63 238/506/63 237/524/60 +f 223/525/53 235/635/53 234/526/61 +f 252/527/56 264/539/56 263/528/57 +f 242/530/58 254/541/58 253/531/59 +f 249/533/60 261/543/60 260/534/52 +f 246/536/61 258/545/61 257/537/54 +f 241/532/59 253/531/59 264/539/56 +f 243/540/62 255/547/62 254/541/58 +f 250/542/63 262/548/63 261/543/60 +f 247/544/53 259/636/53 258/545/61 +f 244/546/55 256/551/55 255/547/62 +f 251/529/57 263/528/57 262/548/63 +f 248/535/52 260/534/52 259/549/53 +f 245/538/54 257/537/54 256/551/55 +f 280/338/65 296/555/65 295/552/63 +f 266/336/55 288/567/55 287/553/64 +f 267/349/59 281/637/59 282/554/67 +f 273/337/59 290/556/59 296/555/65 +f 274/340/67 289/558/67 290/556/59 +f 272/343/65 283/559/65 281/557/59 +f 275/342/55 291/560/55 289/558/67 +f 265/344/63 284/561/63 283/559/65 +f 276/346/64 292/562/64 291/560/55 +f 270/341/66 285/563/66 284/561/63 +f 277/345/53 293/638/53 292/562/64 +f 268/339/53 286/565/53 285/563/66 +f 278/350/66 294/566/66 293/564/53 +f 271/334/64 287/553/64 286/565/53 +f 279/335/63 295/552/63 294/566/66 +f 269/347/67 282/554/67 288/567/55 +f 312/355/68 328/571/68 327/568/58 +f 298/353/52 320/583/52 319/569/69 +f 299/366/54 313/639/54 314/570/70 +f 305/354/54 322/572/54 328/571/68 +f 306/357/70 321/574/70 322/572/54 +f 304/360/68 315/575/68 313/573/54 +f 307/359/52 323/576/52 321/574/70 +f 297/361/58 316/577/58 315/575/68 +f 308/363/69 324/578/69 323/576/52 +f 302/358/71 317/579/71 316/577/58 +f 309/362/57 325/640/57 324/578/69 +f 300/356/57 318/581/57 317/579/71 +f 310/367/71 326/582/71 325/580/57 +f 303/351/69 319/569/69 318/581/57 +f 311/352/58 327/568/58 326/582/71 +f 301/364/70 314/570/70 320/583/52 +f 344/372/69 360/587/69 359/584/52 +f 330/370/58 352/599/58 351/585/68 +f 331/383/57 345/641/57 346/586/71 +f 337/371/57 354/588/57 360/587/69 +f 338/374/71 353/590/71 354/588/57 +f 336/377/69 347/591/69 345/589/57 +f 339/376/58 355/592/58 353/590/71 +f 329/378/52 348/593/52 347/591/69 +f 340/380/68 356/594/68 355/592/58 +f 334/375/70 349/595/70 348/593/52 +f 341/379/54 357/642/54 356/594/68 +f 332/373/54 350/597/54 349/595/70 +f 342/384/70 358/598/70 357/596/54 +f 335/368/68 351/585/68 350/597/54 +f 343/369/52 359/584/52 358/598/70 +f 333/381/71 346/586/71 352/599/58 +f 376/389/72 392/603/72 391/600/56 +f 362/387/61 384/615/61 383/601/73 +f 363/400/62 377/643/62 378/602/74 +f 369/388/62 386/604/62 392/603/72 +f 370/391/74 385/606/74 386/604/62 +f 368/394/72 379/607/72 377/605/62 +f 371/393/61 387/608/61 385/606/74 +f 361/395/56 380/609/56 379/607/72 +f 372/397/73 388/610/73 387/608/61 +f 366/392/75 381/611/75 380/609/56 +f 373/396/60 389/644/60 388/610/73 +f 364/390/60 382/613/60 381/611/75 +f 374/401/75 390/614/75 389/612/60 +f 367/385/73 383/601/73 382/613/60 +f 375/386/56 391/600/56 390/614/75 +f 365/398/74 378/602/74 384/615/61 +f 408/406/73 424/619/73 423/616/61 +f 394/404/56 416/631/56 415/617/72 +f 395/417/60 409/645/60 410/618/75 +f 401/405/60 418/620/60 424/619/73 +f 402/408/75 417/622/75 418/620/60 +f 400/411/73 411/623/73 409/621/60 +f 403/410/56 419/624/56 417/622/75 +f 393/412/61 412/625/61 411/623/73 +f 404/414/72 420/626/72 419/624/56 +f 398/409/74 413/627/74 412/625/61 +f 405/413/62 421/646/62 420/626/72 +f 396/407/62 414/629/62 413/627/74 +f 406/418/74 422/630/74 421/628/62 +f 399/402/72 415/617/72 414/629/62 +f 407/403/61 423/616/61 422/630/74 +f 397/415/75 410/618/75 416/631/56 +o Shot +v 0.000000 0.500000 8.187500 +v -0.132583 0.500000 8.132584 +v -0.187500 0.500000 8.000000 +v -0.132583 0.500000 7.867418 +v 0.000000 0.500000 7.812500 +v 0.132583 0.500000 7.867418 +v 0.187500 0.500000 8.000000 +v 0.132583 0.500000 8.132584 +v 0.000000 0.367418 8.132584 +v 0.000000 0.312500 8.000000 +v 0.000000 0.367418 7.867418 +v 0.000000 0.632583 7.867418 +v 0.000000 0.687500 8.000000 +v 0.000000 0.632583 8.132584 +v 0.093750 0.406250 8.132584 +v 0.132583 0.367418 8.000000 +v 0.093750 0.406250 7.867418 +v -0.093750 0.593750 7.867418 +v -0.132583 0.632583 8.000000 +v -0.093750 0.593750 8.132584 +v 0.093750 0.593750 8.132584 +v 0.132583 0.632583 8.000000 +v 0.093750 0.593750 7.867418 +v -0.093750 0.406250 7.867418 +v -0.132583 0.367418 8.000000 +v -0.093750 0.406250 8.132584 +v 0.000000 -0.500000 8.187500 +v 0.132583 -0.500000 8.132584 +v 0.187500 -0.500000 8.000000 +v 0.132583 -0.500000 7.867418 +v 0.000000 -0.500000 7.812500 +v -0.132583 -0.500000 7.867418 +v -0.187500 -0.500000 8.000000 +v -0.132583 -0.500000 8.132584 +v 0.000000 -0.367418 8.132584 +v 0.000000 -0.312500 8.000000 +v 0.000000 -0.367418 7.867418 +v 0.000000 -0.632583 7.867418 +v 0.000000 -0.687500 8.000000 +v 0.000000 -0.632583 8.132584 +v -0.093750 -0.406250 8.132584 +v -0.132583 -0.367418 8.000000 +v -0.093750 -0.406250 7.867418 +v 0.093750 -0.593750 7.867418 +v 0.132583 -0.632583 8.000000 +v 0.093750 -0.593750 8.132584 +v -0.093750 -0.593750 8.132584 +v -0.132583 -0.632583 8.000000 +v -0.093750 -0.593750 7.867418 +v 0.093750 -0.406250 7.867418 +v 0.132583 -0.367418 8.000000 +v 0.093750 -0.406250 8.132584 +v 0.433013 0.250000 8.187500 +v 0.366722 0.364820 8.132584 +v 0.339263 0.412380 8.000000 +v 0.366722 0.364820 7.867418 +v 0.433013 0.250000 7.812500 +v 0.499304 0.135180 7.867418 +v 0.526763 0.087620 8.000000 +v 0.499304 0.135180 8.132584 +v 0.318193 0.183709 8.132584 +v 0.270633 0.156250 8.000000 +v 0.318193 0.183709 7.867418 +v 0.547833 0.316292 7.867418 +v 0.595393 0.343750 8.000000 +v 0.547833 0.316292 8.132584 +v 0.398698 0.121935 8.132584 +v 0.384484 0.068889 8.000000 +v 0.398698 0.121935 7.867418 +v 0.467328 0.378065 7.867418 +v 0.481542 0.431112 8.000000 +v 0.467328 0.378065 8.132584 +v 0.561078 0.215685 8.132584 +v 0.614124 0.201472 8.000000 +v 0.561078 0.215685 7.867418 +v 0.304948 0.284315 7.867418 +v 0.251902 0.298529 8.000000 +v 0.304948 0.284315 8.132584 +v -0.433013 -0.250000 8.187500 +v -0.366722 -0.364820 8.132584 +v -0.339263 -0.412380 8.000000 +v -0.366722 -0.364820 7.867418 +v -0.433013 -0.250000 7.812500 +v -0.499304 -0.135180 7.867418 +v -0.526763 -0.087620 8.000000 +v -0.499304 -0.135180 8.132584 +v -0.318193 -0.183709 8.132584 +v -0.270633 -0.156250 8.000000 +v -0.318193 -0.183709 7.867418 +v -0.547833 -0.316292 7.867418 +v -0.595393 -0.343750 8.000000 +v -0.547833 -0.316292 8.132584 +v -0.398698 -0.121935 8.132584 +v -0.384484 -0.068889 8.000000 +v -0.398698 -0.121935 7.867418 +v -0.467328 -0.378065 7.867418 +v -0.481542 -0.431112 8.000000 +v -0.467328 -0.378065 8.132584 +v -0.561078 -0.215685 8.132584 +v -0.614124 -0.201472 8.000000 +v -0.561078 -0.215685 7.867418 +v -0.304948 -0.284315 7.867418 +v -0.251902 -0.298529 8.000000 +v -0.304948 -0.284315 8.132584 +v 0.433013 -0.250000 8.187500 +v 0.499304 -0.135180 8.132584 +v 0.526763 -0.087620 8.000000 +v 0.499304 -0.135180 7.867418 +v 0.433013 -0.250000 7.812500 +v 0.366722 -0.364820 7.867418 +v 0.339263 -0.412380 8.000000 +v 0.366722 -0.364820 8.132584 +v 0.318193 -0.183709 8.132584 +v 0.270633 -0.156250 8.000000 +v 0.318193 -0.183709 7.867418 +v 0.547833 -0.316292 7.867418 +v 0.595393 -0.343750 8.000000 +v 0.547833 -0.316292 8.132584 +v 0.304948 -0.284315 8.132584 +v 0.251902 -0.298529 8.000000 +v 0.304948 -0.284315 7.867418 +v 0.561078 -0.215685 7.867418 +v 0.614124 -0.201472 8.000000 +v 0.561078 -0.215685 8.132584 +v 0.467328 -0.378065 8.132584 +v 0.481542 -0.431112 8.000000 +v 0.467328 -0.378065 7.867418 +v 0.398698 -0.121935 7.867418 +v 0.384484 -0.068889 8.000000 +v 0.398698 -0.121935 8.132584 +v -0.433013 0.250000 8.187500 +v -0.499304 0.135180 8.132584 +v -0.526763 0.087620 8.000000 +v -0.499304 0.135180 7.867418 +v -0.433013 0.250000 7.812500 +v -0.366722 0.364820 7.867418 +v -0.339263 0.412380 8.000000 +v -0.366722 0.364820 8.132584 +v -0.318193 0.183709 8.132584 +v -0.270633 0.156250 8.000000 +v -0.318193 0.183709 7.867418 +v -0.547833 0.316292 7.867418 +v -0.595393 0.343750 8.000000 +v -0.547833 0.316292 8.132584 +v -0.304948 0.284315 8.132584 +v -0.251902 0.298529 8.000000 +v -0.304948 0.284315 7.867418 +v -0.561078 0.215685 7.867418 +v -0.614124 0.201472 8.000000 +v -0.561078 0.215685 8.132584 +v -0.467328 0.378065 8.132584 +v -0.481542 0.431112 8.000000 +v -0.467328 0.378065 7.867418 +v -0.398698 0.121935 7.867418 +v -0.384484 0.068889 8.000000 +v -0.398698 0.121935 8.132584 +vt 0.641791 0.437500 +vt 0.645522 0.453125 +vt 0.641791 0.453125 +vt 0.645965 0.438018 +vt 0.649254 0.453125 +vt 0.645522 0.546875 +vt 0.641791 0.562500 +vt 0.641791 0.546875 +vt 0.649254 0.546875 +vt 0.645522 0.562500 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.641791 0.515625 +vt 0.645522 0.515625 +vt 0.641791 0.500000 +vt 0.645522 0.500000 +vt 0.645522 0.484375 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.649254 0.562500 +vt 0.649254 0.437500 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.641791 0.437500 +vt 0.645522 0.453125 +vt 0.641791 0.453125 +vt 0.645965 0.438018 +vt 0.649254 0.453125 +vt 0.645522 0.546875 +vt 0.641791 0.562500 +vt 0.641791 0.546875 +vt 0.649254 0.546875 +vt 0.645522 0.562500 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.641791 0.515625 +vt 0.645522 0.515625 +vt 0.641791 0.500000 +vt 0.645522 0.500000 +vt 0.645522 0.484375 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.649254 0.562500 +vt 0.649254 0.437500 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.641791 0.437500 +vt 0.645522 0.453125 +vt 0.641791 0.453125 +vt 0.649254 0.437500 +vt 0.645965 0.438018 +vt 0.641791 0.546875 +vt 0.645522 0.562500 +vt 0.641791 0.562500 +vt 0.649254 0.546875 +vt 0.645522 0.546875 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.645522 0.515625 +vt 0.641791 0.515625 +vt 0.645522 0.500000 +vt 0.641791 0.500000 +vt 0.645522 0.484375 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.649254 0.562500 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.641791 0.437500 +vt 0.645522 0.453125 +vt 0.641791 0.453125 +vt 0.649254 0.437500 +vt 0.645965 0.438018 +vt 0.641791 0.546875 +vt 0.645522 0.562500 +vt 0.641791 0.562500 +vt 0.649254 0.546875 +vt 0.645522 0.546875 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.645522 0.515625 +vt 0.641791 0.515625 +vt 0.645522 0.500000 +vt 0.641791 0.500000 +vt 0.645522 0.484375 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.649254 0.562500 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.645965 0.438018 +vt 0.641791 0.453125 +vt 0.641791 0.437500 +vt 0.649254 0.437500 +vt 0.645522 0.453125 +vt 0.645522 0.546875 +vt 0.641791 0.562500 +vt 0.641791 0.546875 +vt 0.649254 0.562500 +vt 0.649254 0.546875 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.645522 0.515625 +vt 0.641791 0.515625 +vt 0.645522 0.500000 +vt 0.641791 0.500000 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.645522 0.484375 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.645965 0.438018 +vt 0.641791 0.453125 +vt 0.641791 0.437500 +vt 0.649254 0.437500 +vt 0.645522 0.453125 +vt 0.645522 0.546875 +vt 0.641791 0.562500 +vt 0.641791 0.546875 +vt 0.649254 0.562500 +vt 0.649254 0.546875 +vt 0.645522 0.531250 +vt 0.641791 0.531250 +vt 0.649254 0.531250 +vt 0.645522 0.515625 +vt 0.641791 0.515625 +vt 0.645522 0.500000 +vt 0.641791 0.500000 +vt 0.641791 0.484375 +vt 0.645522 0.468750 +vt 0.641791 0.468750 +vt 0.645522 0.484375 +vt 0.638060 0.468750 +vt 0.638060 0.484375 +vt 0.638060 0.500000 +vt 0.638060 0.515625 +vt 0.638060 0.531250 +vt 0.638060 0.546875 +vt 0.638060 0.437500 +vt 0.638060 0.453125 +vt 0.649254 0.453125 +vt 0.649254 0.468750 +vt 0.649254 0.484375 +vt 0.649254 0.500000 +vt 0.652985 0.468750 +vt 0.652985 0.484375 +vt 0.649254 0.515625 +vt 0.652985 0.500000 +vt 0.652985 0.515625 +vt 0.652985 0.531250 +vt 0.652985 0.546875 +vt 0.652985 0.437500 +vt 0.652985 0.453125 +vt 0.645522 0.562500 +vt 0.645522 0.562500 +vn 0.0000 -0.7486 0.6630 +vn 0.7071 -0.7071 -0.0000 +vn 0.5293 -0.5294 0.6630 +vn -0.0000 -1.0000 -0.0000 +vn 0.5294 -0.5294 -0.6630 +vn -0.7071 -0.7071 -0.0000 +vn -0.5293 -0.5294 0.6630 +vn -0.5294 -0.5294 -0.6630 +vn -1.0000 0.0000 -0.0000 +vn -0.7486 -0.0000 0.6630 +vn -0.7486 -0.0000 -0.6630 +vn -0.5293 0.5294 0.6630 +vn -0.7071 0.7071 -0.0000 +vn 0.0000 0.7486 0.6630 +vn 0.0000 1.0000 -0.0000 +vn 0.7071 0.7071 -0.0000 +vn 0.5293 0.5294 0.6630 +vn 1.0000 0.0000 -0.0000 +vn 0.7486 -0.0000 0.6630 +vn 0.0000 -0.0000 1.0000 +vn 0.7486 -0.0000 -0.6630 +vn 0.5294 0.5294 -0.6630 +vn 0.0000 0.7486 -0.6630 +vn -0.0000 -0.0000 -1.0000 +vn -0.5294 0.5294 -0.6630 +vn 0.0000 -0.7486 -0.6630 +vn -0.6483 -0.3743 0.6630 +vn -0.2588 -0.9659 -0.0000 +vn -0.1938 -0.7231 0.6630 +vn -0.6483 -0.3743 -0.6630 +vn -0.8660 -0.5000 -0.0000 +vn -0.7231 0.1938 0.6630 +vn -0.7231 0.1938 -0.6630 +vn -0.9659 0.2588 -0.0000 +vn -0.5000 0.8660 -0.0000 +vn -0.3743 0.6483 0.6630 +vn -0.3743 0.6483 -0.6630 +vn 0.2588 0.9659 -0.0000 +vn 0.1938 0.7231 0.6630 +vn 0.8660 0.5000 -0.0000 +vn 0.6483 0.3743 0.6630 +vn 0.9659 -0.2588 -0.0000 +vn 0.7231 -0.1938 0.6630 +vn 0.5000 -0.8660 -0.0000 +vn 0.3743 -0.6483 0.6630 +vn -0.1938 -0.7231 -0.6630 +vn 0.3743 -0.6483 -0.6630 +vn 0.7231 -0.1938 -0.6630 +vn 0.6483 0.3743 -0.6630 +vn 0.1938 0.7231 -0.6630 +vn -0.8660 0.5000 -0.0000 +vn -0.7231 -0.1938 0.6630 +vn -0.6483 0.3743 0.6630 +vn -0.6483 0.3743 -0.6630 +vn -0.9659 -0.2588 -0.0000 +vn -0.2588 0.9659 -0.0000 +vn -0.1938 0.7231 0.6630 +vn -0.1938 0.7231 -0.6630 +vn 0.5000 0.8660 -0.0000 +vn 0.3743 0.6483 0.6630 +vn 0.3743 0.6483 -0.6630 +vn 0.9659 0.2588 -0.0000 +vn 0.7231 0.1938 0.6630 +vn 0.8660 -0.5000 -0.0000 +vn 0.6483 -0.3743 0.6630 +vn 0.1938 -0.7231 0.6630 +vn -0.5000 -0.8660 -0.0000 +vn -0.3743 -0.6483 0.6630 +vn 0.2588 -0.9659 -0.0000 +vn -0.7231 -0.1938 -0.6630 +vn -0.3743 -0.6483 -0.6630 +vn 0.1938 -0.7231 -0.6630 +vn 0.6483 -0.3743 -0.6630 +vn 0.7231 0.1938 -0.6630 +s 1 +f 433/647/76 440/648/77 439/649/78 +f 434/650/79 441/651/80 440/648/77 +f 449/652/81 433/653/76 450/654/82 +f 448/655/83 434/656/79 449/652/81 +f 427/657/84 450/654/82 426/658/85 +f 448/655/83 427/657/84 428/659/86 +f 444/660/87 427/657/84 426/658/85 +f 443/661/88 438/662/89 437/663/90 +f 446/664/91 438/662/89 445/665/92 +f 439/649/78 431/666/93 432/667/94 +f 431/666/93 445/665/92 432/667/94 +f 432/667/94 445/665/92 425/668/95 +f 445/665/92 438/662/89 425/669/95 +f 444/660/87 425/670/95 438/662/89 +f 425/671/95 444/660/87 426/658/85 +f 425/672/95 426/658/85 450/654/82 +f 450/654/82 433/653/76 425/673/95 +f 439/649/78 425/674/95 433/647/76 +f 425/675/95 439/649/78 432/667/94 +f 440/648/77 430/676/96 431/666/93 +f 446/664/91 430/676/96 447/677/97 +f 437/663/90 447/677/97 436/678/98 +f 429/679/99 447/677/97 430/676/96 +f 447/677/97 429/680/99 436/678/98 +f 442/681/100 437/663/90 436/678/98 +f 427/657/84 442/681/100 428/659/86 +f 429/682/99 442/681/100 436/678/98 +f 428/659/86 442/681/100 429/683/99 +f 428/659/86 429/684/99 448/655/83 +f 448/655/83 429/685/99 435/686/101 +f 441/651/80 435/687/101 429/688/99 +f 429/689/99 430/676/96 441/651/80 +f 459/690/89 466/691/88 465/692/87 +f 460/693/90 467/694/100 466/691/88 +f 475/695/91 459/696/89 476/697/92 +f 474/698/97 460/699/90 475/695/91 +f 453/700/93 476/697/92 452/701/94 +f 474/698/97 453/700/93 454/702/96 +f 470/703/78 453/700/93 452/701/94 +f 469/704/77 464/705/76 463/706/79 +f 472/707/81 464/705/76 471/708/82 +f 465/692/87 457/709/84 458/710/85 +f 457/709/84 471/708/82 458/710/85 +f 458/710/85 471/708/82 451/711/95 +f 471/708/82 464/705/76 451/712/95 +f 470/703/78 451/713/95 464/705/76 +f 451/714/95 470/703/78 452/701/94 +f 451/715/95 452/701/94 476/697/92 +f 476/697/92 459/696/89 451/716/95 +f 465/692/87 451/717/95 459/690/89 +f 451/718/95 465/692/87 458/710/85 +f 466/691/88 456/719/86 457/709/84 +f 472/707/81 456/719/86 473/720/83 +f 463/706/79 473/720/83 462/721/101 +f 455/722/99 473/720/83 456/719/86 +f 473/720/83 455/723/99 462/721/101 +f 468/724/80 463/706/79 462/721/101 +f 453/700/93 468/724/80 454/702/96 +f 455/725/99 468/724/80 462/721/101 +f 454/702/96 468/724/80 455/726/99 +f 454/702/96 455/727/99 474/698/97 +f 474/698/97 455/728/99 461/729/98 +f 467/694/100 461/730/98 455/731/99 +f 455/732/99 456/719/86 467/694/100 +f 485/733/102 492/734/103 491/735/104 +f 487/736/105 492/734/103 486/737/106 +f 502/738/107 486/739/106 485/740/102 +f 500/741/108 486/739/106 501/742/109 +f 479/743/110 502/738/107 478/744/111 +f 500/741/108 479/743/110 480/745/112 +f 495/746/113 478/744/111 496/747/114 +f 489/748/115 496/747/114 490/749/116 +f 498/750/117 490/749/116 497/751/118 +f 491/735/104 483/752/119 484/753/120 +f 484/753/120 498/750/117 497/751/118 +f 484/753/120 497/751/118 477/754/95 +f 497/751/118 490/749/116 477/755/95 +f 496/747/114 477/756/95 490/749/116 +f 477/757/95 496/747/114 478/744/111 +f 477/758/95 478/744/111 502/738/107 +f 502/738/107 485/740/102 477/759/95 +f 491/735/104 477/760/95 485/733/102 +f 477/761/95 491/735/104 484/753/120 +f 483/752/119 493/762/121 482/763/122 +f 499/764/123 483/752/119 482/763/122 +f 489/748/115 499/764/123 488/765/124 +f 481/766/99 499/764/123 482/763/122 +f 499/764/123 481/767/99 488/765/124 +f 494/768/125 489/748/115 488/765/124 +f 480/745/112 495/746/113 494/768/125 +f 481/769/99 494/768/125 488/765/124 +f 480/745/112 494/768/125 481/770/99 +f 480/745/112 481/771/99 500/741/108 +f 500/741/108 481/772/99 487/773/105 +f 493/762/121 487/736/105 481/774/99 +f 481/775/99 482/763/122 493/762/121 +f 511/776/116 518/777/113 517/778/114 +f 513/779/124 518/777/113 512/780/115 +f 528/781/118 512/782/115 511/783/116 +f 526/784/123 512/782/115 527/785/117 +f 505/786/119 528/781/118 504/787/120 +f 526/784/123 505/786/119 506/788/122 +f 521/789/103 504/787/120 522/790/104 +f 515/791/106 522/790/104 516/792/102 +f 524/793/109 516/792/102 523/794/107 +f 517/778/114 509/795/110 510/796/111 +f 510/796/111 524/793/109 523/794/107 +f 510/796/111 523/794/107 503/797/95 +f 523/794/107 516/792/102 503/798/95 +f 522/790/104 503/799/95 516/792/102 +f 503/800/95 522/790/104 504/787/120 +f 503/801/95 504/787/120 528/781/118 +f 528/781/118 511/783/116 503/802/95 +f 517/778/114 503/803/95 511/776/116 +f 503/804/95 517/778/114 510/796/111 +f 509/795/110 519/805/125 508/806/112 +f 525/807/108 509/795/110 508/806/112 +f 515/791/106 525/807/108 514/808/105 +f 507/809/99 525/807/108 508/806/112 +f 525/807/108 507/810/99 514/808/105 +f 520/811/121 515/791/106 514/808/105 +f 506/788/122 521/789/103 520/811/121 +f 507/812/99 520/811/121 514/808/105 +f 506/788/122 520/811/121 507/813/99 +f 506/788/122 507/814/99 526/784/123 +f 526/784/123 507/815/99 513/816/124 +f 519/805/125 513/779/124 507/817/99 +f 507/818/99 508/806/112 519/805/125 +f 538/819/126 543/820/127 537/821/128 +f 539/822/129 544/823/130 538/819/126 +f 553/824/131 537/825/128 554/826/132 +f 539/827/129 553/824/131 552/828/133 +f 531/829/134 554/826/132 530/830/135 +f 532/831/136 553/824/131 531/829/134 +f 547/832/137 530/830/135 548/833/138 +f 541/834/139 548/833/138 542/835/140 +f 549/836/141 541/834/139 542/835/140 +f 543/820/127 535/837/142 536/838/143 +f 536/838/143 550/839/144 549/836/141 +f 536/838/143 549/836/141 529/840/95 +f 549/836/141 542/835/140 529/841/95 +f 548/833/138 529/842/95 542/835/140 +f 529/843/95 548/833/138 530/830/135 +f 529/844/95 530/830/135 554/826/132 +f 554/826/132 537/825/128 529/845/95 +f 543/820/127 529/846/95 537/821/128 +f 529/847/95 543/820/127 536/838/143 +f 535/837/142 545/848/145 534/849/146 +f 551/850/147 535/837/142 534/849/146 +f 541/834/139 551/850/147 540/851/148 +f 533/852/99 551/850/147 534/849/146 +f 551/850/147 533/853/99 540/851/148 +f 546/854/149 541/834/139 540/851/148 +f 531/829/134 546/854/149 532/831/136 +f 533/855/99 546/854/149 540/851/148 +f 532/831/136 546/854/149 533/856/99 +f 532/831/136 533/857/99 552/828/133 +f 552/828/133 533/858/99 539/827/129 +f 545/848/145 539/822/129 533/859/99 +f 533/860/99 534/849/146 545/848/145 +f 564/861/139 569/862/138 563/863/140 +f 565/864/148 570/865/137 564/861/139 +f 579/866/144 563/867/140 580/868/141 +f 565/869/148 579/866/144 578/870/147 +f 557/871/142 580/868/141 556/872/143 +f 558/873/146 579/866/144 557/871/142 +f 573/874/130 556/872/143 574/875/127 +f 567/876/126 574/875/127 568/877/128 +f 575/878/132 567/876/126 568/877/128 +f 569/862/138 561/879/134 562/880/135 +f 562/880/135 576/881/131 575/878/132 +f 562/880/135 575/878/132 555/882/95 +f 575/878/132 568/877/128 555/883/95 +f 574/875/127 555/884/95 568/877/128 +f 555/885/95 574/875/127 556/872/143 +f 555/886/95 556/872/143 580/868/141 +f 580/868/141 563/867/140 555/887/95 +f 569/862/138 555/888/95 563/863/140 +f 555/889/95 569/862/138 562/880/135 +f 561/879/134 571/890/149 560/891/136 +f 577/892/133 561/879/134 560/891/136 +f 567/876/126 577/892/133 566/893/129 +f 559/894/99 577/892/133 560/891/136 +f 577/892/133 559/895/99 566/893/129 +f 572/896/145 567/876/126 566/893/129 +f 557/871/142 572/896/145 558/873/146 +f 559/897/99 572/896/145 566/893/129 +f 558/873/146 572/896/145 559/898/99 +f 558/873/146 559/899/99 578/870/147 +f 578/870/147 559/900/99 565/869/148 +f 571/890/149 565/864/148 559/901/99 +f 559/902/99 560/891/136 571/890/149 +f 433/647/76 434/650/79 440/648/77 +f 434/650/79 435/687/101 441/651/80 +f 449/652/81 434/656/79 433/653/76 +f 448/655/83 435/686/101 434/656/79 +f 427/657/84 449/652/81 450/654/82 +f 448/655/83 449/652/81 427/657/84 +f 444/660/87 443/661/88 427/657/84 +f 443/661/88 444/660/87 438/662/89 +f 446/664/91 437/663/90 438/662/89 +f 439/649/78 440/648/77 431/666/93 +f 431/666/93 446/664/91 445/665/92 +f 440/648/77 441/651/80 430/676/96 +f 446/664/91 431/666/93 430/676/96 +f 437/663/90 446/664/91 447/677/97 +f 442/681/100 443/661/88 437/663/90 +f 427/657/84 443/661/88 442/681/100 +f 459/690/89 460/693/90 466/691/88 +f 460/693/90 461/730/98 467/694/100 +f 475/695/91 460/699/90 459/696/89 +f 474/698/97 461/729/98 460/699/90 +f 453/700/93 475/695/91 476/697/92 +f 474/698/97 475/695/91 453/700/93 +f 470/703/78 469/704/77 453/700/93 +f 469/704/77 470/703/78 464/705/76 +f 472/707/81 463/706/79 464/705/76 +f 465/692/87 466/691/88 457/709/84 +f 457/709/84 472/707/81 471/708/82 +f 466/691/88 467/694/100 456/719/86 +f 472/707/81 457/709/84 456/719/86 +f 463/706/79 472/707/81 473/720/83 +f 468/724/80 469/704/77 463/706/79 +f 453/700/93 469/704/77 468/724/80 +f 485/733/102 486/737/106 492/734/103 +f 487/736/105 493/762/121 492/734/103 +f 502/738/107 501/742/109 486/739/106 +f 500/741/108 487/773/105 486/739/106 +f 479/743/110 501/742/109 502/738/107 +f 500/741/108 501/742/109 479/743/110 +f 495/746/113 479/743/110 478/744/111 +f 489/748/115 495/746/113 496/747/114 +f 498/750/117 489/748/115 490/749/116 +f 491/735/104 492/734/103 483/752/119 +f 484/753/120 483/752/119 498/750/117 +f 483/752/119 492/734/103 493/762/121 +f 499/764/123 498/750/117 483/752/119 +f 489/748/115 498/750/117 499/764/123 +f 494/768/125 495/746/113 489/748/115 +f 480/745/112 479/743/110 495/746/113 +f 511/776/116 512/780/115 518/777/113 +f 513/779/124 519/805/125 518/777/113 +f 528/781/118 527/785/117 512/782/115 +f 526/784/123 513/816/124 512/782/115 +f 505/786/119 527/785/117 528/781/118 +f 526/784/123 527/785/117 505/786/119 +f 521/789/103 505/786/119 504/787/120 +f 515/791/106 521/789/103 522/790/104 +f 524/793/109 515/791/106 516/792/102 +f 517/778/114 518/777/113 509/795/110 +f 510/796/111 509/795/110 524/793/109 +f 509/795/110 518/777/113 519/805/125 +f 525/807/108 524/793/109 509/795/110 +f 515/791/106 524/793/109 525/807/108 +f 520/811/121 521/789/103 515/791/106 +f 506/788/122 505/786/119 521/789/103 +f 538/819/126 544/823/130 543/820/127 +f 539/822/129 545/848/145 544/823/130 +f 553/824/131 538/903/126 537/825/128 +f 539/827/129 538/903/126 553/824/131 +f 531/829/134 553/824/131 554/826/132 +f 532/831/136 552/828/133 553/824/131 +f 547/832/137 531/829/134 530/830/135 +f 541/834/139 547/832/137 548/833/138 +f 549/836/141 550/839/144 541/834/139 +f 543/820/127 544/823/130 535/837/142 +f 536/838/143 535/837/142 550/839/144 +f 535/837/142 544/823/130 545/848/145 +f 551/850/147 550/839/144 535/837/142 +f 541/834/139 550/839/144 551/850/147 +f 546/854/149 547/832/137 541/834/139 +f 531/829/134 547/832/137 546/854/149 +f 564/861/139 570/865/137 569/862/138 +f 565/864/148 571/890/149 570/865/137 +f 579/866/144 564/904/139 563/867/140 +f 565/869/148 564/904/139 579/866/144 +f 557/871/142 579/866/144 580/868/141 +f 558/873/146 578/870/147 579/866/144 +f 573/874/130 557/871/142 556/872/143 +f 567/876/126 573/874/130 574/875/127 +f 575/878/132 576/881/131 567/876/126 +f 569/862/138 570/865/137 561/879/134 +f 562/880/135 561/879/134 576/881/131 +f 561/879/134 570/865/137 571/890/149 +f 577/892/133 576/881/131 561/879/134 +f 567/876/126 576/881/131 577/892/133 +f 572/896/145 573/874/130 567/876/126 +f 557/871/142 573/874/130 572/896/145 +o Hammer +v 0.625000 0.375000 -2.125000 +v 0.625000 0.551777 -2.051777 +v 0.625000 0.625000 -1.875000 +v 0.625000 0.551777 -1.698223 +v 0.625000 0.375000 -1.625000 +v 0.625000 0.198223 -1.698223 +v 0.625000 0.125000 -1.875000 +v 0.625000 0.198223 -2.051777 +v 1.000000 0.375000 -2.125000 +v 1.000000 0.551777 -2.051777 +v 1.000000 0.625000 -1.875000 +v 1.000000 0.551777 -1.698223 +v 1.000000 0.375000 -1.625000 +v 1.000000 0.198223 -1.698223 +v 1.000000 0.125000 -1.875000 +v 1.000000 0.198223 -2.051777 +v 0.906250 0.500000 -1.750000 +v 0.968750 0.500000 -1.750000 +v 0.906250 0.500000 -2.000000 +v 0.968750 0.500000 -2.000000 +v 0.906250 1.375000 -1.750000 +v 0.968750 1.375000 -1.750000 +v 0.906250 1.375000 -2.000000 +v 0.968750 1.375000 -2.000000 +v 0.906250 1.500000 -2.000000 +v 0.906250 1.500000 -1.625000 +v 0.968750 1.500000 -1.625000 +v 0.968750 1.500000 -2.000000 +v -0.625000 0.375000 -2.125000 +v -0.625000 0.551777 -2.051777 +v -0.625000 0.625000 -1.875000 +v -0.625000 0.551777 -1.698223 +v -0.625000 0.375000 -1.625000 +v -0.625000 0.198223 -1.698223 +v -0.625000 0.125000 -1.875000 +v -0.625000 0.198223 -2.051777 +v -1.000000 0.375000 -2.125000 +v -1.000000 0.551777 -2.051777 +v -1.000000 0.625000 -1.875000 +v -1.000000 0.551777 -1.698223 +v -1.000000 0.375000 -1.625000 +v -1.000000 0.198223 -1.698223 +v -1.000000 0.125000 -1.875000 +v -1.000000 0.198223 -2.051777 +v -0.906250 0.500000 -1.750000 +v -0.968750 0.500000 -1.750000 +v -0.906250 0.500000 -2.000000 +v -0.968750 0.500000 -2.000000 +v -0.906250 1.375000 -1.750000 +v -0.968750 1.375000 -1.750000 +v -0.906250 1.375000 -2.000000 +v -0.968750 1.375000 -2.000000 +v -0.906250 1.500000 -2.000000 +v -0.906250 1.500000 -1.625000 +v -0.968750 1.500000 -1.625000 +v -0.968750 1.500000 -2.000000 +vt 0.735075 0.187432 +vt 0.727628 0.156250 +vt 0.735075 0.125068 +vt 0.679105 0.421875 +vt 0.690298 0.437500 +vt 0.679105 0.437500 +vt 0.682836 0.406250 +vt 0.690298 0.421875 +vt 0.690298 0.296875 +vt 0.682836 0.296875 +vt 0.701493 0.296875 +vt 0.694030 0.406250 +vt 0.694030 0.296875 +vt 0.690298 0.406250 +vt 0.679105 0.406250 +vt 0.679105 0.296875 +vt 0.701493 0.406250 +vt 0.694030 0.421875 +vt 0.675373 0.421875 +vt 0.675373 0.437500 +vt 0.729809 0.178299 +vt 0.735075 0.187432 +vt 0.735075 0.125068 +vt 0.690298 0.437500 +vt 0.679105 0.421875 +vt 0.679105 0.437500 +vt 0.682836 0.406250 +vt 0.690298 0.421875 +vt 0.690298 0.406250 +vt 0.690298 0.296875 +vt 0.682836 0.296875 +vt 0.694030 0.406250 +vt 0.701493 0.296875 +vt 0.694030 0.296875 +vt 0.679105 0.406250 +vt 0.679105 0.296875 +vt 0.694030 0.421875 +vt 0.701493 0.406250 +vt 0.675373 0.421875 +vt 0.675373 0.437500 +vt 0.742521 0.156250 +vt 0.740340 0.178299 +vt 0.729809 0.178299 +vt 0.729809 0.134201 +vt 0.740340 0.134201 +vt 0.705224 0.421875 +vt 0.740340 0.178299 +vt 0.742521 0.156250 +vt 0.740340 0.134201 +vt 0.729809 0.134201 +vt 0.727628 0.156250 +vt 0.705224 0.421875 +vt 0.727612 0.140625 +vt 0.716418 0.125000 +vt 0.727612 0.125000 +vt 0.727612 0.234375 +vt 0.716418 0.218750 +vt 0.727612 0.218750 +vt 0.727612 0.203125 +vt 0.716418 0.187500 +vt 0.727612 0.187500 +vt 0.727612 0.171875 +vt 0.716418 0.156250 +vt 0.727612 0.156250 +vt 0.716418 0.140625 +vt 0.727612 0.250000 +vt 0.716418 0.234375 +vt 0.716418 0.203125 +vt 0.716418 0.171875 +vt 0.716418 0.125000 +vt 0.727612 0.140625 +vt 0.727612 0.125000 +vt 0.716418 0.218750 +vt 0.727612 0.234375 +vt 0.727612 0.218750 +vt 0.716418 0.187500 +vt 0.727612 0.203125 +vt 0.727612 0.187500 +vt 0.716418 0.156250 +vt 0.727612 0.171875 +vt 0.727612 0.156250 +vt 0.716418 0.140625 +vt 0.716418 0.234375 +vt 0.727612 0.250000 +vt 0.716418 0.203125 +vt 0.716418 0.171875 +vt 0.716418 0.250000 +vt 0.716418 0.250000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 +s off +f 591/905/150 593/906/150 595/907/150 +f 607/908/151 605/909/151 606/910/151 +f 602/911/150 608/912/150 607/908/150 +f 600/913/150 602/911/150 598/914/150 +f 597/915/152 603/916/152 599/917/152 +f 599/917/153 604/918/153 600/913/153 +f 598/914/154 601/919/154 597/920/154 +f 601/921/152 605/922/152 603/916/152 +f 603/916/153 608/912/153 604/918/153 +f 602/923/155 606/910/155 601/924/155 +f 620/925/152 619/926/152 623/927/152 +f 633/928/151 635/929/151 634/930/151 +f 630/931/152 636/932/152 632/933/152 +f 630/931/152 628/934/152 626/935/152 +f 631/936/150 625/937/150 627/938/150 +f 632/933/153 627/938/153 628/934/153 +f 629/939/154 626/935/154 625/940/154 +f 633/941/150 629/942/150 631/936/150 +f 636/932/153 631/936/153 632/933/153 +f 634/930/155 630/943/155 629/944/155 +f 589/945/150 590/946/150 591/905/150 +f 591/905/150 592/947/150 593/906/150 +f 593/906/150 594/948/150 595/907/150 +f 595/907/150 596/949/150 589/945/150 +f 589/945/150 591/905/150 595/907/150 +f 607/908/151 608/912/151 605/909/151 +f 602/911/150 604/918/150 608/912/150 +f 600/913/150 604/918/150 602/911/150 +f 597/915/152 601/921/152 603/916/152 +f 599/917/153 603/916/153 604/918/153 +f 598/914/154 602/911/154 601/919/154 +f 601/921/152 606/950/152 605/922/152 +f 603/916/153 605/922/153 608/912/153 +f 602/923/155 607/908/155 606/910/155 +f 619/926/152 618/951/152 623/927/152 +f 618/951/152 617/952/152 623/927/152 +f 617/952/152 624/953/152 623/927/152 +f 623/927/152 622/954/152 621/955/152 +f 621/955/152 620/925/152 623/927/152 +f 633/928/151 636/932/151 635/929/151 +f 630/931/152 635/929/152 636/932/152 +f 630/931/152 632/933/152 628/934/152 +f 631/936/150 629/942/150 625/937/150 +f 632/933/153 631/936/153 627/938/153 +f 629/939/154 630/931/154 626/935/154 +f 633/941/150 634/956/150 629/942/150 +f 636/932/153 633/941/153 631/936/153 +f 634/930/155 635/929/155 630/943/155 +s 1 +f 588/957/156 595/958/157 587/959/157 +f 586/960/155 593/961/154 585/962/154 +f 584/963/158 591/964/151 583/965/151 +f 582/966/159 589/967/153 581/968/153 +f 581/968/153 596/969/156 588/957/156 +f 587/970/157 594/971/155 586/960/155 +f 585/962/154 592/972/158 584/963/158 +f 583/965/151 590/973/159 582/966/159 +f 623/974/157 616/975/156 615/976/157 +f 621/977/154 614/978/155 613/979/154 +f 619/980/151 612/981/158 611/982/151 +f 617/983/153 610/984/159 609/985/153 +f 624/986/156 609/985/153 616/975/156 +f 622/987/155 615/988/157 614/978/155 +f 620/989/158 613/979/154 612/981/158 +f 618/990/159 611/982/151 610/984/159 +f 588/957/156 596/969/156 595/958/157 +f 586/960/155 594/971/155 593/961/154 +f 584/963/158 592/972/158 591/964/151 +f 582/966/159 590/973/159 589/967/153 +f 581/968/153 589/967/153 596/969/156 +f 587/970/157 595/991/157 594/971/155 +f 585/962/154 593/961/154 592/972/158 +f 583/965/151 591/964/151 590/973/159 +f 623/974/157 624/986/156 616/975/156 +f 621/977/154 622/987/155 614/978/155 +f 619/980/151 620/989/158 612/981/158 +f 617/983/153 618/990/159 610/984/159 +f 624/986/156 617/983/153 609/985/153 +f 622/987/155 623/992/157 615/988/157 +f 620/989/158 621/977/154 613/979/154 +f 618/990/159 619/980/151 611/982/151 +o Trigger +v -0.125000 -0.875000 -1.250000 +v 0.125000 -0.875000 -1.250000 +v -0.125000 -0.875000 -1.500000 +v 0.125000 -0.875000 -1.500000 +v -0.125000 -1.250000 -1.250000 +v 0.125000 -1.250000 -1.250000 +v -0.125000 -1.250000 -1.500000 +v 0.125000 -1.250000 -1.500000 +v -0.125000 -2.000000 -1.750000 +v 0.125000 -2.000000 -1.750000 +v 0.125000 -1.500000 -1.750000 +v -0.125000 -1.500000 -1.750000 +v 0.125000 -2.000000 -1.000000 +v -0.125000 -2.000000 -1.000000 +v 0.125000 -1.500000 -1.000000 +v -0.125000 -1.500000 -1.000000 +v -0.125000 -1.500000 -0.875000 +v -0.125000 -1.250000 -1.125000 +v 0.125000 -1.250000 -1.125000 +v 0.125000 -1.500000 -0.875000 +v -0.125000 -1.250000 -1.625000 +v -0.125000 -1.500000 -1.875000 +v 0.125000 -1.500000 -1.875000 +v 0.125000 -1.250000 -1.625000 +v -0.125000 -2.250000 -1.125000 +v -0.125000 -2.000000 -0.875000 +v 0.125000 -2.000000 -0.875000 +v 0.125000 -2.250000 -1.125000 +v 0.125000 -2.250000 -1.625000 +v 0.125000 -2.000000 -1.875000 +v -0.125000 -2.000000 -1.875000 +v -0.125000 -2.250000 -1.625000 +v -0.125000 -1.375000 -1.125000 +v 0.125000 -1.375000 -1.125000 +v -0.125000 -1.375000 -1.625000 +v 0.125000 -1.375000 -1.625000 +v -0.125000 -2.125000 -1.125000 +v 0.125000 -2.125000 -1.125000 +v 0.125000 -2.125000 -1.625000 +v -0.125000 -2.125000 -1.625000 +vt 0.119403 0.828125 +vt 0.126866 0.781250 +vt 0.126866 0.828125 +vt 0.104478 0.828125 +vt 0.111940 0.781250 +vt 0.111940 0.828125 +vt 0.119403 0.781250 +vt 0.134328 0.781250 +vt 0.134328 0.828125 +vt 0.041045 0.859375 +vt 0.026119 0.875000 +vt 0.026119 0.859375 +vt 0.078358 0.828125 +vt 0.093284 0.812500 +vt 0.093284 0.828125 +vt 0.026119 0.828125 +vt 0.041045 0.812500 +vt 0.041045 0.828125 +vt 0.093284 0.859375 +vt 0.078358 0.875000 +vt 0.078358 0.859375 +vt 0.067164 0.859375 +vt 0.052239 0.875000 +vt 0.052239 0.859375 +vt 0.052239 0.828125 +vt 0.067164 0.812500 +vt 0.067164 0.828125 +vt 0.000000 0.828125 +vt 0.014925 0.812500 +vt 0.014925 0.828125 +vt 0.014925 0.859375 +vt 0.000000 0.875000 +vt 0.000000 0.859375 +vt 0.018657 0.875000 +vt 0.022388 0.875000 +vt 0.022388 0.812500 +vt 0.044776 0.875000 +vt 0.048507 0.812500 +vt 0.044776 0.812500 +vt 0.070896 0.875000 +vt 0.074627 0.875000 +vt 0.074627 0.812500 +vt 0.104478 0.859375 +vt 0.097015 0.875000 +vt 0.100746 0.812500 +vt 0.097015 0.812500 +vt 0.104478 0.781250 +vt 0.041045 0.875000 +vt 0.078358 0.812500 +vt 0.026119 0.812500 +vt 0.093284 0.875000 +vt 0.067164 0.875000 +vt 0.052239 0.812500 +vt 0.000000 0.812500 +vt 0.014925 0.875000 +vt 0.018657 0.812500 +vt 0.048507 0.875000 +vt 0.070896 0.812500 +vt 0.100746 0.875000 +vt 0.104478 0.828125 +vt 0.014925 0.781250 +vt 0.000000 0.781250 +vt 0.022388 0.781250 +vt 0.018657 0.781250 +vt 0.026119 0.781250 +vt 0.044776 0.781250 +vt 0.052239 0.781250 +vt 0.070896 0.781250 +vt 0.093284 0.781250 +vt 0.078358 0.781250 +vt 0.100746 0.781250 +vt 0.041045 0.781250 +vt 0.048507 0.781250 +vt 0.067164 0.781250 +vt 0.074627 0.781250 +vt 0.097015 0.781250 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.9239 -0.3827 +vn 0.0000 0.9239 0.3827 +vn 0.0000 0.3827 -0.9239 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 0.3827 0.9239 +vn 0.0000 -0.3827 0.9239 +s off +f 640/993/160 643/994/160 639/995/160 +f 637/996/161 642/997/161 638/998/161 +f 638/998/162 644/999/162 640/993/162 +f 639/995/163 641/1000/163 637/1001/163 +f 653/1002/163 650/1003/163 662/1004/163 +f 659/1005/162 646/1006/162 666/1007/162 +f 663/1008/162 651/1009/162 656/1010/162 +f 667/1011/163 648/1012/163 658/1013/163 +f 657/1014/163 669/1015/163 654/1016/163 +f 655/1017/162 672/1018/162 660/1019/162 +f 665/1020/162 674/1021/162 664/1022/162 +f 661/1023/163 676/1024/163 668/1025/163 +f 673/1026/163 662/1004/163 650/1027/163 +f 664/1022/162 649/1028/162 663/1008/162 +f 654/1016/163 652/1029/163 653/1002/163 +f 670/1030/162 656/1010/162 651/1031/162 +f 671/1032/163 658/1013/163 648/1033/163 +f 660/1019/162 647/1034/162 659/1005/162 +f 668/1035/163 645/1036/163 667/1011/163 +f 675/1037/162 666/1007/162 646/1038/162 +f 640/993/160 644/999/160 643/994/160 +f 637/996/161 641/1039/161 642/997/161 +f 638/998/162 642/997/162 644/999/162 +f 639/995/163 643/994/163 641/1000/163 +f 653/1002/163 652/1040/163 650/1003/163 +f 659/1005/162 647/1041/162 646/1006/162 +f 663/1008/162 649/1042/162 651/1009/162 +f 667/1011/163 645/1043/163 648/1012/163 +f 657/1014/163 671/1044/163 669/1015/163 +f 655/1017/162 670/1045/162 672/1018/162 +f 665/1020/162 675/1046/162 674/1021/162 +f 661/1023/163 673/1047/163 676/1024/163 +f 673/1026/163 661/1023/163 662/1004/163 +f 664/1022/162 674/1048/162 649/1028/162 +f 654/1016/163 669/1049/163 652/1029/163 +f 670/1030/162 655/1017/162 656/1010/162 +f 671/1032/163 657/1014/163 658/1013/163 +f 660/1019/162 672/1050/162 647/1034/162 +f 668/1035/163 676/1051/163 645/1036/163 +f 675/1037/162 665/1052/162 666/1007/162 +s 1 +f 660/1019/164 654/1016/165 655/1017/165 +f 659/1005/166 667/1011/167 658/1013/166 +f 661/1023/168 665/1020/169 664/1022/168 +f 656/1010/170 654/1016/165 653/1002/170 +f 658/1013/166 660/1019/164 659/1005/166 +f 664/1022/168 662/1004/171 661/1023/168 +f 668/1035/169 666/1007/167 665/1052/169 +f 653/1002/170 663/1008/171 656/1010/170 +f 673/1053/164 675/1046/165 676/1054/165 +f 650/1055/166 674/1048/164 673/1056/164 +f 650/1057/166 651/1009/167 649/1042/166 +f 652/1058/167 670/1030/169 651/1031/167 +f 669/1059/169 672/1018/168 670/1045/169 +f 671/1060/168 647/1034/171 672/1050/168 +f 645/1061/170 647/1041/171 648/1062/171 +f 646/1038/170 676/1063/165 675/1037/165 +f 660/1019/164 657/1014/164 654/1016/165 +f 659/1005/166 666/1007/167 667/1011/167 +f 661/1023/168 668/1025/169 665/1020/169 +f 656/1010/170 655/1017/165 654/1016/165 +f 658/1013/166 657/1014/164 660/1019/164 +f 664/1022/168 663/1008/171 662/1004/171 +f 668/1035/169 667/1011/167 666/1007/167 +f 653/1002/170 662/1004/171 663/1008/171 +f 673/1053/164 674/1021/164 675/1046/165 +f 650/1055/166 649/1028/166 674/1048/164 +f 650/1057/166 652/1064/167 651/1009/167 +f 652/1058/167 669/1065/169 670/1030/169 +f 669/1059/169 671/1066/168 672/1018/168 +f 671/1060/168 648/1067/171 647/1034/171 +f 645/1061/170 646/1006/170 647/1041/171 +f 646/1038/170 645/1068/170 676/1063/165 +o Grip +v 0.000000 1.000000 0.000000 +v -0.500000 0.866025 0.000000 +v -0.866025 0.500000 0.000000 +v -1.000000 -0.000000 -0.000000 +v -0.866025 -0.500000 -0.000000 +v -0.500000 -0.866025 -0.000000 +v 0.000000 -1.000000 -0.000000 +v 0.500000 -0.866026 -0.000000 +v 0.866025 -0.500000 -0.000000 +v 1.000000 -0.000000 -0.000000 +v 0.866026 0.499999 0.000000 +v 0.500000 0.866025 0.000000 +v -0.500000 0.866025 -0.500000 +v 0.000000 1.000000 -0.500000 +v -0.866025 0.500000 -0.500000 +v -1.000000 -0.000000 -0.500000 +v -0.866025 -0.500000 -0.500000 +v -0.500000 -0.866025 -0.500000 +v 0.000000 -1.000000 -0.500000 +v 0.500000 -0.866026 -0.500000 +v 0.866025 -0.500000 -0.500000 +v 1.000000 -0.000000 -0.500000 +v 0.866026 0.500000 -0.500000 +v 0.500000 0.866025 -0.500000 +v 0.875000 -0.875000 -0.125000 +v 0.875000 0.125000 -0.125000 +v 0.875000 -0.875000 -0.375000 +v 0.875000 0.125000 -0.375000 +v 1.125000 -0.875000 -0.125000 +v 1.125000 -0.125000 -0.125000 +v 1.125000 -0.875000 -0.375000 +v 1.125000 -0.125000 -0.375000 +v -1.125000 -0.125000 -0.125000 +v 0.875000 -1.125000 -0.125000 +v -1.125000 -0.875000 -0.125000 +v 1.125000 -1.125000 -0.125000 +v 0.875000 -0.875000 6.125000 +v 1.125000 -0.875000 6.125000 +v 0.875000 -1.125000 6.125000 +v 1.125000 -1.125000 6.125000 +v 0.875000 -0.875000 6.375000 +v 1.125000 -0.875000 6.375000 +v -1.125000 -0.125000 -0.375000 +v -1.125000 -0.875000 -0.375000 +v 0.875000 0.625000 6.125000 +v 1.125000 0.625000 6.125000 +v 0.875000 0.625000 6.375000 +v 1.125000 0.625000 6.375000 +v 0.625000 0.875000 6.125000 +v 0.625000 0.875000 6.375000 +v -0.625000 0.875000 6.125000 +v -0.625000 0.875000 6.375000 +v 0.625000 1.125000 6.125000 +v 0.625000 1.125000 6.375000 +v -0.625000 1.125000 6.125000 +v -0.625000 1.125000 6.375000 +v -0.875000 -0.875000 -0.125000 +v -0.875000 0.125000 -0.125000 +v -0.875000 -0.875000 -0.375000 +v -0.875000 0.125000 -0.375000 +v -1.125000 -1.125000 -0.125000 +v -0.875000 -1.125000 -0.125000 +v -1.125000 -0.875000 6.125000 +v -0.875000 -0.875000 6.125000 +v -1.125000 -1.125000 6.125000 +v -0.875000 -1.125000 6.125000 +v -1.125000 -0.875000 6.375000 +v -0.875000 -0.875000 6.375000 +v -1.125000 0.625000 6.125000 +v -0.875000 0.625000 6.125000 +v -1.125000 0.625000 6.375000 +v -0.875000 0.625000 6.375000 +v -0.875000 -0.375000 -0.500000 +v 0.875000 -0.375000 -0.500000 +v -0.875000 0.375000 -0.500000 +v 0.875000 0.375000 -0.500000 +v -0.375000 0.875000 -0.500000 +v -0.375000 -0.875000 -0.500000 +v 0.375000 0.875000 -0.500000 +v 0.375000 -0.875000 -0.500000 +v -0.875000 -0.375000 -3.000000 +v 0.875000 -0.375000 -3.000000 +v -0.875000 0.375000 -3.000000 +v 0.875000 0.375000 -3.000000 +v -0.375000 0.875000 -3.000000 +v -0.375000 -0.875000 -3.000000 +v 0.375000 0.875000 -3.000000 +v 0.375000 -0.875000 -3.000000 +v -0.875000 -1.625000 -4.875000 +v 0.875000 -1.625000 -4.875000 +v -0.875000 -0.875000 -5.250000 +v 0.875000 -0.875000 -5.250000 +v -0.375000 -0.375000 -5.500000 +v -0.375000 -2.125000 -4.625000 +v 0.375000 -0.375000 -5.500000 +v 0.375000 -2.125000 -4.625000 +v -0.875000 -2.875000 -5.750000 +v 0.875000 -2.875000 -5.750000 +v -0.875000 -2.125000 -6.500000 +v 0.875000 -2.125000 -6.500000 +v -0.375000 -1.625000 -7.000000 +v -0.375000 -3.375000 -5.250000 +v 0.375000 -1.625000 -7.000000 +v 0.375000 -3.375000 -5.250000 +v 0.875000 0.250000 -0.500000 +v 1.000000 0.250000 -0.500000 +v 0.875000 0.250000 -1.000000 +v 1.000000 0.250000 -1.000000 +v 0.875000 0.375000 -1.000000 +v 0.875000 0.375000 -0.500000 +v 1.000000 0.375000 -0.500000 +v 1.000000 0.375000 -1.000000 +v -0.875000 0.250000 -0.500000 +v -1.000000 0.250000 -0.500000 +v -0.875000 0.250000 -1.000000 +v -1.000000 0.250000 -1.000000 +v -0.875000 0.375000 -1.000000 +v -0.875000 0.375000 -0.500000 +v -1.000000 0.375000 -0.500000 +v -1.000000 0.375000 -1.000000 +v -0.187500 0.875000 -0.562500 +v 0.187500 0.875000 -0.562500 +v -0.187500 0.875000 -0.937500 +v 0.187500 0.875000 -0.937500 +v -0.187500 1.375000 -0.812500 +v -0.187500 1.375000 -0.687500 +v 0.187500 1.375000 -0.687500 +v 0.187500 1.375000 -0.812500 +v -0.062500 1.375000 -0.687500 +v 0.062500 1.375000 -0.687500 +v 0.062500 1.375000 -0.812500 +v -0.062500 1.375000 -0.812500 +v -0.062500 1.125000 -0.625000 +v 0.062500 1.125000 -0.625000 +v 0.062500 1.125000 -0.875000 +v -0.062500 1.125000 -0.875000 +vt 0.276412 0.187560 +vt 0.328065 0.187560 +vt 0.302239 0.374880 +vt 0.276412 0.437560 +vt 0.302239 0.375120 +vt 0.328065 0.562440 +vt -0.000000 0.125000 +vt 0.029851 0.093750 +vt 0.029851 0.125000 +vt 0.007463 0.062500 +vt 0.029851 0.062500 +vt 0.029851 0.031250 +vt 0.007463 0.031250 +vt 0.029851 0.000000 +vt 0.037313 0.031250 +vt -0.000000 0.062500 +vt 0.619403 0.031250 +vt 0.597015 0.062500 +vt 0.597015 0.031250 +vt 0.037313 0.093750 +vt 0.223881 0.125000 +vt 0.037313 0.125000 +vt 0.619403 0.062500 +vt 0.597015 0.093750 +vt 0.037313 0.125000 +vt 0.231343 0.000000 +vt 0.276119 0.031250 +vt 0.231343 0.031250 +vt 0.037313 0.031250 +vt 0.223881 0.062500 +vt 0.037313 0.062500 +vt 0.037313 -0.000000 +vt 0.223881 0.031250 +vt 0.223881 0.093750 +vt 0.231343 0.125000 +vt 0.223881 0.125000 +vt 0.231343 0.093750 +vt 0.626866 0.093750 +vt 0.597015 0.125000 +vt 0.223881 0.031250 +vt 0.231343 0.062500 +vt 0.279851 0.093750 +vt 0.291045 0.125000 +vt 0.279851 0.125000 +vt 0.276119 0.125000 +vt 0.276119 0.093750 +vt 0.276119 0.062500 +vt 0.294776 0.093750 +vt 0.332090 0.125000 +vt 0.294776 0.125000 +vt 0.332090 0.062500 +vt 0.332090 0.093750 +vt 0.332090 0.000000 +vt 0.294776 0.031250 +vt 0.294776 0.000000 +vt 0.332090 0.031250 +vt 0.291045 0.000000 +vt 0.279851 0.000000 +vt 0.294776 0.062500 +vt 0.597015 0.000000 +vt 0.589552 0.125000 +vt 0.626866 0.031250 +vt 0.626866 0.062500 +vt 0.589552 0.062500 +vt 0.402985 0.031250 +vt 0.589552 0.031250 +vt 0.589552 0.031250 +vt 0.395522 0.031250 +vt 0.350746 0.000000 +vt 0.395522 0.000000 +vt 0.589552 0.125000 +vt 0.402985 0.093750 +vt 0.589552 0.093750 +vt 0.402985 0.000000 +vt 0.589552 0.000000 +vt 0.402985 0.062500 +vt 0.402985 0.031250 +vt 0.395522 0.062500 +vt 0.402985 0.125000 +vt 0.395522 0.125000 +vt 0.395522 0.093750 +vt 0.350746 0.031250 +vt 0.350746 0.062500 +vt 0.350746 0.093750 +vt 0.335821 0.093750 +vt 0.347015 0.125000 +vt 0.335821 0.125000 +vt 0.347015 0.000000 +vt 0.335821 0.000000 +vt 0.347015 0.093750 +vt 0.570895 0.828125 +vt 0.548507 0.671875 +vt 0.570895 0.609375 +vt 0.656716 0.562500 +vt 0.641791 0.578125 +vt 0.641791 0.562500 +vt 0.641791 0.593750 +vt 0.656716 0.609375 +vt 0.641791 0.609375 +vt 0.660448 0.578125 +vt 0.656716 0.593750 +vt 0.656716 0.578125 +vt 0.638060 0.593750 +vt 0.638060 0.578125 +vt 0.641791 0.593750 +vt 0.656716 0.609375 +vt 0.641791 0.609375 +vt 0.656716 0.562500 +vt 0.641791 0.578125 +vt 0.641791 0.562500 +vt 0.656716 0.578125 +vt 0.660448 0.593750 +vt 0.656716 0.593750 +vt 0.638060 0.578125 +vt 0.638060 0.593750 +vt 0.690298 0.203125 +vt 0.694030 0.187500 +vt 0.694030 0.203125 +vt 0.675373 0.171875 +vt 0.675373 0.218750 +vt 0.716418 0.218750 +vt 0.701493 0.187500 +vt 0.716418 0.171875 +vt 0.697761 0.203125 +vt 0.701493 0.203125 +vt 0.686567 0.281250 +vt 0.694030 0.296875 +vt 0.686567 0.296875 +vt 0.705224 0.296875 +vt 0.697761 0.265625 +vt 0.705224 0.281250 +vt 0.694030 0.234375 +vt 0.697761 0.234375 +vt 0.701493 0.265625 +vt 0.697761 0.156250 +vt 0.697761 0.187500 +vt 0.694030 0.156250 +vt 0.690298 0.187500 +vt 0.690298 0.125000 +vt 0.701493 0.125000 +vt 0.697761 0.296875 +vt 0.694030 0.265625 +vt 0.600746 0.609375 +vt 0.623134 0.765625 +vt 0.600746 0.828125 +vt 0.287328 0.358149 +vt 0.276412 0.312440 +vt 0.272417 0.250000 +vt 0.287328 0.141851 +vt 0.302239 0.125120 +vt 0.317150 0.141851 +vt 0.332061 0.250000 +vt 0.328065 0.312440 +vt 0.317150 0.358149 +vt 0.317150 0.608149 +vt 0.302239 0.624880 +vt 0.287328 0.608149 +vt 0.276412 0.562440 +vt 0.272417 0.500000 +vt 0.287328 0.391851 +vt 0.317150 0.391851 +vt 0.328065 0.437560 +vt 0.332061 0.500000 +vt -0.000000 0.093750 +vt -0.000000 0.000000 +vt -0.000000 0.031250 +vt 0.276119 0.000000 +vt 0.223881 0.000000 +vt 0.626866 0.125000 +vt 0.291045 0.093750 +vt 0.626866 0.000000 +vt 0.402985 0.125000 +vt 0.350746 0.125000 +vt 0.548507 0.765625 +vt 0.660448 0.593750 +vt 0.660448 0.578125 +vt 0.690298 0.265625 +vt 0.623134 0.671875 vt 0.257463 0.625000 vt 0.272388 0.687500 vt 0.257463 0.687500 @@ -1626,528 +3439,20 @@ vt 0.503731 1.000000 vt 0.548507 0.875000 vt 0.548507 1.000000 vt 0.496269 0.875000 -vt 0.727612 0.140625 -vt 0.716418 0.125000 -vt 0.727612 0.125000 -vt 0.727612 0.234375 -vt 0.716418 0.218750 -vt 0.727612 0.218750 -vt 0.727612 0.203125 -vt 0.716418 0.187500 -vt 0.727612 0.187500 -vt 0.727612 0.171875 -vt 0.716418 0.156250 -vt 0.727612 0.156250 -vt 0.716418 0.140625 -vt 0.727612 0.250000 -vt 0.716418 0.234375 -vt 0.716418 0.203125 -vt 0.716418 0.171875 -vt 0.014925 0.781250 -vt 0.000000 0.781250 -vt 0.022388 0.781250 -vt 0.018657 0.781250 -vt 0.026119 0.781250 -vt 0.044776 0.781250 -vt 0.052239 0.781250 -vt 0.070896 0.781250 -vt 0.093284 0.781250 -vt 0.078358 0.781250 -vt 0.100746 0.781250 vt 0.488806 0.125000 vt 0.548507 0.437500 vt 0.548507 0.125000 -vt 0.630597 0.187500 -vt 0.623134 0.125000 -vt 0.630597 0.125000 -vt 0.630597 0.750000 -vt 0.623134 0.687500 -vt 0.630597 0.687500 -vt 0.630597 0.437500 -vt 0.623134 0.375000 -vt 0.630597 0.375000 -vt 0.630597 0.562500 -vt 0.623134 0.500000 -vt 0.630597 0.500000 -vt 0.630597 0.250000 -vt 0.623134 0.187500 -vt 0.630597 0.812500 -vt 0.623134 0.750000 -vt 0.623134 0.437500 -vt 0.630597 0.625000 -vt 0.623134 0.562500 -vt 0.630597 0.312500 -vt 0.623134 0.250000 -vt 0.630597 0.875000 -vt 0.623134 0.812500 -vt 0.623134 0.625000 -vt 0.623134 0.312500 -vt 0.641791 0.437500 -vt 0.645522 0.453125 -vt 0.641791 0.453125 -vt 0.645965 0.438018 -vt 0.649254 0.453125 -vt 0.645522 0.546875 -vt 0.641791 0.562500 -vt 0.641791 0.546875 -vt 0.649254 0.546875 -vt 0.645522 0.562500 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.641791 0.515625 -vt 0.645522 0.515625 -vt 0.641791 0.500000 -vt 0.645522 0.500000 -vt 0.645522 0.484375 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.649254 0.562500 -vt 0.649254 0.437500 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.570895 0.265625 -vt 0.555970 0.250000 -vt 0.570895 0.250000 -vt 0.570895 0.187500 -vt 0.555970 0.171875 -vt 0.570895 0.171875 -vt 0.570895 0.140625 -vt 0.555970 0.125000 -vt 0.570895 0.125000 -vt 0.570895 0.281250 -vt 0.555970 0.265625 -vt 0.570895 0.203125 -vt 0.555970 0.187500 -vt 0.570895 0.234375 -vt 0.555970 0.218750 -vt 0.570895 0.218750 -vt 0.570895 0.156250 -vt 0.555970 0.140625 -vt 0.570895 0.296875 -vt 0.555970 0.281250 -vt 0.555970 0.203125 -vt 0.555970 0.234375 -vt 0.555970 0.156250 -vt 0.570895 0.312500 -vt 0.555970 0.296875 -vt 0.638060 0.359375 -vt 0.630597 0.312500 -vt 0.638060 0.312500 -vt 0.638060 0.453125 -vt 0.630597 0.406250 -vt 0.638060 0.406250 -vt 0.638060 0.218750 -vt 0.630597 0.171875 -vt 0.638060 0.171875 -vt 0.638060 0.640625 -vt 0.630597 0.593750 -vt 0.638060 0.593750 -vt 0.630597 0.359375 -vt 0.638060 0.500000 -vt 0.630597 0.453125 -vt 0.638060 0.265625 -vt 0.630597 0.218750 -vt 0.638060 0.687500 -vt 0.630597 0.640625 -vt 0.638060 0.546875 -vt 0.630597 0.500000 -vt 0.630597 0.265625 -vt 0.630597 0.125000 -vt 0.638060 0.125000 -vt 0.630597 0.546875 -vt 0.716418 0.125000 -vt 0.727612 0.140625 -vt 0.727612 0.125000 -vt 0.716418 0.218750 -vt 0.727612 0.234375 -vt 0.727612 0.218750 -vt 0.716418 0.187500 -vt 0.727612 0.203125 -vt 0.727612 0.187500 -vt 0.716418 0.156250 -vt 0.727612 0.171875 -vt 0.727612 0.156250 -vt 0.716418 0.140625 -vt 0.716418 0.234375 -vt 0.727612 0.250000 -vt 0.716418 0.203125 -vt 0.716418 0.171875 -vt 0.641791 0.437500 -vt 0.645522 0.453125 -vt 0.641791 0.453125 -vt 0.645965 0.438018 -vt 0.649254 0.453125 -vt 0.645522 0.546875 -vt 0.641791 0.562500 -vt 0.641791 0.546875 -vt 0.649254 0.546875 -vt 0.645522 0.562500 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.641791 0.515625 -vt 0.645522 0.515625 -vt 0.641791 0.500000 -vt 0.645522 0.500000 -vt 0.645522 0.484375 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.649254 0.562500 -vt 0.649254 0.437500 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.641791 0.437500 -vt 0.645522 0.453125 -vt 0.641791 0.453125 -vt 0.649254 0.437500 -vt 0.645965 0.438018 -vt 0.641791 0.546875 -vt 0.645522 0.562500 -vt 0.641791 0.562500 -vt 0.649254 0.546875 -vt 0.645522 0.546875 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.645522 0.515625 -vt 0.641791 0.515625 -vt 0.645522 0.500000 -vt 0.641791 0.500000 -vt 0.645522 0.484375 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.649254 0.562500 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.641791 0.437500 -vt 0.645522 0.453125 -vt 0.641791 0.453125 -vt 0.649254 0.437500 -vt 0.645965 0.438018 -vt 0.641791 0.546875 -vt 0.645522 0.562500 -vt 0.641791 0.562500 -vt 0.649254 0.546875 -vt 0.645522 0.546875 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.645522 0.515625 -vt 0.641791 0.515625 -vt 0.645522 0.500000 -vt 0.641791 0.500000 -vt 0.645522 0.484375 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.649254 0.562500 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.645965 0.438018 -vt 0.641791 0.453125 -vt 0.641791 0.437500 -vt 0.649254 0.437500 -vt 0.645522 0.453125 -vt 0.645522 0.546875 -vt 0.641791 0.562500 -vt 0.641791 0.546875 -vt 0.649254 0.562500 -vt 0.649254 0.546875 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.645522 0.515625 -vt 0.641791 0.515625 -vt 0.645522 0.500000 -vt 0.641791 0.500000 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.645522 0.484375 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.645965 0.438018 -vt 0.641791 0.453125 -vt 0.641791 0.437500 -vt 0.649254 0.437500 -vt 0.645522 0.453125 -vt 0.645522 0.546875 -vt 0.641791 0.562500 -vt 0.641791 0.546875 -vt 0.649254 0.562500 -vt 0.649254 0.546875 -vt 0.645522 0.531250 -vt 0.641791 0.531250 -vt 0.649254 0.531250 -vt 0.645522 0.515625 -vt 0.641791 0.515625 -vt 0.645522 0.500000 -vt 0.641791 0.500000 -vt 0.641791 0.484375 -vt 0.645522 0.468750 -vt 0.641791 0.468750 -vt 0.645522 0.484375 -vt 0.638060 0.468750 -vt 0.638060 0.484375 -vt 0.638060 0.500000 -vt 0.638060 0.515625 -vt 0.638060 0.531250 -vt 0.638060 0.546875 -vt 0.638060 0.437500 -vt 0.638060 0.453125 -vt 0.649254 0.453125 -vt 0.649254 0.468750 -vt 0.649254 0.484375 -vt 0.649254 0.500000 -vt 0.652985 0.468750 -vt 0.652985 0.484375 -vt 0.649254 0.515625 -vt 0.652985 0.500000 -vt 0.652985 0.515625 -vt 0.652985 0.531250 -vt 0.652985 0.546875 -vt 0.652985 0.437500 -vt 0.652985 0.453125 -vt 0.664179 0.468750 -vt 0.675373 0.484375 -vt 0.675373 0.453125 -vt 0.664179 0.484375 -vt 0.664179 0.500000 -vt 0.675373 0.562500 -vt 0.664179 0.515625 -vt 0.675373 0.546875 -vt 0.664179 0.531250 -vt 0.675373 0.531250 -vt 0.664179 0.546875 -vt 0.675373 0.515625 -vt 0.664179 0.437500 -vt 0.675373 0.500000 -vt 0.664179 0.453125 -vt 0.675373 0.468750 -vt 0.652985 0.562500 -vt 0.208955 0.125000 -vt 0.238806 0.328125 -vt 0.238806 0.328125 -vt 0.238806 0.328125 -vt 0.238806 0.328125 -vt 0.238806 0.328125 -vt 0.238806 0.328125 vt 0.272388 0.125000 vt 0.406716 0.687500 vt 0.406716 0.875000 vt 0.406716 0.312500 -vt 0.716418 0.250000 -vt 0.041045 0.781250 -vt 0.048507 0.781250 -vt 0.067164 0.781250 -vt 0.074627 0.781250 -vt 0.097015 0.781250 -vt 0.623134 0.875000 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vt 0.555970 0.312500 -vt 0.630597 0.687500 -vt 0.716418 0.250000 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vt 0.645522 0.562500 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vt 0.645522 0.562500 -vt 0.675373 0.437500 -vt 0.664179 0.562500 -vn 0.0000 0.0000 1.0000 -vn -0.8660 -0.5000 0.0000 -vn 0.0000 1.0000 0.0000 -vn 0.8660 -0.5000 0.0000 -vn -0.8660 0.5000 0.0000 -vn 0.8660 0.5000 0.0000 -vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.0000 1.0000 vn 0.0000 0.0000 -1.0000 vn -1.0000 0.0000 0.0000 vn 1.0000 0.0000 0.0000 vn 0.7071 0.7071 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 vn 0.0000 -0.7071 -0.7071 vn -0.7071 -0.7071 0.0000 vn 0.0000 -0.7071 0.7071 @@ -2155,42 +3460,14 @@ vn -0.7071 0.7071 0.0000 vn 0.7071 -0.7071 0.0000 vn 0.0000 0.2425 0.9701 vn 0.0000 0.2425 -0.9701 -vn 0.1499 0.9887 0.0000 -vn 0.7813 0.6242 0.0000 -vn 0.1499 -0.9887 0.0000 -vn -0.2208 -0.9753 0.0000 -vn 0.7813 -0.6242 0.0000 -vn 0.9550 -0.2965 0.0000 -vn -0.7813 0.6242 0.0000 -vn -0.1499 0.9887 0.0000 -vn -0.7813 -0.6242 0.0000 -vn -0.9550 -0.2965 0.0000 -vn -0.9550 0.2965 0.0000 -vn 0.2208 -0.9753 0.0000 -vn -0.1499 -0.9887 0.0000 -vn 0.9550 0.2965 0.0000 -vn 0.9312 0.3645 0.0000 -vn 0.9312 -0.3645 0.0000 -vn -0.9312 0.3645 0.0000 -vn -0.7343 0.6788 0.0000 -vn -0.2208 0.9753 0.0000 -vn -0.7343 -0.6788 0.0000 -vn -0.9312 -0.3645 0.0000 -vn 0.7343 -0.6788 0.0000 -vn 0.2208 0.9753 0.0000 -vn 0.7343 0.6788 0.0000 -vn 0.9659 -0.2588 0.0000 -vn 0.2588 -0.9659 0.0000 -vn -0.5000 -0.8660 0.0000 -vn -0.9659 -0.2588 0.0000 -vn 0.2588 0.9659 0.0000 -vn -0.5000 0.8660 0.0000 -vn -0.9659 0.2588 0.0000 -vn 0.9659 0.2588 0.0000 -vn 0.5000 0.8660 0.0000 -vn -0.2588 0.9659 0.0000 -vn -0.2588 -0.9659 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 vn 0.5000 -0.8660 0.0000 +vn -0.8660 -0.5000 -0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 vn 0.9474 -0.3073 0.0890 vn 0.9239 0.3827 0.0000 vn 0.9239 -0.3827 0.0000 @@ -2222,1424 +3499,242 @@ vn 0.3909 -0.4393 0.8089 vn -0.3909 -0.4393 0.8089 vn -0.9530 0.2142 -0.2142 vn -0.9414 -0.1935 0.2764 -vn 0.0000 0.7071 0.7071 -vn 0.0000 0.7071 -0.7071 -vn 0.0000 0.9239 -0.3827 -vn 0.0000 0.9239 0.3827 -vn 0.0000 0.3827 -0.9239 -vn 0.0000 -0.3827 -0.9239 -vn 0.0000 -0.9239 0.3827 -vn 0.0000 -0.9239 -0.3827 -vn 0.0000 0.3827 0.9239 -vn 0.0000 -0.3827 0.9239 vn 0.9414 -0.1935 0.2764 -vn 0.0000 -0.7486 0.6630 -vn 0.5293 -0.5294 0.6630 -vn 0.5294 -0.5294 -0.6630 -vn -0.5293 -0.5294 0.6630 -vn -0.5294 -0.5294 -0.6630 -vn -0.7486 -0.0000 0.6630 -vn -0.7486 -0.0000 -0.6630 -vn -0.5293 0.5294 0.6630 -vn 0.0000 0.7486 0.6630 -vn 0.5293 0.5294 0.6630 -vn 0.7486 -0.0000 0.6630 -vn 0.7486 -0.0000 -0.6630 -vn 0.5294 0.5294 -0.6630 -vn 0.0000 0.7486 -0.6630 -vn -0.5294 0.5294 -0.6630 -vn 0.0000 -0.7486 -0.6630 -vn -0.6483 -0.3743 0.6630 -vn -0.1938 -0.7231 0.6630 -vn -0.6483 -0.3743 -0.6630 -vn -0.7231 0.1938 0.6630 -vn -0.7231 0.1938 -0.6630 -vn -0.3743 0.6483 0.6630 -vn -0.3743 0.6483 -0.6630 -vn 0.1938 0.7231 0.6630 -vn 0.6483 0.3743 0.6630 -vn 0.7231 -0.1938 0.6630 -vn 0.3743 -0.6483 0.6630 -vn -0.1938 -0.7231 -0.6630 -vn 0.3743 -0.6483 -0.6630 -vn 0.7231 -0.1938 -0.6630 -vn 0.6483 0.3743 -0.6630 -vn 0.1938 0.7231 -0.6630 -vn -0.7231 -0.1938 0.6630 -vn -0.6483 0.3743 0.6630 -vn -0.6483 0.3743 -0.6630 -vn -0.1938 0.7231 0.6630 -vn -0.1938 0.7231 -0.6630 -vn 0.3743 0.6483 0.6630 -vn 0.3743 0.6483 -0.6630 -vn 0.7231 0.1938 0.6630 -vn 0.6483 -0.3743 0.6630 -vn 0.1938 -0.7231 0.6630 -vn -0.3743 -0.6483 0.6630 -vn -0.7231 -0.1938 -0.6630 -vn -0.3743 -0.6483 -0.6630 -vn 0.1938 -0.7231 -0.6630 -vn 0.6483 -0.3743 -0.6630 -vn 0.7231 0.1938 -0.6630 s off -f 29/1/1 13/2/1 53/3/1 -f 61/4/1 63/5/1 58/6/1 -f 73/7/1 74/8/1 49/9/1 -f 68/10/1 67/11/1 9/12/1 -f 72/13/1 71/14/1 25/15/1 -f 76/16/1 75/17/1 41/18/1 -f 65/19/1 66/20/1 17/21/1 -f 69/22/1 70/23/1 33/24/1 -f 81/25/1 82/26/1 39/27/1 -f 11/28/1 86/29/1 55/30/1 -f 80/31/1 79/32/1 15/33/1 -f 84/34/1 83/35/1 31/36/1 -f 19/37/1 87/38/1 47/39/1 -f 77/40/1 78/41/1 23/42/1 -f 39/27/1 52/43/1 51/44/1 -f 37/45/1 52/43/1 38/46/1 -f 12/47/1 55/30/1 54/48/1 -f 12/47/1 53/3/1 13/2/1 -f 14/49/1 27/50/1 15/33/1 -f 14/49/1 29/1/1 28/51/1 -f 30/52/1 43/53/1 31/36/1 -f 29/1/1 44/54/1 30/52/1 -f 19/37/1 46/55/1 20/56/1 -f 20/56/1 45/57/1 21/58/1 -f 23/42/1 36/59/1 35/60/1 -f 21/58/1 36/59/1 22/61/1 -f 69/62/2 94/63/2 70/64/2 -f 68/65/3 91/66/3 67/67/3 -f 76/68/4 99/69/4 75/70/4 -f 73/71/5 98/72/5 74/73/5 -f 72/74/6 95/75/6 71/76/6 -f 65/77/7 90/78/7 66/79/7 -f 135/80/1 136/81/1 129/82/1 -f 151/83/1 152/84/1 145/85/1 -f 125/86/1 127/87/1 121/88/1 -f 143/89/1 144/90/1 137/91/1 -f 159/92/1 160/93/1 153/94/1 -f 117/95/1 119/96/1 113/97/1 -f 165/98/1 169/99/1 161/100/1 -f 181/101/8 179/102/8 175/103/8 -f 186/104/9 187/105/9 185/106/9 -f 187/105/8 192/107/8 191/108/8 -f 192/107/10 189/109/10 191/108/10 -f 190/110/1 185/111/1 189/109/1 -f 191/108/10 189/109/10 196/112/10 -f 188/113/11 190/110/11 192/107/11 -f 193/114/9 204/115/9 195/116/9 -f 194/117/9 197/118/9 185/119/9 -f 203/120/8 219/121/8 204/115/8 -f 185/106/9 187/105/9 194/122/9 -f 197/123/8 206/124/8 198/125/8 -f 189/126/10 200/127/10 196/128/10 -f 185/129/3 198/130/3 189/126/3 -f 196/128/7 199/131/7 194/117/7 -f 191/108/12 194/117/12 187/105/12 -f 197/132/9 199/133/9 201/134/9 -f 220/135/10 217/136/10 219/121/10 -f 200/137/10 198/125/10 202/138/10 -f 207/139/13 209/140/13 205/141/13 -f 201/134/9 205/142/9 197/132/9 -f 202/138/1 207/143/1 201/134/1 -f 198/125/10 208/144/10 202/138/10 -f 210/145/7 211/146/7 209/147/7 -f 210/145/1 216/148/1 212/149/1 -f 211/150/8 213/151/8 209/152/8 -f 216/148/3 213/151/3 215/153/3 -f 209/154/8 206/124/8 205/155/8 -f 214/156/1 207/139/1 208/144/1 -f 206/124/11 214/156/11 208/144/11 -f 200/127/14 201/134/14 199/131/14 -f 217/157/1 193/114/1 195/116/1 -f 219/121/10 217/136/10 222/158/10 -f 203/120/15 218/159/15 220/160/15 -f 221/161/9 223/162/9 195/163/9 -f 195/116/9 204/115/9 221/164/9 -f 223/165/8 230/166/8 224/167/8 -f 217/168/10 226/169/10 222/170/10 -f 195/163/3 224/171/3 217/172/3 -f 222/170/7 225/173/7 221/161/7 -f 219/121/12 221/161/12 204/115/12 -f 223/165/9 225/174/9 227/175/9 -f 226/176/10 224/177/10 228/178/10 -f 227/175/9 229/179/9 223/165/9 -f 228/178/1 231/180/1 227/175/1 -f 224/177/10 232/181/10 228/178/10 -f 226/169/14 227/175/14 225/173/14 -f 212/182/16 230/183/16 211/184/16 -f 230/185/8 215/153/8 211/186/8 -f 215/153/15 231/180/15 216/148/15 -f 216/148/1 232/187/1 212/182/1 -f 259/188/12 263/189/12 260/190/12 -f 267/191/7 266/192/7 265/193/7 -f 271/194/3 269/195/3 270/196/3 -f 267/197/8 272/198/8 268/199/8 -f 266/192/1 270/200/1 265/201/1 -f 268/199/10 271/194/10 266/192/10 -f 283/202/10 285/203/10 287/204/10 -f 299/205/3 297/206/3 298/207/3 -f 294/208/10 300/209/10 299/205/10 -f 292/210/10 294/208/10 290/211/10 -f 289/212/9 295/213/9 291/214/9 -f 291/214/8 296/215/8 292/210/8 -f 290/211/1 293/216/1 289/217/1 -f 293/218/9 297/219/9 295/213/9 -f 295/213/8 300/209/8 296/215/8 -f 294/220/14 298/207/14 293/221/14 -f 302/222/7 303/223/7 301/224/7 -f 305/225/3 307/226/3 306/227/3 -f 308/228/8 303/229/8 304/230/8 -f 306/231/1 302/222/1 301/232/1 -f 307/226/9 304/230/9 302/222/9 -f 312/233/8 315/234/8 311/235/8 -f 309/236/1 314/237/1 310/238/1 -f 310/238/10 316/239/10 312/233/10 -f 311/235/9 313/240/9 309/241/9 -f 325/242/9 322/243/9 334/244/9 -f 331/245/10 318/246/10 338/247/10 -f 335/248/10 323/249/10 328/250/10 -f 339/251/9 320/252/9 330/253/9 -f 329/254/9 341/255/9 326/256/9 -f 327/257/10 344/258/10 332/259/10 -f 337/260/10 346/261/10 336/262/10 -f 333/263/9 348/264/9 340/265/9 -f 345/266/9 334/244/9 322/267/9 -f 336/262/10 321/268/10 335/248/10 -f 326/256/9 324/269/9 325/242/9 -f 342/270/10 328/250/10 323/271/10 -f 343/272/9 330/253/9 320/273/9 -f 332/259/10 319/274/10 331/245/10 -f 340/275/9 317/276/9 339/251/9 -f 347/277/10 338/247/10 318/278/10 -f 355/279/3 359/280/3 358/281/3 -f 352/282/10 355/279/10 350/283/10 -f 349/284/9 353/285/9 351/286/9 -f 357/287/3 353/285/3 354/288/3 -f 359/289/9 362/290/9 358/291/9 -f 357/292/10 364/293/10 360/294/10 -f 362/295/17 355/279/17 358/281/17 -f 361/296/17 354/288/17 349/297/17 -f 364/298/18 353/285/18 360/299/18 -f 363/300/18 356/301/18 352/302/18 -f 349/297/17 362/295/17 361/296/17 -f 351/303/18 363/300/18 352/302/18 -f 361/304/3 363/305/3 364/293/3 -f 381/306/1 385/307/1 377/308/1 -f 375/309/8 373/310/8 371/311/8 -f 421/312/8 429/313/8 416/314/8 -f 421/312/8 423/315/8 430/316/8 -f 418/317/8 424/318/8 423/315/8 -f 420/319/8 425/320/8 424/318/8 -f 422/321/8 425/320/8 415/322/8 -f 422/321/8 427/323/8 426/324/8 -f 419/325/8 427/326/8 417/327/8 -f 419/325/8 429/313/8 428/328/8 -f 481/329/8 477/330/8 473/331/8 -f 487/332/1 491/333/1 483/334/1 -f 258/335/12 259/188/12 260/190/12 -f 258/335/12 262/336/12 257/337/12 -f 506/338/9 505/339/9 509/340/9 -f 519/341/3 521/342/3 520/343/3 -f 516/344/9 522/345/9 518/346/9 -f 516/344/9 514/347/9 512/348/9 -f 517/349/10 511/350/10 513/351/10 -f 518/346/8 513/351/8 514/347/8 -f 515/352/1 512/348/1 511/353/1 -f 519/354/10 515/355/10 517/349/10 -f 522/345/8 517/349/8 518/346/8 -f 520/343/14 516/356/14 515/357/14 -f 555/358/8 563/359/8 550/360/8 -f 555/358/8 557/361/8 564/362/8 -f 552/363/8 558/364/8 557/361/8 -f 554/365/8 559/366/8 558/364/8 -f 556/367/8 559/366/8 549/368/8 -f 556/367/8 561/369/8 560/370/8 -f 553/371/8 561/372/8 551/373/8 -f 553/371/8 563/359/8 562/374/8 -f 613/375/8 621/376/8 608/377/8 -f 613/375/8 615/378/8 622/379/8 -f 610/380/8 616/381/8 615/378/8 -f 612/382/8 617/383/8 616/381/8 -f 614/384/8 617/383/8 607/385/8 -f 614/384/8 619/386/8 618/387/8 -f 611/388/8 619/389/8 609/390/8 -f 611/388/8 621/376/8 620/391/8 -f 671/392/8 679/393/8 666/394/8 -f 671/392/8 673/395/8 680/396/8 -f 668/397/8 674/398/8 673/395/8 -f 670/399/8 675/400/8 674/398/8 -f 672/401/8 675/400/8 665/402/8 -f 672/401/8 677/403/8 676/404/8 -f 669/405/8 677/406/8 667/407/8 -f 669/405/8 679/393/8 678/408/8 -f 729/409/8 737/410/8 724/411/8 -f 729/409/8 731/412/8 738/413/8 -f 726/414/8 732/415/8 731/412/8 -f 728/416/8 733/417/8 732/415/8 -f 730/418/8 733/417/8 723/419/8 -f 730/418/8 735/420/8 734/421/8 -f 727/422/8 735/423/8 725/424/8 -f 727/422/8 737/410/8 736/425/8 -f 787/426/8 795/427/8 782/428/8 -f 787/426/8 789/429/8 796/430/8 -f 784/431/8 790/432/8 789/429/8 -f 786/433/8 791/434/8 790/432/8 -f 788/435/8 791/434/8 781/436/8 -f 788/435/8 793/437/8 792/438/8 -f 785/439/8 793/440/8 783/441/8 -f 785/439/8 795/427/8 794/442/8 -f 53/3/1 37/45/1 29/1/1 -f 37/45/1 21/58/1 29/1/1 -f 21/58/1 45/57/1 29/1/1 -f 58/6/1 57/443/1 59/444/1 -f 59/444/1 60/445/1 61/4/1 -f 61/4/1 62/446/1 63/5/1 -f 63/5/1 64/447/1 58/6/1 -f 58/6/1 59/444/1 61/4/1 -f 81/25/1 50/448/1 74/8/1 -f 50/448/1 49/9/1 74/8/1 -f 49/9/1 56/449/1 73/7/1 -f 56/449/1 86/29/1 73/7/1 -f 85/450/1 10/451/1 67/11/1 -f 10/451/1 9/12/1 67/11/1 -f 9/12/1 16/452/1 68/10/1 -f 16/452/1 79/32/1 68/10/1 -f 80/31/1 26/453/1 71/14/1 -f 26/453/1 25/15/1 71/14/1 -f 25/15/1 32/454/1 72/13/1 -f 32/454/1 83/35/1 72/13/1 -f 84/34/1 42/455/1 75/17/1 -f 42/455/1 41/18/1 75/17/1 -f 41/18/1 48/456/1 76/16/1 -f 48/456/1 87/38/1 76/16/1 -f 88/457/1 18/458/1 66/20/1 -f 18/458/1 17/21/1 66/20/1 -f 17/21/1 24/459/1 65/19/1 -f 24/459/1 78/41/1 65/19/1 -f 77/40/1 34/460/1 70/23/1 -f 34/460/1 33/24/1 70/23/1 -f 33/24/1 40/461/1 69/22/1 -f 40/461/1 82/26/1 69/22/1 -f 82/26/1 40/461/1 39/27/1 -f 39/27/1 51/44/1 81/25/1 -f 51/44/1 50/448/1 81/25/1 -f 11/28/1 10/451/1 85/450/1 -f 85/450/1 86/29/1 11/28/1 -f 86/29/1 56/449/1 55/30/1 -f 79/32/1 16/452/1 15/33/1 -f 15/33/1 27/50/1 80/31/1 -f 27/50/1 26/453/1 80/31/1 -f 83/35/1 32/454/1 31/36/1 -f 31/36/1 43/53/1 84/34/1 -f 43/53/1 42/455/1 84/34/1 -f 19/37/1 18/458/1 88/457/1 -f 88/457/1 87/38/1 19/37/1 -f 87/38/1 48/456/1 47/39/1 -f 78/41/1 24/459/1 23/42/1 -f 23/42/1 35/60/1 77/40/1 -f 35/60/1 34/460/1 77/40/1 -f 39/27/1 38/46/1 52/43/1 -f 37/45/1 53/3/1 52/43/1 -f 12/47/1 11/28/1 55/30/1 -f 12/47/1 54/48/1 53/3/1 -f 14/49/1 28/51/1 27/50/1 -f 14/49/1 13/2/1 29/1/1 -f 30/52/1 44/54/1 43/53/1 -f 29/1/1 45/57/1 44/54/1 -f 19/37/1 47/39/1 46/55/1 -f 20/56/1 46/55/1 45/57/1 -f 23/42/1 22/61/1 36/59/1 -f 21/58/1 37/45/1 36/59/1 -f 69/62/2 93/462/2 94/63/2 -f 68/65/3 92/463/3 91/66/3 -f 76/68/4 100/464/4 99/69/4 -f 73/71/5 97/465/5 98/72/5 -f 72/74/6 96/466/6 95/75/6 -f 65/77/7 89/467/7 90/78/7 -f 129/82/1 130/468/1 131/469/1 -f 131/469/1 132/470/1 129/82/1 -f 132/470/1 133/471/1 129/82/1 -f 133/471/1 134/472/1 129/82/1 -f 134/472/1 135/80/1 129/82/1 -f 145/85/1 146/473/1 147/474/1 -f 147/474/1 148/475/1 145/85/1 -f 148/475/1 149/476/1 145/85/1 -f 149/476/1 150/477/1 145/85/1 -f 150/477/1 151/83/1 145/85/1 -f 121/88/1 122/478/1 123/479/1 -f 123/479/1 124/480/1 125/86/1 -f 125/86/1 126/481/1 127/87/1 -f 127/87/1 128/482/1 121/88/1 -f 121/88/1 123/479/1 125/86/1 -f 137/91/1 138/483/1 139/484/1 -f 139/484/1 140/485/1 137/91/1 -f 140/485/1 141/486/1 137/91/1 -f 141/486/1 142/487/1 137/91/1 -f 142/487/1 143/89/1 137/91/1 -f 153/94/1 154/488/1 155/489/1 -f 155/489/1 156/490/1 153/94/1 -f 156/490/1 157/491/1 153/94/1 -f 157/491/1 158/492/1 153/94/1 -f 158/492/1 159/92/1 153/94/1 -f 113/97/1 114/493/1 115/494/1 -f 115/494/1 116/495/1 117/95/1 -f 117/95/1 118/496/1 119/96/1 -f 119/96/1 120/497/1 113/97/1 -f 113/97/1 115/494/1 117/95/1 -f 161/100/1 162/498/1 163/499/1 -f 163/499/1 164/500/1 161/100/1 -f 164/500/1 165/98/1 161/100/1 -f 165/98/1 166/501/1 169/99/1 -f 166/501/1 167/502/1 169/99/1 -f 167/502/1 168/503/1 169/99/1 -f 169/99/1 170/504/1 171/505/1 -f 171/505/1 172/506/1 169/99/1 -f 172/506/1 161/100/1 169/99/1 -f 175/103/8 173/507/8 174/508/8 -f 174/508/8 184/509/8 175/103/8 -f 184/509/8 183/510/8 175/103/8 -f 183/510/8 182/511/8 181/101/8 -f 181/101/8 180/512/8 179/102/8 -f 179/102/8 178/513/8 175/103/8 -f 178/513/8 177/514/8 175/103/8 -f 177/514/8 176/515/8 175/103/8 -f 183/510/8 181/101/8 175/103/8 -f 186/104/9 188/516/9 187/105/9 -f 187/105/8 188/516/8 192/107/8 -f 192/107/10 190/110/10 189/109/10 -f 190/110/1 186/517/1 185/111/1 -f 188/113/11 186/518/11 190/110/11 -f 193/114/9 203/120/9 204/115/9 -f 194/117/9 199/131/9 197/118/9 -f 203/120/8 220/135/8 219/121/8 -f 197/123/8 205/519/8 206/124/8 -f 189/126/10 198/130/10 200/127/10 -f 185/129/3 197/520/3 198/130/3 -f 196/128/7 200/127/7 199/131/7 -f 191/108/12 196/128/12 194/117/12 -f 220/135/10 218/521/10 217/136/10 -f 207/139/13 210/522/13 209/140/13 -f 201/134/9 207/143/9 205/142/9 -f 202/138/1 208/144/1 207/143/1 -f 198/125/10 206/124/10 208/144/10 -f 210/145/7 212/149/7 211/146/7 -f 210/145/1 214/156/1 216/148/1 -f 211/150/8 215/153/8 213/151/8 -f 216/148/3 214/156/3 213/151/3 -f 209/154/8 213/151/8 206/124/8 -f 214/156/1 210/522/1 207/139/1 -f 206/124/11 213/151/11 214/156/11 -f 200/127/14 202/138/14 201/134/14 -f 217/157/1 218/523/1 193/114/1 -f 203/120/15 193/114/15 218/159/15 -f 221/161/9 225/173/9 223/162/9 -f 223/165/8 229/179/8 230/166/8 -f 217/168/10 224/524/10 226/169/10 -f 195/163/3 223/162/3 224/171/3 -f 222/170/7 226/169/7 225/173/7 -f 219/121/12 222/170/12 221/161/12 -f 227/175/9 231/180/9 229/179/9 -f 228/178/1 232/181/1 231/180/1 -f 224/177/10 230/525/10 232/181/10 -f 226/169/14 228/178/14 227/175/14 -f 212/182/16 232/187/16 230/183/16 -f 230/185/8 229/179/8 215/153/8 -f 215/153/15 229/179/15 231/180/15 -f 216/148/1 231/180/1 232/187/1 -f 259/188/12 261/526/12 263/189/12 -f 267/191/7 268/199/7 266/192/7 -f 271/194/3 272/198/3 269/195/3 -f 267/197/8 269/527/8 272/198/8 -f 266/192/1 271/194/1 270/200/1 -f 268/199/10 272/198/10 271/194/10 -f 281/528/10 282/529/10 283/202/10 -f 283/202/10 284/530/10 285/203/10 -f 285/203/10 286/531/10 287/204/10 -f 287/204/10 288/532/10 281/528/10 -f 281/528/10 283/202/10 287/204/10 -f 299/205/3 300/209/3 297/206/3 -f 294/208/10 296/215/10 300/209/10 -f 292/210/10 296/215/10 294/208/10 -f 289/212/9 293/218/9 295/213/9 -f 291/214/8 295/213/8 296/215/8 -f 290/211/1 294/208/1 293/216/1 -f 293/218/9 298/533/9 297/219/9 -f 295/213/8 297/219/8 300/209/8 -f 294/220/14 299/205/14 298/207/14 -f 302/222/7 304/230/7 303/223/7 -f 305/225/3 308/228/3 307/226/3 -f 308/228/8 305/534/8 303/229/8 -f 306/231/1 307/226/1 302/222/1 -f 307/226/9 308/228/9 304/230/9 -f 312/233/8 316/239/8 315/234/8 -f 309/236/1 313/535/1 314/237/1 -f 310/238/10 314/237/10 316/239/10 -f 311/235/9 315/234/9 313/240/9 -f 325/242/9 324/536/9 322/243/9 -f 331/245/10 319/537/10 318/246/10 -f 335/248/10 321/538/10 323/249/10 -f 339/251/9 317/539/9 320/252/9 -f 329/254/9 343/540/9 341/255/9 -f 327/257/10 342/541/10 344/258/10 -f 337/260/10 347/542/10 346/261/10 -f 333/263/9 345/543/9 348/264/9 -f 345/266/9 333/263/9 334/244/9 -f 336/262/10 346/544/10 321/268/10 -f 326/256/9 341/545/9 324/269/9 -f 342/270/10 327/257/10 328/250/10 -f 343/272/9 329/254/9 330/253/9 -f 332/259/10 344/546/10 319/274/10 -f 340/275/9 348/547/9 317/276/9 -f 347/277/10 337/548/10 338/247/10 -f 355/279/3 356/301/3 359/280/3 -f 352/282/10 356/301/10 355/279/10 -f 349/284/9 354/288/9 353/285/9 -f 357/287/3 360/299/3 353/285/3 -f 359/289/9 363/305/9 362/290/9 -f 357/292/10 361/304/10 364/293/10 -f 362/295/17 350/549/17 355/279/17 -f 361/296/17 357/287/17 354/288/17 -f 364/298/18 351/303/18 353/285/18 -f 363/300/18 359/280/18 356/301/18 -f 349/297/17 350/549/17 362/295/17 -f 351/303/18 364/298/18 363/300/18 -f 361/304/3 362/290/3 363/305/3 -f 377/308/1 378/550/1 379/551/1 -f 379/551/1 380/552/1 377/308/1 -f 380/552/1 381/306/1 377/308/1 -f 381/306/1 382/553/1 383/554/1 -f 383/554/1 384/555/1 385/307/1 -f 385/307/1 386/556/1 387/557/1 -f 387/557/1 388/558/1 377/308/1 -f 381/306/1 383/554/1 385/307/1 -f 385/307/1 387/557/1 377/308/1 -f 367/559/8 366/560/8 365/561/8 -f 365/561/8 376/562/8 375/309/8 -f 375/309/8 374/563/8 373/310/8 -f 373/310/8 372/564/8 371/311/8 -f 371/311/8 370/565/8 369/566/8 -f 369/566/8 368/567/8 371/311/8 -f 368/567/8 367/559/8 371/311/8 -f 367/559/8 365/561/8 371/311/8 -f 365/561/8 375/309/8 371/311/8 -f 421/312/8 430/316/8 429/313/8 -f 421/312/8 418/317/8 423/315/8 -f 418/317/8 420/319/8 424/318/8 -f 420/319/8 415/322/8 425/320/8 -f 422/321/8 426/324/8 425/320/8 -f 422/321/8 417/568/8 427/323/8 -f 419/325/8 428/328/8 427/326/8 -f 419/325/8 416/314/8 429/313/8 -f 473/331/8 472/569/8 481/329/8 -f 472/569/8 471/570/8 481/329/8 -f 471/570/8 482/571/8 481/329/8 -f 481/329/8 480/572/8 479/573/8 -f 479/573/8 478/574/8 481/329/8 -f 478/574/8 477/330/8 481/329/8 -f 477/330/8 476/575/8 473/331/8 -f 476/575/8 475/576/8 473/331/8 -f 475/576/8 474/577/8 473/331/8 -f 483/334/1 484/578/1 487/332/1 -f 484/578/1 485/579/1 487/332/1 -f 485/579/1 486/580/1 487/332/1 -f 487/332/1 488/581/1 491/333/1 -f 488/581/1 489/582/1 491/333/1 -f 489/582/1 490/583/1 491/333/1 -f 491/333/1 492/584/1 493/585/1 -f 493/585/1 494/586/1 491/333/1 -f 494/586/1 483/334/1 491/333/1 -f 258/335/12 257/337/12 259/188/12 -f 258/335/12 264/587/12 262/336/12 -f 505/339/9 504/588/9 509/340/9 -f 504/588/9 503/589/9 509/340/9 -f 503/589/9 510/590/9 509/340/9 -f 509/340/9 508/591/9 507/592/9 -f 507/592/9 506/338/9 509/340/9 -f 519/341/3 522/345/3 521/342/3 -f 516/344/9 521/342/9 522/345/9 -f 516/344/9 518/346/9 514/347/9 -f 517/349/10 515/355/10 511/350/10 -f 518/346/8 517/349/8 513/351/8 -f 515/352/1 516/344/1 512/348/1 -f 519/354/10 520/593/10 515/355/10 -f 522/345/8 519/354/8 517/349/8 -f 520/343/14 521/342/14 516/356/14 -f 555/358/8 564/362/8 563/359/8 -f 555/358/8 552/363/8 557/361/8 -f 552/363/8 554/365/8 558/364/8 -f 554/365/8 549/368/8 559/366/8 -f 556/367/8 560/370/8 559/366/8 -f 556/367/8 551/594/8 561/369/8 -f 553/371/8 562/374/8 561/372/8 -f 553/371/8 550/360/8 563/359/8 -f 613/375/8 622/379/8 621/376/8 -f 613/375/8 610/380/8 615/378/8 -f 610/380/8 612/382/8 616/381/8 -f 612/382/8 607/385/8 617/383/8 -f 614/384/8 618/387/8 617/383/8 -f 614/384/8 609/595/8 619/386/8 -f 611/388/8 620/391/8 619/389/8 -f 611/388/8 608/377/8 621/376/8 -f 671/392/8 680/396/8 679/393/8 -f 671/392/8 668/397/8 673/395/8 -f 668/397/8 670/399/8 674/398/8 -f 670/399/8 665/402/8 675/400/8 -f 672/401/8 676/404/8 675/400/8 -f 672/401/8 667/596/8 677/403/8 -f 669/405/8 678/408/8 677/406/8 -f 669/405/8 666/394/8 679/393/8 -f 729/409/8 738/413/8 737/410/8 -f 729/409/8 726/414/8 731/412/8 -f 726/414/8 728/416/8 732/415/8 -f 728/416/8 723/419/8 733/417/8 -f 730/418/8 734/421/8 733/417/8 -f 730/418/8 725/597/8 735/420/8 -f 727/422/8 736/425/8 735/423/8 -f 727/422/8 724/411/8 737/410/8 -f 787/426/8 796/430/8 795/427/8 -f 787/426/8 784/431/8 789/429/8 -f 784/431/8 786/433/8 790/432/8 -f 786/433/8 781/436/8 791/434/8 -f 788/435/8 792/438/8 791/434/8 -f 788/435/8 783/598/8 793/437/8 -f 785/439/8 794/442/8 793/440/8 -f 785/439/8 782/428/8 795/427/8 +f 681/1069/172 685/1070/172 677/1071/172 +f 697/1072/173 695/1073/173 691/1074/173 +f 702/1075/174 703/1076/174 701/1077/174 +f 703/1076/173 708/1078/173 707/1079/173 +f 708/1078/175 705/1080/175 707/1079/175 +f 706/1081/172 701/1082/172 705/1080/172 +f 707/1079/175 705/1080/175 712/1083/175 +f 704/1084/176 706/1081/176 708/1078/176 +f 709/1085/174 720/1086/174 711/1087/174 +f 710/1088/174 713/1089/174 701/1090/174 +f 719/1091/173 735/1092/173 720/1086/173 +f 701/1077/174 703/1076/174 710/1093/174 +f 713/1094/173 722/1095/173 714/1096/173 +f 705/1097/175 716/1098/175 712/1099/175 +f 701/1100/177 714/1101/177 705/1097/177 +f 712/1099/178 715/1102/178 710/1088/178 +f 707/1079/179 710/1088/179 703/1076/179 +f 713/1103/174 715/1104/174 717/1105/174 +f 736/1106/175 733/1107/175 735/1092/175 +f 716/1108/175 714/1096/175 718/1109/175 +f 723/1110/180 725/1111/180 721/1112/180 +f 717/1105/174 721/1113/174 713/1103/174 +f 718/1109/172 723/1114/172 717/1105/172 +f 714/1096/175 724/1115/175 718/1109/175 +f 726/1116/178 727/1117/178 725/1118/178 +f 726/1116/172 732/1119/172 728/1120/172 +f 727/1121/173 729/1122/173 725/1123/173 +f 732/1119/177 729/1122/177 731/1124/177 +f 725/1125/173 722/1095/173 721/1126/173 +f 730/1127/172 723/1110/172 724/1115/172 +f 722/1095/176 730/1127/176 724/1115/176 +f 716/1098/181 717/1105/181 715/1102/181 +f 733/1128/172 709/1085/172 711/1087/172 +f 735/1092/175 733/1107/175 738/1129/175 +f 719/1091/182 734/1130/182 736/1131/182 +f 737/1132/174 739/1133/174 711/1134/174 +f 711/1087/174 720/1086/174 737/1135/174 +f 739/1136/173 746/1137/173 740/1138/173 +f 733/1139/175 742/1140/175 738/1141/175 +f 711/1134/177 740/1142/177 733/1143/177 +f 738/1141/178 741/1144/178 737/1132/178 +f 735/1092/179 737/1132/179 720/1086/179 +f 739/1136/174 741/1145/174 743/1146/174 +f 742/1147/175 740/1148/175 744/1149/175 +f 743/1146/174 745/1150/174 739/1136/174 +f 744/1149/172 747/1151/172 743/1146/172 +f 740/1148/175 748/1152/175 744/1149/175 +f 742/1140/181 743/1146/181 741/1144/181 +f 728/1153/183 746/1154/183 727/1155/183 +f 746/1156/173 731/1124/173 727/1157/173 +f 731/1124/182 747/1151/182 732/1119/182 +f 732/1119/172 748/1158/172 728/1153/172 +f 775/1159/179 779/1160/179 776/1161/179 +f 783/1162/178 782/1163/178 781/1164/178 +f 787/1165/177 785/1166/177 786/1167/177 +f 783/1168/173 788/1169/173 784/1170/173 +f 782/1163/172 786/1171/172 781/1172/172 +f 784/1170/175 787/1165/175 782/1163/175 +f 790/1173/178 791/1174/178 789/1175/178 +f 793/1176/177 795/1177/177 794/1178/177 +f 796/1179/173 791/1180/173 792/1181/173 +f 794/1182/172 790/1173/172 789/1183/172 +f 795/1177/174 792/1181/174 790/1173/174 +f 803/1184/177 807/1185/177 806/1186/177 +f 800/1187/175 803/1184/175 798/1188/175 +f 797/1189/174 801/1190/174 799/1191/174 +f 805/1192/177 801/1190/177 802/1193/177 +f 807/1194/174 810/1195/174 806/1196/174 +f 805/1197/175 812/1198/175 808/1199/175 +f 810/1200/184 803/1184/184 806/1186/184 +f 809/1201/184 802/1193/184 797/1202/184 +f 812/1203/185 801/1190/185 808/1204/185 +f 811/1205/185 804/1206/185 800/1207/185 +f 797/1202/184 810/1200/184 809/1201/184 +f 799/1208/185 811/1205/185 800/1207/185 +f 809/1209/177 811/1210/177 812/1198/177 +f 774/1211/179 775/1159/179 776/1161/179 +f 774/1211/179 778/1212/179 773/1213/179 +f 677/1071/172 678/1214/172 679/1215/172 +f 679/1215/172 680/1216/172 677/1071/172 +f 680/1216/172 681/1069/172 677/1071/172 +f 681/1069/172 682/1217/172 685/1070/172 +f 682/1217/172 683/1218/172 685/1070/172 +f 683/1218/172 684/1219/172 685/1070/172 +f 685/1070/172 686/1220/172 687/1221/172 +f 687/1221/172 688/1222/172 685/1070/172 +f 688/1222/172 677/1071/172 685/1070/172 +f 691/1074/173 689/1223/173 690/1224/173 +f 690/1224/173 700/1225/173 691/1074/173 +f 700/1225/173 699/1226/173 691/1074/173 +f 699/1226/173 698/1227/173 697/1072/173 +f 697/1072/173 696/1228/173 695/1073/173 +f 695/1073/173 694/1229/173 691/1074/173 +f 694/1229/173 693/1230/173 691/1074/173 +f 693/1230/173 692/1231/173 691/1074/173 +f 699/1226/173 697/1072/173 691/1074/173 +f 702/1075/174 704/1232/174 703/1076/174 +f 703/1076/173 704/1232/173 708/1078/173 +f 708/1078/175 706/1081/175 705/1080/175 +f 706/1081/172 702/1233/172 701/1082/172 +f 704/1084/176 702/1234/176 706/1081/176 +f 709/1085/174 719/1091/174 720/1086/174 +f 710/1088/174 715/1102/174 713/1089/174 +f 719/1091/173 736/1106/173 735/1092/173 +f 713/1094/173 721/1235/173 722/1095/173 +f 705/1097/175 714/1101/175 716/1098/175 +f 701/1100/177 713/1236/177 714/1101/177 +f 712/1099/178 716/1098/178 715/1102/178 +f 707/1079/179 712/1099/179 710/1088/179 +f 736/1106/175 734/1237/175 733/1107/175 +f 723/1110/180 726/1238/180 725/1111/180 +f 717/1105/174 723/1114/174 721/1113/174 +f 718/1109/172 724/1115/172 723/1114/172 +f 714/1096/175 722/1095/175 724/1115/175 +f 726/1116/178 728/1120/178 727/1117/178 +f 726/1116/172 730/1127/172 732/1119/172 +f 727/1121/173 731/1124/173 729/1122/173 +f 732/1119/177 730/1127/177 729/1122/177 +f 725/1125/173 729/1122/173 722/1095/173 +f 730/1127/172 726/1238/172 723/1110/172 +f 722/1095/176 729/1122/176 730/1127/176 +f 716/1098/181 718/1109/181 717/1105/181 +f 733/1128/172 734/1239/172 709/1085/172 +f 719/1091/182 709/1085/182 734/1130/182 +f 737/1132/174 741/1144/174 739/1133/174 +f 739/1136/173 745/1150/173 746/1137/173 +f 733/1139/175 740/1240/175 742/1140/175 +f 711/1134/177 739/1133/177 740/1142/177 +f 738/1141/178 742/1140/178 741/1144/178 +f 735/1092/179 738/1141/179 737/1132/179 +f 743/1146/174 747/1151/174 745/1150/174 +f 744/1149/172 748/1152/172 747/1151/172 +f 740/1148/175 746/1241/175 748/1152/175 +f 742/1140/181 744/1149/181 743/1146/181 +f 728/1153/183 748/1158/183 746/1154/183 +f 746/1156/173 745/1150/173 731/1124/173 +f 731/1124/182 745/1150/182 747/1151/182 +f 732/1119/172 747/1151/172 748/1158/172 +f 775/1159/179 777/1242/179 779/1160/179 +f 783/1162/178 784/1170/178 782/1163/178 +f 787/1165/177 788/1169/177 785/1166/177 +f 783/1168/173 785/1243/173 788/1169/173 +f 782/1163/172 787/1165/172 786/1171/172 +f 784/1170/175 788/1169/175 787/1165/175 +f 790/1173/178 792/1181/178 791/1174/178 +f 793/1176/177 796/1179/177 795/1177/177 +f 796/1179/173 793/1244/173 791/1180/173 +f 794/1182/172 795/1177/172 790/1173/172 +f 795/1177/174 796/1179/174 792/1181/174 +f 803/1184/177 804/1206/177 807/1185/177 +f 800/1187/175 804/1206/175 803/1184/175 +f 797/1189/174 802/1193/174 801/1190/174 +f 805/1192/177 808/1204/177 801/1190/177 +f 807/1194/174 811/1210/174 810/1195/174 +f 805/1197/175 809/1209/175 812/1198/175 +f 810/1200/184 798/1245/184 803/1184/184 +f 809/1201/184 805/1192/184 802/1193/184 +f 812/1203/185 799/1208/185 801/1190/185 +f 811/1205/185 807/1185/185 804/1206/185 +f 797/1202/184 798/1245/184 810/1200/184 +f 799/1208/185 812/1203/185 811/1205/185 +f 809/1209/177 810/1195/177 811/1210/177 +f 774/1211/179 773/1213/179 775/1159/179 +f 774/1211/179 780/1246/179 778/1212/179 s 1 -f 3/599/9 57/600/15 2/601/15 -f 8/602/11 63/603/10 7/604/10 -f 6/605/16 61/606/7 5/607/7 -f 3/599/9 60/608/13 59/609/9 -f 2/601/15 58/610/3 1/611/3 -f 1/611/3 64/612/11 8/602/11 -f 7/604/10 62/613/16 6/605/16 -f 5/614/7 60/608/13 4/615/13 -f 80/616/19 103/617/20 79/618/20 -f 87/619/21 100/464/22 76/68/22 -f 88/620/23 111/621/21 87/619/21 -f 66/622/24 112/623/23 88/620/23 -f 85/624/25 110/625/26 86/626/26 -f 78/627/27 89/467/28 65/77/28 -f 67/67/29 109/628/25 85/624/25 -f 70/64/30 101/629/31 77/630/31 -f 79/618/20 92/463/32 68/65/32 -f 84/631/33 107/632/34 83/633/34 -f 82/634/35 93/462/36 69/62/36 -f 71/76/37 104/635/19 80/616/19 -f 77/630/31 102/636/27 78/627/27 -f 74/73/38 105/637/39 81/638/39 -f 83/633/34 96/466/40 72/74/40 -f 81/638/39 106/639/35 82/634/35 -f 86/626/26 97/465/41 73/71/41 -f 75/70/42 108/640/33 84/631/33 -f 29/641/6 132/642/43 28/643/43 -f 56/644/44 159/645/45 55/646/45 -f 16/647/13 119/648/9 15/649/9 -f 43/650/45 146/651/46 42/652/46 -f 30/653/47 133/654/6 29/655/6 -f 49/656/4 160/657/44 56/644/44 -f 9/658/7 120/659/13 16/647/13 -f 44/660/44 147/661/45 43/650/45 -f 31/662/48 134/663/47 30/653/47 -f 18/664/15 121/665/3 17/666/3 -f 45/667/4 148/668/44 44/660/44 -f 32/669/49 135/670/48 31/662/48 -f 19/671/9 122/672/15 18/664/15 -f 46/673/50 149/674/4 45/675/4 -f 25/676/2 136/677/49 32/669/49 -f 20/678/13 123/679/9 19/671/9 -f 47/680/51 150/681/50 46/673/50 -f 34/682/47 137/683/6 33/684/6 -f 21/685/7 124/686/13 20/678/13 -f 48/687/52 151/688/51 47/680/51 -f 35/689/48 138/690/47 34/682/47 -f 22/691/16 125/692/7 21/693/7 -f 41/694/5 152/695/52 48/687/52 -f 36/696/49 139/697/48 35/689/48 -f 23/698/10 126/699/16 22/691/16 -f 50/700/50 153/701/4 49/656/4 -f 10/702/16 113/703/7 9/658/7 -f 37/704/2 140/705/49 36/696/49 -f 24/706/11 127/707/10 23/698/10 -f 51/708/51 154/709/50 50/700/50 -f 11/710/10 114/711/16 10/702/16 -f 38/712/53 141/713/2 37/714/2 -f 17/666/3 128/715/11 24/706/11 -f 52/716/52 155/717/51 51/708/51 -f 12/718/11 115/719/10 11/710/10 -f 39/720/54 142/721/53 38/712/53 -f 26/722/53 129/723/2 25/676/2 -f 53/724/5 156/725/52 52/716/52 -f 13/726/3 116/727/11 12/718/11 -f 40/728/43 143/729/54 39/720/54 -f 27/730/54 130/731/53 26/722/53 -f 54/732/46 157/733/5 53/734/5 -f 14/735/15 117/736/3 13/737/3 -f 33/684/6 144/738/43 40/728/43 -f 28/643/43 131/739/54 27/730/54 -f 55/646/45 158/740/46 54/732/46 -f 15/649/9 118/741/15 14/735/15 -f 42/652/46 145/742/5 41/694/5 -f 163/743/5 176/744/9 164/745/9 -f 170/746/10 183/747/6 171/748/6 -f 167/749/7 180/750/54 168/751/54 -f 164/745/9 177/752/2 165/753/2 -f 171/748/6 184/754/51 172/755/51 -f 161/756/3 173/757/48 162/758/48 -f 168/751/54 181/759/4 169/760/4 -f 165/753/2 178/761/45 166/762/45 -f 172/755/51 174/763/3 161/756/3 -f 162/758/48 175/764/5 163/743/5 -f 169/760/4 182/765/10 170/746/10 -f 166/762/45 179/766/7 167/767/7 -f 242/768/55 236/769/56 234/770/57 -f 241/771/58 238/772/59 233/773/60 -f 244/774/61 239/775/62 236/769/56 -f 247/776/63 237/777/64 239/775/62 -f 243/778/65 233/779/60 235/780/66 -f 240/781/67 242/768/55 234/770/57 -f 237/777/64 243/778/65 235/780/66 -f 246/782/68 240/781/67 238/772/59 -f 247/783/63 244/784/61 255/785/69 -f 245/786/70 255/785/69 253/787/71 -f 241/788/58 251/789/72 249/790/73 -f 242/791/55 256/792/74 250/793/75 -f 243/794/65 253/787/71 251/789/72 -f 248/795/76 254/796/77 256/792/74 -f 242/791/55 252/797/78 244/784/61 -f 246/798/68 241/799/58 254/796/77 -f 255/800/69 261/526/79 253/801/71 -f 255/800/69 252/802/78 263/189/80 -f 250/803/75 260/804/81 252/802/78 -f 256/805/74 264/806/82 250/803/75 -f 254/807/77 264/806/82 256/805/74 -f 254/807/77 249/808/73 262/809/83 -f 249/810/73 259/811/84 257/812/85 -f 253/801/71 261/526/79 251/813/72 -f 280/814/12 287/815/7 279/816/7 -f 278/817/14 285/818/1 277/819/1 -f 276/820/86 283/821/3 275/822/3 -f 274/823/87 281/824/8 273/825/8 -f 273/825/8 288/826/12 280/814/12 -f 279/827/7 286/828/14 278/817/14 -f 277/819/1 284/829/86 276/820/86 -f 275/822/3 282/830/87 274/823/87 -f 332/259/88 326/256/89 327/257/89 -f 331/245/90 339/251/91 330/253/90 -f 333/263/92 337/260/93 336/262/92 -f 328/250/94 326/256/89 325/242/94 -f 330/253/90 332/259/88 331/245/90 -f 336/262/92 334/244/95 333/263/92 -f 340/275/93 338/247/91 337/548/93 -f 325/242/94 335/248/95 328/250/94 -f 345/831/88 347/542/89 348/832/89 -f 322/833/90 346/544/88 345/834/88 -f 322/835/90 323/249/91 321/538/90 -f 324/836/91 342/270/93 323/271/91 -f 341/837/93 344/258/92 342/541/93 -f 343/838/92 319/274/95 344/546/92 -f 317/839/94 319/537/95 320/840/95 -f 318/278/94 348/841/89 347/277/89 -f 255/785/69 244/784/61 252/797/78 -f 253/787/71 243/794/65 245/786/70 -f 263/189/80 252/802/78 260/804/81 -f 251/813/72 261/526/79 259/811/84 -f 254/796/77 241/799/58 249/842/73 -f 256/792/74 242/791/55 248/795/76 -f 250/803/75 264/806/82 258/843/96 -f 262/809/83 249/808/73 257/844/85 -f 372/845/54 383/846/7 371/847/7 -f 369/848/2 380/849/9 368/850/9 -f 376/851/51 387/852/6 375/853/6 -f 366/854/48 377/855/3 365/856/3 -f 373/857/4 384/858/54 372/845/54 -f 370/859/45 381/860/2 369/848/2 -f 365/856/3 388/861/51 376/851/51 -f 367/862/5 378/863/48 366/854/48 -f 374/864/10 385/865/4 373/857/4 -f 371/866/7 382/867/45 370/859/45 -f 368/850/9 379/868/5 367/862/5 -f 375/853/6 386/869/10 374/864/10 -f 397/870/97 404/871/16 403/872/98 -f 398/873/7 405/874/99 404/871/16 -f 413/875/13 397/876/97 414/877/100 -f 412/878/101 398/879/7 413/875/13 -f 391/880/9 414/877/100 390/881/102 -f 412/878/101 391/880/9 392/882/103 -f 408/883/104 391/880/9 390/881/102 -f 407/884/15 402/885/105 401/886/3 -f 410/887/11 402/885/105 409/888/106 -f 403/872/98 395/889/10 396/890/107 -f 395/889/10 409/888/106 396/890/107 -f 396/890/107 409/888/106 389/891/1 -f 409/888/106 402/885/105 389/892/1 -f 408/883/104 389/893/1 402/885/105 -f 389/894/1 408/883/104 390/881/102 -f 389/895/1 390/881/102 414/877/100 -f 414/877/100 397/876/97 389/896/1 -f 403/872/98 389/897/1 397/870/97 -f 389/898/1 403/872/98 396/890/107 -f 404/871/16 394/899/108 395/889/10 -f 410/887/11 394/899/108 411/900/109 -f 401/886/3 411/900/109 400/901/110 -f 393/902/8 411/900/109 394/899/108 -f 411/900/109 393/903/8 400/901/110 -f 406/904/111 401/886/3 400/901/110 -f 391/880/9 406/904/111 392/882/103 -f 393/905/8 406/904/111 400/901/110 -f 392/882/103 406/904/111 393/906/8 -f 392/882/103 393/907/8 412/878/101 -f 412/878/101 393/908/8 399/909/112 -f 405/874/99 399/910/112 393/911/8 -f 393/912/8 394/899/108 405/874/99 -f 430/316/13 445/913/9 429/313/9 -f 416/314/10 437/914/11 421/312/11 -f 417/327/7 432/915/16 419/325/16 -f 423/315/7 446/916/13 430/316/13 -f 424/318/16 440/917/7 423/315/7 -f 422/321/13 431/918/7 417/568/7 -f 425/320/10 439/919/16 424/318/16 -f 415/322/9 433/920/13 422/321/13 -f 426/324/11 441/921/10 425/320/10 -f 420/319/15 434/922/9 415/322/9 -f 427/323/3 442/923/11 426/324/11 -f 418/317/3 435/924/15 420/319/15 -f 428/328/15 443/925/3 427/326/3 -f 421/312/11 436/926/3 418/317/3 -f 429/313/9 444/927/15 428/328/15 -f 419/325/16 438/928/10 416/314/10 -f 450/929/9 461/930/5 449/931/5 -f 457/932/6 468/933/10 456/934/10 -f 454/935/54 465/936/7 453/937/7 -f 451/938/2 462/939/9 450/929/9 -f 458/940/51 469/941/6 457/932/6 -f 448/942/48 459/943/3 447/944/3 -f 455/945/4 466/946/54 454/935/54 -f 452/947/45 463/948/2 451/938/2 -f 447/944/3 470/949/51 458/940/51 -f 449/931/5 460/950/48 448/942/48 -f 456/934/10 467/951/4 455/945/4 -f 453/952/7 464/953/45 452/947/45 -f 482/954/51 493/955/6 481/956/6 -f 472/957/48 483/958/3 471/959/3 -f 479/960/4 490/961/54 478/962/54 -f 476/963/45 487/964/2 475/965/2 -f 471/959/3 494/966/51 482/954/51 -f 473/967/5 484/968/48 472/957/48 -f 480/969/10 491/970/4 479/960/4 -f 477/971/7 488/972/45 476/963/45 -f 474/973/9 485/974/5 473/967/5 -f 481/956/6 492/975/10 480/969/10 -f 478/962/54 489/976/7 477/977/7 -f 475/965/2 486/978/9 474/973/9 -f 509/979/7 502/980/12 501/981/7 -f 507/982/1 500/983/14 499/984/1 -f 505/985/3 498/986/86 497/987/3 -f 503/988/8 496/989/87 495/990/8 -f 510/991/12 495/990/8 502/980/12 -f 508/992/14 501/993/7 500/983/14 -f 506/994/86 499/984/1 498/986/86 -f 504/995/87 497/987/3 496/989/87 -f 531/996/105 538/997/15 537/998/104 -f 532/999/3 539/1000/111 538/997/15 -f 547/1001/11 531/1002/105 548/1003/106 -f 546/1004/109 532/1005/3 547/1001/11 -f 525/1006/10 548/1003/106 524/1007/107 -f 546/1004/109 525/1006/10 526/1008/108 -f 542/1009/98 525/1006/10 524/1007/107 -f 541/1010/16 536/1011/97 535/1012/7 -f 544/1013/13 536/1011/97 543/1014/100 -f 537/998/104 529/1015/9 530/1016/102 -f 529/1015/9 543/1014/100 530/1016/102 -f 530/1016/102 543/1014/100 523/1017/1 -f 543/1014/100 536/1011/97 523/1018/1 -f 542/1009/98 523/1019/1 536/1011/97 -f 523/1020/1 542/1009/98 524/1007/107 -f 523/1021/1 524/1007/107 548/1003/106 -f 548/1003/106 531/1002/105 523/1022/1 -f 537/998/104 523/1023/1 531/996/105 -f 523/1024/1 537/998/104 530/1016/102 -f 538/997/15 528/1025/103 529/1015/9 -f 544/1013/13 528/1025/103 545/1026/101 -f 535/1012/7 545/1026/101 534/1027/112 -f 527/1028/8 545/1026/101 528/1025/103 -f 545/1026/101 527/1029/8 534/1027/112 -f 540/1030/99 535/1012/7 534/1027/112 -f 525/1006/10 540/1030/99 526/1008/108 -f 527/1031/8 540/1030/99 534/1027/112 -f 526/1008/108 540/1030/99 527/1032/8 -f 526/1008/108 527/1033/8 546/1004/109 -f 546/1004/109 527/1034/8 533/1035/110 -f 539/1000/111 533/1036/110 527/1037/8 -f 527/1038/8 528/1025/103 539/1000/111 -f 564/362/11 579/1039/10 563/359/10 -f 550/360/9 571/1040/13 555/358/13 -f 551/373/3 566/1041/15 553/371/15 -f 557/361/3 580/1042/11 564/362/11 -f 558/364/15 574/1043/3 557/361/3 -f 556/367/11 565/1044/3 551/594/3 -f 559/366/9 573/1045/15 558/364/15 -f 549/368/10 567/1046/11 556/367/11 -f 560/370/13 575/1047/9 559/366/9 -f 554/365/16 568/1048/10 549/368/10 -f 561/369/7 576/1049/13 560/370/13 -f 552/363/7 569/1050/16 554/365/16 -f 562/374/16 577/1051/7 561/372/7 -f 555/358/13 570/1052/7 552/363/7 -f 563/359/10 578/1053/16 562/374/16 -f 553/371/15 572/1054/9 550/360/9 -f 589/1055/113 596/1056/53 595/1057/114 -f 591/1058/115 596/1056/53 590/1059/2 -f 606/1060/116 590/1061/2 589/1062/113 -f 604/1063/117 590/1061/2 605/1064/49 -f 583/1065/48 606/1060/116 582/1066/118 -f 604/1063/117 583/1065/48 584/1067/119 -f 599/1068/47 582/1066/118 600/1069/120 -f 593/1070/6 600/1069/120 594/1071/121 -f 602/1072/43 594/1071/121 601/1073/122 -f 595/1057/114 587/1074/54 588/1075/123 -f 588/1075/123 602/1072/43 601/1073/122 -f 588/1075/123 601/1073/122 581/1076/1 -f 601/1073/122 594/1071/121 581/1077/1 -f 600/1069/120 581/1078/1 594/1071/121 -f 581/1079/1 600/1069/120 582/1066/118 -f 581/1080/1 582/1066/118 606/1060/116 -f 606/1060/116 589/1062/113 581/1081/1 -f 595/1057/114 581/1082/1 589/1055/113 -f 581/1083/1 595/1057/114 588/1075/123 -f 587/1074/54 597/1084/124 586/1085/125 -f 603/1086/126 587/1074/54 586/1085/125 -f 593/1070/6 603/1086/126 592/1087/127 -f 585/1088/8 603/1086/126 586/1085/125 -f 603/1086/126 585/1089/8 592/1087/127 -f 598/1090/128 593/1070/6 592/1087/127 -f 584/1067/119 599/1068/47 598/1090/128 -f 585/1091/8 598/1090/128 592/1087/127 -f 584/1067/119 598/1090/128 585/1092/8 -f 584/1067/119 585/1093/8 604/1063/117 -f 604/1063/117 585/1094/8 591/1095/115 -f 597/1084/124 591/1058/115 585/1096/8 -f 585/1097/8 586/1085/125 597/1084/124 -f 622/379/49 637/1098/48 621/376/48 -f 608/377/54 629/1099/43 613/375/43 -f 609/390/2 624/1100/53 611/388/53 -f 615/378/2 638/1101/49 622/379/49 -f 616/381/53 632/1102/2 615/378/2 -f 614/384/49 623/1103/2 609/595/2 -f 617/383/54 631/1104/53 616/381/53 -f 607/385/48 625/1105/49 614/384/49 -f 618/387/43 633/1106/54 617/383/54 -f 612/382/47 626/1107/48 607/385/48 -f 619/386/6 634/1108/43 618/387/43 -f 610/380/6 627/1109/47 612/382/47 -f 620/391/47 635/1110/6 619/389/6 -f 613/375/43 628/1111/6 610/380/6 -f 621/376/48 636/1112/47 620/391/47 -f 611/388/53 630/1113/54 608/377/54 -f 647/1114/121 654/1115/47 653/1116/120 -f 649/1117/127 654/1115/47 648/1118/6 -f 664/1119/122 648/1120/6 647/1121/121 -f 662/1122/126 648/1120/6 663/1123/43 -f 641/1124/54 664/1119/122 640/1125/123 -f 662/1122/126 641/1124/54 642/1126/125 -f 657/1127/53 640/1125/123 658/1128/114 -f 651/1129/2 658/1128/114 652/1130/113 -f 660/1131/49 652/1130/113 659/1132/116 -f 653/1116/120 645/1133/48 646/1134/118 -f 646/1134/118 660/1131/49 659/1132/116 -f 646/1134/118 659/1132/116 639/1135/1 -f 659/1132/116 652/1130/113 639/1136/1 -f 658/1128/114 639/1137/1 652/1130/113 -f 639/1138/1 658/1128/114 640/1125/123 -f 639/1139/1 640/1125/123 664/1119/122 -f 664/1119/122 647/1121/121 639/1140/1 -f 653/1116/120 639/1141/1 647/1114/121 -f 639/1142/1 653/1116/120 646/1134/118 -f 645/1133/48 655/1143/128 644/1144/119 -f 661/1145/117 645/1133/48 644/1144/119 -f 651/1129/2 661/1145/117 650/1146/115 -f 643/1147/8 661/1145/117 644/1144/119 -f 661/1145/117 643/1148/8 650/1146/115 -f 656/1149/124 651/1129/2 650/1146/115 -f 642/1126/125 657/1127/53 656/1149/124 -f 643/1150/8 656/1149/124 650/1146/115 -f 642/1126/125 656/1149/124 643/1151/8 -f 642/1126/125 643/1152/8 662/1122/126 -f 662/1122/126 643/1153/8 649/1154/127 -f 655/1143/128 649/1117/127 643/1155/8 -f 643/1156/8 644/1144/119 655/1143/128 -f 680/396/43 695/1157/54 679/393/54 -f 666/394/48 687/1158/49 671/392/49 -f 667/407/6 682/1159/47 669/405/47 -f 673/395/6 696/1160/43 680/396/43 -f 674/398/47 690/1161/6 673/395/6 -f 672/401/43 681/1162/6 667/596/6 -f 675/400/48 689/1163/47 674/398/47 -f 665/402/54 683/1164/43 672/401/43 -f 676/404/49 691/1165/48 675/400/48 -f 670/399/53 684/1166/54 665/402/54 -f 677/403/2 692/1167/49 676/404/49 -f 668/397/2 685/1168/53 670/399/53 -f 678/408/53 693/1169/2 677/406/2 -f 671/392/49 686/1170/2 668/397/2 -f 679/393/54 694/1171/53 678/408/53 -f 669/405/47 688/1172/48 666/394/48 -f 706/1173/5 711/1174/129 705/1175/130 -f 707/1176/131 712/1177/46 706/1173/5 -f 721/1178/52 705/1179/130 722/1180/132 -f 707/1181/131 721/1178/52 720/1182/133 -f 699/1183/51 722/1180/132 698/1184/134 -f 700/1185/135 721/1178/52 699/1183/51 -f 715/1186/50 698/1184/134 716/1187/136 -f 709/1188/4 716/1187/136 710/1189/137 -f 717/1190/138 709/1188/4 710/1189/137 -f 711/1174/129 703/1191/45 704/1192/139 -f 704/1192/139 718/1193/44 717/1190/138 -f 704/1192/139 717/1190/138 697/1194/1 -f 717/1190/138 710/1189/137 697/1195/1 -f 716/1187/136 697/1196/1 710/1189/137 -f 697/1197/1 716/1187/136 698/1184/134 -f 697/1198/1 698/1184/134 722/1180/132 -f 722/1180/132 705/1179/130 697/1199/1 -f 711/1174/129 697/1200/1 705/1175/130 -f 697/1201/1 711/1174/129 704/1192/139 -f 703/1191/45 713/1202/140 702/1203/141 -f 719/1204/142 703/1191/45 702/1203/141 -f 709/1188/4 719/1204/142 708/1205/143 -f 701/1206/8 719/1204/142 702/1203/141 -f 719/1204/142 701/1207/8 708/1205/143 -f 714/1208/144 709/1188/4 708/1205/143 -f 699/1183/51 714/1208/144 700/1185/135 -f 701/1209/8 714/1208/144 708/1205/143 -f 700/1185/135 714/1208/144 701/1210/8 -f 700/1185/135 701/1211/8 720/1182/133 -f 720/1182/133 701/1212/8 707/1181/131 -f 713/1202/140 707/1176/131 701/1213/8 -f 701/1214/8 702/1203/141 713/1202/140 -f 738/413/52 753/1215/51 737/410/51 -f 724/411/45 745/1216/44 729/409/44 -f 725/424/5 740/1217/46 727/422/46 -f 731/412/5 754/1218/52 738/413/52 -f 732/415/46 748/1219/5 731/412/5 -f 730/418/52 739/1220/5 725/597/5 -f 733/417/45 747/1221/46 732/415/46 -f 723/419/51 741/1222/52 730/418/52 -f 734/421/44 749/1223/45 733/417/45 -f 728/416/50 742/1224/51 723/419/51 -f 735/420/4 750/1225/44 734/421/44 -f 726/414/4 743/1226/50 728/416/50 -f 736/425/50 751/1227/4 735/423/4 -f 729/409/44 744/1228/4 726/414/4 -f 737/410/51 752/1229/50 736/425/50 -f 727/422/46 746/1230/45 724/411/45 -f 764/1231/4 769/1232/136 763/1233/137 -f 765/1234/143 770/1235/50 764/1231/4 -f 779/1236/44 763/1237/137 780/1238/138 -f 765/1239/143 779/1236/44 778/1240/142 -f 757/1241/45 780/1238/138 756/1242/139 -f 758/1243/141 779/1236/44 757/1241/45 -f 773/1244/46 756/1242/139 774/1245/129 -f 767/1246/5 774/1245/129 768/1247/130 -f 775/1248/132 767/1246/5 768/1247/130 -f 769/1232/136 761/1249/51 762/1250/134 -f 762/1250/134 776/1251/52 775/1248/132 -f 762/1250/134 775/1248/132 755/1252/1 -f 775/1248/132 768/1247/130 755/1253/1 -f 774/1245/129 755/1254/1 768/1247/130 -f 755/1255/1 774/1245/129 756/1242/139 -f 755/1256/1 756/1242/139 780/1238/138 -f 780/1238/138 763/1237/137 755/1257/1 -f 769/1232/136 755/1258/1 763/1233/137 -f 755/1259/1 769/1232/136 762/1250/134 -f 761/1249/51 771/1260/144 760/1261/135 -f 777/1262/133 761/1249/51 760/1261/135 -f 767/1246/5 777/1262/133 766/1263/131 -f 759/1264/8 777/1262/133 760/1261/135 -f 777/1262/133 759/1265/8 766/1263/131 -f 772/1266/140 767/1246/5 766/1263/131 -f 757/1241/45 772/1266/140 758/1243/141 -f 759/1267/8 772/1266/140 766/1263/131 -f 758/1243/141 772/1266/140 759/1268/8 -f 758/1243/141 759/1269/8 778/1240/142 -f 778/1240/142 759/1270/8 765/1239/143 -f 771/1260/144 765/1234/143 759/1271/8 -f 759/1272/8 760/1261/135 771/1260/144 -f 796/430/44 811/1273/45 795/427/45 -f 782/428/51 803/1274/52 787/426/52 -f 783/441/4 798/1275/50 785/439/50 -f 789/429/4 812/1276/44 796/430/44 -f 790/432/50 806/1277/4 789/429/4 -f 788/435/44 797/1278/4 783/598/4 -f 791/434/51 805/1279/50 790/432/50 -f 781/436/45 799/1280/44 788/435/44 -f 792/438/52 807/1281/51 791/434/51 -f 786/433/46 800/1282/45 781/436/45 -f 793/437/5 808/1283/52 792/438/52 -f 784/431/5 801/1284/46 786/433/46 -f 794/442/46 809/1285/5 793/440/5 -f 787/426/52 802/1286/5 784/431/5 -f 795/427/45 810/1287/46 794/442/46 -f 785/439/50 804/1288/51 782/428/51 -f 3/599/9 59/609/9 57/600/15 -f 8/602/11 64/612/11 63/603/10 -f 6/605/16 62/613/16 61/606/7 -f 3/599/9 4/615/13 60/608/13 -f 2/601/15 57/600/15 58/610/3 -f 1/611/3 58/610/3 64/612/11 -f 7/604/10 63/603/10 62/613/16 -f 5/614/7 61/1289/7 60/608/13 -f 80/616/19 104/635/19 103/617/20 -f 87/619/21 111/621/21 100/464/22 -f 88/620/23 112/623/23 111/621/21 -f 66/622/24 90/1290/24 112/623/23 -f 85/624/25 109/628/25 110/625/26 -f 78/627/27 102/636/27 89/467/28 -f 67/67/29 91/66/29 109/628/25 -f 70/64/30 94/63/30 101/629/31 -f 79/618/20 103/617/20 92/463/32 -f 84/631/33 108/640/33 107/632/34 -f 82/634/35 106/639/35 93/462/36 -f 71/76/37 95/75/37 104/635/19 -f 77/630/31 101/629/31 102/636/27 -f 74/73/38 98/72/38 105/637/39 -f 83/633/34 107/632/34 96/466/40 -f 81/638/39 105/637/39 106/639/35 -f 86/626/26 110/625/26 97/465/41 -f 75/70/42 99/69/42 108/640/33 -f 29/641/6 133/1291/6 132/642/43 -f 56/644/44 160/657/44 159/645/45 -f 16/647/13 120/659/13 119/648/9 -f 43/650/45 147/661/45 146/651/46 -f 30/653/47 134/663/47 133/654/6 -f 49/656/4 153/701/4 160/657/44 -f 9/658/7 113/703/7 120/659/13 -f 44/660/44 148/668/44 147/661/45 -f 31/662/48 135/670/48 134/663/47 -f 18/664/15 122/672/15 121/665/3 -f 45/667/4 149/1292/4 148/668/44 -f 32/669/49 136/677/49 135/670/48 -f 19/671/9 123/679/9 122/672/15 -f 46/673/50 150/681/50 149/674/4 -f 25/676/2 129/723/2 136/677/49 -f 20/678/13 124/686/13 123/679/9 -f 47/680/51 151/688/51 150/681/50 -f 34/682/47 138/690/47 137/683/6 -f 21/685/7 125/1293/7 124/686/13 -f 48/687/52 152/695/52 151/688/51 -f 35/689/48 139/697/48 138/690/47 -f 22/691/16 126/699/16 125/692/7 -f 41/694/5 145/742/5 152/695/52 -f 36/696/49 140/705/49 139/697/48 -f 23/698/10 127/707/10 126/699/16 -f 50/700/50 154/709/50 153/701/4 -f 10/702/16 114/711/16 113/703/7 -f 37/704/2 141/1294/2 140/705/49 -f 24/706/11 128/715/11 127/707/10 -f 51/708/51 155/717/51 154/709/50 -f 11/710/10 115/719/10 114/711/16 -f 38/712/53 142/721/53 141/713/2 -f 17/666/3 121/665/3 128/715/11 -f 52/716/52 156/725/52 155/717/51 -f 12/718/11 116/727/11 115/719/10 -f 39/720/54 143/729/54 142/721/53 -f 26/722/53 130/731/53 129/723/2 -f 53/724/5 157/1295/5 156/725/52 -f 13/726/3 117/1296/3 116/727/11 -f 40/728/43 144/738/43 143/729/54 -f 27/730/54 131/739/54 130/731/53 -f 54/732/46 158/740/46 157/733/5 -f 14/735/15 118/741/15 117/736/3 -f 33/684/6 137/683/6 144/738/43 -f 28/643/43 132/642/43 131/739/54 -f 55/646/45 159/645/45 158/740/46 -f 15/649/9 119/648/9 118/741/15 -f 42/652/46 146/651/46 145/742/5 -f 163/743/5 175/764/5 176/744/9 -f 170/746/10 182/765/10 183/747/6 -f 167/749/7 179/1297/7 180/750/54 -f 164/745/9 176/744/9 177/752/2 -f 171/748/6 183/747/6 184/754/51 -f 161/756/3 174/763/3 173/757/48 -f 168/751/54 180/750/54 181/759/4 -f 165/753/2 177/752/2 178/761/45 -f 172/755/51 184/754/51 174/763/3 -f 162/758/48 173/757/48 175/764/5 -f 169/760/4 181/759/4 182/765/10 -f 166/762/45 178/761/45 179/766/7 -f 242/768/55 244/774/61 236/769/56 -f 241/771/58 246/782/68 238/772/59 -f 244/774/61 247/776/63 239/775/62 -f 247/776/63 245/1298/70 237/777/64 -f 243/778/65 241/1299/58 233/779/60 -f 240/781/67 248/1300/76 242/768/55 -f 237/777/64 245/1298/70 243/778/65 -f 246/782/68 248/1300/76 240/781/67 -f 245/786/70 247/783/63 255/785/69 -f 241/788/58 243/794/65 251/789/72 -f 248/795/76 246/798/68 254/796/77 -f 242/791/55 250/793/75 252/797/78 -f 255/800/69 263/189/80 261/526/79 -f 250/803/75 258/843/96 260/804/81 -f 254/807/77 262/809/83 264/806/82 -f 249/810/73 251/813/72 259/811/84 -f 280/814/12 288/826/12 287/815/7 -f 278/817/14 286/828/14 285/818/1 -f 276/820/86 284/829/86 283/821/3 -f 274/823/87 282/830/87 281/824/8 -f 273/825/8 281/824/8 288/826/12 -f 279/827/7 287/1301/7 286/828/14 -f 277/819/1 285/818/1 284/829/86 -f 275/822/3 283/821/3 282/830/87 -f 332/259/88 329/254/88 326/256/89 -f 331/245/90 338/247/91 339/251/91 -f 333/263/92 340/265/93 337/260/93 -f 328/250/94 327/257/89 326/256/89 -f 330/253/90 329/254/88 332/259/88 -f 336/262/92 335/248/95 334/244/95 -f 340/275/93 339/251/91 338/247/91 -f 325/242/94 334/244/95 335/248/95 -f 345/831/88 346/261/88 347/542/89 -f 322/833/90 321/268/90 346/544/88 -f 322/835/90 324/1302/91 323/249/91 -f 324/836/91 341/1303/93 342/270/93 -f 341/837/93 343/1304/92 344/258/92 -f 343/838/92 320/1305/95 319/274/95 -f 317/839/94 318/246/94 319/537/95 -f 318/278/94 317/1306/94 348/841/89 -f 372/845/54 384/858/54 383/846/7 -f 369/848/2 381/860/2 380/849/9 -f 376/851/51 388/861/51 387/852/6 -f 366/854/48 378/863/48 377/855/3 -f 373/857/4 385/865/4 384/858/54 -f 370/859/45 382/867/45 381/860/2 -f 365/856/3 377/855/3 388/861/51 -f 367/862/5 379/868/5 378/863/48 -f 374/864/10 386/869/10 385/865/4 -f 371/866/7 383/1307/7 382/867/45 -f 368/850/9 380/849/9 379/868/5 -f 375/853/6 387/852/6 386/869/10 -f 397/870/97 398/873/7 404/871/16 -f 398/873/7 399/910/112 405/874/99 -f 413/875/13 398/879/7 397/876/97 -f 412/878/101 399/909/112 398/879/7 -f 391/880/9 413/875/13 414/877/100 -f 412/878/101 413/875/13 391/880/9 -f 408/883/104 407/884/15 391/880/9 -f 407/884/15 408/883/104 402/885/105 -f 410/887/11 401/886/3 402/885/105 -f 403/872/98 404/871/16 395/889/10 -f 395/889/10 410/887/11 409/888/106 -f 404/871/16 405/874/99 394/899/108 -f 410/887/11 395/889/10 394/899/108 -f 401/886/3 410/887/11 411/900/109 -f 406/904/111 407/884/15 401/886/3 -f 391/880/9 407/884/15 406/904/111 -f 430/316/13 446/916/13 445/913/9 -f 416/314/10 438/928/10 437/914/11 -f 417/327/7 431/1308/7 432/915/16 -f 423/315/7 440/917/7 446/916/13 -f 424/318/16 439/919/16 440/917/7 -f 422/321/13 433/920/13 431/918/7 -f 425/320/10 441/921/10 439/919/16 -f 415/322/9 434/922/9 433/920/13 -f 426/324/11 442/923/11 441/921/10 -f 420/319/15 435/924/15 434/922/9 -f 427/323/3 443/1309/3 442/923/11 -f 418/317/3 436/926/3 435/924/15 -f 428/328/15 444/927/15 443/925/3 -f 421/312/11 437/914/11 436/926/3 -f 429/313/9 445/913/9 444/927/15 -f 419/325/16 432/915/16 438/928/10 -f 450/929/9 462/939/9 461/930/5 -f 457/932/6 469/941/6 468/933/10 -f 454/935/54 466/946/54 465/936/7 -f 451/938/2 463/948/2 462/939/9 -f 458/940/51 470/949/51 469/941/6 -f 448/942/48 460/950/48 459/943/3 -f 455/945/4 467/951/4 466/946/54 -f 452/947/45 464/953/45 463/948/2 -f 447/944/3 459/943/3 470/949/51 -f 449/931/5 461/930/5 460/950/48 -f 456/934/10 468/933/10 467/951/4 -f 453/952/7 465/1310/7 464/953/45 -f 482/954/51 494/966/51 493/955/6 -f 472/957/48 484/968/48 483/958/3 -f 479/960/4 491/970/4 490/961/54 -f 476/963/45 488/972/45 487/964/2 -f 471/959/3 483/958/3 494/966/51 -f 473/967/5 485/974/5 484/968/48 -f 480/969/10 492/975/10 491/970/4 -f 477/971/7 489/1311/7 488/972/45 -f 474/973/9 486/978/9 485/974/5 -f 481/956/6 493/955/6 492/975/10 -f 478/962/54 490/961/54 489/976/7 -f 475/965/2 487/964/2 486/978/9 -f 509/979/7 510/991/12 502/980/12 -f 507/982/1 508/992/14 500/983/14 -f 505/985/3 506/994/86 498/986/86 -f 503/988/8 504/995/87 496/989/87 -f 510/991/12 503/988/8 495/990/8 -f 508/992/14 509/1312/7 501/993/7 -f 506/994/86 507/982/1 499/984/1 -f 504/995/87 505/985/3 497/987/3 -f 531/996/105 532/999/3 538/997/15 -f 532/999/3 533/1036/110 539/1000/111 -f 547/1001/11 532/1005/3 531/1002/105 -f 546/1004/109 533/1035/110 532/1005/3 -f 525/1006/10 547/1001/11 548/1003/106 -f 546/1004/109 547/1001/11 525/1006/10 -f 542/1009/98 541/1010/16 525/1006/10 -f 541/1010/16 542/1009/98 536/1011/97 -f 544/1013/13 535/1012/7 536/1011/97 -f 537/998/104 538/997/15 529/1015/9 -f 529/1015/9 544/1013/13 543/1014/100 -f 538/997/15 539/1000/111 528/1025/103 -f 544/1013/13 529/1015/9 528/1025/103 -f 535/1012/7 544/1013/13 545/1026/101 -f 540/1030/99 541/1010/16 535/1012/7 -f 525/1006/10 541/1010/16 540/1030/99 -f 564/362/11 580/1042/11 579/1039/10 -f 550/360/9 572/1054/9 571/1040/13 -f 551/373/3 565/1313/3 566/1041/15 -f 557/361/3 574/1043/3 580/1042/11 -f 558/364/15 573/1045/15 574/1043/3 -f 556/367/11 567/1046/11 565/1044/3 -f 559/366/9 575/1047/9 573/1045/15 -f 549/368/10 568/1048/10 567/1046/11 -f 560/370/13 576/1049/13 575/1047/9 -f 554/365/16 569/1050/16 568/1048/10 -f 561/369/7 577/1314/7 576/1049/13 -f 552/363/7 570/1052/7 569/1050/16 -f 562/374/16 578/1053/16 577/1051/7 -f 555/358/13 571/1040/13 570/1052/7 -f 563/359/10 579/1039/10 578/1053/16 -f 553/371/15 566/1041/15 572/1054/9 -f 589/1055/113 590/1059/2 596/1056/53 -f 591/1058/115 597/1084/124 596/1056/53 -f 606/1060/116 605/1064/49 590/1061/2 -f 604/1063/117 591/1095/115 590/1061/2 -f 583/1065/48 605/1064/49 606/1060/116 -f 604/1063/117 605/1064/49 583/1065/48 -f 599/1068/47 583/1065/48 582/1066/118 -f 593/1070/6 599/1068/47 600/1069/120 -f 602/1072/43 593/1070/6 594/1071/121 -f 595/1057/114 596/1056/53 587/1074/54 -f 588/1075/123 587/1074/54 602/1072/43 -f 587/1074/54 596/1056/53 597/1084/124 -f 603/1086/126 602/1072/43 587/1074/54 -f 593/1070/6 602/1072/43 603/1086/126 -f 598/1090/128 599/1068/47 593/1070/6 -f 584/1067/119 583/1065/48 599/1068/47 -f 622/379/49 638/1101/49 637/1098/48 -f 608/377/54 630/1113/54 629/1099/43 -f 609/390/2 623/1315/2 624/1100/53 -f 615/378/2 632/1102/2 638/1101/49 -f 616/381/53 631/1104/53 632/1102/2 -f 614/384/49 625/1105/49 623/1103/2 -f 617/383/54 633/1106/54 631/1104/53 -f 607/385/48 626/1107/48 625/1105/49 -f 618/387/43 634/1108/43 633/1106/54 -f 612/382/47 627/1109/47 626/1107/48 -f 619/386/6 635/1316/6 634/1108/43 -f 610/380/6 628/1111/6 627/1109/47 -f 620/391/47 636/1112/47 635/1110/6 -f 613/375/43 629/1099/43 628/1111/6 -f 621/376/48 637/1098/48 636/1112/47 -f 611/388/53 624/1100/53 630/1113/54 -f 647/1114/121 648/1118/6 654/1115/47 -f 649/1117/127 655/1143/128 654/1115/47 -f 664/1119/122 663/1123/43 648/1120/6 -f 662/1122/126 649/1154/127 648/1120/6 -f 641/1124/54 663/1123/43 664/1119/122 -f 662/1122/126 663/1123/43 641/1124/54 -f 657/1127/53 641/1124/54 640/1125/123 -f 651/1129/2 657/1127/53 658/1128/114 -f 660/1131/49 651/1129/2 652/1130/113 -f 653/1116/120 654/1115/47 645/1133/48 -f 646/1134/118 645/1133/48 660/1131/49 -f 645/1133/48 654/1115/47 655/1143/128 -f 661/1145/117 660/1131/49 645/1133/48 -f 651/1129/2 660/1131/49 661/1145/117 -f 656/1149/124 657/1127/53 651/1129/2 -f 642/1126/125 641/1124/54 657/1127/53 -f 680/396/43 696/1160/43 695/1157/54 -f 666/394/48 688/1172/48 687/1158/49 -f 667/407/6 681/1317/6 682/1159/47 -f 673/395/6 690/1161/6 696/1160/43 -f 674/398/47 689/1163/47 690/1161/6 -f 672/401/43 683/1164/43 681/1162/6 -f 675/400/48 691/1165/48 689/1163/47 -f 665/402/54 684/1166/54 683/1164/43 -f 676/404/49 692/1167/49 691/1165/48 -f 670/399/53 685/1168/53 684/1166/54 -f 677/403/2 693/1318/2 692/1167/49 -f 668/397/2 686/1170/2 685/1168/53 -f 678/408/53 694/1171/53 693/1169/2 -f 671/392/49 687/1158/49 686/1170/2 -f 679/393/54 695/1157/54 694/1171/53 -f 669/405/47 682/1159/47 688/1172/48 -f 706/1173/5 712/1177/46 711/1174/129 -f 707/1176/131 713/1202/140 712/1177/46 -f 721/1178/52 706/1319/5 705/1179/130 -f 707/1181/131 706/1319/5 721/1178/52 -f 699/1183/51 721/1178/52 722/1180/132 -f 700/1185/135 720/1182/133 721/1178/52 -f 715/1186/50 699/1183/51 698/1184/134 -f 709/1188/4 715/1186/50 716/1187/136 -f 717/1190/138 718/1193/44 709/1188/4 -f 711/1174/129 712/1177/46 703/1191/45 -f 704/1192/139 703/1191/45 718/1193/44 -f 703/1191/45 712/1177/46 713/1202/140 -f 719/1204/142 718/1193/44 703/1191/45 -f 709/1188/4 718/1193/44 719/1204/142 -f 714/1208/144 715/1186/50 709/1188/4 -f 699/1183/51 715/1186/50 714/1208/144 -f 738/413/52 754/1218/52 753/1215/51 -f 724/411/45 746/1230/45 745/1216/44 -f 725/424/5 739/1320/5 740/1217/46 -f 731/412/5 748/1219/5 754/1218/52 -f 732/415/46 747/1221/46 748/1219/5 -f 730/418/52 741/1222/52 739/1220/5 -f 733/417/45 749/1223/45 747/1221/46 -f 723/419/51 742/1224/51 741/1222/52 -f 734/421/44 750/1225/44 749/1223/45 -f 728/416/50 743/1226/50 742/1224/51 -f 735/420/4 751/1321/4 750/1225/44 -f 726/414/4 744/1228/4 743/1226/50 -f 736/425/50 752/1229/50 751/1227/4 -f 729/409/44 745/1216/44 744/1228/4 -f 737/410/51 753/1215/51 752/1229/50 -f 727/422/46 740/1217/46 746/1230/45 -f 764/1231/4 770/1235/50 769/1232/136 -f 765/1234/143 771/1260/144 770/1235/50 -f 779/1236/44 764/1322/4 763/1237/137 -f 765/1239/143 764/1322/4 779/1236/44 -f 757/1241/45 779/1236/44 780/1238/138 -f 758/1243/141 778/1240/142 779/1236/44 -f 773/1244/46 757/1241/45 756/1242/139 -f 767/1246/5 773/1244/46 774/1245/129 -f 775/1248/132 776/1251/52 767/1246/5 -f 769/1232/136 770/1235/50 761/1249/51 -f 762/1250/134 761/1249/51 776/1251/52 -f 761/1249/51 770/1235/50 771/1260/144 -f 777/1262/133 776/1251/52 761/1249/51 -f 767/1246/5 776/1251/52 777/1262/133 -f 772/1266/140 773/1244/46 767/1246/5 -f 757/1241/45 773/1244/46 772/1266/140 -f 796/430/44 812/1276/44 811/1273/45 -f 782/428/51 804/1288/51 803/1274/52 -f 783/441/4 797/1323/4 798/1275/50 -f 789/429/4 806/1277/4 812/1276/44 -f 790/432/50 805/1279/50 806/1277/4 -f 788/435/44 799/1280/44 797/1278/4 -f 791/434/51 807/1281/51 805/1279/50 -f 781/436/45 800/1282/45 799/1280/44 -f 792/438/52 808/1283/52 807/1281/51 -f 786/433/46 801/1284/46 800/1282/45 -f 793/437/5 809/1324/5 808/1283/52 -f 784/431/5 802/1286/5 801/1284/46 -f 794/442/46 810/1287/46 809/1285/5 -f 787/426/52 803/1274/52 802/1286/5 -f 795/427/45 811/1273/45 810/1287/46 -f 785/439/50 798/1275/50 804/1288/51 +f 679/1247/186 692/1248/174 680/1249/174 +f 686/1250/175 699/1251/187 687/1252/187 +f 683/1253/178 696/1254/188 684/1255/188 +f 680/1249/174 693/1256/189 681/1257/189 +f 687/1252/187 700/1258/190 688/1259/190 +f 677/1260/177 689/1261/191 678/1262/191 +f 684/1255/188 697/1263/192 685/1264/192 +f 681/1257/189 694/1265/193 682/1266/193 +f 688/1259/190 690/1267/177 677/1260/177 +f 678/1262/191 691/1268/186 679/1247/186 +f 685/1264/192 698/1269/175 686/1250/175 +f 682/1266/193 695/1270/178 683/1271/178 +f 758/1272/194 752/1273/195 750/1274/196 +f 757/1275/197 754/1276/198 749/1277/199 +f 760/1278/200 755/1279/201 752/1273/195 +f 763/1280/202 753/1281/203 755/1279/201 +f 759/1282/204 749/1283/199 751/1284/205 +f 756/1285/206 758/1272/194 750/1274/196 +f 753/1281/203 759/1282/204 751/1284/205 +f 762/1286/207 756/1285/206 754/1276/198 +f 763/1287/202 760/1288/200 771/1289/208 +f 761/1290/209 771/1289/208 769/1291/210 +f 757/1292/197 767/1293/211 765/1294/212 +f 758/1295/194 772/1296/213 766/1297/214 +f 759/1298/204 769/1291/210 767/1293/211 +f 764/1299/215 770/1300/216 772/1296/213 +f 758/1295/194 768/1301/217 760/1288/200 +f 762/1302/207 757/1303/197 770/1300/216 +f 771/1304/208 777/1242/218 769/1305/210 +f 771/1304/208 768/1306/217 779/1160/219 +f 766/1307/214 776/1308/220 768/1306/217 +f 772/1309/213 780/1310/221 766/1307/214 +f 770/1311/216 780/1310/221 772/1309/213 +f 770/1311/216 765/1312/212 778/1313/222 +f 765/1314/212 775/1315/223 773/1316/224 +f 769/1305/210 777/1242/218 767/1317/211 +f 771/1289/208 760/1288/200 768/1301/217 +f 769/1291/210 759/1298/204 761/1290/209 +f 779/1160/219 768/1306/217 776/1308/220 +f 767/1317/211 777/1242/218 775/1315/223 +f 770/1300/216 757/1303/197 765/1318/212 +f 772/1296/213 758/1295/194 764/1299/215 +f 766/1307/214 780/1310/221 774/1319/225 +f 778/1313/222 765/1312/212 773/1320/224 +f 679/1247/186 691/1268/186 692/1248/174 +f 686/1250/175 698/1269/175 699/1251/187 +f 683/1253/178 695/1321/178 696/1254/188 +f 680/1249/174 692/1248/174 693/1256/189 +f 687/1252/187 699/1251/187 700/1258/190 +f 677/1260/177 690/1267/177 689/1261/191 +f 684/1255/188 696/1254/188 697/1263/192 +f 681/1257/189 693/1256/189 694/1265/193 +f 688/1259/190 700/1258/190 690/1267/177 +f 678/1262/191 689/1261/191 691/1268/186 +f 685/1264/192 697/1263/192 698/1269/175 +f 682/1266/193 694/1265/193 695/1270/178 +f 758/1272/194 760/1278/200 752/1273/195 +f 757/1275/197 762/1286/207 754/1276/198 +f 760/1278/200 763/1280/202 755/1279/201 +f 763/1280/202 761/1322/209 753/1281/203 +f 759/1282/204 757/1323/197 749/1283/199 +f 756/1285/206 764/1324/215 758/1272/194 +f 753/1281/203 761/1322/209 759/1282/204 +f 762/1286/207 764/1324/215 756/1285/206 +f 761/1290/209 763/1287/202 771/1289/208 +f 757/1292/197 759/1298/204 767/1293/211 +f 764/1299/215 762/1302/207 770/1300/216 +f 758/1295/194 766/1297/214 768/1301/217 +f 771/1304/208 779/1160/219 777/1242/218 +f 766/1307/214 774/1319/225 776/1308/220 +f 770/1311/216 778/1313/222 780/1310/221 +f 765/1314/212 767/1317/211 775/1315/223 diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index 27d07dcc9..2943195e5 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -220,6 +220,8 @@ "weapon.switchmode1": {"category": "player", "sounds": [{"name": "weapon/switchmode1", "stream": false}]}, "weapon.switchmode2": {"category": "player", "sounds": [{"name": "weapon/switchmode2", "stream": false}]}, + "weapon.fire.blackPowder": {"category": "player", "sounds": [{"name": "weapon/fire/blackPowder", "stream": false}]}, + "weapon.reload.boltClose": {"category": "player", "sounds": ["weapon/reload/boltClose"]}, "weapon.reload.boltOpen": {"category": "player", "sounds": ["weapon/reload/boltOpen"]}, "weapon.reload.closeClick": {"category": "player", "sounds": ["weapon/reload/closeClick"]}, diff --git a/src/main/resources/assets/hbm/sounds/weapon/fire/blackPowder.ogg b/src/main/resources/assets/hbm/sounds/weapon/fire/blackPowder.ogg new file mode 100644 index 0000000000000000000000000000000000000000..ea73cad217ba18ad4a574343e74c0222afce63bb GIT binary patch literal 17929 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.stone.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.stone.png new file mode 100644 index 0000000000000000000000000000000000000000..cf4a12ddf805114e81dd314930148401f5c86ce0 GIT binary patch literal 276 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf~7?jrnO0vlEj{@x-sS<%b>1y238)nR}I^ zE_PYop6~7#Ez_Mio(WqTez+$ed!2DZ?(JORVz&FfpH|G4I%mne;r;LH!vD@a(Egz6 zcy8vh%!=#p)oSm{GZ?zrdLFgtb8o!0Ewo~mTJVEJ35FTZBYnTL2sCM4kldrg&2Y}r zxA^CCrs(X*>!Ht;oV;GzAKWe^*t&LWN5?xo;VB~Lc21A<>XcZ#Gc~~H)xLj6@?Udy X-Y=ir>lzjV^cI7stDnm{r-UW|HfnCj literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..24e72420f6d979312acb5a0fa5cbd33239f739ed GIT binary patch literal 274 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf4JHQw!VVWUWgmF5}U9gK5?@+Ke3%n)GRe!?V~C1Z)~mZR_9=e+)JWBp;h zh?B;Cqvcah-JNiJ5CbKU<`?`5c| WOG#Sjyu$+MDF#nhKbLh*2~7Z0`EbGj literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_shot.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_shot.png new file mode 100644 index 0000000000000000000000000000000000000000..b783a6da0447848f53d234f8673b083ca306ca35 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfugDU$e!gJU*6&7+ uo)7olzmn7=F!5kYfKQa3Qrg@6j|_J1nND|IU7CPSXYh3Ob6Mw<&;$TW0AU&c literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/pepperbox.png b/src/main/resources/assets/hbm/textures/models/weapons/pepperbox.png index 26c6e8c9372f3461edae7665ad9405a3ef15e5ac..2334c4e2c5c9b02fc42b09198f2ecac10a995566 100644 GIT binary patch delta 2706 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 From 0f277657db6a7be14d4e0748b902b156383bfb9b Mon Sep 17 00:00:00 2001 From: Boblet Date: Wed, 25 Sep 2024 16:45:42 +0200 Subject: [PATCH 18/63] bullet damage, armor pen, durability stats --- changelog | 3 +- .../projectile/EntityBulletBaseMK4.java | 57 +++++++++++++------ .../java/com/hbm/inventory/material/Mats.java | 2 +- .../recipes/loader/SerializableRecipe.java | 4 ++ .../hbm/items/weapon/sedna/BulletConfig.java | 42 +++++++++++++- .../com/hbm/items/weapon/sedna/Receiver.java | 2 +- .../hbm/items/weapon/sedna/factory/Lego.java | 19 ++++++- .../sedna/factory/XFactoryBlackPowder.java | 2 +- src/main/java/com/hbm/main/MainRegistry.java | 1 + src/main/java/com/hbm/util/CrashHelper.java | 33 +++++++++++ .../java/com/hbm/util/EntityDamageUtil.java | 2 +- src/main/resources/assets/hbm/sounds.json | 4 -- 12 files changed, 141 insertions(+), 30 deletions(-) create mode 100644 src/main/java/com/hbm/util/CrashHelper.java diff --git a/changelog b/changelog index 9786bc247..dd831e3fd 100644 --- a/changelog +++ b/changelog @@ -6,4 +6,5 @@ * Tom's explosion no longer causes any block updates on the millions of blocks it deletes which hopefully fixes a majority of the lag caused by the crater ## Fixed -* The conveyor grabber should no longer skip over items when used in long lines \ No newline at end of file +* The conveyor grabber should no longer skip over items when used in long lines +* Fixed a potential crash regarding crucibles \ No newline at end of file diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index d9760ba2f..0e23f25c4 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -1,15 +1,13 @@ package com.hbm.entity.projectile; import com.hbm.items.weapon.sedna.BulletConfig; -import com.hbm.lib.ModDamageSource; -import com.hbm.packet.PacketDispatcher; -import com.hbm.packet.toclient.AuxParticlePacketNT; import com.hbm.util.BobMathUtil; +import com.hbm.util.EntityDamageUtil; import com.hbm.util.TrackerUtil; -import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; +import net.minecraft.entity.Entity; import net.minecraft.entity.EntityLivingBase; -import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.DamageSource; import net.minecraft.util.MathHelper; import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; @@ -20,8 +18,10 @@ import net.minecraftforge.common.util.ForgeDirection; public class EntityBulletBaseMK4 extends EntityThrowableInterp { public BulletConfig config; + //used for rendering tracers public double velocity; public double prevVelocity; + public float damage; public int ricochets = 0; public EntityBulletBaseMK4(World world) { @@ -30,12 +30,14 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { this.setSize(0.5F, 0.5F); } - public EntityBulletBaseMK4(EntityLivingBase entity, BulletConfig config, float baseDamage, float spreadMod, double sideOffset, double heightOffset, double frontOffset) { + public EntityBulletBaseMK4(EntityLivingBase entity, BulletConfig config, float baseDamage, float gunSpread, double sideOffset, double heightOffset, double frontOffset) { this(entity.worldObj); this.thrower = entity; this.config = config; + this.damage = baseDamage * this.config.damageMult; + this.setLocationAndAngles(thrower.posX, thrower.posY + thrower.getEyeHeight(), thrower.posZ, thrower.rotationYaw, thrower.rotationPitch); Vec3 offset = Vec3.createVectorHelper(sideOffset, heightOffset, frontOffset); @@ -52,7 +54,7 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { this.motionZ = MathHelper.cos(this.rotationYaw / 180.0F * (float) Math.PI) * MathHelper.cos(this.rotationPitch / 180.0F * (float) Math.PI); this.motionY = (-MathHelper.sin(this.rotationPitch / 180.0F * (float) Math.PI)); - this.setThrowableHeading(this.motionX, this.motionY, this.motionZ, 1.0F, this.config.spread * spreadMod); + this.setThrowableHeading(this.motionX, this.motionY, this.motionZ, 1.0F, this.config.spread + gunSpread); } @Override @@ -155,18 +157,32 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { } if(mop.typeOfHit == mop.typeOfHit.ENTITY) { - if(!mop.entityHit.isEntityAlive()) return; + Entity entity = mop.entityHit; + if(!entity.isEntityAlive()) return; - if(mop.entityHit.isEntityAlive()) { - mop.entityHit.attackEntityFrom(ModDamageSource.turbofan, 1_000F); - - NBTTagCompound vdat = new NBTTagCompound(); - vdat.setString("type", "giblets"); - vdat.setInteger("ent", mop.entityHit.getEntityId()); - vdat.setInteger("cDiv", 2); - PacketDispatcher.wrapper.sendToAllAround( - new AuxParticlePacketNT(vdat, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ), - new TargetPoint(this.dimension, mop.entityHit.posX, mop.entityHit.posY + mop.entityHit.height * 0.5, mop.entityHit.posZ, 150)); + DamageSource damageCalc = this.config.getDamage(this, getThrower(), false); + + if(!(entity instanceof EntityLivingBase)) { + entity.attackEntityFrom(damageCalc, this.damage); + return; + } + + EntityLivingBase living = (EntityLivingBase) entity; + float prevHealth = living.getHealth(); + + if(this.config.armorPiercingPercent == 0) { + EntityDamageUtil.attackEntityFromIgnoreIFrame(entity, damageCalc, this.damage); + } else { + DamageSource damagePiercing = this.config.getDamage(this, getThrower(), true); + EntityDamageUtil.attackArmorPiercing(living, damageCalc, damagePiercing, this.damage, this.config.armorPiercingPercent); + } + + float newHealth = living.getHealth(); + + if(this.config.damageFalloffByPen) this.damage -= Math.max(prevHealth - newHealth, 0); + if(!this.doesPenetrate() || this.damage < 0) { + this.setPosition(mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord); + this.setDead(); } } } @@ -177,4 +193,9 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { @Override protected double motionMult() { return this.config.velocity; } @Override protected float getAirDrag() { return 1F; } @Override protected float getWaterDrag() { return 1F; } + + @Override public boolean doesImpactEntities() { return this.config.impactsEntities; } + @Override public boolean doesPenetrate() { return this.config.doesPenetrate; } + @Override public boolean isSpectral() { return this.config.isSpectral; } + @Override public int selfDamageDelay() { return this.config.selfDamageDelay; } } diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java index 8879a622e..3739f9fd1 100644 --- a/src/main/java/com/hbm/inventory/material/Mats.java +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -211,7 +211,7 @@ public class Mats { List entries = materialEntries.get(new ComparableStack(stack).makeSingular()); if(entries != null) { - list.addAll(entries); + entries.forEach(x -> { if(x != null) list.add(x); }); } if(stack.getItem() == ModItems.scraps) { diff --git a/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java b/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java index ab0d5e9cf..bbcbceb5a 100644 --- a/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java +++ b/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java @@ -37,6 +37,8 @@ public abstract class SerializableRecipe { public static final Gson gson = new Gson(); public static List recipeHandlers = new ArrayList(); + public boolean modified = false; + /* * INIT */ @@ -100,6 +102,7 @@ public abstract class SerializableRecipe { if(recFile.exists() && recFile.isFile()) { MainRegistry.logger.info("Reading recipe file " + recFile.getName()); recipe.readRecipeFile(recFile); + recipe.modified = true; } else { MainRegistry.logger.info("No recipe file found, registering defaults for " + recipe.getFileName()); recipe.registerDefaults(); @@ -107,6 +110,7 @@ public abstract class SerializableRecipe { File recTemplate = new File(recDir.getAbsolutePath() + File.separatorChar + "_" + recipe.getFileName()); MainRegistry.logger.info("Writing template file " + recTemplate.getName()); recipe.writeTemplateFile(recTemplate); + recipe.modified = false; } recipe.registerPost(); diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index acfcc783c..4cf10e425 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -8,9 +8,13 @@ import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.lib.ModDamageSource; import com.hbm.particle.SpentCasing; +import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.Item; +import net.minecraft.util.DamageSource; +import net.minecraft.util.EntityDamageSourceIndirect; public class BulletConfig { @@ -19,6 +23,7 @@ public class BulletConfig { public final int id; public ComparableStack ammo; + /** How much ammo is added to a standard mag when loading one item */ public int ammoReloadCount = 1; public float velocity = 10F; public float spread = 0F; @@ -30,11 +35,24 @@ public class BulletConfig { public float armorPiercingPercent = 0.0F; public float headshotMult = 1.0F; + public String damageType = ModDamageSource.s_bullet; + public boolean dmgProj = true; + public boolean dmgFire = false; + public boolean dmgExplosion = false; + public boolean dmgBypass = false; + public float ricochetAngle = 5F; public int maxRicochetCount = 2; + /** Whether damage dealt to an entity is subtracted from the projectile's damage on penetration */ + public boolean damageFalloffByPen = true; public double gravity = 0; - public int expires = 100; + public int expires = 30; + public boolean impactsEntities = true; + public boolean doesPenetrate = false; + /** Whether projectiles ignore blocks entirely */ + public boolean isSpectral = false; + public int selfDamageDelay = 2; public boolean renderRotations = true; public SpentCasing casing; @@ -55,11 +73,33 @@ public class BulletConfig { public BulletConfig setDamage(float damageMult) { this.damageMult = damageMult; return this; } public BulletConfig setArmorPiercing(float armorPiercingPercent) { this.armorPiercingPercent = armorPiercingPercent; return this; } public BulletConfig setHeadshot(float headshotMult) { this.headshotMult = headshotMult; return this; } + public BulletConfig setDamageType(String type) { this.damageType = type; return this; } + public BulletConfig setupDamageClass(boolean proj, boolean fire, boolean explosion, boolean bypass) { this.dmgProj = proj; this.dmgFire = fire; this.dmgExplosion = explosion; this.dmgBypass = bypass; return this; } public BulletConfig setRicochetAngle(float angle) { this.ricochetAngle = angle; return this; } public BulletConfig setRicochetCount(int count) { this.maxRicochetCount = count; return this; } + public BulletConfig setDamageFalloutByPen(boolean falloff) { this.damageFalloffByPen = falloff; return this; } public BulletConfig setGrav(double gravity) { this.gravity = gravity; return this; } public BulletConfig setLife(int expires) { this.expires = expires; return this; } + public BulletConfig setImpactsEntities(boolean impact) { this.impactsEntities = impact; return this; } + public BulletConfig setDoesPenetrate(boolean pen) { this.doesPenetrate = pen; return this; } + public BulletConfig setSpectral(boolean spectral) { this.isSpectral = spectral; return this; } + public BulletConfig setSelfDamageDelay(int delay) { this.selfDamageDelay = delay; return this; } public BulletConfig setRenderRotations(boolean rot) { this.renderRotations = rot; return this; } public BulletConfig setCasing(SpentCasing casing) { this.casing = casing; return this; } public BulletConfig setRenderer(BiConsumer renderer) { this.renderer = renderer; return this; } + + public DamageSource getDamage(EntityBulletBaseMK4 bullet, EntityLivingBase shooter, boolean bypass) { + + DamageSource dmg; + + if(shooter != null) dmg = new EntityDamageSourceIndirect(damageType, bullet, shooter); + else dmg = new DamageSource(damageType); + + if(this.dmgProj) dmg.setProjectile(); + if(this.dmgFire) dmg.setFireDamage(); + if(this.dmgExplosion) dmg.setExplosion(); + if(this.dmgBypass || bypass) dmg.setDamageBypassesArmor(); + + return dmg; + } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 3d700eca0..9134b759a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -58,7 +58,7 @@ public class Receiver { public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } public int getDelayAfterFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterFire_DNA, stack, I_DELAYAFTERFIRE, this); } public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } - public float getSpreadMod(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } + public float getGunSpread(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 817b4bfef..8cef4e3ac 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -6,6 +6,7 @@ import java.util.function.BiFunction; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; @@ -112,14 +113,28 @@ public class Lego { if(config.projectilesMax > config.projectilesMin) projectiles += player.getRNG().nextInt(config.projectilesMax - config.projectilesMin + 1); for(int i = 0; i < projectiles; i++) { - EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, primary.getBaseDamage(stack), primary.getSpreadMod(stack) * aim + 1F, sideOffset, -0.0625, 0.75); + float damage = primary.getBaseDamage(stack) * getStandardWearDamage(stack, ctx.config); + float spread = primary.getGunSpread(stack) * aim + getStandardWearSpread(stack, ctx.config) * 0.125F; + EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, damage, spread, sideOffset, -0.0625, 0.75); player.worldObj.spawnEntityInWorld(mk4); } mag.setAmount(stack, mag.getAmount(stack) - 1); - ItemGunBaseNT.setWear(stack, ItemGunBaseNT.getWear(stack) + config.wear); + ItemGunBaseNT.setWear(stack, Math.min(ItemGunBaseNT.getWear(stack) + config.wear, ctx.config.getDurability(stack))); }; + public static float getStandardWearSpread(ItemStack stack, GunConfig config) { + float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + if(percent < 0.5F) return 0F; + return (percent - 0.5F) * 2F; + } + + public static float getStandardWearDamage(ItemStack stack, GunConfig config) { + float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + if(percent < 0.75F) return 1F; + return 1F - (percent - 0.75F) * 2F; + } + /** anims for the DEBUG revolver, mostly a copy of the li'lpip but with some fixes regarding the cylinder movement */ @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DEBUG_ANIMS = (stack, type) -> { switch(type) { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index d783d5810..f5b21e6ae 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -23,7 +23,7 @@ public class XFactoryBlackPowder { public static void init() { BulletConfig stone = new BulletConfig().setItem(EnumAmmo.STONE).setSpread(0.025F).setRicochetAngle(15); - BulletConfig flint = new BulletConfig().setItem(EnumAmmo.STONE_AP).setSpread(0.01F).setRicochetAngle(5); + BulletConfig flint = new BulletConfig().setItem(EnumAmmo.STONE_AP).setSpread(0.01F).setRicochetAngle(5).setDoesPenetrate(true).setDamage(1.5F); BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.2F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() diff --git a/src/main/java/com/hbm/main/MainRegistry.java b/src/main/java/com/hbm/main/MainRegistry.java index acdda9f2e..d2d5155ad 100644 --- a/src/main/java/com/hbm/main/MainRegistry.java +++ b/src/main/java/com/hbm/main/MainRegistry.java @@ -246,6 +246,7 @@ public class MainRegistry { @EventHandler public void PreLoad(FMLPreInitializationEvent PreEvent) { + CrashHelper.init(); startupTime = System.currentTimeMillis(); configDir = PreEvent.getModConfigurationDirectory(); diff --git a/src/main/java/com/hbm/util/CrashHelper.java b/src/main/java/com/hbm/util/CrashHelper.java new file mode 100644 index 000000000..ed5198932 --- /dev/null +++ b/src/main/java/com/hbm/util/CrashHelper.java @@ -0,0 +1,33 @@ +package com.hbm.util; + +import com.hbm.inventory.recipes.loader.SerializableRecipe; + +import cpw.mods.fml.common.FMLCommonHandler; +import cpw.mods.fml.common.ICrashCallable; + +public class CrashHelper { + + public static void init() { + FMLCommonHandler.instance().registerCrashCallable(new CrashCallableRecipe()); + } + + public static class CrashCallableRecipe implements ICrashCallable { + + @Override + public String getLabel() { + return "NTM Modified recipes:"; + } + + @Override + public String call() throws Exception { + + String call = ""; + + for(SerializableRecipe rec : SerializableRecipe.recipeHandlers) { + if(rec.modified) call += "\n\t\t" + rec.getFileName(); + } + + return call; + } + } +} diff --git a/src/main/java/com/hbm/util/EntityDamageUtil.java b/src/main/java/com/hbm/util/EntityDamageUtil.java index 1e5b3a623..ada2a10c8 100644 --- a/src/main/java/com/hbm/util/EntityDamageUtil.java +++ b/src/main/java/com/hbm/util/EntityDamageUtil.java @@ -67,7 +67,7 @@ public class EntityDamageUtil { //damage removed by the calculation float reduced = Math.max(amount - afterTax, 0F); //damage that would pass + damage tthat wouldn't pass * AP percentage - return living.attackEntityFrom(sourceArmorPiercing, Math.max(afterTax + (reduced * piercing), 0F)); + return attackEntityFromIgnoreIFrame(living, sourceArmorPiercing, Math.max(afterTax + (reduced * piercing), 0F)); } diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index 2943195e5..be68ebfef 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -295,10 +295,6 @@ "potatos.random": {"category": "player", "sounds": ["potatos/randResponse0", "potatos/randResponse1", "potatos/randResponse2", "potatos/randResponse3", "potatos/randResponse4", "potatos/randResponse5", "potatos/randResponse6", "potatos/randResponse7"]}, - "fm.clap": {"category": "block", "sounds": [{"name": "clap", "stream": false}]}, - "fm.mug": {"category": "block", "sounds": [{"name": "mug", "stream": false}]}, - "fm.sample": {"category": "block", "sounds": [{"name": "sample", "stream": false}]}, - "alarm.amsSiren": {"category": "record", "sounds": [{"name": "alarm/amsSiren", "stream": false}]}, "alarm.apcLoop": {"category": "record", "sounds": [{"name": "alarm/apcLoop", "stream": false}]}, "alarm.apcPass": {"category": "record", "sounds": [{"name": "alarm/apcPass", "stream": false}]}, From eb157ea8743470559ad8c5d7aae2eb253945cc05 Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 25 Sep 2024 21:47:45 +0200 Subject: [PATCH 19/63] gun jamming --- .../com/hbm/items/weapon/sedna/GunConfig.java | 4 + .../weapon/sedna/factory/GunFactory.java | 1 + .../weapon/sedna/factory/GunStateDecider.java | 29 +- .../weapon/sedna/factory/Orchestras.java | 12 +- .../sedna/factory/XFactoryBlackPowder.java | 14 +- .../weapon/sedna/ItemRenderPepperbox.java | 2 +- src/main/resources/assets/hbm/lang/de_DE.lang | 5 + src/main/resources/assets/hbm/lang/en_US.lang | 5 + .../hbm/models/machines/rotary_furnace.obj | 2404 +++++++++++++++++ .../items/ammo_standard.stone_iron.png | Bin 0 -> 279 bytes .../models/machines/rotary_furnace.png | Bin 0 -> 2033 bytes 11 files changed, 2464 insertions(+), 12 deletions(-) create mode 100644 src/main/resources/assets/hbm/models/machines/rotary_furnace.obj create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.stone_iron.png create mode 100644 src/main/resources/assets/hbm/textures/models/machines/rotary_furnace.png diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index eeeaee080..cd4e87c49 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -22,6 +22,7 @@ public class GunConfig { public static final String F_DURABILITY = "F_DURABILITY"; public static final String I_DRAWDURATION = "I_DRAWDURATION"; public static final String I_INSPECTDURATION = "I_INSPECTDURATION"; + public static final String I_JAMDURATION = "I_JAMDURATION"; public static final String O_CROSSHAIR = "O_CROSSHAIR"; public static final String B_DOESSMOKE = "B_DOESSMOKE"; public static final String B_RELOADANIMATIONSEQUENTIAL = "B_RELOADANIMATIONSEQUENTIAL"; @@ -45,6 +46,7 @@ public class GunConfig { protected float durability_DNA; protected int drawDuration_DNA = 0; protected int inspectDuration_DNA = 0; + protected int jamDuration_DNA = 0; protected Crosshair crosshair_DNA; protected boolean doesSmoke_DNA; protected boolean reloadAnimationsSequential_DNA; @@ -72,6 +74,7 @@ public class GunConfig { public float getDurability(ItemStack stack) { return WeaponUpgradeManager.eval(durability_DNA, stack, F_DURABILITY, this); } public int getDrawDuration(ItemStack stack) { return WeaponUpgradeManager.eval(drawDuration_DNA, stack, I_DRAWDURATION, this); } public int getInspectDuration(ItemStack stack) { return WeaponUpgradeManager.eval(inspectDuration_DNA, stack, I_INSPECTDURATION, this); } + public int getJamDuration(ItemStack stack) { return WeaponUpgradeManager.eval(jamDuration_DNA, stack, I_JAMDURATION, this); } public Crosshair getCrosshair(ItemStack stack) { return WeaponUpgradeManager.eval(crosshair_DNA, stack, O_CROSSHAIR, this); } public boolean getDoesSmoke(ItemStack stack) { return WeaponUpgradeManager.eval(doesSmoke_DNA, stack, B_DOESSMOKE, this); } public boolean getReloadAnimSequential(ItemStack stack) { return WeaponUpgradeManager.eval(reloadAnimationsSequential_DNA, stack, B_RELOADANIMATIONSEQUENTIAL, this); } @@ -98,6 +101,7 @@ public class GunConfig { public GunConfig dura(float dura) { this.durability_DNA = dura; return this; } public GunConfig draw(int draw) { this.drawDuration_DNA = draw; return this; } public GunConfig inspect(int inspect) { this.inspectDuration_DNA = inspect; return this; } + public GunConfig jam(int jam) { this.jamDuration_DNA = jam; return this; } public GunConfig crosshair(Crosshair crosshair) { this.crosshair_DNA = crosshair; return this; } public GunConfig smoke(boolean doesSmoke) { this.doesSmoke_DNA = doesSmoke; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 7c80b3a52..d1a42d9fa 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -55,6 +55,7 @@ public class GunFactory { public static enum EnumAmmo { STONE, STONE_AP, + STONE_IRON, STONE_SHOT, } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index 1cdfd9e26..9e798f3c6 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -8,6 +8,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -22,6 +23,7 @@ public class GunStateDecider { public static BiConsumer LAMBDA_STANDARD_DECIDER = (stack, ctx) -> { GunState lastState = ItemGunBaseNT.getState(stack); deciderStandardFinishDraw(stack, lastState); + deciderStandardClearJam(stack, lastState); deciderStandardReload(stack, ctx, lastState, 0); deciderAutoRefire(stack, ctx, lastState, 0, () -> { return ItemGunBaseNT.getPrimary(stack); }); }; @@ -36,6 +38,16 @@ public class GunStateDecider { } } + /** Transitions the gun from DRAWING to IDLE */ + public static void deciderStandardClearJam(ItemStack stack, GunState lastState) { + + //transition to idle + if(lastState == GunState.JAMMED) { + ItemGunBaseNT.setState(stack, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, 0); + } + } + /** Triggers a reload action on the first receiver. If the mag is not full and reloading is still possible, set to RELOADING, otherwise IDLE */ public static void deciderStandardReload(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex) { @@ -53,12 +65,25 @@ public class GunStateDecider { ItemGunBaseNT.setTimer(stack, cfg.getReceivers(stack)[recIndex].getReloadDuration(stack)); //if no more reloading can be done, go idle } else { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + + if(getStandardJamChance(stack, cfg) > player.getRNG().nextFloat()) { + ItemGunBaseNT.setState(stack, GunState.JAMMED); + ItemGunBaseNT.setTimer(stack, cfg.getJamDuration(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.JAMMED); + } else { + ItemGunBaseNT.setState(stack, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, 0); + } } } } + public static float getStandardJamChance(ItemStack stack, GunConfig config) { + float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + if(percent < 0.66F) return 0F; + return Math.min((percent - 0.66F) * 4F, 1F); + } + /** Triggers a re-fire of the primary if the fire delay has expired, the left mouse button is down and re-firing is enabled, otherwise switches to IDLE */ public static void deciderAutoRefire(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex, BooleanSupplier refireCondition) { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index e9b6b5962..c2b889575 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -53,18 +53,22 @@ public class Orchestras { int timer = ItemGunBaseNT.getAnimTimer(stack); if(type == AnimType.RELOAD) { - if(timer == 20) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); if(timer == 55) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverSpin", 1F, 1F); } if(type == AnimType.CYCLE) { - if(timer == 21) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 21) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.6F); } if(type == AnimType.CYCLE_DRY) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); - if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 0.8F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.6F); } if(type == AnimType.INSPECT) { if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverSpin", 1F, 1F); } + if(type == AnimType.JAMMED) { + if(timer == 28) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 0.75F); + if(timer == 45) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 0.6F); + } }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index f5b21e6ae..7981cd37b 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -23,14 +23,15 @@ public class XFactoryBlackPowder { public static void init() { BulletConfig stone = new BulletConfig().setItem(EnumAmmo.STONE).setSpread(0.025F).setRicochetAngle(15); - BulletConfig flint = new BulletConfig().setItem(EnumAmmo.STONE_AP).setSpread(0.01F).setRicochetAngle(5).setDoesPenetrate(true).setDamage(1.5F); - BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.2F); + BulletConfig flint = new BulletConfig().setItem(EnumAmmo.STONE_AP).setSpread(0.01F).setRicochetAngle(5).setDoesPenetrate(true).setDamage(1.75F); + BulletConfig iron = new BulletConfig().setItem(EnumAmmo.STONE_IRON).setSpread(0F).setRicochetAngle(90).setRicochetCount(5).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(2F); + BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) - .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, shot)) + .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) @@ -60,7 +61,10 @@ public class XFactoryBlackPowder { case INSPECT: return new BusAnimation() .addBus("ROTATE", new BusAnimationSequence().addPos(-360 * 1, 0, 0, 750, IType.SIN_FULL)) .addBus("RECOIL", new BusAnimationSequence().addPos(-5, 0, 0, 200, IType.SIN_UP).addPos(0, 0, 0, 200, IType.SIN_DOWN)); - case JAMMED: break; + case JAMMED: return new BusAnimation() + .addBus("ROTATE", new BusAnimationSequence().addPos(0, 0, 0, 1300).addPos(60, 0, 0, 500, IType.SIN_FULL).addPos(60, 0, 0, 400).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("TRANSLATE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, -6, 0, 400, IType.SIN_FULL).addPos(0, -6, 0, 2000).addPos(0, 0, 0, 400, IType.SIN_FULL)) + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(45, 0, 0, 400, IType.SIN_FULL).addPos(45, 0, 0, 2000).addPos(0, 0, 0, 400, IType.SIN_FULL)); } return null; diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java index 0c4dd80a6..605851eed 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java @@ -12,7 +12,7 @@ import net.minecraft.item.ItemStack; public class ItemRenderPepperbox extends ItemRenderWeaponBase { @Override - protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override protected void setupFirstPerson(ItemStack stack) { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 45b9f383d..89177e7b7 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -1143,6 +1143,10 @@ item.ammo_shell.name=240mm Geschoss item.ammo_shell_apfsds_du.name=240mm APFSDS-DU item.ammo_shell_apfsds_t.name=240mm APFSDS-T item.ammo_shell_explosive.name=240mm HE-Geschoss +item.ammo_standard.stone.name=Kugel und Pulver +item.ammo_standard.stone_ap.name=Feuerstein und Pulver +item.ammo_standard.stone_iron.name=Eisenkugel und Pulver +item.ammo_standard.stone_shot.name=Schrot und Pulver item.ammo_stinger_rocket.name=Stinger-Rakete item.ammo_stinger_rocket_he.name=Stinger-Rakete (HE) item.ammo_stinger_rocket_incendiary.name=Stinger-Rakete (Brand) @@ -2106,6 +2110,7 @@ item.gun_moist_nugget.name=Mosin-Nagant item.gun_mp.name=Maschinengewehr des Pazifisten item.gun_mp40.name=Maschinenpistole item.gun_mp40_ammo.name=SMG-Patrone (LEGACY) +item.gun_pepperbox.name=Bündelrevolver item.gun_pm_ammo.name=Kleine treibmittellose MG-Patrone item.gun_mymy.name=Nietes item.gun_osipr.name=Standartausrüstung für Sicherheitskräfte diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 134cbe9a5..be8bb0358 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1866,6 +1866,10 @@ item.ammo_shell_apfsds_du.name=240mm APFSDS-DU item.ammo_shell_apfsds_t.name=240mm APFSDS-T item.ammo_shell_explosive.name=240mm HE Shell item.ammo_shell_w9.name=240mm W9 Nuclear Shell +item.ammo_standard.stone.name=Ball and Powder +item.ammo_standard.stone_ap.name=Flint and Powder +item.ammo_standard.stone_iron.name=Iron Ball and Powder +item.ammo_standard.stone_shot.name=Shot and Powder item.ammo_stinger_rocket.name=Stinger Rocket item.ammo_stinger_rocket_he.name=Stinger Rocket (HE) item.ammo_stinger_rocket_incendiary.name=Stinger Rocket (Incendiary) @@ -2915,6 +2919,7 @@ item.gun_moist_nugget.name=Mosin-Nagant item.gun_mp.name=Pacifist's Machine Gun item.gun_mp40.name=Submachine Gun item.gun_mp40_ammo.name=Submachine Gun Round (LEGACY) +item.gun_pepperbox.name=Pepperbox item.gun_pm_ammo.name=Small Propellantless Machine Gun Round item.gun_mymy.name=Nietes item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle diff --git a/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj b/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj new file mode 100644 index 000000000..1959a5728 --- /dev/null +++ b/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj @@ -0,0 +1,2404 @@ +# Blender v2.79 (sub 0) OBJ File: 'rotary_furnace.blend' +# www.blender.org +o Piston +v -0.375000 2.000000 1.125000 +v -0.375000 2.000000 1.875000 +v 0.375000 2.000000 1.875000 +v 0.375000 2.000000 1.125000 +v -0.375000 3.000000 1.125000 +v -0.375000 3.000000 1.875000 +v 0.375000 3.000000 1.875000 +v 0.375000 3.000000 1.125000 +v -0.500000 3.000000 1.000000 +v -0.500000 3.000000 2.000000 +v 0.500000 3.000000 2.000000 +v 0.500000 3.000000 1.000000 +v -0.500000 3.250000 1.000000 +v -0.500000 3.250000 2.000000 +v 0.500000 3.250000 2.000000 +v 0.500000 3.250000 1.000000 +vt 0.681035 0.815217 +vt 0.620690 0.826087 +vt 0.629310 0.815217 +vt 0.741379 0.847826 +vt 0.689655 0.934783 +vt 0.689655 0.847826 +vt 0.844828 0.847826 +vt 0.793103 0.934783 +vt 0.793103 0.847826 +vt 0.741379 0.934783 +vt 0.896552 0.847826 +vt 0.844828 0.934783 +vt 0.758621 0.826087 +vt 0.689655 0.847826 +vt 0.689655 0.826087 +vt 0.629310 0.750000 +vt 0.689655 0.739130 +vt 0.681035 0.750000 +vt 0.620690 0.739130 +vt 0.620690 0.847826 +vt 0.689655 0.934783 +vt 0.620690 0.934783 +vt 0.896552 0.826087 +vt 0.827586 0.847826 +vt 0.827586 0.826087 +vt 0.758621 0.847826 +vt 0.896552 0.934783 +vt 0.896552 0.847826 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 1.0000 0.0000 +s off +f 8/1/1 11/2/1 7/3/1 +f 4/4/2 7/5/2 3/6/2 +f 2/7/3 5/8/3 1/9/3 +f 1/9/4 8/10/4 4/4/4 +f 3/11/5 6/12/5 2/7/5 +f 9/13/4 16/14/4 12/15/4 +f 6/16/1 9/17/1 5/18/1 +f 5/18/1 12/15/1 8/1/1 +f 7/3/1 10/19/1 6/16/1 +f 15/20/6 13/21/6 14/22/6 +f 11/23/5 14/24/5 10/25/5 +f 12/15/2 15/20/2 11/2/2 +f 10/25/3 13/26/3 9/13/3 +f 8/1/1 12/15/1 11/2/1 +f 4/4/2 8/10/2 7/5/2 +f 2/7/3 6/12/3 5/8/3 +f 1/9/4 5/8/4 8/10/4 +f 3/11/5 7/27/5 6/12/5 +f 9/13/4 13/26/4 16/14/4 +f 6/16/1 10/19/1 9/17/1 +f 5/18/1 9/17/1 12/15/1 +f 7/3/1 11/2/1 10/19/1 +f 15/20/6 16/14/6 13/21/6 +f 11/23/5 15/28/5 14/24/5 +f 12/15/2 16/14/2 15/20/2 +f 10/25/3 14/24/3 13/26/3 +o Furnace +v -1.500000 0.000000 2.500000 +v 1.500000 0.000000 2.500000 +v -1.500000 0.000000 -2.500000 +v 1.500000 0.000000 -2.500000 +v 1.500000 0.750000 -0.500000 +v -1.500000 0.500000 2.500000 +v 1.500000 0.500000 2.500000 +v 1.500000 0.250000 -0.500000 +v -1.500000 0.500000 0.500000 +v 1.500000 0.500000 0.500000 +v 1.500000 1.000000 0.500000 +v 1.500000 1.000000 -2.500000 +v -1.500000 1.000000 -2.500000 +v -1.500000 1.000000 0.500000 +v -1.250000 1.000000 -0.500000 +v 1.250000 1.000000 -0.500000 +v -1.250000 1.000000 -1.500000 +v 1.250000 1.000000 -1.500000 +v 0.500000 1.000000 0.250000 +v 0.500000 1.000000 -2.250000 +v -0.500000 1.000000 0.250000 +v -0.500000 1.000000 -2.250000 +v -1.250000 4.000000 -0.500000 +v 1.250000 4.000000 -0.500000 +v -1.250000 4.000000 -1.500000 +v 1.250000 4.000000 -1.500000 +v 0.500000 4.000000 0.250000 +v 0.500000 4.000000 -2.250000 +v -0.500000 4.000000 0.250000 +v -0.500000 4.000000 -2.250000 +v -0.500000 4.500000 -1.500000 +v -0.500000 4.500000 -0.500000 +v 0.500000 4.500000 -1.500000 +v 0.500000 4.500000 -0.500000 +v 0.500000 1.000000 0.500000 +v 1.250000 1.000000 0.500000 +v 0.500000 1.000000 0.250000 +v 1.250000 1.000000 -0.500000 +v 0.500000 3.500000 0.500000 +v 1.250000 3.500000 0.500000 +v 0.500000 3.500000 0.250000 +v 1.250000 3.500000 -0.500000 +v -0.500000 5.000000 -1.500000 +v -0.500000 5.000000 -0.500000 +v 0.500000 5.000000 -1.500000 +v 0.500000 5.000000 -0.500000 +v 0.500000 4.750000 -1.500000 +v 0.500000 4.926777 -1.426777 +v 0.500000 5.000000 -1.250000 +v 0.500000 4.926777 -1.073223 +v 0.500000 4.750000 -1.000000 +v 0.500000 4.573223 -1.073223 +v 0.500000 4.500000 -1.250000 +v 0.500000 4.573223 -1.426777 +v 0.625000 4.750000 -1.500000 +v 0.625000 4.926777 -1.426777 +v 0.625000 5.000000 -1.250000 +v 0.625000 4.926777 -1.073223 +v 0.625000 4.750000 -1.000000 +v 0.625000 4.573223 -1.073223 +v 0.625000 4.500000 -1.250000 +v 0.625000 4.573223 -1.426777 +v 0.801777 4.676777 -1.500000 +v 0.926777 4.801777 -1.426777 +v 0.978553 4.853553 -1.250000 +v 0.926777 4.801777 -1.073223 +v 0.801777 4.676777 -1.000000 +v 0.676776 4.551776 -1.073223 +v 0.676776 4.551776 -1.426777 +v 0.875000 4.500000 -1.500000 +v 1.051777 4.500000 -1.426777 +v 1.125000 4.500000 -1.250000 +v 1.051777 4.500000 -1.073223 +v 0.875000 4.500000 -1.000000 +v 0.698223 4.500000 -1.073223 +v 0.698223 4.500000 -1.426777 +v 0.625000 4.000000 -1.250000 +v 0.875000 4.000000 -1.500000 +v 1.051777 4.000000 -1.426777 +v 1.125000 4.000000 -1.250000 +v 1.051777 4.000000 -1.073223 +v 0.875000 4.000000 -1.000000 +v 0.698223 4.000000 -1.073223 +v 0.698223 4.000000 -1.426777 +v 0.500000 4.750000 -1.000000 +v 0.500000 4.926777 -0.926777 +v 0.500000 5.000000 -0.750000 +v 0.500000 4.926777 -0.573223 +v 0.500000 4.750000 -0.500000 +v 0.500000 4.573223 -0.573223 +v 0.500000 4.500000 -0.750000 +v 0.500000 4.573223 -0.926777 +v 0.625000 4.750000 -1.000000 +v 0.625000 4.926777 -0.926777 +v 0.625000 5.000000 -0.750000 +v 0.625000 4.926777 -0.573223 +v 0.625000 4.750000 -0.500000 +v 0.625000 4.573223 -0.573223 +v 0.625000 4.500000 -0.750000 +v 0.625000 4.573223 -0.926777 +v 0.801777 4.676777 -1.000000 +v 0.926777 4.801777 -0.926777 +v 0.978553 4.853553 -0.750000 +v 0.926777 4.801777 -0.573223 +v 0.801777 4.676777 -0.500000 +v 0.676776 4.551776 -0.573223 +v 0.676776 4.551776 -0.926777 +v 0.875000 4.500000 -1.000000 +v 1.051777 4.500000 -0.926777 +v 1.125000 4.500000 -0.750000 +v 1.051777 4.500000 -0.573223 +v 0.875000 4.500000 -0.500000 +v 0.698223 4.500000 -0.573223 +v 0.698223 4.500000 -0.926777 +v 0.625000 4.000000 -0.750000 +v 0.875000 4.000000 -1.000000 +v 1.051777 4.000000 -0.926777 +v 1.125000 4.000000 -0.750000 +v 1.051777 4.000000 -0.573223 +v 0.875000 4.000000 -0.500000 +v 0.698223 4.000000 -0.573223 +v 0.698223 4.000000 -0.926777 +v 1.125000 3.000000 0.500000 +v 1.051777 3.176777 0.500000 +v 0.875000 3.250000 0.500000 +v 0.698223 3.176777 0.500000 +v 0.625000 3.000000 0.500000 +v 0.698223 2.823223 0.500000 +v 0.875000 2.750000 0.500000 +v 1.051777 2.823223 0.500000 +v 1.125000 3.000000 0.625000 +v 1.051777 3.176777 0.625000 +v 0.875000 3.250000 0.625000 +v 0.698223 3.176777 0.625000 +v 0.625000 3.000000 0.625000 +v 0.698223 2.823223 0.625000 +v 0.875000 2.750000 0.625000 +v 1.051777 2.823223 0.625000 +v 1.125000 2.926777 0.801777 +v 1.051777 3.051777 0.926777 +v 0.875000 3.103553 0.978554 +v 0.698223 3.051777 0.926777 +v 0.625000 2.926777 0.801777 +v 0.698223 2.801776 0.676777 +v 1.051777 2.801776 0.676777 +v 1.125000 2.750000 0.875000 +v 1.051777 2.750000 1.051777 +v 0.875000 2.750000 1.125000 +v 0.698223 2.750000 1.051777 +v 0.625000 2.750000 0.875000 +v 0.698223 2.750000 0.698223 +v 1.051777 2.750000 0.698223 +v 0.875000 1.000000 0.625000 +v 1.125000 1.000000 0.875000 +v 1.051777 1.000000 1.051777 +v 0.875000 1.000000 1.125000 +v 0.698223 1.000000 1.051777 +v 0.625000 1.000000 0.875000 +v 0.698223 1.000000 0.698223 +v 1.051777 1.000000 0.698223 +v 0.875000 0.646447 0.771447 +v 1.125000 0.823223 0.948224 +v 1.051777 0.948223 1.073224 +v 0.698223 0.948223 1.073224 +v 0.625000 0.823223 0.948224 +v 0.698223 0.698223 0.823223 +v 1.051777 0.698223 0.823223 +v 0.875000 0.500000 1.125000 +v 1.125000 0.750000 1.125000 +v 1.051777 0.926777 1.125000 +v 0.698223 0.926777 1.125000 +v 0.625000 0.750000 1.125000 +v 0.698223 0.573223 1.125000 +v 1.051777 0.573223 1.125000 +v 1.125000 2.250000 0.500000 +v 1.051777 2.426777 0.500000 +v 0.875000 2.500000 0.500000 +v 0.698223 2.426777 0.500000 +v 0.625000 2.250000 0.500000 +v 0.698223 2.073223 0.500000 +v 0.875000 2.000000 0.500000 +v 1.051777 2.073223 0.500000 +v 1.125000 2.250000 0.875000 +v 1.051777 2.426777 0.875000 +v 0.875000 2.500000 0.875000 +v 0.698223 2.426777 0.875000 +v 0.625000 2.250000 0.875000 +v 0.698223 2.073223 0.875000 +v 0.875000 2.000000 0.875000 +v 1.051777 2.073223 0.875000 +v 1.125000 1.500000 0.500000 +v 1.051777 1.676777 0.500000 +v 0.875000 1.750000 0.500000 +v 0.698223 1.676777 0.500000 +v 0.625000 1.500000 0.500000 +v 0.698223 1.323223 0.500000 +v 0.875000 1.250000 0.500000 +v 1.051777 1.323223 0.500000 +v 1.125000 1.500000 0.875000 +v 1.051777 1.676777 0.875000 +v 0.875000 1.750000 0.875000 +v 0.698223 1.676777 0.875000 +v 0.625000 1.500000 0.875000 +v 0.698223 1.323223 0.875000 +v 0.875000 1.250000 0.875000 +v 1.051777 1.323223 0.875000 +v -0.926777 4.801777 -0.926776 +v -0.978554 4.853553 -0.750000 +v -0.926777 4.801777 -0.573223 +v -0.801777 4.676777 -0.500000 +v -0.625000 4.573223 -0.573223 +v -0.625000 4.500000 -0.750000 +v -0.625000 4.573223 -0.926776 +v -0.625000 4.750000 -1.000000 +v -1.500000 0.500000 2.250000 +v -1.250000 0.500000 2.250000 +v -1.500000 0.500000 1.750000 +v -1.250000 0.500000 1.750000 +v -1.500000 0.750000 1.750000 +v -1.500000 0.750000 2.250000 +v -1.250000 0.750000 2.250000 +v -1.250000 0.750000 1.750000 +v -1.250000 0.500000 2.187500 +v 0.187500 0.500000 2.187500 +v -1.250000 0.500000 1.812500 +v 0.187500 0.500000 1.812500 +v -1.250000 0.687500 1.812500 +v -1.250000 0.687500 2.187500 +v -0.187500 0.687500 2.187500 +v -0.187500 0.687500 1.812500 +v -0.625000 4.926777 -0.926776 +v -0.625000 5.000000 -0.750000 +v -0.625000 4.926777 -0.573223 +v -0.625000 4.750000 -0.500000 +v -0.500000 4.573223 -0.573223 +v -0.500000 4.500000 -0.750000 +v -0.500000 4.573223 -0.926776 +v -0.500000 4.750000 -1.000000 +v -0.500000 0.500000 2.000000 +v 0.500000 0.500000 2.000000 +v -0.500000 0.500000 1.000000 +v 0.500000 0.500000 1.000000 +v -0.500000 2.000000 1.000000 +v -0.500000 2.000000 2.000000 +v 0.500000 2.000000 2.000000 +v 0.500000 2.000000 1.000000 +v 0.875000 1.000000 1.250000 +v 0.875000 0.500000 1.250000 +v 1.125000 0.750000 1.250000 +v 1.051777 0.926777 1.250000 +v 0.698223 0.926777 1.250000 +v 0.625000 0.750000 1.250000 +v 0.698223 0.573223 1.250000 +v 1.051777 0.573223 1.250000 +v 0.801777 1.000000 1.426777 +v 0.801777 0.500000 1.426777 +v 0.978553 0.750000 1.603553 +v 0.926777 0.926777 1.551777 +v 0.676777 0.926777 1.301777 +v 0.676777 0.573223 1.301777 +v 0.926777 0.573223 1.551777 +v 0.625000 1.000000 1.500000 +v 0.625000 0.500000 1.500000 +v 0.625000 0.750000 1.750000 +v 0.625000 0.926777 1.676777 +v 0.625000 0.926777 1.323224 +v 0.625000 0.573223 1.323224 +v 0.625000 0.573223 1.676777 +v 0.500000 0.750000 1.250000 +v 0.500000 1.000000 1.500000 +v 0.500000 0.500000 1.500000 +v 0.500000 0.750000 1.750000 +v 0.500000 0.926777 1.676777 +v 0.500000 0.926777 1.323224 +v 0.500000 0.573223 1.323224 +v 0.500000 0.573223 1.676777 +v -0.187500 1.625000 2.187500 +v -0.187500 1.625000 1.812500 +v 0.187500 1.625000 1.812500 +v 0.187500 1.625000 2.187500 +v -0.500000 4.926777 -0.926776 +v -0.500000 5.000000 -0.750000 +v -0.500000 4.926777 -0.573223 +v -0.500000 4.750000 -0.500000 +v 1.500000 0.750000 -1.500000 +v 1.500000 0.250000 -1.500000 +v 0.500000 0.250000 -0.500000 +v 0.500000 0.250000 -1.500000 +v 0.500000 0.750000 -0.500000 +v 0.500000 0.750000 -1.500000 +v 1.375000 0.750000 -0.500000 +v 1.375000 0.250000 -0.500000 +v 1.375000 0.750000 -1.500000 +v 1.375000 0.250000 -1.500000 +v 1.125000 1.000000 -1.625000 +v 0.625000 1.000000 -2.125000 +v 1.125000 1.000000 -2.125000 +v 0.625000 3.500000 -2.125000 +v 1.125000 3.500000 -1.625000 +v 1.125000 3.500000 -2.125000 +v -1.125000 1.000000 -1.625000 +v -1.125000 1.000000 -2.125000 +v -0.625000 1.000000 -2.125000 +v -1.125000 3.500000 -2.125000 +v -1.125000 3.500000 -1.625000 +v -0.625000 3.500000 -2.125000 +v -1.125000 1.000000 0.125000 +v -0.625000 1.000000 0.125000 +v -1.125000 1.000000 -0.375000 +v -1.125000 3.500000 -0.375000 +v -1.125000 3.500000 0.125000 +v -0.625000 3.500000 0.125000 +v -0.801777 4.676777 -1.000000 +v -0.676777 4.551776 -0.926776 +v -0.676777 4.551776 -0.573223 +v -0.875000 4.500000 -0.500000 +v -1.051777 4.500000 -0.573223 +v -1.125000 4.500000 -0.750000 +v -1.051777 4.500000 -0.926776 +v -0.875000 4.500000 -1.000000 +v -0.698224 4.500000 -0.926776 +v -0.698224 4.500000 -0.573223 +v -0.625000 4.000000 -0.750000 +v -0.875000 4.000000 -0.500000 +v -1.051777 4.000000 -0.573223 +v -1.125000 4.000000 -0.750000 +v -1.051777 4.000000 -0.926776 +v -0.875000 4.000000 -1.000000 +v -0.698224 4.000000 -0.926776 +v -0.698224 4.000000 -0.573223 +v -0.500000 4.750000 -1.000000 +v -0.500000 4.926777 -1.073223 +v -0.500000 5.000000 -1.250000 +v -0.500000 4.926777 -1.426777 +v -0.500000 4.750000 -1.500000 +v -0.500000 4.573223 -1.426777 +v -0.500000 4.500000 -1.250000 +v -0.500000 4.573223 -1.073223 +v -0.625000 4.750000 -1.000000 +v -0.625000 4.926777 -1.073223 +v -0.625000 5.000000 -1.250000 +v -0.625000 4.926777 -1.426777 +v -0.625000 4.750000 -1.500000 +v -0.625000 4.573223 -1.426777 +v -0.625000 4.500000 -1.250000 +v -0.625000 4.573223 -1.073223 +v -0.801777 4.676777 -1.000000 +v -0.926777 4.801777 -1.073223 +v -0.978554 4.853553 -1.250000 +v -0.926777 4.801777 -1.426777 +v -0.801777 4.676777 -1.500000 +v -0.676777 4.551776 -1.426777 +v -0.676777 4.551776 -1.073223 +v -0.875000 4.500000 -1.000000 +v -1.051777 4.500000 -1.073223 +v -1.125000 4.500000 -1.250000 +v -1.051777 4.500000 -1.426777 +v -0.875000 4.500000 -1.500000 +v -0.698224 4.500000 -1.426777 +v -0.698224 4.500000 -1.073223 +v -0.625000 4.000000 -1.250000 +v -0.875000 4.000000 -1.000000 +v -1.051777 4.000000 -1.073223 +v -1.125000 4.000000 -1.250000 +v -1.051777 4.000000 -1.426777 +v -0.875000 4.000000 -1.500000 +v -0.698224 4.000000 -1.426777 +v -0.698224 4.000000 -1.073223 +v -0.500000 4.750000 -1.500000 +v -0.426777 4.926777 -1.500000 +v -0.250000 5.000000 -1.500000 +v -0.073224 4.926777 -1.500000 +v -0.000000 4.750000 -1.500000 +v -0.073224 4.573223 -1.500000 +v -0.250000 4.500000 -1.500000 +v -0.426777 4.573223 -1.500000 +v -0.500000 4.750000 -1.625000 +v -0.426777 4.926777 -1.625000 +v -0.250000 5.000000 -1.625000 +v -0.073224 4.926777 -1.625000 +v -0.000000 4.750000 -1.625000 +v -0.073224 4.573223 -1.625000 +v -0.250000 4.500000 -1.625000 +v -0.426777 4.573223 -1.625000 +v -0.500000 4.676777 -1.801777 +v -0.426777 4.801777 -1.926777 +v -0.250000 4.853553 -1.978554 +v -0.073224 4.801777 -1.926777 +v -0.000000 4.676777 -1.801777 +v -0.073224 4.551776 -1.676777 +v -0.426777 4.551776 -1.676777 +v -0.500000 4.500000 -1.875000 +v -0.426777 4.500000 -2.051777 +v -0.250000 4.500000 -2.125000 +v -0.073224 4.500000 -2.051777 +v -0.000000 4.500000 -1.875000 +v -0.073224 4.500000 -1.698223 +v -0.426777 4.500000 -1.698223 +v -0.250000 4.000000 -1.625000 +v -0.500000 4.000000 -1.875000 +v -0.426777 4.000000 -2.051777 +v -0.250000 4.000000 -2.125000 +v -0.073224 4.000000 -2.051777 +v -0.000000 4.000000 -1.875000 +v -0.073224 4.000000 -1.698223 +v -0.426777 4.000000 -1.698223 +v -0.000000 4.750000 -1.500000 +v 0.073223 4.926777 -1.500000 +v 0.250000 5.000000 -1.500000 +v 0.426777 4.926777 -1.500000 +v 0.500000 4.750000 -1.500000 +v 0.426777 4.573223 -1.500000 +v 0.250000 4.500000 -1.500000 +v 0.073223 4.573223 -1.500000 +v -0.000000 4.750000 -1.625000 +v 0.073223 4.926777 -1.625000 +v 0.250000 5.000000 -1.625000 +v 0.426777 4.926777 -1.625000 +v 0.500000 4.750000 -1.625000 +v 0.426777 4.573223 -1.625000 +v 0.250000 4.500000 -1.625000 +v 0.073223 4.573223 -1.625000 +v -0.000000 4.676777 -1.801777 +v 0.073223 4.801777 -1.926777 +v 0.250000 4.853553 -1.978554 +v 0.426777 4.801777 -1.926777 +v 0.500000 4.676777 -1.801777 +v 0.426777 4.551776 -1.676777 +v 0.073223 4.551776 -1.676777 +v -0.000000 4.500000 -1.875000 +v 0.073223 4.500000 -2.051777 +v 0.250000 4.500000 -2.125000 +v 0.426777 4.500000 -2.051777 +v 0.500000 4.500000 -1.875000 +v 0.426777 4.500000 -1.698223 +v 0.073223 4.500000 -1.698223 +v 0.250000 4.000000 -1.625000 +v -0.000000 4.000000 -1.875000 +v 0.073223 4.000000 -2.051777 +v 0.250000 4.000000 -2.125000 +v 0.426777 4.000000 -2.051777 +v 0.500000 4.000000 -1.875000 +v 0.426777 4.000000 -1.698223 +v 0.073223 4.000000 -1.698223 +v 0.073223 4.801777 -0.073223 +v 0.250000 4.853553 -0.021446 +v 0.426777 4.801777 -0.073223 +v 0.500000 4.676777 -0.198223 +v 0.426777 4.573223 -0.375000 +v 0.250000 4.500000 -0.375000 +v 0.073223 4.573223 -0.375000 +v -0.000000 4.750000 -0.375000 +v 0.073223 4.926777 -0.375000 +v 0.250000 5.000000 -0.375000 +v 0.426777 4.926777 -0.375000 +v 0.500000 4.750000 -0.375000 +v 0.426777 4.573223 -0.500000 +v 0.250000 4.500000 -0.500000 +v 0.073223 4.573223 -0.500000 +v -0.000000 4.750000 -0.500000 +v 0.073223 4.926777 -0.500000 +v 0.250000 5.000000 -0.500000 +v 0.426777 4.926777 -0.500000 +v 0.500000 4.750000 -0.500000 +v -0.000000 4.676777 -0.198223 +v 0.073223 4.551776 -0.323223 +v 0.426777 4.551776 -0.323223 +v 0.500000 4.500000 -0.125000 +v 0.426777 4.500000 0.051777 +v 0.250000 4.500000 0.125000 +v 0.073223 4.500000 0.051777 +v -0.000000 4.500000 -0.125000 +v 0.073223 4.500000 -0.301777 +v 0.426777 4.500000 -0.301777 +v 0.250000 4.000000 -0.375000 +v 0.500000 4.000000 -0.125000 +v 0.426777 4.000000 0.051777 +v 0.250000 4.000000 0.125000 +v 0.073223 4.000000 0.051777 +v -0.000000 4.000000 -0.125000 +v 0.073223 4.000000 -0.301777 +v 0.426777 4.000000 -0.301777 +v -0.000000 4.750000 -0.500000 +v -0.073223 4.926777 -0.500000 +v -0.250000 5.000000 -0.500000 +v -0.426777 4.926777 -0.500000 +v -0.500000 4.750000 -0.500000 +v -0.426777 4.573223 -0.500000 +v -0.250000 4.500000 -0.500000 +v -0.073223 4.573223 -0.500000 +v -0.000000 4.750000 -0.375000 +v -0.073223 4.926777 -0.375000 +v -0.250000 5.000000 -0.375000 +v -0.426777 4.926777 -0.375000 +v -0.500000 4.750000 -0.375000 +v -0.426777 4.573223 -0.375000 +v -0.250000 4.500000 -0.375000 +v -0.073223 4.573223 -0.375000 +v -0.000000 4.676777 -0.198223 +v -0.073223 4.801777 -0.073223 +v -0.250000 4.853553 -0.021446 +v -0.426777 4.801777 -0.073223 +v -0.500000 4.676777 -0.198223 +v -0.426777 4.551776 -0.323223 +v -0.073223 4.551776 -0.323223 +v -0.000000 4.500000 -0.125000 +v -0.073223 4.500000 0.051777 +v -0.250000 4.500000 0.125000 +v -0.426777 4.500000 0.051777 +v -0.500000 4.500000 -0.125000 +v -0.426777 4.500000 -0.301777 +v -0.073223 4.500000 -0.301777 +v -0.250000 4.000000 -0.375000 +v -0.000000 4.000000 -0.125000 +v -0.073223 4.000000 0.051777 +v -0.250000 4.000000 0.125000 +v -0.426777 4.000000 0.051777 +v -0.500000 4.000000 -0.125000 +v -0.426777 4.000000 -0.301777 +v -0.073223 4.000000 -0.301777 +v -1.500000 0.500000 1.250000 +v -1.250000 0.500000 1.250000 +v -1.500000 0.500000 0.750000 +v -1.250000 0.500000 0.750000 +v -1.500000 0.750000 0.750000 +v -1.500000 0.750000 1.250000 +v -1.250000 0.750000 1.250000 +v -1.250000 0.750000 0.750000 +v -1.250000 0.500000 1.187500 +v 0.187500 0.500000 1.187500 +v -1.250000 0.500000 0.812500 +v 0.187500 0.500000 0.812500 +v -1.250000 0.687500 0.812500 +v -1.250000 0.687500 1.187500 +v -0.187500 0.687500 1.187500 +v -0.187500 0.687500 0.812500 +v -0.187500 1.625000 1.187500 +v -0.187500 1.625000 0.812500 +v 0.187500 1.625000 0.812500 +v 0.187500 1.625000 1.187500 +vt 0.413793 0.000000 +vt 0.068966 0.260870 +vt 0.068966 0.000000 +vt 0.344828 0.282609 +vt 0.413793 0.347826 +vt 0.344828 0.326087 +vt 0.000000 0.347826 +vt 0.034483 0.608696 +vt 0.000000 0.608696 +vt 0.413793 0.608696 +vt 0.482759 0.347826 +vt 0.482759 0.608696 +vt 0.068966 0.782609 +vt 0.137931 0.826087 +vt 0.068966 0.826087 +vt 0.206897 0.652174 +vt 0.413793 0.695652 +vt 0.034483 0.347826 +vt 0.172414 0.608696 +vt 0.206897 0.347826 +vt 0.206897 0.608696 +vt -0.000000 0.782609 +vt -0.000000 0.826087 +vt 0.068966 0.913043 +vt 0.137931 0.913043 +vt 0.172414 0.347826 +vt 0.965517 0.000000 +vt 0.896552 0.260870 +vt 0.896552 0.000000 +vt 0.620690 0.260870 +vt 0.551724 0.000000 +vt 0.620690 0.000000 +vt 0.827586 0.000000 +vt 0.482759 0.260870 +vt 0.482759 0.000000 +vt 0.758621 0.260870 +vt 0.758621 0.000000 +vt 0.689655 0.260870 +vt 0.689655 0.000000 +vt 0.413793 0.260870 +vt 0.413793 0.000000 +vt 0.689655 0.478261 +vt 0.689655 0.413043 +vt 0.741379 0.413043 +vt 0.620690 0.326087 +vt 0.568965 0.326087 +vt 0.620690 0.478261 +vt 0.620690 0.413043 +vt 0.689655 0.326087 +vt 0.741379 0.326087 +vt 0.568965 0.413043 +vt 0.310345 0.695652 +vt 0.241379 0.739130 +vt 0.241379 0.695652 +vt 0.310345 0.739130 +vt 0.241379 0.826087 +vt 0.551724 0.695652 +vt 0.500000 0.717391 +vt 0.500000 0.695652 +vt 0.620690 0.478261 +vt 0.551724 0.478261 +vt 0.500000 0.478261 +vt 0.482759 0.695652 +vt 0.482759 0.478261 +vt 0.344828 0.826087 +vt 0.344828 0.739130 +vt 0.206897 0.739130 +vt 0.206897 0.826087 +vt 0.241379 0.869565 +vt 0.310345 0.826087 +vt 0.310345 0.869565 +vt 0.465517 0.652174 +vt 0.431034 0.630435 +vt 0.465517 0.630435 +vt 0.413793 0.630435 +vt 0.431034 0.652174 +vt 0.413793 0.652174 +vt 0.482759 0.652174 +vt 0.482759 0.630435 +vt 0.431034 0.673913 +vt 0.465517 0.673913 +vt 0.465517 0.608696 +vt 0.431034 0.608696 +vt 0.500000 0.788043 +vt 0.474138 0.695652 +vt 0.500000 0.695652 +vt 0.396552 0.777174 +vt 0.409483 0.869565 +vt 0.396552 0.902174 +vt 0.577586 0.777174 +vt 0.564655 0.869565 +vt 0.564655 0.777174 +vt 0.620690 0.652174 +vt 0.689655 0.739130 +vt 0.620690 0.739130 +vt 0.758621 0.521739 +vt 0.689655 0.652174 +vt 0.689655 0.521739 +vt 0.896552 0.521739 +vt 0.827586 0.652174 +vt 0.827586 0.521739 +vt 0.620690 0.521739 +vt 0.758621 0.652174 +vt 0.465517 0.652174 +vt 0.431034 0.630435 +vt 0.465517 0.630435 +vt 0.500000 0.902174 +vt 0.474138 0.869565 +vt 0.500000 0.869565 +vt 0.474138 0.788043 +vt 0.474138 1.000000 +vt 0.500000 1.000000 +vt 0.474138 0.902174 +vt 0.206897 0.826087 +vt 0.137931 0.782609 +vt 0.206897 0.782609 +vt 0.137931 0.695652 +vt 0.068966 0.695652 +vt 0.275862 0.326087 +vt 0.413793 0.260870 +vt 0.275862 0.282609 +vt 0.206897 0.304348 +vt 0.068966 0.304348 +vt 0.344828 0.326087 +vt 0.275862 0.282609 +vt 0.344828 0.282609 +vt 0.810345 0.260870 +vt 0.775862 0.478261 +vt 0.775862 0.260870 +vt 0.741379 0.478261 +vt 0.741379 0.260870 +vt 0.844828 0.260870 +vt 0.810345 0.478261 +vt 0.810345 0.260870 +vt 0.879310 0.260870 +vt 0.844828 0.478261 +vt 0.913793 0.478261 +vt 0.948276 0.478261 +vt 0.913793 0.521739 +vt 0.879310 0.478261 +vt 0.844828 0.521739 +vt 0.948276 0.260870 +vt 0.913793 0.260870 +vt 0.810345 0.478261 +vt 0.775862 0.521739 +vt 0.879310 0.478261 +vt 0.879310 0.260870 +vt 0.068966 0.695652 +vt 0.068966 0.652174 +vt 0.413793 0.630435 +vt 0.431034 0.652174 +vt 0.413793 0.652174 +vt 0.482759 0.652174 +vt 0.482759 0.630435 +vt 0.431034 0.673913 +vt 0.465517 0.673913 +vt 0.465517 0.608696 +vt 0.431034 0.608696 +vt 0.500000 0.788043 +vt 0.474138 0.695652 +vt 0.500000 0.695652 +vt 0.396552 0.777174 +vt 0.409483 0.869565 +vt 0.396552 0.902174 +vt 0.577586 0.777174 +vt 0.564655 0.869565 +vt 0.564655 0.777174 +vt 0.500000 0.902174 +vt 0.474138 0.869565 +vt 0.500000 0.869565 +vt 0.474138 0.788043 +vt 0.474138 1.000000 +vt 0.500000 1.000000 +vt 0.474138 0.902174 +vt 0.965517 0.260870 +vt 0.551724 0.260870 +vt 0.827586 0.260870 +vt 0.551724 0.782609 +vt 0.620690 0.695652 +vt 0.409483 0.777174 +vt 0.577586 0.902174 +vt 0.896552 0.652174 +vt 0.275862 0.326087 +vt 0.409483 0.777174 +vt 0.577586 0.902174 +vt 0.831897 0.771739 +vt 0.844828 0.760870 +vt 0.844828 0.771739 +vt 0.857759 0.771739 +vt 0.870690 0.760870 +vt 0.870690 0.771739 +vt 0.883621 0.760870 +vt 0.883621 0.771739 +vt 0.793103 0.771739 +vt 0.806035 0.760870 +vt 0.806035 0.771739 +vt 0.818965 0.771739 +vt 0.831897 0.760870 +vt 0.857759 0.760870 +vt 0.896552 0.760870 +vt 0.896552 0.771739 +vt 0.818965 0.760870 +vt 0.831897 0.755435 +vt 0.818965 0.728261 +vt 0.831897 0.728261 +vt 0.857759 0.728261 +vt 0.857759 0.755435 +vt 0.806035 0.733696 +vt 0.818965 0.744565 +vt 0.844828 0.728261 +vt 0.870690 0.728261 +vt 0.870690 0.744565 +vt 0.883621 0.728261 +vt 0.883621 0.733696 +vt 0.870690 0.711957 +vt 0.883621 0.722826 +vt 0.831897 0.701087 +vt 0.857759 0.701087 +vt 0.806035 0.722826 +vt 0.818965 0.711957 +vt 0.844828 0.695652 +vt 0.896552 0.728261 +vt 0.793103 0.728261 +vt 0.806035 0.728261 +vt 0.793103 0.695652 +vt 0.806035 0.652174 +vt 0.806035 0.695652 +vt 0.870690 0.695652 +vt 0.883621 0.652174 +vt 0.883621 0.695652 +vt 0.896552 0.652174 +vt 0.896552 0.695652 +vt 0.818965 0.695652 +vt 0.831897 0.652174 +vt 0.831897 0.695652 +vt 0.857759 0.652174 +vt 0.857759 0.695652 +vt 0.818965 0.652174 +vt 0.844828 0.652174 +vt 0.870690 0.652174 +vt 0.728448 0.771739 +vt 0.741379 0.760870 +vt 0.741379 0.771739 +vt 0.754310 0.771739 +vt 0.767241 0.760870 +vt 0.767241 0.771739 +vt 0.780172 0.760870 +vt 0.780172 0.771739 +vt 0.689655 0.771739 +vt 0.702586 0.760870 +vt 0.702586 0.771739 +vt 0.715517 0.771739 +vt 0.728448 0.760870 +vt 0.754310 0.760870 +vt 0.793103 0.760870 +vt 0.793103 0.771739 +vt 0.715517 0.760870 +vt 0.728448 0.755435 +vt 0.715517 0.728261 +vt 0.728448 0.728261 +vt 0.754310 0.728261 +vt 0.754310 0.755435 +vt 0.715517 0.744565 +vt 0.702586 0.728261 +vt 0.741379 0.728261 +vt 0.767241 0.728261 +vt 0.767241 0.744565 +vt 0.780172 0.728261 +vt 0.780172 0.733696 +vt 0.767241 0.711957 +vt 0.780172 0.722826 +vt 0.715517 0.711957 +vt 0.728448 0.701087 +vt 0.741379 0.695652 +vt 0.754310 0.701087 +vt 0.702586 0.722826 +vt 0.793103 0.728261 +vt 0.702586 0.733696 +vt 0.689655 0.728261 +vt 0.689655 0.695652 +vt 0.702586 0.652174 +vt 0.702586 0.695652 +vt 0.767241 0.695652 +vt 0.780172 0.652174 +vt 0.780172 0.695652 +vt 0.793103 0.652174 +vt 0.793103 0.695652 +vt 0.715517 0.695652 +vt 0.728448 0.652174 +vt 0.728448 0.695652 +vt 0.754310 0.652174 +vt 0.754310 0.695652 +vt 0.715517 0.652174 +vt 0.741379 0.652174 +vt 0.767241 0.652174 +vt 0.935345 0.902174 +vt 0.948276 0.891304 +vt 0.948276 0.902174 +vt 0.961207 0.902174 +vt 0.974138 0.891304 +vt 0.974138 0.902174 +vt 0.987069 0.891304 +vt 0.987069 0.902174 +vt 0.896552 0.902174 +vt 0.909483 0.891304 +vt 0.909483 0.902174 +vt 0.922414 0.902174 +vt 0.935345 0.891304 +vt 0.961207 0.891304 +vt 1.000000 0.891304 +vt 1.000000 0.902174 +vt 0.922414 0.891304 +vt 0.935345 0.885870 +vt 0.922414 0.858696 +vt 0.935345 0.858696 +vt 0.961207 0.858696 +vt 0.961207 0.885870 +vt 0.909483 0.864130 +vt 0.922414 0.875000 +vt 0.948276 0.858696 +vt 0.974138 0.858696 +vt 0.974138 0.875000 +vt 0.987069 0.864130 +vt 0.987069 0.858696 +vt 0.961207 0.831522 +vt 0.974138 0.842391 +vt 0.987069 0.853261 +vt 0.935345 0.831522 +vt 0.948276 0.826087 +vt 0.909483 0.858696 +vt 0.922414 0.842391 +vt 1.000000 0.858696 +vt 0.896552 0.858696 +vt 0.909483 0.853261 +vt 0.896552 0.826087 +vt 0.909483 0.673913 +vt 0.909483 0.826087 +vt 0.974138 0.826087 +vt 0.987069 0.673913 +vt 0.987069 0.826087 +vt 1.000000 0.673913 +vt 1.000000 0.826087 +vt 0.922414 0.826087 +vt 0.935345 0.673913 +vt 0.935345 0.826087 +vt 0.961207 0.673913 +vt 0.961207 0.826087 +vt 0.922414 0.673913 +vt 0.948276 0.673913 +vt 0.974138 0.673913 +vt 0.922414 0.657609 +vt 0.909483 0.641304 +vt 0.922414 0.641304 +vt 0.961207 0.646739 +vt 0.974138 0.641304 +vt 0.974138 0.657609 +vt 0.896552 0.673913 +vt 0.909483 0.668478 +vt 0.987069 0.641304 +vt 0.987069 0.668478 +vt 0.935345 0.646739 +vt 0.935345 0.641304 +vt 1.000000 0.641304 +vt 0.987069 0.614130 +vt 1.000000 0.608696 +vt 0.909483 0.614130 +vt 0.922414 0.625000 +vt 0.961207 0.635870 +vt 0.974138 0.625000 +vt 0.896552 0.641304 +vt 0.935345 0.635870 +vt 0.948276 0.641304 +vt 0.961207 0.641304 +vt 0.948276 0.440217 +vt 0.974138 0.456522 +vt 0.948276 0.456522 +vt 0.948276 0.472826 +vt 0.974138 0.489130 +vt 0.948276 0.489130 +vt 0.974138 0.505435 +vt 0.948276 0.505435 +vt 0.948276 0.391304 +vt 0.974138 0.407609 +vt 0.948276 0.407609 +vt 0.948276 0.423913 +vt 0.974138 0.440217 +vt 0.974138 0.472826 +vt 0.974138 0.521739 +vt 0.948276 0.521739 +vt 0.974138 0.423913 +vt 0.948276 0.309783 +vt 0.974138 0.326087 +vt 0.948276 0.326087 +vt 0.948276 0.342391 +vt 0.974138 0.358696 +vt 0.948276 0.358696 +vt 0.974138 0.375000 +vt 0.948276 0.375000 +vt 0.948276 0.260870 +vt 0.974138 0.277174 +vt 0.948276 0.277174 +vt 0.948276 0.293478 +vt 0.974138 0.309783 +vt 0.974138 0.342391 +vt 0.974138 0.391304 +vt 0.948276 0.391304 +vt 0.974138 0.293478 +vt 0.857759 0.755435 +vt 0.870690 0.728261 +vt 0.870690 0.744565 +vt 0.831897 0.755435 +vt 0.844828 0.728261 +vt 0.844828 0.760870 +vt 0.806035 0.733696 +vt 0.818965 0.728261 +vt 0.818965 0.744565 +vt 0.857759 0.728261 +vt 0.831897 0.728261 +vt 0.806035 0.771739 +vt 0.818965 0.760870 +vt 0.818965 0.771739 +vt 0.883621 0.771739 +vt 0.896552 0.760870 +vt 0.896552 0.771739 +vt 0.844828 0.771739 +vt 0.857759 0.760870 +vt 0.857759 0.771739 +vt 0.831897 0.760870 +vt 0.831897 0.771739 +vt 0.793103 0.771739 +vt 0.806035 0.760870 +vt 0.987069 0.608696 +vt 1.000000 0.597826 +vt 0.909483 0.608696 +vt 0.922414 0.597826 +vt 0.922414 0.608696 +vt 0.961207 0.608696 +vt 0.974138 0.597826 +vt 0.974138 0.608696 +vt 0.935345 0.608696 +vt 0.948276 0.597826 +vt 0.948276 0.608696 +vt 0.896552 0.608696 +vt 0.909483 0.597826 +vt 0.961207 0.597826 +vt 0.987069 0.597826 +vt 0.935345 0.597826 +vt 0.961207 0.592391 +vt 0.948276 0.565217 +vt 0.961207 0.565217 +vt 0.987069 0.592391 +vt 1.000000 0.565217 +vt 1.000000 0.581522 +vt 0.974138 0.565217 +vt 0.935345 0.570652 +vt 0.948276 0.581522 +vt 0.909483 0.570652 +vt 0.896552 0.565217 +vt 0.909483 0.565217 +vt 0.987069 0.565217 +vt 0.974138 0.532609 +vt 0.987069 0.538043 +vt 0.961207 0.538043 +vt 1.000000 0.548913 +vt 0.935345 0.565217 +vt 0.948276 0.548913 +vt 0.909483 0.559783 +vt 0.922414 0.565217 +vt 0.935345 0.559783 +vt 0.948276 0.532609 +vt 0.961207 0.521739 +vt 0.961207 0.532609 +vt 0.987069 0.532609 +vt 1.000000 0.521739 +vt 1.000000 0.532609 +vt 0.974138 0.521739 +vt 0.922414 0.532609 +vt 0.935345 0.521739 +vt 0.935345 0.532609 +vt 0.948276 0.521739 +vt 0.909483 0.532609 +vt 0.922414 0.521739 +vt 0.896552 0.532609 +vt 0.909483 0.521739 +vt 0.987069 0.521739 +vt 0.870690 0.771739 +vt 0.883621 0.760870 +vt 0.870690 0.760870 +vt 0.883621 0.728261 +vt 0.883621 0.733696 +vt 0.870690 0.711957 +vt 0.883621 0.722826 +vt 0.831897 0.701087 +vt 0.857759 0.701087 +vt 0.806035 0.722826 +vt 0.818965 0.711957 +vt 0.844828 0.695652 +vt 0.896552 0.728261 +vt 0.793103 0.728261 +vt 0.806035 0.728261 +vt 0.793103 0.695652 +vt 0.806035 0.652174 +vt 0.806035 0.695652 +vt 0.870690 0.695652 +vt 0.883621 0.652174 +vt 0.883621 0.695652 +vt 0.896552 0.652174 +vt 0.896552 0.695652 +vt 0.818965 0.695652 +vt 0.831897 0.652174 +vt 0.831897 0.695652 +vt 0.857759 0.652174 +vt 0.857759 0.695652 +vt 0.818965 0.652174 +vt 0.844828 0.652174 +vt 0.870690 0.652174 +vt 0.728448 0.771739 +vt 0.741379 0.760870 +vt 0.741379 0.771739 +vt 0.754310 0.771739 +vt 0.767241 0.760870 +vt 0.767241 0.771739 +vt 0.780172 0.760870 +vt 0.780172 0.771739 +vt 0.689655 0.771739 +vt 0.702586 0.760870 +vt 0.702586 0.771739 +vt 0.715517 0.771739 +vt 0.728448 0.760870 +vt 0.754310 0.760870 +vt 0.793103 0.760870 +vt 0.793103 0.771739 +vt 0.715517 0.760870 +vt 0.715517 0.744565 +vt 0.728448 0.728261 +vt 0.728448 0.755435 +vt 0.754310 0.728261 +vt 0.754310 0.755435 +vt 0.702586 0.728261 +vt 0.715517 0.728261 +vt 0.741379 0.728261 +vt 0.767241 0.728261 +vt 0.767241 0.744565 +vt 0.780172 0.728261 +vt 0.780172 0.733696 +vt 0.754310 0.701087 +vt 0.767241 0.711957 +vt 0.780172 0.722826 +vt 0.728448 0.701087 +vt 0.702586 0.722826 +vt 0.715517 0.711957 +vt 0.741379 0.695652 +vt 0.793103 0.728261 +vt 0.702586 0.733696 +vt 0.689655 0.728261 +vt 0.689655 0.695652 +vt 0.702586 0.652174 +vt 0.702586 0.695652 +vt 0.767241 0.695652 +vt 0.780172 0.652174 +vt 0.780172 0.695652 +vt 0.793103 0.652174 +vt 0.793103 0.695652 +vt 0.715517 0.695652 +vt 0.728448 0.652174 +vt 0.728448 0.695652 +vt 0.754310 0.652174 +vt 0.754310 0.695652 +vt 0.715517 0.652174 +vt 0.741379 0.652174 +vt 0.767241 0.652174 +vt 0.831897 0.771739 +vt 0.844828 0.760870 +vt 0.844828 0.771739 +vt 0.857759 0.771739 +vt 0.870690 0.760870 +vt 0.870690 0.771739 +vt 0.883621 0.760870 +vt 0.883621 0.771739 +vt 0.793103 0.771739 +vt 0.806035 0.760870 +vt 0.806035 0.771739 +vt 0.818965 0.771739 +vt 0.831897 0.760870 +vt 0.857759 0.760870 +vt 0.896552 0.760870 +vt 0.896552 0.771739 +vt 0.818965 0.760870 +vt 0.831897 0.755435 +vt 0.818965 0.728261 +vt 0.831897 0.728261 +vt 0.857759 0.728261 +vt 0.857759 0.755435 +vt 0.806035 0.733696 +vt 0.818965 0.744565 +vt 0.844828 0.728261 +vt 0.870690 0.728261 +vt 0.870690 0.744565 +vt 0.883621 0.728261 +vt 0.883621 0.733696 +vt 0.870690 0.711957 +vt 0.883621 0.722826 +vt 0.831897 0.701087 +vt 0.857759 0.701087 +vt 0.806035 0.722826 +vt 0.818965 0.711957 +vt 0.844828 0.695652 +vt 0.896552 0.728261 +vt 0.793103 0.728261 +vt 0.806035 0.728261 +vt 0.793103 0.695652 +vt 0.806035 0.652174 +vt 0.806035 0.695652 +vt 0.870690 0.695652 +vt 0.883621 0.652174 +vt 0.883621 0.695652 +vt 0.896552 0.652174 +vt 0.896552 0.695652 +vt 0.818965 0.695652 +vt 0.831897 0.652174 +vt 0.831897 0.695652 +vt 0.857759 0.652174 +vt 0.857759 0.695652 +vt 0.818965 0.652174 +vt 0.844828 0.652174 +vt 0.870690 0.652174 +vt 0.728448 0.771739 +vt 0.741379 0.760870 +vt 0.741379 0.771739 +vt 0.754310 0.771739 +vt 0.767241 0.760870 +vt 0.767241 0.771739 +vt 0.780172 0.760870 +vt 0.780172 0.771739 +vt 0.689655 0.771739 +vt 0.702586 0.760870 +vt 0.702586 0.771739 +vt 0.715517 0.771739 +vt 0.728448 0.760870 +vt 0.754310 0.760870 +vt 0.793103 0.760870 +vt 0.793103 0.771739 +vt 0.715517 0.760870 +vt 0.728448 0.755435 +vt 0.715517 0.728261 +vt 0.728448 0.728261 +vt 0.754310 0.728261 +vt 0.754310 0.755435 +vt 0.715517 0.744565 +vt 0.702586 0.728261 +vt 0.741379 0.728261 +vt 0.767241 0.744565 +vt 0.767241 0.728261 +vt 0.780172 0.728261 +vt 0.780172 0.733696 +vt 0.754310 0.701087 +vt 0.767241 0.711957 +vt 0.780172 0.722826 +vt 0.728448 0.701087 +vt 0.702586 0.722826 +vt 0.715517 0.711957 +vt 0.741379 0.695652 +vt 0.793103 0.728261 +vt 0.702586 0.733696 +vt 0.689655 0.728261 +vt 0.689655 0.695652 +vt 0.702586 0.652174 +vt 0.702586 0.695652 +vt 0.767241 0.695652 +vt 0.780172 0.652174 +vt 0.780172 0.695652 +vt 0.793103 0.652174 +vt 0.793103 0.695652 +vt 0.715517 0.695652 +vt 0.728448 0.652174 +vt 0.728448 0.695652 +vt 0.754310 0.652174 +vt 0.754310 0.695652 +vt 0.715517 0.652174 +vt 0.741379 0.652174 +vt 0.767241 0.652174 +vt 0.857759 0.755435 +vt 0.870690 0.728261 +vt 0.870690 0.744565 +vt 0.844828 0.760870 +vt 0.831897 0.728261 +vt 0.844828 0.728261 +vt 0.806035 0.733696 +vt 0.818965 0.728261 +vt 0.818965 0.744565 +vt 0.857759 0.728261 +vt 0.831897 0.755435 +vt 0.806035 0.771739 +vt 0.818965 0.760870 +vt 0.818965 0.771739 +vt 0.883621 0.771739 +vt 0.896552 0.760870 +vt 0.896552 0.771739 +vt 0.844828 0.771739 +vt 0.857759 0.760870 +vt 0.857759 0.771739 +vt 0.831897 0.760870 +vt 0.831897 0.771739 +vt 0.793103 0.771739 +vt 0.806035 0.760870 +vt 0.870690 0.771739 +vt 0.883621 0.760870 +vt 0.870690 0.760870 +vt 0.883621 0.728261 +vt 0.883621 0.733696 +vt 0.857759 0.701087 +vt 0.870690 0.711957 +vt 0.883621 0.722826 +vt 0.831897 0.701087 +vt 0.844828 0.695652 +vt 0.806035 0.728261 +vt 0.818965 0.711957 +vt 0.896552 0.728261 +vt 0.793103 0.728261 +vt 0.806035 0.722826 +vt 0.793103 0.695652 +vt 0.806035 0.652174 +vt 0.806035 0.695652 +vt 0.870690 0.695652 +vt 0.883621 0.652174 +vt 0.883621 0.695652 +vt 0.896552 0.652174 +vt 0.896552 0.695652 +vt 0.818965 0.695652 +vt 0.831897 0.652174 +vt 0.831897 0.695652 +vt 0.857759 0.652174 +vt 0.857759 0.695652 +vt 0.818965 0.652174 +vt 0.844828 0.652174 +vt 0.870690 0.652174 +vt 0.728448 0.771739 +vt 0.741379 0.760870 +vt 0.741379 0.771739 +vt 0.754310 0.771739 +vt 0.767241 0.760870 +vt 0.767241 0.771739 +vt 0.780172 0.760870 +vt 0.780172 0.771739 +vt 0.689655 0.771739 +vt 0.702586 0.760870 +vt 0.702586 0.771739 +vt 0.715517 0.771739 +vt 0.728448 0.760870 +vt 0.754310 0.760870 +vt 0.793103 0.760870 +vt 0.793103 0.771739 +vt 0.715517 0.760870 +vt 0.715517 0.744565 +vt 0.728448 0.728261 +vt 0.728448 0.755435 +vt 0.754310 0.728261 +vt 0.754310 0.755435 +vt 0.702586 0.728261 +vt 0.715517 0.728261 +vt 0.741379 0.728261 +vt 0.767241 0.728261 +vt 0.767241 0.744565 +vt 0.780172 0.728261 +vt 0.780172 0.733696 +vt 0.767241 0.711957 +vt 0.780172 0.722826 +vt 0.728448 0.701087 +vt 0.741379 0.695652 +vt 0.754310 0.701087 +vt 0.715517 0.711957 +vt 0.793103 0.728261 +vt 0.702586 0.733696 +vt 0.689655 0.728261 +vt 0.702586 0.722826 +vt 0.689655 0.695652 +vt 0.702586 0.652174 +vt 0.702586 0.695652 +vt 0.767241 0.695652 +vt 0.780172 0.652174 +vt 0.780172 0.695652 +vt 0.793103 0.652174 +vt 0.793103 0.695652 +vt 0.715517 0.695652 +vt 0.728448 0.652174 +vt 0.728448 0.695652 +vt 0.754310 0.652174 +vt 0.754310 0.695652 +vt 0.715517 0.652174 +vt 0.741379 0.652174 +vt 0.767241 0.652174 +vt 0.793103 0.760870 +vt 0.793103 0.652174 +vt 0.689655 0.760870 +vt 0.689655 0.652174 +vt 0.896552 0.891304 +vt 0.974138 0.391304 +vt 0.974138 0.260870 +vt 0.793103 0.760870 +vt 0.896552 0.597826 +vt 0.896552 0.581522 +vt 0.896552 0.548913 +vt 0.896552 0.521739 +vt 0.793103 0.652174 +vt 0.689655 0.760870 +vt 0.689655 0.652174 +vt 0.793103 0.760870 +vt 0.793103 0.652174 +vt 0.689655 0.760870 +vt 0.689655 0.652174 +vt 0.793103 0.760870 +vt 0.793103 0.652174 +vt 0.689655 0.760870 +vt 0.689655 0.652174 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.7071 0.0000 0.7071 +vn -0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 -0.7071 +vn -0.7071 0.0000 0.7071 +vn -0.4851 0.7276 -0.4851 +vn 0.4851 0.7276 0.4851 +vn 0.5547 0.8321 0.0000 +vn -0.5547 0.8321 0.0000 +vn 0.0000 0.8321 -0.5547 +vn -0.4851 0.7276 0.4851 +vn 0.4851 0.7276 -0.4851 +vn 0.0000 0.8321 0.5547 +vn 0.0000 0.7071 0.7071 +vn 0.1866 0.9824 0.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.0196 0.0473 -0.9987 +vn -0.1363 -0.6737 -0.7263 +vn 0.0000 -0.7071 -0.7071 +vn -0.1363 -0.6737 0.7263 +vn 0.0000 -0.7071 0.7071 +vn 0.1447 0.7194 0.6794 +vn 0.1447 0.7194 -0.6794 +vn -0.7071 -0.7071 0.0000 +vn 0.0196 0.0473 0.9987 +vn 0.0670 0.0670 0.9955 +vn 0.5293 0.5293 0.6630 +vn 0.5293 0.5293 -0.6630 +vn 0.7071 0.7071 0.0000 +vn 0.0670 0.0670 -0.9955 +vn -0.4617 -0.4617 -0.7573 +vn 0.0473 0.0196 -0.9987 +vn -0.6737 -0.1363 -0.7263 +vn 0.7194 0.1447 0.6794 +vn 0.7194 0.1447 -0.6794 +vn -0.6737 -0.1363 0.7263 +vn 0.0473 0.0196 0.9987 +vn 0.9824 0.1866 0.0000 +vn -0.4617 -0.4617 0.7573 +vn -0.7071 0.7071 0.0000 +vn 0.0000 0.9824 0.1866 +vn 0.9987 0.0473 0.0196 +vn 0.7263 -0.6737 -0.1363 +vn 0.7071 -0.7071 0.0000 +vn -0.7263 -0.6737 -0.1363 +vn -0.6794 0.7194 0.1447 +vn 0.6794 0.7194 0.1447 +vn -0.9987 0.0473 0.0196 +vn -0.9955 0.0670 0.0670 +vn -0.6630 0.5293 0.5293 +vn 0.6630 0.5293 0.5293 +vn 0.9955 0.0670 0.0670 +vn 0.7573 -0.4617 -0.4617 +vn 0.6794 0.1447 0.7194 +vn 0.9987 0.0196 0.0473 +vn 0.7263 -0.1363 -0.6737 +vn -0.6794 0.1447 0.7194 +vn 0.0000 0.1866 0.9824 +vn -0.7573 -0.4617 -0.4617 +vn -0.9987 0.0196 0.0473 +vn -0.7263 -0.1363 -0.6737 +vn -0.6794 -0.1447 -0.7194 +vn 0.6794 -0.1447 -0.7194 +vn 0.0000 -0.1866 -0.9824 +vn -0.7263 0.1363 0.6737 +vn 0.7263 0.1363 0.6737 +vn -0.9987 -0.0196 -0.0473 +vn 0.9987 -0.0196 -0.0473 +vn -0.6630 -0.5293 -0.5293 +vn -0.9955 -0.0670 -0.0670 +vn 0.9955 -0.0670 -0.0670 +vn 0.6630 -0.5293 -0.5293 +vn -0.7573 0.4617 0.4617 +vn 0.6794 -0.7194 -0.1447 +vn 0.0000 -0.9824 -0.1866 +vn -0.6794 -0.7194 -0.1447 +vn -0.9987 -0.0473 -0.0196 +vn 0.7263 0.6737 0.1363 +vn 0.9987 -0.0473 -0.0196 +vn -0.7263 0.6737 0.1363 +vn 0.7573 0.4617 0.4617 +vn -0.1447 0.7194 0.6794 +vn -0.0670 0.0670 0.9955 +vn -0.0196 0.0473 0.9987 +vn -0.1447 0.7194 -0.6794 +vn -0.1866 0.9824 0.0000 +vn 0.1363 -0.6737 -0.7263 +vn -0.0670 0.0670 -0.9955 +vn -0.0196 0.0473 -0.9987 +vn -0.5293 0.5293 0.6630 +vn -0.5293 0.5293 -0.6630 +vn 0.0473 -0.9987 0.0196 +vn 0.9824 0.0000 0.1866 +vn 0.0473 0.9987 0.0196 +vn -0.6737 -0.7263 -0.1363 +vn 0.7194 0.6794 0.1447 +vn 0.7194 -0.6794 0.1447 +vn -0.6737 0.7263 -0.1363 +vn 0.0670 0.9955 0.0670 +vn 0.5293 0.6630 0.5293 +vn 0.0670 -0.9955 0.0670 +vn -0.4617 -0.7573 -0.4617 +vn 0.5293 -0.6630 0.5293 +vn 0.1866 0.0000 0.9824 +vn 0.1447 -0.6794 0.7194 +vn 0.1447 0.6794 0.7194 +vn 0.0196 -0.9987 0.0473 +vn -0.4617 0.7573 -0.4617 +vn 0.0196 0.9987 0.0473 +vn -0.1363 -0.7263 -0.6737 +vn -0.1363 0.7263 -0.6737 +vn 0.1363 -0.6737 0.7263 +vn 0.4617 -0.4617 0.7573 +vn -0.0473 0.0196 0.9987 +vn 0.6737 -0.1363 0.7263 +vn -0.7194 0.1447 -0.6794 +vn -0.7194 0.1447 0.6794 +vn 0.6737 -0.1363 -0.7263 +vn -0.0473 0.0196 -0.9987 +vn -0.9824 0.1866 0.0000 +vn 0.4617 -0.4617 -0.7573 +vn 0.0000 0.9824 -0.1866 +vn -0.9987 0.0473 -0.0196 +vn -0.7263 -0.6737 0.1363 +vn 0.7263 -0.6737 0.1363 +vn 0.6794 0.7194 -0.1447 +vn -0.6794 0.7194 -0.1447 +vn 0.9987 0.0473 -0.0196 +vn 0.9955 0.0670 -0.0670 +vn 0.6630 0.5293 -0.5293 +vn -0.6630 0.5293 -0.5293 +vn -0.9955 0.0670 -0.0670 +vn -0.7573 -0.4617 0.4617 +vn -0.9987 0.0196 -0.0473 +vn -0.7263 -0.1363 0.6737 +vn 0.6794 0.1447 -0.7194 +vn -0.6794 0.1447 -0.7194 +vn 0.7263 -0.1363 0.6737 +vn 0.9987 0.0196 -0.0473 +vn 0.0000 0.1866 -0.9824 +vn 0.7573 -0.4617 0.4617 +s off +f 19/29/7 18/30/7 17/31/7 +f 302/32/8 28/33/8 301/34/8 +f 18/35/9 22/36/9 17/37/9 +f 29/38/10 20/39/10 19/40/10 +f 303/41/8 306/42/8 305/43/8 +f 25/44/11 29/38/11 19/45/11 +f 23/46/12 25/47/12 22/36/12 +f 27/48/12 29/38/12 30/49/12 +f 24/50/10 305/43/10 21/51/10 +f 21/52/7 306/42/7 301/53/7 +f 26/54/9 30/49/9 25/47/9 +f 31/55/11 41/56/11 33/57/11 +f 40/58/13 35/59/13 32/60/13 +f 41/56/14 38/61/14 33/57/14 +f 35/59/9 45/62/9 37/63/9 +f 38/61/10 44/64/10 36/65/10 +f 36/65/15 42/66/15 34/67/15 +f 37/63/16 39/68/16 31/69/16 +f 34/67/8 40/58/8 32/60/8 +f 41/70/17 47/71/17 46/72/17 +f 40/58/18 50/73/18 43/74/18 +f 42/66/19 50/73/19 40/58/19 +f 47/71/20 39/75/20 48/76/20 +f 46/72/21 49/77/21 44/78/21 +f 45/79/22 48/76/22 39/75/22 +f 49/80/8 62/81/8 50/82/8 +f 44/78/23 49/77/23 42/66/23 +f 50/73/24 45/79/24 43/74/24 +f 61/83/12 60/84/12 62/81/12 +f 56/85/12 57/86/12 55/87/12 +f 54/88/8 56/85/8 52/89/8 +f 51/90/11 57/91/11 53/92/11 +f 47/93/10 61/83/10 49/94/10 +f 52/89/9 55/87/9 51/90/9 +f 50/95/9 60/84/9 48/96/9 +f 48/97/11 59/98/11 47/99/11 +f 237/100/12 235/101/12 236/102/12 +f 233/103/10 238/104/10 234/105/10 +f 232/106/9 236/102/9 231/107/9 +f 234/108/8 237/100/8 232/109/8 +f 231/110/11 235/101/11 233/111/11 +f 245/112/12 243/113/12 244/114/12 +f 241/115/10 246/116/10 242/117/10 +f 239/118/9 245/119/9 244/120/9 +f 261/121/12 259/122/12 260/123/12 +f 257/124/10 262/125/10 258/126/10 +f 256/127/9 260/128/9 255/129/9 +f 258/126/8 261/121/8 256/130/8 +f 255/129/11 259/131/11 257/124/11 +f 543/132/12 541/133/12 542/134/12 +f 296/135/12 294/136/12 293/137/12 +f 245/119/9 296/135/9 293/137/9 +f 245/112/11 294/136/11 246/138/11 +f 242/139/8 296/135/8 240/140/8 +f 246/116/10 295/141/10 242/117/10 +f 301/142/9 304/143/9 302/144/9 +f 302/145/12 303/41/12 24/146/12 +f 28/33/8 21/147/8 301/34/8 +f 20/148/8 24/149/8 18/30/8 +f 21/147/8 26/150/8 24/149/8 +f 18/30/8 26/150/8 23/151/8 +f 309/152/8 308/153/8 310/154/8 +f 312/155/10 316/156/10 313/157/10 +f 313/157/8 315/158/8 311/159/8 +f 318/160/10 322/161/10 319/162/10 +f 317/163/11 320/164/11 318/160/11 +f 327/165/12 328/166/12 326/167/12 +f 320/164/12 321/168/12 322/169/12 +f 324/170/9 327/165/9 323/171/9 +f 316/156/12 314/172/12 315/173/12 +f 323/171/11 326/174/11 325/175/11 +f 25/44/11 17/176/11 22/177/11 +f 539/178/10 544/179/10 540/180/10 +f 538/181/9 542/134/9 537/182/9 +f 540/183/8 543/132/8 538/184/8 +f 537/185/11 541/133/11 539/186/11 +f 551/187/12 549/188/12 550/189/12 +f 547/190/10 552/191/10 548/192/10 +f 545/193/9 551/194/9 550/195/9 +f 556/196/12 554/197/12 553/198/12 +f 551/194/9 556/196/9 553/198/9 +f 551/187/11 554/197/11 552/199/11 +f 548/200/8 556/196/8 546/201/8 +f 552/191/10 555/202/10 548/192/10 +f 19/29/7 20/148/7 18/30/7 +f 302/32/8 20/148/8 28/33/8 +f 18/35/9 23/46/9 22/36/9 +f 29/38/10 28/33/10 20/39/10 +f 303/41/8 304/143/8 306/42/8 +f 25/44/11 30/49/11 29/38/11 +f 23/46/12 26/54/12 25/47/12 +f 27/48/12 28/33/12 29/38/12 +f 24/50/10 303/41/10 305/43/10 +f 21/52/7 305/43/7 306/42/7 +f 26/54/9 27/48/9 30/49/9 +f 31/55/11 39/203/11 41/56/11 +f 40/58/13 43/204/13 35/59/13 +f 41/56/14 46/205/14 38/61/14 +f 35/59/9 43/204/9 45/62/9 +f 38/61/10 46/205/10 44/64/10 +f 36/65/15 44/64/15 42/66/15 +f 37/63/16 45/62/16 39/68/16 +f 34/67/8 42/66/8 40/58/8 +f 42/66/19 49/77/19 50/73/19 +f 47/71/20 41/70/20 39/75/20 +f 46/72/21 47/71/21 49/77/21 +f 49/80/8 61/83/8 62/81/8 +f 50/73/24 48/76/24 45/79/24 +f 61/83/12 59/98/12 60/84/12 +f 56/85/12 58/206/12 57/86/12 +f 54/88/8 58/207/8 56/85/8 +f 51/90/11 55/87/11 57/91/11 +f 47/93/10 59/98/10 61/83/10 +f 52/89/9 56/85/9 55/87/9 +f 50/95/9 62/81/9 60/84/9 +f 48/97/11 60/84/11 59/98/11 +f 237/100/12 238/104/12 235/101/12 +f 233/103/10 235/101/10 238/104/10 +f 232/106/9 237/100/9 236/102/9 +f 234/108/8 238/104/8 237/100/8 +f 231/110/11 236/102/11 235/101/11 +f 245/112/12 246/138/12 243/113/12 +f 241/115/10 243/208/10 246/116/10 +f 239/118/9 240/209/9 245/119/9 +f 261/121/12 262/125/12 259/122/12 +f 257/124/10 259/131/10 262/125/10 +f 256/127/9 261/210/9 260/128/9 +f 258/126/8 262/125/8 261/121/8 +f 255/129/11 260/128/11 259/131/11 +f 543/132/12 544/179/12 541/133/12 +f 296/135/12 295/141/12 294/136/12 +f 245/119/9 240/209/9 296/135/9 +f 245/112/11 293/137/11 294/136/11 +f 242/139/8 295/141/8 296/135/8 +f 246/116/10 294/136/10 295/141/10 +f 301/142/9 306/42/9 304/143/9 +f 302/145/12 304/143/12 303/41/12 +f 28/33/8 27/48/8 21/147/8 +f 20/148/8 302/32/8 24/149/8 +f 21/147/8 27/48/8 26/150/8 +f 18/30/8 24/149/8 26/150/8 +f 309/152/8 307/211/8 308/153/8 +f 312/155/10 314/172/10 316/156/10 +f 313/157/8 316/156/8 315/158/8 +f 318/160/10 320/164/10 322/161/10 +f 317/163/11 321/168/11 320/164/11 +f 324/170/9 328/166/9 327/165/9 +f 323/171/11 327/165/11 326/174/11 +f 25/44/11 19/45/11 17/176/11 +f 539/178/10 541/133/10 544/179/10 +f 538/181/9 543/132/9 542/134/9 +f 540/183/8 544/179/8 543/132/8 +f 537/185/11 542/134/11 541/133/11 +f 551/187/12 552/199/12 549/188/12 +f 547/190/10 549/212/10 552/191/10 +f 545/193/9 546/213/9 551/194/9 +f 556/196/12 555/202/12 554/197/12 +f 551/194/9 546/213/9 556/196/9 +f 551/187/11 553/198/11 554/197/11 +f 548/200/8 555/202/8 556/196/8 +f 552/191/10 554/197/10 555/202/10 +s 1 +f 66/214/25 73/215/26 65/216/12 +f 64/217/27 71/218/28 63/219/10 +f 63/219/10 78/220/29 70/221/30 +f 69/222/7 76/223/31 68/224/32 +f 67/225/9 74/226/33 66/214/25 +f 65/216/12 72/227/34 64/217/27 +f 70/221/30 77/228/35 69/229/7 +f 68/224/32 75/230/36 67/225/9 +f 74/231/33 83/232/37 82/233/38 +f 73/215/26 80/234/39 72/235/34 +f 76/236/31 83/232/37 75/237/36 +f 74/231/33 81/238/40 73/215/26 +f 72/235/34 79/239/41 71/240/28 +f 71/240/28 85/241/42 78/242/29 +f 80/234/39 86/243/43 79/239/41 +f 79/239/41 92/244/44 85/241/42 +f 83/232/37 89/245/45 82/233/38 +f 81/238/40 87/246/46 80/234/39 +f 83/232/37 91/247/47 90/248/48 +f 81/238/40 89/245/45 88/249/49 +f 78/242/29 85/241/42 77/250/35 +f 85/241/42 92/244/44 77/250/35 +f 76/236/31 77/251/35 84/252/50 +f 84/252/50 77/251/35 91/247/47 +f 77/253/35 99/254/16 91/255/47 +f 86/256/43 100/257/14 92/258/44 +f 92/258/44 93/259/11 77/260/35 +f 90/261/48 97/262/13 89/263/45 +f 88/249/49 95/264/15 87/265/46 +f 91/255/47 98/266/9 90/261/48 +f 89/263/45 96/267/8 88/249/49 +f 87/265/46 94/268/10 86/256/43 +f 104/269/25 111/270/26 103/271/12 +f 102/272/27 109/273/28 101/274/10 +f 101/274/10 116/275/29 108/276/30 +f 107/277/7 114/278/31 106/279/32 +f 105/280/9 112/281/33 104/269/25 +f 103/271/12 110/282/34 102/272/27 +f 108/276/30 115/283/35 107/284/7 +f 106/279/32 113/285/36 105/280/9 +f 112/286/33 121/287/37 120/288/38 +f 111/270/26 118/289/39 110/290/34 +f 113/291/36 122/292/50 121/287/37 +f 111/270/26 120/288/38 119/293/40 +f 110/290/34 117/294/41 109/295/28 +f 109/295/28 123/296/42 116/297/29 +f 118/289/39 124/298/43 117/294/41 +f 117/294/41 130/299/44 123/296/42 +f 120/288/38 128/300/48 127/301/45 +f 118/289/39 126/302/49 125/303/46 +f 121/287/37 129/304/47 128/300/48 +f 120/288/38 126/302/49 119/293/40 +f 116/297/29 123/296/42 115/305/35 +f 123/296/42 130/299/44 115/305/35 +f 114/306/31 115/307/35 122/292/50 +f 122/292/50 115/307/35 129/304/47 +f 115/308/35 137/309/16 129/310/47 +f 124/311/43 138/312/14 130/313/44 +f 130/313/44 131/314/11 115/315/35 +f 128/316/48 135/317/13 127/318/45 +f 126/302/49 133/319/15 125/320/46 +f 129/310/47 136/321/9 128/316/48 +f 127/318/45 134/322/8 126/302/49 +f 125/320/46 132/323/10 124/311/43 +f 142/324/51 149/325/52 141/326/12 +f 140/327/40 147/328/53 139/329/8 +f 139/329/8 154/330/54 146/331/55 +f 145/332/7 152/333/56 144/334/35 +f 143/335/11 150/336/57 142/324/51 +f 140/327/40 149/325/52 148/337/58 +f 146/331/55 153/338/30 145/339/7 +f 144/334/35 151/340/59 143/335/11 +f 150/341/57 159/342/60 158/343/61 +f 149/325/52 156/344/62 148/345/58 +f 152/346/56 159/342/60 151/347/59 +f 149/325/52 158/343/61 157/348/25 +f 148/345/58 155/349/63 147/350/53 +f 154/351/54 155/349/63 161/352/64 +f 155/349/63 163/353/65 162/354/66 +f 161/352/64 162/354/66 168/355/67 +f 159/342/60 165/356/68 158/343/61 +f 156/344/62 164/357/69 163/353/65 +f 160/358/70 166/359/71 159/342/60 +f 157/348/25 165/356/68 164/357/69 +f 154/351/54 161/352/64 153/360/30 +f 161/352/64 168/355/67 153/360/30 +f 152/346/56 153/361/30 160/358/70 +f 160/358/70 153/361/30 167/362/72 +f 153/363/30 175/364/73 167/365/72 +f 162/366/66 176/367/74 168/368/67 +f 168/368/67 169/369/75 153/370/30 +f 166/371/71 173/372/76 165/373/68 +f 164/357/69 171/374/77 163/375/65 +f 167/365/72 174/376/78 166/371/71 +f 165/373/68 172/377/25 164/357/69 +f 163/375/65 170/378/79 162/366/66 +f 174/379/78 182/380/80 181/381/81 +f 171/382/77 178/383/82 170/384/79 +f 169/385/75 182/380/80 175/386/73 +f 170/384/79 183/387/83 176/388/74 +f 173/389/76 181/381/81 180/390/84 +f 176/388/74 177/391/30 169/369/75 +f 177/391/30 190/392/85 184/393/86 +f 181/381/81 189/394/87 188/395/88 +f 178/383/82 186/396/89 185/397/90 +f 177/398/30 189/394/87 182/380/80 +f 178/383/82 190/392/85 183/387/83 +f 181/381/81 187/399/91 180/390/84 +f 171/382/77 172/400/25 179/401/92 +f 179/401/92 172/400/25 186/396/89 +f 173/389/76 180/390/84 172/400/25 +f 180/390/84 187/399/91 172/400/25 +f 194/402/51 201/403/12 193/404/12 +f 192/405/40 199/406/8 191/407/8 +f 191/407/8 206/408/55 198/409/55 +f 197/410/7 204/411/35 196/412/35 +f 195/413/11 202/414/51 194/402/51 +f 192/405/40 201/403/12 200/415/40 +f 198/409/55 205/416/7 197/417/7 +f 196/412/35 203/418/11 195/413/11 +f 210/419/51 217/420/12 209/421/12 +f 208/422/40 215/423/8 207/424/8 +f 207/424/8 222/425/55 214/426/55 +f 213/427/7 220/428/35 212/429/35 +f 211/430/11 218/431/51 210/419/51 +f 208/422/40 217/420/12 216/432/40 +f 214/426/55 221/433/7 213/434/7 +f 212/429/35 219/435/11 211/430/11 +f 249/436/93 226/437/94 250/438/95 +f 247/439/96 224/440/51 248/441/97 +f 229/442/98 329/443/99 230/444/100 +f 248/441/97 225/445/101 249/436/93 +f 247/439/96 329/443/99 223/446/102 +f 253/447/30 230/448/100 254/449/10 +f 251/450/32 228/451/55 252/452/7 +f 298/453/12 249/454/93 299/455/25 +f 254/449/10 247/456/96 297/457/27 +f 252/458/7 229/459/98 253/447/30 +f 190/460/85 264/461/103 184/393/86 +f 189/462/87 268/463/14 188/464/88 +f 186/465/89 265/466/104 185/467/90 +f 187/468/91 263/469/105 172/470/25 +f 184/471/86 269/472/106 189/462/87 +f 172/470/25 266/473/107 186/465/89 +f 185/467/90 270/474/108 190/460/85 +f 188/464/88 267/475/109 187/468/91 +f 266/476/107 271/477/110 274/478/111 +f 270/479/108 272/480/112 264/481/103 +f 266/476/107 273/482/13 265/466/104 +f 267/483/109 271/477/110 263/484/105 +f 269/485/106 272/486/112 276/487/113 +f 270/479/108 273/482/13 277/488/114 +f 277/488/114 280/489/115 284/490/116 +f 271/477/110 281/491/117 274/478/111 +f 272/480/112 284/490/116 279/492/118 +f 274/478/111 280/489/115 273/482/13 +f 275/493/119 278/494/120 271/477/110 +f 272/486/112 283/495/121 276/487/113 +f 269/485/106 276/487/113 268/496/14 +f 276/487/113 283/495/121 268/496/14 +f 267/483/109 268/496/14 275/493/119 +f 275/493/119 268/496/14 282/497/122 +f 278/498/120 289/499/25 281/500/117 +f 284/501/116 287/502/7 279/503/118 +f 281/500/117 288/504/9 280/489/115 +f 268/505/14 290/506/27 282/507/122 +f 282/507/122 286/508/12 278/498/120 +f 283/509/121 285/510/10 268/505/14 +f 279/511/118 291/512/30 283/509/121 +f 280/489/115 292/513/32 284/501/116 +f 300/514/9 227/515/123 251/450/32 +f 299/455/25 250/516/95 300/514/9 +f 297/457/27 248/441/97 298/453/12 +f 250/438/95 331/517/124 227/518/123 +f 225/445/101 332/519/125 226/437/94 +f 226/437/94 338/520/126 331/517/124 +f 329/443/99 335/521/127 223/446/102 +f 224/440/51 333/522/128 225/445/101 +f 329/443/99 337/523/129 336/524/130 +f 224/440/51 335/521/127 334/525/131 +f 227/518/123 331/517/124 228/526/55 +f 331/517/124 338/520/126 228/526/55 +f 229/442/98 228/527/55 330/528/132 +f 330/528/132 228/527/55 337/523/129 +f 228/529/55 345/530/15 337/531/129 +f 332/532/125 346/533/13 338/534/126 +f 338/534/126 339/535/8 228/536/55 +f 336/537/130 343/538/14 335/539/127 +f 334/525/131 341/540/16 333/541/128 +f 337/531/129 344/542/10 336/537/130 +f 335/539/127 342/543/11 334/525/131 +f 333/541/128 340/544/9 332/532/125 +f 350/545/27 357/546/97 349/547/12 +f 348/548/25 355/549/95 347/550/9 +f 347/550/9 362/551/123 354/552/32 +f 353/553/7 360/554/98 352/555/30 +f 351/556/10 358/557/96 350/545/27 +f 349/547/12 356/558/93 348/548/25 +f 354/552/32 361/559/55 353/560/7 +f 352/555/30 359/561/100 351/556/10 +f 359/562/100 366/563/102 358/564/96 +f 357/546/97 364/565/101 356/566/93 +f 359/562/100 368/567/132 367/568/99 +f 357/546/97 366/563/102 365/569/51 +f 356/566/93 363/570/94 355/571/95 +f 355/571/95 369/572/124 362/573/123 +f 363/570/94 371/574/128 370/575/125 +f 363/570/94 376/576/126 369/572/124 +f 367/568/99 373/577/127 366/563/102 +f 365/569/51 371/574/128 364/565/101 +f 367/568/99 375/578/129 374/579/130 +f 365/569/51 373/577/127 372/580/131 +f 362/573/123 369/572/124 361/581/55 +f 369/572/124 376/576/126 361/581/55 +f 360/582/98 361/583/55 368/567/132 +f 368/567/132 361/583/55 375/578/129 +f 361/584/55 383/585/15 375/586/129 +f 370/587/125 384/588/13 376/589/126 +f 376/589/126 377/590/8 361/591/55 +f 374/592/130 381/593/14 373/594/127 +f 372/580/131 379/595/16 371/596/128 +f 375/586/129 382/597/10 374/592/130 +f 373/594/127 380/598/11 372/580/131 +f 371/596/128 378/599/9 370/587/125 +f 388/600/40 395/601/133 387/602/12 +f 386/603/51 393/604/134 385/605/11 +f 385/605/11 400/606/135 392/607/35 +f 391/608/7 398/609/136 390/610/55 +f 389/611/8 396/612/137 388/600/40 +f 387/602/12 394/613/138 386/603/51 +f 392/607/35 399/614/32 391/615/7 +f 390/610/55 397/616/139 389/611/8 +f 396/617/137 405/618/140 404/619/141 +f 395/601/133 402/620/142 394/621/138 +f 398/622/136 405/618/140 397/623/139 +f 396/617/137 403/624/27 395/601/133 +f 394/621/138 401/625/143 393/626/134 +f 393/626/134 407/627/144 400/628/135 +f 402/620/142 408/629/145 401/625/143 +f 401/625/143 414/630/146 407/627/144 +f 405/618/140 411/631/147 404/619/141 +f 403/624/27 409/632/148 402/620/142 +f 405/618/140 413/633/149 412/634/150 +f 404/619/141 410/635/151 403/624/27 +f 400/628/135 407/627/144 399/636/32 +f 407/627/144 414/630/146 399/636/32 +f 398/622/136 399/637/32 406/638/152 +f 406/638/152 399/637/32 413/633/149 +f 399/639/32 421/640/13 413/641/149 +f 408/642/145 422/643/16 414/644/146 +f 414/644/146 415/645/9 399/646/32 +f 412/647/150 419/648/15 411/649/147 +f 410/635/151 417/650/14 409/651/148 +f 413/641/149 420/652/8 412/647/150 +f 411/649/147 418/653/10 410/635/151 +f 409/651/148 416/654/11 408/642/145 +f 426/655/40 433/656/133 425/657/12 +f 424/658/51 431/659/134 423/660/11 +f 423/660/11 438/661/135 430/662/35 +f 429/663/7 436/664/136 428/665/55 +f 427/666/8 434/667/137 426/655/40 +f 425/657/12 432/668/138 424/658/51 +f 430/662/35 437/669/32 429/670/7 +f 428/665/55 435/671/139 427/666/8 +f 434/672/137 443/673/140 442/674/141 +f 433/656/133 440/675/142 432/676/138 +f 435/677/139 444/678/152 443/673/140 +f 433/656/133 442/674/141 441/679/27 +f 431/680/134 440/675/142 439/681/143 +f 431/680/134 445/682/144 438/683/135 +f 439/681/143 447/684/148 446/685/145 +f 439/681/143 452/686/146 445/682/144 +f 443/673/140 449/687/147 442/674/141 +f 441/679/27 447/684/148 440/675/142 +f 443/673/140 451/688/149 450/689/150 +f 441/679/27 449/687/147 448/690/151 +f 438/683/135 445/682/144 437/691/32 +f 445/682/144 452/686/146 437/691/32 +f 436/692/136 437/693/32 444/678/152 +f 444/678/152 437/693/32 451/688/149 +f 437/694/32 459/695/13 451/696/149 +f 446/697/145 460/698/16 452/699/146 +f 452/699/146 453/700/9 437/701/32 +f 450/702/150 457/703/15 449/704/147 +f 448/690/151 455/705/14 447/706/148 +f 451/696/149 458/707/8 450/702/150 +f 449/704/147 456/708/10 448/690/151 +f 447/706/148 454/709/11 446/697/145 +f 471/710/58 464/711/63 472/712/53 +f 470/713/52 461/714/61 462/715/25 +f 467/716/56 481/717/60 468/718/59 +f 470/713/52 463/719/62 471/710/58 +f 469/720/57 481/717/60 461/714/61 +f 475/721/35 468/722/59 476/723/11 +f 473/724/55 466/725/30 474/726/7 +f 478/727/12 471/728/58 479/729/40 +f 476/723/11 469/730/57 477/731/51 +f 474/732/7 467/733/56 475/721/35 +f 480/734/8 465/735/54 473/724/55 +f 479/729/40 472/736/53 480/734/8 +f 477/731/51 470/713/52 478/727/12 +f 472/712/53 483/737/64 465/738/54 +f 464/711/63 485/739/65 484/740/66 +f 483/737/64 484/740/66 490/741/67 +f 481/717/60 487/742/68 461/714/61 +f 463/719/62 486/743/69 485/739/65 +f 482/744/70 488/745/71 481/717/60 +f 462/715/25 487/742/68 486/743/69 +f 465/738/54 483/737/64 466/746/30 +f 483/737/64 490/741/67 466/746/30 +f 467/716/56 466/747/30 482/744/70 +f 482/744/70 466/747/30 489/748/72 +f 466/749/30 497/750/14 489/751/72 +f 484/752/66 498/753/15 490/754/67 +f 490/754/67 491/755/10 466/756/30 +f 488/757/71 495/758/16 487/759/68 +f 486/743/69 493/760/13 485/761/65 +f 489/751/72 496/762/11 488/757/71 +f 487/759/68 494/763/9 486/743/69 +f 485/761/65 492/764/8 484/752/66 +f 502/765/51 509/766/52 501/767/12 +f 500/768/40 507/769/53 499/770/8 +f 499/770/8 514/771/54 506/772/55 +f 505/773/7 512/774/56 504/775/35 +f 503/776/11 510/777/57 502/765/51 +f 501/767/12 508/778/58 500/768/40 +f 506/772/55 513/779/30 505/780/7 +f 504/775/35 511/781/59 503/776/11 +f 511/782/59 518/783/61 510/784/57 +f 509/766/52 516/785/62 508/786/58 +f 511/782/59 520/787/70 519/788/60 +f 509/766/52 518/783/61 517/789/25 +f 508/786/58 515/790/63 507/791/53 +f 507/791/53 521/792/64 514/793/54 +f 516/785/62 522/794/66 515/790/63 +f 521/792/64 522/794/66 528/795/67 +f 519/788/60 525/796/68 518/783/61 +f 516/785/62 524/797/69 523/798/65 +f 520/787/70 526/799/71 519/788/60 +f 517/789/25 525/796/68 524/797/69 +f 514/793/54 521/792/64 513/800/30 +f 521/792/64 528/795/67 513/800/30 +f 512/801/56 513/802/30 520/787/70 +f 520/787/70 513/802/30 527/803/72 +f 513/804/30 535/805/14 527/806/72 +f 522/807/66 536/808/15 528/809/67 +f 528/809/67 529/810/10 513/811/30 +f 526/812/71 533/813/16 525/814/68 +f 524/797/69 531/815/13 523/816/65 +f 527/806/72 534/817/11 526/812/71 +f 525/814/68 532/818/9 524/797/69 +f 523/816/65 530/819/8 522/807/66 +f 66/214/25 74/226/33 73/215/26 +f 64/217/27 72/227/34 71/218/28 +f 63/219/10 71/218/28 78/220/29 +f 69/222/7 77/820/35 76/223/31 +f 67/225/9 75/230/36 74/226/33 +f 65/216/12 73/215/26 72/227/34 +f 70/221/30 78/220/29 77/228/35 +f 68/224/32 76/223/31 75/230/36 +f 74/231/33 75/237/36 83/232/37 +f 73/215/26 81/238/40 80/234/39 +f 76/236/31 84/252/50 83/232/37 +f 74/231/33 82/233/38 81/238/40 +f 72/235/34 80/234/39 79/239/41 +f 71/240/28 79/239/41 85/241/42 +f 80/234/39 87/246/46 86/243/43 +f 79/239/41 86/243/43 92/244/44 +f 83/232/37 90/248/48 89/245/45 +f 81/238/40 88/249/49 87/246/46 +f 83/232/37 84/252/50 91/247/47 +f 81/238/40 82/233/38 89/245/45 +f 77/253/35 93/821/11 99/254/16 +f 86/256/43 94/268/10 100/257/14 +f 92/258/44 100/257/14 93/259/11 +f 90/261/48 98/266/9 97/262/13 +f 88/249/49 96/267/8 95/264/15 +f 91/255/47 99/254/16 98/266/9 +f 89/263/45 97/262/13 96/267/8 +f 87/265/46 95/264/15 94/268/10 +f 104/269/25 112/281/33 111/270/26 +f 102/272/27 110/282/34 109/273/28 +f 101/274/10 109/273/28 116/275/29 +f 107/277/7 115/822/35 114/278/31 +f 105/280/9 113/285/36 112/281/33 +f 103/271/12 111/270/26 110/282/34 +f 108/276/30 116/275/29 115/283/35 +f 106/279/32 114/278/31 113/285/36 +f 112/286/33 113/291/36 121/287/37 +f 111/270/26 119/293/40 118/289/39 +f 113/291/36 114/306/31 122/292/50 +f 111/270/26 112/286/33 120/288/38 +f 110/290/34 118/289/39 117/294/41 +f 109/295/28 117/294/41 123/296/42 +f 118/289/39 125/303/46 124/298/43 +f 117/294/41 124/298/43 130/299/44 +f 120/288/38 121/287/37 128/300/48 +f 118/289/39 119/293/40 126/302/49 +f 121/287/37 122/292/50 129/304/47 +f 120/288/38 127/301/45 126/302/49 +f 115/308/35 131/823/11 137/309/16 +f 124/311/43 132/323/10 138/312/14 +f 130/313/44 138/312/14 131/314/11 +f 128/316/48 136/321/9 135/317/13 +f 126/302/49 134/322/8 133/319/15 +f 129/310/47 137/309/16 136/321/9 +f 127/318/45 135/317/13 134/322/8 +f 125/320/46 133/319/15 132/323/10 +f 142/324/51 150/336/57 149/325/52 +f 140/327/40 148/337/58 147/328/53 +f 139/329/8 147/328/53 154/330/54 +f 145/332/7 153/824/30 152/333/56 +f 143/335/11 151/340/59 150/336/57 +f 140/327/40 141/326/12 149/325/52 +f 146/331/55 154/330/54 153/338/30 +f 144/334/35 152/333/56 151/340/59 +f 150/341/57 151/347/59 159/342/60 +f 149/325/52 157/348/25 156/344/62 +f 152/346/56 160/358/70 159/342/60 +f 149/325/52 150/341/57 158/343/61 +f 148/345/58 156/344/62 155/349/63 +f 154/351/54 147/350/53 155/349/63 +f 155/349/63 156/344/62 163/353/65 +f 161/352/64 155/349/63 162/354/66 +f 159/342/60 166/359/71 165/356/68 +f 156/344/62 157/348/25 164/357/69 +f 160/358/70 167/362/72 166/359/71 +f 157/348/25 158/343/61 165/356/68 +f 153/363/30 169/385/75 175/364/73 +f 162/366/66 170/378/79 176/367/74 +f 168/368/67 176/367/74 169/369/75 +f 166/371/71 174/376/78 173/372/76 +f 164/357/69 172/377/25 171/374/77 +f 167/365/72 175/364/73 174/376/78 +f 165/373/68 173/372/76 172/377/25 +f 163/375/65 171/374/77 170/378/79 +f 174/379/78 175/386/73 182/380/80 +f 171/382/77 179/401/92 178/383/82 +f 169/385/75 177/398/30 182/380/80 +f 170/384/79 178/383/82 183/387/83 +f 173/389/76 174/379/78 181/381/81 +f 176/388/74 183/387/83 177/391/30 +f 177/391/30 183/387/83 190/392/85 +f 181/381/81 182/380/80 189/394/87 +f 178/383/82 179/401/92 186/396/89 +f 177/398/30 184/471/86 189/394/87 +f 178/383/82 185/397/90 190/392/85 +f 181/381/81 188/395/88 187/399/91 +f 194/402/51 202/414/51 201/403/12 +f 192/405/40 200/415/40 199/406/8 +f 191/407/8 199/406/8 206/408/55 +f 197/410/7 205/825/7 204/411/35 +f 195/413/11 203/418/11 202/414/51 +f 192/405/40 193/404/12 201/403/12 +f 198/409/55 206/408/55 205/416/7 +f 196/412/35 204/411/35 203/418/11 +f 210/419/51 218/431/51 217/420/12 +f 208/422/40 216/432/40 215/423/8 +f 207/424/8 215/423/8 222/425/55 +f 213/427/7 221/826/7 220/428/35 +f 211/430/11 219/435/11 218/431/51 +f 208/422/40 209/421/12 217/420/12 +f 214/426/55 222/425/55 221/433/7 +f 212/429/35 220/428/35 219/435/11 +f 249/436/93 225/445/101 226/437/94 +f 247/439/96 223/446/102 224/440/51 +f 229/442/98 330/528/132 329/443/99 +f 248/441/97 224/440/51 225/445/101 +f 247/439/96 230/444/100 329/443/99 +f 253/447/30 229/459/98 230/448/100 +f 251/450/32 227/515/123 228/451/55 +f 298/453/12 248/441/97 249/454/93 +f 254/449/10 230/448/100 247/456/96 +f 252/458/7 228/827/55 229/459/98 +f 190/460/85 270/474/108 264/461/103 +f 189/462/87 269/472/106 268/463/14 +f 186/465/89 266/473/107 265/466/104 +f 187/468/91 267/475/109 263/469/105 +f 184/471/86 264/828/103 269/472/106 +f 172/470/25 263/469/105 266/473/107 +f 185/467/90 265/466/104 270/474/108 +f 188/464/88 268/463/14 267/475/109 +f 266/476/107 263/484/105 271/477/110 +f 270/479/108 277/488/114 272/480/112 +f 266/476/107 274/478/111 273/482/13 +f 267/483/109 275/493/119 271/477/110 +f 269/485/106 264/829/103 272/486/112 +f 270/479/108 265/466/104 273/482/13 +f 277/488/114 273/482/13 280/489/115 +f 271/477/110 278/494/120 281/491/117 +f 272/480/112 277/488/114 284/490/116 +f 274/478/111 281/491/117 280/489/115 +f 275/493/119 282/497/122 278/494/120 +f 272/486/112 279/830/118 283/495/121 +f 278/498/120 286/508/12 289/499/25 +f 284/501/116 292/513/32 287/502/7 +f 281/500/117 289/499/25 288/504/9 +f 268/505/14 285/510/10 290/506/27 +f 282/507/122 290/506/27 286/508/12 +f 283/509/121 291/512/30 285/510/10 +f 279/511/118 287/831/7 291/512/30 +f 280/489/115 288/504/9 292/513/32 +f 300/514/9 250/516/95 227/515/123 +f 299/455/25 249/454/93 250/516/95 +f 297/457/27 247/456/96 248/441/97 +f 250/438/95 226/437/94 331/517/124 +f 225/445/101 333/522/128 332/519/125 +f 226/437/94 332/519/125 338/520/126 +f 329/443/99 336/524/130 335/521/127 +f 224/440/51 334/525/131 333/522/128 +f 329/443/99 330/528/132 337/523/129 +f 224/440/51 223/446/102 335/521/127 +f 228/529/55 339/832/8 345/530/15 +f 332/532/125 340/544/9 346/533/13 +f 338/534/126 346/533/13 339/535/8 +f 336/537/130 344/542/10 343/538/14 +f 334/525/131 342/543/11 341/540/16 +f 337/531/129 345/530/15 344/542/10 +f 335/539/127 343/538/14 342/543/11 +f 333/541/128 341/540/16 340/544/9 +f 350/545/27 358/557/96 357/546/97 +f 348/548/25 356/558/93 355/549/95 +f 347/550/9 355/549/95 362/551/123 +f 353/553/7 361/833/55 360/554/98 +f 351/556/10 359/561/100 358/557/96 +f 349/547/12 357/546/97 356/558/93 +f 354/552/32 362/551/123 361/559/55 +f 352/555/30 360/554/98 359/561/100 +f 359/562/100 367/568/99 366/563/102 +f 357/546/97 365/569/51 364/565/101 +f 359/562/100 360/582/98 368/567/132 +f 357/546/97 358/564/96 366/563/102 +f 356/566/93 364/565/101 363/570/94 +f 355/571/95 363/570/94 369/572/124 +f 363/570/94 364/565/101 371/574/128 +f 363/570/94 370/575/125 376/576/126 +f 367/568/99 374/579/130 373/577/127 +f 365/569/51 372/580/131 371/574/128 +f 367/568/99 368/567/132 375/578/129 +f 365/569/51 366/563/102 373/577/127 +f 361/584/55 377/834/8 383/585/15 +f 370/587/125 378/599/9 384/588/13 +f 376/589/126 384/588/13 377/590/8 +f 374/592/130 382/597/10 381/593/14 +f 372/580/131 380/598/11 379/595/16 +f 375/586/129 383/585/15 382/597/10 +f 373/594/127 381/593/14 380/598/11 +f 371/596/128 379/595/16 378/599/9 +f 388/600/40 396/612/137 395/601/133 +f 386/603/51 394/613/138 393/604/134 +f 385/605/11 393/604/134 400/606/135 +f 391/608/7 399/835/32 398/609/136 +f 389/611/8 397/616/139 396/612/137 +f 387/602/12 395/601/133 394/613/138 +f 392/607/35 400/606/135 399/614/32 +f 390/610/55 398/609/136 397/616/139 +f 396/617/137 397/623/139 405/618/140 +f 395/601/133 403/624/27 402/620/142 +f 398/622/136 406/638/152 405/618/140 +f 396/617/137 404/619/141 403/624/27 +f 394/621/138 402/620/142 401/625/143 +f 393/626/134 401/625/143 407/627/144 +f 402/620/142 409/632/148 408/629/145 +f 401/625/143 408/629/145 414/630/146 +f 405/618/140 412/634/150 411/631/147 +f 403/624/27 410/635/151 409/632/148 +f 405/618/140 406/638/152 413/633/149 +f 404/619/141 411/631/147 410/635/151 +f 399/639/32 415/836/9 421/640/13 +f 408/642/145 416/654/11 422/643/16 +f 414/644/146 422/643/16 415/645/9 +f 412/647/150 420/652/8 419/648/15 +f 410/635/151 418/653/10 417/650/14 +f 413/641/149 421/640/13 420/652/8 +f 411/649/147 419/648/15 418/653/10 +f 409/651/148 417/650/14 416/654/11 +f 426/655/40 434/667/137 433/656/133 +f 424/658/51 432/668/138 431/659/134 +f 423/660/11 431/659/134 438/661/135 +f 429/663/7 437/837/32 436/664/136 +f 427/666/8 435/671/139 434/667/137 +f 425/657/12 433/656/133 432/668/138 +f 430/662/35 438/661/135 437/669/32 +f 428/665/55 436/664/136 435/671/139 +f 434/672/137 435/677/139 443/673/140 +f 433/656/133 441/679/27 440/675/142 +f 435/677/139 436/692/136 444/678/152 +f 433/656/133 434/672/137 442/674/141 +f 431/680/134 432/676/138 440/675/142 +f 431/680/134 439/681/143 445/682/144 +f 439/681/143 440/675/142 447/684/148 +f 439/681/143 446/685/145 452/686/146 +f 443/673/140 450/689/150 449/687/147 +f 441/679/27 448/690/151 447/684/148 +f 443/673/140 444/678/152 451/688/149 +f 441/679/27 442/674/141 449/687/147 +f 437/694/32 453/838/9 459/695/13 +f 446/697/145 454/709/11 460/698/16 +f 452/699/146 460/698/16 453/700/9 +f 450/702/150 458/707/8 457/703/15 +f 448/690/151 456/708/10 455/705/14 +f 451/696/149 459/695/13 458/707/8 +f 449/704/147 457/703/15 456/708/10 +f 447/706/148 455/705/14 454/709/11 +f 471/710/58 463/719/62 464/711/63 +f 470/713/52 469/720/57 461/714/61 +f 467/716/56 482/744/70 481/717/60 +f 470/713/52 462/715/25 463/719/62 +f 469/720/57 468/718/59 481/717/60 +f 475/721/35 467/733/56 468/722/59 +f 473/724/55 465/735/54 466/725/30 +f 478/727/12 470/713/52 471/728/58 +f 476/723/11 468/722/59 469/730/57 +f 474/732/7 466/839/30 467/733/56 +f 480/734/8 472/736/53 465/735/54 +f 479/729/40 471/728/58 472/736/53 +f 477/731/51 469/730/57 470/713/52 +f 472/712/53 464/711/63 483/737/64 +f 464/711/63 463/719/62 485/739/65 +f 483/737/64 464/711/63 484/740/66 +f 481/717/60 488/745/71 487/742/68 +f 463/719/62 462/715/25 486/743/69 +f 482/744/70 489/748/72 488/745/71 +f 462/715/25 461/714/61 487/742/68 +f 466/749/30 491/840/10 497/750/14 +f 484/752/66 492/764/8 498/753/15 +f 490/754/67 498/753/15 491/755/10 +f 488/757/71 496/762/11 495/758/16 +f 486/743/69 494/763/9 493/760/13 +f 489/751/72 497/750/14 496/762/11 +f 487/759/68 495/758/16 494/763/9 +f 485/761/65 493/760/13 492/764/8 +f 502/765/51 510/777/57 509/766/52 +f 500/768/40 508/778/58 507/769/53 +f 499/770/8 507/769/53 514/771/54 +f 505/773/7 513/841/30 512/774/56 +f 503/776/11 511/781/59 510/777/57 +f 501/767/12 509/766/52 508/778/58 +f 506/772/55 514/771/54 513/779/30 +f 504/775/35 512/774/56 511/781/59 +f 511/782/59 519/788/60 518/783/61 +f 509/766/52 517/789/25 516/785/62 +f 511/782/59 512/801/56 520/787/70 +f 509/766/52 510/784/57 518/783/61 +f 508/786/58 516/785/62 515/790/63 +f 507/791/53 515/790/63 521/792/64 +f 516/785/62 523/798/65 522/794/66 +f 521/792/64 515/790/63 522/794/66 +f 519/788/60 526/799/71 525/796/68 +f 516/785/62 517/789/25 524/797/69 +f 520/787/70 527/803/72 526/799/71 +f 517/789/25 518/783/61 525/796/68 +f 513/804/30 529/842/10 535/805/14 +f 522/807/66 530/819/8 536/808/15 +f 528/809/67 536/808/15 529/810/10 +f 526/812/71 534/817/11 533/813/16 +f 524/797/69 532/818/9 531/815/13 +f 527/806/72 535/805/14 534/817/11 +f 525/814/68 533/813/16 532/818/9 +f 523/816/65 531/815/13 530/819/8 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_iron.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.stone_iron.png new file mode 100644 index 0000000000000000000000000000000000000000..8beb92f443db3960ad6e86878275ef353b1ded91 GIT binary patch literal 279 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfNPkQ)tcy^ zZd$dvkS_ aUdh-eoS!qn^Z_T(XAGXMelF{r5}E)O(r@Mf literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/machines/rotary_furnace.png b/src/main/resources/assets/hbm/textures/models/machines/rotary_furnace.png new file mode 100644 index 0000000000000000000000000000000000000000..2107c50ec0568209ca7919342b41ea64ed307b3a GIT binary patch literal 2033 zcmd5-dpy(YA7_j;N2odWJGq2&P8;P=gbbU@TtcHAmrO1dDq@=^mr0UKB>9nhXXIM6 z)X8Nrei*OFNU=mTvc)XrvV~^9uk(AI-=Dv~f6wdnJnuiA=lOh|=l#5&_a_tQ;iL@x z2`VEaqwM1B;053(ptnL4fN|jf?KS}NWIGo;1Zatnvl%inighjy82pto;d^V+Bo^NH z^&B?LxlzyOi`(v8*Bg_t3%+3}Cg?|>FINZ;xo&S5xlwtiFiCgt@R4)iPPbw>gRVZv+-~WYor4ij0=%eW0a)y5TIX;@AVJ z1e10#^Y?j4+Y$Sc!k(|I)2z7_r&Y#TOLZVW7z{;47~QT|+MK&cANagE*G!>iC4-bv zl%4?PeT3gWnG$7#@i^KZI^u}wOI5u z*NFLq?6|S~I9yO#9Stpqq@MIATE|v%$ah5;JMNfrF5W)o00rzq&nJTKIl}? ztAq4)hBQ3sjmD~0LYm);l@C)n^gRlh-dJQA919LmV?|%;o;QK`7q%NrmPWomCSsp| z)>(AOrev7q?UZnDJ?m+@d1OBt^2rsEwpwBo{N!4B;!ivr8BAzNB& zxKY88YI?DtDr(a>8Y4Xv@ym9ta3%`GK$CZcK_YoJLcxXA^63@x3M7bOOooO*YVXsZ zJy>wjdE@ak-$vo1;-oOR1Z+u}=rP1$(Yig}%pyPcfATPq^9dPo1yPl8IFEI?R8Nd9 zvN~#!9b5BQ{gt2;>ef`C_-C~CLzeN@u4T=E828)DE&jg!cZzCjYadd(g%qoeE^y8g8Q<;% z`CN91(Sj;sn#qC-ZH_x4>-SNt>lNoxvkweD8A z*iyU&{EoopnMECZ+9>~eADvB#lB7x|FCViyu~isHl~Uh}b<1APZ->sDzp|mhx42l5 z0=iX=`pB^d#ELvIYUBr~wr|QNT(d&u=3)M7N!u!o&z}wPgCIuG1E{*jhUpBWRa&yK z0RorF;kX4GJ`$ErD-Y@S`HOvDjBKYfZRHO9A#D+g76oW%p~_k0J+-mR(@9+pQL<=5CEu(a{K_OZH&aO3V#&uhRI0 z>&YR-HM{+)a}PVG&hLr%%%dRdXui$$hQVBsJZ#W>E_bw-bu7a)w!>4zkKXtdi^nze z|6qtzkKwWTx*eUphfoymm%O+Yaa+L4M8fxx-{P|EmyLy@VyU$}%pBR)_jNSk+>Mw% zILnc2)-$nUU6`D#cYJWa+9)S{R&N3>dn%q>=t(d&3B7zjPg@Q5Ly4Yo>YA-7kvNu* z@eA3R!{5iTU^&6A@-Ph~*nYvc4`7y#PzXT|1z?Gu4kl%`2pxYzJg)3{*bK9bmqu#A|Ajh3s(~E5YARx>p14`I7Jl6bjJ?-npc;E2Hx1 z)bj})z%D7AbOGNhC$?~`bZAq4v0_+90HpnE`Hn6Dzww^w723b;g{$bMs-Brjl$vh{ zF7c=z$ZZ^d-sxdKMrT_Vn}j9aaoA|q8|WX0%CZb^VsNM$lLlsH)*yxYwr)x;+=ZK6 zEYMJlIZrj#M5e~LaNEJ|1cKQ)^td)#6(Hzeu!5L+ZuU+f&$BPP4w{v<_)@__I}6Q_ z@6yW<-H%BfKc2yRb;n&;mvy{%S2w`k;tX%olz6AnF?U>*?XQZPstTn+YU$suTQ)T4 zcuy8~pP;W1#;3xX9!nWpI-7G2fTYv_70UiUgG9-sKL@W)b@c>lxQvUVhr=Vgpp<_D Dn&X!@ literal 0 HcmV?d00001 From 2edc4304b543e4ec915b796be3d5e19573cb24f7 Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 25 Sep 2024 22:13:07 +0200 Subject: [PATCH 20/63] literally just better mekanism redesign alloys --- .../mekanisms_new_textures_suck_balls.png | Bin 0 -> 1028 bytes 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/items/playground/mekanisms_new_textures_suck_balls.png diff --git a/src/main/resources/assets/hbm/textures/items/playground/mekanisms_new_textures_suck_balls.png b/src/main/resources/assets/hbm/textures/items/playground/mekanisms_new_textures_suck_balls.png new file mode 100644 index 0000000000000000000000000000000000000000..e3793924b037a5e720626933c3f24659720219e6 GIT binary patch literal 1028 zcmV+f1pE7mP)Yt4MuI{ICnh&2!wtn%xati7*F(YZy7)c4 zlXWL0=TZv#rYE1j|L=#4(fbRSWy%mj7$JncY2PM<*<<>tNl<>SR;&ETy4|iaEtH>c zO8vIfKQkx-8j9<>h?0nahO+It;1bHT&^U=GsPFsu{#hGG^cX)_*P&_J8Hp4jgf*K@ zv|6o+(CWx=N+~O3GH5iL*pd3a@8iqeN4S`I4_|#`L(?>902W930i{eKgfP=IQLEL) zO2|;hanSGg#cR*=P{?FZGEFSkY9R?88M@&(IF$PPo(F{x!m`;cR8g!ltR&Uof(D!079Z(ug5}pdcB@f)OBW__PNAny&enYIq3Bi z1ps7;a=DC7rxObu9V|;!%4O_H{c%vao05hKiD{s6PKOGKNl-bV2fD6{f2T>%aVbju zIOr_1{69l1ixJC8a38RlP3+ga4@ki3jT`*Py1Tnm-Un>yQ}U+hx4Ui8KO+zU#mLVh zB}SpX@8j;)8XlMqG)?0oLPCjx`o51JSHHunODW9#ae`axUxz-=-G>jsB_g4>9o*eo z!`uf)cs00)C*QiFzwK_L-EAu=Vp*)YwT0H>$KqiWyt=d$`W+estdP#3(QII+wIiN! zs4Vf|wu6=GN~j;ufGNbXn7Ock+UjaZLcAjq)VY5j{li1?+I#vGg>()jvxMc^vXGG9 zft9r(bi>)eVSm`)_x7O>%VODF4r)FxB;uev!ONGRL4ZO!2Q{lAujYlsVs$YR%F_?} z2xtIBpPy&OwQB$%B);D9JJO{ml)BAuVQLa?b+1rbS zjt-V3D&-3HI>Y`rsN79SLxsdNP&ubVg~TMNobY{Metvi#m;fD@qF$8l1JTe~W_hDT zt=CBt`*A$YdYv?92EFcjeJ%n?*6XAKDVq?MWW7$hfG9R0EXjJESm4RKAF`j8%2Th` z-~95cIKTMo1fTu=XL5m$wRdpuYAJHPmZ9kj19ARs@P2Xun-KQ%TNFq1827H0#CjbC z{i5_afZ+z5_)oxh`^Lb-5j_Sz`4rUM#as-O=R7vx6yNRd7zP^faQyZO(ia9{sOOz4 yG$bGmWp@k%l`9L_zWn>Y3Y8NYJo|#-zsNs^I;%+Ruc!S00000 Date: Thu, 26 Sep 2024 12:27:07 +1000 Subject: [PATCH 21/63] EndlessIDs compat --- build.gradle | 10 +++ .../hbm/packet/toclient/BiomeSyncPacket.java | 68 ++++++++++++++----- src/main/java/com/hbm/util/Compat.java | 1 + src/main/java/com/hbm/world/WorldUtil.java | 32 +++++++-- 4 files changed, 89 insertions(+), 22 deletions(-) diff --git a/build.gradle b/build.gradle index 07cca4635..31b7a3b89 100644 --- a/build.gradle +++ b/build.gradle @@ -75,6 +75,14 @@ repositories { name = "gt" url = "https://gregtech.mechaenetia.com/" } + maven { + name = 'FalsePattern' + url = "https://mvn.falsepattern.com/releases/" + } + maven { + name = "GitHub" + url = "https://jitpack.io" + } //maven { // name = "CurseForge" // url = "https://minecraft.curseforge.com/api/maven/" @@ -94,6 +102,8 @@ dependencies { compileOnly "inventorytweaks:InventoryTweaks:1.59-dev:deobf" implementation "li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api" + + compileOnly 'com.falsepattern:endlessids-mc1.7.10:1.5.4:dev' } processResources { diff --git a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java index 3f529e1c3..ccb0089c9 100644 --- a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java +++ b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java @@ -1,5 +1,9 @@ package com.hbm.packet.toclient; +import cpw.mods.fml.common.Loader; +import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; +import com.hbm.util.Compat; + import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; import cpw.mods.fml.common.network.simpleimpl.MessageContext; @@ -16,18 +20,26 @@ public class BiomeSyncPacket implements IMessage { int chunkZ; byte blockX; byte blockZ; - byte biome; - byte[] biomeArray; + short biome; + short[] biomeArray; public BiomeSyncPacket() { } - + public BiomeSyncPacket(int chunkX, int chunkZ, byte[] biomeArray) { + this(chunkX, chunkZ, bytesToShorts(biomeArray)); + } + + public BiomeSyncPacket(int blockX, int blockZ, byte biome) { + this(blockX, blockZ, (short) biome); + } + + public BiomeSyncPacket(int chunkX, int chunkZ, short[] biomeArray) { this.chunkX = chunkX; this.chunkZ = chunkZ; this.biomeArray = biomeArray; } - public BiomeSyncPacket(int blockX, int blockZ, byte biome) { + public BiomeSyncPacket(int blockX, int blockZ, short biome) { this.chunkX = blockX >> 4; this.chunkZ = blockZ >> 4; this.blockX = (byte) (blockX & 15); @@ -42,13 +54,13 @@ public class BiomeSyncPacket implements IMessage { if(this.biomeArray == null) { buf.writeBoolean(false); - buf.writeByte(this.biome); + buf.writeShort(this.biome); buf.writeByte(this.blockX); buf.writeByte(this.blockZ); } else { buf.writeBoolean(true); for(int i = 0; i < 256; i++) { - buf.writeByte(this.biomeArray[i]); + buf.writeShort(this.biomeArray[i]); } } } @@ -59,17 +71,27 @@ public class BiomeSyncPacket implements IMessage { this.chunkZ = buf.readInt(); if(!buf.readBoolean()) { - this.biome = buf.readByte(); + this.biome = buf.readShort(); this.blockX = buf.readByte(); this.blockZ = buf.readByte(); } else { - this.biomeArray = new byte[256]; + this.biomeArray = new short[256]; for(int i = 0; i < 256; i++) { - this.biomeArray[i] = buf.readByte(); + this.biomeArray[i] = buf.readShort(); } } } + private final static short[] bytesToShorts(byte[] byteArray) { + int size = byteArray.length; + short[] shortArray = new short[size]; + + for(int index = 0; index < size; index++) + shortArray[index] = (short) byteArray[index]; + + return shortArray; + } + public static class Handler implements IMessageHandler { @Override @@ -80,14 +102,28 @@ public class BiomeSyncPacket implements IMessage { if(!world.getChunkProvider().chunkExists(m.chunkX, m.chunkZ)) return null; Chunk chunk = world.getChunkFromChunkCoords(m.chunkX, m.chunkZ); chunk.isModified = true; - - if(m.biomeArray == null) { - chunk.getBiomeArray()[(m.blockZ & 15) << 4 | (m.blockX & 15)] = m.biome; - world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); + + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + if (m.biomeArray == null) { + ChunkBiomeHook hook = (ChunkBiomeHook) chunk; + hook.getBiomeShortArray()[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); + } else { + for (int i = 0; i < 255; ++i) { + ChunkBiomeHook hook = (ChunkBiomeHook) chunk; + hook.getBiomeShortArray()[i] = m.biomeArray[i]; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); + } + } } else { - for(int i = 0; i < 256; i++) { - chunk.getBiomeArray()[i] = m.biomeArray[i]; - world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); + if(m.biomeArray == null) { + chunk.getBiomeArray()[(m.blockZ & 15) << 4 | (m.blockX & 15)] = (byte) m.biome; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); + } else { + for(int i = 0; i < 256; i++) { + chunk.getBiomeArray()[i] = (byte) m.biomeArray[i]; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); + } } } diff --git a/src/main/java/com/hbm/util/Compat.java b/src/main/java/com/hbm/util/Compat.java index 3b6bc6069..98e26f436 100644 --- a/src/main/java/com/hbm/util/Compat.java +++ b/src/main/java/com/hbm/util/Compat.java @@ -35,6 +35,7 @@ public class Compat { public static final String MOD_TIC = "TConstruct"; public static final String MOD_RC = "Railcraft"; public static final String MOD_TC = "tc"; + public static final String MOD_EIDS = "endlessids"; public static Item tryLoadItem(String domain, String name) { return (Item) Item.itemRegistry.getObject(getReg(domain, name)); diff --git a/src/main/java/com/hbm/world/WorldUtil.java b/src/main/java/com/hbm/world/WorldUtil.java index 4f23a6865..8cda8edb8 100644 --- a/src/main/java/com/hbm/world/WorldUtil.java +++ b/src/main/java/com/hbm/world/WorldUtil.java @@ -2,7 +2,9 @@ package com.hbm.world; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.BiomeSyncPacket; - +import com.hbm.util.Compat; +import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; +import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.Entity; import net.minecraft.util.MathHelper; @@ -21,19 +23,33 @@ public class WorldUtil { public static void setBiome(World world, int x, int z, BiomeGenBase biome) { Chunk chunk = world.getChunkFromBlockCoords(x, z); - chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)] = (byte)(biome.biomeID & 255); + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + short[] array = ((ChunkBiomeHook) chunk).getBiomeShortArray(); + array[(z & 15) << 4 | x & 15] = (short) biome.biomeID; + } else { + chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)] = (byte)(biome.biomeID & 255); + } chunk.isModified = true; } public static void syncBiomeChange(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + } else { + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + } } public static void syncBiomeChangeBlock(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); - byte biome = chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)]; - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + short biome = ((ChunkBiomeHook) chunk).getBiomeShortArray()[(z & 15) << 4 | (x & 15)]; + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + } else { + byte biome = chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)]; + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + } } public static void syncBiomeChange(World world, Chunk chunk) { @@ -48,7 +64,11 @@ public class WorldUtil { /* this sucks ass */ ChunkCoordIntPair coord = chunk.getChunkCoordIntPair(); - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); + } else { + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); + } } /**Chunkloads the chunk the entity is going to spawn in and then spawns it From 0f170073065d304a98284d5760ddcc6e6148d049 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 26 Sep 2024 12:37:36 +1000 Subject: [PATCH 22/63] tabbbbbbbbbbbbbbbs --- .../hbm/packet/toclient/BiomeSyncPacket.java | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java index ccb0089c9..0fcb81f1a 100644 --- a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java +++ b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java @@ -104,17 +104,17 @@ public class BiomeSyncPacket implements IMessage { chunk.isModified = true; if(Loader.isModLoaded(Compat.MOD_EIDS)) { - if (m.biomeArray == null) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; - world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); - } else { - for (int i = 0; i < 255; ++i) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[i] = m.biomeArray[i]; - world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); - } - } + if (m.biomeArray == null) { + ChunkBiomeHook hook = (ChunkBiomeHook) chunk; + hook.getBiomeShortArray()[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); + } else { + for (int i = 0; i < 255; ++i) { + ChunkBiomeHook hook = (ChunkBiomeHook) chunk; + hook.getBiomeShortArray()[i] = m.biomeArray[i]; + world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); + } + } } else { if(m.biomeArray == null) { chunk.getBiomeArray()[(m.blockZ & 15) << 4 | (m.blockX & 15)] = (byte) m.biome; From 15a0f11a7403becd27fd2ae2f4afbec15cd663a8 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 19 Sep 2024 12:08:02 +1000 Subject: [PATCH 23/63] New basalt textures --- .../assets/hbm/textures/blocks/basalt.png | Bin 893 -> 4529 bytes .../textures/blocks/ore_basalt_asbestos.png | Bin 929 -> 4659 bytes .../textures/blocks/ore_basalt_fluorite.png | Bin 914 -> 4661 bytes .../hbm/textures/blocks/ore_basalt_gem.png | Bin 894 -> 4697 bytes .../textures/blocks/ore_basalt_molysite.png | Bin 926 -> 4750 bytes .../hbm/textures/blocks/ore_basalt_sulfur.png | Bin 924 -> 4706 bytes 6 files changed, 0 insertions(+), 0 deletions(-) diff --git a/src/main/resources/assets/hbm/textures/blocks/basalt.png b/src/main/resources/assets/hbm/textures/blocks/basalt.png index 8cc74f42ccc54baea5748bb17a1ed72888cb4edc..77a7455921ac620f7866a8337ff0df3fa1720baa 100644 GIT binary patch literal 4529 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 RT?XxEsg&`G&tg{P{}dBzWtn(9&hhav znM?+g$%M=0Vq#(fv)PQcwY3#hRhgTcLs1kC4h}dwJ7acsmi_&Gg25m*n+=D-E;Br>EK3*+H+@1K@Pp@Oph*TwHK{eGNcUQxm;?J+xS@yng)y zBO@bRU0u-tAb-mb1Ofq6Rps{f7QMcSNF>6|%?%ER1AuTiOruUqp-=>1b#;~X^>u`W zg@wA^Zs+pyA2b>b?vLCw2m){3{DQ~hAsh~)*XvnaTqK{*lS-uk=|8)L{TJ> zNZ|2!NG6jclS!OTC)?XG+S?t}RE6E0Jw#FD@$nH+6xrC=;Qsy|VQ6TmuBs}vT8%^^ z!ONFl<953#6bcjyMY_AY+1=e`Z*LES!GO(X(;Szi8` z&dyF+T3Q$z8v`I7kK=N=$YwM2_xI!X`vGXkX0u40ZZsMV03Yfq-+uQE)oPV;xy;Q? zhDaoW%jLq^Zf9U%kW%RZfLJVsrn$L!>GNmL(0}W7^nDhfy}g6tU71iQM7dn%UFsLx5V;~KT)sO5k-+&twt~yBoqqq z_U*5H`NbfW$|IRf23eNb-rhz#Gc$uurz4xqQmIt1+wJ)MK6H%@M5EFF?|nWW>2#X? z{eMG5QKVchqbLfRTrRg{Fc^>|iF7)RAP7_{GMAUv^!5e#)cXlWlY!!0iTCgS;>C-v z@OnSy>FJStzCc4yPY)|AD{O9VVltVqTCGH*QO?iLvD+LZ5`S}ga!xoL#%MI6)i$Ci h9|(v4#P9d>AH~;tP89n1IRF3v07*qoLVKkj+k+2n!B5 zvu!wpy9pD6;l4uZT81_7{GXdw7k?E!yr^BY_rfqFFC$@B?On}u=E^f;)2eSVt)U44 zU+kHCWE5-1ZpWIhY+J$-b__8uHS;cBkFb?STF33&a3`i?`TC%Xt3D|#xjN^P>6rM% z-NselOkBJztdqDwL@In|E<@_`PmpzaXu7Q7Z=S@D9$kugI=-c)%pF($=d}y>tt$4} z9zJ;INH?z_E<(LOOh0x5o2pAzUy)jGx@aOTtRJlWA$p!ynjXb zhHoohTfTF$urSsAU9&P%e^vc-T4#Msx-P1mb-&;^|I-P<5Bwh7`LxRM!{p%y{@>a<_#_i3EVLw z|3=rb?rW|ZQ%26o%27qkI&RGizMpTFXKq8y(La)3W)AAw?1}!Yy;|%!oOEtNC~Ws- zk<2m8q1qpq9M_WTlNSgg;~t(LxmtbgMNxg!Tg$B;k63!>-^#@BCDZVOxy+D|LG2SO z>h3+bSAXyOU+xmOo-nWE+0RBTh^hl^mqmc~O3@}DMvCO17-hgYZqf$&j=@mGxNWF0 z9d|+o+)P-N?9MNbvLOOfvge7lJgrTIrxEcvc6?4wVzMzO-6+S{G1CJSZUg|3xD$ok zq{Zq$+)B0=7Xi<-n9GK|D$aBzJ4LI5RFoZuL>v)^2dmvgmViAy08-d76QYlOuNMNm zDcNaGrw!q9T`m{LCFD?cGnX%y%eg!OS0I3a2JFbTI#D-lbwtn*Js7dL!)PaLPJ*&R zG$v}GGM!2`8>~Yw<0EZaZ6CbV(aQqhgX>0ZTt0`#B}s073x`vk1weWO`c(@@GMG}X z9(Pcgb|bFN!mZAT{t%e4&)$}4w|LXRj9lD;lR(u0yz*aj8K=?e`YdP)%miukS^=_O z({vK1S7f~w8@=L9r+*;8ybt#^?U%WGm4TL4i^NjKOgcPGtddRpM=;7rV2Jn8hzrGX ziO~cL#3CFPnNSRt<1#*s8e|5O6f>X#fv_Kx#_DjQRwGVB0dNiha4@k6<;!sqjA9ZK zEE4m1uw0G{VUY}z;HW_^lt_8~Ad>6^=t|VmKPnmu15k2-TrL&~Fj$Jq`LKv*5WuKJ z%!7q|3^a|vgqg%LFBE1(-lOa!3d%{4s2S(ltY+^5O*k?`r%|#6oF1=UiOzyLO~3%m z0Aa-_m*bUkGC|^VoG8sFUn-DD`Fx>7B9KVLe8DTFxwzc{dXYxu^Eg70cZDtt0@4B0 zqI9PM0IwWmgQ)B{>ZI(+6lGDe=@1~=vTs=n1`0!+Xe{c)0Vq!(LU?k7FHhzR5S{=L zNuv2Ygx61>!U$9L|I((%2U7GDJ)Up?|Jhzq&rHq1GkV^7UM+-om>|eI76@wWNx^|; z;g~m0fYq~POhc_^9PA&x4f|3~{7N&(3Pw<#U%zVABHc_);TWHu}ZcX0# z)2=hhvd-MeLpI$aeZK1ur^<_$=>w`t??qRM_LhGAWHEykHBl;+j=%Hd*`*rohZizJ z7H25J+Mm@2E8Mxc-`~6_Y`c0jl&D}=Vd0$Rj4k(re7k=B*??4@OA}pMX=dwBwhq$I zR5bmi(IDgOFXhy~9Nsn_X^*gs89=wFd+CQzZrKRN$ z)vc|q9i2RuW*yeN%%ZKXu1@(xeQ-WLeRKO4oZ|L{M)qHu`6=(^6m{Q^|57T)g0)Q6+gb55fWTDn4&18{^>j8o`y58 zy?9aC(UHD<1j~=PX6V~lr%v5Ys?tAQl$*O}LQ_){Yo%&k1BCpwB$5Y^B!2{RLP=Bz2nYy#2xN!=00T)$L_t(Ija8G&D|`(AK+he-xbrYG zjEsz$elmp`rR1@)(ayaERbP-*0rvLxxWB*W@$nIWjEoG1hK5j8m5z=Myk0L4 z4-e=7yk0M5Wq)O;s>(NfOV`&)DsD079VFDn6rm(P(P$)!tdOCi;A6b@(Mxy`>3=A+bGJ-HRHl_uGLEhirX>M-j z?d=Vd$;9O3BvVsU7>!0QFE2SeJLCNP9J}34EEYo)MSm_XF3_#4tY9{qd3bo>`T3c% zvonIhAjQSS^!E0WNF;E(-JGAFW3$;vCX?jlxB2<`A(2Q>TU(1H zNjMx10)fE);Qjr51gq7m&Ck!HX&MHD0YMO0Sbtc+Y&NsIyNfK#oSdAny1I&9uV-gx z2T78!SS&m}J&~G~mBrfH8sFdFsH)1`+#KcQ7UteEn znnpYx=kV~5)b{pv($dn1#bP9rNpf;>7#em|O~p{gnq6BArrT`@X3N?KYP$z+o8 z@o`d1OG{Z^UdH3`{Ovv*4wIXkODGf~5{dkM!R2ysb8|yRMh4T<)0C8y@GmAMeWueY R4B`L)002ovPDHLkV1gWCxJ&>5 diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_gem.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_gem.png index 53be07abeef5886c58b60fee2a3d93c9901141b9..1f331204b9268fc53f06cd57fe59062b45c22e83 100644 GIT binary patch literal 4697 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 delta 904 zcmV;319$w6C7uV6B!2{RLP=Bz2nYy#2xN!=00UJ?L_t(IjXly)PZ|dR!14cq4v>QZ zhoD%bF~(vx*R9Jkoo=zb*vfQ^#;o_RwVC;Gg{d!pO*ozQ4bZrfJO0&7mj?i9~`@sei=S*cghUu(h?t-rgQ3 zCns2~R(w7m~L^!!1VMq+uPgp_xIy=yYYBD9DHO0op1}2jUfEMc^_dk2W;o%|qd>#O^*^Fx4;Z_hxztDL6 z_%XR$4g-)dv9Pc}sZ=7H%>rtShW30aoOX0!hnb$>esQ4|GZy~(B1sa}Y86S6SXo)&>goz16bk8@rqO6LNT<^bedosQ zHFH|1VmCh^7z~n1rP$ou#A31FcDvc#-Nk0JVYk~c3W5-soSdY)yPJW50dntZ)YLNH zeDw@fRe!PD?R0c>;BvVrm&*(d4dM6uDHe;Us``O37z|>yTB%ejNRmV}8l|(d6Nke= zI2;Bb8ja%f`S|zpB{q+VA0GVt;R8_=^@$&Qs5g3$Wf`G4i}#L5Ja$P-OAF4#mYPA}&EMssu9C*ABX>SW*xc!>vzaEoHrI2MAm&-*s9AZ;sG+n1! zt)lBX<#L%+Dur=&b~a)*n<*3uTwGjmb8~~U{hYG$H?RK6lgs6hWf{BO&bdmVX#A31F_xm|MK1L7(%uVeyZd^3GPPsK*Qm!6jYx0rLUZS}Ryw_e+ zzRF|K-57_5ha<6A3{_QeI-M8{2G-WrXfzr;3jM^z=`EtMjd(nc$Kzo<^n}mve#^!m eX?lBm`42=8g|hG~*4O|5002ovPDHLkU;%;@2)ncZ diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur.png index 4cb52468115025b375f712a0bea49f61f969b0a2..db2e0d04bdccfc1d8052b4567f615b4be471cdda 100644 GIT binary patch literal 4706 zcmeHKc~nzp7Jn=%n}9+QX)2kZqe!#8>`x-nge5{CB301Z`nJR;*+>EjR9Zn%qX^PP zP;t;saa5$XQ^6fnq^ItHol)r&C_3W~E*)_xGG78Bp6NMrJZJhJ$$5G2-R1Y)`@8pk zC!bxF6gSo@#0!F;v5I(k3b^|_E|1aRH}qjY3T`KIQ`0OdsFiLs8Pt@Pq+4=~B%QQT zY6!Bm=~O?CZKV7Bs##myIbm^$EM$7tisBCfDyHv~p3JOkK`Wl#eiFamA!weUxuYIaWPuFP54v!CSdcr)n!==*neRGHhS`hNS@Fa0Y6l0){< z?}uF?%R0nmw4ldlzb;i?2v}`zN||tG(b?0hW=G0sb5hs;%Ue?R#`%R6e_Oh>w)Yy_ zCura2K9_D5G4iKOE-mnwn3bw3jLCU-TPem+_GbF^ueq9Bn()W@ql#$WJEIG)JwD#w zX{}Rd=APafSmbt;UDwAQ?Vg=Kud%M7M0YsL^>Jl>M9tN`g8YNYt#7`?G`aie+$LOl zOWE$mvM&F5>LPe@+=Gkb*2Z-971f9Pt<>k|3q<=LNs~gCzfIOIbEDB*uTI%~wEKQ{ zefK|}-=(hiy0v{|Y7So%eiXD_HU-)%O__+`1|16}3>e9>>5QQ7ASg1*W<>D}(n7~b z4W*YddJZ=*=oBGk%oiv*N~4TiLdEBr$ho;msd#P%E+H6EGrb~h2msKL7L;z&Y4v8r zCS^Er5%BB~vl(=!i6ukINK>llGJ}bv^I3crhZ$p|vSG$dFM6bjP$Mbw*g**JCS@$K zSd0jpZM9liRvyb>(y+M_iG zhAfMe!2o*ti}-X#rE&;fZysa;@WHmBMmCqlVe544;T~p7Of~=+4CpsK%&A~X*(s#i zkY&Qjm~2vS2^$VU;6wh#ER)um4uP{tEvW;hX0R&vl_ld8O4X2ug8~huGdjHh*{@hy zDD_LSUWv`2ai%jo5a2$9`-=68+?~e2N~uKT20Y6Vo@8hl#=j$>j1;9*Uxb2<3{0K`HcR3#!LS2NVEjQ2+-O6R1dx37I&`Bba3nZ{aGLX0vaUN+hgI;u?aycv>-|6ls3FlcX$q|m0+L<)Pl-U3kg6uFdyMa5UwPZ%S8kt1Qthd zIS6N%y@8>&Fl>tfegiVFb%C9bJ+u`L@&#i3JwJnW_&t}P(?=G0Eq+Jn8lmg87$MnoE#r~y`oGcT_3|)9>cKxCD>y1C{FXid$E?v&r!hX=3_;!j zj>`qwToDX}V=M|~%$OUV0WK06CLX^Yf?RzS^5|6Y8QrHpCI!q1T-6}qTx||g`>$&) zpOomavqfyTb8}uH&5<9Zq74?>oGMI+x~GSDNw=QW z7cBd!@B79RGup~#)uik?i{;W71y%b`?e*J~W;n>~$!RYvxP3}IZ{r`f3UB&sUY-{g z8kOAO68!Ph%9=m7G?{tYYmIWmqu^v)5w$M6WKYE9gmm?S;`gog3x@?l(Y%0j?-N_5TbLq}{_%V+axg)*r1k>{#!i_xNKpU;MTa+QE~Ir)$@xMuwNWcwGM#d*HR3b+_7 zpzPJ>C+pAYx#_fwgN?bU~?aUHa36xZPE4Vb4XxEDaRAJ-Bjb33W`flQ=fA^I^{E)F^M~-aM zj2SaLsn!eF&1bU~^qo$7a3rOw6Upg`3r)C0)w;bK+;QWOzKgxaqu*unv4F!5xCTCG P7Dy43B>(E2#RdNX`VZ4N delta 901 zcmV;01A6@8B%BA3B!2{RLP=Bz2nYy#2xN!=00UD=L_t(IjXlvzPa+2Z!14cp%1Z`y z02f%GC0a?*Vl-mh@yOp!<6BhuRkHs_Z5eShvafO+-^6eQh$kj#gC#KVSIRah)I$}CX*o; z43f=e$!4>3cXyNetxBi;k%ziWI-?*-68HD_NRq_H#s)VxHwYsmBf6$(G@DH_nGA0} zchX_kC|4iRO`j4DhuPcPV}E}ii^YP|>E!6>2)o^mD2f;bL5R)F%+S-*!_d$Wf1Wik z3fJ_%e1D6os)(Y9&*!77tBb3vD~5-M@%#Oh%Vktm{jV_`4r8;~xV^nak|g5sIDtTb zj*bo{CME!g$K!atUd*Hz?Dx$NYcHuI1zp!^)%MAq z-eI@fu^Q4mAAE|zJ_Ud*%NX0++hhHGB3k2|aDS*lPsoEJye1lrQm@y^7X`Mrw;6gN z@L^D--Tfu9EYoN-sMTs1JswZ&<*O;$tRa-9pYOikK-YC7Nut?o5{X2JMx*?=BJ;f8 z#-p)^LZN`7DD3R)&@wkSM{8>fjZMFV?-`m?u{{1DV`w1jT zqJCblqpB*#a=9F{SS Date: Fri, 20 Sep 2024 10:58:37 +1000 Subject: [PATCH 24/63] middle click fixerrrr --- src/main/java/com/hbm/blocks/ModBlocks.java | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index e03b7e264..20e408b38 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -1,5 +1,7 @@ package com.hbm.blocks; +import java.util.ArrayList; + import com.hbm.blocks.BlockEnums.*; import com.hbm.blocks.bomb.*; import com.hbm.blocks.fluid.*; @@ -29,7 +31,10 @@ import net.minecraft.block.material.MapColor; import net.minecraft.block.material.Material; import net.minecraft.block.material.MaterialLiquid; import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; import net.minecraftforge.fluids.Fluid; import net.minecraftforge.fluids.FluidRegistry; @@ -3466,4 +3471,20 @@ public class ModBlocks { Block remap = new BlockRemap(block, meta).setBlockName(unloc); register(remap, ItemBlockRemap.class); } + + // Pretty much the default getDrops function but with no damage set on the item (fucks with recipes) + // but setting the meta via damageDropped breaks creative middle-click and any WAILA-like overlays + public static ArrayList getDropsWithoutDamage(World world, Block block, int metadata, int fortune) { + ArrayList ret = new ArrayList(); + + int count = block.quantityDropped(metadata, fortune, world.rand); + for(int i = 0; i < count; i++) { + Item item = block.getItemDropped(metadata, world.rand, fortune); + if(item != null) { + ret.add(new ItemStack(item, 1, 0)); + } + } + + return ret; + } } From df5df1339694e1b0d0a168707f57d464991b5709 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 29 Aug 2024 12:17:43 +1000 Subject: [PATCH 25/63] Fix basalt ores and stalagmites/tites middle-clicking to sulfur --- .../java/com/hbm/blocks/generic/BlockOreBasalt.java | 13 ++++++++----- .../com/hbm/blocks/generic/BlockStalagmite.java | 13 ++++++++----- 2 files changed, 16 insertions(+), 10 deletions(-) diff --git a/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java b/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java index d650c0b95..20c82c2fb 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java +++ b/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java @@ -1,5 +1,6 @@ package com.hbm.blocks.generic; +import java.util.ArrayList; import java.util.Locale; import java.util.Random; @@ -12,6 +13,7 @@ import net.minecraft.block.material.Material; import net.minecraft.entity.Entity; import net.minecraft.init.Blocks; import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -47,11 +49,6 @@ public class BlockOreBasalt extends BlockEnumMulti { return super.getItemDropped(meta, rand, fortune); } - @Override - public int damageDropped(int meta) { - return 0; - } - @Override public void onEntityWalking(World world, int x, int y, int z, Entity entity) { int meta = world.getBlockMetadata(x, y, z); @@ -76,4 +73,10 @@ public class BlockOreBasalt extends BlockEnumMulti { if(meta == EnumBasaltOreType.ASBESTOS.ordinal()) world.setBlock(x, y, z, ModBlocks.gas_asbestos); super.dropBlockAsItemWithChance(world, x, y, z, meta, chance, fortune); } + + @Override + public ArrayList getDrops(World world, int x, int y, int z, int metadata, int fortune) { + return ModBlocks.getDropsWithoutDamage(world, this, metadata, fortune); + } + } diff --git a/src/main/java/com/hbm/blocks/generic/BlockStalagmite.java b/src/main/java/com/hbm/blocks/generic/BlockStalagmite.java index f8beed00c..5db100280 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockStalagmite.java +++ b/src/main/java/com/hbm/blocks/generic/BlockStalagmite.java @@ -1,5 +1,6 @@ package com.hbm.blocks.generic; +import java.util.ArrayList; import java.util.Random; import com.hbm.blocks.BlockEnumMulti; @@ -10,6 +11,7 @@ import com.hbm.items.ModItems; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; @@ -45,11 +47,6 @@ public class BlockStalagmite extends BlockEnumMulti { return null; } - - @Override - public int damageDropped(int meta) { - return 0; - } public static int getMetaFromResource(int meta) { return meta; @@ -75,4 +72,10 @@ public class BlockStalagmite extends BlockEnumMulti { public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { return null; } + + @Override + public ArrayList getDrops(World world, int x, int y, int z, int metadata, int fortune) { + return ModBlocks.getDropsWithoutDamage(world, this, metadata, fortune); + } + } From 8bbed76758e8e5700640b2837da898d31e2576ff Mon Sep 17 00:00:00 2001 From: George Paton Date: Fri, 20 Sep 2024 10:58:37 +1000 Subject: [PATCH 26/63] Basalt side textures --- src/main/java/com/hbm/blocks/ModBlocks.java | 6980 ++++++++--------- .../hbm/blocks/generic/BlockOreBasalt.java | 27 + .../assets/hbm/textures/blocks/basalt.png | Bin 4529 -> 4414 bytes .../assets/hbm/textures/blocks/basalt_top.png | Bin 0 -> 4529 bytes .../textures/blocks/ore_basalt_asbestos.png | Bin 4659 -> 1093 bytes .../blocks/ore_basalt_asbestos_top.png | Bin 0 -> 4659 bytes .../textures/blocks/ore_basalt_fluorite.png | Bin 4661 -> 976 bytes .../blocks/ore_basalt_fluorite_top.png | Bin 0 -> 4661 bytes .../hbm/textures/blocks/ore_basalt_gem.png | Bin 4697 -> 908 bytes .../textures/blocks/ore_basalt_gem_top.png | Bin 0 -> 4697 bytes .../textures/blocks/ore_basalt_molysite.png | Bin 4750 -> 1017 bytes .../blocks/ore_basalt_molysite_top.png | Bin 0 -> 4750 bytes .../textures/blocks/ore_basalt_overlay.png | Bin 947 -> 0 bytes .../hbm/textures/blocks/ore_basalt_sulfur.png | Bin 4706 -> 1051 bytes .../textures/blocks/ore_basalt_sulfur_top.png | Bin 0 -> 4706 bytes 15 files changed, 3517 insertions(+), 3490 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/blocks/basalt_top.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_asbestos_top.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_fluorite_top.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_gem_top.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_molysite_top.png delete mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_overlay.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur_top.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 20e408b38..9334145bd 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -1,3490 +1,3490 @@ -package com.hbm.blocks; - -import java.util.ArrayList; - -import com.hbm.blocks.BlockEnums.*; -import com.hbm.blocks.bomb.*; -import com.hbm.blocks.fluid.*; -import com.hbm.blocks.gas.*; -import com.hbm.blocks.generic.*; -import com.hbm.blocks.generic.BlockHazard.ExtDisplayEffect; -import com.hbm.blocks.generic.BlockMotherOfAllOres.ItemRandomOreBlock; -import com.hbm.blocks.machine.*; -import com.hbm.blocks.machine.pile.*; -import com.hbm.blocks.machine.rbmk.*; -import com.hbm.blocks.network.*; -import com.hbm.blocks.rail.*; -import com.hbm.blocks.test.*; -import com.hbm.blocks.turret.*; -import com.hbm.items.block.*; -import com.hbm.items.bomb.ItemPrototypeBlock; -import com.hbm.items.special.ItemOreBlock; -import com.hbm.lib.ModDamageSource; -import com.hbm.lib.RefStrings; -import com.hbm.main.MainRegistry; -import com.hbm.tileentity.DoorDecl; -import com.hbm.tileentity.machine.storage.TileEntityFileCabinet; -import cpw.mods.fml.common.registry.GameRegistry; -import net.minecraft.block.Block; -import net.minecraft.block.BlockFalling; -import net.minecraft.block.material.MapColor; -import net.minecraft.block.material.Material; -import net.minecraft.block.material.MaterialLiquid; -import net.minecraft.creativetab.CreativeTabs; -import net.minecraft.item.Item; -import net.minecraft.item.ItemBlock; -import net.minecraft.item.ItemStack; -import net.minecraft.world.World; -import net.minecraftforge.fluids.Fluid; -import net.minecraftforge.fluids.FluidRegistry; - -public class ModBlocks { - - public static void mainRegistry() - { - initializeBlock(); - registerBlock(); - } - - public static Block event_tester; - public static Block obj_tester; - public static Block test_core; - public static Block test_charge; - public static Block structure_anchor; - - public static Block ore_uranium; - public static Block ore_uranium_scorched; - public static Block ore_titanium; - public static Block ore_sulfur; - public static Block ore_thorium; - public static Block ore_niter; - public static Block ore_copper; - public static Block ore_tungsten; - public static Block ore_aluminium; - public static Block ore_fluorite; - public static Block ore_lead; - public static Block ore_schrabidium; - public static Block ore_beryllium; - public static Block ore_australium; - public static Block ore_rare; - public static Block ore_cobalt; - public static Block ore_cinnebar; - public static Block ore_coltan; - public static Block ore_alexandrite; - - public static Block ore_random; - public static Block ore_bedrock; - public static Block ore_volcano; - - public static Block ore_nether_coal; - public static Block ore_nether_smoldering; - public static Block ore_nether_uranium; - public static Block ore_nether_uranium_scorched; - public static Block ore_nether_plutonium; - public static Block ore_nether_tungsten; - public static Block ore_nether_sulfur; - public static Block ore_nether_fire; - public static Block ore_nether_cobalt; - public static Block ore_nether_schrabidium; - - public static Block ore_meteor; - - public static Block stone_gneiss; - public static Block ore_gneiss_iron; - public static Block ore_gneiss_gold; - public static Block ore_gneiss_uranium; - public static Block ore_gneiss_uranium_scorched; - public static Block ore_gneiss_copper; - public static Block ore_gneiss_asbestos; - public static Block ore_gneiss_lithium; - public static Block ore_gneiss_schrabidium; - public static Block ore_gneiss_rare; - public static Block ore_gneiss_gas; - - public static Block gneiss_brick; - public static Block gneiss_tile; - public static Block gneiss_chiseled; - - public static Block stone_depth; - public static Block ore_depth_cinnebar; - public static Block ore_depth_zirconium; - public static Block ore_depth_borax; - public static Block cluster_depth_iron; - public static Block cluster_depth_titanium; - public static Block cluster_depth_tungsten; - - public static Block stone_keyhole; - - public static Block stone_depth_nether; - public static Block ore_depth_nether_neodymium; - - public static Block stone_porous; - public static Block stone_resource; - public static Block stalagmite; - public static Block stalactite; - public static Block stone_biome; - - public static Block depth_brick; - public static Block depth_tiles; - public static Block depth_nether_brick; - public static Block depth_nether_tiles; - public static Block depth_dnt; - - public static Block basalt; - public static Block ore_basalt; - public static Block basalt_smooth; - public static Block basalt_brick; - public static Block basalt_polished; - public static Block basalt_tiles; - - public static Block cluster_iron; - public static Block cluster_titanium; - public static Block cluster_aluminium; - public static Block cluster_copper; - - public static Block ore_oil; - public static Block ore_oil_empty; - public static Block ore_oil_sand; - public static Block ore_bedrock_oil; - public static Block ore_lignite; - public static Block ore_asbestos; - public static Block ore_coal_oil; - public static Block ore_coal_oil_burning; - - public static Block ore_tikite; - - public static Block block_thorium; - public static Block block_thorium_fuel; - public static Block block_uranium; - public static Block block_u233; - public static Block block_u235; - public static Block block_u238; - public static Block block_uranium_fuel; - public static Block block_neptunium; - public static Block block_polonium; - public static Block block_mox_fuel; - public static Block block_plutonium; - public static Block block_pu238; - public static Block block_pu239; - public static Block block_pu240; - public static Block block_pu_mix; - public static Block block_plutonium_fuel; - public static Block block_titanium; - public static Block block_sulfur; - public static Block block_niter; - public static Block block_copper; - public static Block block_red_copper; - public static Block block_tungsten; - public static Block block_aluminium; - public static Block block_fluorite; - public static Block block_steel; - public static Block block_tcalloy; - public static Block block_cdalloy; - public static Block block_lead; - public static Block block_bismuth; - public static Block block_cadmium; - public static Block block_coltan; - public static Block block_tantalium; - public static Block block_niobium; - public static Block block_trinitite; - public static Block block_waste; - public static Block block_waste_painted; - public static Block block_waste_vitrified; - public static Block ancient_scrap; - public static Block block_corium; - public static Block block_corium_cobble; - public static Block block_scrap; - public static Block block_electrical_scrap; - public static Block block_beryllium; - public static Block block_schraranium; - public static Block block_schrabidium; - public static Block block_schrabidate; - public static Block block_solinium; - public static Block block_schrabidium_fuel; - public static Block block_euphemium; - public static Block block_schrabidium_cluster; - public static Block block_euphemium_cluster; - public static Block block_dineutronium; - public static Block block_advanced_alloy; - public static Block block_magnetized_tungsten; - public static Block block_combine_steel; - public static Block block_desh; - public static Block block_dura_steel; - public static Block block_starmetal; - public static Block block_polymer; - public static Block block_bakelite; - public static Block block_rubber; - public static Block block_yellowcake; - public static Block block_insulator; - public static Block block_fiberglass; - public static Block block_asbestos; - public static Block block_cobalt; - public static Block block_lithium; - public static Block block_zirconium; - public static Block block_white_phosphorus; - public static Block block_red_phosphorus; - public static Block block_fallout; - public static Block block_foam; - public static Block block_coke; - public static Block block_graphite; - public static Block block_graphite_drilled; - public static Block block_graphite_fuel; - public static Block block_graphite_plutonium; - public static Block block_graphite_rod; - public static Block block_graphite_source; - public static Block block_graphite_lithium; - public static Block block_graphite_tritium; - public static Block block_graphite_detector; - public static Block block_boron; - public static Block block_lanthanium; - public static Block block_ra226; - public static Block block_actinium; - public static Block block_tritium; - public static Block block_semtex; - public static Block block_c4; - public static Block block_smore; - public static Block block_slag; - - public static Block block_australium; - public static Block block_weidanium; - public static Block block_reiium; - public static Block block_unobtainium; - public static Block block_daffergon; - public static Block block_verticium; - - public static Block block_cap; - - public static Block deco_titanium; - public static Block deco_red_copper; - public static Block deco_tungsten; - public static Block deco_aluminium; - public static Block deco_steel; - public static Block deco_lead; - public static Block deco_beryllium; - public static Block deco_asbestos; - public static Block deco_rbmk; - public static Block deco_rbmk_smooth; - - public static Block deco_emitter; - public static Block part_emitter; - public static Block deco_loot; - public static Block pedestal; - public static Block bobblehead; - public static Block snowglobe; - public static Block plushie; - - public static Block gravel_obsidian; - public static Block gravel_diamond; - public static Block asphalt; - public static Block asphalt_light; - - public static Block reinforced_brick; - public static Block reinforced_ducrete; - public static Block reinforced_glass; - public static Block reinforced_glass_pane; - public static Block reinforced_light; - public static Block reinforced_sand; - public static Block reinforced_lamp_off; - public static Block reinforced_lamp_on; - public static Block reinforced_laminate; - public static Block reinforced_laminate_pane; - - public static Block lamp_tritium_green_off; - public static Block lamp_tritium_green_on; - public static Block lamp_tritium_blue_off; - public static Block lamp_tritium_blue_on; - - public static Block lamp_demon; - - public static Block lantern; - public static Block lantern_behemoth; - - public static Block spotlight_incandescent; - public static Block spotlight_incandescent_off; - public static Block spotlight_fluoro; - public static Block spotlight_fluoro_off; - public static Block spotlight_halogen; - public static Block spotlight_halogen_off; - public static Block spotlight_beam; - public static Block floodlight; - public static Block floodlight_beam; - - public static Block reinforced_stone; - public static Block concrete_smooth; - public static Block concrete_colored; - public static Block concrete_colored_ext; - public static Block concrete; - public static Block concrete_asbestos; - public static Block concrete_super; - public static Block concrete_super_broken; - public static Block ducrete_smooth; - public static Block ducrete; - public static Block concrete_pillar; - public static Block brick_concrete; - public static Block brick_concrete_mossy; - public static Block brick_concrete_cracked; - public static Block brick_concrete_broken; - public static Block brick_concrete_marked; - public static Block brick_ducrete; - public static Block brick_obsidian; - public static Block brick_light; - public static Block brick_compound; - public static Block brick_asbestos; - public static Block brick_fire; - - public static Block concrete_slab; - public static Block concrete_double_slab; - public static Block concrete_brick_slab; - public static Block concrete_brick_double_slab; - public static Block brick_slab; - public static Block brick_double_slab; - - public static Block concrete_smooth_stairs; - public static Block concrete_stairs; - public static Block concrete_asbestos_stairs; - public static Block ducrete_smooth_stairs; - public static Block ducrete_stairs; - public static Block brick_concrete_stairs; - public static Block brick_concrete_mossy_stairs; - public static Block brick_concrete_cracked_stairs; - public static Block brick_concrete_broken_stairs; - public static Block brick_ducrete_stairs; - public static Block reinforced_stone_stairs; - public static Block reinforced_brick_stairs; - public static Block brick_obsidian_stairs; - public static Block brick_light_stairs; - public static Block brick_compound_stairs; - public static Block brick_asbestos_stairs; - public static Block brick_fire_stairs; - public static Block asphalt_stairs; - - public static Block cmb_brick; - public static Block cmb_brick_reinforced; - - public static Block vinyl_tile; - - public static Block tile_lab; - public static Block tile_lab_cracked; - public static Block tile_lab_broken; - - public static Block block_meteor; - public static Block block_meteor_cobble; - public static Block block_meteor_broken; - public static Block block_meteor_molten; - public static Block block_meteor_treasure; - public static Block meteor_polished; - public static Block meteor_brick; - public static Block meteor_brick_mossy; - public static Block meteor_brick_cracked; - public static Block meteor_brick_chiseled; - public static Block meteor_pillar; - public static Block meteor_spawner; - public static Block meteor_battery; - - public static Block moon_turf; - - public static Block brick_jungle; - public static Block brick_jungle_cracked; - public static Block brick_jungle_fragile; - public static Block brick_jungle_lava; - public static Block brick_jungle_ooze; - public static Block brick_jungle_mystic; - public static Block brick_jungle_trap; - public static Block brick_jungle_glyph; - public static Block brick_jungle_circle; - - public static Block brick_red; - - public static Block deco_computer; - public static Block deco_crt; - public static Block deco_toaster; - - public static Block filing_cabinet; - - public static Block tape_recorder; - public static Block steel_poles; - public static Block pole_top; - public static Block pole_satellite_receiver; - public static Block steel_wall; - public static Block steel_corner; - public static Block steel_roof; - public static Block steel_beam; - public static Block steel_scaffold; - public static Block steel_grate; - public static Block steel_grate_wide; - public static Block scaffold_dynamic; - - public static Block deco_pipe; - public static Block deco_pipe_rusted; - public static Block deco_pipe_green; - public static Block deco_pipe_green_rusted; - public static Block deco_pipe_red; - public static Block deco_pipe_marked; - public static Block deco_pipe_rim; - public static Block deco_pipe_rim_rusted; - public static Block deco_pipe_rim_green; - public static Block deco_pipe_rim_green_rusted; - public static Block deco_pipe_rim_red; - public static Block deco_pipe_rim_marked; - public static Block deco_pipe_framed; - public static Block deco_pipe_framed_rusted; - public static Block deco_pipe_framed_green; - public static Block deco_pipe_framed_green_rusted; - public static Block deco_pipe_framed_red; - public static Block deco_pipe_framed_marked; - public static Block deco_pipe_quad; - public static Block deco_pipe_quad_rusted; - public static Block deco_pipe_quad_green; - public static Block deco_pipe_quad_green_rusted; - public static Block deco_pipe_quad_red; - public static Block deco_pipe_quad_marked; - - public static Block broadcaster_pc; - public static Block geiger; - public static Block hev_battery; - - public static Block fence_metal; - - public static Block sand_boron; - public static Block sand_lead; - public static Block sand_uranium; - public static Block sand_polonium; - public static Block sand_quartz; - public static Block ash_digamma; - public static Block glass_boron; - public static Block glass_lead; - public static Block glass_uranium; - public static Block glass_trinitite; - public static Block glass_polonium; - public static Block glass_ash; - public static Block glass_quartz; - - public static Block mush; - public static Block mush_block; - public static Block mush_block_stem; - - public static Block glyphid_base; - public static Block glyphid_spawner; - - public static Block plant_flower; - public static Block plant_tall; - public static Block plant_dead; - public static Block reeds; - - public static Block waste_earth; - public static Block waste_mycelium; - public static Block waste_trinitite; - public static Block waste_trinitite_red; - public static Block waste_log; - public static Block waste_leaves; - public static Block waste_planks; - public static Block frozen_dirt; - public static Block frozen_grass; - public static Block frozen_log; - public static Block frozen_planks; - public static Block dirt_dead; - public static Block dirt_oily; - public static Block sand_dirty; - public static Block sand_dirty_red; - public static Block stone_cracked; - public static Block burning_earth; - public static Block tektite; - public static Block ore_tektite_osmiridium; - public static Block impact_dirt; - - public static Block fallout; - public static Block foam_layer; - public static Block sand_boron_layer; - public static Block leaves_layer; - public static Block oil_spill; - - public static Block sellafield_slaked; - public static Block sellafield_bedrock; - public static Block sellafield; - public static Block ore_sellafield_diamond; - public static Block ore_sellafield_emerald; - public static Block ore_sellafield_uranium_scorched; - public static Block ore_sellafield_schrabidium; - public static Block ore_sellafield_radgem; - - public static Block geysir_water; - public static Block geysir_chlorine; - public static Block geysir_vapor; - public static Block geysir_nether; - - public static Block flame_war; - public static Block float_bomb; - public static Block therm_endo; - public static Block therm_exo; - public static Block emp_bomb; - public static Block det_cord; - public static Block det_charge; - public static Block det_nuke; - public static Block det_miner; - public static Block red_barrel; - public static Block pink_barrel; - public static Block yellow_barrel; - public static Block vitrified_barrel; - public static Block lox_barrel; - public static Block taint_barrel; - public static Block crashed_balefire; - public static Block fireworks; - public static Block dynamite; - public static Block tnt; - public static Block semtex; - public static Block c4; - public static Block fissure_bomb; - - public static Block charge_dynamite; - public static Block charge_miner; - public static Block charge_c4; - public static Block charge_semtex; - - public static Block mine_ap; - public static Block mine_he; - public static Block mine_shrap; - public static Block mine_fat; - - public static Block crate; - public static Block crate_weapon; - public static Block crate_lead; - public static Block crate_metal; - public static Block crate_red; - public static Block crate_can; - public static Block crate_ammo; - public static Block crate_jungle; - - public static Block boxcar; - public static Block boat; - - public static Block seal_frame; - public static Block seal_controller; - public static Block seal_hatch; - - public static Block vault_door; - public static Block blast_door; - public static Block sliding_blast_door; - public static Block fire_door; - public static Block transition_seal; - public static Block silo_hatch; - public static Block silo_hatch_large; - - // 1.12.2 Doors - public static Block secure_access_door; - public static Block large_vehicle_door; - public static Block qe_containment; - public static Block qe_sliding_door; - public static Block round_airlock_door; - public static Block sliding_seal_door; - public static Block water_door; - - public static Block door_metal; - public static Block door_office; - public static Block door_bunker; - public static Block door_red; - - public static Block barbed_wire; - public static Block barbed_wire_fire; - public static Block barbed_wire_poison; - public static Block barbed_wire_acid; - public static Block barbed_wire_wither; - public static Block barbed_wire_ultradeath; - public static Block spikes; - - public static Block charger; - - public static Block tesla; - - public static Block sat_mapper; - public static Block sat_scanner; - public static Block sat_radar; - public static Block sat_laser; - public static Block sat_foeq; - public static Block sat_resonator; - - public static Block sat_dock; - - public static Block soyuz_capsule; - - public static Block crate_iron; - public static Block crate_steel; - public static Block crate_desh; - public static Block crate_tungsten; - public static Block crate_template; - public static Block safe; - public static Block mass_storage; - - public static Block nuke_gadget; - public static Block nuke_boy; - public static Block nuke_man; - public static Block nuke_mike; - public static Block nuke_tsar; - public static Block nuke_fleija; - public static Block nuke_prototype; - public static Block nuke_custom; - public static Block nuke_solinium; - public static Block nuke_n2; - public static Block nuke_fstbmb; - public static Block bomb_multi; - - public static Block pump_steam; - public static Block pump_electric; - - public static Block heater_firebox; - public static Block heater_oven; - public static Block heater_oilburner; - public static Block heater_electric; - public static Block heater_heatex; - public static Block machine_ashpit; - - public static Block furnace_iron; - public static Block furnace_steel; - public static Block furnace_combination; - public static Block machine_stirling; - public static Block machine_stirling_steel; - public static Block machine_stirling_creative; - public static Block machine_sawmill; - public static Block machine_crucible; - public static Block machine_boiler; - public static Block machine_industrial_boiler; - - public static Block foundry_mold; - public static Block foundry_basin; - public static Block foundry_channel; - public static Block foundry_tank; - public static Block foundry_outlet; - public static Block machine_strand_caster; - public static Block foundry_slagtap; - public static Block slag; - - public static Block machine_difurnace_off; - public static Block machine_difurnace_on; - public static Block machine_difurnace_extension; - public static Block machine_difurnace_rtg_off; - public static Block machine_difurnace_rtg_on; - //public static final int guiID_test_difurnace = 1; historical - - public static Block machine_centrifuge; - public static Block machine_gascent; - - public static Block machine_fel; - public static Block machine_silex; - - public static Block machine_crystallizer; - - public static Block machine_uf6_tank; - - public static Block machine_puf6_tank; - - public static Block machine_reactor_breeding; - - public static Block machine_furnace_brick_off; - public static Block machine_furnace_brick_on; - public static Block machine_nuke_furnace_off; - public static Block machine_nuke_furnace_on; - public static Block machine_rtg_furnace_off; - public static Block machine_rtg_furnace_on; - - public static Block machine_industrial_generator; - - public static Block machine_cyclotron; - public static Block machine_exposure_chamber; - - public static Block hadron_plating; - public static Block hadron_plating_blue; - public static Block hadron_plating_black; - public static Block hadron_plating_yellow; - public static Block hadron_plating_striped; - public static Block hadron_plating_voltz; - public static Block hadron_plating_glass; - public static Block hadron_coil_alloy; - public static Block hadron_coil_gold; - public static Block hadron_coil_neodymium; - public static Block hadron_coil_magtung; - public static Block hadron_coil_schrabidium; - public static Block hadron_coil_schrabidate; - public static Block hadron_coil_starmetal; - public static Block hadron_coil_chlorophyte; - public static Block hadron_coil_mese; - public static Block hadron_power; - public static Block hadron_power_10m; - public static Block hadron_power_100m; - public static Block hadron_power_1g; - public static Block hadron_power_10g; - public static Block hadron_diode; - public static Block hadron_analysis; - public static Block hadron_analysis_glass; - public static Block hadron_access; - public static Block hadron_core; - public static Block hadron_cooler; - - public static Block machine_electric_furnace_off; - public static Block machine_electric_furnace_on; - - public static Block machine_microwave; - - public static Block machine_arc_furnace_off; - public static Block machine_arc_furnace_on; - - //public static Block machine_deuterium; - - public static Block machine_battery_potato; - public static Block machine_battery; - public static Block machine_lithium_battery; - public static Block machine_schrabidium_battery; - public static Block machine_dineutronium_battery; - public static Block machine_fensu; - public static final int guiID_machine_fensu = 99; - - public static Block capacitor_bus; - public static Block capacitor_copper; - public static Block capacitor_gold; - public static Block capacitor_niobium; - public static Block capacitor_tantalium; - public static Block capacitor_schrabidate; - - public static Block machine_wood_burner; - - public static Block red_wire_coated; - public static Block red_cable; - public static Block red_cable_classic; - public static Block red_cable_paintable; - public static Block red_cable_gauge; - public static Block red_connector; - public static Block red_pylon; - public static Block red_pylon_medium_wood; - public static Block red_pylon_medium_wood_transformer; - public static Block red_pylon_medium_steel; - public static Block red_pylon_medium_steel_transformer; - public static Block red_pylon_large; - public static Block substation; - public static Block cable_switch; - public static Block cable_detector; - public static Block cable_diode; - public static Block machine_detector; - public static Block fluid_duct_neo; - public static Block fluid_duct_box; - public static Block fluid_duct_paintable; - public static Block fluid_duct_gauge; - public static Block fluid_duct_exhaust; - public static Block fluid_valve; - public static Block fluid_switch; - public static Block machine_drain; - public static Block radio_torch_sender; - public static Block radio_torch_receiver; - public static Block radio_torch_counter; - public static Block radio_torch_logic; - public static Block radio_telex; - - public static Block conveyor; - public static Block conveyor_express; - //public static Block conveyor_classic; - public static Block conveyor_double; - public static Block conveyor_triple; - public static Block conveyor_chute; - public static Block conveyor_lift; - public static Block crane_extractor; - public static Block crane_inserter; - public static Block crane_grabber; - public static Block crane_router; - public static Block crane_boxer; - public static Block crane_unboxer; - public static Block crane_splitter; - public static Block crane_partitioner; - - public static Block drone_waypoint; - public static Block drone_crate; - public static Block drone_waypoint_request; - public static Block drone_dock; - public static Block drone_crate_provider; - public static Block drone_crate_requester; - - public static Block fan; - - public static Block piston_inserter; - - public static Block chain; - - public static Block ladder_sturdy; - public static Block ladder_iron; - public static Block ladder_gold; - public static Block ladder_aluminium; - public static Block ladder_copper; - public static Block ladder_titanium; - public static Block ladder_lead; - public static Block ladder_cobalt; - public static Block ladder_steel; - public static Block ladder_tungsten; - - public static Block barrel_plastic; - public static Block barrel_corroded; - public static Block barrel_iron; - public static Block barrel_steel; - public static Block barrel_tcalloy; - public static Block barrel_antimatter; - - public static Block machine_transformer; - public static Block machine_transformer_20; - public static Block machine_transformer_dnt; - public static Block machine_transformer_dnt_20; - - public static Block bomb_multi_large; - public static final int guiID_bomb_multi_large = 18; - - public static Block machine_solar_boiler; - public static final int guiID_solar_boiler = 18; - public static Block solar_mirror; - - public static Block struct_launcher; - public static Block struct_scaffold; - public static Block struct_launcher_core; - public static Block struct_launcher_core_large; - public static Block struct_soyuz_core; - public static Block struct_iter_core; - public static Block struct_plasma_core; - public static Block struct_watz_core; - public static Block struct_icf_core; - - public static Block factory_titanium_hull; - @Deprecated public static Block factory_titanium_furnace; - @Deprecated public static Block factory_titanium_conductor; - - public static Block factory_advanced_hull; - @Deprecated public static Block factory_advanced_furnace; - @Deprecated public static Block factory_advanced_conductor; - - public static Block cm_block; - public static Block cm_sheet; - public static Block cm_engine; - public static Block cm_tank; - public static Block cm_circuit; - public static Block cm_port; - public static Block cm_flux; - public static Block cm_heat; - public static Block custom_machine; - public static Block cm_anchor; - - public static Block pwr_fuel; - public static Block pwr_control; - public static Block pwr_channel; - public static Block pwr_heatex; - public static Block pwr_heatsink; - public static Block pwr_neutron_source; - public static Block pwr_reflector; - public static Block pwr_casing; - public static Block pwr_port; - public static Block pwr_controller; - public static Block pwr_block; - - public static Block fusion_conductor; - public static Block fusion_center; - public static Block fusion_motor; - public static Block fusion_heater; - public static Block fusion_hatch; - public static Block plasma; - - public static Block iter; - public static Block plasma_heater; - - public static Block machine_icf_press; - public static Block icf_component; - public static Block icf; - public static Block icf_controller; - public static Block icf_laser_component; - public static Block icf_block; - - public static Block watz; - public static Block watz_pump; - - public static Block watz_element; - public static Block watz_cooler; - public static Block watz_end; - - public static Block balefire; - public static Block fire_digamma; - public static Block digamma_matter; - - public static Block dfc_emitter; - public static Block dfc_injector; - public static Block dfc_receiver; - public static Block dfc_stabilizer; - public static Block dfc_core; - - public static Block machine_converter_he_rf; - public static Block machine_converter_rf_he; - - public static Block machine_schrabidium_transmutator; - - public static Block machine_diesel; - public static Block machine_combustion_engine; - - public static Block machine_shredder; - - public static Block machine_teleporter; - public static Block teleanchor; - public static Block field_disturber; - - public static Block machine_rtg_grey; - public static Block machine_amgen; - public static Block machine_geo; - public static Block machine_minirtg; - public static Block machine_powerrtg; - public static Block machine_radiolysis; - public static Block machine_hephaestus; - - public static Block machine_well; - public static Block oil_pipe; - public static Block machine_pumpjack; - public static Block machine_fracking_tower; - - public static Block machine_flare; - public static Block chimney_brick; - public static Block chimney_industrial; - - public static Block machine_refinery; - public static Block machine_vacuum_distill; - public static Block machine_fraction_tower; - public static Block fraction_spacer; - public static Block machine_catalytic_cracker; - public static Block machine_catalytic_reformer; - public static Block machine_hydrotreater; - public static Block machine_coker; - public static Block machine_pyrooven; - - public static Block machine_boiler_off; - - public static Block machine_steam_engine; - public static Block machine_turbine; - public static Block machine_large_turbine; - - public static Block machine_deuterium_extractor; - public static Block machine_deuterium_tower; - - public static Block machine_liquefactor; - public static Block machine_solidifier; - public static Block machine_compressor; - - public static Block machine_chungus; - public static Block machine_condenser; - public static Block machine_tower_small; - public static Block machine_tower_large; - public static Block machine_condenser_powered; - - public static Block machine_electrolyser; - - public static Block machine_excavator; - public static Block machine_ore_slopper; - public static Block machine_autosaw; - - public static Block machine_mining_laser; - public static Block barricade; // a sand bag that drops nothing, for automated walling purposes - - public static Block machine_assembler; - public static Block machine_assemfac; - public static Block machine_arc_welder; - public static Block machine_soldering_station; - public static Block machine_arc_furnace; - - public static Block machine_chemplant; - public static Block machine_chemfac; - public static Block machine_mixer; - - public static Block machine_fluidtank; - public static Block machine_bat9000; - public static Block machine_orbus; - - public static Block launch_pad; - public static Block launch_pad_rusted; - public static Block launch_pad_large; - - public static Block machine_missile_assembly; - - public static Block compact_launcher; - public static Block launch_table; - - public static Block soyuz_launcher; - - public static Block machine_radar; - public static Block machine_radar_large; - public static Block radar_screen; - - public static Block machine_turbofan; - public static Block machine_turbinegas; - public static Block machine_lpw2; - - public static Block press_preheater; - public static Block machine_press; - public static Block machine_epress; - public static Block machine_conveyor_press; - - public static Block machine_siren; - - public static Block machine_radgen; - - public static Block machine_satlinker; - public static Block machine_keyforge; - - public static Block machine_armor_table; - - public static Block reactor_research; - public static Block reactor_zirnox; - public static Block zirnox_destroyed; - - public static Block machine_controller; - - public static Block machine_spp_bottom; - public static Block machine_spp_top; - - public static Block radiobox; - public static Block radiorec; - - public static Block machine_forcefield; - - public static Block machine_waste_drum; - public static Block machine_storage_drum; - - public static Block machine_autocrafter; - public static Block machine_funnel; - - public static Block anvil_iron; - public static Block anvil_lead; - public static Block anvil_steel; - public static Block anvil_desh; - public static Block anvil_saturnite; - public static Block anvil_ferrouranium; - public static Block anvil_bismuth_bronze; - public static Block anvil_arsenic_bronze; - public static Block anvil_schrabidate; - public static Block anvil_dnt; - public static Block anvil_osmiridium; - public static Block anvil_murky; - - public static Block turret_chekhov; - public static Block turret_friendly; - public static Block turret_jeremy; - public static Block turret_tauon; - public static Block turret_richard; - public static Block turret_howard; - public static Block turret_howard_damaged; - public static Block turret_maxwell; - public static Block turret_fritz; - public static Block turret_arty; - public static Block turret_himars; - public static Block turret_sentry; - public static Block turret_sentry_damaged; - - public static Block rbmk_rod; - public static Block rbmk_rod_mod; - public static Block rbmk_rod_reasim; - public static Block rbmk_rod_reasim_mod; - public static Block rbmk_control; - public static Block rbmk_control_mod; - public static Block rbmk_control_auto; - public static Block rbmk_blank; - public static Block rbmk_boiler; - public static Block rbmk_reflector; - public static Block rbmk_absorber; - public static Block rbmk_moderator; - public static Block rbmk_outgasser; - public static Block rbmk_storage; - public static Block rbmk_cooler; - public static Block rbmk_heater; - public static Block rbmk_console; - public static Block rbmk_crane_console; - public static Block rbmk_loader; - public static Block rbmk_steam_inlet; - public static Block rbmk_steam_outlet; - public static Block pribris; - public static Block pribris_burning; - public static Block pribris_radiating; - public static Block pribris_digamma; - - public static Block book_guide; - - public static Block rail_wood; - public static Block rail_narrow; - public static Block rail_highspeed; - public static Block rail_booster; - - public static Block rail_narrow_straight; - public static Block rail_narrow_curve; - public static Block rail_large_straight; - public static Block rail_large_straight_short; - public static Block rail_large_curve; - public static Block rail_large_curve_7; - public static Block rail_large_curve_9; - public static Block rail_large_ramp; - public static Block rail_large_buffer; - public static Block rail_large_switch; - public static Block rail_large_switch_flipped; - - public static Block statue_elb; - public static Block statue_elb_g; - public static Block statue_elb_w; - public static Block statue_elb_f; - - public static Block cheater_virus; - public static Block cheater_virus_seed; - public static Block crystal_virus; - public static Block crystal_hardened; - public static Block crystal_pulsar; - public static Block taint; - - public static Block vent_chlorine; - public static Block vent_cloud; - public static Block vent_pink_cloud; - public static Block vent_chlorine_seal; - public static Block chlorine_gas; - - public static Block gas_radon; - public static Block gas_radon_dense; - public static Block gas_radon_tomb; - public static Block gas_meltdown; - public static Block gas_monoxide; - public static Block gas_asbestos; - public static Block gas_coal; - public static Block gas_flammable; - public static Block gas_explosive; - public static Block vacuum; - - public static Block absorber; - public static Block absorber_red; - public static Block absorber_green; - public static Block absorber_pink; - public static Block decon; - public static Block transission_hatch; - - public static Block mud_block; - public static Fluid mud_fluid; - public static final Material fluidmud = (new MaterialLiquid(MapColor.adobeColor)); - - public static Block acid_block; - public static Fluid acid_fluid; - public static final Material fluidacid = (new MaterialLiquid(MapColor.purpleColor)); - - public static Block toxic_block; - public static Fluid toxic_fluid; - public static final Material fluidtoxic = (new MaterialLiquid(MapColor.greenColor)); - - public static Block schrabidic_block; - public static Fluid schrabidic_fluid; - public static final Material fluidschrabidic = (new MaterialLiquid(MapColor.cyanColor)); - - public static Block corium_block; - public static Fluid corium_fluid; - public static final Material fluidcorium = (new MaterialLiquid(MapColor.brownColor) { - - @Override - public boolean blocksMovement() { - return true; - } - - @Override - public Material setImmovableMobility() { //override access modifier - return super.setImmovableMobility(); - } - - }.setImmovableMobility()); - - public static Block volcanic_lava_block; - public static Fluid volcanic_lava_fluid; - public static Block rad_lava_block; - public static Fluid rad_lava_fluid; - - public static Block sulfuric_acid_block; - public static Fluid sulfuric_acid_fluid; - - public static Block concrete_liquid; - - public static Block volcano_core; - public static Block volcano_rad_core; - - public static Block dummy_block_vault; - public static Block dummy_block_blast; - public static Block dummy_block_uf6; - public static Block dummy_block_puf6; - public static Block dummy_plate_compact_launcher; - public static Block dummy_port_compact_launcher; - public static Block dummy_plate_launch_table; - public static Block dummy_port_launch_table; - public static Block dummy_plate_cargo; - - public static Block ntm_dirt; - - public static Block pink_log; - public static Block pink_planks; - public static Block pink_slab; - public static Block pink_double_slab; - public static Block pink_stairs; - - public static Material materialGas = new MaterialGas(); - - private static void initializeBlock() { - - event_tester = new TestEventTester(Material.iron).setBlockName("event_tester").setCreativeTab(null).setHardness(2.5F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":event_tester"); - obj_tester = new TestObjTester(Material.iron).setBlockName("obj_tester").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F); - test_core = new TestCore(Material.iron).setBlockName("test_core").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":test_core"); - test_charge = new TestCharge(Material.iron).setBlockName("test_charge").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F); - structure_anchor = new BlockGeneric(Material.iron).setBlockName("structure_anchor").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":structure_anchor"); - - ore_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_uranium"); - ore_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_uranium_scorched"); - ore_titanium = new BlockGeneric(Material.rock).setBlockName("ore_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_titanium"); - ore_sulfur = new BlockOre(Material.rock).setBlockName("ore_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_sulfur"); - ore_thorium = new BlockGeneric(Material.rock).setBlockName("ore_thorium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_thorium"); - - ore_niter = new BlockOre(Material.rock).setBlockName("ore_niter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_niter"); - ore_copper = new BlockGeneric(Material.rock).setBlockName("ore_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_copper"); - ore_tungsten = new BlockGeneric(Material.rock).setBlockName("ore_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tungsten"); - ore_aluminium = new BlockGeneric(Material.rock).setBlockName("ore_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_aluminium"); - ore_fluorite = new BlockOre(Material.rock).setBlockName("ore_fluorite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_fluorite"); - ore_lead = new BlockGeneric(Material.rock).setBlockName("ore_lead").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_lead"); - ore_schrabidium = new BlockOre(Material.rock, 0.1F, 0.5F).setBlockName("ore_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":ore_schrabidium"); - ore_beryllium = new BlockGeneric(Material.rock).setBlockName("ore_beryllium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_beryllium"); - ore_lignite = new BlockOre(Material.rock).setBlockName("ore_lignite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_lignite"); - ore_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_asbestos"); - ore_coal_oil = new BlockCoalOil(Material.rock).setBlockName("ore_coal_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil"); - ore_coal_oil_burning = new BlockCoalBurning(Material.rock).setBlockName("ore_coal_oil_burning").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil_burning"); - - cluster_iron = new BlockCluster(Material.rock).setBlockName("cluster_iron").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_iron"); - cluster_titanium = new BlockCluster(Material.rock).setBlockName("cluster_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_titanium"); - cluster_aluminium = new BlockCluster(Material.rock).setBlockName("cluster_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_aluminium"); - cluster_copper = new BlockCluster(Material.rock).setBlockName("cluster_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_copper"); - - ore_nether_coal = new BlockNetherCoal(Material.rock, false, 5, true).setBlockName("ore_nether_coal").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_coal"); - ore_nether_smoldering = new BlockSmolder(Material.rock).setBlockName("ore_nether_smoldering").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_smoldering"); - ore_nether_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_nether_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium"); - ore_nether_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_nether_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium_scorched"); - ore_nether_plutonium = new BlockGeneric(Material.rock).setBlockName("ore_nether_plutonium").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_plutonium"); - ore_nether_tungsten = new BlockGeneric(Material.rock).setBlockName("ore_nether_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_tungsten"); - ore_nether_sulfur = new BlockOre(Material.rock).setBlockName("ore_nether_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_sulfur"); - ore_nether_fire = new BlockOre(Material.rock).setBlockName("ore_nether_fire").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_fire"); - ore_nether_cobalt = new BlockOre(Material.rock).setBlockName("ore_nether_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_cobalt"); - ore_nether_schrabidium = new BlockGeneric(Material.rock).setBlockName("ore_nether_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_schrabidium"); - - ore_meteor = new BlockMeteorOre().setBlockName("ore_meteor").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); - - stone_gneiss = new BlockGeneric(Material.rock).setBlockName("stone_gneiss").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":stone_gneiss_var"); - ore_gneiss_iron = new BlockOre(Material.rock).setBlockName("ore_gneiss_iron").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_iron"); - ore_gneiss_gold = new BlockOre(Material.rock).setBlockName("ore_gneiss_gold").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gold"); - ore_gneiss_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_uranium"); - ore_gneiss_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_uranium_scorched"); - ore_gneiss_copper = new BlockOre(Material.rock).setBlockName("ore_gneiss_copper").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_copper"); - ore_gneiss_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_asbestos"); - ore_gneiss_lithium = new BlockOre(Material.rock).setBlockName("ore_gneiss_lithium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_lithium"); - ore_gneiss_schrabidium = new BlockOre(Material.rock).setBlockName("ore_gneiss_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_schrabidium"); - ore_gneiss_rare = new BlockOre(Material.rock).setBlockName("ore_gneiss_rare").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_rare"); - ore_gneiss_gas = new BlockOre(Material.rock).setBlockName("ore_gneiss_gas").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gas"); - - gneiss_brick = new BlockGeneric(Material.rock).setBlockName("gneiss_brick").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_brick"); - gneiss_tile = new BlockGeneric(Material.rock).setBlockName("gneiss_tile").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_tile"); - gneiss_chiseled = new BlockPillar(Material.rock, RefStrings.MODID + ":gneiss_tile").setBlockName("gneiss_chiseled").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_chiseled"); - - stone_depth = new BlockDepth().setBlockName("stone_depth").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_depth"); - ore_depth_cinnebar = new BlockDepthOre().setBlockName("ore_depth_cinnebar").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_cinnebar"); - ore_depth_zirconium = new BlockDepthOre().setBlockName("ore_depth_zirconium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_zirconium"); - ore_depth_borax = new BlockDepthOre().setBlockName("ore_depth_borax").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_borax"); - cluster_depth_iron = new BlockDepthOre().setBlockName("cluster_depth_iron").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_iron"); - cluster_depth_titanium = new BlockDepthOre().setBlockName("cluster_depth_titanium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_titanium"); - cluster_depth_tungsten = new BlockDepthOre().setBlockName("cluster_depth_tungsten").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_tungsten"); - ore_alexandrite = new BlockDepthOre().setBlockName("ore_alexandrite").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_alexandrite"); - - stone_keyhole = new BlockKeyhole().setBlockName("stone_keyhole").setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":stone_keyhole"); - - ore_random = new BlockMotherOfAllOres().setBlockName("ore_random").setCreativeTab(MainRegistry.blockTab); - ore_bedrock = new BlockBedrockOreTE().setBlockName("ore_bedrock").setCreativeTab(null); - ore_volcano = new BlockFissure().setBlockName("ore_volcano").setLightLevel(1F).setCreativeTab(MainRegistry.blockTab); - - depth_brick = new BlockDepth().setBlockName("depth_brick").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_brick"); - depth_tiles = new BlockDepth().setBlockName("depth_tiles").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_tiles"); - depth_nether_brick = new BlockDepth().setBlockName("depth_nether_brick").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_nether_brick"); - depth_nether_tiles = new BlockDepth().setBlockName("depth_nether_tiles").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_nether_tiles"); - depth_dnt = new BlockDepth().setBlockName("depth_dnt").setCreativeTab(MainRegistry.blockTab).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":depth_dnt"); - - stone_depth_nether = new BlockDepth().setBlockName("stone_depth_nether").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_depth_nether"); - ore_depth_nether_neodymium = new BlockDepthOre().setBlockName("ore_depth_nether_neodymium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_nether_neodymium"); - - stone_porous = new BlockPorous().setBlockName("stone_porous").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_porous"); - stone_resource = new BlockResourceStone().setBlockName("stone_resource").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); - stalagmite = new BlockStalagmite().setBlockName("stalagmite").setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.0F); - stalactite = new BlockStalagmite().setBlockName("stalactite").setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.0F); - stone_biome = new BlockBiomeStone().setBlockName("stone_biome").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); - - basalt = new BlockGeneric(Material.rock).setBlockName("basalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt"); - ore_basalt = new BlockOreBasalt().setBlockName("ore_basalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_basalt"); - basalt_smooth = new BlockGeneric(Material.rock).setBlockName("basalt_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_smooth"); - basalt_brick = new BlockGeneric(Material.rock).setBlockName("basalt_brick").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_brick"); - basalt_polished = new BlockGeneric(Material.rock).setBlockName("basalt_polished").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_polished"); - basalt_tiles = new BlockGeneric(Material.rock).setBlockName("basalt_tiles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_tiles"); - - ore_australium = new BlockGeneric(Material.rock).setBlockName("ore_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_australium"); - ore_rare = new BlockOre(Material.rock).setBlockName("ore_rare").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_rare"); - ore_cobalt = new BlockOre(Material.rock).setBlockName("ore_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cobalt"); - ore_cinnebar = new BlockOre(Material.rock).setBlockName("ore_cinnebar").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cinnebar"); - ore_coltan = new BlockOre(Material.rock).setBlockName("ore_coltan").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_coltan"); - - ore_oil = new BlockOre(Material.rock).setBlockName("ore_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil"); - ore_oil_empty = new BlockGeneric(Material.rock).setBlockName("ore_oil_empty").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_empty"); - ore_oil_sand = new BlockFalling(Material.sand).setBlockName("ore_oil_sand").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(0.5F).setResistance(1.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_sand_alt"); - ore_bedrock_oil = new BlockGeneric(Material.rock).noMobSpawn().setBlockName("ore_bedrock_oil").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(1_000_000).setBlockTextureName(RefStrings.MODID + ":ore_bedrock_oil"); - - ore_tikite = new BlockDragonProof(Material.rock).setBlockName("ore_tikite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tikite_alt"); - - block_uranium = new BlockHazard().makeBeaconable().setBlockName("block_uranium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium"); - block_u233 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_u233").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u233"); - block_u235 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_u235").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u235"); - block_u238 = new BlockHazard().makeBeaconable().setBlockName("block_u238").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u238"); - block_uranium_fuel = new BlockHazard().makeBeaconable().setBlockName("block_uranium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium_fuel"); - block_thorium = new BlockHazard().makeBeaconable().setBlockName("block_thorium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium"); - block_thorium_fuel = new BlockHazard().makeBeaconable().setBlockName("block_thorium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium_fuel"); - block_neptunium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_neptunium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":block_neptunium"); - block_polonium = new BlockHotHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_polonium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_polonium"); - block_mox_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_mox_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_mox_fuel"); - block_plutonium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_plutonium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_plutonium"); - block_pu238 = new BlockHotHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu238").setCreativeTab(MainRegistry.blockTab).setLightLevel(5F/15F).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu238"); - block_pu239 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu239").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu239"); - block_pu240 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu240").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu240"); - block_pu_mix = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu_mix").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu_mix"); - block_plutonium_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_plutonium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_plutonium_fuel"); - block_titanium = new BlockBeaconable(Material.iron).setBlockName("block_titanium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_titanium"); - block_sulfur = new BlockBeaconable(Material.iron).setBlockName("block_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_sulfur"); - block_niter = new BlockBeaconable(Material.iron).setBlockName("block_niter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_niter"); - block_copper = new BlockBeaconable(Material.iron).setBlockName("block_copper").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_copper"); - block_red_copper = new BlockBeaconable(Material.iron).setBlockName("block_red_copper").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(25.0F).setBlockTextureName(RefStrings.MODID + ":block_red_copper"); - block_tungsten = new BlockBeaconable(Material.iron).setBlockName("block_tungsten").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_tungsten"); - block_aluminium = new BlockBeaconable(Material.iron).setBlockName("block_aluminium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); - block_fluorite = new BlockBeaconable(Material.iron).setBlockName("block_fluorite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_fluorite"); - block_steel = new BlockBeaconable(Material.iron).setBlockName("block_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - block_tcalloy = new BlockBeaconable(Material.iron).setBlockName("block_tcalloy").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(70.0F).setBlockTextureName(RefStrings.MODID + ":block_tcalloy"); - block_cdalloy = new BlockBeaconable(Material.iron).setBlockName("block_cdalloy").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(70.0F).setBlockTextureName(RefStrings.MODID + ":block_cdalloy"); - block_lead = new BlockBeaconable(Material.iron).setBlockName("block_lead").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_lead"); - block_bismuth = new BlockBeaconable(Material.iron).setBlockName("block_bismuth").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(90.0F).setBlockTextureName(RefStrings.MODID + ":block_bismuth"); - block_cadmium = new BlockBeaconable(Material.iron).setBlockName("block_cadmium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(90.0F).setBlockTextureName(RefStrings.MODID + ":block_cadmium"); - block_coltan = new BlockBeaconable(Material.iron).setBlockName("block_coltan").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_coltan"); - block_tantalium = new BlockBeaconable(Material.iron).setBlockName("block_tantalium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_tantalium"); - block_niobium = new BlockBeaconable(Material.iron).setBlockName("block_niobium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F); - block_trinitite = new BlockHazard().makeBeaconable().setBlockName("block_trinitite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_trinitite"); - block_waste = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste"); - block_waste_painted = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste_painted").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_painted"); - block_waste_vitrified = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste_vitrified").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_vitrified"); - ancient_scrap = new BlockOutgas(Material.iron, true, 1, true, true).setBlockName("ancient_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":ancient_scrap"); - block_corium = new BlockHazard(Material.iron).setBlockName("block_corium").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_corium"); - block_corium_cobble = new BlockOutgas(Material.iron, true, 1, true, true).setBlockName("block_corium_cobble").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_corium_cobble"); - block_scrap = new BlockFalling(Material.sand).setBlockName("block_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeGravel).setBlockTextureName(RefStrings.MODID + ":block_scrap"); - block_electrical_scrap = new BlockFalling(Material.iron).setBlockName("block_electrical_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeMetal).setBlockTextureName(RefStrings.MODID + ":electrical_scrap_alt2"); - block_beryllium = new BlockBeaconable(Material.iron).setBlockName("block_beryllium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_beryllium"); - block_schraranium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schraranium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(250.0F).setBlockTextureName(RefStrings.MODID + ":block_schraranium"); - block_schrabidium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium"); - block_schrabidate = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidate").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidate"); - block_solinium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_solinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_solinium"); - block_schrabidium_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_fuel"); - block_euphemium = new BlockBeaconable(Material.iron).setBlockName("block_euphemium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium"); - block_dineutronium = new BlockBeaconable(Material.iron).setBlockName("block_dineutronium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_dineutronium"); - block_schrabidium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_schrabidium_cluster_top").setBlockName("block_schrabidium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_cluster_side"); - block_euphemium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_euphemium_cluster_top").setBlockName("block_euphemium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium_cluster_side"); - block_advanced_alloy = new BlockBeaconable(Material.iron).setBlockName("block_advanced_alloy").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":block_advanced_alloy"); - block_magnetized_tungsten = new BlockBeaconable(Material.iron).setBlockName("block_magnetized_tungsten").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(75.0F).setBlockTextureName(RefStrings.MODID + ":block_magnetized_tungsten"); - block_combine_steel = new BlockBeaconable(Material.iron).setBlockName("block_combine_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_combine_steel"); - block_desh = new BlockBeaconable(Material.iron).setBlockName("block_desh").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(300.0F).setBlockTextureName(RefStrings.MODID + ":block_desh"); - block_dura_steel = new BlockBeaconable(Material.iron).setBlockName("block_dura_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":block_dura_steel"); - block_starmetal = new BlockBeaconable(Material.iron).setBlockName("block_starmetal").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(400.0F).setBlockTextureName(RefStrings.MODID + ":block_starmetal"); - block_polymer = new BlockBeaconable(Material.rock).setBlockName("block_polymer").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_polymer"); - block_bakelite = new BlockBeaconable(Material.rock).setBlockName("block_bakelite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":block_bakelite"); - block_rubber = new BlockBeaconable(Material.rock).setBlockName("block_rubber").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_rubber"); - block_yellowcake = new BlockHazardFalling().makeBeaconable().setBlockName("block_yellowcake").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_yellowcake"); - block_insulator = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_insulator_top").setBlockName("block_insulator").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_insulator_side"); - block_fiberglass = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_fiberglass_top").setBlockName("block_fiberglass").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); - block_asbestos = new BlockOutgas(Material.cloth, true, 5, true).setBlockName("block_asbestos").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_asbestos"); - block_cobalt = new BlockBeaconable(Material.iron).setBlockName("block_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_cobalt"); - block_lithium = new BlockLithium(Material.iron).setBlockName("block_lithium").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lithium"); - block_zirconium = new BlockBeaconable(Material.iron).setBlockName("block_zirconium").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(30.0F).setBlockTextureName(RefStrings.MODID + ":block_zirconium"); - block_white_phosphorus = new BlockHazard(Material.rock).makeBeaconable().setBlockName("block_white_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_white_phosphorus"); - block_red_phosphorus = new BlockHazardFalling().makeBeaconable().setStepSound(Block.soundTypeSand).setBlockName("block_red_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_red_phosphorus"); - block_fallout = new BlockHazardFalling().setStepSound(Block.soundTypeGravel).setBlockName("block_fallout").setCreativeTab(MainRegistry.blockTab).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":ash"); - block_foam = new BlockGeneric(Material.craftedSnow).setBlockName("block_foam").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSnow).setHardness(0.5F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":foam"); - block_coke = new BlockCoke().setBlockName("block_coke").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F); - block_graphite = new BlockGraphite(Material.iron, 30, 5).setBlockName("block_graphite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F); - block_graphite_drilled = new BlockGraphiteDrilled().setBlockName("block_graphite_drilled"); - block_graphite_fuel = new BlockGraphiteFuel().setBlockName("block_graphite_fuel"); - block_graphite_plutonium = new BlockGraphiteSource().setBlockName("block_graphite_plutonium"); - block_graphite_rod = new BlockGraphiteRod().setBlockName("block_graphite_rod").setBlockTextureName(RefStrings.MODID + ":block_graphite_rod_in"); - block_graphite_source = new BlockGraphiteSource().setBlockName("block_graphite_source"); - block_graphite_lithium = new BlockGraphiteBreedingFuel().setBlockName("block_graphite_lithium"); - block_graphite_tritium = new BlockGraphiteBreedingProduct().setBlockName("block_graphite_tritium"); - block_graphite_detector = new BlockGraphiteNeutronDetector().setBlockName("block_graphite_detector"); - block_boron = new BlockBeaconable(Material.iron).setBlockName("block_boron").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_boron"); - block_lanthanium = new BlockBeaconable(Material.iron).setBlockName("block_lanthanium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lanthanium"); - block_ra226 = new BlockHazard().makeBeaconable().setBlockName("block_ra226").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_ra226"); - block_actinium = new BlockHazard().makeBeaconable().setBlockName("block_actinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_actinium"); - block_tritium = new BlockRotatablePillar(Material.glass, RefStrings.MODID + ":block_tritium_top").setBlockName("block_tritium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGlass).setHardness(3.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_tritium_side"); - block_semtex = new BlockPlasticExplosive(Material.tnt).setBlockName("block_semtex").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_semtex"); - block_c4 = new BlockPlasticExplosive(Material.tnt).setBlockName("block_c4").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_c4"); - block_smore = new BlockPillar(Material.rock, RefStrings.MODID + ":block_smore_top").setBlockName("block_smore").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_smore_side"); - block_slag = new BlockSlag(Material.rock).setBlockName("block_slag").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeStone).setHardness(2.0F).setBlockTextureName(RefStrings.MODID + ":block_slag"); - - block_australium = new BlockBeaconable(Material.iron).setBlockName("block_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_australium"); - block_weidanium = new BlockBeaconable(Material.iron).setBlockName("block_weidanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_weidanium"); - block_reiium = new BlockBeaconable(Material.iron).setBlockName("block_reiium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_reiium"); - block_unobtainium = new BlockBeaconable(Material.iron).setBlockName("block_unobtainium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_unobtainium"); - block_daffergon = new BlockBeaconable(Material.iron).setBlockName("block_daffergon").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_daffergon"); - block_verticium = new BlockBeaconable(Material.iron).setBlockName("block_verticium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_verticium"); - - block_cap = new BlockCap().setBlockName("block_cap").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); - - deco_titanium = new BlockOre(Material.iron).noFortune().setBlockName("deco_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_titanium"); - deco_red_copper = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_red_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_red_copper"); - deco_tungsten = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_tungsten"); - deco_aluminium = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_aluminium"); - deco_steel = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_steel").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel"); - deco_lead = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_lead").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_lead"); - deco_beryllium = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_beryllium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_beryllium"); - deco_asbestos = new BlockOutgas(Material.cloth, true, 5, true).noFortune().setBlockName("deco_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_asbestos"); - deco_rbmk = new BlockGeneric(Material.iron).setBlockName("deco_rbmk").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_side"); - deco_rbmk_smooth = new BlockGeneric(Material.iron).setBlockName("deco_rbmk_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_top"); - - deco_emitter = new BlockEmitter().setBlockName("deco_emitter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":emitter"); - part_emitter = new PartEmitter().setBlockName("part_emitter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":part_top"); - deco_loot = new BlockLoot().setBlockName("deco_loot").setCreativeTab(null).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - pedestal = new BlockPedestal().setBlockName("pedestal").setCreativeTab(null).setHardness(2.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":pedestal_top"); - bobblehead = new BlockBobble().setBlockName("bobblehead").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - snowglobe = new BlockSnowglobe().setBlockName("snowglobe").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":glass_boron"); - plushie = new BlockPlushie().setBlockName("plushie").setStepSound(Block.soundTypeCloth).setResistance(50_0000.0F).setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); - - gravel_obsidian = new BlockFalling(Material.iron).setBlockName("gravel_obsidian").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(5.0F).setResistance(240.0F).setBlockTextureName(RefStrings.MODID + ":gravel_obsidian"); - gravel_diamond = new BlockFalling(Material.sand).setBlockName("gravel_diamond").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":gravel_diamond"); - asphalt = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":asphalt"); - asphalt_light = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":asphalt_light"); - - reinforced_brick = new BlockGeneric(Material.rock).setBlockName("reinforced_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(300.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_brick"); - reinforced_glass = new BlockNTMGlassCT(0, RefStrings.MODID + ":reinforced_glass", Material.rock).setBlockName("reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(2.0F).setResistance(25.0F); - reinforced_glass_pane = new BlockNTMGlassPane(0, RefStrings.MODID + ":reinforced_glass_pane", RefStrings.MODID + ":reinforced_glass_pane_edge", Material.rock, false).setBlockName("reinforced_glass_pane").setCreativeTab(MainRegistry.blockTab).setLightOpacity(1).setHardness(2.0F).setResistance(25.0F); - reinforced_light = new BlockGeneric(Material.rock).setBlockName("reinforced_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1.0F).setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_light"); - reinforced_sand = new BlockGeneric(Material.rock).setBlockName("reinforced_sand").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(40.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_sand"); - reinforced_lamp_off = new ReinforcedLamp(Material.rock, false).setBlockName("reinforced_lamp_off").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_lamp_off"); - reinforced_lamp_on = new ReinforcedLamp(Material.rock, true).setBlockName("reinforced_lamp_on").setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_lamp_on"); - reinforced_laminate = new BlockNTMGlassCT(1, RefStrings.MODID + ":reinforced_laminate", Material.rock, true).setBlockName("reinforced_laminate").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(300.0F); - reinforced_laminate_pane = new BlockNTMGlassPane(1, RefStrings.MODID + ":reinforced_laminate_pane", RefStrings.MODID + ":reinforced_laminate_pane_edge", Material.rock, true).setBlockName("reinforced_laminate_pane").setCreativeTab(MainRegistry.blockTab).setLightOpacity(1).setHardness(15.0F).setResistance(300.0F); - - lamp_tritium_green_off = new TritiumLamp(Material.redstoneLight, false).setBlockName("lamp_tritium_green_off").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_green_off"); - lamp_tritium_green_on = new TritiumLamp(Material.redstoneLight, true).setBlockName("lamp_tritium_green_on").setStepSound(Block.soundTypeGlass).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_green_on"); - lamp_tritium_blue_off = new TritiumLamp(Material.redstoneLight, false).setBlockName("lamp_tritium_blue_off").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_blue_off"); - lamp_tritium_blue_on = new TritiumLamp(Material.redstoneLight, true).setBlockName("lamp_tritium_blue_on").setStepSound(Block.soundTypeGlass).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_blue_on"); - - lamp_demon = new DemonLamp().setBlockName("lamp_demon").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_demon"); - lantern = new BlockLantern().setBlockName("lantern").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - lantern_behemoth = new BlockLanternBehemoth().setBlockName("lantern_behemoth").setStepSound(Block.soundTypeMetal).setCreativeTab(null).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":block_rust"); - - spotlight_incandescent = new Spotlight(Material.iron, 2, LightType.INCANDESCENT, true).setBlockName("spotlight_incandescent").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cage_lamp"); - spotlight_incandescent_off = new Spotlight(Material.iron, 2, LightType.INCANDESCENT, false).setBlockName("spotlight_incandescent_off").setBlockTextureName(RefStrings.MODID + ":cage_lamp_off"); - spotlight_fluoro = new SpotlightModular(Material.iron, 8, LightType.FLUORESCENT, true).setBlockName("spotlight_fluoro").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":fluorescent_lamp"); - spotlight_fluoro_off = new SpotlightModular(Material.iron, 8, LightType.FLUORESCENT, false).setBlockName("spotlight_fluoro_off").setBlockTextureName(RefStrings.MODID + ":fluorescent_lamp_off"); - spotlight_halogen = new Spotlight(Material.iron, 32, LightType.HALOGEN, true).setBlockName("spotlight_halogen").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":flood_lamp"); - spotlight_halogen_off = new Spotlight(Material.iron, 32, LightType.HALOGEN, false).setBlockName("spotlight_halogen_off").setBlockTextureName(RefStrings.MODID + ":flood_lamp_off"); - spotlight_beam = new SpotlightBeam().setBlockName("spotlight_beam"); - floodlight = new Floodlight(Material.iron).setBlockName("floodlight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - floodlight_beam = new FloodlightBeam().setBlockName("floodlight_beam"); - - reinforced_stone = new BlockGeneric(Material.rock).setBlockName("reinforced_stone").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_stone"); - concrete_smooth = new BlockRadResistant(Material.rock).setBlockName("concrete_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete"); - concrete_colored = new BlockConcreteColored(Material.rock).setBlockName("concrete_colored").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete"); - concrete_colored_ext = new BlockConcreteColoredExt(Material.rock).setBlockName("concrete_colored_ext").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete_colored_ext"); - concrete = new BlockGeneric(Material.rock).setBlockName("concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete_tile"); - concrete_asbestos = new BlockGeneric(Material.rock).setBlockName("concrete_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(150.0F).setBlockTextureName(RefStrings.MODID + ":concrete_asbestos"); - concrete_super = new BlockUberConcrete().setBlockName("concrete_super").setCreativeTab(MainRegistry.blockTab).setHardness(150.0F).setResistance(1000.0F); - concrete_super_broken = new BlockFalling(Material.rock).setBlockName("concrete_super_broken").setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":concrete_super_broken"); - concrete_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":concrete_pillar_top").setBlockName("concrete_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(180.0F).setBlockTextureName(RefStrings.MODID + ":concrete_pillar_side"); - brick_concrete = new BlockGeneric(Material.rock).setBlockName("brick_concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); - brick_concrete_mossy = new BlockGeneric(Material.rock).setBlockName("brick_concrete_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_mossy"); - brick_concrete_cracked = new BlockGeneric(Material.rock).setBlockName("brick_concrete_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_cracked"); - brick_concrete_broken = new BlockGeneric(Material.rock).setBlockName("brick_concrete_broken").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(45.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_broken"); - brick_concrete_marked = new BlockWriting(Material.rock, RefStrings.MODID + ":brick_concrete").setBlockName("brick_concrete_marked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_marked"); - brick_obsidian = new BlockGeneric(Material.rock).setBlockName("brick_obsidian").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":brick_obsidian"); - brick_light = new BlockGeneric(Material.rock).setBlockName("brick_light").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":brick_light"); - brick_compound = new BlockGeneric(Material.rock).setBlockName("brick_compound").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(400.0F).setBlockTextureName(RefStrings.MODID + ":brick_compound"); - cmb_brick = new BlockGeneric(Material.rock).setBlockName("cmb_brick").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(5000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick"); - cmb_brick_reinforced = new BlockGeneric(Material.rock).setBlockName("cmb_brick_reinforced").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(50000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick_reinforced"); - brick_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("brick_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(1000.0F).setBlockTextureName(RefStrings.MODID + ":brick_asbestos"); - brick_fire = new BlockGeneric(Material.rock).setBlockName("brick_fire").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(35.0F).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - - ducrete_smooth = new BlockGeneric(Material.rock).setBlockName("ducrete_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(500.0F).setBlockTextureName(RefStrings.MODID + ":ducrete"); - ducrete = new BlockGeneric(Material.rock).setBlockName("ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(500.0F).setBlockTextureName(RefStrings.MODID + ":ducrete_tile"); - brick_ducrete = new BlockGeneric(Material.rock).setBlockName("brick_ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(750.0F).setBlockTextureName(RefStrings.MODID + ":brick_ducrete"); - reinforced_ducrete = new BlockGeneric(Material.rock).setBlockName("reinforced_ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(1000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_ducrete"); - - concrete_slab = new BlockMultiSlab(null, Material.rock, concrete_smooth, concrete, concrete_asbestos, ducrete_smooth, ducrete, asphalt).setBlockName("concrete_slab").setCreativeTab(MainRegistry.blockTab); - concrete_double_slab = new BlockMultiSlab(concrete_slab, Material.rock, concrete_smooth, concrete, concrete_asbestos, ducrete_smooth, ducrete, asphalt).setBlockName("concrete_double_slab").setCreativeTab(MainRegistry.blockTab); - concrete_brick_slab = new BlockMultiSlab(null, Material.rock, brick_concrete, brick_concrete_mossy, brick_concrete_cracked, brick_concrete_broken, brick_ducrete).setBlockName("concrete_brick_slab").setCreativeTab(MainRegistry.blockTab); - concrete_brick_double_slab = new BlockMultiSlab(concrete_brick_slab, Material.rock, brick_concrete, brick_concrete_mossy, brick_concrete_cracked, brick_concrete_broken, brick_ducrete).setBlockName("concrete_brick_double_slab").setCreativeTab(MainRegistry.blockTab); - brick_slab = new BlockMultiSlab(null, Material.rock, reinforced_stone, reinforced_brick, brick_obsidian, brick_light, brick_compound, brick_asbestos, brick_fire).setBlockName("brick_slab").setCreativeTab(MainRegistry.blockTab); - brick_double_slab = new BlockMultiSlab(brick_slab, Material.rock, reinforced_stone, reinforced_brick, brick_obsidian, brick_light, brick_compound, brick_asbestos, brick_fire).setBlockName("brick_double_slab").setCreativeTab(MainRegistry.blockTab); - - concrete_smooth_stairs = new BlockGenericStairs(concrete_smooth, 0).setBlockName("concrete_smooth_stairs").setCreativeTab(MainRegistry.blockTab); - concrete_stairs = new BlockGenericStairs(concrete, 0).setBlockName("concrete_stairs").setCreativeTab(MainRegistry.blockTab); - concrete_asbestos_stairs = new BlockGenericStairs(concrete_asbestos, 0).setBlockName("concrete_asbestos_stairs").setCreativeTab(MainRegistry.blockTab); - ducrete_smooth_stairs = new BlockGenericStairs(ducrete_smooth, 0).setBlockName("ducrete_smooth_stairs").setCreativeTab(MainRegistry.blockTab); - ducrete_stairs = new BlockGenericStairs(ducrete, 0).setBlockName("ducrete_stairs").setCreativeTab(MainRegistry.blockTab); - brick_concrete_stairs = new BlockGenericStairs(brick_concrete, 0).setBlockName("brick_concrete_stairs").setCreativeTab(MainRegistry.blockTab); - brick_concrete_mossy_stairs = new BlockGenericStairs(brick_concrete_mossy, 0).setBlockName("brick_concrete_mossy_stairs").setCreativeTab(MainRegistry.blockTab); - brick_concrete_cracked_stairs = new BlockGenericStairs(brick_concrete_cracked, 0).setBlockName("brick_concrete_cracked_stairs").setCreativeTab(MainRegistry.blockTab); - brick_concrete_broken_stairs = new BlockGenericStairs(brick_concrete_broken, 0).setBlockName("brick_concrete_broken_stairs").setCreativeTab(MainRegistry.blockTab); - brick_ducrete_stairs = new BlockGenericStairs(brick_ducrete, 0).setBlockName("brick_ducrete_stairs").setCreativeTab(MainRegistry.blockTab); - reinforced_stone_stairs = new BlockGenericStairs(reinforced_stone, 0).setBlockName("reinforced_stone_stairs").setCreativeTab(MainRegistry.blockTab); - reinforced_brick_stairs = new BlockGenericStairs(reinforced_brick, 0).setBlockName("reinforced_brick_stairs").setCreativeTab(MainRegistry.blockTab); - brick_obsidian_stairs = new BlockGenericStairs(brick_obsidian, 0).setBlockName("brick_obsidian_stairs").setCreativeTab(MainRegistry.blockTab); - brick_light_stairs = new BlockGenericStairs(brick_light, 0).setBlockName("brick_light_stairs").setCreativeTab(MainRegistry.blockTab); - brick_compound_stairs = new BlockGenericStairs(brick_compound, 0).setBlockName("brick_compound_stairs").setCreativeTab(MainRegistry.blockTab); - brick_asbestos_stairs = new BlockGenericStairs(brick_asbestos, 0).setBlockName("brick_asbestos_stairs").setCreativeTab(MainRegistry.blockTab); - brick_fire_stairs = new BlockGenericStairs(brick_fire, 0).setBlockName("brick_fire_stairs").setCreativeTab(MainRegistry.blockTab); - asphalt_stairs = new BlockSpeedyStairs(asphalt, 0, 1.5).setBlockName("asphalt_stairs").setCreativeTab(MainRegistry.blockTab); - - vinyl_tile = new BlockEnumMulti(Material.rock, TileType.class, true, true).setBlockName("vinyl_tile").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":vinyl_tile"); - - tile_lab = new BlockOutgas(Material.rock, false, 5, true).setBlockName("tile_lab").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab"); - tile_lab_cracked = new BlockOutgas(Material.rock, false, 5, true).setBlockName("tile_lab_cracked").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab_cracked"); - tile_lab_broken = new BlockOutgas(Material.rock, true, 5, true).setBlockName("tile_lab_broken").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab_broken"); - - block_meteor = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor"); - block_meteor_cobble = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor_cobble").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_cobble"); - block_meteor_broken = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor_broken").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_crushed"); - block_meteor_molten = new BlockOre(Material.rock, true).noFortune().setBlockName("block_meteor_molten").setLightLevel(0.75F).setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_cobble_molten"); - block_meteor_treasure = new BlockMeteoriteTreasure(Material.rock).setBlockName("block_meteor_treasure").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_treasure"); - meteor_polished = new BlockGeneric(Material.rock).setBlockName("meteor_polished").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_polished"); - meteor_brick = new BlockGeneric(Material.rock).setBlockName("meteor_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick"); - meteor_brick_mossy = new BlockGeneric(Material.rock).setBlockName("meteor_brick_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_mossy"); - meteor_brick_cracked = new BlockGeneric(Material.rock).setBlockName("meteor_brick_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_cracked"); - meteor_brick_chiseled = new BlockGeneric(Material.rock).setBlockName("meteor_brick_chiseled").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_chiseled"); - meteor_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":meteor_pillar_top").setBlockName("meteor_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_pillar"); - meteor_spawner = new BlockCybercrab(Material.rock).setBlockName("meteor_spawner").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F); - meteor_battery = new BlockPillar(Material.rock, RefStrings.MODID + ":meteor_power").setBlockName("meteor_battery").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_spawner_side"); - moon_turf = new BlockFalling(Material.sand).setBlockName("moon_turf").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":moon_turf"); - - brick_jungle = new BlockGeneric(Material.rock).setBlockName("brick_jungle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle"); - brick_jungle_cracked = new BlockGeneric(Material.rock).setBlockName("brick_jungle_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_cracked"); - brick_jungle_fragile = new FragileBrick(Material.rock).setBlockName("brick_jungle_fragile").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_fragile"); - brick_jungle_lava = new BlockGeneric(Material.rock).setBlockName("brick_jungle_lava").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_lava"); - brick_jungle_ooze = new BlockOre(Material.rock).setBlockName("brick_jungle_ooze").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_ooze"); - brick_jungle_mystic = new BlockOre(Material.rock).setBlockName("brick_jungle_mystic").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_mystic"); - brick_jungle_trap = new TrappedBrick(Material.rock).setBlockName("brick_jungle_trap").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_trap"); - brick_jungle_glyph = new BlockGlyph(Material.rock).setBlockName("brick_jungle_glyph").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F); - brick_jungle_circle = new BlockBallsSpawner(Material.rock).setBlockName("brick_jungle_circle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_circle"); - - brick_red = new BlockRedBrick(Material.rock).setBlockName("brick_red").setResistance(10_000); - - deco_computer = new BlockDecoModel(Material.iron, DecoComputerEnum.class, true, false).setBlockBoundsTo(.160749F, 0F, 0F, .839251F, .867849F, .622184F).setBlockName("deco_computer").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_computer"); - deco_crt = new BlockDecoCRT(Material.iron).setBlockName("deco_crt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - deco_toaster = new BlockDecoToaster(Material.iron).setBlockName("deco_toaster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - filing_cabinet = new BlockDecoContainer(Material.iron, DecoCabinetEnum.class, true, false, TileEntityFileCabinet.class).setBlockBoundsTo(.1875F, 0F, 0F, .8125F, 1F, .75F).setBlockName("filing_cabinet").setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - tape_recorder = new DecoTapeRecorder(Material.iron).setBlockName("tape_recorder").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_tape_recorder"); - steel_poles = new DecoSteelPoles(Material.iron).setBlockName("steel_poles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_beam"); - pole_top = new DecoPoleTop(Material.iron).setBlockName("pole_top").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_pole_top"); - pole_satellite_receiver = new DecoPoleSatelliteReceiver(Material.iron).setBlockName("pole_satellite_receiver").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_satellite_receiver"); - steel_wall = new DecoBlock(Material.iron).setBlockName("steel_wall").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_wall"); - steel_corner = new DecoBlock(Material.iron).setBlockName("steel_corner").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_wall"); - steel_roof = new DecoBlock(Material.iron).setBlockName("steel_roof").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_roof"); - steel_beam = new DecoBlock(Material.iron).setBlockName("steel_beam").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_beam"); - steel_scaffold = new BlockScaffold().setBlockName("steel_scaffold").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel_orig"); - steel_grate = new BlockGrate(Material.iron).setBlockName("steel_grate").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); - steel_grate_wide = new BlockGrate(Material.iron).setBlockName("steel_grate_wide").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); - scaffold_dynamic = new BlockScaffoldDynamic().setBlockName("scaffold_dynamic").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - deco_pipe = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 0).setBlockName("deco_pipe").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); - deco_pipe_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 0).setBlockName("deco_pipe_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); - deco_pipe_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 0).setBlockName("deco_pipe_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); - deco_pipe_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 0).setBlockName("deco_pipe_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); - deco_pipe_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 0).setBlockName("deco_pipe_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); - deco_pipe_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 0).setBlockName("deco_pipe_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); - deco_pipe_rim = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 1).setBlockName("deco_pipe_rim").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); - deco_pipe_rim_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 1).setBlockName("deco_pipe_rim_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); - deco_pipe_rim_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 1).setBlockName("deco_pipe_rim_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); - deco_pipe_rim_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 1).setBlockName("deco_pipe_rim_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); - deco_pipe_rim_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 1).setBlockName("deco_pipe_rim_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); - deco_pipe_rim_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 1).setBlockName("deco_pipe_rim_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); - deco_pipe_framed = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 3).setBlockName("deco_pipe_framed").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); - deco_pipe_framed_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 3).setBlockName("deco_pipe_framed_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); - deco_pipe_framed_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 3).setBlockName("deco_pipe_framed_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); - deco_pipe_framed_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 3).setBlockName("deco_pipe_framed_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); - deco_pipe_framed_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 3).setBlockName("deco_pipe_framed_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); - deco_pipe_framed_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 3).setBlockName("deco_pipe_framed_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); - deco_pipe_quad = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 2).setBlockName("deco_pipe_quad").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); - deco_pipe_quad_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 2).setBlockName("deco_pipe_quad_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); - deco_pipe_quad_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 2).setBlockName("deco_pipe_quad_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); - deco_pipe_quad_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 2).setBlockName("deco_pipe_quad_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); - deco_pipe_quad_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 2).setBlockName("deco_pipe_quad_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); - deco_pipe_quad_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 2).setBlockName("deco_pipe_quad_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); - - broadcaster_pc = new PinkCloudBroadcaster(Material.iron).setBlockName("broadcaster_pc").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":broadcaster_pc"); - geiger = new GeigerCounter(Material.iron).setBlockName("geiger").setCreativeTab(MainRegistry.machineTab).setHardness(15.0F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":geiger"); - hev_battery = new HEVBattery(Material.iron).setBlockName("hev_battery").setCreativeTab(MainRegistry.machineTab).setLightLevel(10F/15F).setHardness(0.5F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":hev_battery"); - - fence_metal = new BlockMetalFence(Material.iron).setBlockName("fence_metal").setCreativeTab(MainRegistry.machineTab).setHardness(15.0F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":fence_metal"); - - ash_digamma = new BlockAshes(Material.sand).setBlockName("ash_digamma").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setResistance(150.0F).setBlockTextureName(RefStrings.MODID + ":ash_digamma"); - sand_boron = new BlockFalling(Material.sand).setBlockName("sand_boron").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_boron"); - sand_lead = new BlockFalling(Material.sand).setBlockName("sand_lead").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_lead"); - sand_uranium = new BlockFalling(Material.sand).setBlockName("sand_uranium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_uranium"); - sand_polonium = new BlockFalling(Material.sand).setBlockName("sand_polonium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_polonium"); - sand_quartz = new BlockFalling(Material.sand).setBlockName("sand_quartz").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_quartz"); - glass_boron = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_boron", Material.glass).setBlockName("glass_boron").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); - glass_lead = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_lead", Material.glass).setBlockName("glass_lead").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); - glass_uranium = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_uranium", Material.glass).setBlockName("glass_uranium").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); - glass_trinitite = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_trinitite", Material.glass).setBlockName("glass_trinitite").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); - glass_polonium = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_polonium", Material.glass).setBlockName("glass_polonium").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); - glass_ash = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_ash", Material.glass).setBlockName("glass_ash").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(3F); - glass_quartz = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_quartz", Material.packedIce, true).setBlockName("glass_quartz").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGlass).setHardness(1.0F).setResistance(40.0F).setBlockTextureName(RefStrings.MODID + "glass_quartz"); - - mush = new BlockMush(Material.plants).setBlockName("mush").setCreativeTab(MainRegistry.blockTab).setLightLevel(0.5F).setStepSound(Block.soundTypeGrass).setBlockTextureName(RefStrings.MODID + ":mush"); - mush_block = new BlockMushHuge(Material.plants).setBlockName("mush_block").setLightLevel(1.0F).setStepSound(Block.soundTypeGrass).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":mush_block_skin"); - mush_block_stem = new BlockMushHuge(Material.plants).setBlockName("mush_block_stem").setLightLevel(1.0F).setStepSound(Block.soundTypeGrass).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":mush_block_stem"); - glyphid_base = new BlockGlyphid(Material.coral).setBlockName("glyphid_base").setStepSound(Block.soundTypeCloth).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":glyphid_base"); - glyphid_spawner = new BlockGlyphidSpawner(Material.coral).setBlockName("glyphid_spawner").setStepSound(Block.soundTypeCloth).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":glyphid_eggs_alt"); - - plant_flower = new BlockNTMFlower().setBlockName("plant_flower").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); - plant_tall = new BlockTallPlant().setBlockName("plant_tall").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); - plant_dead = new BlockDeadPlant().setBlockName("plant_dead").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); - reeds = new BlockReeds().setBlockName("plant_reeds").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); - - waste_earth = new WasteEarth(Material.ground, true).setBlockName("waste_earth").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":waste_earth"); - waste_mycelium = new WasteEarth(Material.ground, true).setBlockName("waste_mycelium").setStepSound(Block.soundTypeGrass).setLightLevel(1F).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":waste_mycelium_side"); - waste_trinitite = new BlockOre(Material.sand).noFortune().setBlockName("waste_trinitite").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_trinitite"); - waste_trinitite_red = new BlockOre(Material.sand).noFortune().setBlockName("waste_trinitite_red").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_trinitite_red"); - waste_log = new WasteLog(Material.wood).setBlockName("waste_log").setStepSound(Block.soundTypeWood).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(2.5F); - waste_leaves = new WasteLeaves(Material.leaves).setBlockName("waste_leaves").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setBlockTextureName(RefStrings.MODID + ":waste_leaves"); - waste_planks = new BlockOre(Material.wood).setBlockName("waste_planks").setStepSound(Block.soundTypeWood).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_planks"); - frozen_dirt = new BlockOre(Material.ground).setBlockName("frozen_dirt").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":frozen_dirt"); - frozen_grass = new WasteEarth(Material.ground, false).setBlockName("frozen_grass").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F); - frozen_log = new WasteLog(Material.wood).setBlockName("frozen_log").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F); - frozen_planks = new BlockOre(Material.wood).setBlockName("frozen_planks").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":frozen_planks"); - fallout = new BlockFallout(Material.sand).setBlockName("fallout").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":ash"); - foam_layer = new BlockLayering(Material.snow).setBlockName("foam_layer").setStepSound(Block.soundTypeSnow).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":foam"); - sand_boron_layer = new BlockLayering(Material.sand).setBlockName("sand_boron_layer").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":sand_boron"); - leaves_layer = new BlockLayering(Material.leaves).setBlockName("leaves_layer").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":waste_leaves"); - oil_spill = new BlockLayering(Material.ground).setBlockName("oil_spill").setStepSound(Block.soundTypeSnow).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":oil_spill"); - - burning_earth = new WasteEarth(Material.ground, true).setBlockName("burning_earth").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":burning_earth"); - tektite = new BlockGeneric(Material.sand).setBlockName("tektite").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":tektite"); - ore_tektite_osmiridium = new BlockGeneric(Material.sand).setBlockName("ore_tektite_osmiridium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":ore_tektite_osmiridium"); - impact_dirt = new BlockDirt(Material.ground, true).setBlockName("impact_dirt").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":waste_earth_bottom"); - dirt_dead = new BlockFalling(Material.ground).setBlockName("dirt_dead").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":dirt_dead"); - dirt_oily = new BlockFalling(Material.ground).setBlockName("dirt_oily").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":dirt_oily"); - sand_dirty = new BlockFalling(Material.sand).setBlockName("sand_dirty").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_dirty"); - sand_dirty_red = new BlockFalling(Material.sand).setBlockName("sand_dirty_red").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_dirty_red"); - stone_cracked = new BlockFalling(Material.rock).setBlockName("stone_cracked").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":stone_cracked"); - - sellafield_slaked = new BlockSellafieldSlaked(Material.rock).setBlockName("sellafield_slaked").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":sellafield_slaked"); - sellafield_bedrock = new BlockSellafieldSlaked(Material.rock).setBlockName("sellafield_bedrock").setBlockUnbreakable().setResistance(6000000.0F).setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sellafield_slaked"); - sellafield = new BlockSellafield(Material.rock).setBlockName("sellafield").setStepSound(Block.soundTypeStone).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":sellafield_0"); - ore_sellafield_diamond = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_diamond").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_diamond"); - ore_sellafield_emerald = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_emerald").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_emerald"); - ore_sellafield_uranium_scorched = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_uranium_scorched").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_uranium_scorched"); - ore_sellafield_schrabidium = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_schrabidium").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_schrabidium"); - ore_sellafield_radgem = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_radgem").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_radgem"); - - geysir_water = new BlockGeysir(Material.rock).setBlockName("geysir_water").setStepSound(Block.soundTypeStone).setHardness(5.0F); - geysir_chlorine = new BlockGeysir(Material.rock).setBlockName("geysir_chlorine").setStepSound(Block.soundTypeStone).setHardness(5.0F); - geysir_vapor = new BlockGeysir(Material.rock).setBlockName("geysir_vapor").setStepSound(Block.soundTypeStone).setHardness(5.0F); - geysir_nether = new BlockGeysir(Material.rock).setBlockName("geysir_nether").setLightLevel(1.0F).setStepSound(Block.soundTypeStone).setHardness(2.0F); - - nuke_gadget = new NukeGadget(Material.iron).setBlockName("nuke_gadget").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":theGadget"); - nuke_boy = new NukeBoy(Material.iron).setBlockName("nuke_boy").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":lilBoy"); - nuke_man = new NukeMan(Material.iron).setBlockName("nuke_man").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":fatMan"); - nuke_mike = new NukeMike(Material.iron).setBlockName("nuke_mike").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":ivyMike"); - nuke_tsar = new NukeTsar(Material.iron).setBlockName("nuke_tsar").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":tsarBomba"); - nuke_fleija = new NukeFleija(Material.iron).setBlockName("nuke_fleija").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":fleija"); - nuke_prototype = new NukePrototype(Material.iron).setBlockName("nuke_prototype").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200).setBlockTextureName(RefStrings.MODID + ":prototype"); - nuke_custom = new NukeCustom(Material.iron).setBlockName("nuke_custom").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":custom"); - nuke_solinium = new NukeSolinium(Material.iron).setBlockName("nuke_solinium").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_solinium"); - nuke_n2 = new NukeN2(Material.iron).setBlockName("nuke_n2").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_n2"); - nuke_fstbmb = new NukeBalefire(Material.iron).setBlockName("nuke_fstbmb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_fstbmb"); - - bomb_multi = new BombMulti(Material.iron).setBlockName("bomb_multi").setCreativeTab(MainRegistry.nukeTab).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":bomb_multi1"); - - flame_war = new BombFlameWar(Material.iron).setBlockName("flame_war").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":flame_war"); - float_bomb = new BombFloat(Material.iron).setBlockName("float_bomb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); - therm_endo = new BombThermo(Material.iron).setBlockName("therm_endo").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); - therm_exo = new BombThermo(Material.iron).setBlockName("therm_exo").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); - emp_bomb = new BombFloat(Material.iron).setBlockName("emp_bomb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); - det_cord = new DetCord(Material.iron).setBlockName("det_cord").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_cord"); - det_charge = new ExplosiveCharge(Material.iron).setBlockName("det_charge").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_charge"); - det_nuke = new ExplosiveCharge(Material.iron).setBlockName("det_nuke").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_nuke"); - det_miner = new DetMiner(Material.iron, RefStrings.MODID + ":det_miner_top").setBlockName("det_miner").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_miner_side"); - red_barrel = new RedBarrel(Material.iron, true).setBlockName("red_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_red"); - pink_barrel = new RedBarrel(Material.iron, true).setBlockName("pink_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_pink"); - yellow_barrel = new YellowBarrel(Material.iron).setBlockName("yellow_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_yellow"); - vitrified_barrel = new YellowBarrel(Material.iron).setBlockName("vitrified_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_vitrified"); - lox_barrel = new RedBarrel(Material.iron, false).setBlockName("lox_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_lox"); - taint_barrel = new RedBarrel(Material.iron, false).setBlockName("taint_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_taint"); - crashed_balefire = new BlockCrashedBomb(Material.iron).setBlockName("crashed_bomb").setCreativeTab(MainRegistry.nukeTab).setBlockUnbreakable().setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":crashed_balefire"); - fireworks = new BlockFireworks(Material.iron).setBlockName("fireworks").setCreativeTab(MainRegistry.nukeTab).setResistance(5.0F); - charge_dynamite = new BlockChargeDynamite().setBlockName("charge_dynamite").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); - charge_miner = new BlockChargeMiner().setBlockName("charge_miner").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); - charge_c4 = new BlockChargeC4().setBlockName("charge_c4").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); - charge_semtex = new BlockChargeSemtex().setBlockName("charge_semtex").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); - mine_ap = new Landmine(Material.iron, 1.5D, 1D).setBlockName("mine_ap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_ap"); - mine_he = new Landmine(Material.iron, 2D, 5D).setBlockName("mine_he").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_he"); - mine_shrap = new Landmine(Material.iron, 1.5D, 1D).setBlockName("mine_shrap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_shrap"); - mine_fat = new Landmine(Material.iron, 2.5D, 1D).setBlockName("mine_fat").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_fat"); - dynamite = new BlockDynamite().setBlockName("dynamite").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":dynamite"); - tnt = new BlockTNT().setBlockName("tnt_ntm").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":tnt"); - semtex = new BlockSemtex().setBlockName("semtex").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":semtex"); - c4 = new BlockC4().setBlockName("c4").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":c4"); - fissure_bomb = new BlockFissureBomb().setBlockName("fissure_bomb").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":fissure_bomb"); - - pump_steam = new MachinePump().setBlockName("pump_steam").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); - pump_electric = new MachinePump().setBlockName("pump_electric").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - heater_firebox = new HeaterFirebox().setBlockName("heater_firebox").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - heater_oven = new HeaterOven().setBlockName("heater_oven").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - heater_oilburner = new HeaterOilburner().setBlockName("heater_oilburner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - heater_electric = new HeaterElectric().setBlockName("heater_electric").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - heater_heatex = new HeaterHeatex().setBlockName("heater_heatex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_ashpit = new MachineAshpit().setBlockName("machine_ashpit").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("stonebrick"); - - furnace_iron = new FurnaceIron().setBlockName("furnace_iron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); - furnace_steel = new FurnaceSteel().setBlockName("furnace_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - furnace_combination = new FurnaceCombination().setBlockName("furnace_combination").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_light_alt"); - machine_stirling = new MachineStirling().setBlockName("machine_stirling").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_stirling_steel = new MachineStirling().setBlockName("machine_stirling_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_stirling_creative = new MachineStirling().setBlockName("machine_stirling_creative").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_sawmill = new MachineSawmill().setBlockName("machine_sawmill").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_strand_caster = new MachineStrandCaster().setBlockName("machine_strand_caster").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - machine_crucible = new MachineCrucible().setBlockName("machine_crucible").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - machine_boiler = new MachineHeatBoiler().setBlockName("machine_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); - machine_industrial_boiler = new MachineHeatBoilerIndustrial().setBlockName("machine_industrial_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - foundry_mold = new FoundryMold().setBlockName("foundry_mold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - foundry_basin = new FoundryBasin().setBlockName("foundry_basin").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - foundry_channel = new FoundryChannel().setBlockName("foundry_channel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - foundry_tank = new FoundryTank().setBlockName("foundry_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - foundry_outlet = new FoundryOutlet().setBlockName("foundry_outlet").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - foundry_slagtap = new FoundrySlagtap().setBlockName("foundry_slagtap").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - slag = new BlockDynamicSlag().setBlockName("slag").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":slag"); - - machine_difurnace_off = new MachineDiFurnace(false).setBlockName("machine_difurnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_difurnace_on = new MachineDiFurnace(true).setBlockName("machine_difurnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - machine_difurnace_extension = new MachineDiFurnaceExtension().setBlockName("machine_difurnace_extension").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_difurnace_rtg_off = new MachineDiFurnaceRTG(false).setBlockName("machine_difurnace_rtg_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_difurnace_rtg_on = new MachineDiFurnaceRTG(true).setBlockName("machine_difurnace_rtg_on").setHardness(5.0F).setResistance(10.0F).setLightLevel(2.0F).setCreativeTab(null); - - machine_centrifuge = new MachineCentrifuge(Material.iron).setBlockName("machine_centrifuge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_gascent = new MachineGasCent(Material.iron).setBlockName("machine_gascent").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_fel = new MachineFEL(Material.iron).setBlockName("machine_fel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_silex = new MachineSILEX(Material.iron).setBlockName("machine_silex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_crystallizer = new MachineCrystallizer(Material.iron).setBlockName("machine_crystallizer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_crystallizer"); - - machine_uf6_tank = new MachineUF6Tank(Material.iron).setBlockName("machine_uf6_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - - machine_puf6_tank = new MachinePuF6Tank(Material.iron).setBlockName("machine_puf6_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - - machine_reactor_breeding = new MachineReactorBreeding(Material.iron).setBlockName("machine_reactor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_reactor"); - - machine_furnace_brick_off = new MachineBrickFurnace(false).setBlockName("machine_furnace_brick_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_furnace_brick_on = new MachineBrickFurnace(true).setBlockName("machine_furnace_brick_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - machine_nuke_furnace_off = new MachineNukeFurnace(false).setBlockName("machine_nuke_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_nuke_furnace_on = new MachineNukeFurnace(true).setBlockName("machine_nuke_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - machine_rtg_furnace_off = new MachineRtgFurnace(false).setBlockName("machine_rtg_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_rtg_furnace_on = new MachineRtgFurnace(true).setBlockName("machine_rtg_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - - machine_industrial_generator = new MachineIGenerator(Material.iron).setBlockName("machine_industrial_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("gold_block"); - machine_cyclotron = new MachineCyclotron(Material.iron).setBlockName("machine_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cyclotron"); - machine_exposure_chamber = new MachineExposureChamber(Material.iron).setBlockName("machine_exposure_chamber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); - machine_radgen = new MachineRadGen(Material.iron).setBlockName("machine_radgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_radgen"); - - hadron_plating = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating"); - hadron_plating_blue = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_blue").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_blue"); - hadron_plating_black = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_black").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_black"); - hadron_plating_yellow = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_yellow").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_yellow"); - hadron_plating_striped = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_striped").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_striped"); - hadron_plating_voltz = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_voltz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_voltz"); - hadron_plating_glass = new BlockNTMGlass(0, RefStrings.MODID + ":hadron_plating_glass", Material.iron, true).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_glass").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_glass"); - hadron_coil_alloy = new BlockHadronCoil(Material.iron, 10).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_alloy").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_alloy"); - hadron_coil_gold = new BlockHadronCoil(Material.iron, 25).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_gold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_gold"); - hadron_coil_neodymium = new BlockHadronCoil(Material.iron, 50).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_neodymium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_neodymium"); - hadron_coil_magtung = new BlockHadronCoil(Material.iron, 100).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_magtung").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_magtung"); - hadron_coil_schrabidium = new BlockHadronCoil(Material.iron, 250).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_schrabidium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_schrabidium"); - hadron_coil_schrabidate = new BlockHadronCoil(Material.iron, 500).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_schrabidate").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_schrabidate"); - hadron_coil_starmetal = new BlockHadronCoil(Material.iron, 1000).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_starmetal").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_starmetal"); - hadron_coil_chlorophyte = new BlockHadronCoil(Material.iron, 2500).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_chlorophyte").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_chlorophyte"); - hadron_coil_mese = new BlockHadronCoil(Material.iron, 10000).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_mese").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_mese"); - hadron_power = new BlockHadronPower(Material.iron, 1000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); - hadron_power_10m = new BlockHadronPower(Material.iron, 10000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_10m").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); - hadron_power_100m = new BlockHadronPower(Material.iron, 100000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_100m").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); - hadron_power_1g = new BlockHadronPower(Material.iron, 1000000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_1g").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); - hadron_power_10g = new BlockHadronPower(Material.iron, 10000000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_10g").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); - hadron_diode = new BlockHadronDiode(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_diode").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - hadron_analysis = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_analysis").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_analysis"); - hadron_analysis_glass = new BlockNTMGlass(0, RefStrings.MODID + ":hadron_analysis_glass", Material.iron, true).setStepSound(Block.soundTypeMetal).setBlockName("hadron_analysis_glass").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_analysis_glass"); - hadron_access = new BlockHadronAccess(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_access").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_access"); - hadron_core = new BlockHadronCore(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_core"); - hadron_cooler = new BlockHadronCooler(Material.iron).setBlockName("hadron_cooler").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); - - machine_electric_furnace_off = new MachineElectricFurnace(false).setBlockName("machine_electric_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_electric_furnace_on = new MachineElectricFurnace(true).setBlockName("machine_electric_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - machine_arc_furnace_off = new MachineArcFurnace(false).setBlockName("machine_arc_furnace_off").setHardness(5.0F).setResistance(10.0F); - machine_arc_furnace_on = new MachineArcFurnace(true).setBlockName("machine_arc_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); - machine_arc_furnace = new MachineArcFurnaceLarge().setBlockName("machine_arc_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_microwave = new MachineMicrowave(Material.iron).setBlockName("machine_microwave").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_microwave"); - - machine_battery_potato = new MachineBattery(Material.iron, 10_000).setBlockName("machine_battery_potato").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_battery = new MachineBattery(Material.iron, 1_000_000).setBlockName("machine_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_lithium_battery = new MachineBattery(Material.iron, 50_000_000).setBlockName("machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_schrabidium_battery = new MachineBattery(Material.iron, 25_000_000_000L).setBlockName("machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_dineutronium_battery = new MachineBattery(Material.iron, 1_000_000_000_000L).setBlockName("machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_fensu = new MachineFENSU(Material.iron).setBlockName("machine_fensu").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fensu"); - - capacitor_bus = new MachineCapacitorBus(Material.iron).setBlockName("capacitor_bus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - capacitor_copper = new MachineCapacitor(Material.iron, 1_000_000L, "copper").setBlockName("capacitor_copper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); - capacitor_gold = new MachineCapacitor(Material.iron, 5_000_000L, "gold").setBlockName("capacitor_gold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("gold_block"); - capacitor_niobium = new MachineCapacitor(Material.iron, 25_000_000L, "niobium").setBlockName("capacitor_niobium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_niobium"); - capacitor_tantalium = new MachineCapacitor(Material.iron, 150_000_000L, "tantalium").setBlockName("capacitor_tantalium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_tantalium"); - capacitor_schrabidate = new MachineCapacitor(Material.iron, 50_000_000_000L, "schrabidate").setBlockName("capacitor_schrabidate").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_schrabidate"); - - machine_wood_burner = new MachineWoodBurner(Material.iron).setBlockName("machine_wood_burner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_diesel = new MachineDiesel().setBlockName("machine_diesel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_combustion_engine = new MachineCombustionEngine().setBlockName("machine_combustion_engine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - machine_shredder = new MachineShredder(Material.iron).setBlockName("machine_shredder").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - - machine_teleporter = new MachineTeleporter(Material.iron).setBlockName("machine_teleporter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - teleanchor = new MachineTeleanchor().setBlockName("teleanchor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - field_disturber = new MachineFieldDisturber().setBlockName("field_disturber").setHardness(5.0F).setResistance(200.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":field_disturber"); - - machine_rtg_grey = new MachineRTG(Material.iron).setBlockName("machine_rtg_grey").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg"); - machine_amgen = new MachineAmgen(Material.iron).setBlockName("machine_amgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_geo = new MachineAmgen(Material.iron).setBlockName("machine_geo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_minirtg = new MachineMiniRTG(Material.iron).setBlockName("machine_minirtg").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg_cell"); - machine_powerrtg = new MachineMiniRTG(Material.iron).setBlockName("machine_powerrtg").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg_polonium"); - machine_radiolysis = new MachineRadiolysis(Material.iron).setBlockName("machine_radiolysis").setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - machine_hephaestus = new MachineHephaestus(Material.iron).setBlockName("machine_hephaestus").setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - - red_wire_coated = new WireCoated(Material.iron).setBlockName("red_wire_coated").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_wire_coated"); - red_cable = new BlockCable(Material.iron).setBlockName("red_cable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_neo"); - red_cable_classic = new BlockCable(Material.iron).setBlockName("red_cable_classic").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_cable_classic"); - red_cable_paintable = new BlockCablePaintable().setBlockName("red_cable_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - red_cable_gauge = new BlockCableGauge().setBlockName("red_cable_gauge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - red_connector = new ConnectorRedWire(Material.iron).setBlockName("red_connector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_connector"); - red_pylon = new PylonRedWire(Material.iron).setBlockName("red_pylon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); - red_pylon_medium_wood = new PylonMedium(Material.wood).setBlockName("red_pylon_medium_wood").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); - red_pylon_medium_wood_transformer = new PylonMedium(Material.wood).setBlockName("red_pylon_medium_wood_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); - red_pylon_medium_steel = new PylonMedium(Material.iron).setBlockName("red_pylon_medium_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); - red_pylon_medium_steel_transformer = new PylonMedium(Material.iron).setBlockName("red_pylon_medium_steel_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); - red_pylon_large = new PylonLarge(Material.iron).setBlockName("red_pylon_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon_large"); - substation = new Substation(Material.iron).setBlockName("substation").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":substation"); - cable_switch = new CableSwitch(Material.iron).setBlockName("cable_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - cable_detector = new CableDetector(Material.iron).setBlockName("cable_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - cable_diode = new CableDiode(Material.iron).setBlockName("cable_diode").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_diode"); - machine_detector = new PowerDetector(Material.iron).setBlockName("machine_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_detector_off"); - fluid_duct_neo = new FluidDuctStandard(Material.iron).setBlockName("fluid_duct_neo").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pipe_neo"); - fluid_duct_box = new FluidDuctBox(Material.iron).setBlockName("fluid_duct_box").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_box"); - fluid_duct_exhaust = new FluidDuctBoxExhaust(Material.iron).setBlockName("fluid_duct_exhaust").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_box"); - fluid_duct_paintable = new FluidDuctPaintable().setBlockName("fluid_duct_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - fluid_duct_gauge = new FluidDuctGauge().setBlockName("fluid_duct_gauge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - fluid_valve = new FluidValve(Material.iron).setBlockName("fluid_valve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - fluid_switch = new FluidSwitch(Material.iron).setBlockName("fluid_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_drain = new MachineDrain(Material.iron).setBlockName("machine_drain").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); - radio_torch_sender = new RadioTorchSender().setBlockName("radio_torch_sender").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - radio_torch_receiver = new RadioTorchReceiver().setBlockName("radio_torch_receiver").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - radio_torch_counter = new RadioTorchCounter().setBlockName("radio_torch_counter").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtty_counter"); - radio_torch_logic = new RadioTorchLogic().setBlockName("radio_torch_logic").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - radio_telex = new RadioTelex().setBlockName("radio_telex").setHardness(3F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radio_telex"); - - conveyor = new BlockConveyor().setBlockName("conveyor").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); - conveyor_express = new BlockConveyorExpress().setBlockName("conveyor_express").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_express"); - //conveyor_classic = new BlockConveyorClassic().setBlockName("conveyor_classic").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); - conveyor_double = new BlockConveyorDouble().setBlockName("conveyor_double").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_double"); - conveyor_triple = new BlockConveyorTriple().setBlockName("conveyor_triple").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_triple"); - conveyor_chute = new BlockConveyorChute().setBlockName("conveyor_chute").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); - conveyor_lift = new BlockConveyorLift().setBlockName("conveyor_lift").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); - crane_extractor = new CraneExtractor().setBlockName("crane_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_inserter = new CraneInserter().setBlockName("crane_inserter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_grabber = new CraneGrabber().setBlockName("crane_grabber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_router = new CraneRouter().setBlockName("crane_router").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_boxer = new CraneBoxer().setBlockName("crane_boxer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_unboxer = new CraneUnboxer().setBlockName("crane_unboxer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crane_splitter = new CraneSplitter().setBlockName("crane_splitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":crane_side"); - crane_partitioner = new CranePartitioner().setBlockName("crane_partitioner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":crane_partitioner_side"); - fan = new MachineFan().setBlockName("fan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - piston_inserter = new PistonInserter().setBlockName("piston_inserter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - drone_waypoint = new DroneWaypoint().setBlockName("drone_waypoint").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_waypoint"); - drone_crate = new DroneCrate().setBlockName("drone_crate").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - drone_waypoint_request = new DroneWaypointRequest().setBlockName("drone_waypoint_request").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_waypoint_request"); - drone_dock = new DroneDock().setBlockName("drone_dock").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_dock"); - drone_crate_provider = new DroneDock().setBlockName("drone_crate_provider").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_crate_provider"); - drone_crate_requester = new DroneDock().setBlockName("drone_crate_requester").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_crate_requester"); - - chain = new BlockChain(Material.iron).setBlockName("dungeon_chain").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":chain"); - - ladder_sturdy = new BlockNTMLadder().setBlockName("ladder_sturdy").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_sturdy"); - ladder_iron = new BlockNTMLadder().setBlockName("ladder_iron").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_iron"); - ladder_gold = new BlockNTMLadder().setBlockName("ladder_gold").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_gold"); - ladder_aluminium = new BlockNTMLadder().setBlockName("ladder_aluminium").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_aluminium"); - ladder_copper = new BlockNTMLadder().setBlockName("ladder_copper").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_copper"); - ladder_titanium = new BlockNTMLadder().setBlockName("ladder_titanium").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_titanium"); - ladder_lead = new BlockNTMLadder().setBlockName("ladder_lead").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_lead"); - ladder_cobalt = new BlockNTMLadder().setBlockName("ladder_cobalt").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_cobalt"); - ladder_steel = new BlockNTMLadder().setBlockName("ladder_steel").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_steel"); - ladder_tungsten = new BlockNTMLadder().setBlockName("ladder_tungsten").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_tungsten"); - - barrel_plastic = new BlockFluidBarrel(Material.iron, 12000).setBlockName("barrel_plastic").setStepSound(Block.soundTypeStone).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_plastic"); - barrel_corroded = new BlockFluidBarrel(Material.iron, 6000).setBlockName("barrel_corroded").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_corroded"); - barrel_iron = new BlockFluidBarrel(Material.iron, 8000).setBlockName("barrel_iron").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_iron"); - barrel_steel = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_steel").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_steel"); - barrel_tcalloy = new BlockFluidBarrel(Material.iron, 24000).setBlockName("barrel_tcalloy").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_tcalloy"); - barrel_antimatter = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_antimatter").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_antimatter"); - - machine_transformer = new MachineTransformer(Material.iron, 10000L, 1).setBlockName("machine_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer_iron"); - machine_transformer_dnt = new MachineTransformer(Material.iron, 1000000000000000L, 1).setBlockName("machine_transformer_dnt").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer"); - machine_transformer_20 = new MachineTransformer(Material.iron, 10000L, 20).setBlockName("machine_transformer_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer_iron"); - machine_transformer_dnt_20 = new MachineTransformer(Material.iron, 1000000000000000L, 20).setBlockName("machine_transformer_dnt_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer"); - - machine_satlinker = new MachineSatLinker(Material.iron).setBlockName("machine_satlinker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_satlinker_side"); - machine_keyforge = new MachineKeyForge(Material.iron).setBlockName("machine_keyforge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":machine_keyforge_side"); - machine_armor_table = new BlockArmorTable(Material.iron).setBlockName("machine_armor_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab); - - machine_solar_boiler = new MachineSolarBoiler(Material.iron).setBlockName("machine_solar_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_solar_boiler"); - solar_mirror = new SolarMirror(Material.iron).setBlockName("solar_mirror").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":solar_mirror"); - - struct_launcher = new BlockGeneric(Material.iron).setBlockName("struct_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher"); - struct_scaffold = new BlockGeneric(Material.iron).setBlockName("struct_scaffold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_scaffold"); - struct_launcher_core = new BlockStruct(Material.iron).setBlockName("struct_launcher_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher_core"); - struct_launcher_core_large = new BlockStruct(Material.iron).setBlockName("struct_launcher_core_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher_core_large"); - struct_soyuz_core = new BlockSoyuzStruct(Material.iron).setBlockName("struct_soyuz_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_soyuz_core"); - struct_iter_core = new BlockITERStruct(Material.iron).setBlockName("struct_iter_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_iter_core"); - struct_plasma_core = new BlockPlasmaStruct(Material.iron).setBlockName("struct_plasma_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_plasma_core"); - struct_watz_core = new BlockWatzStruct(Material.iron).setBlockName("struct_watz_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_watz_core"); - struct_icf_core = new BlockICFStruct(Material.iron).setBlockName("struct_icf_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_icf_core"); - - factory_titanium_hull = new BlockGeneric(Material.iron).setBlockName("factory_titanium_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); - factory_titanium_furnace = new FactoryHatch(Material.iron).setBlockName("factory_titanium_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_furnace"); - factory_titanium_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_titanium_conductor").setBlockName("factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); - factory_advanced_hull = new BlockGeneric(Material.iron).setBlockName("factory_advanced_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); - factory_advanced_furnace = new FactoryHatch(Material.iron).setBlockName("factory_advanced_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_furnace"); - factory_advanced_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_advanced_conductor").setBlockName("factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); - - cm_block = new BlockCM(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_block").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_block"); - cm_sheet = new BlockCM(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_sheet").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_sheet"); - cm_engine = new BlockCM(Material.iron, EnumCMEngines.class, true, true).setBlockName("cm_engine").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_engine"); - cm_tank = new BlockCMGlass(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_tank").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_tank"); - cm_circuit = new BlockCM(Material.iron, EnumCMCircuit.class, true, true).setBlockName("cm_circuit").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_circuit"); - cm_port = new BlockCMPort(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_port").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_port"); - cm_flux = new BlockCMFlux(Material.iron, RefStrings.MODID + ":cm_flux_top").setBlockName("cm_flux").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_flux_side"); - cm_heat = new BlockCMHeat(Material.iron, RefStrings.MODID +":cm_heat_top").setBlockName("cm_heat").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_heat_side"); - custom_machine = new BlockCustomMachine().setBlockName("custom_machine").setCreativeTab(MainRegistry.machineTab).setLightLevel(1F).setHardness(5.0F).setResistance(10.0F); - cm_anchor = new BlockCMAnchor().setBlockName("custom_machine_anchor").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F); - - pwr_fuel = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_fuel_top").setBlockName("pwr_fuel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_fuel_side"); - pwr_control = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_control_top").setBlockName("pwr_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_control_side"); - pwr_channel = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_channel_top").setBlockName("pwr_channel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_channel_side"); - pwr_heatex = new BlockGenericPWR(Material.iron).setBlockName("pwr_heatex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_heatex"); - pwr_heatsink = new BlockGenericPWR(Material.iron).setBlockName("pwr_heatsink").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_heatsink"); - pwr_neutron_source = new BlockGenericPWR(Material.iron).setBlockName("pwr_neutron_source").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_neutron_source"); - pwr_reflector = new BlockGenericPWR(Material.iron).setBlockName("pwr_reflector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_reflector"); - pwr_casing = new BlockGenericPWR(Material.iron).setBlockName("pwr_casing").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_casing"); - pwr_port = new BlockGenericPWR(Material.iron).setBlockName("pwr_port").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_port"); - pwr_controller = new MachinePWRController(Material.iron).setBlockName("pwr_controller").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_casing_blank"); - pwr_block = new BlockPWR(Material.iron).setBlockName("pwr_block").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pwr_block"); - - fusion_conductor = new BlockToolConversionPillar(Material.iron).addVariant("_welded").setBlockName("fusion_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_conductor"); - fusion_center = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_center_top_alt").setBlockName("fusion_center").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_center_side_alt"); - fusion_motor = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_motor_top_alt").setBlockName("fusion_motor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_motor_side_alt"); - fusion_heater = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_heater_top").setBlockName("fusion_heater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_heater_side"); - fusion_hatch = new FusionHatch(Material.iron).setBlockName("fusion_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_hatch"); - plasma = new BlockPlasma(Material.iron).setBlockName("plasma").setHardness(5.0F).setResistance(6000.0F).setLightLevel(1.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma"); - iter = new MachineITER().setBlockName("iter").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":iter"); - plasma_heater = new MachinePlasmaHeater().setBlockName("plasma_heater").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma_heater"); - - machine_icf_press = new MachineICFPress().setBlockName("machine_icf_press").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - icf = new MachineICF().setBlockName("icf").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - icf_component = new BlockICFComponent().setBlockName("icf_component").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":icf_component"); - icf_controller = new MachineICFController().setBlockName("icf_controller").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":icf_casing"); - icf_laser_component = new BlockICFLaserComponent().setBlockName("icf_laser_component").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab); - icf_block = new BlockICF(Material.iron).setBlockName("icf_block").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":icf_block"); - - watz_element = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_element_top").setBlockName("watz_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_element_side"); - watz_cooler = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_cooler_top").setBlockName("watz_cooler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_cooler_side"); - watz_end = new BlockToolConversion(Material.iron).addVariant("_bolted").setBlockName("watz_end").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_casing"); - watz = new Watz().setBlockName("watz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - watz_pump = new WatzPump().setBlockName("watz_pump").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - balefire = new Balefire().setBlockName("balefire").setHardness(0.0F).setLightLevel(1.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":balefire"); - fire_digamma = new DigammaFlame().setBlockName("fire_digamma").setHardness(0.0F).setResistance(150F).setLightLevel(1.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":fire_digamma"); - digamma_matter = new DigammaMatter().setBlockName("digamma_matter").setBlockUnbreakable().setResistance(18000000).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":digamma_matter"); - - machine_converter_he_rf = new BlockConverterHeRf(Material.iron).setBlockName("machine_converter_he_rf").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_converter_he_rf"); - machine_converter_rf_he = new BlockConverterRfHe(Material.iron).setBlockName("machine_converter_rf_he").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_converter_rf_he"); - - dfc_emitter = new CoreComponent(Material.iron).setBlockName("dfc_emitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_emitter"); - dfc_injector = new CoreComponent(Material.iron).setBlockName("dfc_injector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_injector"); - dfc_receiver = new CoreComponent(Material.iron).setBlockName("dfc_receiver").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_receiver"); - dfc_stabilizer = new CoreComponent(Material.iron).setBlockName("dfc_stabilizer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_stabilizer"); - dfc_core = new CoreCore(Material.iron).setBlockName("dfc_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_core"); - - seal_frame = new BlockGeneric(Material.iron).setBlockName("seal_frame").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":seal_frame"); - seal_controller = new BlockSeal(Material.iron).setBlockName("seal_controller").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab); - seal_hatch = new BlockHatch(Material.iron).setBlockName("seal_hatch").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":seal_hatch_3"); - - vault_door = new VaultDoor(Material.iron).setBlockName("vault_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vault_door"); - blast_door = new BlastDoor(Material.iron).setBlockName("blast_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":blast_door"); - - sliding_blast_door = new BlockDoorGeneric(Material.iron, DoorDecl.SLIDE_DOOR).setBlockName("sliding_blast_door").setHardness(10.0F).setResistance(750.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":sliding_blast_door"); - fire_door = new BlockDoorGeneric(Material.iron, DoorDecl.FIRE_DOOR).setBlockName("fire_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fire_door"); - transition_seal = new BlockDoorGeneric(Material.iron, DoorDecl.TRANSITION_SEAL).setBlockName("transition_seal").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transition_seal"); - silo_hatch = new BlockDoorGeneric(Material.iron, DoorDecl.SILO_HATCH).setBlockName("silo_hatch").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - silo_hatch_large = new BlockDoorGeneric(Material.iron, DoorDecl.SILO_HATCH_LARGE).setBlockName("silo_hatch_large").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - secure_access_door = new BlockDoorGeneric(Material.iron, DoorDecl.SECURE_ACCESS_DOOR).setBlockName("secure_access_door").setHardness(20.0F).setResistance(2_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - large_vehicle_door = new BlockDoorGeneric(Material.iron, DoorDecl.LARGE_VEHICLE_DOOR).setBlockName("large_vehicle_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - qe_containment = new BlockDoorGeneric(Material.iron, DoorDecl.QE_CONTAINMENT).setBlockName("qe_containment").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - qe_sliding_door = new BlockDoorGeneric(Material.iron, DoorDecl.QE_SLIDING).setBlockName("qe_sliding_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - round_airlock_door = new BlockDoorGeneric(Material.iron, DoorDecl.ROUND_AIRLOCK_DOOR).setBlockName("round_airlock_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - sliding_seal_door = new BlockDoorGeneric(Material.iron, DoorDecl.SLIDING_SEAL_DOOR).setBlockName("sliding_seal_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - water_door = new BlockDoorGeneric(Material.iron, DoorDecl.WATER_DOOR).setBlockName("water_door").setHardness(5.0F).setResistance(50.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - door_metal = new BlockModDoor(Material.iron).setBlockName("door_metal").setHardness(5.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":door_metal"); - door_office = new BlockModDoor(Material.iron).setBlockName("door_office").setHardness(10.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":door_office"); - door_bunker = new BlockModDoor(Material.iron).setBlockName("door_bunker").setHardness(10.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":door_bunker"); - door_red = new BlockModDoor(Material.iron).setBlockName("door_red").setHardness(10.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":door_red"); - - barbed_wire = new BarbedWire(Material.iron).setBlockName("barbed_wire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_model"); - barbed_wire_fire = new BarbedWire(Material.iron).setBlockName("barbed_wire_fire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_fire_model"); - barbed_wire_poison = new BarbedWire(Material.iron).setBlockName("barbed_wire_poison").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_poison_model"); - barbed_wire_acid = new BarbedWire(Material.iron).setBlockName("barbed_wire_acid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_acid_model"); - barbed_wire_wither = new BarbedWire(Material.iron).setBlockName("barbed_wire_wither").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_wither_model"); - barbed_wire_ultradeath = new BarbedWire(Material.iron).setBlockName("barbed_wire_ultradeath").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_ultradeath_model"); - spikes = new Spikes(Material.iron).setBlockName("spikes").setHardness(2.5F).setResistance(5.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":spikes"); - - charger = new Charger(Material.iron).setBlockName("charger").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - tesla = new MachineTesla(Material.iron).setBlockName("tesla").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":tesla"); - - launch_pad = new LaunchPad(Material.iron).setBlockName("launch_pad").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":launch_pad"); - launch_pad_rusted = new LaunchPadRusted(Material.iron).setBlockName("launch_pad_rusted").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); - launch_pad_large = new LaunchPadLarge(Material.iron).setBlockName("launch_pad_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_radar = new MachineRadar(Material.iron).setBlockName("machine_radar").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_radar"); - machine_radar_large = new MachineRadarLarge(Material.iron).setBlockName("machine_radar_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - radar_screen = new MachineRadarScreen(Material.iron).setBlockName("radar_screen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - machine_missile_assembly = new MachineMissileAssembly(Material.iron).setBlockName("machine_missile_assembly").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_missile_assembly"); - compact_launcher = new CompactLauncher(Material.iron).setBlockName("compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":compact_launcher"); - launch_table = new LaunchTable(Material.iron).setBlockName("launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":launch_table"); - soyuz_launcher = new SoyuzLauncher(Material.iron).setBlockName("soyuz_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":soyuz_launcher"); - - sat_mapper = new DecoBlock(Material.iron).setBlockName("sat_mapper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_mapper"); - sat_radar = new DecoBlock(Material.iron).setBlockName("sat_radar").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_radar"); - sat_scanner = new DecoBlock(Material.iron).setBlockName("sat_scanner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_scanner"); - sat_laser = new DecoBlock(Material.iron).setBlockName("sat_laser").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_laser"); - sat_foeq = new DecoBlock(Material.iron).setBlockName("sat_foeq").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_foeq"); - sat_resonator = new DecoBlock(Material.iron).setBlockName("sat_resonator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_resonator"); - - sat_dock = new MachineSatDock(Material.iron).setBlockName("sat_dock").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":sat_dock"); - soyuz_capsule = new SoyuzCapsule(Material.iron).setBlockName("soyuz_capsule").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":soyuz_capsule"); - - turret_chekhov = new TurretChekhov(Material.iron).setBlockName("turret_chekhov").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_friendly = new TurretFriendly(Material.iron).setBlockName("turret_friendly").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_jeremy = new TurretJeremy(Material.iron).setBlockName("turret_jeremy").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_tauon = new TurretTauon(Material.iron).setBlockName("turret_tauon").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_richard = new TurretRichard(Material.iron).setBlockName("turret_richard").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_howard = new TurretHoward(Material.iron).setBlockName("turret_howard").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_howard_damaged = new TurretHowardDamaged(Material.iron).setBlockName("turret_howard_damaged").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); - turret_maxwell = new TurretMaxwell(Material.iron).setBlockName("turret_maxwell").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_fritz = new TurretFritz(Material.iron).setBlockName("turret_fritz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_arty = new TurretArty(Material.iron).setBlockName("turret_arty").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_himars = new TurretHIMARS(Material.iron).setBlockName("turret_himars").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_sentry = new TurretSentry().setBlockName("turret_sentry").setHardness(5.0F).setResistance(5.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - turret_sentry_damaged = new TurretSentryDamaged().setBlockName("turret_sentry_damaged").setHardness(5.0F).setResistance(5.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); - - rbmk_rod = new RBMKRod(false).setBlockName("rbmk_rod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element"); - rbmk_rod_mod = new RBMKRod(true).setBlockName("rbmk_rod_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_mod"); - rbmk_rod_reasim = new RBMKRodReaSim(false).setBlockName("rbmk_rod_reasim").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_reasim"); - rbmk_rod_reasim_mod = new RBMKRodReaSim(true).setBlockName("rbmk_rod_reasim_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_reasim_mod"); - rbmk_control = new RBMKControl(false).setBlockName("rbmk_control").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control"); - rbmk_control_mod = new RBMKControl(true).setBlockName("rbmk_control_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control_mod"); - rbmk_control_auto = new RBMKControlAuto().setBlockName("rbmk_control_auto").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control_auto"); - rbmk_blank = new RBMKBlank().setBlockName("rbmk_blank").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_blank"); - rbmk_boiler = new RBMKBoiler().setBlockName("rbmk_boiler").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_boiler"); - rbmk_reflector = new RBMKReflector().setBlockName("rbmk_reflector").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_reflector"); - rbmk_absorber = new RBMKAbsorber().setBlockName("rbmk_absorber").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_absorber"); - rbmk_moderator = new RBMKModerator().setBlockName("rbmk_moderator").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_moderator"); - rbmk_outgasser = new RBMKOutgasser().setBlockName("rbmk_outgasser").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_outgasser"); - rbmk_storage = new RBMKStorage().setBlockName("rbmk_storage").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_storage"); - rbmk_cooler = new RBMKCooler().setBlockName("rbmk_cooler").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_cooler"); - rbmk_heater = new RBMKHeater().setBlockName("rbmk_heater").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_heater"); - rbmk_console = new RBMKConsole().setBlockName("rbmk_console").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_console"); - rbmk_crane_console = new RBMKCraneConsole().setBlockName("rbmk_crane_console").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_crane_console"); - rbmk_loader = new RBMKLoader(Material.iron).setBlockName("rbmk_loader").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_loader"); - rbmk_steam_inlet = new RBMKInlet(Material.iron).setBlockName("rbmk_steam_inlet").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_steam_inlet"); - rbmk_steam_outlet = new RBMKOutlet(Material.iron).setBlockName("rbmk_steam_outlet").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_steam_outlet"); - pribris = new RBMKDebris().setBlockName("pribris").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris"); - pribris_burning = new RBMKDebrisBurning().setBlockName("pribris_burning").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_burning"); - pribris_radiating = new RBMKDebrisRadiating().setBlockName("pribris_radiating").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_radiating"); - pribris_digamma = new RBMKDebrisDigamma().setBlockName("pribris_digamma").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_digamma"); - - book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.nukeTab); - - rail_wood = new RailGeneric().setMaxSpeed(0.2F).setBlockName("rail_wood").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_wood"); - rail_narrow = new RailGeneric().setBlockName("rail_narrow").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_narrow"); - rail_highspeed = new RailGeneric().setMaxSpeed(1F).setFlexible(false).setBlockName("rail_highspeed").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_highspeed"); - rail_booster = new RailBooster().setBlockName("rail_booster").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_booster"); - rail_narrow_straight = new RailNarrowStraight().setBlockName("rail_narrow_straight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rail_narrow_neo"); - rail_narrow_curve = new RailNarrowCurve().setBlockName("rail_narrow_curve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rail_narrow_neo"); - rail_large_straight = new RailStandardStraight().setBlockName("rail_large_straight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_straight_short = new RailStandardStraightShort().setBlockName("rail_large_straight_short").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_curve = new RailStandardCurveBase().setBlockName("rail_large_curve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_curve_7 = new RailStandardCurveWide7().setBlockName("rail_large_curve_7").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_curve_9 = new RailStandardCurveWide9().setBlockName("rail_large_curve_9").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_ramp = new RailStandardRamp().setBlockName("rail_large_ramp").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_buffer = new RailStandardBuffer().setBlockName("rail_large_buffer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_buffer"); - rail_large_switch = new RailStandardSwitch().setBlockName("rail_large_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - rail_large_switch_flipped = new RailStandardSwitchFlipped().setBlockName("rail_large_switch_flipped").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); - - crate = new BlockCrate(Material.wood).setBlockName("crate").setStepSound(Block.soundTypeWood).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate"); - crate_weapon = new BlockCrate(Material.wood).setBlockName("crate_weapon").setStepSound(Block.soundTypeWood).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_weapon"); - crate_lead = new BlockCrate(Material.iron).setBlockName("crate_lead").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_lead"); - crate_metal = new BlockCrate(Material.iron).setBlockName("crate_metal").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_metal"); - crate_red = new BlockCrate(Material.iron).setBlockName("crate_red").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crate_red"); - crate_can = new BlockCanCrate(Material.wood).setBlockName("crate_can").setStepSound(Block.soundTypeWood).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_can"); - crate_ammo = new BlockAmmoCrate(Material.iron).setBlockName("crate_ammo").setStepSound(Block.soundTypeMetal).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab); - crate_jungle = new BlockJungleCrate(Material.rock).setBlockName("crate_jungle").setStepSound(Block.soundTypeStone).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_jungle"); - crate_iron = new BlockStorageCrate(Material.iron).setBlockName("crate_iron").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crate_steel = new BlockStorageCrate(Material.iron).setBlockName("crate_steel").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crate_desh = new BlockStorageCrate(Material.iron).setBlockName("crate_desh").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - crate_tungsten = new BlockStorageCrate(Material.iron).setBlockName("crate_tungsten").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(300.0F).setCreativeTab(MainRegistry.machineTab); - crate_template = new BlockStorageCrate(Material.iron).setBlockName("crate_template").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(300.0F).setCreativeTab(MainRegistry.machineTab); - safe = new BlockStorageCrate(Material.iron).setBlockName("safe").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab); - mass_storage = new BlockMassStorage().setBlockName("mass_storage").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - - boxcar = new DecoBlock(Material.iron).setBlockName("boxcar").setStepSound(Block.soundTypeMetal).setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":boxcar"); - boat = new DecoBlock(Material.iron).setBlockName("boat").setStepSound(Block.soundTypeMetal).setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":boat"); - - machine_well = new MachineOilWell().setBlockName("machine_well").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_well"); - machine_pumpjack = new MachinePumpjack().setBlockName("machine_pumpjack").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_pumpjack"); - machine_fracking_tower = new MachineFrackingTower().setBlockName("machine_fracking_tower").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - oil_pipe = new BlockNoDrop(Material.iron).setBlockName("oil_pipe").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":oil_pipe"); - machine_flare = new MachineGasFlare(Material.iron).setBlockName("machine_flare").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - chimney_brick = new MachineChimneyBrick(Material.iron).setBlockName("chimney_brick").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); - chimney_industrial = new MachineChimneyIndustrial(Material.iron).setBlockName("chimney_industrial").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete_colored_ext.machine"); - machine_refinery = new MachineRefinery(Material.iron).setBlockName("machine_refinery").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_refinery"); - machine_vacuum_distill = new MachineVacuumDistill(Material.iron).setBlockName("machine_vacuum_distill").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_fraction_tower = new MachineFractionTower(Material.iron).setBlockName("machine_fraction_tower").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - fraction_spacer = new FractionSpacer(Material.iron).setBlockName("fraction_spacer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_catalytic_cracker = new MachineCatalyticCracker(Material.iron).setBlockName("machine_catalytic_cracker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_catalytic_reformer = new MachineCatalyticReformer(Material.iron).setBlockName("machine_catalytic_reformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_hydrotreater = new MachineHydrotreater(Material.iron).setBlockName("machine_hydrotreater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_coker = new MachineCoker(Material.iron).setBlockName("machine_coker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_pyrooven = new MachinePyroOven(Material.iron).setBlockName("machine_pyrooven").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_autosaw = new MachineAutosaw().setBlockName("machine_autosaw").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_excavator = new MachineExcavator().setBlockName("machine_excavator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_ore_slopper = new MachineOreSlopper().setBlockName("machine_ore_slopper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_mining_laser = new MachineMiningLaser(Material.iron).setBlockName("machine_mining_laser").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_mining_laser"); - barricade = new BlockNoDrop(Material.sand).setBlockName("barricade").setHardness(1.0F).setResistance(2.5F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":barricade"); - machine_assembler = new MachineAssembler(Material.iron).setBlockName("machine_assembler").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_assembler"); - machine_assemfac = new MachineAssemfac(Material.iron).setBlockName("machine_assemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_arc_welder = new MachineArcWelder(Material.iron).setBlockName("machine_arc_welder").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_soldering_station = new MachineSolderingStation(Material.iron).setBlockName("machine_soldering_station").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_chemplant = new MachineChemplant(Material.iron).setBlockName("machine_chemplant").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_chemfac = new MachineChemfac(Material.iron).setBlockName("machine_chemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_mixer = new MachineMixer(Material.iron).setBlockName("machine_mixer").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_fluidtank = new MachineFluidTank(Material.iron).setBlockName("machine_fluidtank").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fluidtank"); - machine_bat9000 = new MachineBigAssTank9000(Material.iron).setBlockName("machine_bat9000").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_orbus = new MachineOrbus(Material.iron).setBlockName("machine_orbus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_turbofan = new MachineTurbofan(Material.iron).setBlockName("machine_turbofan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_turbofan"); - machine_turbinegas = new MachineTurbineGas(Material.iron).setBlockName("machine_turbinegas").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_lpw2 = new MachineLPW2().setBlockName("machine_lpw2").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - press_preheater = new BlockBase(Material.iron).setBlockName("press_preheater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":press_preheater"); - machine_press = new MachinePress(Material.iron).setBlockName("machine_press").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_press"); - machine_epress = new MachineEPress(Material.iron).setBlockName("machine_epress").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_epress"); - machine_conveyor_press = new MachineConveyorPress(Material.iron).setBlockName("machine_conveyor_press").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - reactor_research = new ReactorResearch(Material.iron).setBlockName("machine_reactor_small").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_reactor_small"); - reactor_zirnox = new ReactorZirnox(Material.iron).setBlockName("machine_zirnox").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - zirnox_destroyed = new ZirnoxDestroyed(Material.iron).setBlockName("zirnox_destroyed").setHardness(100.0F).setResistance(800.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_controller = new MachineReactorControl(Material.iron).setBlockName("machine_controller").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null); - - machine_boiler_off = new MachineBoiler(false).setBlockName("machine_boiler_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":machine_boiler_off"); - - machine_steam_engine = new MachineSteamEngine().setBlockName("machine_steam_engine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); - machine_turbine = new MachineTurbine(Material.iron).setBlockName("machine_turbine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_turbine"); - machine_large_turbine = new MachineLargeTurbine(Material.iron).setBlockName("machine_large_turbine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_large_turbine"); - machine_chungus = new MachineChungus(Material.iron).setBlockName("machine_chungus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_chungus"); - machine_condenser = new MachineCondenser(Material.iron).setBlockName("machine_condenser").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":condenser"); - machine_tower_small = new MachineTowerSmall(Material.iron).setBlockName("machine_tower_small").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); - machine_tower_large = new MachineTowerLarge(Material.iron).setBlockName("machine_tower_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); - machine_condenser_powered = new MachineCondenserPowered(Material.iron).setBlockName("machine_condenser_powered").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - - machine_deuterium_extractor = new MachineDeuteriumExtractor(Material.iron).setBlockName("machine_deuterium_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_deuterium_extractor_side"); - machine_deuterium_tower = new DeuteriumTower(Material.iron).setBlockName("machine_deuterium_tower").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); - - machine_liquefactor = new MachineLiquefactor().setBlockName("machine_liquefactor").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - machine_solidifier = new MachineSolidifier().setBlockName("machine_solidifier").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - machine_compressor = new MachineCompressor().setBlockName("machine_compressor").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - - machine_electrolyser = new MachineElectrolyser().setBlockName("machine_electrolyser").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); - - machine_autocrafter = new MachineAutocrafter().setBlockName("machine_autocrafter").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab); - machine_funnel = new MachineFunnel().setBlockName("machine_funnel").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab); - - anvil_iron = new NTMAnvil(Material.iron, NTMAnvil.TIER_IRON).setBlockName("anvil_iron").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_iron"); - anvil_lead = new NTMAnvil(Material.iron, NTMAnvil.TIER_IRON).setBlockName("anvil_lead").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_lead"); - anvil_steel = new NTMAnvil(Material.iron, NTMAnvil.TIER_STEEL).setBlockName("anvil_steel").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_steel"); - anvil_desh = new NTMAnvil(Material.iron, NTMAnvil.TIER_OIL).setBlockName("anvil_desh").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_desh"); - anvil_saturnite = new NTMAnvil(Material.iron, NTMAnvil.TIER_OIL).setBlockName("anvil_saturnite").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_saturnite"); - anvil_ferrouranium = new NTMAnvil(Material.iron, NTMAnvil.TIER_NUCLEAR).setBlockName("anvil_ferrouranium").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_ferrouranium"); - anvil_bismuth_bronze = new NTMAnvil(Material.iron, NTMAnvil.TIER_RBMK).setBlockName("anvil_bismuth_bronze").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_bismuth_bronze"); - anvil_arsenic_bronze = new NTMAnvil(Material.iron, NTMAnvil.TIER_RBMK).setBlockName("anvil_arsenic_bronze").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_arsenic_bronze"); - anvil_schrabidate = new NTMAnvil(Material.iron, NTMAnvil.TIER_FUSION).setBlockName("anvil_schrabidate").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_schrabidate"); - anvil_dnt = new NTMAnvil(Material.iron, NTMAnvil.TIER_PARTICLE).setBlockName("anvil_dnt").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_dnt"); - anvil_osmiridium = new NTMAnvil(Material.iron, NTMAnvil.TIER_GERALD).setBlockName("anvil_osmiridium").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_osmiridium"); - anvil_murky = new NTMAnvil(Material.iron, 1916169).setBlockName("anvil_murky").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_steel"); - - machine_waste_drum = new WasteDrum(Material.iron).setBlockName("machine_waste_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":waste_drum"); - machine_storage_drum = new StorageDrum(Material.iron).setBlockName("machine_storage_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_storage_drum"); - - machine_schrabidium_transmutator = new MachineSchrabidiumTransmutator(Material.iron).setBlockName("machine_schrabidium_transmutator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab); - - machine_siren = new MachineSiren(Material.iron).setBlockName("machine_siren").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_siren"); - - machine_spp_bottom = new SPPBottom(Material.iron).setBlockName("machine_spp_bottom").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - machine_spp_top = new SPPTop(Material.iron).setBlockName("machine_spp_top").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - - radiobox = new Radiobox(Material.iron).setBlockName("radiobox").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radiobox"); - radiorec = new RadioRec(Material.iron).setBlockName("radiorec").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radiorec"); - - machine_forcefield = new MachineForceField(Material.iron).setBlockName("machine_forcefield").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_forcefield"); - - cheater_virus = new CheaterVirus(Material.iron).setBlockName("cheater_virus").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus"); - cheater_virus_seed = new CheaterVirusSeed(Material.iron).setBlockName("cheater_virus_seed").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus_seed"); - crystal_virus = new CrystalVirus(Material.iron).setBlockName("crystal_virus").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_virus"); - crystal_hardened = new BlockGeneric(Material.iron).setBlockName("crystal_hardened").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_hardened"); - crystal_pulsar = new CrystalPulsar(Material.iron).setBlockName("crystal_pulsar").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_pulsar"); - taint = new BlockTaint(Material.iron).setBlockName("taint").setHardness(15.0F).setResistance(10.0F).setCreativeTab(null); - - vent_chlorine = new BlockVent(Material.iron).setBlockName("vent_chlorine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_chlorine"); - vent_cloud = new BlockVent(Material.iron).setBlockName("vent_cloud").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_cloud"); - vent_pink_cloud = new BlockVent(Material.iron).setBlockName("vent_pink_cloud").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_pink_cloud"); - vent_chlorine_seal = new BlockClorineSeal(Material.iron).setBlockName("vent_chlorine_seal").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); - chlorine_gas = new BlockGasClorine().setBlockName("chlorine_gas").setHardness(0.0F).setResistance(0.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":chlorine_gas"); - - gas_radon = new BlockGasRadon().setBlockName("gas_radon").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon"); - gas_radon_dense = new BlockGasRadonDense().setBlockName("gas_radon_dense").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon_dense"); - gas_radon_tomb = new BlockGasRadonTomb().setBlockName("gas_radon_tomb").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon_tomb"); - gas_meltdown = new BlockGasMeltdown().setBlockName("gas_meltdown").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_meltdown"); - gas_monoxide = new BlockGasMonoxide().setBlockName("gas_monoxide").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_monoxide"); - gas_asbestos = new BlockGasAsbestos().setBlockName("gas_asbestos").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_asbestos"); - gas_coal = new BlockGasCoal().setBlockName("gas_coal").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_coal"); - gas_flammable = new BlockGasFlammable().setBlockName("gas_flammable").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_flammable"); - gas_explosive = new BlockGasExplosive().setBlockName("gas_explosive").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_explosive"); - vacuum = new BlockVacuum().setBlockName("vacuum").setResistance(1000000F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vacuum"); - - absorber = new BlockAbsorber(Material.iron, 2.5F).setBlockName("absorber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber"); - absorber_red = new BlockAbsorber(Material.iron, 10F).setBlockName("absorber_red").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_red"); - absorber_green = new BlockAbsorber(Material.iron, 100F).setBlockName("absorber_green").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_green"); - absorber_pink = new BlockAbsorber(Material.iron, 10000F).setBlockName("absorber_pink").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_pink"); - decon = new BlockDecon(Material.iron).setBlockName("decon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":decon_side"); - transission_hatch = new BlockTransission(Material.iron).setBlockName("transission_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transission_hatch"); - - volcano_core = new BlockVolcano().setBlockName("volcano_core").setBlockUnbreakable().setResistance(10000.0F).setCreativeTab(MainRegistry.nukeTab).setBlockTextureName(RefStrings.MODID + ":volcano_core"); - volcano_rad_core = new BlockVolcano().setBlockName("volcano_rad_core").setBlockUnbreakable().setResistance(10000.0F).setCreativeTab(MainRegistry.nukeTab).setBlockTextureName(RefStrings.MODID + ":volcano_rad_core"); - - statue_elb = new DecoBlockAlt(Material.iron).setBlockName("#null").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); - statue_elb_g = new DecoBlockAlt(Material.iron).setBlockName("#void").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); - statue_elb_w = new DecoBlockAlt(Material.iron).setBlockName("#ngtv").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); - statue_elb_f = new DecoBlockAlt(Material.iron).setBlockName("#undef").setHardness(Float.POSITIVE_INFINITY).setLightLevel(1.0F).setResistance(Float.POSITIVE_INFINITY); - - mud_fluid = new MudFluid().setDensity(2500).setViscosity(3000).setLuminosity(5).setTemperature(2773).setUnlocalizedName("mud_fluid"); - FluidRegistry.registerFluid(mud_fluid); - mud_block = new MudBlock(mud_fluid, fluidmud.setReplaceable(), ModDamageSource.mudPoisoning).setBlockName("mud_block").setResistance(500F); - - acid_fluid = new AcidFluid().setDensity(2500).setViscosity(1500).setLuminosity(5).setTemperature(2773).setUnlocalizedName("acid_fluid"); - FluidRegistry.registerFluid(acid_fluid); - acid_block = new AcidBlock(acid_fluid, fluidacid.setReplaceable(), ModDamageSource.acid).setBlockName("acid_block").setResistance(500F); - - toxic_fluid = new ToxicFluid().setDensity(2500).setViscosity(2000).setLuminosity(15).setTemperature(2773).setUnlocalizedName("toxic_fluid"); - FluidRegistry.registerFluid(toxic_fluid); - toxic_block = new ToxicBlock(toxic_fluid, fluidtoxic.setReplaceable(), ModDamageSource.radiation).setBlockName("toxic_block").setResistance(500F); - - schrabidic_fluid = new SchrabidicFluid().setDensity(31200).setViscosity(500).setTemperature(273).setUnlocalizedName("schrabidic_fluid"); - FluidRegistry.registerFluid(schrabidic_fluid); - schrabidic_block = new SchrabidicBlock(schrabidic_fluid, fluidschrabidic.setReplaceable(), ModDamageSource.radiation).setBlockName("schrabidic_block").setResistance(500F); - - corium_fluid = new CoriumFluid().setDensity(600000).setViscosity(12000).setLuminosity(10).setTemperature(1500).setUnlocalizedName("corium_fluid"); - FluidRegistry.registerFluid(corium_fluid); - corium_block = new CoriumFinite(corium_fluid, fluidcorium).setBlockName("corium_block").setResistance(500F); - - volcanic_lava_fluid = new VolcanicFluid().setLuminosity(15).setDensity(3000).setViscosity(3000).setTemperature(1300).setUnlocalizedName("volcanic_lava_fluid"); - FluidRegistry.registerFluid(volcanic_lava_fluid); - volcanic_lava_block = new VolcanicBlock(volcanic_lava_fluid, Material.lava).setBlockName("volcanic_lava_block").setResistance(500F); - - rad_lava_fluid = new RadFluid().setLuminosity(15).setDensity(3000).setViscosity(3000).setTemperature(1300).setUnlocalizedName("rad_lava_fluid"); - FluidRegistry.registerFluid(rad_lava_fluid); - rad_lava_block = new RadBlock(rad_lava_fluid, Material.lava).setBlockName("rad_lava_block").setResistance(500F); - - sulfuric_acid_fluid = new GenericFluid("sulfuric_acid_fluid").setDensity(1840).setViscosity(1000).setTemperature(273); - FluidRegistry.registerFluid(sulfuric_acid_fluid); - sulfuric_acid_block = new GenericFluidBlock(sulfuric_acid_fluid, Material.water, "sulfuric_acid_still", "sulfuric_acid_flowing").setDamage(ModDamageSource.acid, 5F).setBlockName("sulfuric_acid_block").setResistance(500F); - - Fluid liquidConcrete = new GenericFluid("concrete_liquid").setViscosity(2000); - concrete_liquid = new GenericFiniteFluid(liquidConcrete, Material.rock, "concrete_liquid", "concrete_liquid_flowing").setQuantaPerBlock(4).setBlockName("concrete_liquid").setResistance(500F); - - dummy_block_vault = new DummyBlockVault(Material.iron).setBlockName("dummy_block_vault").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_block_blast = new DummyBlockBlast(Material.iron).setBlockName("dummy_block_blast").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_block_uf6 = new DummyBlockMachine(Material.iron, machine_uf6_tank, false).setBlockName("dummy_block_uf6").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_titanium"); - dummy_block_puf6 = new DummyBlockMachine(Material.iron, machine_puf6_tank, false).setBlockName("dummy_block_puf6").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_plate_compact_launcher = new DummyBlockMachine(Material.iron, compact_launcher, false).setBounds(0, 16, 0, 16, 16, 16).setBlockName("dummy_plate_compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_port_compact_launcher = new DummyBlockMachine(Material.iron, compact_launcher, true).setBlockName("dummy_port_compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_plate_launch_table = new DummyBlockMachine(Material.iron, launch_table, false).setBounds(0, 16, 0, 16, 16, 16).setBlockName("dummy_plate_launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_port_launch_table = new DummyBlockMachine(Material.iron, launch_table, true).setBlockName("dummy_port_launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - dummy_plate_cargo = new DummyBlockMachine(Material.iron, sat_dock, false).setBounds(0, 0, 0, 16, 8, 16).setBlockName("dummy_plate_cargo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); - - ntm_dirt = new BlockNTMDirt().setBlockName("ntm_dirt").setHardness(0.5F).setStepSound(Block.soundTypeGravel).setCreativeTab(null).setBlockTextureName("dirt"); - - pink_log = new BlockPinkLog().setBlockName("pink_log").setHardness(0.5F).setStepSound(Block.soundTypeWood).setCreativeTab(null); - pink_planks = new BlockGeneric(Material.wood).setBlockName("pink_planks").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); - pink_slab = new BlockPinkSlab(false, Material.wood).setBlockName("pink_slab").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); - pink_double_slab = new BlockPinkSlab(true, Material.wood).setBlockName("pink_double_slab").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); - pink_stairs = new BlockGenericStairs(pink_planks, 0).setBlockName("pink_stairs").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); - } - - private static void registerBlock() { - //Test - GameRegistry.registerBlock(event_tester, event_tester.getUnlocalizedName()); - GameRegistry.registerBlock(obj_tester, obj_tester.getUnlocalizedName()); - GameRegistry.registerBlock(test_core, test_core.getUnlocalizedName()); - GameRegistry.registerBlock(test_charge, test_charge.getUnlocalizedName()); - GameRegistry.registerBlock(structure_anchor, structure_anchor.getUnlocalizedName()); - - //Ores - GameRegistry.registerBlock(ore_uranium, ore_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_uranium_scorched, ore_uranium_scorched.getUnlocalizedName()); - GameRegistry.registerBlock(ore_thorium, ore_thorium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_titanium, ore_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_sulfur, ore_sulfur.getUnlocalizedName()); - GameRegistry.registerBlock(ore_niter, ore_niter.getUnlocalizedName()); - GameRegistry.registerBlock(ore_copper, ore_copper.getUnlocalizedName()); - GameRegistry.registerBlock(ore_tungsten, ore_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(ore_aluminium, ore_aluminium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_fluorite, ore_fluorite.getUnlocalizedName()); - GameRegistry.registerBlock(ore_beryllium, ore_beryllium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_lead, ore_lead.getUnlocalizedName()); - GameRegistry.registerBlock(ore_oil, ItemBlockLore.class, ore_oil.getUnlocalizedName()); - GameRegistry.registerBlock(ore_oil_empty, ore_oil_empty.getUnlocalizedName()); - GameRegistry.registerBlock(ore_oil_sand, ore_oil_sand.getUnlocalizedName()); - GameRegistry.registerBlock(ore_lignite, ore_lignite.getUnlocalizedName()); - GameRegistry.registerBlock(ore_asbestos, ore_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(ore_schrabidium, ItemBlockLore.class, ore_schrabidium.getUnlocalizedName()); - - //Rare Minerals - GameRegistry.registerBlock(ore_australium, ItemOreBlock.class, ore_australium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_rare, ItemOreBlock.class, ore_rare.getUnlocalizedName()); - GameRegistry.registerBlock(ore_cobalt, ore_cobalt.getUnlocalizedName()); - GameRegistry.registerBlock(ore_cinnebar, ore_cinnebar.getUnlocalizedName()); - GameRegistry.registerBlock(ore_coltan, ore_coltan.getUnlocalizedName()); - - //Stone clusters - GameRegistry.registerBlock(cluster_iron, ItemBlockBase.class, cluster_iron.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_titanium, ItemBlockBase.class, cluster_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_aluminium, ItemBlockBase.class, cluster_aluminium.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_copper, ItemBlockBase.class, cluster_copper.getUnlocalizedName()); - - //Bedrock ores - GameRegistry.registerBlock(ore_bedrock_oil, ore_bedrock_oil.getUnlocalizedName()); - - //Nice Meme - GameRegistry.registerBlock(ore_coal_oil, ore_coal_oil.getUnlocalizedName()); - GameRegistry.registerBlock(ore_coal_oil_burning, ore_coal_oil_burning.getUnlocalizedName()); - - //Nether Ores - GameRegistry.registerBlock(ore_nether_coal, ore_nether_coal.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_smoldering, ore_nether_smoldering.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_uranium, ore_nether_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_uranium_scorched, ore_nether_uranium_scorched.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_plutonium, ore_nether_plutonium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_tungsten, ore_nether_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_sulfur, ore_nether_sulfur.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_fire, ore_nether_fire.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_cobalt, ore_nether_cobalt.getUnlocalizedName()); - GameRegistry.registerBlock(ore_nether_schrabidium, ItemBlockLore.class, ore_nether_schrabidium.getUnlocalizedName()); - - //Meteor Ores - register(ore_meteor); - - //Gneiss Ores - GameRegistry.registerBlock(ore_gneiss_iron, ore_gneiss_iron.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_gold, ore_gneiss_gold.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_uranium, ore_gneiss_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_uranium_scorched, ore_gneiss_uranium_scorched.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_copper, ore_gneiss_copper.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_asbestos, ore_gneiss_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_lithium, ore_gneiss_lithium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_schrabidium, ItemBlockLore.class, ore_gneiss_schrabidium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_rare, ItemOreBlock.class, ore_gneiss_rare.getUnlocalizedName()); - GameRegistry.registerBlock(ore_gneiss_gas, ore_gneiss_gas.getUnlocalizedName()); - - //Depth ores - GameRegistry.registerBlock(ore_depth_cinnebar, ItemBlockBase.class, ore_depth_cinnebar.getUnlocalizedName()); - GameRegistry.registerBlock(ore_depth_zirconium, ItemBlockBase.class, ore_depth_zirconium.getUnlocalizedName()); - GameRegistry.registerBlock(ore_depth_borax, ItemBlockBase.class, ore_depth_borax.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_depth_iron, ItemBlockBase.class, cluster_depth_iron.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_depth_titanium, ItemBlockBase.class, cluster_depth_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(cluster_depth_tungsten, ItemBlockBase.class, cluster_depth_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(ore_alexandrite, ItemBlockBase.class, ore_alexandrite.getUnlocalizedName()); - - //Nether depth ores - GameRegistry.registerBlock(ore_depth_nether_neodymium, ItemBlockBase.class, ore_depth_nether_neodymium.getUnlocalizedName()); - - //Basalt ores - register(ore_basalt); - - //End Ores - GameRegistry.registerBlock(ore_tikite, ore_tikite.getUnlocalizedName()); - - //It's a meme you dip - GameRegistry.registerBlock(ore_random, ItemRandomOreBlock.class, ore_random.getUnlocalizedName()); - - //Bedrock ore - register(ore_bedrock); - register(ore_volcano); - - //Secret - register(stone_keyhole); - - //Resource-bearing Stones - register(stone_resource); - register(stalagmite); - register(stalactite); - register(stone_biome); - - //Stone Variants - GameRegistry.registerBlock(stone_porous, stone_porous.getUnlocalizedName()); - GameRegistry.registerBlock(stone_gneiss, stone_gneiss.getUnlocalizedName()); - GameRegistry.registerBlock(gneiss_brick, gneiss_brick.getUnlocalizedName()); - GameRegistry.registerBlock(gneiss_tile, gneiss_tile.getUnlocalizedName()); - GameRegistry.registerBlock(gneiss_chiseled, gneiss_chiseled.getUnlocalizedName()); - GameRegistry.registerBlock(stone_depth, ItemBlockBase.class, stone_depth.getUnlocalizedName()); - GameRegistry.registerBlock(depth_brick, ItemBlockBase.class, depth_brick.getUnlocalizedName()); - GameRegistry.registerBlock(depth_tiles, ItemBlockBase.class, depth_tiles.getUnlocalizedName()); - GameRegistry.registerBlock(stone_depth_nether, ItemBlockBase.class, stone_depth_nether.getUnlocalizedName()); - GameRegistry.registerBlock(depth_nether_brick, ItemBlockBase.class, depth_nether_brick.getUnlocalizedName()); - GameRegistry.registerBlock(depth_nether_tiles, ItemBlockBase.class, depth_nether_tiles.getUnlocalizedName()); - GameRegistry.registerBlock(depth_dnt, ItemBlockBase.class, depth_dnt.getUnlocalizedName()); - GameRegistry.registerBlock(basalt, basalt.getUnlocalizedName()); - GameRegistry.registerBlock(basalt_smooth, basalt_smooth.getUnlocalizedName()); - GameRegistry.registerBlock(basalt_brick, basalt_brick.getUnlocalizedName()); - GameRegistry.registerBlock(basalt_polished, basalt_polished.getUnlocalizedName()); - GameRegistry.registerBlock(basalt_tiles, basalt_tiles.getUnlocalizedName()); - //GameRegistry.registerBlock(stone_deep_cobble, ItemBlockBase.class, stone_deep_cobble.getUnlocalizedName()); - - //Blocks - GameRegistry.registerBlock(block_uranium, block_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(block_u233, block_u233.getUnlocalizedName()); - GameRegistry.registerBlock(block_u235, block_u235.getUnlocalizedName()); - GameRegistry.registerBlock(block_u238, block_u238.getUnlocalizedName()); - GameRegistry.registerBlock(block_uranium_fuel, block_uranium_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_neptunium, block_neptunium.getUnlocalizedName()); - GameRegistry.registerBlock(block_polonium, block_polonium.getUnlocalizedName()); - GameRegistry.registerBlock(block_mox_fuel, block_mox_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_plutonium, block_plutonium.getUnlocalizedName()); - GameRegistry.registerBlock(block_pu238, block_pu238.getUnlocalizedName()); - GameRegistry.registerBlock(block_pu239, block_pu239.getUnlocalizedName()); - GameRegistry.registerBlock(block_pu240, block_pu240.getUnlocalizedName()); - GameRegistry.registerBlock(block_pu_mix, block_pu_mix.getUnlocalizedName()); - GameRegistry.registerBlock(block_plutonium_fuel, block_plutonium_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_thorium, block_thorium.getUnlocalizedName()); - GameRegistry.registerBlock(block_thorium_fuel, block_thorium_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_titanium, block_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(block_sulfur, block_sulfur.getUnlocalizedName()); - GameRegistry.registerBlock(block_niter, block_niter.getUnlocalizedName()); - GameRegistry.registerBlock(block_copper, block_copper.getUnlocalizedName()); - GameRegistry.registerBlock(block_red_copper, block_red_copper.getUnlocalizedName()); - GameRegistry.registerBlock(block_advanced_alloy, block_advanced_alloy.getUnlocalizedName()); - GameRegistry.registerBlock(block_tungsten, block_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(block_aluminium, block_aluminium.getUnlocalizedName()); - GameRegistry.registerBlock(block_fluorite, block_fluorite.getUnlocalizedName()); - GameRegistry.registerBlock(block_beryllium, block_beryllium.getUnlocalizedName()); - GameRegistry.registerBlock(block_cobalt, block_cobalt.getUnlocalizedName()); - GameRegistry.registerBlock(block_steel, block_steel.getUnlocalizedName()); - GameRegistry.registerBlock(block_tcalloy, block_tcalloy.getUnlocalizedName()); - GameRegistry.registerBlock(block_cdalloy, block_cdalloy.getUnlocalizedName()); - GameRegistry.registerBlock(block_lead, block_lead.getUnlocalizedName()); - GameRegistry.registerBlock(block_bismuth, block_bismuth.getUnlocalizedName()); - GameRegistry.registerBlock(block_cadmium, block_cadmium.getUnlocalizedName()); - GameRegistry.registerBlock(block_coltan, block_coltan.getUnlocalizedName()); - GameRegistry.registerBlock(block_tantalium, block_tantalium.getUnlocalizedName()); - GameRegistry.registerBlock(block_niobium, block_niobium.getUnlocalizedName()); - GameRegistry.registerBlock(block_lithium, block_lithium.getUnlocalizedName()); - GameRegistry.registerBlock(block_zirconium, block_zirconium.getUnlocalizedName()); - GameRegistry.registerBlock(block_white_phosphorus, block_white_phosphorus.getUnlocalizedName()); - GameRegistry.registerBlock(block_red_phosphorus, block_red_phosphorus.getUnlocalizedName()); - GameRegistry.registerBlock(block_yellowcake, block_yellowcake.getUnlocalizedName()); - GameRegistry.registerBlock(block_scrap, block_scrap.getUnlocalizedName()); - GameRegistry.registerBlock(block_electrical_scrap, block_electrical_scrap.getUnlocalizedName()); - GameRegistry.registerBlock(block_fallout, block_fallout.getUnlocalizedName()); - GameRegistry.registerBlock(block_foam, block_foam.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite, block_graphite.getUnlocalizedName()); - register(block_coke); - GameRegistry.registerBlock(block_graphite_drilled, block_graphite_drilled.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_fuel, block_graphite_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_rod, block_graphite_rod.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_plutonium, block_graphite_plutonium.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_source, block_graphite_source.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_lithium, block_graphite_lithium.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_tritium, block_graphite_tritium.getUnlocalizedName()); - GameRegistry.registerBlock(block_graphite_detector, block_graphite_detector.getUnlocalizedName()); - GameRegistry.registerBlock(block_boron, block_boron.getUnlocalizedName()); - GameRegistry.registerBlock(block_insulator, block_insulator.getUnlocalizedName()); - GameRegistry.registerBlock(block_fiberglass, block_fiberglass.getUnlocalizedName()); - GameRegistry.registerBlock(block_asbestos, block_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(block_trinitite, block_trinitite.getUnlocalizedName()); - GameRegistry.registerBlock(block_waste, block_waste.getUnlocalizedName()); - GameRegistry.registerBlock(block_waste_painted, block_waste_painted.getUnlocalizedName()); - GameRegistry.registerBlock(block_waste_vitrified, block_waste_vitrified.getUnlocalizedName()); - GameRegistry.registerBlock(ancient_scrap, ancient_scrap.getUnlocalizedName()); - GameRegistry.registerBlock(block_corium, block_corium.getUnlocalizedName()); - GameRegistry.registerBlock(block_corium_cobble, block_corium_cobble.getUnlocalizedName()); - GameRegistry.registerBlock(block_schraranium, ItemBlockBase.class, block_schraranium.getUnlocalizedName()); - GameRegistry.registerBlock(block_schrabidium, ItemBlockBase.class, block_schrabidium.getUnlocalizedName()); - GameRegistry.registerBlock(block_schrabidate, ItemBlockBase.class, block_schrabidate.getUnlocalizedName()); - GameRegistry.registerBlock(block_solinium, ItemBlockBase.class, block_solinium.getUnlocalizedName()); - GameRegistry.registerBlock(block_schrabidium_fuel, ItemBlockBase.class, block_schrabidium_fuel.getUnlocalizedName()); - GameRegistry.registerBlock(block_euphemium, ItemBlockLore.class, block_euphemium.getUnlocalizedName()); - GameRegistry.registerBlock(block_schrabidium_cluster, ItemBlockBase.class, block_schrabidium_cluster.getUnlocalizedName()); - GameRegistry.registerBlock(block_euphemium_cluster, ItemBlockLore.class, block_euphemium_cluster.getUnlocalizedName()); - GameRegistry.registerBlock(block_dineutronium, block_dineutronium.getUnlocalizedName()); - GameRegistry.registerBlock(block_magnetized_tungsten, block_magnetized_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(block_combine_steel, block_combine_steel.getUnlocalizedName()); - GameRegistry.registerBlock(block_desh, block_desh.getUnlocalizedName()); - GameRegistry.registerBlock(block_dura_steel, block_dura_steel.getUnlocalizedName()); - GameRegistry.registerBlock(block_starmetal, block_starmetal.getUnlocalizedName()); - GameRegistry.registerBlock(block_polymer, block_polymer.getUnlocalizedName()); - GameRegistry.registerBlock(block_bakelite, block_bakelite.getUnlocalizedName()); - GameRegistry.registerBlock(block_rubber, block_rubber.getUnlocalizedName()); - GameRegistry.registerBlock(block_australium, ItemOreBlock.class, block_australium.getUnlocalizedName()); - GameRegistry.registerBlock(block_weidanium, ItemOreBlock.class, block_weidanium.getUnlocalizedName()); - GameRegistry.registerBlock(block_reiium, ItemOreBlock.class, block_reiium.getUnlocalizedName()); - GameRegistry.registerBlock(block_unobtainium, ItemOreBlock.class, block_unobtainium.getUnlocalizedName()); - GameRegistry.registerBlock(block_daffergon, ItemOreBlock.class, block_daffergon.getUnlocalizedName()); - GameRegistry.registerBlock(block_verticium, ItemOreBlock.class, block_verticium.getUnlocalizedName()); - register(block_cap); - GameRegistry.registerBlock(block_lanthanium, block_lanthanium.getUnlocalizedName()); - GameRegistry.registerBlock(block_ra226, block_ra226.getUnlocalizedName()); - GameRegistry.registerBlock(block_actinium, block_actinium.getUnlocalizedName()); - GameRegistry.registerBlock(block_tritium, block_tritium.getUnlocalizedName()); - GameRegistry.registerBlock(block_semtex, block_semtex.getUnlocalizedName()); - GameRegistry.registerBlock(block_c4, block_c4.getUnlocalizedName()); - GameRegistry.registerBlock(block_smore, block_smore.getUnlocalizedName()); - GameRegistry.registerBlock(block_slag, block_slag.getUnlocalizedName()); - - //Deco Blocks - GameRegistry.registerBlock(deco_titanium, deco_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(deco_red_copper, deco_red_copper.getUnlocalizedName()); - GameRegistry.registerBlock(deco_tungsten, deco_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(deco_aluminium, deco_aluminium.getUnlocalizedName()); - GameRegistry.registerBlock(deco_steel, deco_steel.getUnlocalizedName()); - GameRegistry.registerBlock(deco_lead, deco_lead.getUnlocalizedName()); - GameRegistry.registerBlock(deco_beryllium, deco_beryllium.getUnlocalizedName()); - GameRegistry.registerBlock(deco_asbestos, deco_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(deco_emitter, ItemBlockBase.class, deco_emitter.getUnlocalizedName()); - GameRegistry.registerBlock(part_emitter, ItemBlockBase.class, part_emitter.getUnlocalizedName()); - GameRegistry.registerBlock(deco_loot, deco_loot.getUnlocalizedName()); - GameRegistry.registerBlock(pedestal, pedestal.getUnlocalizedName()); - GameRegistry.registerBlock(bobblehead, ItemBlockMeta.class, bobblehead.getUnlocalizedName()); - GameRegistry.registerBlock(snowglobe, ItemBlockMeta.class, snowglobe.getUnlocalizedName()); - GameRegistry.registerBlock(plushie, ItemBlockBase.class, plushie.getUnlocalizedName()); - GameRegistry.registerBlock(deco_rbmk, deco_rbmk.getUnlocalizedName()); - GameRegistry.registerBlock(deco_rbmk_smooth, deco_rbmk_smooth.getUnlocalizedName()); - - //Gravel - GameRegistry.registerBlock(gravel_obsidian, ItemBlockBlastInfo.class, gravel_obsidian.getUnlocalizedName()); - GameRegistry.registerBlock(gravel_diamond, ItemBlockLore.class, gravel_diamond.getUnlocalizedName()); - - //Lamps - GameRegistry.registerBlock(lamp_tritium_green_off, lamp_tritium_green_off.getUnlocalizedName()); - GameRegistry.registerBlock(lamp_tritium_green_on, lamp_tritium_green_on.getUnlocalizedName()); - GameRegistry.registerBlock(lamp_tritium_blue_off, lamp_tritium_blue_off.getUnlocalizedName()); - GameRegistry.registerBlock(lamp_tritium_blue_on, lamp_tritium_blue_on.getUnlocalizedName()); - GameRegistry.registerBlock(lamp_demon, lamp_demon.getUnlocalizedName()); - GameRegistry.registerBlock(lantern, lantern.getUnlocalizedName()); - GameRegistry.registerBlock(lantern_behemoth, lantern_behemoth.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_incandescent, spotlight_incandescent.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_incandescent_off, spotlight_incandescent_off.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_fluoro, spotlight_fluoro.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_fluoro_off, spotlight_fluoro_off.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_halogen, spotlight_halogen.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_halogen_off, spotlight_halogen_off.getUnlocalizedName()); - GameRegistry.registerBlock(spotlight_beam, spotlight_beam.getUnlocalizedName()); - register(floodlight); - GameRegistry.registerBlock(floodlight_beam, floodlight_beam.getUnlocalizedName()); - - //Reinforced Blocks - GameRegistry.registerBlock(asphalt, ItemBlockBlastInfo.class, asphalt.getUnlocalizedName()); - GameRegistry.registerBlock(asphalt_light, ItemBlockBlastInfo.class, asphalt_light.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_brick, ItemBlockBlastInfo.class, reinforced_brick.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_glass, ItemBlockBlastInfo.class, reinforced_glass.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_glass_pane, ItemBlockBlastInfo.class, reinforced_glass_pane.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_light, ItemBlockBlastInfo.class, reinforced_light.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_sand, ItemBlockBlastInfo.class, reinforced_sand.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_lamp_off, ItemBlockBlastInfo.class, reinforced_lamp_off.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_lamp_on, ItemBlockBlastInfo.class, reinforced_lamp_on.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_laminate, ItemBlockBlastInfo.class, reinforced_laminate.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_laminate_pane,ItemBlockBlastInfo.class, reinforced_laminate_pane.getUnlocalizedName()); - - //Bricks - GameRegistry.registerBlock(reinforced_stone, ItemBlockBlastInfo.class, reinforced_stone.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_ducrete, ItemBlockBlastInfo.class, reinforced_ducrete.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_smooth, ItemBlockBlastInfo.class, concrete_smooth.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_colored, ItemBlockColoredConcrete.class, concrete_colored.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_colored_ext, ItemBlockBlastInfo.class, concrete_colored_ext.getUnlocalizedName()); - GameRegistry.registerBlock(concrete, ItemBlockBlastInfo.class, concrete.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_asbestos, ItemBlockBlastInfo.class, concrete_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_super, ItemBlockBlastInfo.class, concrete_super.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_super_broken, ItemBlockBlastInfo.class, concrete_super_broken.getUnlocalizedName()); - GameRegistry.registerBlock(ducrete_smooth, ItemBlockBlastInfo.class, ducrete_smooth.getUnlocalizedName()); - GameRegistry.registerBlock(ducrete, ItemBlockBlastInfo.class, ducrete.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_pillar, ItemBlockBlastInfo.class, concrete_pillar.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete, ItemBlockBlastInfo.class, brick_concrete.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_mossy, ItemBlockBlastInfo.class, brick_concrete_mossy.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_cracked, ItemBlockBlastInfo.class, brick_concrete_cracked.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_broken, ItemBlockBlastInfo.class, brick_concrete_broken.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_marked, ItemBlockBlastInfo.class, brick_concrete_marked.getUnlocalizedName()); - GameRegistry.registerBlock(brick_ducrete, ItemBlockBlastInfo.class, brick_ducrete.getUnlocalizedName()); - GameRegistry.registerBlock(brick_obsidian, ItemBlockBlastInfo.class, brick_obsidian.getUnlocalizedName()); - GameRegistry.registerBlock(brick_compound, ItemBlockBlastInfo.class, brick_compound.getUnlocalizedName()); - GameRegistry.registerBlock(brick_light, ItemBlockBlastInfo.class, brick_light.getUnlocalizedName()); - GameRegistry.registerBlock(brick_asbestos, brick_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(brick_fire, ItemBlockBlastInfo.class, brick_fire.getUnlocalizedName()); - - GameRegistry.registerBlock(concrete_slab, ItemModSlab.class, concrete_slab.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_double_slab, ItemModSlab.class, concrete_double_slab.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_brick_slab, ItemModSlab.class, concrete_brick_slab.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_brick_double_slab, ItemModSlab.class, concrete_brick_double_slab.getUnlocalizedName()); - GameRegistry.registerBlock(brick_slab, ItemModSlab.class, brick_slab.getUnlocalizedName()); - GameRegistry.registerBlock(brick_double_slab, ItemModSlab.class, brick_double_slab.getUnlocalizedName()); - - GameRegistry.registerBlock(concrete_smooth_stairs, concrete_smooth_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_stairs, concrete_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(concrete_asbestos_stairs, concrete_asbestos_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(ducrete_smooth_stairs, ducrete_smooth_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_stairs, brick_concrete_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_mossy_stairs, brick_concrete_mossy_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_cracked_stairs, brick_concrete_cracked_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_concrete_broken_stairs, brick_concrete_broken_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_ducrete_stairs, brick_ducrete_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_stone_stairs, reinforced_stone_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(reinforced_brick_stairs, reinforced_brick_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_obsidian_stairs, brick_obsidian_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_light_stairs, brick_light_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_compound_stairs, brick_compound_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_asbestos_stairs, brick_asbestos_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(brick_fire_stairs, brick_fire_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(ducrete_stairs, ducrete_stairs.getUnlocalizedName()); - GameRegistry.registerBlock(asphalt_stairs, asphalt_stairs.getUnlocalizedName()); - - //CMB Building Elements - GameRegistry.registerBlock(cmb_brick, ItemBlockBlastInfo.class, cmb_brick.getUnlocalizedName()); - GameRegistry.registerBlock(cmb_brick_reinforced, ItemBlockBlastInfo.class, cmb_brick_reinforced.getUnlocalizedName()); - - //Tiles - GameRegistry.registerBlock(vinyl_tile, ItemBlockBlastInfo.class, vinyl_tile.getUnlocalizedName()); //i would rather die than dip into fucking blocks with subtypes again - - GameRegistry.registerBlock(tile_lab, tile_lab.getUnlocalizedName()); - GameRegistry.registerBlock(tile_lab_cracked, tile_lab_cracked.getUnlocalizedName()); - GameRegistry.registerBlock(tile_lab_broken, tile_lab_broken.getUnlocalizedName()); - - //Other defensive stuff - GameRegistry.registerBlock(barbed_wire, barbed_wire.getUnlocalizedName()); - GameRegistry.registerBlock(barbed_wire_fire, barbed_wire_fire.getUnlocalizedName()); - GameRegistry.registerBlock(barbed_wire_poison, barbed_wire_poison.getUnlocalizedName()); - GameRegistry.registerBlock(barbed_wire_acid, barbed_wire_acid.getUnlocalizedName()); - GameRegistry.registerBlock(barbed_wire_wither, barbed_wire_wither.getUnlocalizedName()); - GameRegistry.registerBlock(barbed_wire_ultradeath, barbed_wire_ultradeath.getUnlocalizedName()); - GameRegistry.registerBlock(spikes, spikes.getUnlocalizedName()); - GameRegistry.registerBlock(tesla, tesla.getUnlocalizedName()); - - //Charger - GameRegistry.registerBlock(charger, charger.getUnlocalizedName()); - //GameRegistry.registerBlock(floodlight, floodlight.getUnlocalizedName()); - - //Decoration Blocks - GameRegistry.registerBlock(block_meteor, block_meteor.getUnlocalizedName()); - GameRegistry.registerBlock(block_meteor_cobble, block_meteor_cobble.getUnlocalizedName()); - GameRegistry.registerBlock(block_meteor_broken, block_meteor_broken.getUnlocalizedName()); - GameRegistry.registerBlock(block_meteor_molten, block_meteor_molten.getUnlocalizedName()); - GameRegistry.registerBlock(block_meteor_treasure, block_meteor_treasure.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_polished, meteor_polished.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_brick, meteor_brick.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_brick_mossy, meteor_brick_mossy.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_brick_cracked, meteor_brick_cracked.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_brick_chiseled, meteor_brick_chiseled.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_pillar, meteor_pillar.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_spawner, meteor_spawner.getUnlocalizedName()); - GameRegistry.registerBlock(meteor_battery, ItemBlockLore.class, meteor_battery.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle, brick_jungle.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_cracked, brick_jungle_cracked.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_fragile, brick_jungle_fragile.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_lava, brick_jungle_lava.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_ooze, brick_jungle_ooze.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_mystic, brick_jungle_mystic.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_trap, ItemTrapBlock.class, brick_jungle_trap.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_glyph, ItemGlyphBlock.class, brick_jungle_glyph.getUnlocalizedName()); - GameRegistry.registerBlock(brick_jungle_circle, brick_jungle_circle.getUnlocalizedName()); - GameRegistry.registerBlock(brick_red, brick_red.getUnlocalizedName()); - register(deco_computer); - register(deco_crt); - register(deco_toaster); - GameRegistry.registerBlock(filing_cabinet, ItemBlockBase.class, filing_cabinet.getUnlocalizedName()); - GameRegistry.registerBlock(tape_recorder, tape_recorder.getUnlocalizedName()); - GameRegistry.registerBlock(steel_poles, steel_poles.getUnlocalizedName()); - GameRegistry.registerBlock(pole_top, pole_top.getUnlocalizedName()); - GameRegistry.registerBlock(pole_satellite_receiver, pole_satellite_receiver.getUnlocalizedName()); - GameRegistry.registerBlock(steel_wall, steel_wall.getUnlocalizedName()); - GameRegistry.registerBlock(steel_corner, steel_corner.getUnlocalizedName()); - GameRegistry.registerBlock(steel_roof, steel_roof.getUnlocalizedName()); - GameRegistry.registerBlock(steel_beam, steel_beam.getUnlocalizedName()); - register(steel_scaffold); - GameRegistry.registerBlock(steel_grate, steel_grate.getUnlocalizedName()); - register(steel_grate_wide); - //register(scaffold_dynamic); - GameRegistry.registerBlock(deco_pipe, ItemBlockBase.class, deco_pipe.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rusted, ItemBlockBase.class, deco_pipe_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_green, ItemBlockBase.class, deco_pipe_green.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_green_rusted, ItemBlockBase.class, deco_pipe_green_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_red, ItemBlockBase.class, deco_pipe_red.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_marked, ItemBlockBase.class, deco_pipe_marked.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim, ItemBlockBase.class, deco_pipe_rim.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim_rusted, ItemBlockBase.class, deco_pipe_rim_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim_green, ItemBlockBase.class, deco_pipe_rim_green.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim_green_rusted, ItemBlockBase.class, deco_pipe_rim_green_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim_red, ItemBlockBase.class, deco_pipe_rim_red.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_rim_marked, ItemBlockBase.class, deco_pipe_rim_marked.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed, ItemBlockBase.class, deco_pipe_framed.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed_rusted, ItemBlockBase.class, deco_pipe_framed_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed_green, ItemBlockBase.class, deco_pipe_framed_green.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed_green_rusted, ItemBlockBase.class, deco_pipe_framed_green_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed_red, ItemBlockBase.class, deco_pipe_framed_red.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_framed_marked, ItemBlockBase.class, deco_pipe_framed_marked.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad, ItemBlockBase.class, deco_pipe_quad.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad_rusted, ItemBlockBase.class, deco_pipe_quad_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad_green, ItemBlockBase.class, deco_pipe_quad_green.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad_green_rusted, ItemBlockBase.class, deco_pipe_quad_green_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad_red, ItemBlockBase.class, deco_pipe_quad_red.getUnlocalizedName()); - GameRegistry.registerBlock(deco_pipe_quad_marked, ItemBlockBase.class, deco_pipe_quad_marked.getUnlocalizedName()); - register(plant_flower); - register(plant_tall); - register(plant_dead); - register(reeds); - GameRegistry.registerBlock(mush, mush.getUnlocalizedName()); - GameRegistry.registerBlock(mush_block, mush_block.getUnlocalizedName()); - GameRegistry.registerBlock(mush_block_stem, mush_block_stem.getUnlocalizedName()); - register(glyphid_base); - register(glyphid_spawner); - GameRegistry.registerBlock(moon_turf, moon_turf.getUnlocalizedName()); - - //Waste - GameRegistry.registerBlock(waste_earth, waste_earth.getUnlocalizedName()); - GameRegistry.registerBlock(waste_mycelium, waste_mycelium.getUnlocalizedName()); - GameRegistry.registerBlock(waste_trinitite, waste_trinitite.getUnlocalizedName()); - GameRegistry.registerBlock(waste_trinitite_red, waste_trinitite_red.getUnlocalizedName()); - GameRegistry.registerBlock(waste_log, waste_log.getUnlocalizedName()); - GameRegistry.registerBlock(waste_leaves, waste_leaves.getUnlocalizedName()); - GameRegistry.registerBlock(waste_planks, waste_planks.getUnlocalizedName()); - GameRegistry.registerBlock(frozen_grass, frozen_grass.getUnlocalizedName()); - GameRegistry.registerBlock(frozen_dirt, frozen_dirt.getUnlocalizedName()); - GameRegistry.registerBlock(frozen_log, frozen_log.getUnlocalizedName()); - GameRegistry.registerBlock(frozen_planks, frozen_planks.getUnlocalizedName()); - GameRegistry.registerBlock(dirt_dead, dirt_dead.getUnlocalizedName()); - GameRegistry.registerBlock(dirt_oily, dirt_oily.getUnlocalizedName()); - GameRegistry.registerBlock(sand_dirty, sand_dirty.getUnlocalizedName()); - GameRegistry.registerBlock(sand_dirty_red, sand_dirty_red.getUnlocalizedName()); - GameRegistry.registerBlock(stone_cracked, stone_cracked.getUnlocalizedName()); - GameRegistry.registerBlock(fallout, fallout.getUnlocalizedName()); - GameRegistry.registerBlock(foam_layer, foam_layer.getUnlocalizedName()); - GameRegistry.registerBlock(sand_boron_layer, sand_boron_layer.getUnlocalizedName()); - GameRegistry.registerBlock(leaves_layer, leaves_layer.getUnlocalizedName()); - GameRegistry.registerBlock(oil_spill, oil_spill.getUnlocalizedName()); - GameRegistry.registerBlock(burning_earth, burning_earth.getUnlocalizedName()); - GameRegistry.registerBlock(tektite, tektite.getUnlocalizedName()); - GameRegistry.registerBlock(ore_tektite_osmiridium, ore_tektite_osmiridium.getUnlocalizedName()); - GameRegistry.registerBlock(impact_dirt, impact_dirt.getUnlocalizedName()); - - //RAD - register(sellafield_slaked); - register(sellafield_bedrock); - register(ore_sellafield_diamond); - register(ore_sellafield_emerald); - register(ore_sellafield_uranium_scorched); - register(ore_sellafield_schrabidium); - register(ore_sellafield_radgem); - GameRegistry.registerBlock(sellafield, ItemBlockNamedMeta.class, sellafield.getUnlocalizedName()); - - //Geysirs - GameRegistry.registerBlock(geysir_water, geysir_water.getUnlocalizedName()); - GameRegistry.registerBlock(geysir_chlorine, geysir_chlorine.getUnlocalizedName()); - GameRegistry.registerBlock(geysir_vapor, geysir_vapor.getUnlocalizedName()); - GameRegistry.registerBlock(geysir_nether, geysir_nether.getUnlocalizedName()); - - //Nukes - GameRegistry.registerBlock(nuke_gadget, nuke_gadget.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_boy, nuke_boy.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_man, nuke_man.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_mike, nuke_mike.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_tsar, nuke_tsar.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_prototype, ItemPrototypeBlock.class, nuke_prototype.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_fleija, nuke_fleija.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_solinium, nuke_solinium.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_n2, nuke_n2.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_fstbmb, nuke_fstbmb.getUnlocalizedName()); - GameRegistry.registerBlock(nuke_custom, nuke_custom.getUnlocalizedName()); - - //Generic Bombs - GameRegistry.registerBlock(bomb_multi, bomb_multi.getUnlocalizedName()); - GameRegistry.registerBlock(crashed_balefire, crashed_balefire.getUnlocalizedName()); - GameRegistry.registerBlock(fireworks, fireworks.getUnlocalizedName()); - GameRegistry.registerBlock(dynamite, dynamite.getUnlocalizedName()); - GameRegistry.registerBlock(tnt, tnt.getUnlocalizedName()); - GameRegistry.registerBlock(semtex, semtex.getUnlocalizedName()); - GameRegistry.registerBlock(c4, c4.getUnlocalizedName()); - register(fissure_bomb); - - //Turrets - GameRegistry.registerBlock(turret_chekhov, turret_chekhov.getUnlocalizedName()); - GameRegistry.registerBlock(turret_friendly, turret_friendly.getUnlocalizedName()); - GameRegistry.registerBlock(turret_jeremy, turret_jeremy.getUnlocalizedName()); - GameRegistry.registerBlock(turret_tauon, turret_tauon.getUnlocalizedName()); - GameRegistry.registerBlock(turret_richard, turret_richard.getUnlocalizedName()); - GameRegistry.registerBlock(turret_howard, turret_howard.getUnlocalizedName()); - GameRegistry.registerBlock(turret_howard_damaged, turret_howard_damaged.getUnlocalizedName()); - GameRegistry.registerBlock(turret_maxwell, turret_maxwell.getUnlocalizedName()); - GameRegistry.registerBlock(turret_fritz, turret_fritz.getUnlocalizedName()); - //GameRegistry.registerBlock(turret_brandon, turret_brandon.getUnlocalizedName()); - GameRegistry.registerBlock(turret_arty, turret_arty.getUnlocalizedName()); - GameRegistry.registerBlock(turret_himars, turret_himars.getUnlocalizedName()); - GameRegistry.registerBlock(turret_sentry, turret_sentry.getUnlocalizedName()); - GameRegistry.registerBlock(turret_sentry_damaged, turret_sentry_damaged.getUnlocalizedName()); - - //Wall-mounted Explosives - GameRegistry.registerBlock(charge_dynamite, ItemBlockBase.class, charge_dynamite.getUnlocalizedName()); - GameRegistry.registerBlock(charge_miner, ItemBlockBase.class, charge_miner.getUnlocalizedName()); - GameRegistry.registerBlock(charge_c4, ItemBlockBase.class, charge_c4.getUnlocalizedName()); - GameRegistry.registerBlock(charge_semtex, ItemBlockBase.class, charge_semtex.getUnlocalizedName()); - - //Mines - GameRegistry.registerBlock(mine_ap, mine_ap.getUnlocalizedName()); - GameRegistry.registerBlock(mine_he, mine_he.getUnlocalizedName()); - GameRegistry.registerBlock(mine_shrap, mine_shrap.getUnlocalizedName()); - GameRegistry.registerBlock(mine_fat, mine_fat.getUnlocalizedName()); - - //Block Bombs - GameRegistry.registerBlock(flame_war, flame_war.getUnlocalizedName()); - GameRegistry.registerBlock(float_bomb, float_bomb.getUnlocalizedName()); - GameRegistry.registerBlock(therm_endo, therm_endo.getUnlocalizedName()); - GameRegistry.registerBlock(therm_exo, therm_exo.getUnlocalizedName()); - GameRegistry.registerBlock(emp_bomb, emp_bomb.getUnlocalizedName()); - GameRegistry.registerBlock(det_cord, det_cord.getUnlocalizedName()); - GameRegistry.registerBlock(det_charge, det_charge.getUnlocalizedName()); - GameRegistry.registerBlock(det_nuke, det_nuke.getUnlocalizedName()); - GameRegistry.registerBlock(det_miner, det_miner.getUnlocalizedName()); - GameRegistry.registerBlock(red_barrel, ItemBlockLore.class, red_barrel.getUnlocalizedName()); - GameRegistry.registerBlock(pink_barrel, ItemBlockLore.class, pink_barrel.getUnlocalizedName()); - GameRegistry.registerBlock(lox_barrel, ItemBlockLore.class, lox_barrel.getUnlocalizedName()); - GameRegistry.registerBlock(taint_barrel, taint_barrel.getUnlocalizedName()); - GameRegistry.registerBlock(yellow_barrel, yellow_barrel.getUnlocalizedName()); - GameRegistry.registerBlock(vitrified_barrel, vitrified_barrel.getUnlocalizedName()); - - //Siren - GameRegistry.registerBlock(machine_siren, machine_siren.getUnlocalizedName()); - - //This Thing - GameRegistry.registerBlock(broadcaster_pc, broadcaster_pc.getUnlocalizedName()); - - //Geiger Counter - GameRegistry.registerBlock(geiger, geiger.getUnlocalizedName()); - - //HEV Battery - GameRegistry.registerBlock(hev_battery, hev_battery.getUnlocalizedName()); - - //Chainlink Fence - GameRegistry.registerBlock(fence_metal, ItemBlockBase.class, fence_metal.getUnlocalizedName()); - - //Sands, Glass - GameRegistry.registerBlock(ash_digamma, ash_digamma.getUnlocalizedName()); - GameRegistry.registerBlock(sand_boron, sand_boron.getUnlocalizedName()); - GameRegistry.registerBlock(sand_lead, sand_lead.getUnlocalizedName()); - GameRegistry.registerBlock(sand_uranium, sand_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(sand_polonium, sand_polonium.getUnlocalizedName()); - GameRegistry.registerBlock(sand_quartz, sand_quartz.getUnlocalizedName()); - GameRegistry.registerBlock(glass_boron, glass_boron.getUnlocalizedName()); - GameRegistry.registerBlock(glass_lead, glass_lead.getUnlocalizedName()); - GameRegistry.registerBlock(glass_uranium, glass_uranium.getUnlocalizedName()); - GameRegistry.registerBlock(glass_trinitite, glass_trinitite.getUnlocalizedName()); - GameRegistry.registerBlock(glass_polonium, glass_polonium.getUnlocalizedName()); - GameRegistry.registerBlock(glass_ash, glass_ash.getUnlocalizedName()); - GameRegistry.registerBlock(glass_quartz, glass_quartz.getUnlocalizedName()); - - //Silo Hatch - GameRegistry.registerBlock(seal_frame, seal_frame.getUnlocalizedName()); - GameRegistry.registerBlock(seal_controller, seal_controller.getUnlocalizedName()); - GameRegistry.registerBlock(seal_hatch, seal_hatch.getUnlocalizedName()); - - //Vault Door - GameRegistry.registerBlock(vault_door, vault_door.getUnlocalizedName()); - GameRegistry.registerBlock(blast_door, blast_door.getUnlocalizedName()); - GameRegistry.registerBlock(fire_door, fire_door.getUnlocalizedName()); - GameRegistry.registerBlock(transition_seal, transition_seal.getUnlocalizedName()); - GameRegistry.registerBlock(silo_hatch, silo_hatch.getUnlocalizedName()); - GameRegistry.registerBlock(silo_hatch_large, silo_hatch_large.getUnlocalizedName()); - GameRegistry.registerBlock(sliding_blast_door, sliding_blast_door.getUnlocalizedName()); - - //Doors - GameRegistry.registerBlock(door_metal, door_metal.getUnlocalizedName()); - GameRegistry.registerBlock(door_office, door_office.getUnlocalizedName()); - GameRegistry.registerBlock(door_bunker, door_bunker.getUnlocalizedName()); - GameRegistry.registerBlock(door_red, door_red.getUnlocalizedName()); - GameRegistry.registerBlock(secure_access_door, secure_access_door.getUnlocalizedName()); - GameRegistry.registerBlock(large_vehicle_door, large_vehicle_door.getUnlocalizedName()); - GameRegistry.registerBlock(qe_containment, qe_containment.getUnlocalizedName()); - GameRegistry.registerBlock(qe_sliding_door, qe_sliding_door.getUnlocalizedName()); - GameRegistry.registerBlock(round_airlock_door, round_airlock_door.getUnlocalizedName()); - GameRegistry.registerBlock(sliding_seal_door, sliding_seal_door.getUnlocalizedName()); - GameRegistry.registerBlock(water_door, water_door.getUnlocalizedName()); - - //Crates - register(crate_iron); - register(crate_steel); - register(crate_desh); - register(crate_tungsten); - register(crate_template); - register(safe); - register(mass_storage); - - //Junk - GameRegistry.registerBlock(boxcar, boxcar.getUnlocalizedName()); - GameRegistry.registerBlock(boat, boat.getUnlocalizedName()); - - //Machines - register(machine_autocrafter); - register(machine_funnel); - - register(anvil_iron); - register(anvil_lead); - register(anvil_steel); - register(anvil_desh); - register(anvil_saturnite); - register(anvil_ferrouranium); - register(anvil_bismuth_bronze); - register(anvil_arsenic_bronze); - register(anvil_schrabidate); - register(anvil_dnt); - register(anvil_osmiridium); - register(anvil_murky); - - GameRegistry.registerBlock(press_preheater, press_preheater.getUnlocalizedName()); - GameRegistry.registerBlock(machine_press, machine_press.getUnlocalizedName()); - GameRegistry.registerBlock(machine_epress, machine_epress.getUnlocalizedName()); - register(machine_conveyor_press); - register(pump_steam); - register(pump_electric); - register(heater_firebox); - register(heater_oven); - register(machine_ashpit); - register(heater_oilburner); - register(heater_electric); - register(heater_heatex); - register(furnace_iron); - register(furnace_steel); - register(furnace_combination); - register(machine_stirling); - register(machine_stirling_steel); - register(machine_stirling_creative); - register(machine_sawmill); - register(machine_crucible); - register(machine_strand_caster); - register(machine_boiler); - register(machine_industrial_boiler); - register(foundry_mold); - register(foundry_basin); - register(foundry_channel); - register(foundry_tank); - register(foundry_outlet); - register(foundry_slagtap); - register(slag); - register(machine_furnace_brick_off); - register(machine_furnace_brick_on); - register(machine_difurnace_off); - register(machine_difurnace_on); - register(machine_difurnace_extension); - GameRegistry.registerBlock(machine_difurnace_rtg_off, machine_difurnace_rtg_off.getUnlocalizedName()); - GameRegistry.registerBlock(machine_difurnace_rtg_on, machine_difurnace_rtg_on.getUnlocalizedName()); - GameRegistry.registerBlock(machine_centrifuge, machine_centrifuge.getUnlocalizedName()); - GameRegistry.registerBlock(machine_gascent, machine_gascent.getUnlocalizedName()); - GameRegistry.registerBlock(machine_fel, machine_fel.getUnlocalizedName()); - GameRegistry.registerBlock(machine_silex, machine_silex.getUnlocalizedName()); - GameRegistry.registerBlock(machine_crystallizer, machine_crystallizer.getUnlocalizedName()); - GameRegistry.registerBlock(machine_uf6_tank, machine_uf6_tank.getUnlocalizedName()); - GameRegistry.registerBlock(machine_puf6_tank, machine_puf6_tank.getUnlocalizedName()); - GameRegistry.registerBlock(machine_reactor_breeding, machine_reactor_breeding.getUnlocalizedName()); - GameRegistry.registerBlock(machine_nuke_furnace_off, machine_nuke_furnace_off.getUnlocalizedName()); - GameRegistry.registerBlock(machine_nuke_furnace_on, machine_nuke_furnace_on.getUnlocalizedName()); - GameRegistry.registerBlock(machine_rtg_furnace_off, machine_rtg_furnace_off.getUnlocalizedName()); - GameRegistry.registerBlock(machine_rtg_furnace_on, machine_rtg_furnace_on.getUnlocalizedName()); - register(machine_wood_burner); - register(machine_diesel); - register(machine_combustion_engine); - GameRegistry.registerBlock(machine_controller, machine_controller.getUnlocalizedName()); - GameRegistry.registerBlock(reactor_research, reactor_research.getUnlocalizedName()); - GameRegistry.registerBlock(reactor_zirnox, reactor_zirnox.getUnlocalizedName()); - GameRegistry.registerBlock(zirnox_destroyed, zirnox_destroyed.getUnlocalizedName()); - GameRegistry.registerBlock(machine_industrial_generator, machine_industrial_generator.getUnlocalizedName()); - GameRegistry.registerBlock(machine_radgen, machine_radgen.getUnlocalizedName()); - GameRegistry.registerBlock(machine_cyclotron, machine_cyclotron.getUnlocalizedName()); - GameRegistry.registerBlock(machine_exposure_chamber, machine_exposure_chamber.getUnlocalizedName()); - GameRegistry.registerBlock(machine_rtg_grey, machine_rtg_grey.getUnlocalizedName()); - GameRegistry.registerBlock(machine_geo, machine_geo.getUnlocalizedName()); - GameRegistry.registerBlock(machine_amgen, machine_amgen.getUnlocalizedName()); - GameRegistry.registerBlock(machine_minirtg, machine_minirtg.getUnlocalizedName()); - GameRegistry.registerBlock(machine_powerrtg, machine_powerrtg.getUnlocalizedName()); - GameRegistry.registerBlock(machine_radiolysis, machine_radiolysis.getUnlocalizedName()); - GameRegistry.registerBlock(machine_hephaestus, machine_hephaestus.getUnlocalizedName()); - GameRegistry.registerBlock(machine_spp_bottom, machine_spp_bottom.getUnlocalizedName()); - GameRegistry.registerBlock(machine_spp_top, machine_spp_top.getUnlocalizedName()); - - GameRegistry.registerBlock(hadron_plating, hadron_plating.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_blue, hadron_plating_blue.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_black, hadron_plating_black.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_yellow, hadron_plating_yellow.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_striped, hadron_plating_striped.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_glass, hadron_plating_glass.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_plating_voltz, hadron_plating_voltz.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_alloy, ItemBlockBase.class, hadron_coil_alloy.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_gold, ItemBlockBase.class, hadron_coil_gold.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_neodymium, ItemBlockBase.class, hadron_coil_neodymium.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_magtung, ItemBlockBase.class, hadron_coil_magtung.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_schrabidium, ItemBlockBase.class, hadron_coil_schrabidium.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_schrabidate, ItemBlockBase.class, hadron_coil_schrabidate.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_starmetal, ItemBlockBase.class, hadron_coil_starmetal.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_chlorophyte, ItemBlockBase.class, hadron_coil_chlorophyte.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_coil_mese, ItemBlockBase.class, hadron_coil_mese.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_power, hadron_power.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_power_10m, hadron_power_10m.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_power_100m, hadron_power_100m.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_power_1g, hadron_power_1g.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_power_10g, hadron_power_10g.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_diode, hadron_diode.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_analysis, hadron_analysis.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_analysis_glass, hadron_analysis_glass.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_access, hadron_access.getUnlocalizedName()); - GameRegistry.registerBlock(hadron_core, hadron_core.getUnlocalizedName()); - register(hadron_cooler); - - GameRegistry.registerBlock(rbmk_rod, rbmk_rod.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_rod_mod, rbmk_rod_mod.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_rod_reasim, rbmk_rod_reasim.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_rod_reasim_mod, rbmk_rod_reasim_mod.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_control, rbmk_control.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_control_mod, rbmk_control_mod.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_control_auto, rbmk_control_auto.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_blank, rbmk_blank.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_boiler, rbmk_boiler.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_reflector, rbmk_reflector.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_absorber, rbmk_absorber.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_moderator, rbmk_moderator.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_outgasser, rbmk_outgasser.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_storage, rbmk_storage.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_cooler, rbmk_cooler.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_heater, rbmk_heater.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_console, rbmk_console.getUnlocalizedName()); - GameRegistry.registerBlock(rbmk_crane_console, rbmk_crane_console.getUnlocalizedName()); - register(rbmk_loader); - register(rbmk_steam_inlet); - register(rbmk_steam_outlet); - GameRegistry.registerBlock(pribris, pribris.getUnlocalizedName()); - GameRegistry.registerBlock(pribris_burning, pribris_burning.getUnlocalizedName()); - GameRegistry.registerBlock(pribris_radiating, pribris_radiating.getUnlocalizedName()); - GameRegistry.registerBlock(pribris_digamma, pribris_digamma.getUnlocalizedName()); - - GameRegistry.registerBlock(red_cable, red_cable.getUnlocalizedName()); - GameRegistry.registerBlock(red_cable_classic, red_cable_classic.getUnlocalizedName()); - GameRegistry.registerBlock(red_cable_paintable, red_cable_paintable.getUnlocalizedName()); - register(red_cable_gauge); - GameRegistry.registerBlock(red_wire_coated, red_wire_coated.getUnlocalizedName()); - GameRegistry.registerBlock(red_connector, ItemBlockBase.class, red_connector.getUnlocalizedName()); - GameRegistry.registerBlock(red_pylon, ItemBlockBase.class, red_pylon.getUnlocalizedName()); - register(red_pylon_medium_wood); - register(red_pylon_medium_wood_transformer); - register(red_pylon_medium_steel); - register(red_pylon_medium_steel_transformer); - GameRegistry.registerBlock(red_pylon_large, ItemBlockBase.class, red_pylon_large.getUnlocalizedName()); - GameRegistry.registerBlock(substation, ItemBlockBase.class, substation.getUnlocalizedName()); - GameRegistry.registerBlock(cable_switch, cable_switch.getUnlocalizedName()); - GameRegistry.registerBlock(cable_detector, cable_detector.getUnlocalizedName()); - GameRegistry.registerBlock(cable_diode, ItemBlockBase.class, cable_diode.getUnlocalizedName()); - GameRegistry.registerBlock(machine_detector, machine_detector.getUnlocalizedName()); - register(fluid_duct_neo); - register(fluid_duct_box); - register(fluid_duct_exhaust); - register(fluid_duct_paintable); - register(fluid_duct_gauge); - register(fluid_valve); - register(fluid_switch); - register(machine_drain); - register(radio_torch_sender); - register(radio_torch_receiver); - register(radio_torch_counter); - register(radio_torch_logic); - register(radio_telex); - - register(crane_extractor); - register(crane_inserter); - register(crane_grabber); - register(crane_router); - register(crane_boxer); - register(crane_unboxer); - register(conveyor); - register(conveyor_express); - register(conveyor_double); - register(conveyor_triple); - register(conveyor_chute); - register(conveyor_lift); - register(crane_splitter); - register(crane_partitioner); - register(drone_waypoint); - register(drone_crate); - register(drone_waypoint_request); - register(drone_dock); - register(drone_crate_provider); - register(drone_crate_requester); - register(fan); - register(piston_inserter); - - GameRegistry.registerBlock(chain, chain.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_sturdy, ladder_sturdy.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_iron, ladder_iron.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_gold, ladder_gold.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_titanium, ladder_titanium.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_copper, ladder_copper.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_tungsten, ladder_tungsten.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_aluminium, ladder_aluminium.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_steel, ladder_steel.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_lead, ladder_lead.getUnlocalizedName()); - GameRegistry.registerBlock(ladder_cobalt, ladder_cobalt.getUnlocalizedName()); - - register(barrel_plastic); - register(barrel_corroded); - register(barrel_iron); - register(barrel_steel); - register(barrel_tcalloy); - register(barrel_antimatter); - register(machine_battery_potato); - register(machine_battery); - register(machine_lithium_battery); - register(machine_schrabidium_battery); - register(machine_dineutronium_battery); - register(machine_fensu); - register(capacitor_bus); - register(capacitor_copper); - register(capacitor_gold); - register(capacitor_niobium); - register(capacitor_tantalium); - register(capacitor_schrabidate); - GameRegistry.registerBlock(machine_transformer, machine_transformer.getUnlocalizedName()); - GameRegistry.registerBlock(machine_transformer_20, machine_transformer_20.getUnlocalizedName()); - GameRegistry.registerBlock(machine_transformer_dnt, machine_transformer_dnt.getUnlocalizedName()); - GameRegistry.registerBlock(machine_transformer_dnt_20, machine_transformer_dnt_20.getUnlocalizedName()); - GameRegistry.registerBlock(machine_converter_he_rf, machine_converter_he_rf.getUnlocalizedName()); - GameRegistry.registerBlock(machine_converter_rf_he, machine_converter_rf_he.getUnlocalizedName()); - GameRegistry.registerBlock(machine_electric_furnace_off, machine_electric_furnace_off.getUnlocalizedName()); - GameRegistry.registerBlock(machine_electric_furnace_on, machine_electric_furnace_on.getUnlocalizedName()); - GameRegistry.registerBlock(machine_arc_furnace_off, machine_arc_furnace_off.getUnlocalizedName()); - GameRegistry.registerBlock(machine_arc_furnace_on, machine_arc_furnace_on.getUnlocalizedName()); - GameRegistry.registerBlock(machine_microwave, machine_microwave.getUnlocalizedName()); - GameRegistry.registerBlock(machine_assembler, machine_assembler.getUnlocalizedName()); - GameRegistry.registerBlock(machine_assemfac, machine_assemfac.getUnlocalizedName()); - GameRegistry.registerBlock(machine_chemplant, machine_chemplant.getUnlocalizedName()); - GameRegistry.registerBlock(machine_chemfac, machine_chemfac.getUnlocalizedName()); - register(machine_arc_welder); - register(machine_soldering_station); - register(machine_arc_furnace); - register(machine_mixer); - register(machine_fluidtank); - register(machine_bat9000); - register(machine_orbus); - GameRegistry.registerBlock(machine_boiler_off, machine_boiler_off.getUnlocalizedName()); - register(machine_steam_engine); - register(machine_turbine); - register(machine_large_turbine); - register(machine_chungus); - GameRegistry.registerBlock(machine_condenser, machine_condenser.getUnlocalizedName()); - GameRegistry.registerBlock(machine_tower_small, machine_tower_small.getUnlocalizedName()); - GameRegistry.registerBlock(machine_tower_large, machine_tower_large.getUnlocalizedName()); - register(machine_condenser_powered); - GameRegistry.registerBlock(machine_deuterium_extractor, machine_deuterium_extractor.getUnlocalizedName()); - GameRegistry.registerBlock(machine_deuterium_tower, machine_deuterium_tower.getUnlocalizedName()); - GameRegistry.registerBlock(machine_liquefactor, ItemBlockBase.class, machine_liquefactor.getUnlocalizedName()); - GameRegistry.registerBlock(machine_solidifier, ItemBlockBase.class, machine_solidifier.getUnlocalizedName()); - register(machine_compressor); - GameRegistry.registerBlock(machine_electrolyser, machine_electrolyser.getUnlocalizedName()); - GameRegistry.registerBlock(machine_waste_drum, machine_waste_drum.getUnlocalizedName()); - GameRegistry.registerBlock(machine_storage_drum, machine_storage_drum.getUnlocalizedName()); - GameRegistry.registerBlock(machine_shredder, machine_shredder.getUnlocalizedName()); - register(machine_well); - register(machine_pumpjack); - register(machine_fracking_tower); - register(machine_flare); - register(chimney_brick); - register(chimney_industrial); - register(machine_refinery); - register(machine_vacuum_distill); - register(machine_fraction_tower); - register(fraction_spacer); - register(machine_catalytic_cracker); - register(machine_catalytic_reformer); - register(machine_hydrotreater); - register(machine_coker); - register(machine_pyrooven); - register(machine_autosaw); - register(machine_excavator); - register(machine_ore_slopper); - register(machine_mining_laser); - register(barricade); - register(machine_turbofan); - register(machine_turbinegas); - register(machine_lpw2); - GameRegistry.registerBlock(machine_schrabidium_transmutator, machine_schrabidium_transmutator.getUnlocalizedName()); - GameRegistry.registerBlock(machine_teleporter, machine_teleporter.getUnlocalizedName()); - GameRegistry.registerBlock(teleanchor, teleanchor.getUnlocalizedName()); - GameRegistry.registerBlock(field_disturber, field_disturber.getUnlocalizedName()); - GameRegistry.registerBlock(machine_satlinker, machine_satlinker.getUnlocalizedName()); - GameRegistry.registerBlock(machine_keyforge, machine_keyforge.getUnlocalizedName()); - GameRegistry.registerBlock(machine_armor_table, machine_armor_table.getUnlocalizedName()); - GameRegistry.registerBlock(machine_forcefield, machine_forcefield.getUnlocalizedName()); - GameRegistry.registerBlock(radiorec, radiorec.getUnlocalizedName()); - GameRegistry.registerBlock(radiobox, radiobox.getUnlocalizedName()); - - //Multiblock Parts - GameRegistry.registerBlock(struct_launcher, struct_launcher.getUnlocalizedName()); - GameRegistry.registerBlock(struct_scaffold, struct_scaffold.getUnlocalizedName()); - GameRegistry.registerBlock(struct_launcher_core, struct_launcher_core.getUnlocalizedName()); - GameRegistry.registerBlock(struct_launcher_core_large, struct_launcher_core_large.getUnlocalizedName()); - GameRegistry.registerBlock(struct_soyuz_core, struct_soyuz_core.getUnlocalizedName()); - GameRegistry.registerBlock(struct_iter_core, struct_iter_core.getUnlocalizedName()); - GameRegistry.registerBlock(struct_plasma_core, struct_plasma_core.getUnlocalizedName()); - GameRegistry.registerBlock(struct_watz_core, struct_watz_core.getUnlocalizedName()); - GameRegistry.registerBlock(struct_icf_core, struct_icf_core.getUnlocalizedName()); - - //Absorbers - GameRegistry.registerBlock(absorber, absorber.getUnlocalizedName()); - GameRegistry.registerBlock(absorber_red, absorber_red.getUnlocalizedName()); - GameRegistry.registerBlock(absorber_green, absorber_green.getUnlocalizedName()); - GameRegistry.registerBlock(absorber_pink, absorber_pink.getUnlocalizedName()); - GameRegistry.registerBlock(decon, decon.getUnlocalizedName()); - GameRegistry.registerBlock(transission_hatch, transission_hatch.getUnlocalizedName()); - - //Solar Tower Blocks - GameRegistry.registerBlock(machine_solar_boiler, machine_solar_boiler.getUnlocalizedName()); - GameRegistry.registerBlock(solar_mirror, solar_mirror.getUnlocalizedName()); - - //Literal fucking garbage - GameRegistry.registerBlock(factory_titanium_hull, factory_titanium_hull.getUnlocalizedName()); - GameRegistry.registerBlock(factory_advanced_hull, factory_advanced_hull.getUnlocalizedName()); - - //CM stuff - register(custom_machine, ItemCustomMachine.class); - register(cm_block); - register(cm_sheet); - register(cm_engine); - register(cm_tank); - register(cm_circuit); - register(cm_port); - register(cm_flux); - register(cm_heat); - register(cm_anchor); - - //PWR - register(pwr_fuel); - register(pwr_control); - register(pwr_channel); - register(pwr_heatex); - register(pwr_heatsink); - register(pwr_neutron_source); - register(pwr_reflector); - register(pwr_casing); - register(pwr_port); - register(pwr_controller); - register(pwr_block); - - //Multiblock Generators - register(fusion_conductor); - GameRegistry.registerBlock(fusion_center, fusion_center.getUnlocalizedName()); - GameRegistry.registerBlock(fusion_motor, fusion_motor.getUnlocalizedName()); - GameRegistry.registerBlock(fusion_heater, fusion_heater.getUnlocalizedName()); - GameRegistry.registerBlock(fusion_hatch, fusion_hatch.getUnlocalizedName()); - GameRegistry.registerBlock(plasma, ItemBlockLore.class, plasma.getUnlocalizedName()); - GameRegistry.registerBlock(iter, iter.getUnlocalizedName()); - GameRegistry.registerBlock(plasma_heater, plasma_heater.getUnlocalizedName()); - - register(watz_element); - register(watz_cooler); - register(watz_end); - register(watz); - register(watz_pump); - - register(machine_icf_press); - register(icf_laser_component); - register(icf_controller); - register(icf_block); - register(icf_component); - register(icf); - - //E - GameRegistry.registerBlock(balefire, balefire.getUnlocalizedName()); - GameRegistry.registerBlock(fire_digamma, fire_digamma.getUnlocalizedName()); - GameRegistry.registerBlock(digamma_matter, digamma_matter.getUnlocalizedName()); - register(volcano_core); - register(volcano_rad_core); - - //Dark Fusion Core - GameRegistry.registerBlock(dfc_emitter, dfc_emitter.getUnlocalizedName()); - GameRegistry.registerBlock(dfc_injector, dfc_injector.getUnlocalizedName()); - GameRegistry.registerBlock(dfc_receiver, dfc_receiver.getUnlocalizedName()); - GameRegistry.registerBlock(dfc_stabilizer, dfc_stabilizer.getUnlocalizedName()); - GameRegistry.registerBlock(dfc_core, dfc_core.getUnlocalizedName()); - - //Missile Blocks - GameRegistry.registerBlock(machine_missile_assembly, machine_missile_assembly.getUnlocalizedName()); - GameRegistry.registerBlock(launch_pad, launch_pad.getUnlocalizedName()); - GameRegistry.registerBlock(launch_pad_rusted, launch_pad_rusted.getUnlocalizedName()); - GameRegistry.registerBlock(launch_pad_large, launch_pad_large.getUnlocalizedName()); - GameRegistry.registerBlock(compact_launcher, compact_launcher.getUnlocalizedName()); - GameRegistry.registerBlock(launch_table, launch_table.getUnlocalizedName()); - GameRegistry.registerBlock(soyuz_launcher, soyuz_launcher.getUnlocalizedName()); - GameRegistry.registerBlock(sat_dock, sat_dock.getUnlocalizedName()); - GameRegistry.registerBlock(soyuz_capsule, soyuz_capsule.getUnlocalizedName()); - GameRegistry.registerBlock(machine_radar, machine_radar.getUnlocalizedName()); - GameRegistry.registerBlock(machine_radar_large, machine_radar_large.getUnlocalizedName()); - GameRegistry.registerBlock(radar_screen, radar_screen.getUnlocalizedName()); - - //Guide - GameRegistry.registerBlock(book_guide, book_guide.getUnlocalizedName()); - - //Sat Blocks - GameRegistry.registerBlock(sat_mapper, sat_mapper.getUnlocalizedName()); - GameRegistry.registerBlock(sat_scanner, sat_scanner.getUnlocalizedName()); - GameRegistry.registerBlock(sat_radar, sat_radar.getUnlocalizedName()); - GameRegistry.registerBlock(sat_laser, sat_laser.getUnlocalizedName()); - GameRegistry.registerBlock(sat_foeq, sat_foeq.getUnlocalizedName()); - GameRegistry.registerBlock(sat_resonator, sat_resonator.getUnlocalizedName()); - - //Rails - GameRegistry.registerBlock(rail_wood, ItemBlockBase.class, rail_wood.getUnlocalizedName()); - GameRegistry.registerBlock(rail_narrow, ItemBlockBase.class, rail_narrow.getUnlocalizedName()); - GameRegistry.registerBlock(rail_highspeed, ItemBlockBase.class, rail_highspeed.getUnlocalizedName()); - GameRegistry.registerBlock(rail_booster, ItemBlockBase.class, rail_booster.getUnlocalizedName()); - register(rail_narrow_straight); - register(rail_narrow_curve); - register(rail_large_straight); - register(rail_large_straight_short); - register(rail_large_curve); - register(rail_large_curve_7); - register(rail_large_curve_9); - register(rail_large_ramp); - register(rail_large_buffer); - register(rail_large_switch); - register(rail_large_switch_flipped); - - //Crate - GameRegistry.registerBlock(crate, crate.getUnlocalizedName()); - GameRegistry.registerBlock(crate_weapon, crate_weapon.getUnlocalizedName()); - GameRegistry.registerBlock(crate_lead, crate_lead.getUnlocalizedName()); - GameRegistry.registerBlock(crate_metal, crate_metal.getUnlocalizedName()); - GameRegistry.registerBlock(crate_red, crate_red.getUnlocalizedName()); - GameRegistry.registerBlock(crate_can, crate_can.getUnlocalizedName()); - GameRegistry.registerBlock(crate_ammo, crate_ammo.getUnlocalizedName()); - GameRegistry.registerBlock(crate_jungle, crate_jungle.getUnlocalizedName()); - - //ElB - GameRegistry.registerBlock(statue_elb, statue_elb.getUnlocalizedName()); - GameRegistry.registerBlock(statue_elb_g, statue_elb_g.getUnlocalizedName()); - GameRegistry.registerBlock(statue_elb_w, statue_elb_w.getUnlocalizedName()); - GameRegistry.registerBlock(statue_elb_f, statue_elb_f.getUnlocalizedName()); - - //Fluids - GameRegistry.registerBlock(mud_block, mud_block.getUnlocalizedName()); - GameRegistry.registerBlock(acid_block, acid_block.getUnlocalizedName()); - GameRegistry.registerBlock(toxic_block, toxic_block.getUnlocalizedName()); - GameRegistry.registerBlock(schrabidic_block, schrabidic_block.getUnlocalizedName()); - GameRegistry.registerBlock(corium_block, corium_block.getUnlocalizedName()); - GameRegistry.registerBlock(volcanic_lava_block, volcanic_lava_block.getUnlocalizedName()); - GameRegistry.registerBlock(rad_lava_block, rad_lava_block.getUnlocalizedName()); - GameRegistry.registerBlock(sulfuric_acid_block, sulfuric_acid_block.getUnlocalizedName()); - //GameRegistry.registerBlock(concrete_liquid, concrete_liquid.getUnlocalizedName()); - - //Multiblock Dummy Blocks - GameRegistry.registerBlock(dummy_block_vault, dummy_block_vault.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_block_blast, dummy_block_blast.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_block_uf6, dummy_block_uf6.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_block_puf6, dummy_block_puf6.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_plate_compact_launcher, dummy_plate_compact_launcher.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_port_compact_launcher, dummy_port_compact_launcher.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_plate_launch_table, dummy_plate_launch_table.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_port_launch_table, dummy_port_launch_table.getUnlocalizedName()); - GameRegistry.registerBlock(dummy_plate_cargo, dummy_plate_cargo.getUnlocalizedName()); - - //Other Technical Blocks - GameRegistry.registerBlock(oil_pipe, oil_pipe.getUnlocalizedName()); - GameRegistry.registerBlock(vent_chlorine, vent_chlorine.getUnlocalizedName()); - GameRegistry.registerBlock(vent_cloud, vent_cloud.getUnlocalizedName()); - GameRegistry.registerBlock(vent_pink_cloud, vent_pink_cloud.getUnlocalizedName()); - GameRegistry.registerBlock(vent_chlorine_seal, vent_chlorine_seal.getUnlocalizedName()); - GameRegistry.registerBlock(chlorine_gas, chlorine_gas.getUnlocalizedName()); - GameRegistry.registerBlock(gas_radon, gas_radon.getUnlocalizedName()); - GameRegistry.registerBlock(gas_radon_dense, gas_radon_dense.getUnlocalizedName()); - GameRegistry.registerBlock(gas_radon_tomb, gas_radon_tomb.getUnlocalizedName()); - GameRegistry.registerBlock(gas_meltdown, gas_meltdown.getUnlocalizedName()); - GameRegistry.registerBlock(gas_monoxide, gas_monoxide.getUnlocalizedName()); - GameRegistry.registerBlock(gas_asbestos, gas_asbestos.getUnlocalizedName()); - GameRegistry.registerBlock(gas_coal, gas_coal.getUnlocalizedName()); - GameRegistry.registerBlock(gas_flammable, gas_flammable.getUnlocalizedName()); - GameRegistry.registerBlock(gas_explosive, gas_explosive.getUnlocalizedName()); - GameRegistry.registerBlock(vacuum, vacuum.getUnlocalizedName()); - - //??? - GameRegistry.registerBlock(crystal_virus, crystal_virus.getUnlocalizedName()); - GameRegistry.registerBlock(crystal_hardened, crystal_hardened.getUnlocalizedName()); - GameRegistry.registerBlock(crystal_pulsar, crystal_pulsar.getUnlocalizedName()); - GameRegistry.registerBlock(taint, ItemTaintBlock.class, taint.getUnlocalizedName()); - GameRegistry.registerBlock(cheater_virus, cheater_virus.getUnlocalizedName()); - GameRegistry.registerBlock(cheater_virus_seed, cheater_virus_seed.getUnlocalizedName()); - GameRegistry.registerBlock(ntm_dirt, ntm_dirt.getUnlocalizedName()); - GameRegistry.registerBlock(pink_log, pink_log.getUnlocalizedName()); - GameRegistry.registerBlock(pink_planks, pink_planks.getUnlocalizedName()); - GameRegistry.registerBlock(pink_slab, pink_slab.getUnlocalizedName()); - GameRegistry.registerBlock(pink_double_slab, pink_double_slab.getUnlocalizedName()); - GameRegistry.registerBlock(pink_stairs, pink_stairs.getUnlocalizedName()); - } - - private static void register(Block b) { - GameRegistry.registerBlock(b, ItemBlockBase.class, b.getUnlocalizedName()); - } - - private static void register(Block b, Class clazz) { - GameRegistry.registerBlock(b, clazz, b.getUnlocalizedName()); - } - - public static void addRemap(String unloc, Block block, int meta) { - Block remap = new BlockRemap(block, meta).setBlockName(unloc); - register(remap, ItemBlockRemap.class); - } - - // Pretty much the default getDrops function but with no damage set on the item (fucks with recipes) - // but setting the meta via damageDropped breaks creative middle-click and any WAILA-like overlays - public static ArrayList getDropsWithoutDamage(World world, Block block, int metadata, int fortune) { - ArrayList ret = new ArrayList(); - - int count = block.quantityDropped(metadata, fortune, world.rand); - for(int i = 0; i < count; i++) { - Item item = block.getItemDropped(metadata, world.rand, fortune); - if(item != null) { - ret.add(new ItemStack(item, 1, 0)); - } - } - - return ret; - } -} +package com.hbm.blocks; + +import java.util.ArrayList; + +import com.hbm.blocks.BlockEnums.*; +import com.hbm.blocks.bomb.*; +import com.hbm.blocks.fluid.*; +import com.hbm.blocks.gas.*; +import com.hbm.blocks.generic.*; +import com.hbm.blocks.generic.BlockHazard.ExtDisplayEffect; +import com.hbm.blocks.generic.BlockMotherOfAllOres.ItemRandomOreBlock; +import com.hbm.blocks.machine.*; +import com.hbm.blocks.machine.pile.*; +import com.hbm.blocks.machine.rbmk.*; +import com.hbm.blocks.network.*; +import com.hbm.blocks.rail.*; +import com.hbm.blocks.test.*; +import com.hbm.blocks.turret.*; +import com.hbm.items.block.*; +import com.hbm.items.bomb.ItemPrototypeBlock; +import com.hbm.items.special.ItemOreBlock; +import com.hbm.lib.ModDamageSource; +import com.hbm.lib.RefStrings; +import com.hbm.main.MainRegistry; +import com.hbm.tileentity.DoorDecl; +import com.hbm.tileentity.machine.storage.TileEntityFileCabinet; +import cpw.mods.fml.common.registry.GameRegistry; +import net.minecraft.block.Block; +import net.minecraft.block.BlockFalling; +import net.minecraft.block.material.MapColor; +import net.minecraft.block.material.Material; +import net.minecraft.block.material.MaterialLiquid; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.item.Item; +import net.minecraft.item.ItemBlock; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import net.minecraftforge.fluids.Fluid; +import net.minecraftforge.fluids.FluidRegistry; + +public class ModBlocks { + + public static void mainRegistry() + { + initializeBlock(); + registerBlock(); + } + + public static Block event_tester; + public static Block obj_tester; + public static Block test_core; + public static Block test_charge; + public static Block structure_anchor; + + public static Block ore_uranium; + public static Block ore_uranium_scorched; + public static Block ore_titanium; + public static Block ore_sulfur; + public static Block ore_thorium; + public static Block ore_niter; + public static Block ore_copper; + public static Block ore_tungsten; + public static Block ore_aluminium; + public static Block ore_fluorite; + public static Block ore_lead; + public static Block ore_schrabidium; + public static Block ore_beryllium; + public static Block ore_australium; + public static Block ore_rare; + public static Block ore_cobalt; + public static Block ore_cinnebar; + public static Block ore_coltan; + public static Block ore_alexandrite; + + public static Block ore_random; + public static Block ore_bedrock; + public static Block ore_volcano; + + public static Block ore_nether_coal; + public static Block ore_nether_smoldering; + public static Block ore_nether_uranium; + public static Block ore_nether_uranium_scorched; + public static Block ore_nether_plutonium; + public static Block ore_nether_tungsten; + public static Block ore_nether_sulfur; + public static Block ore_nether_fire; + public static Block ore_nether_cobalt; + public static Block ore_nether_schrabidium; + + public static Block ore_meteor; + + public static Block stone_gneiss; + public static Block ore_gneiss_iron; + public static Block ore_gneiss_gold; + public static Block ore_gneiss_uranium; + public static Block ore_gneiss_uranium_scorched; + public static Block ore_gneiss_copper; + public static Block ore_gneiss_asbestos; + public static Block ore_gneiss_lithium; + public static Block ore_gneiss_schrabidium; + public static Block ore_gneiss_rare; + public static Block ore_gneiss_gas; + + public static Block gneiss_brick; + public static Block gneiss_tile; + public static Block gneiss_chiseled; + + public static Block stone_depth; + public static Block ore_depth_cinnebar; + public static Block ore_depth_zirconium; + public static Block ore_depth_borax; + public static Block cluster_depth_iron; + public static Block cluster_depth_titanium; + public static Block cluster_depth_tungsten; + + public static Block stone_keyhole; + + public static Block stone_depth_nether; + public static Block ore_depth_nether_neodymium; + + public static Block stone_porous; + public static Block stone_resource; + public static Block stalagmite; + public static Block stalactite; + public static Block stone_biome; + + public static Block depth_brick; + public static Block depth_tiles; + public static Block depth_nether_brick; + public static Block depth_nether_tiles; + public static Block depth_dnt; + + public static Block basalt; + public static Block ore_basalt; + public static Block basalt_smooth; + public static Block basalt_brick; + public static Block basalt_polished; + public static Block basalt_tiles; + + public static Block cluster_iron; + public static Block cluster_titanium; + public static Block cluster_aluminium; + public static Block cluster_copper; + + public static Block ore_oil; + public static Block ore_oil_empty; + public static Block ore_oil_sand; + public static Block ore_bedrock_oil; + public static Block ore_lignite; + public static Block ore_asbestos; + public static Block ore_coal_oil; + public static Block ore_coal_oil_burning; + + public static Block ore_tikite; + + public static Block block_thorium; + public static Block block_thorium_fuel; + public static Block block_uranium; + public static Block block_u233; + public static Block block_u235; + public static Block block_u238; + public static Block block_uranium_fuel; + public static Block block_neptunium; + public static Block block_polonium; + public static Block block_mox_fuel; + public static Block block_plutonium; + public static Block block_pu238; + public static Block block_pu239; + public static Block block_pu240; + public static Block block_pu_mix; + public static Block block_plutonium_fuel; + public static Block block_titanium; + public static Block block_sulfur; + public static Block block_niter; + public static Block block_copper; + public static Block block_red_copper; + public static Block block_tungsten; + public static Block block_aluminium; + public static Block block_fluorite; + public static Block block_steel; + public static Block block_tcalloy; + public static Block block_cdalloy; + public static Block block_lead; + public static Block block_bismuth; + public static Block block_cadmium; + public static Block block_coltan; + public static Block block_tantalium; + public static Block block_niobium; + public static Block block_trinitite; + public static Block block_waste; + public static Block block_waste_painted; + public static Block block_waste_vitrified; + public static Block ancient_scrap; + public static Block block_corium; + public static Block block_corium_cobble; + public static Block block_scrap; + public static Block block_electrical_scrap; + public static Block block_beryllium; + public static Block block_schraranium; + public static Block block_schrabidium; + public static Block block_schrabidate; + public static Block block_solinium; + public static Block block_schrabidium_fuel; + public static Block block_euphemium; + public static Block block_schrabidium_cluster; + public static Block block_euphemium_cluster; + public static Block block_dineutronium; + public static Block block_advanced_alloy; + public static Block block_magnetized_tungsten; + public static Block block_combine_steel; + public static Block block_desh; + public static Block block_dura_steel; + public static Block block_starmetal; + public static Block block_polymer; + public static Block block_bakelite; + public static Block block_rubber; + public static Block block_yellowcake; + public static Block block_insulator; + public static Block block_fiberglass; + public static Block block_asbestos; + public static Block block_cobalt; + public static Block block_lithium; + public static Block block_zirconium; + public static Block block_white_phosphorus; + public static Block block_red_phosphorus; + public static Block block_fallout; + public static Block block_foam; + public static Block block_coke; + public static Block block_graphite; + public static Block block_graphite_drilled; + public static Block block_graphite_fuel; + public static Block block_graphite_plutonium; + public static Block block_graphite_rod; + public static Block block_graphite_source; + public static Block block_graphite_lithium; + public static Block block_graphite_tritium; + public static Block block_graphite_detector; + public static Block block_boron; + public static Block block_lanthanium; + public static Block block_ra226; + public static Block block_actinium; + public static Block block_tritium; + public static Block block_semtex; + public static Block block_c4; + public static Block block_smore; + public static Block block_slag; + + public static Block block_australium; + public static Block block_weidanium; + public static Block block_reiium; + public static Block block_unobtainium; + public static Block block_daffergon; + public static Block block_verticium; + + public static Block block_cap; + + public static Block deco_titanium; + public static Block deco_red_copper; + public static Block deco_tungsten; + public static Block deco_aluminium; + public static Block deco_steel; + public static Block deco_lead; + public static Block deco_beryllium; + public static Block deco_asbestos; + public static Block deco_rbmk; + public static Block deco_rbmk_smooth; + + public static Block deco_emitter; + public static Block part_emitter; + public static Block deco_loot; + public static Block pedestal; + public static Block bobblehead; + public static Block snowglobe; + public static Block plushie; + + public static Block gravel_obsidian; + public static Block gravel_diamond; + public static Block asphalt; + public static Block asphalt_light; + + public static Block reinforced_brick; + public static Block reinforced_ducrete; + public static Block reinforced_glass; + public static Block reinforced_glass_pane; + public static Block reinforced_light; + public static Block reinforced_sand; + public static Block reinforced_lamp_off; + public static Block reinforced_lamp_on; + public static Block reinforced_laminate; + public static Block reinforced_laminate_pane; + + public static Block lamp_tritium_green_off; + public static Block lamp_tritium_green_on; + public static Block lamp_tritium_blue_off; + public static Block lamp_tritium_blue_on; + + public static Block lamp_demon; + + public static Block lantern; + public static Block lantern_behemoth; + + public static Block spotlight_incandescent; + public static Block spotlight_incandescent_off; + public static Block spotlight_fluoro; + public static Block spotlight_fluoro_off; + public static Block spotlight_halogen; + public static Block spotlight_halogen_off; + public static Block spotlight_beam; + public static Block floodlight; + public static Block floodlight_beam; + + public static Block reinforced_stone; + public static Block concrete_smooth; + public static Block concrete_colored; + public static Block concrete_colored_ext; + public static Block concrete; + public static Block concrete_asbestos; + public static Block concrete_super; + public static Block concrete_super_broken; + public static Block ducrete_smooth; + public static Block ducrete; + public static Block concrete_pillar; + public static Block brick_concrete; + public static Block brick_concrete_mossy; + public static Block brick_concrete_cracked; + public static Block brick_concrete_broken; + public static Block brick_concrete_marked; + public static Block brick_ducrete; + public static Block brick_obsidian; + public static Block brick_light; + public static Block brick_compound; + public static Block brick_asbestos; + public static Block brick_fire; + + public static Block concrete_slab; + public static Block concrete_double_slab; + public static Block concrete_brick_slab; + public static Block concrete_brick_double_slab; + public static Block brick_slab; + public static Block brick_double_slab; + + public static Block concrete_smooth_stairs; + public static Block concrete_stairs; + public static Block concrete_asbestos_stairs; + public static Block ducrete_smooth_stairs; + public static Block ducrete_stairs; + public static Block brick_concrete_stairs; + public static Block brick_concrete_mossy_stairs; + public static Block brick_concrete_cracked_stairs; + public static Block brick_concrete_broken_stairs; + public static Block brick_ducrete_stairs; + public static Block reinforced_stone_stairs; + public static Block reinforced_brick_stairs; + public static Block brick_obsidian_stairs; + public static Block brick_light_stairs; + public static Block brick_compound_stairs; + public static Block brick_asbestos_stairs; + public static Block brick_fire_stairs; + public static Block asphalt_stairs; + + public static Block cmb_brick; + public static Block cmb_brick_reinforced; + + public static Block vinyl_tile; + + public static Block tile_lab; + public static Block tile_lab_cracked; + public static Block tile_lab_broken; + + public static Block block_meteor; + public static Block block_meteor_cobble; + public static Block block_meteor_broken; + public static Block block_meteor_molten; + public static Block block_meteor_treasure; + public static Block meteor_polished; + public static Block meteor_brick; + public static Block meteor_brick_mossy; + public static Block meteor_brick_cracked; + public static Block meteor_brick_chiseled; + public static Block meteor_pillar; + public static Block meteor_spawner; + public static Block meteor_battery; + + public static Block moon_turf; + + public static Block brick_jungle; + public static Block brick_jungle_cracked; + public static Block brick_jungle_fragile; + public static Block brick_jungle_lava; + public static Block brick_jungle_ooze; + public static Block brick_jungle_mystic; + public static Block brick_jungle_trap; + public static Block brick_jungle_glyph; + public static Block brick_jungle_circle; + + public static Block brick_red; + + public static Block deco_computer; + public static Block deco_crt; + public static Block deco_toaster; + + public static Block filing_cabinet; + + public static Block tape_recorder; + public static Block steel_poles; + public static Block pole_top; + public static Block pole_satellite_receiver; + public static Block steel_wall; + public static Block steel_corner; + public static Block steel_roof; + public static Block steel_beam; + public static Block steel_scaffold; + public static Block steel_grate; + public static Block steel_grate_wide; + public static Block scaffold_dynamic; + + public static Block deco_pipe; + public static Block deco_pipe_rusted; + public static Block deco_pipe_green; + public static Block deco_pipe_green_rusted; + public static Block deco_pipe_red; + public static Block deco_pipe_marked; + public static Block deco_pipe_rim; + public static Block deco_pipe_rim_rusted; + public static Block deco_pipe_rim_green; + public static Block deco_pipe_rim_green_rusted; + public static Block deco_pipe_rim_red; + public static Block deco_pipe_rim_marked; + public static Block deco_pipe_framed; + public static Block deco_pipe_framed_rusted; + public static Block deco_pipe_framed_green; + public static Block deco_pipe_framed_green_rusted; + public static Block deco_pipe_framed_red; + public static Block deco_pipe_framed_marked; + public static Block deco_pipe_quad; + public static Block deco_pipe_quad_rusted; + public static Block deco_pipe_quad_green; + public static Block deco_pipe_quad_green_rusted; + public static Block deco_pipe_quad_red; + public static Block deco_pipe_quad_marked; + + public static Block broadcaster_pc; + public static Block geiger; + public static Block hev_battery; + + public static Block fence_metal; + + public static Block sand_boron; + public static Block sand_lead; + public static Block sand_uranium; + public static Block sand_polonium; + public static Block sand_quartz; + public static Block ash_digamma; + public static Block glass_boron; + public static Block glass_lead; + public static Block glass_uranium; + public static Block glass_trinitite; + public static Block glass_polonium; + public static Block glass_ash; + public static Block glass_quartz; + + public static Block mush; + public static Block mush_block; + public static Block mush_block_stem; + + public static Block glyphid_base; + public static Block glyphid_spawner; + + public static Block plant_flower; + public static Block plant_tall; + public static Block plant_dead; + public static Block reeds; + + public static Block waste_earth; + public static Block waste_mycelium; + public static Block waste_trinitite; + public static Block waste_trinitite_red; + public static Block waste_log; + public static Block waste_leaves; + public static Block waste_planks; + public static Block frozen_dirt; + public static Block frozen_grass; + public static Block frozen_log; + public static Block frozen_planks; + public static Block dirt_dead; + public static Block dirt_oily; + public static Block sand_dirty; + public static Block sand_dirty_red; + public static Block stone_cracked; + public static Block burning_earth; + public static Block tektite; + public static Block ore_tektite_osmiridium; + public static Block impact_dirt; + + public static Block fallout; + public static Block foam_layer; + public static Block sand_boron_layer; + public static Block leaves_layer; + public static Block oil_spill; + + public static Block sellafield_slaked; + public static Block sellafield_bedrock; + public static Block sellafield; + public static Block ore_sellafield_diamond; + public static Block ore_sellafield_emerald; + public static Block ore_sellafield_uranium_scorched; + public static Block ore_sellafield_schrabidium; + public static Block ore_sellafield_radgem; + + public static Block geysir_water; + public static Block geysir_chlorine; + public static Block geysir_vapor; + public static Block geysir_nether; + + public static Block flame_war; + public static Block float_bomb; + public static Block therm_endo; + public static Block therm_exo; + public static Block emp_bomb; + public static Block det_cord; + public static Block det_charge; + public static Block det_nuke; + public static Block det_miner; + public static Block red_barrel; + public static Block pink_barrel; + public static Block yellow_barrel; + public static Block vitrified_barrel; + public static Block lox_barrel; + public static Block taint_barrel; + public static Block crashed_balefire; + public static Block fireworks; + public static Block dynamite; + public static Block tnt; + public static Block semtex; + public static Block c4; + public static Block fissure_bomb; + + public static Block charge_dynamite; + public static Block charge_miner; + public static Block charge_c4; + public static Block charge_semtex; + + public static Block mine_ap; + public static Block mine_he; + public static Block mine_shrap; + public static Block mine_fat; + + public static Block crate; + public static Block crate_weapon; + public static Block crate_lead; + public static Block crate_metal; + public static Block crate_red; + public static Block crate_can; + public static Block crate_ammo; + public static Block crate_jungle; + + public static Block boxcar; + public static Block boat; + + public static Block seal_frame; + public static Block seal_controller; + public static Block seal_hatch; + + public static Block vault_door; + public static Block blast_door; + public static Block sliding_blast_door; + public static Block fire_door; + public static Block transition_seal; + public static Block silo_hatch; + public static Block silo_hatch_large; + + // 1.12.2 Doors + public static Block secure_access_door; + public static Block large_vehicle_door; + public static Block qe_containment; + public static Block qe_sliding_door; + public static Block round_airlock_door; + public static Block sliding_seal_door; + public static Block water_door; + + public static Block door_metal; + public static Block door_office; + public static Block door_bunker; + public static Block door_red; + + public static Block barbed_wire; + public static Block barbed_wire_fire; + public static Block barbed_wire_poison; + public static Block barbed_wire_acid; + public static Block barbed_wire_wither; + public static Block barbed_wire_ultradeath; + public static Block spikes; + + public static Block charger; + + public static Block tesla; + + public static Block sat_mapper; + public static Block sat_scanner; + public static Block sat_radar; + public static Block sat_laser; + public static Block sat_foeq; + public static Block sat_resonator; + + public static Block sat_dock; + + public static Block soyuz_capsule; + + public static Block crate_iron; + public static Block crate_steel; + public static Block crate_desh; + public static Block crate_tungsten; + public static Block crate_template; + public static Block safe; + public static Block mass_storage; + + public static Block nuke_gadget; + public static Block nuke_boy; + public static Block nuke_man; + public static Block nuke_mike; + public static Block nuke_tsar; + public static Block nuke_fleija; + public static Block nuke_prototype; + public static Block nuke_custom; + public static Block nuke_solinium; + public static Block nuke_n2; + public static Block nuke_fstbmb; + public static Block bomb_multi; + + public static Block pump_steam; + public static Block pump_electric; + + public static Block heater_firebox; + public static Block heater_oven; + public static Block heater_oilburner; + public static Block heater_electric; + public static Block heater_heatex; + public static Block machine_ashpit; + + public static Block furnace_iron; + public static Block furnace_steel; + public static Block furnace_combination; + public static Block machine_stirling; + public static Block machine_stirling_steel; + public static Block machine_stirling_creative; + public static Block machine_sawmill; + public static Block machine_crucible; + public static Block machine_boiler; + public static Block machine_industrial_boiler; + + public static Block foundry_mold; + public static Block foundry_basin; + public static Block foundry_channel; + public static Block foundry_tank; + public static Block foundry_outlet; + public static Block machine_strand_caster; + public static Block foundry_slagtap; + public static Block slag; + + public static Block machine_difurnace_off; + public static Block machine_difurnace_on; + public static Block machine_difurnace_extension; + public static Block machine_difurnace_rtg_off; + public static Block machine_difurnace_rtg_on; + //public static final int guiID_test_difurnace = 1; historical + + public static Block machine_centrifuge; + public static Block machine_gascent; + + public static Block machine_fel; + public static Block machine_silex; + + public static Block machine_crystallizer; + + public static Block machine_uf6_tank; + + public static Block machine_puf6_tank; + + public static Block machine_reactor_breeding; + + public static Block machine_furnace_brick_off; + public static Block machine_furnace_brick_on; + public static Block machine_nuke_furnace_off; + public static Block machine_nuke_furnace_on; + public static Block machine_rtg_furnace_off; + public static Block machine_rtg_furnace_on; + + public static Block machine_industrial_generator; + + public static Block machine_cyclotron; + public static Block machine_exposure_chamber; + + public static Block hadron_plating; + public static Block hadron_plating_blue; + public static Block hadron_plating_black; + public static Block hadron_plating_yellow; + public static Block hadron_plating_striped; + public static Block hadron_plating_voltz; + public static Block hadron_plating_glass; + public static Block hadron_coil_alloy; + public static Block hadron_coil_gold; + public static Block hadron_coil_neodymium; + public static Block hadron_coil_magtung; + public static Block hadron_coil_schrabidium; + public static Block hadron_coil_schrabidate; + public static Block hadron_coil_starmetal; + public static Block hadron_coil_chlorophyte; + public static Block hadron_coil_mese; + public static Block hadron_power; + public static Block hadron_power_10m; + public static Block hadron_power_100m; + public static Block hadron_power_1g; + public static Block hadron_power_10g; + public static Block hadron_diode; + public static Block hadron_analysis; + public static Block hadron_analysis_glass; + public static Block hadron_access; + public static Block hadron_core; + public static Block hadron_cooler; + + public static Block machine_electric_furnace_off; + public static Block machine_electric_furnace_on; + + public static Block machine_microwave; + + public static Block machine_arc_furnace_off; + public static Block machine_arc_furnace_on; + + //public static Block machine_deuterium; + + public static Block machine_battery_potato; + public static Block machine_battery; + public static Block machine_lithium_battery; + public static Block machine_schrabidium_battery; + public static Block machine_dineutronium_battery; + public static Block machine_fensu; + public static final int guiID_machine_fensu = 99; + + public static Block capacitor_bus; + public static Block capacitor_copper; + public static Block capacitor_gold; + public static Block capacitor_niobium; + public static Block capacitor_tantalium; + public static Block capacitor_schrabidate; + + public static Block machine_wood_burner; + + public static Block red_wire_coated; + public static Block red_cable; + public static Block red_cable_classic; + public static Block red_cable_paintable; + public static Block red_cable_gauge; + public static Block red_connector; + public static Block red_pylon; + public static Block red_pylon_medium_wood; + public static Block red_pylon_medium_wood_transformer; + public static Block red_pylon_medium_steel; + public static Block red_pylon_medium_steel_transformer; + public static Block red_pylon_large; + public static Block substation; + public static Block cable_switch; + public static Block cable_detector; + public static Block cable_diode; + public static Block machine_detector; + public static Block fluid_duct_neo; + public static Block fluid_duct_box; + public static Block fluid_duct_paintable; + public static Block fluid_duct_gauge; + public static Block fluid_duct_exhaust; + public static Block fluid_valve; + public static Block fluid_switch; + public static Block machine_drain; + public static Block radio_torch_sender; + public static Block radio_torch_receiver; + public static Block radio_torch_counter; + public static Block radio_torch_logic; + public static Block radio_telex; + + public static Block conveyor; + public static Block conveyor_express; + //public static Block conveyor_classic; + public static Block conveyor_double; + public static Block conveyor_triple; + public static Block conveyor_chute; + public static Block conveyor_lift; + public static Block crane_extractor; + public static Block crane_inserter; + public static Block crane_grabber; + public static Block crane_router; + public static Block crane_boxer; + public static Block crane_unboxer; + public static Block crane_splitter; + public static Block crane_partitioner; + + public static Block drone_waypoint; + public static Block drone_crate; + public static Block drone_waypoint_request; + public static Block drone_dock; + public static Block drone_crate_provider; + public static Block drone_crate_requester; + + public static Block fan; + + public static Block piston_inserter; + + public static Block chain; + + public static Block ladder_sturdy; + public static Block ladder_iron; + public static Block ladder_gold; + public static Block ladder_aluminium; + public static Block ladder_copper; + public static Block ladder_titanium; + public static Block ladder_lead; + public static Block ladder_cobalt; + public static Block ladder_steel; + public static Block ladder_tungsten; + + public static Block barrel_plastic; + public static Block barrel_corroded; + public static Block barrel_iron; + public static Block barrel_steel; + public static Block barrel_tcalloy; + public static Block barrel_antimatter; + + public static Block machine_transformer; + public static Block machine_transformer_20; + public static Block machine_transformer_dnt; + public static Block machine_transformer_dnt_20; + + public static Block bomb_multi_large; + public static final int guiID_bomb_multi_large = 18; + + public static Block machine_solar_boiler; + public static final int guiID_solar_boiler = 18; + public static Block solar_mirror; + + public static Block struct_launcher; + public static Block struct_scaffold; + public static Block struct_launcher_core; + public static Block struct_launcher_core_large; + public static Block struct_soyuz_core; + public static Block struct_iter_core; + public static Block struct_plasma_core; + public static Block struct_watz_core; + public static Block struct_icf_core; + + public static Block factory_titanium_hull; + @Deprecated public static Block factory_titanium_furnace; + @Deprecated public static Block factory_titanium_conductor; + + public static Block factory_advanced_hull; + @Deprecated public static Block factory_advanced_furnace; + @Deprecated public static Block factory_advanced_conductor; + + public static Block cm_block; + public static Block cm_sheet; + public static Block cm_engine; + public static Block cm_tank; + public static Block cm_circuit; + public static Block cm_port; + public static Block cm_flux; + public static Block cm_heat; + public static Block custom_machine; + public static Block cm_anchor; + + public static Block pwr_fuel; + public static Block pwr_control; + public static Block pwr_channel; + public static Block pwr_heatex; + public static Block pwr_heatsink; + public static Block pwr_neutron_source; + public static Block pwr_reflector; + public static Block pwr_casing; + public static Block pwr_port; + public static Block pwr_controller; + public static Block pwr_block; + + public static Block fusion_conductor; + public static Block fusion_center; + public static Block fusion_motor; + public static Block fusion_heater; + public static Block fusion_hatch; + public static Block plasma; + + public static Block iter; + public static Block plasma_heater; + + public static Block machine_icf_press; + public static Block icf_component; + public static Block icf; + public static Block icf_controller; + public static Block icf_laser_component; + public static Block icf_block; + + public static Block watz; + public static Block watz_pump; + + public static Block watz_element; + public static Block watz_cooler; + public static Block watz_end; + + public static Block balefire; + public static Block fire_digamma; + public static Block digamma_matter; + + public static Block dfc_emitter; + public static Block dfc_injector; + public static Block dfc_receiver; + public static Block dfc_stabilizer; + public static Block dfc_core; + + public static Block machine_converter_he_rf; + public static Block machine_converter_rf_he; + + public static Block machine_schrabidium_transmutator; + + public static Block machine_diesel; + public static Block machine_combustion_engine; + + public static Block machine_shredder; + + public static Block machine_teleporter; + public static Block teleanchor; + public static Block field_disturber; + + public static Block machine_rtg_grey; + public static Block machine_amgen; + public static Block machine_geo; + public static Block machine_minirtg; + public static Block machine_powerrtg; + public static Block machine_radiolysis; + public static Block machine_hephaestus; + + public static Block machine_well; + public static Block oil_pipe; + public static Block machine_pumpjack; + public static Block machine_fracking_tower; + + public static Block machine_flare; + public static Block chimney_brick; + public static Block chimney_industrial; + + public static Block machine_refinery; + public static Block machine_vacuum_distill; + public static Block machine_fraction_tower; + public static Block fraction_spacer; + public static Block machine_catalytic_cracker; + public static Block machine_catalytic_reformer; + public static Block machine_hydrotreater; + public static Block machine_coker; + public static Block machine_pyrooven; + + public static Block machine_boiler_off; + + public static Block machine_steam_engine; + public static Block machine_turbine; + public static Block machine_large_turbine; + + public static Block machine_deuterium_extractor; + public static Block machine_deuterium_tower; + + public static Block machine_liquefactor; + public static Block machine_solidifier; + public static Block machine_compressor; + + public static Block machine_chungus; + public static Block machine_condenser; + public static Block machine_tower_small; + public static Block machine_tower_large; + public static Block machine_condenser_powered; + + public static Block machine_electrolyser; + + public static Block machine_excavator; + public static Block machine_ore_slopper; + public static Block machine_autosaw; + + public static Block machine_mining_laser; + public static Block barricade; // a sand bag that drops nothing, for automated walling purposes + + public static Block machine_assembler; + public static Block machine_assemfac; + public static Block machine_arc_welder; + public static Block machine_soldering_station; + public static Block machine_arc_furnace; + + public static Block machine_chemplant; + public static Block machine_chemfac; + public static Block machine_mixer; + + public static Block machine_fluidtank; + public static Block machine_bat9000; + public static Block machine_orbus; + + public static Block launch_pad; + public static Block launch_pad_rusted; + public static Block launch_pad_large; + + public static Block machine_missile_assembly; + + public static Block compact_launcher; + public static Block launch_table; + + public static Block soyuz_launcher; + + public static Block machine_radar; + public static Block machine_radar_large; + public static Block radar_screen; + + public static Block machine_turbofan; + public static Block machine_turbinegas; + public static Block machine_lpw2; + + public static Block press_preheater; + public static Block machine_press; + public static Block machine_epress; + public static Block machine_conveyor_press; + + public static Block machine_siren; + + public static Block machine_radgen; + + public static Block machine_satlinker; + public static Block machine_keyforge; + + public static Block machine_armor_table; + + public static Block reactor_research; + public static Block reactor_zirnox; + public static Block zirnox_destroyed; + + public static Block machine_controller; + + public static Block machine_spp_bottom; + public static Block machine_spp_top; + + public static Block radiobox; + public static Block radiorec; + + public static Block machine_forcefield; + + public static Block machine_waste_drum; + public static Block machine_storage_drum; + + public static Block machine_autocrafter; + public static Block machine_funnel; + + public static Block anvil_iron; + public static Block anvil_lead; + public static Block anvil_steel; + public static Block anvil_desh; + public static Block anvil_saturnite; + public static Block anvil_ferrouranium; + public static Block anvil_bismuth_bronze; + public static Block anvil_arsenic_bronze; + public static Block anvil_schrabidate; + public static Block anvil_dnt; + public static Block anvil_osmiridium; + public static Block anvil_murky; + + public static Block turret_chekhov; + public static Block turret_friendly; + public static Block turret_jeremy; + public static Block turret_tauon; + public static Block turret_richard; + public static Block turret_howard; + public static Block turret_howard_damaged; + public static Block turret_maxwell; + public static Block turret_fritz; + public static Block turret_arty; + public static Block turret_himars; + public static Block turret_sentry; + public static Block turret_sentry_damaged; + + public static Block rbmk_rod; + public static Block rbmk_rod_mod; + public static Block rbmk_rod_reasim; + public static Block rbmk_rod_reasim_mod; + public static Block rbmk_control; + public static Block rbmk_control_mod; + public static Block rbmk_control_auto; + public static Block rbmk_blank; + public static Block rbmk_boiler; + public static Block rbmk_reflector; + public static Block rbmk_absorber; + public static Block rbmk_moderator; + public static Block rbmk_outgasser; + public static Block rbmk_storage; + public static Block rbmk_cooler; + public static Block rbmk_heater; + public static Block rbmk_console; + public static Block rbmk_crane_console; + public static Block rbmk_loader; + public static Block rbmk_steam_inlet; + public static Block rbmk_steam_outlet; + public static Block pribris; + public static Block pribris_burning; + public static Block pribris_radiating; + public static Block pribris_digamma; + + public static Block book_guide; + + public static Block rail_wood; + public static Block rail_narrow; + public static Block rail_highspeed; + public static Block rail_booster; + + public static Block rail_narrow_straight; + public static Block rail_narrow_curve; + public static Block rail_large_straight; + public static Block rail_large_straight_short; + public static Block rail_large_curve; + public static Block rail_large_curve_7; + public static Block rail_large_curve_9; + public static Block rail_large_ramp; + public static Block rail_large_buffer; + public static Block rail_large_switch; + public static Block rail_large_switch_flipped; + + public static Block statue_elb; + public static Block statue_elb_g; + public static Block statue_elb_w; + public static Block statue_elb_f; + + public static Block cheater_virus; + public static Block cheater_virus_seed; + public static Block crystal_virus; + public static Block crystal_hardened; + public static Block crystal_pulsar; + public static Block taint; + + public static Block vent_chlorine; + public static Block vent_cloud; + public static Block vent_pink_cloud; + public static Block vent_chlorine_seal; + public static Block chlorine_gas; + + public static Block gas_radon; + public static Block gas_radon_dense; + public static Block gas_radon_tomb; + public static Block gas_meltdown; + public static Block gas_monoxide; + public static Block gas_asbestos; + public static Block gas_coal; + public static Block gas_flammable; + public static Block gas_explosive; + public static Block vacuum; + + public static Block absorber; + public static Block absorber_red; + public static Block absorber_green; + public static Block absorber_pink; + public static Block decon; + public static Block transission_hatch; + + public static Block mud_block; + public static Fluid mud_fluid; + public static final Material fluidmud = (new MaterialLiquid(MapColor.adobeColor)); + + public static Block acid_block; + public static Fluid acid_fluid; + public static final Material fluidacid = (new MaterialLiquid(MapColor.purpleColor)); + + public static Block toxic_block; + public static Fluid toxic_fluid; + public static final Material fluidtoxic = (new MaterialLiquid(MapColor.greenColor)); + + public static Block schrabidic_block; + public static Fluid schrabidic_fluid; + public static final Material fluidschrabidic = (new MaterialLiquid(MapColor.cyanColor)); + + public static Block corium_block; + public static Fluid corium_fluid; + public static final Material fluidcorium = (new MaterialLiquid(MapColor.brownColor) { + + @Override + public boolean blocksMovement() { + return true; + } + + @Override + public Material setImmovableMobility() { //override access modifier + return super.setImmovableMobility(); + } + + }.setImmovableMobility()); + + public static Block volcanic_lava_block; + public static Fluid volcanic_lava_fluid; + public static Block rad_lava_block; + public static Fluid rad_lava_fluid; + + public static Block sulfuric_acid_block; + public static Fluid sulfuric_acid_fluid; + + public static Block concrete_liquid; + + public static Block volcano_core; + public static Block volcano_rad_core; + + public static Block dummy_block_vault; + public static Block dummy_block_blast; + public static Block dummy_block_uf6; + public static Block dummy_block_puf6; + public static Block dummy_plate_compact_launcher; + public static Block dummy_port_compact_launcher; + public static Block dummy_plate_launch_table; + public static Block dummy_port_launch_table; + public static Block dummy_plate_cargo; + + public static Block ntm_dirt; + + public static Block pink_log; + public static Block pink_planks; + public static Block pink_slab; + public static Block pink_double_slab; + public static Block pink_stairs; + + public static Material materialGas = new MaterialGas(); + + private static void initializeBlock() { + + event_tester = new TestEventTester(Material.iron).setBlockName("event_tester").setCreativeTab(null).setHardness(2.5F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":event_tester"); + obj_tester = new TestObjTester(Material.iron).setBlockName("obj_tester").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F); + test_core = new TestCore(Material.iron).setBlockName("test_core").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":test_core"); + test_charge = new TestCharge(Material.iron).setBlockName("test_charge").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F); + structure_anchor = new BlockGeneric(Material.iron).setBlockName("structure_anchor").setCreativeTab(null).setHardness(2.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":structure_anchor"); + + ore_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_uranium"); + ore_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_uranium_scorched"); + ore_titanium = new BlockGeneric(Material.rock).setBlockName("ore_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_titanium"); + ore_sulfur = new BlockOre(Material.rock).setBlockName("ore_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_sulfur"); + ore_thorium = new BlockGeneric(Material.rock).setBlockName("ore_thorium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_thorium"); + + ore_niter = new BlockOre(Material.rock).setBlockName("ore_niter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_niter"); + ore_copper = new BlockGeneric(Material.rock).setBlockName("ore_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_copper"); + ore_tungsten = new BlockGeneric(Material.rock).setBlockName("ore_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tungsten"); + ore_aluminium = new BlockGeneric(Material.rock).setBlockName("ore_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_aluminium"); + ore_fluorite = new BlockOre(Material.rock).setBlockName("ore_fluorite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_fluorite"); + ore_lead = new BlockGeneric(Material.rock).setBlockName("ore_lead").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_lead"); + ore_schrabidium = new BlockOre(Material.rock, 0.1F, 0.5F).setBlockName("ore_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":ore_schrabidium"); + ore_beryllium = new BlockGeneric(Material.rock).setBlockName("ore_beryllium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_beryllium"); + ore_lignite = new BlockOre(Material.rock).setBlockName("ore_lignite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_lignite"); + ore_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_asbestos"); + ore_coal_oil = new BlockCoalOil(Material.rock).setBlockName("ore_coal_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil"); + ore_coal_oil_burning = new BlockCoalBurning(Material.rock).setBlockName("ore_coal_oil_burning").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":ore_coal_oil_burning"); + + cluster_iron = new BlockCluster(Material.rock).setBlockName("cluster_iron").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_iron"); + cluster_titanium = new BlockCluster(Material.rock).setBlockName("cluster_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_titanium"); + cluster_aluminium = new BlockCluster(Material.rock).setBlockName("cluster_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_aluminium"); + cluster_copper = new BlockCluster(Material.rock).setBlockName("cluster_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":cluster_copper"); + + ore_nether_coal = new BlockNetherCoal(Material.rock, false, 5, true).setBlockName("ore_nether_coal").setCreativeTab(MainRegistry.blockTab).setLightLevel(10F/15F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_coal"); + ore_nether_smoldering = new BlockSmolder(Material.rock).setBlockName("ore_nether_smoldering").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_smoldering"); + ore_nether_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_nether_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium"); + ore_nether_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_nether_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_uranium_scorched"); + ore_nether_plutonium = new BlockGeneric(Material.rock).setBlockName("ore_nether_plutonium").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_plutonium"); + ore_nether_tungsten = new BlockGeneric(Material.rock).setBlockName("ore_nether_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_tungsten"); + ore_nether_sulfur = new BlockOre(Material.rock).setBlockName("ore_nether_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_sulfur"); + ore_nether_fire = new BlockOre(Material.rock).setBlockName("ore_nether_fire").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_fire"); + ore_nether_cobalt = new BlockOre(Material.rock).setBlockName("ore_nether_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(0.4F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_cobalt"); + ore_nether_schrabidium = new BlockGeneric(Material.rock).setBlockName("ore_nether_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":ore_nether_schrabidium"); + + ore_meteor = new BlockMeteorOre().setBlockName("ore_meteor").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); + + stone_gneiss = new BlockGeneric(Material.rock).setBlockName("stone_gneiss").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":stone_gneiss_var"); + ore_gneiss_iron = new BlockOre(Material.rock).setBlockName("ore_gneiss_iron").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_iron"); + ore_gneiss_gold = new BlockOre(Material.rock).setBlockName("ore_gneiss_gold").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gold"); + ore_gneiss_uranium = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_uranium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_uranium"); + ore_gneiss_uranium_scorched = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_uranium_scorched").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_uranium_scorched"); + ore_gneiss_copper = new BlockOre(Material.rock).setBlockName("ore_gneiss_copper").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_copper"); + ore_gneiss_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("ore_gneiss_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_asbestos"); + ore_gneiss_lithium = new BlockOre(Material.rock).setBlockName("ore_gneiss_lithium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_lithium"); + ore_gneiss_schrabidium = new BlockOre(Material.rock).setBlockName("ore_gneiss_schrabidium").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_schrabidium"); + ore_gneiss_rare = new BlockOre(Material.rock).setBlockName("ore_gneiss_rare").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_rare"); + ore_gneiss_gas = new BlockOre(Material.rock).setBlockName("ore_gneiss_gas").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_gneiss_gas"); + + gneiss_brick = new BlockGeneric(Material.rock).setBlockName("gneiss_brick").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_brick"); + gneiss_tile = new BlockGeneric(Material.rock).setBlockName("gneiss_tile").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_tile"); + gneiss_chiseled = new BlockPillar(Material.rock, RefStrings.MODID + ":gneiss_tile").setBlockName("gneiss_chiseled").setCreativeTab(MainRegistry.blockTab).setHardness(1.5F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":gneiss_chiseled"); + + stone_depth = new BlockDepth().setBlockName("stone_depth").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_depth"); + ore_depth_cinnebar = new BlockDepthOre().setBlockName("ore_depth_cinnebar").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_cinnebar"); + ore_depth_zirconium = new BlockDepthOre().setBlockName("ore_depth_zirconium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_zirconium"); + ore_depth_borax = new BlockDepthOre().setBlockName("ore_depth_borax").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_borax"); + cluster_depth_iron = new BlockDepthOre().setBlockName("cluster_depth_iron").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_iron"); + cluster_depth_titanium = new BlockDepthOre().setBlockName("cluster_depth_titanium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_titanium"); + cluster_depth_tungsten = new BlockDepthOre().setBlockName("cluster_depth_tungsten").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cluster_depth_tungsten"); + ore_alexandrite = new BlockDepthOre().setBlockName("ore_alexandrite").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_alexandrite"); + + stone_keyhole = new BlockKeyhole().setBlockName("stone_keyhole").setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":stone_keyhole"); + + ore_random = new BlockMotherOfAllOres().setBlockName("ore_random").setCreativeTab(MainRegistry.blockTab); + ore_bedrock = new BlockBedrockOreTE().setBlockName("ore_bedrock").setCreativeTab(null); + ore_volcano = new BlockFissure().setBlockName("ore_volcano").setLightLevel(1F).setCreativeTab(MainRegistry.blockTab); + + depth_brick = new BlockDepth().setBlockName("depth_brick").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_brick"); + depth_tiles = new BlockDepth().setBlockName("depth_tiles").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_tiles"); + depth_nether_brick = new BlockDepth().setBlockName("depth_nether_brick").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_nether_brick"); + depth_nether_tiles = new BlockDepth().setBlockName("depth_nether_tiles").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":depth_nether_tiles"); + depth_dnt = new BlockDepth().setBlockName("depth_dnt").setCreativeTab(MainRegistry.blockTab).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":depth_dnt"); + + stone_depth_nether = new BlockDepth().setBlockName("stone_depth_nether").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_depth_nether"); + ore_depth_nether_neodymium = new BlockDepthOre().setBlockName("ore_depth_nether_neodymium").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ore_depth_nether_neodymium"); + + stone_porous = new BlockPorous().setBlockName("stone_porous").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":stone_porous"); + stone_resource = new BlockResourceStone().setBlockName("stone_resource").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); + stalagmite = new BlockStalagmite().setBlockName("stalagmite").setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.0F); + stalactite = new BlockStalagmite().setBlockName("stalactite").setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.0F); + stone_biome = new BlockBiomeStone().setBlockName("stone_biome").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); + + basalt = new BlockPillar(Material.rock, RefStrings.MODID + ":basalt_top").setBlockName("basalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt"); + ore_basalt = new BlockOreBasalt().setBlockName("ore_basalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_basalt"); + basalt_smooth = new BlockGeneric(Material.rock).setBlockName("basalt_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_smooth"); + basalt_brick = new BlockGeneric(Material.rock).setBlockName("basalt_brick").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_brick"); + basalt_polished = new BlockGeneric(Material.rock).setBlockName("basalt_polished").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_polished"); + basalt_tiles = new BlockGeneric(Material.rock).setBlockName("basalt_tiles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":basalt_tiles"); + + ore_australium = new BlockGeneric(Material.rock).setBlockName("ore_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_australium"); + ore_rare = new BlockOre(Material.rock).setBlockName("ore_rare").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_rare"); + ore_cobalt = new BlockOre(Material.rock).setBlockName("ore_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cobalt"); + ore_cinnebar = new BlockOre(Material.rock).setBlockName("ore_cinnebar").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_cinnebar"); + ore_coltan = new BlockOre(Material.rock).setBlockName("ore_coltan").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_coltan"); + + ore_oil = new BlockOre(Material.rock).setBlockName("ore_oil").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil"); + ore_oil_empty = new BlockGeneric(Material.rock).setBlockName("ore_oil_empty").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_empty"); + ore_oil_sand = new BlockFalling(Material.sand).setBlockName("ore_oil_sand").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(0.5F).setResistance(1.0F).setBlockTextureName(RefStrings.MODID + ":ore_oil_sand_alt"); + ore_bedrock_oil = new BlockGeneric(Material.rock).noMobSpawn().setBlockName("ore_bedrock_oil").setCreativeTab(MainRegistry.blockTab).setBlockUnbreakable().setResistance(1_000_000).setBlockTextureName(RefStrings.MODID + ":ore_bedrock_oil"); + + ore_tikite = new BlockDragonProof(Material.rock).setBlockName("ore_tikite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":ore_tikite_alt"); + + block_uranium = new BlockHazard().makeBeaconable().setBlockName("block_uranium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium"); + block_u233 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_u233").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u233"); + block_u235 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_u235").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u235"); + block_u238 = new BlockHazard().makeBeaconable().setBlockName("block_u238").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_u238"); + block_uranium_fuel = new BlockHazard().makeBeaconable().setBlockName("block_uranium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_uranium_fuel"); + block_thorium = new BlockHazard().makeBeaconable().setBlockName("block_thorium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium"); + block_thorium_fuel = new BlockHazard().makeBeaconable().setBlockName("block_thorium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_thorium_fuel"); + block_neptunium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_neptunium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":block_neptunium"); + block_polonium = new BlockHotHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_polonium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_polonium"); + block_mox_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_mox_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_mox_fuel"); + block_plutonium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_plutonium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_plutonium"); + block_pu238 = new BlockHotHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu238").setCreativeTab(MainRegistry.blockTab).setLightLevel(5F/15F).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu238"); + block_pu239 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu239").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu239"); + block_pu240 = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu240").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu240"); + block_pu_mix = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_pu_mix").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_pu_mix"); + block_plutonium_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_plutonium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_plutonium_fuel"); + block_titanium = new BlockBeaconable(Material.iron).setBlockName("block_titanium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_titanium"); + block_sulfur = new BlockBeaconable(Material.iron).setBlockName("block_sulfur").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_sulfur"); + block_niter = new BlockBeaconable(Material.iron).setBlockName("block_niter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_niter"); + block_copper = new BlockBeaconable(Material.iron).setBlockName("block_copper").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_copper"); + block_red_copper = new BlockBeaconable(Material.iron).setBlockName("block_red_copper").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(25.0F).setBlockTextureName(RefStrings.MODID + ":block_red_copper"); + block_tungsten = new BlockBeaconable(Material.iron).setBlockName("block_tungsten").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_tungsten"); + block_aluminium = new BlockBeaconable(Material.iron).setBlockName("block_aluminium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); + block_fluorite = new BlockBeaconable(Material.iron).setBlockName("block_fluorite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_fluorite"); + block_steel = new BlockBeaconable(Material.iron).setBlockName("block_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + block_tcalloy = new BlockBeaconable(Material.iron).setBlockName("block_tcalloy").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(70.0F).setBlockTextureName(RefStrings.MODID + ":block_tcalloy"); + block_cdalloy = new BlockBeaconable(Material.iron).setBlockName("block_cdalloy").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(70.0F).setBlockTextureName(RefStrings.MODID + ":block_cdalloy"); + block_lead = new BlockBeaconable(Material.iron).setBlockName("block_lead").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_lead"); + block_bismuth = new BlockBeaconable(Material.iron).setBlockName("block_bismuth").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(90.0F).setBlockTextureName(RefStrings.MODID + ":block_bismuth"); + block_cadmium = new BlockBeaconable(Material.iron).setBlockName("block_cadmium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(90.0F).setBlockTextureName(RefStrings.MODID + ":block_cadmium"); + block_coltan = new BlockBeaconable(Material.iron).setBlockName("block_coltan").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_coltan"); + block_tantalium = new BlockBeaconable(Material.iron).setBlockName("block_tantalium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_tantalium"); + block_niobium = new BlockBeaconable(Material.iron).setBlockName("block_niobium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(50.0F); + block_trinitite = new BlockHazard().makeBeaconable().setBlockName("block_trinitite").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_trinitite"); + block_waste = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste"); + block_waste_painted = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste_painted").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_painted"); + block_waste_vitrified = new BlockNuclearWaste().makeBeaconable().setDisplayEffect(ExtDisplayEffect.RADFOG).setBlockName("block_waste_vitrified").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_waste_vitrified"); + ancient_scrap = new BlockOutgas(Material.iron, true, 1, true, true).setBlockName("ancient_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":ancient_scrap"); + block_corium = new BlockHazard(Material.iron).setBlockName("block_corium").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_corium"); + block_corium_cobble = new BlockOutgas(Material.iron, true, 1, true, true).setBlockName("block_corium_cobble").setCreativeTab(MainRegistry.blockTab).setHardness(100.0F).setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":block_corium_cobble"); + block_scrap = new BlockFalling(Material.sand).setBlockName("block_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeGravel).setBlockTextureName(RefStrings.MODID + ":block_scrap"); + block_electrical_scrap = new BlockFalling(Material.iron).setBlockName("block_electrical_scrap").setCreativeTab(MainRegistry.blockTab).setHardness(2.5F).setResistance(5.0F).setStepSound(Block.soundTypeMetal).setBlockTextureName(RefStrings.MODID + ":electrical_scrap_alt2"); + block_beryllium = new BlockBeaconable(Material.iron).setBlockName("block_beryllium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":block_beryllium"); + block_schraranium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schraranium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(250.0F).setBlockTextureName(RefStrings.MODID + ":block_schraranium"); + block_schrabidium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium"); + block_schrabidate = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidate").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidate"); + block_solinium = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_solinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_solinium"); + block_schrabidium_fuel = new BlockHazard().makeBeaconable().setDisplayEffect(ExtDisplayEffect.SCHRAB).setBlockName("block_schrabidium_fuel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_fuel"); + block_euphemium = new BlockBeaconable(Material.iron).setBlockName("block_euphemium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium"); + block_dineutronium = new BlockBeaconable(Material.iron).setBlockName("block_dineutronium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_dineutronium"); + block_schrabidium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_schrabidium_cluster_top").setBlockName("block_schrabidium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_schrabidium_cluster_side"); + block_euphemium_cluster = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":block_euphemium_cluster_top").setBlockName("block_euphemium_cluster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60000.0F).setBlockTextureName(RefStrings.MODID + ":block_euphemium_cluster_side"); + block_advanced_alloy = new BlockBeaconable(Material.iron).setBlockName("block_advanced_alloy").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":block_advanced_alloy"); + block_magnetized_tungsten = new BlockBeaconable(Material.iron).setBlockName("block_magnetized_tungsten").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(75.0F).setBlockTextureName(RefStrings.MODID + ":block_magnetized_tungsten"); + block_combine_steel = new BlockBeaconable(Material.iron).setBlockName("block_combine_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_combine_steel"); + block_desh = new BlockBeaconable(Material.iron).setBlockName("block_desh").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(300.0F).setBlockTextureName(RefStrings.MODID + ":block_desh"); + block_dura_steel = new BlockBeaconable(Material.iron).setBlockName("block_dura_steel").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":block_dura_steel"); + block_starmetal = new BlockBeaconable(Material.iron).setBlockName("block_starmetal").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(400.0F).setBlockTextureName(RefStrings.MODID + ":block_starmetal"); + block_polymer = new BlockBeaconable(Material.rock).setBlockName("block_polymer").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_polymer"); + block_bakelite = new BlockBeaconable(Material.rock).setBlockName("block_bakelite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":block_bakelite"); + block_rubber = new BlockBeaconable(Material.rock).setBlockName("block_rubber").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypePiston).setHardness(3.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_rubber"); + block_yellowcake = new BlockHazardFalling().makeBeaconable().setBlockName("block_yellowcake").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSand).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_yellowcake"); + block_insulator = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_insulator_top").setBlockName("block_insulator").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_insulator_side"); + block_fiberglass = new BlockRotatablePillar(Material.cloth, RefStrings.MODID + ":block_fiberglass_top").setBlockName("block_fiberglass").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); + block_asbestos = new BlockOutgas(Material.cloth, true, 5, true).setBlockName("block_asbestos").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeCloth).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_asbestos"); + block_cobalt = new BlockBeaconable(Material.iron).setBlockName("block_cobalt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(50.0F).setBlockTextureName(RefStrings.MODID + ":block_cobalt"); + block_lithium = new BlockLithium(Material.iron).setBlockName("block_lithium").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lithium"); + block_zirconium = new BlockBeaconable(Material.iron).setBlockName("block_zirconium").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(30.0F).setBlockTextureName(RefStrings.MODID + ":block_zirconium"); + block_white_phosphorus = new BlockHazard(Material.rock).makeBeaconable().setBlockName("block_white_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_white_phosphorus"); + block_red_phosphorus = new BlockHazardFalling().makeBeaconable().setStepSound(Block.soundTypeSand).setBlockName("block_red_phosphorus").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_red_phosphorus"); + block_fallout = new BlockHazardFalling().setStepSound(Block.soundTypeGravel).setBlockName("block_fallout").setCreativeTab(MainRegistry.blockTab).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":ash"); + block_foam = new BlockGeneric(Material.craftedSnow).setBlockName("block_foam").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeSnow).setHardness(0.5F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":foam"); + block_coke = new BlockCoke().setBlockName("block_coke").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F); + block_graphite = new BlockGraphite(Material.iron, 30, 5).setBlockName("block_graphite").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F); + block_graphite_drilled = new BlockGraphiteDrilled().setBlockName("block_graphite_drilled"); + block_graphite_fuel = new BlockGraphiteFuel().setBlockName("block_graphite_fuel"); + block_graphite_plutonium = new BlockGraphiteSource().setBlockName("block_graphite_plutonium"); + block_graphite_rod = new BlockGraphiteRod().setBlockName("block_graphite_rod").setBlockTextureName(RefStrings.MODID + ":block_graphite_rod_in"); + block_graphite_source = new BlockGraphiteSource().setBlockName("block_graphite_source"); + block_graphite_lithium = new BlockGraphiteBreedingFuel().setBlockName("block_graphite_lithium"); + block_graphite_tritium = new BlockGraphiteBreedingProduct().setBlockName("block_graphite_tritium"); + block_graphite_detector = new BlockGraphiteNeutronDetector().setBlockName("block_graphite_detector"); + block_boron = new BlockBeaconable(Material.iron).setBlockName("block_boron").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_boron"); + block_lanthanium = new BlockBeaconable(Material.iron).setBlockName("block_lanthanium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_lanthanium"); + block_ra226 = new BlockHazard().makeBeaconable().setBlockName("block_ra226").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_ra226"); + block_actinium = new BlockHazard().makeBeaconable().setBlockName("block_actinium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_actinium"); + block_tritium = new BlockRotatablePillar(Material.glass, RefStrings.MODID + ":block_tritium_top").setBlockName("block_tritium").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGlass).setHardness(3.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_tritium_side"); + block_semtex = new BlockPlasticExplosive(Material.tnt).setBlockName("block_semtex").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_semtex"); + block_c4 = new BlockPlasticExplosive(Material.tnt).setBlockName("block_c4").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(2.0F).setBlockTextureName(RefStrings.MODID + ":block_c4"); + block_smore = new BlockPillar(Material.rock, RefStrings.MODID + ":block_smore_top").setBlockName("block_smore").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":block_smore_side"); + block_slag = new BlockSlag(Material.rock).setBlockName("block_slag").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeStone).setHardness(2.0F).setBlockTextureName(RefStrings.MODID + ":block_slag"); + + block_australium = new BlockBeaconable(Material.iron).setBlockName("block_australium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_australium"); + block_weidanium = new BlockBeaconable(Material.iron).setBlockName("block_weidanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_weidanium"); + block_reiium = new BlockBeaconable(Material.iron).setBlockName("block_reiium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_reiium"); + block_unobtainium = new BlockBeaconable(Material.iron).setBlockName("block_unobtainium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_unobtainium"); + block_daffergon = new BlockBeaconable(Material.iron).setBlockName("block_daffergon").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_daffergon"); + block_verticium = new BlockBeaconable(Material.iron).setBlockName("block_verticium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_verticium"); + + block_cap = new BlockCap().setBlockName("block_cap").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); + + deco_titanium = new BlockOre(Material.iron).noFortune().setBlockName("deco_titanium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_titanium"); + deco_red_copper = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_red_copper").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_red_copper"); + deco_tungsten = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_tungsten").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_tungsten"); + deco_aluminium = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_aluminium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_aluminium"); + deco_steel = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_steel").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel"); + deco_lead = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_lead").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_lead"); + deco_beryllium = new BlockDecoCT(Material.iron).noFortune().setBlockName("deco_beryllium").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_beryllium"); + deco_asbestos = new BlockOutgas(Material.cloth, true, 5, true).noFortune().setBlockName("deco_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_asbestos"); + deco_rbmk = new BlockGeneric(Material.iron).setBlockName("deco_rbmk").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_side"); + deco_rbmk_smooth = new BlockGeneric(Material.iron).setBlockName("deco_rbmk_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_top"); + + deco_emitter = new BlockEmitter().setBlockName("deco_emitter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":emitter"); + part_emitter = new PartEmitter().setBlockName("part_emitter").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":part_top"); + deco_loot = new BlockLoot().setBlockName("deco_loot").setCreativeTab(null).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + pedestal = new BlockPedestal().setBlockName("pedestal").setCreativeTab(null).setHardness(2.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":pedestal_top"); + bobblehead = new BlockBobble().setBlockName("bobblehead").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + snowglobe = new BlockSnowglobe().setBlockName("snowglobe").setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":glass_boron"); + plushie = new BlockPlushie().setBlockName("plushie").setStepSound(Block.soundTypeCloth).setResistance(50_0000.0F).setCreativeTab(MainRegistry.blockTab).setHardness(0.0F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":block_fiberglass_side"); + + gravel_obsidian = new BlockFalling(Material.iron).setBlockName("gravel_obsidian").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(5.0F).setResistance(240.0F).setBlockTextureName(RefStrings.MODID + ":gravel_obsidian"); + gravel_diamond = new BlockFalling(Material.sand).setBlockName("gravel_diamond").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGravel).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":gravel_diamond"); + asphalt = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":asphalt"); + asphalt_light = new BlockSpeedy(Material.rock, 1.5).setBlockName("asphalt_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":asphalt_light"); + + reinforced_brick = new BlockGeneric(Material.rock).setBlockName("reinforced_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(300.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_brick"); + reinforced_glass = new BlockNTMGlassCT(0, RefStrings.MODID + ":reinforced_glass", Material.rock).setBlockName("reinforced_glass").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(2.0F).setResistance(25.0F); + reinforced_glass_pane = new BlockNTMGlassPane(0, RefStrings.MODID + ":reinforced_glass_pane", RefStrings.MODID + ":reinforced_glass_pane_edge", Material.rock, false).setBlockName("reinforced_glass_pane").setCreativeTab(MainRegistry.blockTab).setLightOpacity(1).setHardness(2.0F).setResistance(25.0F); + reinforced_light = new BlockGeneric(Material.rock).setBlockName("reinforced_light").setCreativeTab(MainRegistry.blockTab).setLightLevel(1.0F).setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_light"); + reinforced_sand = new BlockGeneric(Material.rock).setBlockName("reinforced_sand").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(40.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_sand"); + reinforced_lamp_off = new ReinforcedLamp(Material.rock, false).setBlockName("reinforced_lamp_off").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_lamp_off"); + reinforced_lamp_on = new ReinforcedLamp(Material.rock, true).setBlockName("reinforced_lamp_on").setHardness(15.0F).setResistance(80.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_lamp_on"); + reinforced_laminate = new BlockNTMGlassCT(1, RefStrings.MODID + ":reinforced_laminate", Material.rock, true).setBlockName("reinforced_laminate").setCreativeTab(MainRegistry.blockTab).setLightOpacity(0).setHardness(15.0F).setResistance(300.0F); + reinforced_laminate_pane = new BlockNTMGlassPane(1, RefStrings.MODID + ":reinforced_laminate_pane", RefStrings.MODID + ":reinforced_laminate_pane_edge", Material.rock, true).setBlockName("reinforced_laminate_pane").setCreativeTab(MainRegistry.blockTab).setLightOpacity(1).setHardness(15.0F).setResistance(300.0F); + + lamp_tritium_green_off = new TritiumLamp(Material.redstoneLight, false).setBlockName("lamp_tritium_green_off").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_green_off"); + lamp_tritium_green_on = new TritiumLamp(Material.redstoneLight, true).setBlockName("lamp_tritium_green_on").setStepSound(Block.soundTypeGlass).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_green_on"); + lamp_tritium_blue_off = new TritiumLamp(Material.redstoneLight, false).setBlockName("lamp_tritium_blue_off").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_blue_off"); + lamp_tritium_blue_on = new TritiumLamp(Material.redstoneLight, true).setBlockName("lamp_tritium_blue_on").setStepSound(Block.soundTypeGlass).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_tritium_blue_on"); + + lamp_demon = new DemonLamp().setBlockName("lamp_demon").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":lamp_demon"); + lantern = new BlockLantern().setBlockName("lantern").setStepSound(Block.soundTypeMetal).setCreativeTab(MainRegistry.blockTab).setLightLevel(1F).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + lantern_behemoth = new BlockLanternBehemoth().setBlockName("lantern_behemoth").setStepSound(Block.soundTypeMetal).setCreativeTab(null).setHardness(3.0F).setBlockTextureName(RefStrings.MODID + ":block_rust"); + + spotlight_incandescent = new Spotlight(Material.iron, 2, LightType.INCANDESCENT, true).setBlockName("spotlight_incandescent").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":cage_lamp"); + spotlight_incandescent_off = new Spotlight(Material.iron, 2, LightType.INCANDESCENT, false).setBlockName("spotlight_incandescent_off").setBlockTextureName(RefStrings.MODID + ":cage_lamp_off"); + spotlight_fluoro = new SpotlightModular(Material.iron, 8, LightType.FLUORESCENT, true).setBlockName("spotlight_fluoro").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":fluorescent_lamp"); + spotlight_fluoro_off = new SpotlightModular(Material.iron, 8, LightType.FLUORESCENT, false).setBlockName("spotlight_fluoro_off").setBlockTextureName(RefStrings.MODID + ":fluorescent_lamp_off"); + spotlight_halogen = new Spotlight(Material.iron, 32, LightType.HALOGEN, true).setBlockName("spotlight_halogen").setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":flood_lamp"); + spotlight_halogen_off = new Spotlight(Material.iron, 32, LightType.HALOGEN, false).setBlockName("spotlight_halogen_off").setBlockTextureName(RefStrings.MODID + ":flood_lamp_off"); + spotlight_beam = new SpotlightBeam().setBlockName("spotlight_beam"); + floodlight = new Floodlight(Material.iron).setBlockName("floodlight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + floodlight_beam = new FloodlightBeam().setBlockName("floodlight_beam"); + + reinforced_stone = new BlockGeneric(Material.rock).setBlockName("reinforced_stone").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_stone"); + concrete_smooth = new BlockRadResistant(Material.rock).setBlockName("concrete_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete"); + concrete_colored = new BlockConcreteColored(Material.rock).setBlockName("concrete_colored").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete"); + concrete_colored_ext = new BlockConcreteColoredExt(Material.rock).setBlockName("concrete_colored_ext").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete_colored_ext"); + concrete = new BlockGeneric(Material.rock).setBlockName("concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(140.0F).setBlockTextureName(RefStrings.MODID + ":concrete_tile"); + concrete_asbestos = new BlockGeneric(Material.rock).setBlockName("concrete_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(150.0F).setBlockTextureName(RefStrings.MODID + ":concrete_asbestos"); + concrete_super = new BlockUberConcrete().setBlockName("concrete_super").setCreativeTab(MainRegistry.blockTab).setHardness(150.0F).setResistance(1000.0F); + concrete_super_broken = new BlockFalling(Material.rock).setBlockName("concrete_super_broken").setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":concrete_super_broken"); + concrete_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":concrete_pillar_top").setBlockName("concrete_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(180.0F).setBlockTextureName(RefStrings.MODID + ":concrete_pillar_side"); + brick_concrete = new BlockGeneric(Material.rock).setBlockName("brick_concrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); + brick_concrete_mossy = new BlockGeneric(Material.rock).setBlockName("brick_concrete_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_mossy"); + brick_concrete_cracked = new BlockGeneric(Material.rock).setBlockName("brick_concrete_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_cracked"); + brick_concrete_broken = new BlockGeneric(Material.rock).setBlockName("brick_concrete_broken").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(45.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_broken"); + brick_concrete_marked = new BlockWriting(Material.rock, RefStrings.MODID + ":brick_concrete").setBlockName("brick_concrete_marked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(160.0F).setBlockTextureName(RefStrings.MODID + ":brick_concrete_marked"); + brick_obsidian = new BlockGeneric(Material.rock).setBlockName("brick_obsidian").setCreativeTab(MainRegistry.blockTab).setLightOpacity(15).setHardness(15.0F).setResistance(120.0F).setBlockTextureName(RefStrings.MODID + ":brick_obsidian"); + brick_light = new BlockGeneric(Material.rock).setBlockName("brick_light").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":brick_light"); + brick_compound = new BlockGeneric(Material.rock).setBlockName("brick_compound").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(400.0F).setBlockTextureName(RefStrings.MODID + ":brick_compound"); + cmb_brick = new BlockGeneric(Material.rock).setBlockName("cmb_brick").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(5000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick"); + cmb_brick_reinforced = new BlockGeneric(Material.rock).setBlockName("cmb_brick_reinforced").setCreativeTab(MainRegistry.blockTab).setHardness(25.0F).setResistance(50000.0F).setBlockTextureName(RefStrings.MODID + ":cmb_brick_reinforced"); + brick_asbestos = new BlockOutgas(Material.rock, true, 5, true).setBlockName("brick_asbestos").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(1000.0F).setBlockTextureName(RefStrings.MODID + ":brick_asbestos"); + brick_fire = new BlockGeneric(Material.rock).setBlockName("brick_fire").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(35.0F).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + + ducrete_smooth = new BlockGeneric(Material.rock).setBlockName("ducrete_smooth").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(500.0F).setBlockTextureName(RefStrings.MODID + ":ducrete"); + ducrete = new BlockGeneric(Material.rock).setBlockName("ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(500.0F).setBlockTextureName(RefStrings.MODID + ":ducrete_tile"); + brick_ducrete = new BlockGeneric(Material.rock).setBlockName("brick_ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(750.0F).setBlockTextureName(RefStrings.MODID + ":brick_ducrete"); + reinforced_ducrete = new BlockGeneric(Material.rock).setBlockName("reinforced_ducrete").setCreativeTab(MainRegistry.blockTab).setHardness(20.0F).setResistance(1000.0F).setBlockTextureName(RefStrings.MODID + ":reinforced_ducrete"); + + concrete_slab = new BlockMultiSlab(null, Material.rock, concrete_smooth, concrete, concrete_asbestos, ducrete_smooth, ducrete, asphalt).setBlockName("concrete_slab").setCreativeTab(MainRegistry.blockTab); + concrete_double_slab = new BlockMultiSlab(concrete_slab, Material.rock, concrete_smooth, concrete, concrete_asbestos, ducrete_smooth, ducrete, asphalt).setBlockName("concrete_double_slab").setCreativeTab(MainRegistry.blockTab); + concrete_brick_slab = new BlockMultiSlab(null, Material.rock, brick_concrete, brick_concrete_mossy, brick_concrete_cracked, brick_concrete_broken, brick_ducrete).setBlockName("concrete_brick_slab").setCreativeTab(MainRegistry.blockTab); + concrete_brick_double_slab = new BlockMultiSlab(concrete_brick_slab, Material.rock, brick_concrete, brick_concrete_mossy, brick_concrete_cracked, brick_concrete_broken, brick_ducrete).setBlockName("concrete_brick_double_slab").setCreativeTab(MainRegistry.blockTab); + brick_slab = new BlockMultiSlab(null, Material.rock, reinforced_stone, reinforced_brick, brick_obsidian, brick_light, brick_compound, brick_asbestos, brick_fire).setBlockName("brick_slab").setCreativeTab(MainRegistry.blockTab); + brick_double_slab = new BlockMultiSlab(brick_slab, Material.rock, reinforced_stone, reinforced_brick, brick_obsidian, brick_light, brick_compound, brick_asbestos, brick_fire).setBlockName("brick_double_slab").setCreativeTab(MainRegistry.blockTab); + + concrete_smooth_stairs = new BlockGenericStairs(concrete_smooth, 0).setBlockName("concrete_smooth_stairs").setCreativeTab(MainRegistry.blockTab); + concrete_stairs = new BlockGenericStairs(concrete, 0).setBlockName("concrete_stairs").setCreativeTab(MainRegistry.blockTab); + concrete_asbestos_stairs = new BlockGenericStairs(concrete_asbestos, 0).setBlockName("concrete_asbestos_stairs").setCreativeTab(MainRegistry.blockTab); + ducrete_smooth_stairs = new BlockGenericStairs(ducrete_smooth, 0).setBlockName("ducrete_smooth_stairs").setCreativeTab(MainRegistry.blockTab); + ducrete_stairs = new BlockGenericStairs(ducrete, 0).setBlockName("ducrete_stairs").setCreativeTab(MainRegistry.blockTab); + brick_concrete_stairs = new BlockGenericStairs(brick_concrete, 0).setBlockName("brick_concrete_stairs").setCreativeTab(MainRegistry.blockTab); + brick_concrete_mossy_stairs = new BlockGenericStairs(brick_concrete_mossy, 0).setBlockName("brick_concrete_mossy_stairs").setCreativeTab(MainRegistry.blockTab); + brick_concrete_cracked_stairs = new BlockGenericStairs(brick_concrete_cracked, 0).setBlockName("brick_concrete_cracked_stairs").setCreativeTab(MainRegistry.blockTab); + brick_concrete_broken_stairs = new BlockGenericStairs(brick_concrete_broken, 0).setBlockName("brick_concrete_broken_stairs").setCreativeTab(MainRegistry.blockTab); + brick_ducrete_stairs = new BlockGenericStairs(brick_ducrete, 0).setBlockName("brick_ducrete_stairs").setCreativeTab(MainRegistry.blockTab); + reinforced_stone_stairs = new BlockGenericStairs(reinforced_stone, 0).setBlockName("reinforced_stone_stairs").setCreativeTab(MainRegistry.blockTab); + reinforced_brick_stairs = new BlockGenericStairs(reinforced_brick, 0).setBlockName("reinforced_brick_stairs").setCreativeTab(MainRegistry.blockTab); + brick_obsidian_stairs = new BlockGenericStairs(brick_obsidian, 0).setBlockName("brick_obsidian_stairs").setCreativeTab(MainRegistry.blockTab); + brick_light_stairs = new BlockGenericStairs(brick_light, 0).setBlockName("brick_light_stairs").setCreativeTab(MainRegistry.blockTab); + brick_compound_stairs = new BlockGenericStairs(brick_compound, 0).setBlockName("brick_compound_stairs").setCreativeTab(MainRegistry.blockTab); + brick_asbestos_stairs = new BlockGenericStairs(brick_asbestos, 0).setBlockName("brick_asbestos_stairs").setCreativeTab(MainRegistry.blockTab); + brick_fire_stairs = new BlockGenericStairs(brick_fire, 0).setBlockName("brick_fire_stairs").setCreativeTab(MainRegistry.blockTab); + asphalt_stairs = new BlockSpeedyStairs(asphalt, 0, 1.5).setBlockName("asphalt_stairs").setCreativeTab(MainRegistry.blockTab); + + vinyl_tile = new BlockEnumMulti(Material.rock, TileType.class, true, true).setBlockName("vinyl_tile").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":vinyl_tile"); + + tile_lab = new BlockOutgas(Material.rock, false, 5, true).setBlockName("tile_lab").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab"); + tile_lab_cracked = new BlockOutgas(Material.rock, false, 5, true).setBlockName("tile_lab_cracked").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab_cracked"); + tile_lab_broken = new BlockOutgas(Material.rock, true, 5, true).setBlockName("tile_lab_broken").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(1.0F).setResistance(20.0F).setBlockTextureName(RefStrings.MODID + ":tile_lab_broken"); + + block_meteor = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor"); + block_meteor_cobble = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor_cobble").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_cobble"); + block_meteor_broken = new BlockOre(Material.rock).noFortune().setBlockName("block_meteor_broken").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_crushed"); + block_meteor_molten = new BlockOre(Material.rock, true).noFortune().setBlockName("block_meteor_molten").setLightLevel(0.75F).setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_cobble_molten"); + block_meteor_treasure = new BlockMeteoriteTreasure(Material.rock).setBlockName("block_meteor_treasure").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_treasure"); + meteor_polished = new BlockGeneric(Material.rock).setBlockName("meteor_polished").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_polished"); + meteor_brick = new BlockGeneric(Material.rock).setBlockName("meteor_brick").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick"); + meteor_brick_mossy = new BlockGeneric(Material.rock).setBlockName("meteor_brick_mossy").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_mossy"); + meteor_brick_cracked = new BlockGeneric(Material.rock).setBlockName("meteor_brick_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_cracked"); + meteor_brick_chiseled = new BlockGeneric(Material.rock).setBlockName("meteor_brick_chiseled").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_brick_chiseled"); + meteor_pillar = new BlockRotatablePillar(Material.rock, RefStrings.MODID + ":meteor_pillar_top").setBlockName("meteor_pillar").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_pillar"); + meteor_spawner = new BlockCybercrab(Material.rock).setBlockName("meteor_spawner").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F); + meteor_battery = new BlockPillar(Material.rock, RefStrings.MODID + ":meteor_power").setBlockName("meteor_battery").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":meteor_spawner_side"); + moon_turf = new BlockFalling(Material.sand).setBlockName("moon_turf").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":moon_turf"); + + brick_jungle = new BlockGeneric(Material.rock).setBlockName("brick_jungle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle"); + brick_jungle_cracked = new BlockGeneric(Material.rock).setBlockName("brick_jungle_cracked").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_cracked"); + brick_jungle_fragile = new FragileBrick(Material.rock).setBlockName("brick_jungle_fragile").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_fragile"); + brick_jungle_lava = new BlockGeneric(Material.rock).setBlockName("brick_jungle_lava").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_lava"); + brick_jungle_ooze = new BlockOre(Material.rock).setBlockName("brick_jungle_ooze").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_ooze"); + brick_jungle_mystic = new BlockOre(Material.rock).setBlockName("brick_jungle_mystic").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setLightLevel(5F/15F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_mystic"); + brick_jungle_trap = new TrappedBrick(Material.rock).setBlockName("brick_jungle_trap").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_trap"); + brick_jungle_glyph = new BlockGlyph(Material.rock).setBlockName("brick_jungle_glyph").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F); + brick_jungle_circle = new BlockBallsSpawner(Material.rock).setBlockName("brick_jungle_circle").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(360.0F).setBlockTextureName(RefStrings.MODID + ":brick_jungle_circle"); + + brick_red = new BlockRedBrick(Material.rock).setBlockName("brick_red").setResistance(10_000); + + deco_computer = new BlockDecoModel(Material.iron, DecoComputerEnum.class, true, false).setBlockBoundsTo(.160749F, 0F, 0F, .839251F, .867849F, .622184F).setBlockName("deco_computer").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":deco_computer"); + deco_crt = new BlockDecoCRT(Material.iron).setBlockName("deco_crt").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + deco_toaster = new BlockDecoToaster(Material.iron).setBlockName("deco_toaster").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + filing_cabinet = new BlockDecoContainer(Material.iron, DecoCabinetEnum.class, true, false, TileEntityFileCabinet.class).setBlockBoundsTo(.1875F, 0F, 0F, .8125F, 1F, .75F).setBlockName("filing_cabinet").setCreativeTab(MainRegistry.blockTab).setHardness(10.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + tape_recorder = new DecoTapeRecorder(Material.iron).setBlockName("tape_recorder").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_tape_recorder"); + steel_poles = new DecoSteelPoles(Material.iron).setBlockName("steel_poles").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_beam"); + pole_top = new DecoPoleTop(Material.iron).setBlockName("pole_top").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_pole_top"); + pole_satellite_receiver = new DecoPoleSatelliteReceiver(Material.iron).setBlockName("pole_satellite_receiver").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_satellite_receiver"); + steel_wall = new DecoBlock(Material.iron).setBlockName("steel_wall").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_wall"); + steel_corner = new DecoBlock(Material.iron).setBlockName("steel_corner").setCreativeTab(MainRegistry.blockTab).setHardness(15.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_wall"); + steel_roof = new DecoBlock(Material.iron).setBlockName("steel_roof").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_roof"); + steel_beam = new DecoBlock(Material.iron).setBlockName("steel_beam").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":steel_beam"); + steel_scaffold = new BlockScaffold().setBlockName("steel_scaffold").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel_orig"); + steel_grate = new BlockGrate(Material.iron).setBlockName("steel_grate").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); + steel_grate_wide = new BlockGrate(Material.iron).setBlockName("steel_grate_wide").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); + scaffold_dynamic = new BlockScaffoldDynamic().setBlockName("scaffold_dynamic").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + deco_pipe = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 0).setBlockName("deco_pipe").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); + deco_pipe_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 0).setBlockName("deco_pipe_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); + deco_pipe_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 0).setBlockName("deco_pipe_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); + deco_pipe_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 0).setBlockName("deco_pipe_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); + deco_pipe_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 0).setBlockName("deco_pipe_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); + deco_pipe_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 0).setBlockName("deco_pipe_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); + deco_pipe_rim = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 1).setBlockName("deco_pipe_rim").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); + deco_pipe_rim_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 1).setBlockName("deco_pipe_rim_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); + deco_pipe_rim_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 1).setBlockName("deco_pipe_rim_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); + deco_pipe_rim_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 1).setBlockName("deco_pipe_rim_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); + deco_pipe_rim_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 1).setBlockName("deco_pipe_rim_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); + deco_pipe_rim_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 1).setBlockName("deco_pipe_rim_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); + deco_pipe_framed = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 3).setBlockName("deco_pipe_framed").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); + deco_pipe_framed_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 3).setBlockName("deco_pipe_framed_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); + deco_pipe_framed_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 3).setBlockName("deco_pipe_framed_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); + deco_pipe_framed_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 3).setBlockName("deco_pipe_framed_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); + deco_pipe_framed_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 3).setBlockName("deco_pipe_framed_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); + deco_pipe_framed_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 3).setBlockName("deco_pipe_framed_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); + deco_pipe_quad = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 2).setBlockName("deco_pipe_quad").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); + deco_pipe_quad_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 2).setBlockName("deco_pipe_quad_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); + deco_pipe_quad_green = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green", 2).setBlockName("deco_pipe_quad_green").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green"); + deco_pipe_quad_green_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_green_rusty", 2).setBlockName("deco_pipe_quad_green_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_green_rusty"); + deco_pipe_quad_red = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_red", 2).setBlockName("deco_pipe_quad_red").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_red"); + deco_pipe_quad_marked = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_marked", 2).setBlockName("deco_pipe_quad_marked").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_marked"); + + broadcaster_pc = new PinkCloudBroadcaster(Material.iron).setBlockName("broadcaster_pc").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":broadcaster_pc"); + geiger = new GeigerCounter(Material.iron).setBlockName("geiger").setCreativeTab(MainRegistry.machineTab).setHardness(15.0F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":geiger"); + hev_battery = new HEVBattery(Material.iron).setBlockName("hev_battery").setCreativeTab(MainRegistry.machineTab).setLightLevel(10F/15F).setHardness(0.5F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":hev_battery"); + + fence_metal = new BlockMetalFence(Material.iron).setBlockName("fence_metal").setCreativeTab(MainRegistry.machineTab).setHardness(15.0F).setResistance(0.25F).setBlockTextureName(RefStrings.MODID + ":fence_metal"); + + ash_digamma = new BlockAshes(Material.sand).setBlockName("ash_digamma").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setResistance(150.0F).setBlockTextureName(RefStrings.MODID + ":ash_digamma"); + sand_boron = new BlockFalling(Material.sand).setBlockName("sand_boron").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_boron"); + sand_lead = new BlockFalling(Material.sand).setBlockName("sand_lead").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_lead"); + sand_uranium = new BlockFalling(Material.sand).setBlockName("sand_uranium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_uranium"); + sand_polonium = new BlockFalling(Material.sand).setBlockName("sand_polonium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_polonium"); + sand_quartz = new BlockFalling(Material.sand).setBlockName("sand_quartz").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.machineTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_quartz"); + glass_boron = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_boron", Material.glass).setBlockName("glass_boron").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); + glass_lead = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_lead", Material.glass).setBlockName("glass_lead").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); + glass_uranium = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_uranium", Material.glass).setBlockName("glass_uranium").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); + glass_trinitite = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_trinitite", Material.glass).setBlockName("glass_trinitite").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); + glass_polonium = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_polonium", Material.glass).setBlockName("glass_polonium").setLightLevel(5F/15F).setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(0.3F); + glass_ash = new BlockNTMGlassCT(1, RefStrings.MODID + ":glass_ash", Material.glass).setBlockName("glass_ash").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.machineTab).setHardness(3F); + glass_quartz = new BlockNTMGlassCT(0, RefStrings.MODID + ":glass_quartz", Material.packedIce, true).setBlockName("glass_quartz").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGlass).setHardness(1.0F).setResistance(40.0F).setBlockTextureName(RefStrings.MODID + "glass_quartz"); + + mush = new BlockMush(Material.plants).setBlockName("mush").setCreativeTab(MainRegistry.blockTab).setLightLevel(0.5F).setStepSound(Block.soundTypeGrass).setBlockTextureName(RefStrings.MODID + ":mush"); + mush_block = new BlockMushHuge(Material.plants).setBlockName("mush_block").setLightLevel(1.0F).setStepSound(Block.soundTypeGrass).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":mush_block_skin"); + mush_block_stem = new BlockMushHuge(Material.plants).setBlockName("mush_block_stem").setLightLevel(1.0F).setStepSound(Block.soundTypeGrass).setHardness(0.2F).setBlockTextureName(RefStrings.MODID + ":mush_block_stem"); + glyphid_base = new BlockGlyphid(Material.coral).setBlockName("glyphid_base").setStepSound(Block.soundTypeCloth).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":glyphid_base"); + glyphid_spawner = new BlockGlyphidSpawner(Material.coral).setBlockName("glyphid_spawner").setStepSound(Block.soundTypeCloth).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":glyphid_eggs_alt"); + + plant_flower = new BlockNTMFlower().setBlockName("plant_flower").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); + plant_tall = new BlockTallPlant().setBlockName("plant_tall").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); + plant_dead = new BlockDeadPlant().setBlockName("plant_dead").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); + reeds = new BlockReeds().setBlockName("plant_reeds").setCreativeTab(MainRegistry.blockTab).setStepSound(Block.soundTypeGrass).setHardness(0.0F); + + waste_earth = new WasteEarth(Material.ground, true).setBlockName("waste_earth").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":waste_earth"); + waste_mycelium = new WasteEarth(Material.ground, true).setBlockName("waste_mycelium").setStepSound(Block.soundTypeGrass).setLightLevel(1F).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":waste_mycelium_side"); + waste_trinitite = new BlockOre(Material.sand).noFortune().setBlockName("waste_trinitite").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_trinitite"); + waste_trinitite_red = new BlockOre(Material.sand).noFortune().setBlockName("waste_trinitite_red").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_trinitite_red"); + waste_log = new WasteLog(Material.wood).setBlockName("waste_log").setStepSound(Block.soundTypeWood).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(2.5F); + waste_leaves = new WasteLeaves(Material.leaves).setBlockName("waste_leaves").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setBlockTextureName(RefStrings.MODID + ":waste_leaves"); + waste_planks = new BlockOre(Material.wood).setBlockName("waste_planks").setStepSound(Block.soundTypeWood).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":waste_planks"); + frozen_dirt = new BlockOre(Material.ground).setBlockName("frozen_dirt").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":frozen_dirt"); + frozen_grass = new WasteEarth(Material.ground, false).setBlockName("frozen_grass").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F); + frozen_log = new WasteLog(Material.wood).setBlockName("frozen_log").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F); + frozen_planks = new BlockOre(Material.wood).setBlockName("frozen_planks").setStepSound(Block.soundTypeGlass).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":frozen_planks"); + fallout = new BlockFallout(Material.sand).setBlockName("fallout").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":ash"); + foam_layer = new BlockLayering(Material.snow).setBlockName("foam_layer").setStepSound(Block.soundTypeSnow).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":foam"); + sand_boron_layer = new BlockLayering(Material.sand).setBlockName("sand_boron_layer").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":sand_boron"); + leaves_layer = new BlockLayering(Material.leaves).setBlockName("leaves_layer").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":waste_leaves"); + oil_spill = new BlockLayering(Material.ground).setBlockName("oil_spill").setStepSound(Block.soundTypeSnow).setCreativeTab(MainRegistry.blockTab).setHardness(0.1F).setLightOpacity(0).setBlockTextureName(RefStrings.MODID + ":oil_spill"); + + burning_earth = new WasteEarth(Material.ground, true).setBlockName("burning_earth").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.blockTab).setHardness(0.6F).setBlockTextureName(RefStrings.MODID + ":burning_earth"); + tektite = new BlockGeneric(Material.sand).setBlockName("tektite").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":tektite"); + ore_tektite_osmiridium = new BlockGeneric(Material.sand).setBlockName("ore_tektite_osmiridium").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":ore_tektite_osmiridium"); + impact_dirt = new BlockDirt(Material.ground, true).setBlockName("impact_dirt").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":waste_earth_bottom"); + dirt_dead = new BlockFalling(Material.ground).setBlockName("dirt_dead").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":dirt_dead"); + dirt_oily = new BlockFalling(Material.ground).setBlockName("dirt_oily").setStepSound(Block.soundTypeGravel).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":dirt_oily"); + sand_dirty = new BlockFalling(Material.sand).setBlockName("sand_dirty").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_dirty"); + sand_dirty_red = new BlockFalling(Material.sand).setBlockName("sand_dirty_red").setStepSound(Block.soundTypeSand).setCreativeTab(MainRegistry.blockTab).setHardness(0.5F).setBlockTextureName(RefStrings.MODID + ":sand_dirty_red"); + stone_cracked = new BlockFalling(Material.rock).setBlockName("stone_cracked").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":stone_cracked"); + + sellafield_slaked = new BlockSellafieldSlaked(Material.rock).setBlockName("sellafield_slaked").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":sellafield_slaked"); + sellafield_bedrock = new BlockSellafieldSlaked(Material.rock).setBlockName("sellafield_bedrock").setBlockUnbreakable().setResistance(6000000.0F).setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sellafield_slaked"); + sellafield = new BlockSellafield(Material.rock).setBlockName("sellafield").setStepSound(Block.soundTypeStone).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":sellafield_0"); + ore_sellafield_diamond = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_diamond").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_diamond"); + ore_sellafield_emerald = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_emerald").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_emerald"); + ore_sellafield_uranium_scorched = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_uranium_scorched").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_uranium_scorched"); + ore_sellafield_schrabidium = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_schrabidium").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_schrabidium"); + ore_sellafield_radgem = new BlockSellafieldOre(Material.rock).setBlockName("ore_sellafield_radgem").setStepSound(Block.soundTypeStone).setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setBlockTextureName(RefStrings.MODID + ":ore_overlay_radgem"); + + geysir_water = new BlockGeysir(Material.rock).setBlockName("geysir_water").setStepSound(Block.soundTypeStone).setHardness(5.0F); + geysir_chlorine = new BlockGeysir(Material.rock).setBlockName("geysir_chlorine").setStepSound(Block.soundTypeStone).setHardness(5.0F); + geysir_vapor = new BlockGeysir(Material.rock).setBlockName("geysir_vapor").setStepSound(Block.soundTypeStone).setHardness(5.0F); + geysir_nether = new BlockGeysir(Material.rock).setBlockName("geysir_nether").setLightLevel(1.0F).setStepSound(Block.soundTypeStone).setHardness(2.0F); + + nuke_gadget = new NukeGadget(Material.iron).setBlockName("nuke_gadget").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":theGadget"); + nuke_boy = new NukeBoy(Material.iron).setBlockName("nuke_boy").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":lilBoy"); + nuke_man = new NukeMan(Material.iron).setBlockName("nuke_man").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":fatMan"); + nuke_mike = new NukeMike(Material.iron).setBlockName("nuke_mike").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":ivyMike"); + nuke_tsar = new NukeTsar(Material.iron).setBlockName("nuke_tsar").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":tsarBomba"); + nuke_fleija = new NukeFleija(Material.iron).setBlockName("nuke_fleija").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":fleija"); + nuke_prototype = new NukePrototype(Material.iron).setBlockName("nuke_prototype").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200).setBlockTextureName(RefStrings.MODID + ":prototype"); + nuke_custom = new NukeCustom(Material.iron).setBlockName("nuke_custom").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":custom"); + nuke_solinium = new NukeSolinium(Material.iron).setBlockName("nuke_solinium").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_solinium"); + nuke_n2 = new NukeN2(Material.iron).setBlockName("nuke_n2").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_n2"); + nuke_fstbmb = new NukeBalefire(Material.iron).setBlockName("nuke_fstbmb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":nuke_fstbmb"); + + bomb_multi = new BombMulti(Material.iron).setBlockName("bomb_multi").setCreativeTab(MainRegistry.nukeTab).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":bomb_multi1"); + + flame_war = new BombFlameWar(Material.iron).setBlockName("flame_war").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F).setBlockTextureName(RefStrings.MODID + ":flame_war"); + float_bomb = new BombFloat(Material.iron).setBlockName("float_bomb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); + therm_endo = new BombThermo(Material.iron).setBlockName("therm_endo").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); + therm_exo = new BombThermo(Material.iron).setBlockName("therm_exo").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); + emp_bomb = new BombFloat(Material.iron).setBlockName("emp_bomb").setCreativeTab(MainRegistry.nukeTab).setHardness(5.0F).setResistance(200.0F); + det_cord = new DetCord(Material.iron).setBlockName("det_cord").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_cord"); + det_charge = new ExplosiveCharge(Material.iron).setBlockName("det_charge").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_charge"); + det_nuke = new ExplosiveCharge(Material.iron).setBlockName("det_nuke").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_nuke"); + det_miner = new DetMiner(Material.iron, RefStrings.MODID + ":det_miner_top").setBlockName("det_miner").setCreativeTab(MainRegistry.nukeTab).setHardness(0.1F).setResistance(0.0F).setBlockTextureName(RefStrings.MODID + ":det_miner_side"); + red_barrel = new RedBarrel(Material.iron, true).setBlockName("red_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_red"); + pink_barrel = new RedBarrel(Material.iron, true).setBlockName("pink_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_pink"); + yellow_barrel = new YellowBarrel(Material.iron).setBlockName("yellow_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_yellow"); + vitrified_barrel = new YellowBarrel(Material.iron).setBlockName("vitrified_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_vitrified"); + lox_barrel = new RedBarrel(Material.iron, false).setBlockName("lox_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_lox"); + taint_barrel = new RedBarrel(Material.iron, false).setBlockName("taint_barrel").setCreativeTab(MainRegistry.nukeTab).setHardness(0.5F).setResistance(2.5F).setBlockTextureName(RefStrings.MODID + ":barrel_taint"); + crashed_balefire = new BlockCrashedBomb(Material.iron).setBlockName("crashed_bomb").setCreativeTab(MainRegistry.nukeTab).setBlockUnbreakable().setResistance(6000.0F).setBlockTextureName(RefStrings.MODID + ":crashed_balefire"); + fireworks = new BlockFireworks(Material.iron).setBlockName("fireworks").setCreativeTab(MainRegistry.nukeTab).setResistance(5.0F); + charge_dynamite = new BlockChargeDynamite().setBlockName("charge_dynamite").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); + charge_miner = new BlockChargeMiner().setBlockName("charge_miner").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); + charge_c4 = new BlockChargeC4().setBlockName("charge_c4").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); + charge_semtex = new BlockChargeSemtex().setBlockName("charge_semtex").setCreativeTab(MainRegistry.nukeTab).setResistance(1.0F); + mine_ap = new Landmine(Material.iron, 1.5D, 1D).setBlockName("mine_ap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_ap"); + mine_he = new Landmine(Material.iron, 2D, 5D).setBlockName("mine_he").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_he"); + mine_shrap = new Landmine(Material.iron, 1.5D, 1D).setBlockName("mine_shrap").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_shrap"); + mine_fat = new Landmine(Material.iron, 2.5D, 1D).setBlockName("mine_fat").setCreativeTab(MainRegistry.nukeTab).setHardness(1.0F).setBlockTextureName(RefStrings.MODID + ":mine_fat"); + dynamite = new BlockDynamite().setBlockName("dynamite").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":dynamite"); + tnt = new BlockTNT().setBlockName("tnt_ntm").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":tnt"); + semtex = new BlockSemtex().setBlockName("semtex").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":semtex"); + c4 = new BlockC4().setBlockName("c4").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":c4"); + fissure_bomb = new BlockFissureBomb().setBlockName("fissure_bomb").setStepSound(Block.soundTypeGrass).setCreativeTab(MainRegistry.nukeTab).setHardness(0.0F).setBlockTextureName(RefStrings.MODID + ":fissure_bomb"); + + pump_steam = new MachinePump().setBlockName("pump_steam").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); + pump_electric = new MachinePump().setBlockName("pump_electric").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + heater_firebox = new HeaterFirebox().setBlockName("heater_firebox").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + heater_oven = new HeaterOven().setBlockName("heater_oven").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + heater_oilburner = new HeaterOilburner().setBlockName("heater_oilburner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + heater_electric = new HeaterElectric().setBlockName("heater_electric").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + heater_heatex = new HeaterHeatex().setBlockName("heater_heatex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_ashpit = new MachineAshpit().setBlockName("machine_ashpit").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("stonebrick"); + + furnace_iron = new FurnaceIron().setBlockName("furnace_iron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); + furnace_steel = new FurnaceSteel().setBlockName("furnace_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + furnace_combination = new FurnaceCombination().setBlockName("furnace_combination").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_light_alt"); + machine_stirling = new MachineStirling().setBlockName("machine_stirling").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_stirling_steel = new MachineStirling().setBlockName("machine_stirling_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_stirling_creative = new MachineStirling().setBlockName("machine_stirling_creative").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_sawmill = new MachineSawmill().setBlockName("machine_sawmill").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_strand_caster = new MachineStrandCaster().setBlockName("machine_strand_caster").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + machine_crucible = new MachineCrucible().setBlockName("machine_crucible").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + machine_boiler = new MachineHeatBoiler().setBlockName("machine_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); + machine_industrial_boiler = new MachineHeatBoilerIndustrial().setBlockName("machine_industrial_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + foundry_mold = new FoundryMold().setBlockName("foundry_mold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + foundry_basin = new FoundryBasin().setBlockName("foundry_basin").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + foundry_channel = new FoundryChannel().setBlockName("foundry_channel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + foundry_tank = new FoundryTank().setBlockName("foundry_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + foundry_outlet = new FoundryOutlet().setBlockName("foundry_outlet").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + foundry_slagtap = new FoundrySlagtap().setBlockName("foundry_slagtap").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + slag = new BlockDynamicSlag().setBlockName("slag").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":slag"); + + machine_difurnace_off = new MachineDiFurnace(false).setBlockName("machine_difurnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_difurnace_on = new MachineDiFurnace(true).setBlockName("machine_difurnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + machine_difurnace_extension = new MachineDiFurnaceExtension().setBlockName("machine_difurnace_extension").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_difurnace_rtg_off = new MachineDiFurnaceRTG(false).setBlockName("machine_difurnace_rtg_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_difurnace_rtg_on = new MachineDiFurnaceRTG(true).setBlockName("machine_difurnace_rtg_on").setHardness(5.0F).setResistance(10.0F).setLightLevel(2.0F).setCreativeTab(null); + + machine_centrifuge = new MachineCentrifuge(Material.iron).setBlockName("machine_centrifuge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_gascent = new MachineGasCent(Material.iron).setBlockName("machine_gascent").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_fel = new MachineFEL(Material.iron).setBlockName("machine_fel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_silex = new MachineSILEX(Material.iron).setBlockName("machine_silex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_crystallizer = new MachineCrystallizer(Material.iron).setBlockName("machine_crystallizer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_crystallizer"); + + machine_uf6_tank = new MachineUF6Tank(Material.iron).setBlockName("machine_uf6_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + + machine_puf6_tank = new MachinePuF6Tank(Material.iron).setBlockName("machine_puf6_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + + machine_reactor_breeding = new MachineReactorBreeding(Material.iron).setBlockName("machine_reactor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_reactor"); + + machine_furnace_brick_off = new MachineBrickFurnace(false).setBlockName("machine_furnace_brick_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_furnace_brick_on = new MachineBrickFurnace(true).setBlockName("machine_furnace_brick_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + machine_nuke_furnace_off = new MachineNukeFurnace(false).setBlockName("machine_nuke_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_nuke_furnace_on = new MachineNukeFurnace(true).setBlockName("machine_nuke_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + machine_rtg_furnace_off = new MachineRtgFurnace(false).setBlockName("machine_rtg_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_rtg_furnace_on = new MachineRtgFurnace(true).setBlockName("machine_rtg_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + + machine_industrial_generator = new MachineIGenerator(Material.iron).setBlockName("machine_industrial_generator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("gold_block"); + machine_cyclotron = new MachineCyclotron(Material.iron).setBlockName("machine_cyclotron").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cyclotron"); + machine_exposure_chamber = new MachineExposureChamber(Material.iron).setBlockName("machine_exposure_chamber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_aluminium"); + machine_radgen = new MachineRadGen(Material.iron).setBlockName("machine_radgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_radgen"); + + hadron_plating = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating"); + hadron_plating_blue = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_blue").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_blue"); + hadron_plating_black = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_black").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_black"); + hadron_plating_yellow = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_yellow").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_yellow"); + hadron_plating_striped = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_striped").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_striped"); + hadron_plating_voltz = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_voltz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_voltz"); + hadron_plating_glass = new BlockNTMGlass(0, RefStrings.MODID + ":hadron_plating_glass", Material.iron, true).setStepSound(Block.soundTypeMetal).setBlockName("hadron_plating_glass").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_plating_glass"); + hadron_coil_alloy = new BlockHadronCoil(Material.iron, 10).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_alloy").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_alloy"); + hadron_coil_gold = new BlockHadronCoil(Material.iron, 25).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_gold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_gold"); + hadron_coil_neodymium = new BlockHadronCoil(Material.iron, 50).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_neodymium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_neodymium"); + hadron_coil_magtung = new BlockHadronCoil(Material.iron, 100).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_magtung").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_magtung"); + hadron_coil_schrabidium = new BlockHadronCoil(Material.iron, 250).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_schrabidium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_schrabidium"); + hadron_coil_schrabidate = new BlockHadronCoil(Material.iron, 500).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_schrabidate").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_schrabidate"); + hadron_coil_starmetal = new BlockHadronCoil(Material.iron, 1000).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_starmetal").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_starmetal"); + hadron_coil_chlorophyte = new BlockHadronCoil(Material.iron, 2500).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_chlorophyte").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_chlorophyte"); + hadron_coil_mese = new BlockHadronCoil(Material.iron, 10000).setStepSound(Block.soundTypeMetal).setBlockName("hadron_coil_mese").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_coil_mese"); + hadron_power = new BlockHadronPower(Material.iron, 1000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); + hadron_power_10m = new BlockHadronPower(Material.iron, 10000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_10m").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); + hadron_power_100m = new BlockHadronPower(Material.iron, 100000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_100m").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); + hadron_power_1g = new BlockHadronPower(Material.iron, 1000000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_1g").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); + hadron_power_10g = new BlockHadronPower(Material.iron, 10000000000L).setStepSound(Block.soundTypeMetal).setBlockName("hadron_power_10g").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_power"); + hadron_diode = new BlockHadronDiode(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_diode").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + hadron_analysis = new BlockHadronPlating(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_analysis").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_analysis"); + hadron_analysis_glass = new BlockNTMGlass(0, RefStrings.MODID + ":hadron_analysis_glass", Material.iron, true).setStepSound(Block.soundTypeMetal).setBlockName("hadron_analysis_glass").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_analysis_glass"); + hadron_access = new BlockHadronAccess(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_access").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_access"); + hadron_core = new BlockHadronCore(Material.iron).setStepSound(Block.soundTypeMetal).setBlockName("hadron_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":hadron_core"); + hadron_cooler = new BlockHadronCooler(Material.iron).setBlockName("hadron_cooler").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(10.0F); + + machine_electric_furnace_off = new MachineElectricFurnace(false).setBlockName("machine_electric_furnace_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_electric_furnace_on = new MachineElectricFurnace(true).setBlockName("machine_electric_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + machine_arc_furnace_off = new MachineArcFurnace(false).setBlockName("machine_arc_furnace_off").setHardness(5.0F).setResistance(10.0F); + machine_arc_furnace_on = new MachineArcFurnace(true).setBlockName("machine_arc_furnace_on").setHardness(5.0F).setLightLevel(1.0F).setResistance(10.0F); + machine_arc_furnace = new MachineArcFurnaceLarge().setBlockName("machine_arc_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_microwave = new MachineMicrowave(Material.iron).setBlockName("machine_microwave").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_microwave"); + + machine_battery_potato = new MachineBattery(Material.iron, 10_000).setBlockName("machine_battery_potato").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_battery = new MachineBattery(Material.iron, 1_000_000).setBlockName("machine_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_lithium_battery = new MachineBattery(Material.iron, 50_000_000).setBlockName("machine_lithium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_schrabidium_battery = new MachineBattery(Material.iron, 25_000_000_000L).setBlockName("machine_schrabidium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_dineutronium_battery = new MachineBattery(Material.iron, 1_000_000_000_000L).setBlockName("machine_dineutronium_battery").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_fensu = new MachineFENSU(Material.iron).setBlockName("machine_fensu").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fensu"); + + capacitor_bus = new MachineCapacitorBus(Material.iron).setBlockName("capacitor_bus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + capacitor_copper = new MachineCapacitor(Material.iron, 1_000_000L, "copper").setBlockName("capacitor_copper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_copper"); + capacitor_gold = new MachineCapacitor(Material.iron, 5_000_000L, "gold").setBlockName("capacitor_gold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName("gold_block"); + capacitor_niobium = new MachineCapacitor(Material.iron, 25_000_000L, "niobium").setBlockName("capacitor_niobium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_niobium"); + capacitor_tantalium = new MachineCapacitor(Material.iron, 150_000_000L, "tantalium").setBlockName("capacitor_tantalium").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_tantalium"); + capacitor_schrabidate = new MachineCapacitor(Material.iron, 50_000_000_000L, "schrabidate").setBlockName("capacitor_schrabidate").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_schrabidate"); + + machine_wood_burner = new MachineWoodBurner(Material.iron).setBlockName("machine_wood_burner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_diesel = new MachineDiesel().setBlockName("machine_diesel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_combustion_engine = new MachineCombustionEngine().setBlockName("machine_combustion_engine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + machine_shredder = new MachineShredder(Material.iron).setBlockName("machine_shredder").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + + machine_teleporter = new MachineTeleporter(Material.iron).setBlockName("machine_teleporter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + teleanchor = new MachineTeleanchor().setBlockName("teleanchor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + field_disturber = new MachineFieldDisturber().setBlockName("field_disturber").setHardness(5.0F).setResistance(200.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":field_disturber"); + + machine_rtg_grey = new MachineRTG(Material.iron).setBlockName("machine_rtg_grey").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg"); + machine_amgen = new MachineAmgen(Material.iron).setBlockName("machine_amgen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_geo = new MachineAmgen(Material.iron).setBlockName("machine_geo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_minirtg = new MachineMiniRTG(Material.iron).setBlockName("machine_minirtg").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg_cell"); + machine_powerrtg = new MachineMiniRTG(Material.iron).setBlockName("machine_powerrtg").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtg_polonium"); + machine_radiolysis = new MachineRadiolysis(Material.iron).setBlockName("machine_radiolysis").setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + machine_hephaestus = new MachineHephaestus(Material.iron).setBlockName("machine_hephaestus").setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + + red_wire_coated = new WireCoated(Material.iron).setBlockName("red_wire_coated").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_wire_coated"); + red_cable = new BlockCable(Material.iron).setBlockName("red_cable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_neo"); + red_cable_classic = new BlockCable(Material.iron).setBlockName("red_cable_classic").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_cable_classic"); + red_cable_paintable = new BlockCablePaintable().setBlockName("red_cable_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + red_cable_gauge = new BlockCableGauge().setBlockName("red_cable_gauge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + red_connector = new ConnectorRedWire(Material.iron).setBlockName("red_connector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_connector"); + red_pylon = new PylonRedWire(Material.iron).setBlockName("red_pylon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); + red_pylon_medium_wood = new PylonMedium(Material.wood).setBlockName("red_pylon_medium_wood").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); + red_pylon_medium_wood_transformer = new PylonMedium(Material.wood).setBlockName("red_pylon_medium_wood_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); + red_pylon_medium_steel = new PylonMedium(Material.iron).setBlockName("red_pylon_medium_steel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); + red_pylon_medium_steel_transformer = new PylonMedium(Material.iron).setBlockName("red_pylon_medium_steel_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon"); + red_pylon_large = new PylonLarge(Material.iron).setBlockName("red_pylon_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":red_pylon_large"); + substation = new Substation(Material.iron).setBlockName("substation").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":substation"); + cable_switch = new CableSwitch(Material.iron).setBlockName("cable_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + cable_detector = new CableDetector(Material.iron).setBlockName("cable_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + cable_diode = new CableDiode(Material.iron).setBlockName("cable_diode").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":cable_diode"); + machine_detector = new PowerDetector(Material.iron).setBlockName("machine_detector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_detector_off"); + fluid_duct_neo = new FluidDuctStandard(Material.iron).setBlockName("fluid_duct_neo").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pipe_neo"); + fluid_duct_box = new FluidDuctBox(Material.iron).setBlockName("fluid_duct_box").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_box"); + fluid_duct_exhaust = new FluidDuctBoxExhaust(Material.iron).setBlockName("fluid_duct_exhaust").setStepSound(ModSoundTypes.pipe).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fluid_duct_box"); + fluid_duct_paintable = new FluidDuctPaintable().setBlockName("fluid_duct_paintable").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + fluid_duct_gauge = new FluidDuctGauge().setBlockName("fluid_duct_gauge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + fluid_valve = new FluidValve(Material.iron).setBlockName("fluid_valve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + fluid_switch = new FluidSwitch(Material.iron).setBlockName("fluid_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_drain = new MachineDrain(Material.iron).setBlockName("machine_drain").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); + radio_torch_sender = new RadioTorchSender().setBlockName("radio_torch_sender").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + radio_torch_receiver = new RadioTorchReceiver().setBlockName("radio_torch_receiver").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + radio_torch_counter = new RadioTorchCounter().setBlockName("radio_torch_counter").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rtty_counter"); + radio_torch_logic = new RadioTorchLogic().setBlockName("radio_torch_logic").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + radio_telex = new RadioTelex().setBlockName("radio_telex").setHardness(3F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radio_telex"); + + conveyor = new BlockConveyor().setBlockName("conveyor").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); + conveyor_express = new BlockConveyorExpress().setBlockName("conveyor_express").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_express"); + //conveyor_classic = new BlockConveyorClassic().setBlockName("conveyor_classic").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); + conveyor_double = new BlockConveyorDouble().setBlockName("conveyor_double").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_double"); + conveyor_triple = new BlockConveyorTriple().setBlockName("conveyor_triple").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor_triple"); + conveyor_chute = new BlockConveyorChute().setBlockName("conveyor_chute").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); + conveyor_lift = new BlockConveyorLift().setBlockName("conveyor_lift").setHardness(2.0F).setResistance(2.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":conveyor"); + crane_extractor = new CraneExtractor().setBlockName("crane_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_inserter = new CraneInserter().setBlockName("crane_inserter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_grabber = new CraneGrabber().setBlockName("crane_grabber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_router = new CraneRouter().setBlockName("crane_router").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_boxer = new CraneBoxer().setBlockName("crane_boxer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_unboxer = new CraneUnboxer().setBlockName("crane_unboxer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crane_splitter = new CraneSplitter().setBlockName("crane_splitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":crane_side"); + crane_partitioner = new CranePartitioner().setBlockName("crane_partitioner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":crane_partitioner_side"); + fan = new MachineFan().setBlockName("fan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + piston_inserter = new PistonInserter().setBlockName("piston_inserter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + drone_waypoint = new DroneWaypoint().setBlockName("drone_waypoint").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_waypoint"); + drone_crate = new DroneCrate().setBlockName("drone_crate").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + drone_waypoint_request = new DroneWaypointRequest().setBlockName("drone_waypoint_request").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_waypoint_request"); + drone_dock = new DroneDock().setBlockName("drone_dock").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_dock"); + drone_crate_provider = new DroneDock().setBlockName("drone_crate_provider").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_crate_provider"); + drone_crate_requester = new DroneDock().setBlockName("drone_crate_requester").setHardness(0.1F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":drone_crate_requester"); + + chain = new BlockChain(Material.iron).setBlockName("dungeon_chain").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":chain"); + + ladder_sturdy = new BlockNTMLadder().setBlockName("ladder_sturdy").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_sturdy"); + ladder_iron = new BlockNTMLadder().setBlockName("ladder_iron").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_iron"); + ladder_gold = new BlockNTMLadder().setBlockName("ladder_gold").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_gold"); + ladder_aluminium = new BlockNTMLadder().setBlockName("ladder_aluminium").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_aluminium"); + ladder_copper = new BlockNTMLadder().setBlockName("ladder_copper").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_copper"); + ladder_titanium = new BlockNTMLadder().setBlockName("ladder_titanium").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_titanium"); + ladder_lead = new BlockNTMLadder().setBlockName("ladder_lead").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_lead"); + ladder_cobalt = new BlockNTMLadder().setBlockName("ladder_cobalt").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_cobalt"); + ladder_steel = new BlockNTMLadder().setBlockName("ladder_steel").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_steel"); + ladder_tungsten = new BlockNTMLadder().setBlockName("ladder_tungsten").setHardness(0.25F).setResistance(2.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":ladder_tungsten"); + + barrel_plastic = new BlockFluidBarrel(Material.iron, 12000).setBlockName("barrel_plastic").setStepSound(Block.soundTypeStone).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_plastic"); + barrel_corroded = new BlockFluidBarrel(Material.iron, 6000).setBlockName("barrel_corroded").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_corroded"); + barrel_iron = new BlockFluidBarrel(Material.iron, 8000).setBlockName("barrel_iron").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_iron"); + barrel_steel = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_steel").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_steel"); + barrel_tcalloy = new BlockFluidBarrel(Material.iron, 24000).setBlockName("barrel_tcalloy").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_tcalloy"); + barrel_antimatter = new BlockFluidBarrel(Material.iron, 16000).setBlockName("barrel_antimatter").setStepSound(Block.soundTypeMetal).setHardness(2.0F).setResistance(5.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":barrel_antimatter"); + + machine_transformer = new MachineTransformer(Material.iron, 10000L, 1).setBlockName("machine_transformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer_iron"); + machine_transformer_dnt = new MachineTransformer(Material.iron, 1000000000000000L, 1).setBlockName("machine_transformer_dnt").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer"); + machine_transformer_20 = new MachineTransformer(Material.iron, 10000L, 20).setBlockName("machine_transformer_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer_iron"); + machine_transformer_dnt_20 = new MachineTransformer(Material.iron, 1000000000000000L, 20).setBlockName("machine_transformer_dnt_20").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_transformer"); + + machine_satlinker = new MachineSatLinker(Material.iron).setBlockName("machine_satlinker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_satlinker_side"); + machine_keyforge = new MachineKeyForge(Material.iron).setBlockName("machine_keyforge").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":machine_keyforge_side"); + machine_armor_table = new BlockArmorTable(Material.iron).setBlockName("machine_armor_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab); + + machine_solar_boiler = new MachineSolarBoiler(Material.iron).setBlockName("machine_solar_boiler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_solar_boiler"); + solar_mirror = new SolarMirror(Material.iron).setBlockName("solar_mirror").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":solar_mirror"); + + struct_launcher = new BlockGeneric(Material.iron).setBlockName("struct_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher"); + struct_scaffold = new BlockGeneric(Material.iron).setBlockName("struct_scaffold").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_scaffold"); + struct_launcher_core = new BlockStruct(Material.iron).setBlockName("struct_launcher_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher_core"); + struct_launcher_core_large = new BlockStruct(Material.iron).setBlockName("struct_launcher_core_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_launcher_core_large"); + struct_soyuz_core = new BlockSoyuzStruct(Material.iron).setBlockName("struct_soyuz_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":struct_soyuz_core"); + struct_iter_core = new BlockITERStruct(Material.iron).setBlockName("struct_iter_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_iter_core"); + struct_plasma_core = new BlockPlasmaStruct(Material.iron).setBlockName("struct_plasma_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_plasma_core"); + struct_watz_core = new BlockWatzStruct(Material.iron).setBlockName("struct_watz_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_watz_core"); + struct_icf_core = new BlockICFStruct(Material.iron).setBlockName("struct_icf_core").setLightLevel(1F).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":struct_icf_core"); + + factory_titanium_hull = new BlockGeneric(Material.iron).setBlockName("factory_titanium_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); + factory_titanium_furnace = new FactoryHatch(Material.iron).setBlockName("factory_titanium_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_furnace"); + factory_titanium_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_titanium_conductor").setBlockName("factory_titanium_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_titanium_hull"); + factory_advanced_hull = new BlockGeneric(Material.iron).setBlockName("factory_advanced_hull").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); + factory_advanced_furnace = new FactoryHatch(Material.iron).setBlockName("factory_advanced_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_furnace"); + factory_advanced_conductor = new BlockPillar(Material.iron, RefStrings.MODID + ":factory_advanced_conductor").setBlockName("factory_advanced_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":factory_advanced_hull"); + + cm_block = new BlockCM(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_block").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_block"); + cm_sheet = new BlockCM(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_sheet").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_sheet"); + cm_engine = new BlockCM(Material.iron, EnumCMEngines.class, true, true).setBlockName("cm_engine").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_engine"); + cm_tank = new BlockCMGlass(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_tank").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_tank"); + cm_circuit = new BlockCM(Material.iron, EnumCMCircuit.class, true, true).setBlockName("cm_circuit").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_circuit"); + cm_port = new BlockCMPort(Material.iron, EnumCMMaterials.class, true, true).setBlockName("cm_port").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_port"); + cm_flux = new BlockCMFlux(Material.iron, RefStrings.MODID + ":cm_flux_top").setBlockName("cm_flux").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_flux_side"); + cm_heat = new BlockCMHeat(Material.iron, RefStrings.MODID +":cm_heat_top").setBlockName("cm_heat").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":cm_heat_side"); + custom_machine = new BlockCustomMachine().setBlockName("custom_machine").setCreativeTab(MainRegistry.machineTab).setLightLevel(1F).setHardness(5.0F).setResistance(10.0F); + cm_anchor = new BlockCMAnchor().setBlockName("custom_machine_anchor").setCreativeTab(MainRegistry.machineTab).setHardness(5.0F).setResistance(10.0F); + + pwr_fuel = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_fuel_top").setBlockName("pwr_fuel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_fuel_side"); + pwr_control = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_control_top").setBlockName("pwr_control").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_control_side"); + pwr_channel = new BlockPillarPWR(Material.iron, RefStrings.MODID + ":pwr_channel_top").setBlockName("pwr_channel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_channel_side"); + pwr_heatex = new BlockGenericPWR(Material.iron).setBlockName("pwr_heatex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_heatex"); + pwr_heatsink = new BlockGenericPWR(Material.iron).setBlockName("pwr_heatsink").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_heatsink"); + pwr_neutron_source = new BlockGenericPWR(Material.iron).setBlockName("pwr_neutron_source").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_neutron_source"); + pwr_reflector = new BlockGenericPWR(Material.iron).setBlockName("pwr_reflector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_reflector"); + pwr_casing = new BlockGenericPWR(Material.iron).setBlockName("pwr_casing").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_casing"); + pwr_port = new BlockGenericPWR(Material.iron).setBlockName("pwr_port").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_port"); + pwr_controller = new MachinePWRController(Material.iron).setBlockName("pwr_controller").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":pwr_casing_blank"); + pwr_block = new BlockPWR(Material.iron).setBlockName("pwr_block").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pwr_block"); + + fusion_conductor = new BlockToolConversionPillar(Material.iron).addVariant("_welded").setBlockName("fusion_conductor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_conductor"); + fusion_center = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_center_top_alt").setBlockName("fusion_center").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_center_side_alt"); + fusion_motor = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_motor_top_alt").setBlockName("fusion_motor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_motor_side_alt"); + fusion_heater = new BlockPillar(Material.iron, RefStrings.MODID + ":fusion_heater_top").setBlockName("fusion_heater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_heater_side"); + fusion_hatch = new FusionHatch(Material.iron).setBlockName("fusion_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fusion_hatch"); + plasma = new BlockPlasma(Material.iron).setBlockName("plasma").setHardness(5.0F).setResistance(6000.0F).setLightLevel(1.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma"); + iter = new MachineITER().setBlockName("iter").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":iter"); + plasma_heater = new MachinePlasmaHeater().setBlockName("plasma_heater").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":plasma_heater"); + + machine_icf_press = new MachineICFPress().setBlockName("machine_icf_press").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + icf = new MachineICF().setBlockName("icf").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + icf_component = new BlockICFComponent().setBlockName("icf_component").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":icf_component"); + icf_controller = new MachineICFController().setBlockName("icf_controller").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":icf_casing"); + icf_laser_component = new BlockICFLaserComponent().setBlockName("icf_laser_component").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.machineTab); + icf_block = new BlockICF(Material.iron).setBlockName("icf_block").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":icf_block"); + + watz_element = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_element_top").setBlockName("watz_element").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_element_side"); + watz_cooler = new BlockPillar(Material.iron, RefStrings.MODID + ":watz_cooler_top").setBlockName("watz_cooler").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_cooler_side"); + watz_end = new BlockToolConversion(Material.iron).addVariant("_bolted").setBlockName("watz_end").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":watz_casing"); + watz = new Watz().setBlockName("watz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + watz_pump = new WatzPump().setBlockName("watz_pump").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + balefire = new Balefire().setBlockName("balefire").setHardness(0.0F).setLightLevel(1.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":balefire"); + fire_digamma = new DigammaFlame().setBlockName("fire_digamma").setHardness(0.0F).setResistance(150F).setLightLevel(1.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":fire_digamma"); + digamma_matter = new DigammaMatter().setBlockName("digamma_matter").setBlockUnbreakable().setResistance(18000000).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":digamma_matter"); + + machine_converter_he_rf = new BlockConverterHeRf(Material.iron).setBlockName("machine_converter_he_rf").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_converter_he_rf"); + machine_converter_rf_he = new BlockConverterRfHe(Material.iron).setBlockName("machine_converter_rf_he").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_converter_rf_he"); + + dfc_emitter = new CoreComponent(Material.iron).setBlockName("dfc_emitter").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_emitter"); + dfc_injector = new CoreComponent(Material.iron).setBlockName("dfc_injector").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_injector"); + dfc_receiver = new CoreComponent(Material.iron).setBlockName("dfc_receiver").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_receiver"); + dfc_stabilizer = new CoreComponent(Material.iron).setBlockName("dfc_stabilizer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_stabilizer"); + dfc_core = new CoreCore(Material.iron).setBlockName("dfc_core").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":dfc_core"); + + seal_frame = new BlockGeneric(Material.iron).setBlockName("seal_frame").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":seal_frame"); + seal_controller = new BlockSeal(Material.iron).setBlockName("seal_controller").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab); + seal_hatch = new BlockHatch(Material.iron).setBlockName("seal_hatch").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":seal_hatch_3"); + + vault_door = new VaultDoor(Material.iron).setBlockName("vault_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vault_door"); + blast_door = new BlastDoor(Material.iron).setBlockName("blast_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":blast_door"); + + sliding_blast_door = new BlockDoorGeneric(Material.iron, DoorDecl.SLIDE_DOOR).setBlockName("sliding_blast_door").setHardness(10.0F).setResistance(750.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":sliding_blast_door"); + fire_door = new BlockDoorGeneric(Material.iron, DoorDecl.FIRE_DOOR).setBlockName("fire_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":fire_door"); + transition_seal = new BlockDoorGeneric(Material.iron, DoorDecl.TRANSITION_SEAL).setBlockName("transition_seal").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transition_seal"); + silo_hatch = new BlockDoorGeneric(Material.iron, DoorDecl.SILO_HATCH).setBlockName("silo_hatch").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + silo_hatch_large = new BlockDoorGeneric(Material.iron, DoorDecl.SILO_HATCH_LARGE).setBlockName("silo_hatch_large").setHardness(10.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + secure_access_door = new BlockDoorGeneric(Material.iron, DoorDecl.SECURE_ACCESS_DOOR).setBlockName("secure_access_door").setHardness(20.0F).setResistance(2_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + large_vehicle_door = new BlockDoorGeneric(Material.iron, DoorDecl.LARGE_VEHICLE_DOOR).setBlockName("large_vehicle_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + qe_containment = new BlockDoorGeneric(Material.iron, DoorDecl.QE_CONTAINMENT).setBlockName("qe_containment").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + qe_sliding_door = new BlockDoorGeneric(Material.iron, DoorDecl.QE_SLIDING).setBlockName("qe_sliding_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + round_airlock_door = new BlockDoorGeneric(Material.iron, DoorDecl.ROUND_AIRLOCK_DOOR).setBlockName("round_airlock_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + sliding_seal_door = new BlockDoorGeneric(Material.iron, DoorDecl.SLIDING_SEAL_DOOR).setBlockName("sliding_seal_door").setHardness(10.0F).setResistance(1_000.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + water_door = new BlockDoorGeneric(Material.iron, DoorDecl.WATER_DOOR).setBlockName("water_door").setHardness(5.0F).setResistance(50.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + door_metal = new BlockModDoor(Material.iron).setBlockName("door_metal").setHardness(5.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":door_metal"); + door_office = new BlockModDoor(Material.iron).setBlockName("door_office").setHardness(10.0F).setResistance(10.0F).setBlockTextureName(RefStrings.MODID + ":door_office"); + door_bunker = new BlockModDoor(Material.iron).setBlockName("door_bunker").setHardness(10.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":door_bunker"); + door_red = new BlockModDoor(Material.iron).setBlockName("door_red").setHardness(10.0F).setResistance(100.0F).setBlockTextureName(RefStrings.MODID + ":door_red"); + + barbed_wire = new BarbedWire(Material.iron).setBlockName("barbed_wire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_model"); + barbed_wire_fire = new BarbedWire(Material.iron).setBlockName("barbed_wire_fire").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_fire_model"); + barbed_wire_poison = new BarbedWire(Material.iron).setBlockName("barbed_wire_poison").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_poison_model"); + barbed_wire_acid = new BarbedWire(Material.iron).setBlockName("barbed_wire_acid").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_acid_model"); + barbed_wire_wither = new BarbedWire(Material.iron).setBlockName("barbed_wire_wither").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_wither_model"); + barbed_wire_ultradeath = new BarbedWire(Material.iron).setBlockName("barbed_wire_ultradeath").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":barbed_wire_ultradeath_model"); + spikes = new Spikes(Material.iron).setBlockName("spikes").setHardness(2.5F).setResistance(5.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":spikes"); + + charger = new Charger(Material.iron).setBlockName("charger").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + tesla = new MachineTesla(Material.iron).setBlockName("tesla").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":tesla"); + + launch_pad = new LaunchPad(Material.iron).setBlockName("launch_pad").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":launch_pad"); + launch_pad_rusted = new LaunchPadRusted(Material.iron).setBlockName("launch_pad_rusted").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); + launch_pad_large = new LaunchPadLarge(Material.iron).setBlockName("launch_pad_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_radar = new MachineRadar(Material.iron).setBlockName("machine_radar").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_radar"); + machine_radar_large = new MachineRadarLarge(Material.iron).setBlockName("machine_radar_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + radar_screen = new MachineRadarScreen(Material.iron).setBlockName("radar_screen").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + machine_missile_assembly = new MachineMissileAssembly(Material.iron).setBlockName("machine_missile_assembly").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_missile_assembly"); + compact_launcher = new CompactLauncher(Material.iron).setBlockName("compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":compact_launcher"); + launch_table = new LaunchTable(Material.iron).setBlockName("launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":launch_table"); + soyuz_launcher = new SoyuzLauncher(Material.iron).setBlockName("soyuz_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":soyuz_launcher"); + + sat_mapper = new DecoBlock(Material.iron).setBlockName("sat_mapper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_mapper"); + sat_radar = new DecoBlock(Material.iron).setBlockName("sat_radar").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_radar"); + sat_scanner = new DecoBlock(Material.iron).setBlockName("sat_scanner").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_scanner"); + sat_laser = new DecoBlock(Material.iron).setBlockName("sat_laser").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_laser"); + sat_foeq = new DecoBlock(Material.iron).setBlockName("sat_foeq").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_foeq"); + sat_resonator = new DecoBlock(Material.iron).setBlockName("sat_resonator").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":sat_resonator"); + + sat_dock = new MachineSatDock(Material.iron).setBlockName("sat_dock").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":sat_dock"); + soyuz_capsule = new SoyuzCapsule(Material.iron).setBlockName("soyuz_capsule").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":soyuz_capsule"); + + turret_chekhov = new TurretChekhov(Material.iron).setBlockName("turret_chekhov").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_friendly = new TurretFriendly(Material.iron).setBlockName("turret_friendly").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_jeremy = new TurretJeremy(Material.iron).setBlockName("turret_jeremy").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_tauon = new TurretTauon(Material.iron).setBlockName("turret_tauon").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_richard = new TurretRichard(Material.iron).setBlockName("turret_richard").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_howard = new TurretHoward(Material.iron).setBlockName("turret_howard").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_howard_damaged = new TurretHowardDamaged(Material.iron).setBlockName("turret_howard_damaged").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); + turret_maxwell = new TurretMaxwell(Material.iron).setBlockName("turret_maxwell").setHardness(5.0F).setResistance(60.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_fritz = new TurretFritz(Material.iron).setBlockName("turret_fritz").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_arty = new TurretArty(Material.iron).setBlockName("turret_arty").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_himars = new TurretHIMARS(Material.iron).setBlockName("turret_himars").setHardness(5.0F).setResistance(600.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_sentry = new TurretSentry().setBlockName("turret_sentry").setHardness(5.0F).setResistance(5.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + turret_sentry_damaged = new TurretSentryDamaged().setBlockName("turret_sentry_damaged").setHardness(5.0F).setResistance(5.0F).setCreativeTab(MainRegistry.weaponTab).setBlockTextureName(RefStrings.MODID + ":block_rust"); + + rbmk_rod = new RBMKRod(false).setBlockName("rbmk_rod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element"); + rbmk_rod_mod = new RBMKRod(true).setBlockName("rbmk_rod_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_mod"); + rbmk_rod_reasim = new RBMKRodReaSim(false).setBlockName("rbmk_rod_reasim").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_reasim"); + rbmk_rod_reasim_mod = new RBMKRodReaSim(true).setBlockName("rbmk_rod_reasim_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_element_reasim_mod"); + rbmk_control = new RBMKControl(false).setBlockName("rbmk_control").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control"); + rbmk_control_mod = new RBMKControl(true).setBlockName("rbmk_control_mod").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control_mod"); + rbmk_control_auto = new RBMKControlAuto().setBlockName("rbmk_control_auto").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_control_auto"); + rbmk_blank = new RBMKBlank().setBlockName("rbmk_blank").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_blank"); + rbmk_boiler = new RBMKBoiler().setBlockName("rbmk_boiler").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_boiler"); + rbmk_reflector = new RBMKReflector().setBlockName("rbmk_reflector").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_reflector"); + rbmk_absorber = new RBMKAbsorber().setBlockName("rbmk_absorber").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_absorber"); + rbmk_moderator = new RBMKModerator().setBlockName("rbmk_moderator").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_moderator"); + rbmk_outgasser = new RBMKOutgasser().setBlockName("rbmk_outgasser").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_outgasser"); + rbmk_storage = new RBMKStorage().setBlockName("rbmk_storage").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_storage"); + rbmk_cooler = new RBMKCooler().setBlockName("rbmk_cooler").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_cooler"); + rbmk_heater = new RBMKHeater().setBlockName("rbmk_heater").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_heater"); + rbmk_console = new RBMKConsole().setBlockName("rbmk_console").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_console"); + rbmk_crane_console = new RBMKCraneConsole().setBlockName("rbmk_crane_console").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_crane_console"); + rbmk_loader = new RBMKLoader(Material.iron).setBlockName("rbmk_loader").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_loader"); + rbmk_steam_inlet = new RBMKInlet(Material.iron).setBlockName("rbmk_steam_inlet").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_steam_inlet"); + rbmk_steam_outlet = new RBMKOutlet(Material.iron).setBlockName("rbmk_steam_outlet").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(60.0F).setBlockTextureName(RefStrings.MODID + ":rbmk_steam_outlet"); + pribris = new RBMKDebris().setBlockName("pribris").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris"); + pribris_burning = new RBMKDebrisBurning().setBlockName("pribris_burning").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_burning"); + pribris_radiating = new RBMKDebrisRadiating().setBlockName("pribris_radiating").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_radiating"); + pribris_digamma = new RBMKDebrisDigamma().setBlockName("pribris_digamma").setCreativeTab(MainRegistry.machineTab).setHardness(50.0F).setResistance(600.0F).setBlockTextureName(RefStrings.MODID + ":rbmk/rbmk_debris_digamma"); + + book_guide = new Guide(Material.iron).setBlockName("book_guide").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.nukeTab); + + rail_wood = new RailGeneric().setMaxSpeed(0.2F).setBlockName("rail_wood").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_wood"); + rail_narrow = new RailGeneric().setBlockName("rail_narrow").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_narrow"); + rail_highspeed = new RailGeneric().setMaxSpeed(1F).setFlexible(false).setBlockName("rail_highspeed").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_highspeed"); + rail_booster = new RailBooster().setBlockName("rail_booster").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_booster"); + rail_narrow_straight = new RailNarrowStraight().setBlockName("rail_narrow_straight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rail_narrow_neo"); + rail_narrow_curve = new RailNarrowCurve().setBlockName("rail_narrow_curve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":rail_narrow_neo"); + rail_large_straight = new RailStandardStraight().setBlockName("rail_large_straight").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_straight_short = new RailStandardStraightShort().setBlockName("rail_large_straight_short").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_curve = new RailStandardCurveBase().setBlockName("rail_large_curve").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_curve_7 = new RailStandardCurveWide7().setBlockName("rail_large_curve_7").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_curve_9 = new RailStandardCurveWide9().setBlockName("rail_large_curve_9").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_ramp = new RailStandardRamp().setBlockName("rail_large_ramp").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_buffer = new RailStandardBuffer().setBlockName("rail_large_buffer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_buffer"); + rail_large_switch = new RailStandardSwitch().setBlockName("rail_large_switch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + rail_large_switch_flipped = new RailStandardSwitchFlipped().setBlockName("rail_large_switch_flipped").setHardness(5.0F).setResistance(10.0F).setCreativeTab(CreativeTabs.tabTransport).setBlockTextureName(RefStrings.MODID + ":rail_standard_straight"); + + crate = new BlockCrate(Material.wood).setBlockName("crate").setStepSound(Block.soundTypeWood).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate"); + crate_weapon = new BlockCrate(Material.wood).setBlockName("crate_weapon").setStepSound(Block.soundTypeWood).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_weapon"); + crate_lead = new BlockCrate(Material.iron).setBlockName("crate_lead").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_lead"); + crate_metal = new BlockCrate(Material.iron).setBlockName("crate_metal").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_metal"); + crate_red = new BlockCrate(Material.iron).setBlockName("crate_red").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crate_red"); + crate_can = new BlockCanCrate(Material.wood).setBlockName("crate_can").setStepSound(Block.soundTypeWood).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_can"); + crate_ammo = new BlockAmmoCrate(Material.iron).setBlockName("crate_ammo").setStepSound(Block.soundTypeMetal).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab); + crate_jungle = new BlockJungleCrate(Material.rock).setBlockName("crate_jungle").setStepSound(Block.soundTypeStone).setHardness(1.0F).setResistance(2.5F).setCreativeTab(MainRegistry.consumableTab).setBlockTextureName(RefStrings.MODID + ":crate_jungle"); + crate_iron = new BlockStorageCrate(Material.iron).setBlockName("crate_iron").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crate_steel = new BlockStorageCrate(Material.iron).setBlockName("crate_steel").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crate_desh = new BlockStorageCrate(Material.iron).setBlockName("crate_desh").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + crate_tungsten = new BlockStorageCrate(Material.iron).setBlockName("crate_tungsten").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(300.0F).setCreativeTab(MainRegistry.machineTab); + crate_template = new BlockStorageCrate(Material.iron).setBlockName("crate_template").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(300.0F).setCreativeTab(MainRegistry.machineTab); + safe = new BlockStorageCrate(Material.iron).setBlockName("safe").setStepSound(Block.soundTypeMetal).setHardness(7.5F).setResistance(10000.0F).setCreativeTab(MainRegistry.machineTab); + mass_storage = new BlockMassStorage().setBlockName("mass_storage").setStepSound(Block.soundTypeMetal).setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + + boxcar = new DecoBlock(Material.iron).setBlockName("boxcar").setStepSound(Block.soundTypeMetal).setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":boxcar"); + boat = new DecoBlock(Material.iron).setBlockName("boat").setStepSound(Block.soundTypeMetal).setHardness(10.0F).setResistance(10.0F).setCreativeTab(MainRegistry.blockTab).setBlockTextureName(RefStrings.MODID + ":boat"); + + machine_well = new MachineOilWell().setBlockName("machine_well").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_well"); + machine_pumpjack = new MachinePumpjack().setBlockName("machine_pumpjack").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_pumpjack"); + machine_fracking_tower = new MachineFrackingTower().setBlockName("machine_fracking_tower").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + oil_pipe = new BlockNoDrop(Material.iron).setBlockName("oil_pipe").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":oil_pipe"); + machine_flare = new MachineGasFlare(Material.iron).setBlockName("machine_flare").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + chimney_brick = new MachineChimneyBrick(Material.iron).setBlockName("chimney_brick").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_fire"); + chimney_industrial = new MachineChimneyIndustrial(Material.iron).setBlockName("chimney_industrial").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete_colored_ext.machine"); + machine_refinery = new MachineRefinery(Material.iron).setBlockName("machine_refinery").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_refinery"); + machine_vacuum_distill = new MachineVacuumDistill(Material.iron).setBlockName("machine_vacuum_distill").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_fraction_tower = new MachineFractionTower(Material.iron).setBlockName("machine_fraction_tower").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + fraction_spacer = new FractionSpacer(Material.iron).setBlockName("fraction_spacer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_catalytic_cracker = new MachineCatalyticCracker(Material.iron).setBlockName("machine_catalytic_cracker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_catalytic_reformer = new MachineCatalyticReformer(Material.iron).setBlockName("machine_catalytic_reformer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_hydrotreater = new MachineHydrotreater(Material.iron).setBlockName("machine_hydrotreater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_coker = new MachineCoker(Material.iron).setBlockName("machine_coker").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_pyrooven = new MachinePyroOven(Material.iron).setBlockName("machine_pyrooven").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_autosaw = new MachineAutosaw().setBlockName("machine_autosaw").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_excavator = new MachineExcavator().setBlockName("machine_excavator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_ore_slopper = new MachineOreSlopper().setBlockName("machine_ore_slopper").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_mining_laser = new MachineMiningLaser(Material.iron).setBlockName("machine_mining_laser").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_mining_laser"); + barricade = new BlockNoDrop(Material.sand).setBlockName("barricade").setHardness(1.0F).setResistance(2.5F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":barricade"); + machine_assembler = new MachineAssembler(Material.iron).setBlockName("machine_assembler").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_assembler"); + machine_assemfac = new MachineAssemfac(Material.iron).setBlockName("machine_assemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_arc_welder = new MachineArcWelder(Material.iron).setBlockName("machine_arc_welder").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_soldering_station = new MachineSolderingStation(Material.iron).setBlockName("machine_soldering_station").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_chemplant = new MachineChemplant(Material.iron).setBlockName("machine_chemplant").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_chemfac = new MachineChemfac(Material.iron).setBlockName("machine_chemfac").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_mixer = new MachineMixer(Material.iron).setBlockName("machine_mixer").setHardness(5.0F).setResistance(30.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_fluidtank = new MachineFluidTank(Material.iron).setBlockName("machine_fluidtank").setHardness(5.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_fluidtank"); + machine_bat9000 = new MachineBigAssTank9000(Material.iron).setBlockName("machine_bat9000").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_orbus = new MachineOrbus(Material.iron).setBlockName("machine_orbus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_turbofan = new MachineTurbofan(Material.iron).setBlockName("machine_turbofan").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_turbofan"); + machine_turbinegas = new MachineTurbineGas(Material.iron).setBlockName("machine_turbinegas").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_lpw2 = new MachineLPW2().setBlockName("machine_lpw2").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + press_preheater = new BlockBase(Material.iron).setBlockName("press_preheater").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":press_preheater"); + machine_press = new MachinePress(Material.iron).setBlockName("machine_press").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_press"); + machine_epress = new MachineEPress(Material.iron).setBlockName("machine_epress").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_epress"); + machine_conveyor_press = new MachineConveyorPress(Material.iron).setBlockName("machine_conveyor_press").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + reactor_research = new ReactorResearch(Material.iron).setBlockName("machine_reactor_small").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_reactor_small"); + reactor_zirnox = new ReactorZirnox(Material.iron).setBlockName("machine_zirnox").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + zirnox_destroyed = new ZirnoxDestroyed(Material.iron).setBlockName("zirnox_destroyed").setHardness(100.0F).setResistance(800.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_controller = new MachineReactorControl(Material.iron).setBlockName("machine_controller").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null); + + machine_boiler_off = new MachineBoiler(false).setBlockName("machine_boiler_off").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":machine_boiler_off"); + + machine_steam_engine = new MachineSteamEngine().setBlockName("machine_steam_engine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_turbine = new MachineTurbine(Material.iron).setBlockName("machine_turbine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_turbine"); + machine_large_turbine = new MachineLargeTurbine(Material.iron).setBlockName("machine_large_turbine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_large_turbine"); + machine_chungus = new MachineChungus(Material.iron).setBlockName("machine_chungus").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_chungus"); + machine_condenser = new MachineCondenser(Material.iron).setBlockName("machine_condenser").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":condenser"); + machine_tower_small = new MachineTowerSmall(Material.iron).setBlockName("machine_tower_small").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":brick_concrete"); + machine_tower_large = new MachineTowerLarge(Material.iron).setBlockName("machine_tower_large").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); + machine_condenser_powered = new MachineCondenserPowered(Material.iron).setBlockName("machine_condenser_powered").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + + machine_deuterium_extractor = new MachineDeuteriumExtractor(Material.iron).setBlockName("machine_deuterium_extractor").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_deuterium_extractor_side"); + machine_deuterium_tower = new DeuteriumTower(Material.iron).setBlockName("machine_deuterium_tower").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":concrete"); + + machine_liquefactor = new MachineLiquefactor().setBlockName("machine_liquefactor").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + machine_solidifier = new MachineSolidifier().setBlockName("machine_solidifier").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + machine_compressor = new MachineCompressor().setBlockName("machine_compressor").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + + machine_electrolyser = new MachineElectrolyser().setBlockName("machine_electrolyser").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel_machine"); + + machine_autocrafter = new MachineAutocrafter().setBlockName("machine_autocrafter").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab); + machine_funnel = new MachineFunnel().setBlockName("machine_funnel").setHardness(10.0F).setResistance(20.0F).setCreativeTab(MainRegistry.machineTab); + + anvil_iron = new NTMAnvil(Material.iron, NTMAnvil.TIER_IRON).setBlockName("anvil_iron").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_iron"); + anvil_lead = new NTMAnvil(Material.iron, NTMAnvil.TIER_IRON).setBlockName("anvil_lead").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_lead"); + anvil_steel = new NTMAnvil(Material.iron, NTMAnvil.TIER_STEEL).setBlockName("anvil_steel").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_steel"); + anvil_desh = new NTMAnvil(Material.iron, NTMAnvil.TIER_OIL).setBlockName("anvil_desh").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_desh"); + anvil_saturnite = new NTMAnvil(Material.iron, NTMAnvil.TIER_OIL).setBlockName("anvil_saturnite").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_saturnite"); + anvil_ferrouranium = new NTMAnvil(Material.iron, NTMAnvil.TIER_NUCLEAR).setBlockName("anvil_ferrouranium").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_ferrouranium"); + anvil_bismuth_bronze = new NTMAnvil(Material.iron, NTMAnvil.TIER_RBMK).setBlockName("anvil_bismuth_bronze").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_bismuth_bronze"); + anvil_arsenic_bronze = new NTMAnvil(Material.iron, NTMAnvil.TIER_RBMK).setBlockName("anvil_arsenic_bronze").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_arsenic_bronze"); + anvil_schrabidate = new NTMAnvil(Material.iron, NTMAnvil.TIER_FUSION).setBlockName("anvil_schrabidate").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_schrabidate"); + anvil_dnt = new NTMAnvil(Material.iron, NTMAnvil.TIER_PARTICLE).setBlockName("anvil_dnt").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_dnt"); + anvil_osmiridium = new NTMAnvil(Material.iron, NTMAnvil.TIER_GERALD).setBlockName("anvil_osmiridium").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_osmiridium"); + anvil_murky = new NTMAnvil(Material.iron, 1916169).setBlockName("anvil_murky").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":anvil_steel"); + + machine_waste_drum = new WasteDrum(Material.iron).setBlockName("machine_waste_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":waste_drum"); + machine_storage_drum = new StorageDrum(Material.iron).setBlockName("machine_storage_drum").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_storage_drum"); + + machine_schrabidium_transmutator = new MachineSchrabidiumTransmutator(Material.iron).setBlockName("machine_schrabidium_transmutator").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.machineTab); + + machine_siren = new MachineSiren(Material.iron).setBlockName("machine_siren").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_siren"); + + machine_spp_bottom = new SPPBottom(Material.iron).setBlockName("machine_spp_bottom").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + machine_spp_top = new SPPTop(Material.iron).setBlockName("machine_spp_top").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + + radiobox = new Radiobox(Material.iron).setBlockName("radiobox").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radiobox"); + radiorec = new RadioRec(Material.iron).setBlockName("radiorec").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":radiorec"); + + machine_forcefield = new MachineForceField(Material.iron).setBlockName("machine_forcefield").setHardness(5.0F).setResistance(100.0F).setCreativeTab(MainRegistry.missileTab).setBlockTextureName(RefStrings.MODID + ":machine_forcefield"); + + cheater_virus = new CheaterVirus(Material.iron).setBlockName("cheater_virus").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus"); + cheater_virus_seed = new CheaterVirusSeed(Material.iron).setBlockName("cheater_virus_seed").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":cheater_virus_seed"); + crystal_virus = new CrystalVirus(Material.iron).setBlockName("crystal_virus").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_virus"); + crystal_hardened = new BlockGeneric(Material.iron).setBlockName("crystal_hardened").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_hardened"); + crystal_pulsar = new CrystalPulsar(Material.iron).setBlockName("crystal_pulsar").setHardness(15.0F).setResistance(Float.POSITIVE_INFINITY).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":crystal_pulsar"); + taint = new BlockTaint(Material.iron).setBlockName("taint").setHardness(15.0F).setResistance(10.0F).setCreativeTab(null); + + vent_chlorine = new BlockVent(Material.iron).setBlockName("vent_chlorine").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_chlorine"); + vent_cloud = new BlockVent(Material.iron).setBlockName("vent_cloud").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_cloud"); + vent_pink_cloud = new BlockVent(Material.iron).setBlockName("vent_pink_cloud").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vent_pink_cloud"); + vent_chlorine_seal = new BlockClorineSeal(Material.iron).setBlockName("vent_chlorine_seal").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); + chlorine_gas = new BlockGasClorine().setBlockName("chlorine_gas").setHardness(0.0F).setResistance(0.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":chlorine_gas"); + + gas_radon = new BlockGasRadon().setBlockName("gas_radon").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon"); + gas_radon_dense = new BlockGasRadonDense().setBlockName("gas_radon_dense").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon_dense"); + gas_radon_tomb = new BlockGasRadonTomb().setBlockName("gas_radon_tomb").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_radon_tomb"); + gas_meltdown = new BlockGasMeltdown().setBlockName("gas_meltdown").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_meltdown"); + gas_monoxide = new BlockGasMonoxide().setBlockName("gas_monoxide").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_monoxide"); + gas_asbestos = new BlockGasAsbestos().setBlockName("gas_asbestos").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_asbestos"); + gas_coal = new BlockGasCoal().setBlockName("gas_coal").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_coal"); + gas_flammable = new BlockGasFlammable().setBlockName("gas_flammable").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_flammable"); + gas_explosive = new BlockGasExplosive().setBlockName("gas_explosive").setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":gas_explosive"); + vacuum = new BlockVacuum().setBlockName("vacuum").setResistance(1000000F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":vacuum"); + + absorber = new BlockAbsorber(Material.iron, 2.5F).setBlockName("absorber").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber"); + absorber_red = new BlockAbsorber(Material.iron, 10F).setBlockName("absorber_red").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_red"); + absorber_green = new BlockAbsorber(Material.iron, 100F).setBlockName("absorber_green").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_green"); + absorber_pink = new BlockAbsorber(Material.iron, 10000F).setBlockName("absorber_pink").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":absorber_pink"); + decon = new BlockDecon(Material.iron).setBlockName("decon").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":decon_side"); + transission_hatch = new BlockTransission(Material.iron).setBlockName("transission_hatch").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":transission_hatch"); + + volcano_core = new BlockVolcano().setBlockName("volcano_core").setBlockUnbreakable().setResistance(10000.0F).setCreativeTab(MainRegistry.nukeTab).setBlockTextureName(RefStrings.MODID + ":volcano_core"); + volcano_rad_core = new BlockVolcano().setBlockName("volcano_rad_core").setBlockUnbreakable().setResistance(10000.0F).setCreativeTab(MainRegistry.nukeTab).setBlockTextureName(RefStrings.MODID + ":volcano_rad_core"); + + statue_elb = new DecoBlockAlt(Material.iron).setBlockName("#null").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); + statue_elb_g = new DecoBlockAlt(Material.iron).setBlockName("#void").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); + statue_elb_w = new DecoBlockAlt(Material.iron).setBlockName("#ngtv").setHardness(Float.POSITIVE_INFINITY).setResistance(Float.POSITIVE_INFINITY); + statue_elb_f = new DecoBlockAlt(Material.iron).setBlockName("#undef").setHardness(Float.POSITIVE_INFINITY).setLightLevel(1.0F).setResistance(Float.POSITIVE_INFINITY); + + mud_fluid = new MudFluid().setDensity(2500).setViscosity(3000).setLuminosity(5).setTemperature(2773).setUnlocalizedName("mud_fluid"); + FluidRegistry.registerFluid(mud_fluid); + mud_block = new MudBlock(mud_fluid, fluidmud.setReplaceable(), ModDamageSource.mudPoisoning).setBlockName("mud_block").setResistance(500F); + + acid_fluid = new AcidFluid().setDensity(2500).setViscosity(1500).setLuminosity(5).setTemperature(2773).setUnlocalizedName("acid_fluid"); + FluidRegistry.registerFluid(acid_fluid); + acid_block = new AcidBlock(acid_fluid, fluidacid.setReplaceable(), ModDamageSource.acid).setBlockName("acid_block").setResistance(500F); + + toxic_fluid = new ToxicFluid().setDensity(2500).setViscosity(2000).setLuminosity(15).setTemperature(2773).setUnlocalizedName("toxic_fluid"); + FluidRegistry.registerFluid(toxic_fluid); + toxic_block = new ToxicBlock(toxic_fluid, fluidtoxic.setReplaceable(), ModDamageSource.radiation).setBlockName("toxic_block").setResistance(500F); + + schrabidic_fluid = new SchrabidicFluid().setDensity(31200).setViscosity(500).setTemperature(273).setUnlocalizedName("schrabidic_fluid"); + FluidRegistry.registerFluid(schrabidic_fluid); + schrabidic_block = new SchrabidicBlock(schrabidic_fluid, fluidschrabidic.setReplaceable(), ModDamageSource.radiation).setBlockName("schrabidic_block").setResistance(500F); + + corium_fluid = new CoriumFluid().setDensity(600000).setViscosity(12000).setLuminosity(10).setTemperature(1500).setUnlocalizedName("corium_fluid"); + FluidRegistry.registerFluid(corium_fluid); + corium_block = new CoriumFinite(corium_fluid, fluidcorium).setBlockName("corium_block").setResistance(500F); + + volcanic_lava_fluid = new VolcanicFluid().setLuminosity(15).setDensity(3000).setViscosity(3000).setTemperature(1300).setUnlocalizedName("volcanic_lava_fluid"); + FluidRegistry.registerFluid(volcanic_lava_fluid); + volcanic_lava_block = new VolcanicBlock(volcanic_lava_fluid, Material.lava).setBlockName("volcanic_lava_block").setResistance(500F); + + rad_lava_fluid = new RadFluid().setLuminosity(15).setDensity(3000).setViscosity(3000).setTemperature(1300).setUnlocalizedName("rad_lava_fluid"); + FluidRegistry.registerFluid(rad_lava_fluid); + rad_lava_block = new RadBlock(rad_lava_fluid, Material.lava).setBlockName("rad_lava_block").setResistance(500F); + + sulfuric_acid_fluid = new GenericFluid("sulfuric_acid_fluid").setDensity(1840).setViscosity(1000).setTemperature(273); + FluidRegistry.registerFluid(sulfuric_acid_fluid); + sulfuric_acid_block = new GenericFluidBlock(sulfuric_acid_fluid, Material.water, "sulfuric_acid_still", "sulfuric_acid_flowing").setDamage(ModDamageSource.acid, 5F).setBlockName("sulfuric_acid_block").setResistance(500F); + + Fluid liquidConcrete = new GenericFluid("concrete_liquid").setViscosity(2000); + concrete_liquid = new GenericFiniteFluid(liquidConcrete, Material.rock, "concrete_liquid", "concrete_liquid_flowing").setQuantaPerBlock(4).setBlockName("concrete_liquid").setResistance(500F); + + dummy_block_vault = new DummyBlockVault(Material.iron).setBlockName("dummy_block_vault").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_block_blast = new DummyBlockBlast(Material.iron).setBlockName("dummy_block_blast").setHardness(10.0F).setResistance(10000.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_block_uf6 = new DummyBlockMachine(Material.iron, machine_uf6_tank, false).setBlockName("dummy_block_uf6").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_titanium"); + dummy_block_puf6 = new DummyBlockMachine(Material.iron, machine_puf6_tank, false).setBlockName("dummy_block_puf6").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_plate_compact_launcher = new DummyBlockMachine(Material.iron, compact_launcher, false).setBounds(0, 16, 0, 16, 16, 16).setBlockName("dummy_plate_compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_port_compact_launcher = new DummyBlockMachine(Material.iron, compact_launcher, true).setBlockName("dummy_port_compact_launcher").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_plate_launch_table = new DummyBlockMachine(Material.iron, launch_table, false).setBounds(0, 16, 0, 16, 16, 16).setBlockName("dummy_plate_launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_port_launch_table = new DummyBlockMachine(Material.iron, launch_table, true).setBlockName("dummy_port_launch_table").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + dummy_plate_cargo = new DummyBlockMachine(Material.iron, sat_dock, false).setBounds(0, 0, 0, 16, 8, 16).setBlockName("dummy_plate_cargo").setHardness(5.0F).setResistance(10.0F).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":block_steel"); + + ntm_dirt = new BlockNTMDirt().setBlockName("ntm_dirt").setHardness(0.5F).setStepSound(Block.soundTypeGravel).setCreativeTab(null).setBlockTextureName("dirt"); + + pink_log = new BlockPinkLog().setBlockName("pink_log").setHardness(0.5F).setStepSound(Block.soundTypeWood).setCreativeTab(null); + pink_planks = new BlockGeneric(Material.wood).setBlockName("pink_planks").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); + pink_slab = new BlockPinkSlab(false, Material.wood).setBlockName("pink_slab").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); + pink_double_slab = new BlockPinkSlab(true, Material.wood).setBlockName("pink_double_slab").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); + pink_stairs = new BlockGenericStairs(pink_planks, 0).setBlockName("pink_stairs").setStepSound(Block.soundTypeWood).setCreativeTab(null).setBlockTextureName(RefStrings.MODID + ":pink_planks"); + } + + private static void registerBlock() { + //Test + GameRegistry.registerBlock(event_tester, event_tester.getUnlocalizedName()); + GameRegistry.registerBlock(obj_tester, obj_tester.getUnlocalizedName()); + GameRegistry.registerBlock(test_core, test_core.getUnlocalizedName()); + GameRegistry.registerBlock(test_charge, test_charge.getUnlocalizedName()); + GameRegistry.registerBlock(structure_anchor, structure_anchor.getUnlocalizedName()); + + //Ores + GameRegistry.registerBlock(ore_uranium, ore_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_uranium_scorched, ore_uranium_scorched.getUnlocalizedName()); + GameRegistry.registerBlock(ore_thorium, ore_thorium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_titanium, ore_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_sulfur, ore_sulfur.getUnlocalizedName()); + GameRegistry.registerBlock(ore_niter, ore_niter.getUnlocalizedName()); + GameRegistry.registerBlock(ore_copper, ore_copper.getUnlocalizedName()); + GameRegistry.registerBlock(ore_tungsten, ore_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(ore_aluminium, ore_aluminium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_fluorite, ore_fluorite.getUnlocalizedName()); + GameRegistry.registerBlock(ore_beryllium, ore_beryllium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_lead, ore_lead.getUnlocalizedName()); + GameRegistry.registerBlock(ore_oil, ItemBlockLore.class, ore_oil.getUnlocalizedName()); + GameRegistry.registerBlock(ore_oil_empty, ore_oil_empty.getUnlocalizedName()); + GameRegistry.registerBlock(ore_oil_sand, ore_oil_sand.getUnlocalizedName()); + GameRegistry.registerBlock(ore_lignite, ore_lignite.getUnlocalizedName()); + GameRegistry.registerBlock(ore_asbestos, ore_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(ore_schrabidium, ItemBlockLore.class, ore_schrabidium.getUnlocalizedName()); + + //Rare Minerals + GameRegistry.registerBlock(ore_australium, ItemOreBlock.class, ore_australium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_rare, ItemOreBlock.class, ore_rare.getUnlocalizedName()); + GameRegistry.registerBlock(ore_cobalt, ore_cobalt.getUnlocalizedName()); + GameRegistry.registerBlock(ore_cinnebar, ore_cinnebar.getUnlocalizedName()); + GameRegistry.registerBlock(ore_coltan, ore_coltan.getUnlocalizedName()); + + //Stone clusters + GameRegistry.registerBlock(cluster_iron, ItemBlockBase.class, cluster_iron.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_titanium, ItemBlockBase.class, cluster_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_aluminium, ItemBlockBase.class, cluster_aluminium.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_copper, ItemBlockBase.class, cluster_copper.getUnlocalizedName()); + + //Bedrock ores + GameRegistry.registerBlock(ore_bedrock_oil, ore_bedrock_oil.getUnlocalizedName()); + + //Nice Meme + GameRegistry.registerBlock(ore_coal_oil, ore_coal_oil.getUnlocalizedName()); + GameRegistry.registerBlock(ore_coal_oil_burning, ore_coal_oil_burning.getUnlocalizedName()); + + //Nether Ores + GameRegistry.registerBlock(ore_nether_coal, ore_nether_coal.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_smoldering, ore_nether_smoldering.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_uranium, ore_nether_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_uranium_scorched, ore_nether_uranium_scorched.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_plutonium, ore_nether_plutonium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_tungsten, ore_nether_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_sulfur, ore_nether_sulfur.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_fire, ore_nether_fire.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_cobalt, ore_nether_cobalt.getUnlocalizedName()); + GameRegistry.registerBlock(ore_nether_schrabidium, ItemBlockLore.class, ore_nether_schrabidium.getUnlocalizedName()); + + //Meteor Ores + register(ore_meteor); + + //Gneiss Ores + GameRegistry.registerBlock(ore_gneiss_iron, ore_gneiss_iron.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_gold, ore_gneiss_gold.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_uranium, ore_gneiss_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_uranium_scorched, ore_gneiss_uranium_scorched.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_copper, ore_gneiss_copper.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_asbestos, ore_gneiss_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_lithium, ore_gneiss_lithium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_schrabidium, ItemBlockLore.class, ore_gneiss_schrabidium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_rare, ItemOreBlock.class, ore_gneiss_rare.getUnlocalizedName()); + GameRegistry.registerBlock(ore_gneiss_gas, ore_gneiss_gas.getUnlocalizedName()); + + //Depth ores + GameRegistry.registerBlock(ore_depth_cinnebar, ItemBlockBase.class, ore_depth_cinnebar.getUnlocalizedName()); + GameRegistry.registerBlock(ore_depth_zirconium, ItemBlockBase.class, ore_depth_zirconium.getUnlocalizedName()); + GameRegistry.registerBlock(ore_depth_borax, ItemBlockBase.class, ore_depth_borax.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_depth_iron, ItemBlockBase.class, cluster_depth_iron.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_depth_titanium, ItemBlockBase.class, cluster_depth_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(cluster_depth_tungsten, ItemBlockBase.class, cluster_depth_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(ore_alexandrite, ItemBlockBase.class, ore_alexandrite.getUnlocalizedName()); + + //Nether depth ores + GameRegistry.registerBlock(ore_depth_nether_neodymium, ItemBlockBase.class, ore_depth_nether_neodymium.getUnlocalizedName()); + + //Basalt ores + register(ore_basalt); + + //End Ores + GameRegistry.registerBlock(ore_tikite, ore_tikite.getUnlocalizedName()); + + //It's a meme you dip + GameRegistry.registerBlock(ore_random, ItemRandomOreBlock.class, ore_random.getUnlocalizedName()); + + //Bedrock ore + register(ore_bedrock); + register(ore_volcano); + + //Secret + register(stone_keyhole); + + //Resource-bearing Stones + register(stone_resource); + register(stalagmite); + register(stalactite); + register(stone_biome); + + //Stone Variants + GameRegistry.registerBlock(stone_porous, stone_porous.getUnlocalizedName()); + GameRegistry.registerBlock(stone_gneiss, stone_gneiss.getUnlocalizedName()); + GameRegistry.registerBlock(gneiss_brick, gneiss_brick.getUnlocalizedName()); + GameRegistry.registerBlock(gneiss_tile, gneiss_tile.getUnlocalizedName()); + GameRegistry.registerBlock(gneiss_chiseled, gneiss_chiseled.getUnlocalizedName()); + GameRegistry.registerBlock(stone_depth, ItemBlockBase.class, stone_depth.getUnlocalizedName()); + GameRegistry.registerBlock(depth_brick, ItemBlockBase.class, depth_brick.getUnlocalizedName()); + GameRegistry.registerBlock(depth_tiles, ItemBlockBase.class, depth_tiles.getUnlocalizedName()); + GameRegistry.registerBlock(stone_depth_nether, ItemBlockBase.class, stone_depth_nether.getUnlocalizedName()); + GameRegistry.registerBlock(depth_nether_brick, ItemBlockBase.class, depth_nether_brick.getUnlocalizedName()); + GameRegistry.registerBlock(depth_nether_tiles, ItemBlockBase.class, depth_nether_tiles.getUnlocalizedName()); + GameRegistry.registerBlock(depth_dnt, ItemBlockBase.class, depth_dnt.getUnlocalizedName()); + GameRegistry.registerBlock(basalt, basalt.getUnlocalizedName()); + GameRegistry.registerBlock(basalt_smooth, basalt_smooth.getUnlocalizedName()); + GameRegistry.registerBlock(basalt_brick, basalt_brick.getUnlocalizedName()); + GameRegistry.registerBlock(basalt_polished, basalt_polished.getUnlocalizedName()); + GameRegistry.registerBlock(basalt_tiles, basalt_tiles.getUnlocalizedName()); + //GameRegistry.registerBlock(stone_deep_cobble, ItemBlockBase.class, stone_deep_cobble.getUnlocalizedName()); + + //Blocks + GameRegistry.registerBlock(block_uranium, block_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(block_u233, block_u233.getUnlocalizedName()); + GameRegistry.registerBlock(block_u235, block_u235.getUnlocalizedName()); + GameRegistry.registerBlock(block_u238, block_u238.getUnlocalizedName()); + GameRegistry.registerBlock(block_uranium_fuel, block_uranium_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_neptunium, block_neptunium.getUnlocalizedName()); + GameRegistry.registerBlock(block_polonium, block_polonium.getUnlocalizedName()); + GameRegistry.registerBlock(block_mox_fuel, block_mox_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_plutonium, block_plutonium.getUnlocalizedName()); + GameRegistry.registerBlock(block_pu238, block_pu238.getUnlocalizedName()); + GameRegistry.registerBlock(block_pu239, block_pu239.getUnlocalizedName()); + GameRegistry.registerBlock(block_pu240, block_pu240.getUnlocalizedName()); + GameRegistry.registerBlock(block_pu_mix, block_pu_mix.getUnlocalizedName()); + GameRegistry.registerBlock(block_plutonium_fuel, block_plutonium_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_thorium, block_thorium.getUnlocalizedName()); + GameRegistry.registerBlock(block_thorium_fuel, block_thorium_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_titanium, block_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(block_sulfur, block_sulfur.getUnlocalizedName()); + GameRegistry.registerBlock(block_niter, block_niter.getUnlocalizedName()); + GameRegistry.registerBlock(block_copper, block_copper.getUnlocalizedName()); + GameRegistry.registerBlock(block_red_copper, block_red_copper.getUnlocalizedName()); + GameRegistry.registerBlock(block_advanced_alloy, block_advanced_alloy.getUnlocalizedName()); + GameRegistry.registerBlock(block_tungsten, block_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(block_aluminium, block_aluminium.getUnlocalizedName()); + GameRegistry.registerBlock(block_fluorite, block_fluorite.getUnlocalizedName()); + GameRegistry.registerBlock(block_beryllium, block_beryllium.getUnlocalizedName()); + GameRegistry.registerBlock(block_cobalt, block_cobalt.getUnlocalizedName()); + GameRegistry.registerBlock(block_steel, block_steel.getUnlocalizedName()); + GameRegistry.registerBlock(block_tcalloy, block_tcalloy.getUnlocalizedName()); + GameRegistry.registerBlock(block_cdalloy, block_cdalloy.getUnlocalizedName()); + GameRegistry.registerBlock(block_lead, block_lead.getUnlocalizedName()); + GameRegistry.registerBlock(block_bismuth, block_bismuth.getUnlocalizedName()); + GameRegistry.registerBlock(block_cadmium, block_cadmium.getUnlocalizedName()); + GameRegistry.registerBlock(block_coltan, block_coltan.getUnlocalizedName()); + GameRegistry.registerBlock(block_tantalium, block_tantalium.getUnlocalizedName()); + GameRegistry.registerBlock(block_niobium, block_niobium.getUnlocalizedName()); + GameRegistry.registerBlock(block_lithium, block_lithium.getUnlocalizedName()); + GameRegistry.registerBlock(block_zirconium, block_zirconium.getUnlocalizedName()); + GameRegistry.registerBlock(block_white_phosphorus, block_white_phosphorus.getUnlocalizedName()); + GameRegistry.registerBlock(block_red_phosphorus, block_red_phosphorus.getUnlocalizedName()); + GameRegistry.registerBlock(block_yellowcake, block_yellowcake.getUnlocalizedName()); + GameRegistry.registerBlock(block_scrap, block_scrap.getUnlocalizedName()); + GameRegistry.registerBlock(block_electrical_scrap, block_electrical_scrap.getUnlocalizedName()); + GameRegistry.registerBlock(block_fallout, block_fallout.getUnlocalizedName()); + GameRegistry.registerBlock(block_foam, block_foam.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite, block_graphite.getUnlocalizedName()); + register(block_coke); + GameRegistry.registerBlock(block_graphite_drilled, block_graphite_drilled.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_fuel, block_graphite_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_rod, block_graphite_rod.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_plutonium, block_graphite_plutonium.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_source, block_graphite_source.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_lithium, block_graphite_lithium.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_tritium, block_graphite_tritium.getUnlocalizedName()); + GameRegistry.registerBlock(block_graphite_detector, block_graphite_detector.getUnlocalizedName()); + GameRegistry.registerBlock(block_boron, block_boron.getUnlocalizedName()); + GameRegistry.registerBlock(block_insulator, block_insulator.getUnlocalizedName()); + GameRegistry.registerBlock(block_fiberglass, block_fiberglass.getUnlocalizedName()); + GameRegistry.registerBlock(block_asbestos, block_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(block_trinitite, block_trinitite.getUnlocalizedName()); + GameRegistry.registerBlock(block_waste, block_waste.getUnlocalizedName()); + GameRegistry.registerBlock(block_waste_painted, block_waste_painted.getUnlocalizedName()); + GameRegistry.registerBlock(block_waste_vitrified, block_waste_vitrified.getUnlocalizedName()); + GameRegistry.registerBlock(ancient_scrap, ancient_scrap.getUnlocalizedName()); + GameRegistry.registerBlock(block_corium, block_corium.getUnlocalizedName()); + GameRegistry.registerBlock(block_corium_cobble, block_corium_cobble.getUnlocalizedName()); + GameRegistry.registerBlock(block_schraranium, ItemBlockBase.class, block_schraranium.getUnlocalizedName()); + GameRegistry.registerBlock(block_schrabidium, ItemBlockBase.class, block_schrabidium.getUnlocalizedName()); + GameRegistry.registerBlock(block_schrabidate, ItemBlockBase.class, block_schrabidate.getUnlocalizedName()); + GameRegistry.registerBlock(block_solinium, ItemBlockBase.class, block_solinium.getUnlocalizedName()); + GameRegistry.registerBlock(block_schrabidium_fuel, ItemBlockBase.class, block_schrabidium_fuel.getUnlocalizedName()); + GameRegistry.registerBlock(block_euphemium, ItemBlockLore.class, block_euphemium.getUnlocalizedName()); + GameRegistry.registerBlock(block_schrabidium_cluster, ItemBlockBase.class, block_schrabidium_cluster.getUnlocalizedName()); + GameRegistry.registerBlock(block_euphemium_cluster, ItemBlockLore.class, block_euphemium_cluster.getUnlocalizedName()); + GameRegistry.registerBlock(block_dineutronium, block_dineutronium.getUnlocalizedName()); + GameRegistry.registerBlock(block_magnetized_tungsten, block_magnetized_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(block_combine_steel, block_combine_steel.getUnlocalizedName()); + GameRegistry.registerBlock(block_desh, block_desh.getUnlocalizedName()); + GameRegistry.registerBlock(block_dura_steel, block_dura_steel.getUnlocalizedName()); + GameRegistry.registerBlock(block_starmetal, block_starmetal.getUnlocalizedName()); + GameRegistry.registerBlock(block_polymer, block_polymer.getUnlocalizedName()); + GameRegistry.registerBlock(block_bakelite, block_bakelite.getUnlocalizedName()); + GameRegistry.registerBlock(block_rubber, block_rubber.getUnlocalizedName()); + GameRegistry.registerBlock(block_australium, ItemOreBlock.class, block_australium.getUnlocalizedName()); + GameRegistry.registerBlock(block_weidanium, ItemOreBlock.class, block_weidanium.getUnlocalizedName()); + GameRegistry.registerBlock(block_reiium, ItemOreBlock.class, block_reiium.getUnlocalizedName()); + GameRegistry.registerBlock(block_unobtainium, ItemOreBlock.class, block_unobtainium.getUnlocalizedName()); + GameRegistry.registerBlock(block_daffergon, ItemOreBlock.class, block_daffergon.getUnlocalizedName()); + GameRegistry.registerBlock(block_verticium, ItemOreBlock.class, block_verticium.getUnlocalizedName()); + register(block_cap); + GameRegistry.registerBlock(block_lanthanium, block_lanthanium.getUnlocalizedName()); + GameRegistry.registerBlock(block_ra226, block_ra226.getUnlocalizedName()); + GameRegistry.registerBlock(block_actinium, block_actinium.getUnlocalizedName()); + GameRegistry.registerBlock(block_tritium, block_tritium.getUnlocalizedName()); + GameRegistry.registerBlock(block_semtex, block_semtex.getUnlocalizedName()); + GameRegistry.registerBlock(block_c4, block_c4.getUnlocalizedName()); + GameRegistry.registerBlock(block_smore, block_smore.getUnlocalizedName()); + GameRegistry.registerBlock(block_slag, block_slag.getUnlocalizedName()); + + //Deco Blocks + GameRegistry.registerBlock(deco_titanium, deco_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(deco_red_copper, deco_red_copper.getUnlocalizedName()); + GameRegistry.registerBlock(deco_tungsten, deco_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(deco_aluminium, deco_aluminium.getUnlocalizedName()); + GameRegistry.registerBlock(deco_steel, deco_steel.getUnlocalizedName()); + GameRegistry.registerBlock(deco_lead, deco_lead.getUnlocalizedName()); + GameRegistry.registerBlock(deco_beryllium, deco_beryllium.getUnlocalizedName()); + GameRegistry.registerBlock(deco_asbestos, deco_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(deco_emitter, ItemBlockBase.class, deco_emitter.getUnlocalizedName()); + GameRegistry.registerBlock(part_emitter, ItemBlockBase.class, part_emitter.getUnlocalizedName()); + GameRegistry.registerBlock(deco_loot, deco_loot.getUnlocalizedName()); + GameRegistry.registerBlock(pedestal, pedestal.getUnlocalizedName()); + GameRegistry.registerBlock(bobblehead, ItemBlockMeta.class, bobblehead.getUnlocalizedName()); + GameRegistry.registerBlock(snowglobe, ItemBlockMeta.class, snowglobe.getUnlocalizedName()); + GameRegistry.registerBlock(plushie, ItemBlockBase.class, plushie.getUnlocalizedName()); + GameRegistry.registerBlock(deco_rbmk, deco_rbmk.getUnlocalizedName()); + GameRegistry.registerBlock(deco_rbmk_smooth, deco_rbmk_smooth.getUnlocalizedName()); + + //Gravel + GameRegistry.registerBlock(gravel_obsidian, ItemBlockBlastInfo.class, gravel_obsidian.getUnlocalizedName()); + GameRegistry.registerBlock(gravel_diamond, ItemBlockLore.class, gravel_diamond.getUnlocalizedName()); + + //Lamps + GameRegistry.registerBlock(lamp_tritium_green_off, lamp_tritium_green_off.getUnlocalizedName()); + GameRegistry.registerBlock(lamp_tritium_green_on, lamp_tritium_green_on.getUnlocalizedName()); + GameRegistry.registerBlock(lamp_tritium_blue_off, lamp_tritium_blue_off.getUnlocalizedName()); + GameRegistry.registerBlock(lamp_tritium_blue_on, lamp_tritium_blue_on.getUnlocalizedName()); + GameRegistry.registerBlock(lamp_demon, lamp_demon.getUnlocalizedName()); + GameRegistry.registerBlock(lantern, lantern.getUnlocalizedName()); + GameRegistry.registerBlock(lantern_behemoth, lantern_behemoth.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_incandescent, spotlight_incandescent.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_incandescent_off, spotlight_incandescent_off.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_fluoro, spotlight_fluoro.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_fluoro_off, spotlight_fluoro_off.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_halogen, spotlight_halogen.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_halogen_off, spotlight_halogen_off.getUnlocalizedName()); + GameRegistry.registerBlock(spotlight_beam, spotlight_beam.getUnlocalizedName()); + register(floodlight); + GameRegistry.registerBlock(floodlight_beam, floodlight_beam.getUnlocalizedName()); + + //Reinforced Blocks + GameRegistry.registerBlock(asphalt, ItemBlockBlastInfo.class, asphalt.getUnlocalizedName()); + GameRegistry.registerBlock(asphalt_light, ItemBlockBlastInfo.class, asphalt_light.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_brick, ItemBlockBlastInfo.class, reinforced_brick.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_glass, ItemBlockBlastInfo.class, reinforced_glass.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_glass_pane, ItemBlockBlastInfo.class, reinforced_glass_pane.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_light, ItemBlockBlastInfo.class, reinforced_light.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_sand, ItemBlockBlastInfo.class, reinforced_sand.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_lamp_off, ItemBlockBlastInfo.class, reinforced_lamp_off.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_lamp_on, ItemBlockBlastInfo.class, reinforced_lamp_on.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_laminate, ItemBlockBlastInfo.class, reinforced_laminate.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_laminate_pane,ItemBlockBlastInfo.class, reinforced_laminate_pane.getUnlocalizedName()); + + //Bricks + GameRegistry.registerBlock(reinforced_stone, ItemBlockBlastInfo.class, reinforced_stone.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_ducrete, ItemBlockBlastInfo.class, reinforced_ducrete.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_smooth, ItemBlockBlastInfo.class, concrete_smooth.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_colored, ItemBlockColoredConcrete.class, concrete_colored.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_colored_ext, ItemBlockBlastInfo.class, concrete_colored_ext.getUnlocalizedName()); + GameRegistry.registerBlock(concrete, ItemBlockBlastInfo.class, concrete.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_asbestos, ItemBlockBlastInfo.class, concrete_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_super, ItemBlockBlastInfo.class, concrete_super.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_super_broken, ItemBlockBlastInfo.class, concrete_super_broken.getUnlocalizedName()); + GameRegistry.registerBlock(ducrete_smooth, ItemBlockBlastInfo.class, ducrete_smooth.getUnlocalizedName()); + GameRegistry.registerBlock(ducrete, ItemBlockBlastInfo.class, ducrete.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_pillar, ItemBlockBlastInfo.class, concrete_pillar.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete, ItemBlockBlastInfo.class, brick_concrete.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_mossy, ItemBlockBlastInfo.class, brick_concrete_mossy.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_cracked, ItemBlockBlastInfo.class, brick_concrete_cracked.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_broken, ItemBlockBlastInfo.class, brick_concrete_broken.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_marked, ItemBlockBlastInfo.class, brick_concrete_marked.getUnlocalizedName()); + GameRegistry.registerBlock(brick_ducrete, ItemBlockBlastInfo.class, brick_ducrete.getUnlocalizedName()); + GameRegistry.registerBlock(brick_obsidian, ItemBlockBlastInfo.class, brick_obsidian.getUnlocalizedName()); + GameRegistry.registerBlock(brick_compound, ItemBlockBlastInfo.class, brick_compound.getUnlocalizedName()); + GameRegistry.registerBlock(brick_light, ItemBlockBlastInfo.class, brick_light.getUnlocalizedName()); + GameRegistry.registerBlock(brick_asbestos, brick_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(brick_fire, ItemBlockBlastInfo.class, brick_fire.getUnlocalizedName()); + + GameRegistry.registerBlock(concrete_slab, ItemModSlab.class, concrete_slab.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_double_slab, ItemModSlab.class, concrete_double_slab.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_brick_slab, ItemModSlab.class, concrete_brick_slab.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_brick_double_slab, ItemModSlab.class, concrete_brick_double_slab.getUnlocalizedName()); + GameRegistry.registerBlock(brick_slab, ItemModSlab.class, brick_slab.getUnlocalizedName()); + GameRegistry.registerBlock(brick_double_slab, ItemModSlab.class, brick_double_slab.getUnlocalizedName()); + + GameRegistry.registerBlock(concrete_smooth_stairs, concrete_smooth_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_stairs, concrete_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(concrete_asbestos_stairs, concrete_asbestos_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(ducrete_smooth_stairs, ducrete_smooth_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_stairs, brick_concrete_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_mossy_stairs, brick_concrete_mossy_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_cracked_stairs, brick_concrete_cracked_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_concrete_broken_stairs, brick_concrete_broken_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_ducrete_stairs, brick_ducrete_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_stone_stairs, reinforced_stone_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(reinforced_brick_stairs, reinforced_brick_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_obsidian_stairs, brick_obsidian_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_light_stairs, brick_light_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_compound_stairs, brick_compound_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_asbestos_stairs, brick_asbestos_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(brick_fire_stairs, brick_fire_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(ducrete_stairs, ducrete_stairs.getUnlocalizedName()); + GameRegistry.registerBlock(asphalt_stairs, asphalt_stairs.getUnlocalizedName()); + + //CMB Building Elements + GameRegistry.registerBlock(cmb_brick, ItemBlockBlastInfo.class, cmb_brick.getUnlocalizedName()); + GameRegistry.registerBlock(cmb_brick_reinforced, ItemBlockBlastInfo.class, cmb_brick_reinforced.getUnlocalizedName()); + + //Tiles + GameRegistry.registerBlock(vinyl_tile, ItemBlockBlastInfo.class, vinyl_tile.getUnlocalizedName()); //i would rather die than dip into fucking blocks with subtypes again + + GameRegistry.registerBlock(tile_lab, tile_lab.getUnlocalizedName()); + GameRegistry.registerBlock(tile_lab_cracked, tile_lab_cracked.getUnlocalizedName()); + GameRegistry.registerBlock(tile_lab_broken, tile_lab_broken.getUnlocalizedName()); + + //Other defensive stuff + GameRegistry.registerBlock(barbed_wire, barbed_wire.getUnlocalizedName()); + GameRegistry.registerBlock(barbed_wire_fire, barbed_wire_fire.getUnlocalizedName()); + GameRegistry.registerBlock(barbed_wire_poison, barbed_wire_poison.getUnlocalizedName()); + GameRegistry.registerBlock(barbed_wire_acid, barbed_wire_acid.getUnlocalizedName()); + GameRegistry.registerBlock(barbed_wire_wither, barbed_wire_wither.getUnlocalizedName()); + GameRegistry.registerBlock(barbed_wire_ultradeath, barbed_wire_ultradeath.getUnlocalizedName()); + GameRegistry.registerBlock(spikes, spikes.getUnlocalizedName()); + GameRegistry.registerBlock(tesla, tesla.getUnlocalizedName()); + + //Charger + GameRegistry.registerBlock(charger, charger.getUnlocalizedName()); + //GameRegistry.registerBlock(floodlight, floodlight.getUnlocalizedName()); + + //Decoration Blocks + GameRegistry.registerBlock(block_meteor, block_meteor.getUnlocalizedName()); + GameRegistry.registerBlock(block_meteor_cobble, block_meteor_cobble.getUnlocalizedName()); + GameRegistry.registerBlock(block_meteor_broken, block_meteor_broken.getUnlocalizedName()); + GameRegistry.registerBlock(block_meteor_molten, block_meteor_molten.getUnlocalizedName()); + GameRegistry.registerBlock(block_meteor_treasure, block_meteor_treasure.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_polished, meteor_polished.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_brick, meteor_brick.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_brick_mossy, meteor_brick_mossy.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_brick_cracked, meteor_brick_cracked.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_brick_chiseled, meteor_brick_chiseled.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_pillar, meteor_pillar.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_spawner, meteor_spawner.getUnlocalizedName()); + GameRegistry.registerBlock(meteor_battery, ItemBlockLore.class, meteor_battery.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle, brick_jungle.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_cracked, brick_jungle_cracked.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_fragile, brick_jungle_fragile.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_lava, brick_jungle_lava.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_ooze, brick_jungle_ooze.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_mystic, brick_jungle_mystic.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_trap, ItemTrapBlock.class, brick_jungle_trap.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_glyph, ItemGlyphBlock.class, brick_jungle_glyph.getUnlocalizedName()); + GameRegistry.registerBlock(brick_jungle_circle, brick_jungle_circle.getUnlocalizedName()); + GameRegistry.registerBlock(brick_red, brick_red.getUnlocalizedName()); + register(deco_computer); + register(deco_crt); + register(deco_toaster); + GameRegistry.registerBlock(filing_cabinet, ItemBlockBase.class, filing_cabinet.getUnlocalizedName()); + GameRegistry.registerBlock(tape_recorder, tape_recorder.getUnlocalizedName()); + GameRegistry.registerBlock(steel_poles, steel_poles.getUnlocalizedName()); + GameRegistry.registerBlock(pole_top, pole_top.getUnlocalizedName()); + GameRegistry.registerBlock(pole_satellite_receiver, pole_satellite_receiver.getUnlocalizedName()); + GameRegistry.registerBlock(steel_wall, steel_wall.getUnlocalizedName()); + GameRegistry.registerBlock(steel_corner, steel_corner.getUnlocalizedName()); + GameRegistry.registerBlock(steel_roof, steel_roof.getUnlocalizedName()); + GameRegistry.registerBlock(steel_beam, steel_beam.getUnlocalizedName()); + register(steel_scaffold); + GameRegistry.registerBlock(steel_grate, steel_grate.getUnlocalizedName()); + register(steel_grate_wide); + //register(scaffold_dynamic); + GameRegistry.registerBlock(deco_pipe, ItemBlockBase.class, deco_pipe.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rusted, ItemBlockBase.class, deco_pipe_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_green, ItemBlockBase.class, deco_pipe_green.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_green_rusted, ItemBlockBase.class, deco_pipe_green_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_red, ItemBlockBase.class, deco_pipe_red.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_marked, ItemBlockBase.class, deco_pipe_marked.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim, ItemBlockBase.class, deco_pipe_rim.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim_rusted, ItemBlockBase.class, deco_pipe_rim_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim_green, ItemBlockBase.class, deco_pipe_rim_green.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim_green_rusted, ItemBlockBase.class, deco_pipe_rim_green_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim_red, ItemBlockBase.class, deco_pipe_rim_red.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_rim_marked, ItemBlockBase.class, deco_pipe_rim_marked.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed, ItemBlockBase.class, deco_pipe_framed.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed_rusted, ItemBlockBase.class, deco_pipe_framed_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed_green, ItemBlockBase.class, deco_pipe_framed_green.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed_green_rusted, ItemBlockBase.class, deco_pipe_framed_green_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed_red, ItemBlockBase.class, deco_pipe_framed_red.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_framed_marked, ItemBlockBase.class, deco_pipe_framed_marked.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad, ItemBlockBase.class, deco_pipe_quad.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad_rusted, ItemBlockBase.class, deco_pipe_quad_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad_green, ItemBlockBase.class, deco_pipe_quad_green.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad_green_rusted, ItemBlockBase.class, deco_pipe_quad_green_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad_red, ItemBlockBase.class, deco_pipe_quad_red.getUnlocalizedName()); + GameRegistry.registerBlock(deco_pipe_quad_marked, ItemBlockBase.class, deco_pipe_quad_marked.getUnlocalizedName()); + register(plant_flower); + register(plant_tall); + register(plant_dead); + register(reeds); + GameRegistry.registerBlock(mush, mush.getUnlocalizedName()); + GameRegistry.registerBlock(mush_block, mush_block.getUnlocalizedName()); + GameRegistry.registerBlock(mush_block_stem, mush_block_stem.getUnlocalizedName()); + register(glyphid_base); + register(glyphid_spawner); + GameRegistry.registerBlock(moon_turf, moon_turf.getUnlocalizedName()); + + //Waste + GameRegistry.registerBlock(waste_earth, waste_earth.getUnlocalizedName()); + GameRegistry.registerBlock(waste_mycelium, waste_mycelium.getUnlocalizedName()); + GameRegistry.registerBlock(waste_trinitite, waste_trinitite.getUnlocalizedName()); + GameRegistry.registerBlock(waste_trinitite_red, waste_trinitite_red.getUnlocalizedName()); + GameRegistry.registerBlock(waste_log, waste_log.getUnlocalizedName()); + GameRegistry.registerBlock(waste_leaves, waste_leaves.getUnlocalizedName()); + GameRegistry.registerBlock(waste_planks, waste_planks.getUnlocalizedName()); + GameRegistry.registerBlock(frozen_grass, frozen_grass.getUnlocalizedName()); + GameRegistry.registerBlock(frozen_dirt, frozen_dirt.getUnlocalizedName()); + GameRegistry.registerBlock(frozen_log, frozen_log.getUnlocalizedName()); + GameRegistry.registerBlock(frozen_planks, frozen_planks.getUnlocalizedName()); + GameRegistry.registerBlock(dirt_dead, dirt_dead.getUnlocalizedName()); + GameRegistry.registerBlock(dirt_oily, dirt_oily.getUnlocalizedName()); + GameRegistry.registerBlock(sand_dirty, sand_dirty.getUnlocalizedName()); + GameRegistry.registerBlock(sand_dirty_red, sand_dirty_red.getUnlocalizedName()); + GameRegistry.registerBlock(stone_cracked, stone_cracked.getUnlocalizedName()); + GameRegistry.registerBlock(fallout, fallout.getUnlocalizedName()); + GameRegistry.registerBlock(foam_layer, foam_layer.getUnlocalizedName()); + GameRegistry.registerBlock(sand_boron_layer, sand_boron_layer.getUnlocalizedName()); + GameRegistry.registerBlock(leaves_layer, leaves_layer.getUnlocalizedName()); + GameRegistry.registerBlock(oil_spill, oil_spill.getUnlocalizedName()); + GameRegistry.registerBlock(burning_earth, burning_earth.getUnlocalizedName()); + GameRegistry.registerBlock(tektite, tektite.getUnlocalizedName()); + GameRegistry.registerBlock(ore_tektite_osmiridium, ore_tektite_osmiridium.getUnlocalizedName()); + GameRegistry.registerBlock(impact_dirt, impact_dirt.getUnlocalizedName()); + + //RAD + register(sellafield_slaked); + register(sellafield_bedrock); + register(ore_sellafield_diamond); + register(ore_sellafield_emerald); + register(ore_sellafield_uranium_scorched); + register(ore_sellafield_schrabidium); + register(ore_sellafield_radgem); + GameRegistry.registerBlock(sellafield, ItemBlockNamedMeta.class, sellafield.getUnlocalizedName()); + + //Geysirs + GameRegistry.registerBlock(geysir_water, geysir_water.getUnlocalizedName()); + GameRegistry.registerBlock(geysir_chlorine, geysir_chlorine.getUnlocalizedName()); + GameRegistry.registerBlock(geysir_vapor, geysir_vapor.getUnlocalizedName()); + GameRegistry.registerBlock(geysir_nether, geysir_nether.getUnlocalizedName()); + + //Nukes + GameRegistry.registerBlock(nuke_gadget, nuke_gadget.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_boy, nuke_boy.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_man, nuke_man.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_mike, nuke_mike.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_tsar, nuke_tsar.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_prototype, ItemPrototypeBlock.class, nuke_prototype.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_fleija, nuke_fleija.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_solinium, nuke_solinium.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_n2, nuke_n2.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_fstbmb, nuke_fstbmb.getUnlocalizedName()); + GameRegistry.registerBlock(nuke_custom, nuke_custom.getUnlocalizedName()); + + //Generic Bombs + GameRegistry.registerBlock(bomb_multi, bomb_multi.getUnlocalizedName()); + GameRegistry.registerBlock(crashed_balefire, crashed_balefire.getUnlocalizedName()); + GameRegistry.registerBlock(fireworks, fireworks.getUnlocalizedName()); + GameRegistry.registerBlock(dynamite, dynamite.getUnlocalizedName()); + GameRegistry.registerBlock(tnt, tnt.getUnlocalizedName()); + GameRegistry.registerBlock(semtex, semtex.getUnlocalizedName()); + GameRegistry.registerBlock(c4, c4.getUnlocalizedName()); + register(fissure_bomb); + + //Turrets + GameRegistry.registerBlock(turret_chekhov, turret_chekhov.getUnlocalizedName()); + GameRegistry.registerBlock(turret_friendly, turret_friendly.getUnlocalizedName()); + GameRegistry.registerBlock(turret_jeremy, turret_jeremy.getUnlocalizedName()); + GameRegistry.registerBlock(turret_tauon, turret_tauon.getUnlocalizedName()); + GameRegistry.registerBlock(turret_richard, turret_richard.getUnlocalizedName()); + GameRegistry.registerBlock(turret_howard, turret_howard.getUnlocalizedName()); + GameRegistry.registerBlock(turret_howard_damaged, turret_howard_damaged.getUnlocalizedName()); + GameRegistry.registerBlock(turret_maxwell, turret_maxwell.getUnlocalizedName()); + GameRegistry.registerBlock(turret_fritz, turret_fritz.getUnlocalizedName()); + //GameRegistry.registerBlock(turret_brandon, turret_brandon.getUnlocalizedName()); + GameRegistry.registerBlock(turret_arty, turret_arty.getUnlocalizedName()); + GameRegistry.registerBlock(turret_himars, turret_himars.getUnlocalizedName()); + GameRegistry.registerBlock(turret_sentry, turret_sentry.getUnlocalizedName()); + GameRegistry.registerBlock(turret_sentry_damaged, turret_sentry_damaged.getUnlocalizedName()); + + //Wall-mounted Explosives + GameRegistry.registerBlock(charge_dynamite, ItemBlockBase.class, charge_dynamite.getUnlocalizedName()); + GameRegistry.registerBlock(charge_miner, ItemBlockBase.class, charge_miner.getUnlocalizedName()); + GameRegistry.registerBlock(charge_c4, ItemBlockBase.class, charge_c4.getUnlocalizedName()); + GameRegistry.registerBlock(charge_semtex, ItemBlockBase.class, charge_semtex.getUnlocalizedName()); + + //Mines + GameRegistry.registerBlock(mine_ap, mine_ap.getUnlocalizedName()); + GameRegistry.registerBlock(mine_he, mine_he.getUnlocalizedName()); + GameRegistry.registerBlock(mine_shrap, mine_shrap.getUnlocalizedName()); + GameRegistry.registerBlock(mine_fat, mine_fat.getUnlocalizedName()); + + //Block Bombs + GameRegistry.registerBlock(flame_war, flame_war.getUnlocalizedName()); + GameRegistry.registerBlock(float_bomb, float_bomb.getUnlocalizedName()); + GameRegistry.registerBlock(therm_endo, therm_endo.getUnlocalizedName()); + GameRegistry.registerBlock(therm_exo, therm_exo.getUnlocalizedName()); + GameRegistry.registerBlock(emp_bomb, emp_bomb.getUnlocalizedName()); + GameRegistry.registerBlock(det_cord, det_cord.getUnlocalizedName()); + GameRegistry.registerBlock(det_charge, det_charge.getUnlocalizedName()); + GameRegistry.registerBlock(det_nuke, det_nuke.getUnlocalizedName()); + GameRegistry.registerBlock(det_miner, det_miner.getUnlocalizedName()); + GameRegistry.registerBlock(red_barrel, ItemBlockLore.class, red_barrel.getUnlocalizedName()); + GameRegistry.registerBlock(pink_barrel, ItemBlockLore.class, pink_barrel.getUnlocalizedName()); + GameRegistry.registerBlock(lox_barrel, ItemBlockLore.class, lox_barrel.getUnlocalizedName()); + GameRegistry.registerBlock(taint_barrel, taint_barrel.getUnlocalizedName()); + GameRegistry.registerBlock(yellow_barrel, yellow_barrel.getUnlocalizedName()); + GameRegistry.registerBlock(vitrified_barrel, vitrified_barrel.getUnlocalizedName()); + + //Siren + GameRegistry.registerBlock(machine_siren, machine_siren.getUnlocalizedName()); + + //This Thing + GameRegistry.registerBlock(broadcaster_pc, broadcaster_pc.getUnlocalizedName()); + + //Geiger Counter + GameRegistry.registerBlock(geiger, geiger.getUnlocalizedName()); + + //HEV Battery + GameRegistry.registerBlock(hev_battery, hev_battery.getUnlocalizedName()); + + //Chainlink Fence + GameRegistry.registerBlock(fence_metal, ItemBlockBase.class, fence_metal.getUnlocalizedName()); + + //Sands, Glass + GameRegistry.registerBlock(ash_digamma, ash_digamma.getUnlocalizedName()); + GameRegistry.registerBlock(sand_boron, sand_boron.getUnlocalizedName()); + GameRegistry.registerBlock(sand_lead, sand_lead.getUnlocalizedName()); + GameRegistry.registerBlock(sand_uranium, sand_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(sand_polonium, sand_polonium.getUnlocalizedName()); + GameRegistry.registerBlock(sand_quartz, sand_quartz.getUnlocalizedName()); + GameRegistry.registerBlock(glass_boron, glass_boron.getUnlocalizedName()); + GameRegistry.registerBlock(glass_lead, glass_lead.getUnlocalizedName()); + GameRegistry.registerBlock(glass_uranium, glass_uranium.getUnlocalizedName()); + GameRegistry.registerBlock(glass_trinitite, glass_trinitite.getUnlocalizedName()); + GameRegistry.registerBlock(glass_polonium, glass_polonium.getUnlocalizedName()); + GameRegistry.registerBlock(glass_ash, glass_ash.getUnlocalizedName()); + GameRegistry.registerBlock(glass_quartz, glass_quartz.getUnlocalizedName()); + + //Silo Hatch + GameRegistry.registerBlock(seal_frame, seal_frame.getUnlocalizedName()); + GameRegistry.registerBlock(seal_controller, seal_controller.getUnlocalizedName()); + GameRegistry.registerBlock(seal_hatch, seal_hatch.getUnlocalizedName()); + + //Vault Door + GameRegistry.registerBlock(vault_door, vault_door.getUnlocalizedName()); + GameRegistry.registerBlock(blast_door, blast_door.getUnlocalizedName()); + GameRegistry.registerBlock(fire_door, fire_door.getUnlocalizedName()); + GameRegistry.registerBlock(transition_seal, transition_seal.getUnlocalizedName()); + GameRegistry.registerBlock(silo_hatch, silo_hatch.getUnlocalizedName()); + GameRegistry.registerBlock(silo_hatch_large, silo_hatch_large.getUnlocalizedName()); + GameRegistry.registerBlock(sliding_blast_door, sliding_blast_door.getUnlocalizedName()); + + //Doors + GameRegistry.registerBlock(door_metal, door_metal.getUnlocalizedName()); + GameRegistry.registerBlock(door_office, door_office.getUnlocalizedName()); + GameRegistry.registerBlock(door_bunker, door_bunker.getUnlocalizedName()); + GameRegistry.registerBlock(door_red, door_red.getUnlocalizedName()); + GameRegistry.registerBlock(secure_access_door, secure_access_door.getUnlocalizedName()); + GameRegistry.registerBlock(large_vehicle_door, large_vehicle_door.getUnlocalizedName()); + GameRegistry.registerBlock(qe_containment, qe_containment.getUnlocalizedName()); + GameRegistry.registerBlock(qe_sliding_door, qe_sliding_door.getUnlocalizedName()); + GameRegistry.registerBlock(round_airlock_door, round_airlock_door.getUnlocalizedName()); + GameRegistry.registerBlock(sliding_seal_door, sliding_seal_door.getUnlocalizedName()); + GameRegistry.registerBlock(water_door, water_door.getUnlocalizedName()); + + //Crates + register(crate_iron); + register(crate_steel); + register(crate_desh); + register(crate_tungsten); + register(crate_template); + register(safe); + register(mass_storage); + + //Junk + GameRegistry.registerBlock(boxcar, boxcar.getUnlocalizedName()); + GameRegistry.registerBlock(boat, boat.getUnlocalizedName()); + + //Machines + register(machine_autocrafter); + register(machine_funnel); + + register(anvil_iron); + register(anvil_lead); + register(anvil_steel); + register(anvil_desh); + register(anvil_saturnite); + register(anvil_ferrouranium); + register(anvil_bismuth_bronze); + register(anvil_arsenic_bronze); + register(anvil_schrabidate); + register(anvil_dnt); + register(anvil_osmiridium); + register(anvil_murky); + + GameRegistry.registerBlock(press_preheater, press_preheater.getUnlocalizedName()); + GameRegistry.registerBlock(machine_press, machine_press.getUnlocalizedName()); + GameRegistry.registerBlock(machine_epress, machine_epress.getUnlocalizedName()); + register(machine_conveyor_press); + register(pump_steam); + register(pump_electric); + register(heater_firebox); + register(heater_oven); + register(machine_ashpit); + register(heater_oilburner); + register(heater_electric); + register(heater_heatex); + register(furnace_iron); + register(furnace_steel); + register(furnace_combination); + register(machine_stirling); + register(machine_stirling_steel); + register(machine_stirling_creative); + register(machine_sawmill); + register(machine_crucible); + register(machine_strand_caster); + register(machine_boiler); + register(machine_industrial_boiler); + register(foundry_mold); + register(foundry_basin); + register(foundry_channel); + register(foundry_tank); + register(foundry_outlet); + register(foundry_slagtap); + register(slag); + register(machine_furnace_brick_off); + register(machine_furnace_brick_on); + register(machine_difurnace_off); + register(machine_difurnace_on); + register(machine_difurnace_extension); + GameRegistry.registerBlock(machine_difurnace_rtg_off, machine_difurnace_rtg_off.getUnlocalizedName()); + GameRegistry.registerBlock(machine_difurnace_rtg_on, machine_difurnace_rtg_on.getUnlocalizedName()); + GameRegistry.registerBlock(machine_centrifuge, machine_centrifuge.getUnlocalizedName()); + GameRegistry.registerBlock(machine_gascent, machine_gascent.getUnlocalizedName()); + GameRegistry.registerBlock(machine_fel, machine_fel.getUnlocalizedName()); + GameRegistry.registerBlock(machine_silex, machine_silex.getUnlocalizedName()); + GameRegistry.registerBlock(machine_crystallizer, machine_crystallizer.getUnlocalizedName()); + GameRegistry.registerBlock(machine_uf6_tank, machine_uf6_tank.getUnlocalizedName()); + GameRegistry.registerBlock(machine_puf6_tank, machine_puf6_tank.getUnlocalizedName()); + GameRegistry.registerBlock(machine_reactor_breeding, machine_reactor_breeding.getUnlocalizedName()); + GameRegistry.registerBlock(machine_nuke_furnace_off, machine_nuke_furnace_off.getUnlocalizedName()); + GameRegistry.registerBlock(machine_nuke_furnace_on, machine_nuke_furnace_on.getUnlocalizedName()); + GameRegistry.registerBlock(machine_rtg_furnace_off, machine_rtg_furnace_off.getUnlocalizedName()); + GameRegistry.registerBlock(machine_rtg_furnace_on, machine_rtg_furnace_on.getUnlocalizedName()); + register(machine_wood_burner); + register(machine_diesel); + register(machine_combustion_engine); + GameRegistry.registerBlock(machine_controller, machine_controller.getUnlocalizedName()); + GameRegistry.registerBlock(reactor_research, reactor_research.getUnlocalizedName()); + GameRegistry.registerBlock(reactor_zirnox, reactor_zirnox.getUnlocalizedName()); + GameRegistry.registerBlock(zirnox_destroyed, zirnox_destroyed.getUnlocalizedName()); + GameRegistry.registerBlock(machine_industrial_generator, machine_industrial_generator.getUnlocalizedName()); + GameRegistry.registerBlock(machine_radgen, machine_radgen.getUnlocalizedName()); + GameRegistry.registerBlock(machine_cyclotron, machine_cyclotron.getUnlocalizedName()); + GameRegistry.registerBlock(machine_exposure_chamber, machine_exposure_chamber.getUnlocalizedName()); + GameRegistry.registerBlock(machine_rtg_grey, machine_rtg_grey.getUnlocalizedName()); + GameRegistry.registerBlock(machine_geo, machine_geo.getUnlocalizedName()); + GameRegistry.registerBlock(machine_amgen, machine_amgen.getUnlocalizedName()); + GameRegistry.registerBlock(machine_minirtg, machine_minirtg.getUnlocalizedName()); + GameRegistry.registerBlock(machine_powerrtg, machine_powerrtg.getUnlocalizedName()); + GameRegistry.registerBlock(machine_radiolysis, machine_radiolysis.getUnlocalizedName()); + GameRegistry.registerBlock(machine_hephaestus, machine_hephaestus.getUnlocalizedName()); + GameRegistry.registerBlock(machine_spp_bottom, machine_spp_bottom.getUnlocalizedName()); + GameRegistry.registerBlock(machine_spp_top, machine_spp_top.getUnlocalizedName()); + + GameRegistry.registerBlock(hadron_plating, hadron_plating.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_blue, hadron_plating_blue.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_black, hadron_plating_black.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_yellow, hadron_plating_yellow.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_striped, hadron_plating_striped.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_glass, hadron_plating_glass.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_plating_voltz, hadron_plating_voltz.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_alloy, ItemBlockBase.class, hadron_coil_alloy.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_gold, ItemBlockBase.class, hadron_coil_gold.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_neodymium, ItemBlockBase.class, hadron_coil_neodymium.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_magtung, ItemBlockBase.class, hadron_coil_magtung.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_schrabidium, ItemBlockBase.class, hadron_coil_schrabidium.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_schrabidate, ItemBlockBase.class, hadron_coil_schrabidate.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_starmetal, ItemBlockBase.class, hadron_coil_starmetal.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_chlorophyte, ItemBlockBase.class, hadron_coil_chlorophyte.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_coil_mese, ItemBlockBase.class, hadron_coil_mese.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_power, hadron_power.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_power_10m, hadron_power_10m.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_power_100m, hadron_power_100m.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_power_1g, hadron_power_1g.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_power_10g, hadron_power_10g.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_diode, hadron_diode.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_analysis, hadron_analysis.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_analysis_glass, hadron_analysis_glass.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_access, hadron_access.getUnlocalizedName()); + GameRegistry.registerBlock(hadron_core, hadron_core.getUnlocalizedName()); + register(hadron_cooler); + + GameRegistry.registerBlock(rbmk_rod, rbmk_rod.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_rod_mod, rbmk_rod_mod.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_rod_reasim, rbmk_rod_reasim.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_rod_reasim_mod, rbmk_rod_reasim_mod.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_control, rbmk_control.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_control_mod, rbmk_control_mod.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_control_auto, rbmk_control_auto.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_blank, rbmk_blank.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_boiler, rbmk_boiler.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_reflector, rbmk_reflector.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_absorber, rbmk_absorber.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_moderator, rbmk_moderator.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_outgasser, rbmk_outgasser.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_storage, rbmk_storage.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_cooler, rbmk_cooler.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_heater, rbmk_heater.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_console, rbmk_console.getUnlocalizedName()); + GameRegistry.registerBlock(rbmk_crane_console, rbmk_crane_console.getUnlocalizedName()); + register(rbmk_loader); + register(rbmk_steam_inlet); + register(rbmk_steam_outlet); + GameRegistry.registerBlock(pribris, pribris.getUnlocalizedName()); + GameRegistry.registerBlock(pribris_burning, pribris_burning.getUnlocalizedName()); + GameRegistry.registerBlock(pribris_radiating, pribris_radiating.getUnlocalizedName()); + GameRegistry.registerBlock(pribris_digamma, pribris_digamma.getUnlocalizedName()); + + GameRegistry.registerBlock(red_cable, red_cable.getUnlocalizedName()); + GameRegistry.registerBlock(red_cable_classic, red_cable_classic.getUnlocalizedName()); + GameRegistry.registerBlock(red_cable_paintable, red_cable_paintable.getUnlocalizedName()); + register(red_cable_gauge); + GameRegistry.registerBlock(red_wire_coated, red_wire_coated.getUnlocalizedName()); + GameRegistry.registerBlock(red_connector, ItemBlockBase.class, red_connector.getUnlocalizedName()); + GameRegistry.registerBlock(red_pylon, ItemBlockBase.class, red_pylon.getUnlocalizedName()); + register(red_pylon_medium_wood); + register(red_pylon_medium_wood_transformer); + register(red_pylon_medium_steel); + register(red_pylon_medium_steel_transformer); + GameRegistry.registerBlock(red_pylon_large, ItemBlockBase.class, red_pylon_large.getUnlocalizedName()); + GameRegistry.registerBlock(substation, ItemBlockBase.class, substation.getUnlocalizedName()); + GameRegistry.registerBlock(cable_switch, cable_switch.getUnlocalizedName()); + GameRegistry.registerBlock(cable_detector, cable_detector.getUnlocalizedName()); + GameRegistry.registerBlock(cable_diode, ItemBlockBase.class, cable_diode.getUnlocalizedName()); + GameRegistry.registerBlock(machine_detector, machine_detector.getUnlocalizedName()); + register(fluid_duct_neo); + register(fluid_duct_box); + register(fluid_duct_exhaust); + register(fluid_duct_paintable); + register(fluid_duct_gauge); + register(fluid_valve); + register(fluid_switch); + register(machine_drain); + register(radio_torch_sender); + register(radio_torch_receiver); + register(radio_torch_counter); + register(radio_torch_logic); + register(radio_telex); + + register(crane_extractor); + register(crane_inserter); + register(crane_grabber); + register(crane_router); + register(crane_boxer); + register(crane_unboxer); + register(conveyor); + register(conveyor_express); + register(conveyor_double); + register(conveyor_triple); + register(conveyor_chute); + register(conveyor_lift); + register(crane_splitter); + register(crane_partitioner); + register(drone_waypoint); + register(drone_crate); + register(drone_waypoint_request); + register(drone_dock); + register(drone_crate_provider); + register(drone_crate_requester); + register(fan); + register(piston_inserter); + + GameRegistry.registerBlock(chain, chain.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_sturdy, ladder_sturdy.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_iron, ladder_iron.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_gold, ladder_gold.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_titanium, ladder_titanium.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_copper, ladder_copper.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_tungsten, ladder_tungsten.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_aluminium, ladder_aluminium.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_steel, ladder_steel.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_lead, ladder_lead.getUnlocalizedName()); + GameRegistry.registerBlock(ladder_cobalt, ladder_cobalt.getUnlocalizedName()); + + register(barrel_plastic); + register(barrel_corroded); + register(barrel_iron); + register(barrel_steel); + register(barrel_tcalloy); + register(barrel_antimatter); + register(machine_battery_potato); + register(machine_battery); + register(machine_lithium_battery); + register(machine_schrabidium_battery); + register(machine_dineutronium_battery); + register(machine_fensu); + register(capacitor_bus); + register(capacitor_copper); + register(capacitor_gold); + register(capacitor_niobium); + register(capacitor_tantalium); + register(capacitor_schrabidate); + GameRegistry.registerBlock(machine_transformer, machine_transformer.getUnlocalizedName()); + GameRegistry.registerBlock(machine_transformer_20, machine_transformer_20.getUnlocalizedName()); + GameRegistry.registerBlock(machine_transformer_dnt, machine_transformer_dnt.getUnlocalizedName()); + GameRegistry.registerBlock(machine_transformer_dnt_20, machine_transformer_dnt_20.getUnlocalizedName()); + GameRegistry.registerBlock(machine_converter_he_rf, machine_converter_he_rf.getUnlocalizedName()); + GameRegistry.registerBlock(machine_converter_rf_he, machine_converter_rf_he.getUnlocalizedName()); + GameRegistry.registerBlock(machine_electric_furnace_off, machine_electric_furnace_off.getUnlocalizedName()); + GameRegistry.registerBlock(machine_electric_furnace_on, machine_electric_furnace_on.getUnlocalizedName()); + GameRegistry.registerBlock(machine_arc_furnace_off, machine_arc_furnace_off.getUnlocalizedName()); + GameRegistry.registerBlock(machine_arc_furnace_on, machine_arc_furnace_on.getUnlocalizedName()); + GameRegistry.registerBlock(machine_microwave, machine_microwave.getUnlocalizedName()); + GameRegistry.registerBlock(machine_assembler, machine_assembler.getUnlocalizedName()); + GameRegistry.registerBlock(machine_assemfac, machine_assemfac.getUnlocalizedName()); + GameRegistry.registerBlock(machine_chemplant, machine_chemplant.getUnlocalizedName()); + GameRegistry.registerBlock(machine_chemfac, machine_chemfac.getUnlocalizedName()); + register(machine_arc_welder); + register(machine_soldering_station); + register(machine_arc_furnace); + register(machine_mixer); + register(machine_fluidtank); + register(machine_bat9000); + register(machine_orbus); + GameRegistry.registerBlock(machine_boiler_off, machine_boiler_off.getUnlocalizedName()); + register(machine_steam_engine); + register(machine_turbine); + register(machine_large_turbine); + register(machine_chungus); + GameRegistry.registerBlock(machine_condenser, machine_condenser.getUnlocalizedName()); + GameRegistry.registerBlock(machine_tower_small, machine_tower_small.getUnlocalizedName()); + GameRegistry.registerBlock(machine_tower_large, machine_tower_large.getUnlocalizedName()); + register(machine_condenser_powered); + GameRegistry.registerBlock(machine_deuterium_extractor, machine_deuterium_extractor.getUnlocalizedName()); + GameRegistry.registerBlock(machine_deuterium_tower, machine_deuterium_tower.getUnlocalizedName()); + GameRegistry.registerBlock(machine_liquefactor, ItemBlockBase.class, machine_liquefactor.getUnlocalizedName()); + GameRegistry.registerBlock(machine_solidifier, ItemBlockBase.class, machine_solidifier.getUnlocalizedName()); + register(machine_compressor); + GameRegistry.registerBlock(machine_electrolyser, machine_electrolyser.getUnlocalizedName()); + GameRegistry.registerBlock(machine_waste_drum, machine_waste_drum.getUnlocalizedName()); + GameRegistry.registerBlock(machine_storage_drum, machine_storage_drum.getUnlocalizedName()); + GameRegistry.registerBlock(machine_shredder, machine_shredder.getUnlocalizedName()); + register(machine_well); + register(machine_pumpjack); + register(machine_fracking_tower); + register(machine_flare); + register(chimney_brick); + register(chimney_industrial); + register(machine_refinery); + register(machine_vacuum_distill); + register(machine_fraction_tower); + register(fraction_spacer); + register(machine_catalytic_cracker); + register(machine_catalytic_reformer); + register(machine_hydrotreater); + register(machine_coker); + register(machine_pyrooven); + register(machine_autosaw); + register(machine_excavator); + register(machine_ore_slopper); + register(machine_mining_laser); + register(barricade); + register(machine_turbofan); + register(machine_turbinegas); + register(machine_lpw2); + GameRegistry.registerBlock(machine_schrabidium_transmutator, machine_schrabidium_transmutator.getUnlocalizedName()); + GameRegistry.registerBlock(machine_teleporter, machine_teleporter.getUnlocalizedName()); + GameRegistry.registerBlock(teleanchor, teleanchor.getUnlocalizedName()); + GameRegistry.registerBlock(field_disturber, field_disturber.getUnlocalizedName()); + GameRegistry.registerBlock(machine_satlinker, machine_satlinker.getUnlocalizedName()); + GameRegistry.registerBlock(machine_keyforge, machine_keyforge.getUnlocalizedName()); + GameRegistry.registerBlock(machine_armor_table, machine_armor_table.getUnlocalizedName()); + GameRegistry.registerBlock(machine_forcefield, machine_forcefield.getUnlocalizedName()); + GameRegistry.registerBlock(radiorec, radiorec.getUnlocalizedName()); + GameRegistry.registerBlock(radiobox, radiobox.getUnlocalizedName()); + + //Multiblock Parts + GameRegistry.registerBlock(struct_launcher, struct_launcher.getUnlocalizedName()); + GameRegistry.registerBlock(struct_scaffold, struct_scaffold.getUnlocalizedName()); + GameRegistry.registerBlock(struct_launcher_core, struct_launcher_core.getUnlocalizedName()); + GameRegistry.registerBlock(struct_launcher_core_large, struct_launcher_core_large.getUnlocalizedName()); + GameRegistry.registerBlock(struct_soyuz_core, struct_soyuz_core.getUnlocalizedName()); + GameRegistry.registerBlock(struct_iter_core, struct_iter_core.getUnlocalizedName()); + GameRegistry.registerBlock(struct_plasma_core, struct_plasma_core.getUnlocalizedName()); + GameRegistry.registerBlock(struct_watz_core, struct_watz_core.getUnlocalizedName()); + GameRegistry.registerBlock(struct_icf_core, struct_icf_core.getUnlocalizedName()); + + //Absorbers + GameRegistry.registerBlock(absorber, absorber.getUnlocalizedName()); + GameRegistry.registerBlock(absorber_red, absorber_red.getUnlocalizedName()); + GameRegistry.registerBlock(absorber_green, absorber_green.getUnlocalizedName()); + GameRegistry.registerBlock(absorber_pink, absorber_pink.getUnlocalizedName()); + GameRegistry.registerBlock(decon, decon.getUnlocalizedName()); + GameRegistry.registerBlock(transission_hatch, transission_hatch.getUnlocalizedName()); + + //Solar Tower Blocks + GameRegistry.registerBlock(machine_solar_boiler, machine_solar_boiler.getUnlocalizedName()); + GameRegistry.registerBlock(solar_mirror, solar_mirror.getUnlocalizedName()); + + //Literal fucking garbage + GameRegistry.registerBlock(factory_titanium_hull, factory_titanium_hull.getUnlocalizedName()); + GameRegistry.registerBlock(factory_advanced_hull, factory_advanced_hull.getUnlocalizedName()); + + //CM stuff + register(custom_machine, ItemCustomMachine.class); + register(cm_block); + register(cm_sheet); + register(cm_engine); + register(cm_tank); + register(cm_circuit); + register(cm_port); + register(cm_flux); + register(cm_heat); + register(cm_anchor); + + //PWR + register(pwr_fuel); + register(pwr_control); + register(pwr_channel); + register(pwr_heatex); + register(pwr_heatsink); + register(pwr_neutron_source); + register(pwr_reflector); + register(pwr_casing); + register(pwr_port); + register(pwr_controller); + register(pwr_block); + + //Multiblock Generators + register(fusion_conductor); + GameRegistry.registerBlock(fusion_center, fusion_center.getUnlocalizedName()); + GameRegistry.registerBlock(fusion_motor, fusion_motor.getUnlocalizedName()); + GameRegistry.registerBlock(fusion_heater, fusion_heater.getUnlocalizedName()); + GameRegistry.registerBlock(fusion_hatch, fusion_hatch.getUnlocalizedName()); + GameRegistry.registerBlock(plasma, ItemBlockLore.class, plasma.getUnlocalizedName()); + GameRegistry.registerBlock(iter, iter.getUnlocalizedName()); + GameRegistry.registerBlock(plasma_heater, plasma_heater.getUnlocalizedName()); + + register(watz_element); + register(watz_cooler); + register(watz_end); + register(watz); + register(watz_pump); + + register(machine_icf_press); + register(icf_laser_component); + register(icf_controller); + register(icf_block); + register(icf_component); + register(icf); + + //E + GameRegistry.registerBlock(balefire, balefire.getUnlocalizedName()); + GameRegistry.registerBlock(fire_digamma, fire_digamma.getUnlocalizedName()); + GameRegistry.registerBlock(digamma_matter, digamma_matter.getUnlocalizedName()); + register(volcano_core); + register(volcano_rad_core); + + //Dark Fusion Core + GameRegistry.registerBlock(dfc_emitter, dfc_emitter.getUnlocalizedName()); + GameRegistry.registerBlock(dfc_injector, dfc_injector.getUnlocalizedName()); + GameRegistry.registerBlock(dfc_receiver, dfc_receiver.getUnlocalizedName()); + GameRegistry.registerBlock(dfc_stabilizer, dfc_stabilizer.getUnlocalizedName()); + GameRegistry.registerBlock(dfc_core, dfc_core.getUnlocalizedName()); + + //Missile Blocks + GameRegistry.registerBlock(machine_missile_assembly, machine_missile_assembly.getUnlocalizedName()); + GameRegistry.registerBlock(launch_pad, launch_pad.getUnlocalizedName()); + GameRegistry.registerBlock(launch_pad_rusted, launch_pad_rusted.getUnlocalizedName()); + GameRegistry.registerBlock(launch_pad_large, launch_pad_large.getUnlocalizedName()); + GameRegistry.registerBlock(compact_launcher, compact_launcher.getUnlocalizedName()); + GameRegistry.registerBlock(launch_table, launch_table.getUnlocalizedName()); + GameRegistry.registerBlock(soyuz_launcher, soyuz_launcher.getUnlocalizedName()); + GameRegistry.registerBlock(sat_dock, sat_dock.getUnlocalizedName()); + GameRegistry.registerBlock(soyuz_capsule, soyuz_capsule.getUnlocalizedName()); + GameRegistry.registerBlock(machine_radar, machine_radar.getUnlocalizedName()); + GameRegistry.registerBlock(machine_radar_large, machine_radar_large.getUnlocalizedName()); + GameRegistry.registerBlock(radar_screen, radar_screen.getUnlocalizedName()); + + //Guide + GameRegistry.registerBlock(book_guide, book_guide.getUnlocalizedName()); + + //Sat Blocks + GameRegistry.registerBlock(sat_mapper, sat_mapper.getUnlocalizedName()); + GameRegistry.registerBlock(sat_scanner, sat_scanner.getUnlocalizedName()); + GameRegistry.registerBlock(sat_radar, sat_radar.getUnlocalizedName()); + GameRegistry.registerBlock(sat_laser, sat_laser.getUnlocalizedName()); + GameRegistry.registerBlock(sat_foeq, sat_foeq.getUnlocalizedName()); + GameRegistry.registerBlock(sat_resonator, sat_resonator.getUnlocalizedName()); + + //Rails + GameRegistry.registerBlock(rail_wood, ItemBlockBase.class, rail_wood.getUnlocalizedName()); + GameRegistry.registerBlock(rail_narrow, ItemBlockBase.class, rail_narrow.getUnlocalizedName()); + GameRegistry.registerBlock(rail_highspeed, ItemBlockBase.class, rail_highspeed.getUnlocalizedName()); + GameRegistry.registerBlock(rail_booster, ItemBlockBase.class, rail_booster.getUnlocalizedName()); + register(rail_narrow_straight); + register(rail_narrow_curve); + register(rail_large_straight); + register(rail_large_straight_short); + register(rail_large_curve); + register(rail_large_curve_7); + register(rail_large_curve_9); + register(rail_large_ramp); + register(rail_large_buffer); + register(rail_large_switch); + register(rail_large_switch_flipped); + + //Crate + GameRegistry.registerBlock(crate, crate.getUnlocalizedName()); + GameRegistry.registerBlock(crate_weapon, crate_weapon.getUnlocalizedName()); + GameRegistry.registerBlock(crate_lead, crate_lead.getUnlocalizedName()); + GameRegistry.registerBlock(crate_metal, crate_metal.getUnlocalizedName()); + GameRegistry.registerBlock(crate_red, crate_red.getUnlocalizedName()); + GameRegistry.registerBlock(crate_can, crate_can.getUnlocalizedName()); + GameRegistry.registerBlock(crate_ammo, crate_ammo.getUnlocalizedName()); + GameRegistry.registerBlock(crate_jungle, crate_jungle.getUnlocalizedName()); + + //ElB + GameRegistry.registerBlock(statue_elb, statue_elb.getUnlocalizedName()); + GameRegistry.registerBlock(statue_elb_g, statue_elb_g.getUnlocalizedName()); + GameRegistry.registerBlock(statue_elb_w, statue_elb_w.getUnlocalizedName()); + GameRegistry.registerBlock(statue_elb_f, statue_elb_f.getUnlocalizedName()); + + //Fluids + GameRegistry.registerBlock(mud_block, mud_block.getUnlocalizedName()); + GameRegistry.registerBlock(acid_block, acid_block.getUnlocalizedName()); + GameRegistry.registerBlock(toxic_block, toxic_block.getUnlocalizedName()); + GameRegistry.registerBlock(schrabidic_block, schrabidic_block.getUnlocalizedName()); + GameRegistry.registerBlock(corium_block, corium_block.getUnlocalizedName()); + GameRegistry.registerBlock(volcanic_lava_block, volcanic_lava_block.getUnlocalizedName()); + GameRegistry.registerBlock(rad_lava_block, rad_lava_block.getUnlocalizedName()); + GameRegistry.registerBlock(sulfuric_acid_block, sulfuric_acid_block.getUnlocalizedName()); + //GameRegistry.registerBlock(concrete_liquid, concrete_liquid.getUnlocalizedName()); + + //Multiblock Dummy Blocks + GameRegistry.registerBlock(dummy_block_vault, dummy_block_vault.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_block_blast, dummy_block_blast.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_block_uf6, dummy_block_uf6.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_block_puf6, dummy_block_puf6.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_plate_compact_launcher, dummy_plate_compact_launcher.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_port_compact_launcher, dummy_port_compact_launcher.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_plate_launch_table, dummy_plate_launch_table.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_port_launch_table, dummy_port_launch_table.getUnlocalizedName()); + GameRegistry.registerBlock(dummy_plate_cargo, dummy_plate_cargo.getUnlocalizedName()); + + //Other Technical Blocks + GameRegistry.registerBlock(oil_pipe, oil_pipe.getUnlocalizedName()); + GameRegistry.registerBlock(vent_chlorine, vent_chlorine.getUnlocalizedName()); + GameRegistry.registerBlock(vent_cloud, vent_cloud.getUnlocalizedName()); + GameRegistry.registerBlock(vent_pink_cloud, vent_pink_cloud.getUnlocalizedName()); + GameRegistry.registerBlock(vent_chlorine_seal, vent_chlorine_seal.getUnlocalizedName()); + GameRegistry.registerBlock(chlorine_gas, chlorine_gas.getUnlocalizedName()); + GameRegistry.registerBlock(gas_radon, gas_radon.getUnlocalizedName()); + GameRegistry.registerBlock(gas_radon_dense, gas_radon_dense.getUnlocalizedName()); + GameRegistry.registerBlock(gas_radon_tomb, gas_radon_tomb.getUnlocalizedName()); + GameRegistry.registerBlock(gas_meltdown, gas_meltdown.getUnlocalizedName()); + GameRegistry.registerBlock(gas_monoxide, gas_monoxide.getUnlocalizedName()); + GameRegistry.registerBlock(gas_asbestos, gas_asbestos.getUnlocalizedName()); + GameRegistry.registerBlock(gas_coal, gas_coal.getUnlocalizedName()); + GameRegistry.registerBlock(gas_flammable, gas_flammable.getUnlocalizedName()); + GameRegistry.registerBlock(gas_explosive, gas_explosive.getUnlocalizedName()); + GameRegistry.registerBlock(vacuum, vacuum.getUnlocalizedName()); + + //??? + GameRegistry.registerBlock(crystal_virus, crystal_virus.getUnlocalizedName()); + GameRegistry.registerBlock(crystal_hardened, crystal_hardened.getUnlocalizedName()); + GameRegistry.registerBlock(crystal_pulsar, crystal_pulsar.getUnlocalizedName()); + GameRegistry.registerBlock(taint, ItemTaintBlock.class, taint.getUnlocalizedName()); + GameRegistry.registerBlock(cheater_virus, cheater_virus.getUnlocalizedName()); + GameRegistry.registerBlock(cheater_virus_seed, cheater_virus_seed.getUnlocalizedName()); + GameRegistry.registerBlock(ntm_dirt, ntm_dirt.getUnlocalizedName()); + GameRegistry.registerBlock(pink_log, pink_log.getUnlocalizedName()); + GameRegistry.registerBlock(pink_planks, pink_planks.getUnlocalizedName()); + GameRegistry.registerBlock(pink_slab, pink_slab.getUnlocalizedName()); + GameRegistry.registerBlock(pink_double_slab, pink_double_slab.getUnlocalizedName()); + GameRegistry.registerBlock(pink_stairs, pink_stairs.getUnlocalizedName()); + } + + private static void register(Block b) { + GameRegistry.registerBlock(b, ItemBlockBase.class, b.getUnlocalizedName()); + } + + private static void register(Block b, Class clazz) { + GameRegistry.registerBlock(b, clazz, b.getUnlocalizedName()); + } + + public static void addRemap(String unloc, Block block, int meta) { + Block remap = new BlockRemap(block, meta).setBlockName(unloc); + register(remap, ItemBlockRemap.class); + } + + // Pretty much the default getDrops function but with no damage set on the item (fucks with recipes) + // but setting the meta via damageDropped breaks creative middle-click and any WAILA-like overlays + public static ArrayList getDropsWithoutDamage(World world, Block block, int metadata, int fortune) { + ArrayList ret = new ArrayList(); + + int count = block.quantityDropped(metadata, fortune, world.rand); + for(int i = 0; i < count; i++) { + Item item = block.getItemDropped(metadata, world.rand, fortune); + if(item != null) { + ret.add(new ItemStack(item, 1, 0)); + } + } + + return ret; + } +} diff --git a/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java b/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java index 20c82c2fb..977051fb8 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java +++ b/src/main/java/com/hbm/blocks/generic/BlockOreBasalt.java @@ -8,16 +8,22 @@ import com.hbm.blocks.BlockEnumMulti; import com.hbm.blocks.ModBlocks; import com.hbm.items.ModItems; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.block.Block; import net.minecraft.block.material.Material; +import net.minecraft.client.renderer.texture.IIconRegister; import net.minecraft.entity.Entity; import net.minecraft.init.Blocks; import net.minecraft.item.Item; import net.minecraft.item.ItemStack; +import net.minecraft.util.IIcon; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; public class BlockOreBasalt extends BlockEnumMulti { + + protected IIcon[] topIcons; public BlockOreBasalt() { super(Material.rock, EnumBasaltOreType.class, true, true); @@ -79,4 +85,25 @@ public class BlockOreBasalt extends BlockEnumMulti { return ModBlocks.getDropsWithoutDamage(world, this, metadata, fortune); } + @Override + @SideOnly(Side.CLIENT) + public void registerBlockIcons(IIconRegister reg) { + super.registerBlockIcons(reg); + + Enum[] enums = theEnum.getEnumConstants(); + this.topIcons = new IIcon[enums.length]; + + for(int i = 0; i < topIcons.length; i++) { + Enum num = enums[i]; + this.topIcons[i] = reg.registerIcon(this.getTextureMultiName(num) + "_top"); + } + } + + @Override + @SideOnly(Side.CLIENT) + public IIcon getIcon(int side, int meta) { + if(side <= 1) return this.topIcons[meta % this.topIcons.length]; + return super.getIcon(side, meta); + } + } diff --git a/src/main/resources/assets/hbm/textures/blocks/basalt.png b/src/main/resources/assets/hbm/textures/blocks/basalt.png index 77a7455921ac620f7866a8337ff0df3fa1720baa..ddf35c770e5b55a1c41194f96d7fe4d9aaa402ec 100644 GIT binary patch delta 768 zcmdm}yiaL@O8tSVkcg6?#Bzm#qWrYXoK%I9%7Rpd)QZeB28N1TxdFF%4;yg&N$=`o zV6!&pySyaG{Kb!>jUk1%C)e1?StTdb+sYS6Yp5ucUQAoN(Aj5AiFj9IoxwtxIgIm? zP90tzU~{ytxaHQS|7V2#{I0}a?VfmV^M-S*lfPWoUo0fv-|5wM@6w4&9o`}uyj3;a zvtJhdJ+$jFPcL(`%kz!(kB)BN9$Me-eRHP7+?lFu4+>d!>^4aEuSkCJD%UnzQ|wc| zzxo5->yD9vkvkt;+$_U*hgl^#B{|X3*eq2yF(uJd*Cff(OgAyj!dN#c#WK}A&B)xu z$iQ&246D3KlBJ1JYHC`tu0e`LqOOUdk%4ZaX^NR{l7&TTs)=!mrD?M9Dp7G*2o zHZlk?u(UEYwlX%EJb_Iag};xjOU2mIFxlM5+*sE*F%f8RQj&pglA&d)ZnAMwVxqBe zTAG=;$>bb%A0&-tn-8;RaMTMa#Xe?WU|>t~c6VVo1%i9?i*11-oCO|{#S9GG!XV7Z zFl&wkP>{XE)7O>#1*fpMsmebUtGhsn3*N@0(YBE3VJxRl4-vr6ncJz<5p5 zOm!z64u+GBTd#2*ITLVI`rzkPT*l624`!$=lKvPzy>h95=fAt#co_=jrHh|dzR|t5 zX607DN~K>_A5tD=+*+^xl;ew8bhh^=jkL7;OslvA8$14l_Dpm;bn1df&yGJX2AebO z@BH0(c#G6^uZx^Ymug=HyL6=7-xQi2ccy!Zg_il1=XQOTT?_|aTlAIJ%>UoJRAkGw oW$R|_)DP5ry6=?sRP{6L@1K0hb_*3X0{Wc6)78&qol`;+0CUGIdH?_b delta 889 zcmdm|v{8A2O8xt)kcg6?#Bzm#qWrYXoK%I9%7Rpd)QZeB28N1Ty@8Q=M-_PfJQuNT zG8dC?*YSVFd++0Yl^IJ`hOF$9cyn+g`{ZxmziZdZs`*ZOdaG-?lR+P$#-@wEP=eqg|@_f88PDod8> z)^#{(Ej;12r)|-rwRY>at^Km4O#iZ$s`xrKlZ8>;hx47n49~w6_!V{Zyi+C57o{|t zVAfeF;bBaxZUwA7ZuIts?1@*LojvQbuW^YyE&kB5yoE*Md&ZTQQqRucykq?9@W0}< zUl^sC%eLt4oP3Xgfw48ydE@76%qnK7hK4DIrpCG^#)(O~CYGj2x`_rRM!J@kmIj7N z2BwzDsm7DvvdF6#rWqKSnHU)8Ca0wU6(*Wl>RMQsnCY4u8knY<7@J!f8Kh1&U{zN! zPBAh~woEnFH8%nqYiO)%nQES>n`V$~WRjYeoMdilI=PxPf!ol~z{JqV!oW7a+FtQU|?WN@^*J&umQpOJ$>Ck5zYdS$YKTtJ)o?fGGoP3 z`!b*)dx@v7EBgyhVMa?)=_ji+fkKict`Q~9`MJ5Nc_j?aMX8A;sVNHOnI#zt?w-B@ z;f;Laz#!%Jba4!^INdurapMsMo|f-<0s$%wEIJ0k^{gE$c0?Uu66$CGdyW>zt7l|q`7IbGCb(uuzapK?|G*HQ(A^s=AVdc zSItz0_~V5&X}jb^1PzRf&PBYu_j@&y_N}kJ*S+t3V-RfYxKJI>)bZlm+q7A4w{K-z zt?g1xEBiic9g2D@|0P9MT!Q2NL{KO*c)I$ztaD0e0sxS} BR;~a5 diff --git a/src/main/resources/assets/hbm/textures/blocks/basalt_top.png b/src/main/resources/assets/hbm/textures/blocks/basalt_top.png new file mode 100644 index 0000000000000000000000000000000000000000..77a7455921ac620f7866a8337ff0df3fa1720baa GIT binary patch literal 4529 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 M07*qoM6N<$f^P5Ot^fc4 literal 4661 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 U(&@Ua>;M1&07*qoM6N<$f)2I{@Bjb+ literal 4750 zcmeHKc~Dd57LSA~ASyekfVV+ZC^yR`y9qu_*wjD>u}akrH#avBB@4-gMCyhG7q&h` zDl&G^=L0u?VTqtY3yuaA{1JFDGQE3DO&MDs?gr5o`50 zgqzhW63Kj1BVFOr2-ywxxCw1&?)g{=QO@~!ASZVIv3}J`Pd%IDUD-p{PFdnml8s-U zPJZxUrN}GoTA}^3F6R!n#l9gQLW2Z}dd)#0|@wAW6Bslj^iJb2s6PfAT z&x^7v7wvFqK_c?92HRV0|25&K74aS`atgyqqzPGSkw_XP61`0aB(Z0GfiSXB>XsD~ zR~G2LHO(pId+E6|)WFW=hnL$#>_Yl z4fwU;yY6szd3(HQ`L;lE*>&sob2887RV__h770Y&vGTn8lX<(`FRj?~1mvmV9P-~^<= z6V+NF%p&GrQuq_Z!Cop8}-+x8j`K)C@~tIjB5bY2xeuxH)TYWL^|qWkswj6(ObQM*zX|; zwd$Q%@5N>rv8FRN5a2$_`yTpj?p82BNhEx+4okI!7bO-_Ec5e~I!vwPTW?tiU7=KP zxo|MXput#eoe=Z8w8gcO8Ie`k>|5fJ!0(5JY;2x`&7%Aiw&hes?6!w2aAX;Dk1 z0s^ZC$c8U6;3%Op$aT78A;l6DWbqswmVky*q68{N2^^5p5hkC`<1=`227}My@DbK0 z3_71a2Cq}9Rcrqj+R{FdV0h6Z)kZM?TB~Wer{eIG;iuupWVN-KAjsMld=wi_!HA~e z!x{sw;UO#u)h6O#{}?IQw|4a(6oX2M;s^q|nx#NNJt15=%te^NFcOTQJgx#&(ovpO zg;92+PDPkd10I?PbOc&~0<~%d%^O*&fcNpHB;2wNKr)!lgU3ilp^YRB_%o+~pz%pQNZ)a}#^w4T1wIHoUR~pI zeUJhl1Rk%h|C?M6?>?q*EqDVmflnp3s-h?0Gi#z^afFy8u>4DN^K*d3ULP56B#|b& zT8;^%l09C)IEjdogiZR{-gN?Rx{K_-4T)sKixP**xy`ACKg6_3z0PgyznRZS=$}~N z<-}pQxRBW?_6$M6sxD^5;o}O z_H5{>zf;>2SYKc7ys5X2RN+Rse^gR((L=VVs$BFNH)E#@38QvZbjAi2k*;Jq_4W19 z1J7^F>#5z8-COrGJ+N9shRV8r+SvH(Jz3DfzW)9&KYCz*zt8J!-L=zOT09EP%~e}C zHPJSXJALaW+RNt*_&K+w##YWc$lba!dMM#_^w;?dYCeWCy&7*u!i56|+x&b(=3Vs} z{O-`Cbvyx7I>dpCHW#^Pg$_Bg7&*P0WkDW(t;}OzuT~buB(Yauu2nZ2VvpPZQ?8v=A0}q?ftB@`P<1Cd^eoD_*sL9-+#B7Y;z)K zU*_zcafi<=qwaC?`@UdN*_Jufmgl>7-x9aNP0wP8ms4N8;#X^o^C!*P*pRU3hsQCg z$*-n&Z7I*s{n1fWwtfP1?5RHzzH4{h7X$gVhnCKG<6Qlk=!=4z7usdKe6rL%z<;4# zrc)4gcGAh!qP8!MGfoTKSTA*ZnVS~wb2`u~>h`JI=bSdvwxMbNGYzS!+u(iYNJhyE z&-|`0mar~AxOL*#h5e^06`CDYbEgQRr6RxknNG#!yz4<_UDG}nC065 diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_molysite_top.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_molysite_top.png new file mode 100644 index 0000000000000000000000000000000000000000..b19ad36c999f348f8cf7537eef14363fca609352 GIT binary patch literal 4750 zcmeHKc~Dd57LSA~ASyekfVV+ZC^yR`y9qu_*wjD>u}akrH#avBB@4-gMCyhG7q&h` zDl&G^=L0u?VTqtY3yuaA{1JFDGQE3DO&MDs?gr5o`50 zgqzhW63Kj1BVFOr2-ywxxCw1&?)g{=QO@~!ASZVIv3}J`Pd%IDUD-p{PFdnml8s-U zPJZxUrN}GoTA}^3F6R!n#l9gQLW2Z}dd)#0|@wAW6Bslj^iJb2s6PfAT z&x^7v7wvFqK_c?92HRV0|25&K74aS`atgyqqzPGSkw_XP61`0aB(Z0GfiSXB>XsD~ zR~G2LHO(pId+E6|)WFW=hnL$#>_Yl z4fwU;yY6szd3(HQ`L;lE*>&sob2887RV__h770Y&vGTn8lX<(`FRj?~1mvmV9P-~^<= z6V+NF%p&GrQuq_Z!Cop8}-+x8j`K)C@~tIjB5bY2xeuxH)TYWL^|qWkswj6(ObQM*zX|; zwd$Q%@5N>rv8FRN5a2$_`yTpj?p82BNhEx+4okI!7bO-_Ec5e~I!vwPTW?tiU7=KP zxo|MXput#eoe=Z8w8gcO8Ie`k>|5fJ!0(5JY;2x`&7%Aiw&hes?6!w2aAX;Dk1 z0s^ZC$c8U6;3%Op$aT78A;l6DWbqswmVky*q68{N2^^5p5hkC`<1=`227}My@DbK0 z3_71a2Cq}9Rcrqj+R{FdV0h6Z)kZM?TB~Wer{eIG;iuupWVN-KAjsMld=wi_!HA~e z!x{sw;UO#u)h6O#{}?IQw|4a(6oX2M;s^q|nx#NNJt15=%te^NFcOTQJgx#&(ovpO zg;92+PDPkd10I?PbOc&~0<~%d%^O*&fcNpHB;2wNKr)!lgU3ilp^YRB_%o+~pz%pQNZ)a}#^w4T1wIHoUR~pI zeUJhl1Rk%h|C?M6?>?q*EqDVmflnp3s-h?0Gi#z^afFy8u>4DN^K*d3ULP56B#|b& zT8;^%l09C)IEjdogiZR{-gN?Rx{K_-4T)sKixP**xy`ACKg6_3z0PgyznRZS=$}~N z<-}pQxRBW?_6$M6sxD^5;o}O z_H5{>zf;>2SYKc7ys5X2RN+Rse^gR((L=VVs$BFNH)E#@38QvZbjAi2k*;Jq_4W19 z1J7^F>#5z8-COrGJ+N9shRV8r+SvH(Jz3DfzW)9&KYCz*zt8J!-L=zOT09EP%~e}C zHPJSXJALaW+RNt*_&K+w##YWc$lba!dMM#_^w;?dYCeWCy&7*u!i56|+x&b(=3Vs} z{O-`Cbvyx7I>dpCHW#^Pg$_Bg7&*P0WkDW(t;}OzuT~buB(Yauu2nZ2VvpPZQ?8v=A0}q?ftB@`P<1Cd^eoD_*sL9-+#B7Y;z)K zU*_zcafi<=qwaC?`@UdN*_Jufmgl>7-x9aNP0wP8ms4N8;#X^o^C!*P*pRU3hsQCg z$*-n&Z7I*s{n1fWwtfP1?5RHzzH4{h7X$gVhnCKG<6Qlk=!=4z7usdKe6rL%z<;4# zrc)4gcGAh!qP8!MGfoTKSTA*ZnVS~wb2`u~>h`JI=bSdvwxMbNGYzS!+u(iYNJhyE z&-|`0mar~AxOL*#h5e^06`CDYbEgQRr6RxknNG#!yz4<_UDG}nC065 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_overlay.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_overlay.png deleted file mode 100644 index dba5f83397f15c50f209cedc89e35e1d37dd795b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 947 zcmV;k15EshP)zqpB)LM@JM21)iUu z6#$FHLLd+zl}eG%=gDL;F+mXiZf6} zNZ@cd08mvGgTcV;?5rPPcXyXSAb_yAxTx3F)v><5uJE52fXn6bdpsUgRi&z`isj{H zlF1}@cXt3pqfteYBw1KnThsUU_Q>UOjE|3#&1Mlrk&TTFGMS9xa=BtFD=Yq+n;UL# zZ*e#ryuH0)G#Uwq!x(;kepYQZ8<9u^kHXa{2M_@Nh@h^*)=; z#@E*uHk*yZ!$b1d<#L%wB*MqXhw}UT8xuv*+uz?W`+Pn^p%CZi=hW2H zV7J=|hr^gmCPY!hAPB3(Bk%9;lu9K8uh*;ld_IguBZWc%o6W}d_BKsTO;{`zhKGj%*xufzp`n3;g9F9w zcE@B{_5&D7rP69TomQHgn>)V0zuDd0RqE^OcQj4w({&wHRTWLsI!q=Ls;Vk3mn$|m zH|Ga9J3B*=BuO`$%}O?#rJ|xDW;7a^nVIpM&1Q~|k4YwzTwPt^bUGCvHa|b_4+eu+ ztybdkIR98I7A7Yr7?bpUs()7D+Yssa=A=CMG7hxVZTLg4gS1Y;26`>S`24p|!P@e*p%6 VrkqTs1gHQ2002ovPDHLkV1gl;v{V29 diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur.png index db2e0d04bdccfc1d8052b4567f615b4be471cdda..eaf1ed5ac54a09fe3bf3a7ed0e33cd0945a0801e 100644 GIT binary patch delta 616 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 P7Dy43B>(E2#RdNX`VZ4N diff --git a/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur_top.png b/src/main/resources/assets/hbm/textures/blocks/ore_basalt_sulfur_top.png new file mode 100644 index 0000000000000000000000000000000000000000..db2e0d04bdccfc1d8052b4567f615b4be471cdda GIT binary patch literal 4706 zcmeHKc~nzp7Jn=%n}9+QX)2kZqe!#8>`x-nge5{CB301Z`nJR;*+>EjR9Zn%qX^PP zP;t;saa5$XQ^6fnq^ItHol)r&C_3W~E*)_xGG78Bp6NMrJZJhJ$$5G2-R1Y)`@8pk zC!bxF6gSo@#0!F;v5I(k3b^|_E|1aRH}qjY3T`KIQ`0OdsFiLs8Pt@Pq+4=~B%QQT zY6!Bm=~O?CZKV7Bs##myIbm^$EM$7tisBCfDyHv~p3JOkK`Wl#eiFamA!weUxuYIaWPuFP54v!CSdcr)n!==*neRGHhS`hNS@Fa0Y6l0){< z?}uF?%R0nmw4ldlzb;i?2v}`zN||tG(b?0hW=G0sb5hs;%Ue?R#`%R6e_Oh>w)Yy_ zCura2K9_D5G4iKOE-mnwn3bw3jLCU-TPem+_GbF^ueq9Bn()W@ql#$WJEIG)JwD#w zX{}Rd=APafSmbt;UDwAQ?Vg=Kud%M7M0YsL^>Jl>M9tN`g8YNYt#7`?G`aie+$LOl zOWE$mvM&F5>LPe@+=Gkb*2Z-971f9Pt<>k|3q<=LNs~gCzfIOIbEDB*uTI%~wEKQ{ zefK|}-=(hiy0v{|Y7So%eiXD_HU-)%O__+`1|16}3>e9>>5QQ7ASg1*W<>D}(n7~b z4W*YddJZ=*=oBGk%oiv*N~4TiLdEBr$ho;msd#P%E+H6EGrb~h2msKL7L;z&Y4v8r zCS^Er5%BB~vl(=!i6ukINK>llGJ}bv^I3crhZ$p|vSG$dFM6bjP$Mbw*g**JCS@$K zSd0jpZM9liRvyb>(y+M_iG zhAfMe!2o*ti}-X#rE&;fZysa;@WHmBMmCqlVe544;T~p7Of~=+4CpsK%&A~X*(s#i zkY&Qjm~2vS2^$VU;6wh#ER)um4uP{tEvW;hX0R&vl_ld8O4X2ug8~huGdjHh*{@hy zDD_LSUWv`2ai%jo5a2$9`-=68+?~e2N~uKT20Y6Vo@8hl#=j$>j1;9*Uxb2<3{0K`HcR3#!LS2NVEjQ2+-O6R1dx37I&`Bba3nZ{aGLX0vaUN+hgI;u?aycv>-|6ls3FlcX$q|m0+L<)Pl-U3kg6uFdyMa5UwPZ%S8kt1Qthd zIS6N%y@8>&Fl>tfegiVFb%C9bJ+u`L@&#i3JwJnW_&t}P(?=G0Eq+Jn8lmg87$MnoE#r~y`oGcT_3|)9>cKxCD>y1C{FXid$E?v&r!hX=3_;!j zj>`qwToDX}V=M|~%$OUV0WK06CLX^Yf?RzS^5|6Y8QrHpCI!q1T-6}qTx||g`>$&) zpOomavqfyTb8}uH&5<9Zq74?>oGMI+x~GSDNw=QW z7cBd!@B79RGup~#)uik?i{;W71y%b`?e*J~W;n>~$!RYvxP3}IZ{r`f3UB&sUY-{g z8kOAO68!Ph%9=m7G?{tYYmIWmqu^v)5w$M6WKYE9gmm?S;`gog3x@?l(Y%0j?-N_5TbLq}{_%V+axg)*r1k>{#!i_xNKpU;MTa+QE~Ir)$@xMuwNWcwGM#d*HR3b+_7 zpzPJ>C+pAYx#_fwgN?bU~?aUHa36xZPE4Vb4XxEDaRAJ-Bjb33W`flQ=fA^I^{E)F^M~-aM zj2SaLsn!eF&1bU~^qo$7a3rOw6Upg`3r)C0)w;bK+;QWOzKgxaqu*unv4F!5xCTCG P7Dy43B>(E2#RdNX`VZ4N literal 0 HcmV?d00001 From b36cf4213f2da82b8c3c265a9de7aaccd075cd7f Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 19 Sep 2024 14:32:57 +1000 Subject: [PATCH 27/63] Horizontal scaffolding --- .../com/hbm/blocks/generic/BlockScaffold.java | 48 +++++++++++-------- .../hbm/render/block/RenderScaffoldBlock.java | 29 ++++++++--- 2 files changed, 52 insertions(+), 25 deletions(-) diff --git a/src/main/java/com/hbm/blocks/generic/BlockScaffold.java b/src/main/java/com/hbm/blocks/generic/BlockScaffold.java index 64a2eb919..1f34d1d84 100644 --- a/src/main/java/com/hbm/blocks/generic/BlockScaffold.java +++ b/src/main/java/com/hbm/blocks/generic/BlockScaffold.java @@ -16,6 +16,7 @@ import net.minecraft.util.IIcon; import net.minecraft.util.MathHelper; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; public class BlockScaffold extends BlockMulti { @@ -59,22 +60,34 @@ public class BlockScaffold extends BlockMulti { public IIcon getIcon(int side, int meta) { return this.icons[this.damageDropped(meta)]; } + + @Override + public int onBlockPlaced(World world, int x, int y, int z, int side, float fx, float fy, float fz, int meta) { + return side; + } @Override public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { - int i = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3; + ForgeDirection placed = ForgeDirection.getOrientation(world.getBlockMetadata(x, y, z)); int meta = stack.getItemDamage(); - - if(i % 2 == 0) { - world.setBlockMetadataWithNotify(x, y, z, meta, 2); + + if(placed == ForgeDirection.UP || placed == ForgeDirection.DOWN) { + int rot = MathHelper.floor_double(player.rotationYaw * 4.0F / 360.0F + 0.5D) & 3; + if(rot % 2 == 0) { + world.setBlockMetadataWithNotify(x, y, z, meta, 2); + } else { + world.setBlockMetadataWithNotify(x, y, z, meta + 8, 2); + } + } else if(placed == ForgeDirection.NORTH || placed == ForgeDirection.SOUTH) { + world.setBlockMetadataWithNotify(x, y, z, meta + 4, 2); } else { - world.setBlockMetadataWithNotify(x, y, z, meta + 8, 2); + world.setBlockMetadataWithNotify(x, y, z, meta + 12, 2); } } @Override public int damageDropped(int meta) { - return rectify(meta) & 7; + return rectify(meta); } @Override @@ -83,27 +96,24 @@ public class BlockScaffold extends BlockMulti { } @Override - public void setBlockBoundsBasedOnState(IBlockAccess p_149719_1_, int p_149719_2_, int p_149719_3_, int p_149719_4_) { - int te = p_149719_1_.getBlockMetadata(p_149719_2_, p_149719_3_, p_149719_4_); + public void setBlockBoundsBasedOnState(IBlockAccess world, int x, int y, int z) { + int meta = world.getBlockMetadata(x, y, z); float f = 0.0625F; - if((te & 8) != 0) + if(meta >= 12) { + this.setBlockBounds(0.0F, 2 * f, 0.0F, 1.0F, 14 * f, 1.0F); + } else if(meta >= 8) { this.setBlockBounds(2 * f, 0.0F, 0.0F, 14 * f, 1.0F, 1.0F); - else + } else if(meta >= 4) { + this.setBlockBounds(0.0F, 2 * f, 0.0F, 1.0F, 14 * f, 1.0F); + } else { this.setBlockBounds(0.0F, 0.0F, 2 * f, 1.0F, 1.0F, 14 * f); + } } @Override public AxisAlignedBB getCollisionBoundingBoxFromPool(World world, int x, int y, int z) { - - int te = world.getBlockMetadata(x, y, z); - float f = 0.0625F; - - if((te & 8) != 0) - this.setBlockBounds(2 * f, 0.0F, 0.0F, 14 * f, 1.0F, 1.0F); - else - this.setBlockBounds(0.0F, 0.0F, 2 * f, 1.0F, 1.0F, 14 * f); - + setBlockBoundsBasedOnState(world, x, y, z); return AxisAlignedBB.getBoundingBox(x + this.minX, y + this.minY, z + this.minZ, x + this.maxX, y + this.maxY, z + this.maxZ); } } diff --git a/src/main/java/com/hbm/render/block/RenderScaffoldBlock.java b/src/main/java/com/hbm/render/block/RenderScaffoldBlock.java index 69be9500e..0298b24ad 100644 --- a/src/main/java/com/hbm/render/block/RenderScaffoldBlock.java +++ b/src/main/java/com/hbm/render/block/RenderScaffoldBlock.java @@ -49,14 +49,31 @@ public class RenderScaffoldBlock implements ISimpleBlockRenderingHandler { iicon = renderer.overrideBlockTexture; } - float rotation = (float) -Math.PI; + float ox = x + 0.5F; + float oy = y; + float oz = z + 0.5F; - if((world.getBlockMetadata(x, y, z) & 8) == 0) - rotation = -90F / 180F * (float) Math.PI; + float rotation = (float) Math.PI * -0.5F; + float pitch = 0; - tessellator.addTranslation(x + 0.5F, y, z + 0.5F); - ObjUtil.renderWithIcon((WavefrontObject) ResourceManager.scaffold, iicon, tessellator, rotation, true); - tessellator.addTranslation(-x - 0.5F, -y, -z - 0.5F); + int meta = world.getBlockMetadata(x, y, z); + + if(meta >= 12) { + pitch = (float) Math.PI * 0.5F; + rotation = (float) -Math.PI; + ox = x + 1.0F; + oy = y + 0.5F; + } else if(meta >= 8) { + rotation = (float) -Math.PI; + } else if(meta >= 4) { + pitch = (float) Math.PI * 0.5F; + oy = y + 0.5F; + oz = z; + } + + tessellator.addTranslation(ox, oy, oz); + ObjUtil.renderWithIcon((WavefrontObject) ResourceManager.scaffold, iicon, tessellator, rotation, pitch, true); + tessellator.addTranslation(-ox, -oy, -oz); return true; } From 408a03ab47af7d52aba5bab60105d6560866506b Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 19 Sep 2024 11:10:27 +1000 Subject: [PATCH 28/63] Fix GL state leak in fluid tank rendering --- src/main/java/com/hbm/render/tileentity/RenderFluidTank.java | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/hbm/render/tileentity/RenderFluidTank.java b/src/main/java/com/hbm/render/tileentity/RenderFluidTank.java index aba2c7f91..acb9a0b0c 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderFluidTank.java +++ b/src/main/java/com/hbm/render/tileentity/RenderFluidTank.java @@ -75,7 +75,8 @@ public class RenderFluidTank extends TileEntitySpecialRenderer implements IItemR DiamondPronter.pront(type.poison, type.flammability, type.reactivity, type.symbol); GL11.glPopMatrix(); } - + + GL11.glEnable(GL11.GL_CULL_FACE); GL11.glPopMatrix(); RenderHelper.enableStandardItemLighting(); } From f2b7ce48dcab5b5c8857e0b27275406aa1831310 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 26 Sep 2024 16:09:28 +1000 Subject: [PATCH 29/63] fuck you gradle 4.4 --- build.gradle | 1 + 1 file changed, 1 insertion(+) diff --git a/build.gradle b/build.gradle index 31b7a3b89..3542c8f74 100644 --- a/build.gradle +++ b/build.gradle @@ -32,6 +32,7 @@ if(!mod_build_number.isEmpty()) { group = "com.hbm" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "HBM-NTM" compileJava.options.encoding = 'UTF-8' +compileJava.options.compilerArgs += '-proc:none' sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' From 2584934e0b3d71377910a56ce1d0fb8f13124584 Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 26 Sep 2024 11:25:11 +0200 Subject: [PATCH 30/63] ended endlessIDs --- build.gradle | 10 ---- .../ContainerUpgradeCraftingHandler.java | 57 +++++++------------ .../weapon/sedna/factory/GunFactory.java | 2 +- .../com/hbm/main/ModEventHandlerClient.java | 27 ++++++++- .../hbm/packet/toclient/BiomeSyncPacket.java | 9 ++- .../packet/toclient/GunAnimationPacket.java | 4 ++ src/main/java/com/hbm/util/Compat.java | 32 +++++++++++ src/main/java/com/hbm/world/WorldUtil.java | 15 ++--- 8 files changed, 95 insertions(+), 61 deletions(-) diff --git a/build.gradle b/build.gradle index 3542c8f74..c1e0af63f 100644 --- a/build.gradle +++ b/build.gradle @@ -76,14 +76,6 @@ repositories { name = "gt" url = "https://gregtech.mechaenetia.com/" } - maven { - name = 'FalsePattern' - url = "https://mvn.falsepattern.com/releases/" - } - maven { - name = "GitHub" - url = "https://jitpack.io" - } //maven { // name = "CurseForge" // url = "https://minecraft.curseforge.com/api/maven/" @@ -103,8 +95,6 @@ dependencies { compileOnly "inventorytweaks:InventoryTweaks:1.59-dev:deobf" implementation "li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api" - - compileOnly 'com.falsepattern:endlessids-mc1.7.10:1.5.4:dev' } processResources { diff --git a/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java b/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java index 22949d25f..110967484 100644 --- a/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java +++ b/src/main/java/com/hbm/crafting/handlers/ContainerUpgradeCraftingHandler.java @@ -1,20 +1,12 @@ package com.hbm.crafting.handlers; -import java.util.ArrayList; - import com.hbm.blocks.generic.BlockStorageCrate; import com.hbm.blocks.machine.BlockMassStorage; import net.minecraft.block.Block; import net.minecraft.inventory.InventoryCrafting; -import net.minecraft.item.Item; import net.minecraft.item.ItemStack; -import net.minecraft.item.crafting.IRecipe; -import net.minecraft.util.MathHelper; -import net.minecraft.world.World; import net.minecraftforge.oredict.ShapedOreRecipe; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.nbt.NBTTagList; /** * Handles upgrading storage crates and mass storage blocks, preserving their contents. @@ -24,35 +16,26 @@ import net.minecraft.nbt.NBTTagList; */ public class ContainerUpgradeCraftingHandler extends ShapedOreRecipe { - public ContainerUpgradeCraftingHandler(ItemStack result, Object... items){ - super(result, items); - } + public ContainerUpgradeCraftingHandler(ItemStack result, Object... items) { + super(result, items); + } - @Override - public ItemStack getCraftingResult(InventoryCrafting inventoryCrafting) { - - ItemStack source = getFirstContainer(inventoryCrafting); - ItemStack result = super.getCraftingResult(inventoryCrafting); - - result.setTagCompound(source.getTagCompound()); - - return result; - } - - private static ItemStack getFirstContainer(InventoryCrafting inventoryCrafting) { - for (int i = 0; i < 9; ++i) { - ItemStack itemstack = inventoryCrafting.getStackInRowAndColumn(i % 3, i / 3); - if (itemstack == null) - continue; - - Block block = Block.getBlockFromItem(itemstack.getItem()); - if (block == null) - continue; - - if (block instanceof BlockStorageCrate || block instanceof BlockMassStorage) - return itemstack; - } - return null; - } + @Override + public ItemStack getCraftingResult(InventoryCrafting inventoryCrafting) { + ItemStack source = getFirstContainer(inventoryCrafting); + ItemStack result = super.getCraftingResult(inventoryCrafting); + result.setTagCompound(source.getTagCompound()); + return result; + } + private static ItemStack getFirstContainer(InventoryCrafting inventoryCrafting) { + for(int i = 0; i < 9; ++i) { + ItemStack itemstack = inventoryCrafting.getStackInRowAndColumn(i % 3, i / 3); + if(itemstack == null) continue; + Block block = Block.getBlockFromItem(itemstack.getItem()); + if(block == null) continue; + if(block instanceof BlockStorageCrate || block instanceof BlockMassStorage) return itemstack; + } + return null; + } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index d1a42d9fa..d44feaa28 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -35,7 +35,7 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) + .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index e6c66ceb8..68844ea63 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -149,6 +149,11 @@ public class ModEventHandlerClient { public static long flashTimestamp; public static final int shakeDuration = 1_500; public static long shakeTimestamp; + + public static float recoilVertical = 0; + public static float recoilHorizontal = 0; + public static float offsetVertical = 0; + public static float offsetHorizontal = 0; @SubscribeEvent public void onOverlayRender(RenderGameOverlayEvent.Pre event) { @@ -972,9 +977,10 @@ public class ModEventHandlerClient { } else { isRenderingItems = false; } + + EntityPlayer player = mc.thePlayer; if(event.phase == Phase.START) { - EntityPlayer player = mc.thePlayer; float discriminator = 0.003F; float defaultStepSize = 0.5F; @@ -991,6 +997,25 @@ public class ModEventHandlerClient { for(int i = 1; i < 4; i++) if(player.stepHeight == i + discriminator) player.stepHeight = defaultStepSize; } } + + if(event.phase == Phase.END) { + + this.offsetVertical += this.recoilVertical; + this.offsetHorizontal += this.recoilHorizontal; + player.rotationPitch += this.recoilVertical; + player.rotationYaw += this.recoilHorizontal; + + float decay = 0.8F; + this.recoilVertical *= decay; + this.offsetHorizontal *= decay; + float dV = this.offsetVertical * 0.2F; + float dH = this.offsetHorizontal * 0.2F; + + this.offsetVertical -= dV; + this.offsetHorizontal -= dH; + player.rotationPitch += dV; + player.rotationYaw += dH; + } } public static ItemStack getMouseOverStack() { diff --git a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java index 0fcb81f1a..5b7e1880a 100644 --- a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java +++ b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java @@ -1,7 +1,6 @@ package com.hbm.packet.toclient; import cpw.mods.fml.common.Loader; -import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; import com.hbm.util.Compat; import cpw.mods.fml.common.network.simpleimpl.IMessage; @@ -105,13 +104,13 @@ public class BiomeSyncPacket implements IMessage { if(Loader.isModLoaded(Compat.MOD_EIDS)) { if (m.biomeArray == null) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) array[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); } else { for (int i = 0; i < 255; ++i) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[i] = m.biomeArray[i]; + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) array[i] = m.biomeArray[i]; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); } } diff --git a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java index 51aaca407..7b096cef2 100644 --- a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java +++ b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java @@ -5,6 +5,7 @@ import java.util.function.BiFunction; import com.hbm.items.weapon.ItemGunBase; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ModEventHandlerClient; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.HbmAnimations; import com.hbm.render.anim.HbmAnimations.AnimType; @@ -97,6 +98,9 @@ public class GunAnimationPacket implements IMessage { if(type == AnimType.CYCLE) { gun.lastShot = System.currentTimeMillis(); gun.shotRand = player.worldObj.rand.nextDouble(); + + ModEventHandlerClient.recoilVertical += 1; + ModEventHandlerClient.recoilHorizontal += player.getRNG().nextGaussian(); } BiFunction anims = config.getAnims(stack); diff --git a/src/main/java/com/hbm/util/Compat.java b/src/main/java/com/hbm/util/Compat.java index 98e26f436..fd6ab8764 100644 --- a/src/main/java/com/hbm/util/Compat.java +++ b/src/main/java/com/hbm/util/Compat.java @@ -1,5 +1,6 @@ package com.hbm.util; +import java.lang.reflect.Method; import java.util.ArrayList; import java.util.List; import java.util.concurrent.ConcurrentHashMap; @@ -200,6 +201,37 @@ public class Compat { MainRegistry.logger.info("#######################################################"); } + public static Class getChunkBiomeHook() { + try { + return Class.forName("com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook"); + } catch(ClassNotFoundException e) { + return null; + } + } + + public static Method getBiomeShortArray; + + public static Method getBiomeShortArray() { + if(getBiomeShortArray != null) return getBiomeShortArray; + try { + Method m = getChunkBiomeHook().getDeclaredMethod("getBiomeShortArray"); + getBiomeShortArray = m; + return m; + } catch(Exception e) { + return null; + } + } + + public static short[] getBiomeShortArray(Object instance) { + Method m = getBiomeShortArray(); + if(m != null) { + try { + return (short[]) m.invoke(instance); + } catch(Exception e) { } + } + return null; + } + /** A standard implementation of safely grabbing a tile entity without loading chunks, might have more fluff added to it later on. */ public static TileEntity getTileStandard(World world, int x, int y, int z) { if(!world.getChunkProvider().chunkExists(x >> 4, z >> 4)) return null; diff --git a/src/main/java/com/hbm/world/WorldUtil.java b/src/main/java/com/hbm/world/WorldUtil.java index 8cda8edb8..66c9cd260 100644 --- a/src/main/java/com/hbm/world/WorldUtil.java +++ b/src/main/java/com/hbm/world/WorldUtil.java @@ -3,7 +3,6 @@ package com.hbm.world; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.BiomeSyncPacket; import com.hbm.util.Compat; -import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.Entity; @@ -24,8 +23,8 @@ public class WorldUtil { public static void setBiome(World world, int x, int z, BiomeGenBase biome) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - short[] array = ((ChunkBiomeHook) chunk).getBiomeShortArray(); - array[(z & 15) << 4 | x & 15] = (short) biome.biomeID; + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) array[(z & 15) << 4 | x & 15] = (short) biome.biomeID; } else { chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)] = (byte)(biome.biomeID & 255); } @@ -35,7 +34,8 @@ public class WorldUtil { public static void syncBiomeChange(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, array), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } else { PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } @@ -44,8 +44,8 @@ public class WorldUtil { public static void syncBiomeChangeBlock(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - short biome = ((ChunkBiomeHook) chunk).getBiomeShortArray()[(z & 15) << 4 | (x & 15)]; - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, array[(z & 15) << 4 | (x & 15)]), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } else { byte biome = chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)]; PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); @@ -65,7 +65,8 @@ public class WorldUtil { /* this sucks ass */ ChunkCoordIntPair coord = chunk.getChunkCoordIntPair(); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); + short[] array = Compat.getBiomeShortArray(chunk); + if(array != null) PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, array), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); } else { PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); } From 441a46f24ff178bfc4401d326a2e2db9bfaa95f8 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 26 Sep 2024 19:27:20 +1000 Subject: [PATCH 31/63] Revert all that gradle bullshit and do reflection instead --- build.gradle | 11 ------ .../hbm/packet/toclient/BiomeSyncPacket.java | 18 ++++----- src/main/java/com/hbm/world/WorldUtil.java | 38 ++++++++++++++++--- 3 files changed, 42 insertions(+), 25 deletions(-) diff --git a/build.gradle b/build.gradle index 3542c8f74..07cca4635 100644 --- a/build.gradle +++ b/build.gradle @@ -32,7 +32,6 @@ if(!mod_build_number.isEmpty()) { group = "com.hbm" // http://maven.apache.org/guides/mini/guide-naming-conventions.html archivesBaseName = "HBM-NTM" compileJava.options.encoding = 'UTF-8' -compileJava.options.compilerArgs += '-proc:none' sourceCompatibility = targetCompatibility = compileJava.sourceCompatibility = compileJava.targetCompatibility = '1.8' @@ -76,14 +75,6 @@ repositories { name = "gt" url = "https://gregtech.mechaenetia.com/" } - maven { - name = 'FalsePattern' - url = "https://mvn.falsepattern.com/releases/" - } - maven { - name = "GitHub" - url = "https://jitpack.io" - } //maven { // name = "CurseForge" // url = "https://minecraft.curseforge.com/api/maven/" @@ -103,8 +94,6 @@ dependencies { compileOnly "inventorytweaks:InventoryTweaks:1.59-dev:deobf" implementation "li.cil.oc:OpenComputers:MC1.7.10-1.5.+:api" - - compileOnly 'com.falsepattern:endlessids-mc1.7.10:1.5.4:dev' } processResources { diff --git a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java index 0fcb81f1a..aee64d099 100644 --- a/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java +++ b/src/main/java/com/hbm/packet/toclient/BiomeSyncPacket.java @@ -1,8 +1,8 @@ package com.hbm.packet.toclient; import cpw.mods.fml.common.Loader; -import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; import com.hbm.util.Compat; +import com.hbm.world.WorldUtil; import cpw.mods.fml.common.network.simpleimpl.IMessage; import cpw.mods.fml.common.network.simpleimpl.IMessageHandler; @@ -104,24 +104,24 @@ public class BiomeSyncPacket implements IMessage { chunk.isModified = true; if(Loader.isModLoaded(Compat.MOD_EIDS)) { - if (m.biomeArray == null) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; + short[] target = WorldUtil.getBiomeShortArray(chunk); + if(m.biomeArray == null) { + target[(m.blockZ & 15) << 4 | m.blockX & 15] = m.biome; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); } else { - for (int i = 0; i < 255; ++i) { - ChunkBiomeHook hook = (ChunkBiomeHook) chunk; - hook.getBiomeShortArray()[i] = m.biomeArray[i]; + for(int i = 0; i < 255; ++i) { + target[i] = m.biomeArray[i]; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); } } } else { + byte[] target = chunk.getBiomeArray(); if(m.biomeArray == null) { - chunk.getBiomeArray()[(m.blockZ & 15) << 4 | (m.blockX & 15)] = (byte) m.biome; + target[(m.blockZ & 15) << 4 | (m.blockX & 15)] = (byte) m.biome; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, m.chunkX << 4, 255, m.chunkZ << 4); } else { for(int i = 0; i < 256; i++) { - chunk.getBiomeArray()[i] = (byte) m.biomeArray[i]; + target[i] = (byte) m.biomeArray[i]; world.markBlockRangeForRenderUpdate(m.chunkX << 4, 0, m.chunkZ << 4, (m.chunkX << 4) + 15, 255, (m.chunkZ << 4) + 15); } } diff --git a/src/main/java/com/hbm/world/WorldUtil.java b/src/main/java/com/hbm/world/WorldUtil.java index 8cda8edb8..9004a31c0 100644 --- a/src/main/java/com/hbm/world/WorldUtil.java +++ b/src/main/java/com/hbm/world/WorldUtil.java @@ -3,7 +3,11 @@ package com.hbm.world; import com.hbm.packet.PacketDispatcher; import com.hbm.packet.toclient.BiomeSyncPacket; import com.hbm.util.Compat; -import com.falsepattern.endlessids.mixin.helpers.ChunkBiomeHook; + +import java.lang.invoke.MethodHandle; +import java.lang.invoke.MethodHandles; +import java.lang.invoke.MethodType; + import cpw.mods.fml.common.Loader; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import net.minecraft.entity.Entity; @@ -21,10 +25,26 @@ import net.minecraftforge.event.entity.EntityJoinWorldEvent; public class WorldUtil { + private static final MethodHandle getBiomeShortHandle; + + static { + if(Loader.isModLoaded(Compat.MOD_EIDS)) { + try { + MethodHandles.Lookup lookup = MethodHandles.publicLookup(); + MethodType methodType = MethodType.methodType(short[].class); + getBiomeShortHandle = lookup.findVirtual(Chunk.class, "getBiomeShortArray", methodType); + } catch(Exception e) { + throw new AssertionError(); + } + } else { + getBiomeShortHandle = null; + } + } + public static void setBiome(World world, int x, int z, BiomeGenBase biome) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - short[] array = ((ChunkBiomeHook) chunk).getBiomeShortArray(); + short[] array = getBiomeShortArray(chunk); array[(z & 15) << 4 | x & 15] = (short) biome.biomeID; } else { chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)] = (byte)(biome.biomeID & 255); @@ -35,7 +55,7 @@ public class WorldUtil { public static void syncBiomeChange(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, getBiomeShortArray(chunk)), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } else { PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x >> 4, z >> 4, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } @@ -44,7 +64,7 @@ public class WorldUtil { public static void syncBiomeChangeBlock(World world, int x, int z) { Chunk chunk = world.getChunkFromBlockCoords(x, z); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - short biome = ((ChunkBiomeHook) chunk).getBiomeShortArray()[(z & 15) << 4 | (x & 15)]; + short biome = getBiomeShortArray(chunk)[(z & 15) << 4 | (x & 15)]; PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(x, z, biome), new TargetPoint(world.provider.dimensionId, x, 128, z, 1024D)); } else { byte biome = chunk.getBiomeArray()[(z & 15) << 4 | (x & 15)]; @@ -65,12 +85,20 @@ public class WorldUtil { /* this sucks ass */ ChunkCoordIntPair coord = chunk.getChunkCoordIntPair(); if(Loader.isModLoaded(Compat.MOD_EIDS)) { - PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, ((ChunkBiomeHook) chunk).getBiomeShortArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); + PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, getBiomeShortArray(chunk)), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); } else { PacketDispatcher.wrapper.sendToAllAround(new BiomeSyncPacket(coord.chunkXPos, coord.chunkZPos, chunk.getBiomeArray()), new TargetPoint(world.provider.dimensionId, coord.getCenterXPos(), 128, coord.getCenterZPosition() /* who named you? */, 1024D)); } } + public static short[] getBiomeShortArray(Chunk chunk) { + try { + return (short[]) getBiomeShortHandle.invokeExact(chunk); + } catch(Throwable ex) { + throw new AssertionError(); + } + } + /**Chunkloads the chunk the entity is going to spawn in and then spawns it * @param entity The entity to be spawned**/ From f7e804094c4c4cf45df4228e22cbbb0a88c1e64a Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 26 Sep 2024 14:05:48 +0200 Subject: [PATCH 32/63] it's recoil! --- src/main/java/com/hbm/blocks/ModBlocks.java | 2 - .../blocks/generic/BlockScaffoldDynamic.java | 270 ------------------ .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 5 + .../com/hbm/items/weapon/sedna/Receiver.java | 4 + .../hbm/items/weapon/sedna/factory/Lego.java | 6 + .../sedna/factory/XFactoryBlackPowder.java | 2 +- .../sedna/mags/MagazineSingleTypeBase.java | 4 +- src/main/java/com/hbm/main/ClientProxy.java | 1 - .../com/hbm/main/ModEventHandlerClient.java | 30 +- .../packet/toclient/GunAnimationPacket.java | 33 ++- .../render/block/RenderScaffoldDynamic.java | 111 ------- .../java/com/hbm/tileentity/TileMappings.java | 2 - 12 files changed, 56 insertions(+), 414 deletions(-) delete mode 100644 src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java delete mode 100644 src/main/java/com/hbm/render/block/RenderScaffoldDynamic.java diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 9334145bd..5829f854d 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -412,7 +412,6 @@ public class ModBlocks { public static Block steel_scaffold; public static Block steel_grate; public static Block steel_grate_wide; - public static Block scaffold_dynamic; public static Block deco_pipe; public static Block deco_pipe_rusted; @@ -1586,7 +1585,6 @@ public class ModBlocks { steel_scaffold = new BlockScaffold().setBlockName("steel_scaffold").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":deco_steel_orig"); steel_grate = new BlockGrate(Material.iron).setBlockName("steel_grate").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); steel_grate_wide = new BlockGrate(Material.iron).setBlockName("steel_grate_wide").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F); - scaffold_dynamic = new BlockScaffoldDynamic().setBlockName("scaffold_dynamic").setCreativeTab(MainRegistry.blockTab).setHardness(5.0F).setResistance(15.0F).setBlockTextureName(RefStrings.MODID + ":block_steel"); deco_pipe = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side", 0).setBlockName("deco_pipe").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top"); deco_pipe_rusted = new BlockPipe(Material.iron, RefStrings.MODID + ":pipe_side_rusty", 0).setBlockName("deco_pipe_rusted").setStepSound(ModSoundTypes.grate).setCreativeTab(MainRegistry.blockTab).setHardness(2.0F).setResistance(5.0F).setBlockTextureName(RefStrings.MODID + ":pipe_top_rusty"); diff --git a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java b/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java deleted file mode 100644 index 62a42594c..000000000 --- a/src/main/java/com/hbm/blocks/generic/BlockScaffoldDynamic.java +++ /dev/null @@ -1,270 +0,0 @@ -package com.hbm.blocks.generic; - -import com.hbm.lib.Library; -import com.hbm.lib.RefStrings; -import com.hbm.util.I18nUtil; - -import static com.hbm.blocks.generic.BlockScaffoldDynamic.TileEntityScaffoldDynamic.*; - -import java.util.ArrayList; -import java.util.List; - -import com.hbm.blocks.ILookOverlay; -import com.hbm.items.ModItems; -import com.hbm.items.tool.ItemBlowtorch; - -import api.hbm.block.IToolable; -import cpw.mods.fml.client.registry.RenderingRegistry; -import cpw.mods.fml.relauncher.Side; -import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.block.BlockContainer; -import net.minecraft.block.material.Material; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.texture.IIconRegister; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.player.EntityPlayer; -import net.minecraft.item.ItemStack; -import net.minecraft.nbt.NBTTagCompound; -import net.minecraft.network.NetworkManager; -import net.minecraft.network.Packet; -import net.minecraft.network.play.server.S35PacketUpdateTileEntity; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.util.EnumChatFormatting; -import net.minecraft.util.IIcon; -import net.minecraft.util.MovingObjectPosition; -import net.minecraft.world.World; -import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; - -public class BlockScaffoldDynamic extends BlockContainer implements IToolable, ILookOverlay { - - @SideOnly(Side.CLIENT) public IIcon iconPoleTop; - @SideOnly(Side.CLIENT) public IIcon iconPoleSide; - @SideOnly(Side.CLIENT) public IIcon iconGrateTop; - @SideOnly(Side.CLIENT) public IIcon iconGrateSide; - @SideOnly(Side.CLIENT) public IIcon iconBarTop; - @SideOnly(Side.CLIENT) public IIcon iconBarSide; - - public static int renderMode; - - public BlockScaffoldDynamic() { - super(Material.iron); - } - - public static int renderIDScaffold = RenderingRegistry.getNextAvailableRenderId(); - @Override public int getRenderType(){ return renderIDScaffold; } - @Override public boolean isOpaqueCube() { return false; } - @Override public boolean renderAsNormalBlock() { return false; } - - @Override - public TileEntity createNewTileEntity(World world, int meta) { - return new TileEntityScaffoldDynamic(); - } - - @SideOnly(Side.CLIENT) - public IIcon getIcon(int side, int meta) { - if(renderMode == 0) return side == 0 || side == 1 ? iconPoleTop : iconPoleSide; - if(renderMode == 1) return side == 0 || side == 1 ? iconGrateTop : iconGrateSide; - if(renderMode == 2) return side == 0 || side == 1 ? iconBarTop : iconBarSide; - return this.blockIcon; - } - - @Override - @SideOnly(Side.CLIENT) - public void registerBlockIcons(IIconRegister reg) { - super.registerBlockIcons(reg); - this.iconPoleTop = reg.registerIcon(RefStrings.MODID + ":scaffold_pole_top"); - this.iconPoleSide = reg.registerIcon(RefStrings.MODID + ":scaffold_pole_side"); - this.iconGrateTop = reg.registerIcon(RefStrings.MODID + ":scaffold_grate_top"); - this.iconGrateSide = reg.registerIcon(RefStrings.MODID + ":scaffold_grate_side"); - this.iconBarTop = reg.registerIcon(RefStrings.MODID + ":scaffold_bar_top"); - this.iconBarSide = reg.registerIcon(RefStrings.MODID + ":scaffold_bar_side"); - } - - @Override - public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ, ToolType tool) { - - TileEntityScaffoldDynamic tile = (TileEntityScaffoldDynamic) world.getTileEntity(x, y, z); - if(tool == ToolType.SCREWDRIVER) { - tile.locked = !tile.locked; - tile.markDirty(); - world.markBlockForUpdate(x, y, z); - return true; - } - - if(tool != ToolType.TORCH) return false; - - - int part = getPartFromCoord(fX, fY, fZ); - - if(part != 0 && tile.canToggle(part)) { - tile.toggle(part); - tile.markDirty(); - world.markBlockForUpdate(x, y, z); - return true; - } - return false; - } - - public static int getPartFromCoord(float fX, float fY, float fZ) { - if(fX < 0.25 && fZ < 0.25) return POLE_NX_NZ; - if(fX > 0.75 && fZ < 0.25) return POLE_PX_NZ; - if(fX > 0.75 && fZ > 0.75) return POLE_PX_PZ; - if(fX < 0.25 && fZ > 0.75) return POLE_NX_PZ; - - if(fY == 0 && fX < 0.25) return BAR_LOWER_NEG_X; - if(fY == 0 && fX > 0.75) return BAR_LOWER_POS_X; - if(fY == 0 && fZ < 0.25) return BAR_LOWER_NEG_Z; - if(fY == 0 && fZ > 0.75) return BAR_LOWER_POS_Z; - if(fY == 1 && fX < 0.25) return BAR_UPPER_NEG_X; - if(fY == 1 && fX > 0.75) return BAR_UPPER_POS_X; - if(fY == 1 && fZ < 0.25) return BAR_UPPER_NEG_Z; - if(fY == 1 && fZ > 0.75) return BAR_UPPER_POS_Z; - - if(fY < 0.125) return GRATE_LOWER; - if(fY > 0.875) return GRATE_UPPER; - - if(fX == 0 && fY < 0.5) return BAR_LOWER_NEG_X; - if(fX == 1 && fY < 0.5) return BAR_LOWER_POS_X; - if(fZ == 0 && fY < 0.5) return BAR_LOWER_NEG_Z; - if(fZ == 1 && fY < 0.5) return BAR_LOWER_POS_Z; - if(fX == 0 && fY > 0.5) return BAR_UPPER_NEG_X; - if(fX == 1 && fY > 0.5) return BAR_UPPER_POS_X; - if(fZ == 0 && fY > 0.5) return BAR_UPPER_NEG_Z; - if(fZ == 1 && fY > 0.5) return BAR_UPPER_POS_Z; - - return 0; - } - - //ttoo lazy to make an itemblock just to provide this in the one method that needs it - public static float lastFX; - public static float lastFY; - public static float lastFZ; - - @Override - public int onBlockPlaced(World world, int x, int y, int z, int side, float fX, float fY, float fZ, int meta) { - lastFX = fX; - lastFY = fY; - lastFZ = fZ; - - if(side == Library.POS_X.ordinal()) lastFX = 0; - if(side == Library.NEG_X.ordinal()) lastFX = 1; - if(side == Library.POS_Z.ordinal()) lastFZ = 0; - if(side == Library.NEG_Z.ordinal()) lastFZ = 1; - - return side; - } - - @Override - public void onBlockPlacedBy(World world, int x, int y, int z, EntityLivingBase player, ItemStack stack) { - TileEntityScaffoldDynamic tile = (TileEntityScaffoldDynamic) world.getTileEntity(x, y, z); - - // DEFAUL: POLES - if(stack.getItemDamage() == 0) { - if(lastFX < 0.5 && lastFZ < 0.5) tile.toggle(tile.POLE_NX_NZ); - if(lastFX >= 0.5 && lastFZ < 0.5) tile.toggle(tile.POLE_PX_NZ); - if(lastFX < 0.5 && lastFZ >= 0.5) tile.toggle(tile.POLE_NX_PZ); - if(lastFX >= 0.5 && lastFZ >= 0.5) tile.toggle(tile.POLE_PX_PZ); - } - } - - // Full class name needed because otherwise there's some conflict with the static import * from this class - public static class TileEntityScaffoldDynamic extends net.minecraft.tileentity.TileEntity { - - public int composite; - public int prevComposite; - public boolean locked; - public static final int BAR_LOWER_POS_X = (1 << 0); - public static final int BAR_LOWER_NEG_X = (1 << 1); - public static final int BAR_LOWER_POS_Z = (1 << 2); - public static final int BAR_LOWER_NEG_Z = (1 << 3); - public static final int BAR_UPPER_POS_X = (1 << 4); - public static final int BAR_UPPER_NEG_X = (1 << 5); - public static final int BAR_UPPER_POS_Z = (1 << 6); - public static final int BAR_UPPER_NEG_Z = (1 << 7); - public static final int POLE_PX_PZ = (1 << 8); - public static final int POLE_PX_NZ = (1 << 9); - public static final int POLE_NX_PZ = (1 << 10); - public static final int POLE_NX_NZ = (1 << 11); - public static final int GRATE_LOWER = (1 << 12); - public static final int GRATE_UPPER = (1 << 13); - - public boolean canToggle(int part) { return !locked && (composite ^ part) != 0; } - public void toggle(int part) { this.composite ^= part; System.out.println("" + this.composite); } - public boolean has(int part) { return (this.composite & part) != 0; } - - @Override - public void updateEntity() { } - - @Override - public Packet getDescriptionPacket() { - NBTTagCompound nbt = new NBTTagCompound(); - this.writeToNBT(nbt); - return new S35PacketUpdateTileEntity(this.xCoord, this.yCoord, this.zCoord, 0, nbt); - } - - @Override - public void onDataPacket(NetworkManager net, S35PacketUpdateTileEntity pkt) { - this.readFromNBT(pkt.func_148857_g()); - } - - @Override - public void readFromNBT(NBTTagCompound nbt) { - super.readFromNBT(nbt); - this.composite = nbt.getInteger("c"); - this.prevComposite = nbt.getInteger("p"); - this.locked = nbt.getBoolean("l"); - } - - @Override - public void writeToNBT(NBTTagCompound nbt) { - super.writeToNBT(nbt); - nbt.setInteger("c", composite); - nbt.setInteger("p", prevComposite); - nbt.setBoolean("l", locked); - } - } - - @Override - public void printHook(Pre event, World world, int x, int y, int z) { - - Minecraft mc = Minecraft.getMinecraft(); - EntityPlayer player = mc.thePlayer; - ItemStack held = player.getHeldItem(); - - boolean holdsBlowtorch = held != null && held.getItem() instanceof ItemBlowtorch; - boolean holdScrewdriver = held != null && (held.getItem() == ModItems.screwdriver || held.getItem() == ModItems.screwdriver_desh); - - MovingObjectPosition mop = mc.objectMouseOver; - - if(mop != null && mop.typeOfHit == mop.typeOfHit.BLOCK) { - float fX = (float) (mop.hitVec.xCoord - x); - float fY = (float) (mop.hitVec.yCoord - y); - float fZ = (float) (mop.hitVec.zCoord - z); - - TileEntityScaffoldDynamic tile = (TileEntityScaffoldDynamic) world.getTileEntity(x, y, z); - - if(tile != null && tile.locked && (holdsBlowtorch || holdScrewdriver)) { - List text = new ArrayList(); - text.add(EnumChatFormatting.RED + "Locked!"); - ILookOverlay.printGeneric(event, I18nUtil.resolveKey(this.getUnlocalizedName() + ".name"), 0xffff00, 0x404000, text); - return; - } - - if(holdsBlowtorch) { - String name = null; - int part = getPartFromCoord(fX, fY, fZ); - if(part <= (1 << 3)) name = "Lower Vertical Bar"; - else if(part <= (1 << 7)) name = "Upper Vertical Bar"; - else if(part <= (1 << 10)) name = "Pole"; - else if(part <= (1 << 13)) name = "Grate"; - - if(name != null) { - List text = new ArrayList(); - text.add("Toggle:"); - text.add(name); - ILookOverlay.printGeneric(event, I18nUtil.resolveKey(this.getUnlocalizedName() + ".name"), 0xffff00, 0x404000, text); - } - } - } - } -} diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 39662b8aa..886bdb89e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -42,6 +42,11 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public double shotRand = 0D; public List smokeNodes = new ArrayList(); + public static float recoilVertical = 0; + public static float recoilHorizontal = 0; + public static float offsetVertical = 0; + public static float offsetHorizontal = 0; + public static final String O_GUNCONFIG = "O_GUNCONFIG"; public static final String KEY_DRAWN = "drawn"; diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 9134b759a..7f20acd99 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -32,6 +32,7 @@ public class Receiver { public static final String O_MAGAZINE = "O_MAGAZINE"; public static final String FUN_CANFIRE = "FUN_CANFIRE"; public static final String CON_ONFIRE = "CON_ONFIRE"; + public static final String CON_ONRECOIL = "CON_ONRECOIL"; public Receiver(int index) { this.index = index; @@ -53,6 +54,7 @@ public class Receiver { protected IMagazine magazine_DNA; protected BiFunction canFire_DNA; protected BiConsumer onFire_DNA; + protected BiConsumer onRecoil_DNA; /* GETTERS */ public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } @@ -71,6 +73,7 @@ public class Receiver { public BiFunction getCanFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.canFire_DNA, stack, FUN_CANFIRE, this); } public BiConsumer getOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.onFire_DNA, stack, CON_ONFIRE, this); } + public BiConsumer getRecoil(ItemStack stack) { return WeaponUpgradeManager.eval(this.onRecoil_DNA, stack, CON_ONRECOIL, this); } /* SETTERS */ public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } @@ -86,6 +89,7 @@ public class Receiver { public Receiver canFire(BiFunction lambda) { this.canFire_DNA = lambda; return this; } public Receiver fire(BiConsumer lambda) { this.onFire_DNA = lambda; return this; } + public Receiver recoil(BiConsumer lambda) { this.onRecoil_DNA = lambda; return this; } public Receiver sound(String sound, float volume, float pitch) { this.fireSound_DNA = sound; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 8cef4e3ac..fd6444561 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -86,6 +86,12 @@ public class Lego { } }; + /** Toggles isAiming. Used by keybinds. */ + public static BiConsumer LAMBDA_STANDARD_RECOIL = (stack, ctx) -> { + ItemGunBaseNT.recoilVertical += 10; + ItemGunBaseNT.recoilHorizontal += ctx.player.getRNG().nextGaussian() * 1.5; + }; + /** Toggles isAiming. Used by keybinds. */ public static BiConsumer LAMBDA_TOGGLE_AIM = (stack, ctx) -> { ItemGunBaseNT.setIsAiming(stack, !ItemGunBaseNT.getIsAiming(stack)); }; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 7981cd37b..b541be616 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -32,7 +32,7 @@ public class XFactoryBlackPowder { .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) - .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) .anim(LAMBDA_PEPPERBOX_ANIMS) diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java index 0af651cca..2b86530b7 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java @@ -32,7 +32,9 @@ public abstract class MagazineSingleTypeBase implements IMagazine public BulletConfig getType(ItemStack stack) { int type = getMagType(stack, index); if(type >= 0 && type < BulletConfig.configs.size()) { - return BulletConfig.configs.get(type); + BulletConfig cfg = BulletConfig.configs.get(type); + if(acceptedBullets.contains(cfg)) return cfg; + return acceptedBullets.get(0); } return null; } diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 27ddf61d2..4c54c112e 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -840,7 +840,6 @@ public class ClientProxy extends ServerProxy { RenderingRegistry.registerBlockHandler(new RenderSteelBeam()); RenderingRegistry.registerBlockHandler(new RenderSteelWall()); RenderingRegistry.registerBlockHandler(new RenderSteelCorner()); - RenderingRegistry.registerBlockHandler(new RenderScaffoldDynamic()); RenderingRegistry.registerBlockHandler(new RenderBarrel()); RenderingRegistry.registerBlockHandler(new RenderFence()); RenderingRegistry.registerBlockHandler(new RenderBarbedWire()); diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 68844ea63..706a6e48e 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -149,11 +149,6 @@ public class ModEventHandlerClient { public static long flashTimestamp; public static final int shakeDuration = 1_500; public static long shakeTimestamp; - - public static float recoilVertical = 0; - public static float recoilHorizontal = 0; - public static float offsetVertical = 0; - public static float offsetHorizontal = 0; @SubscribeEvent public void onOverlayRender(RenderGameOverlayEvent.Pre event) { @@ -1000,19 +995,20 @@ public class ModEventHandlerClient { if(event.phase == Phase.END) { - this.offsetVertical += this.recoilVertical; - this.offsetHorizontal += this.recoilHorizontal; - player.rotationPitch += this.recoilVertical; - player.rotationYaw += this.recoilHorizontal; + ItemGunBaseNT.offsetVertical += ItemGunBaseNT.recoilVertical; + ItemGunBaseNT.offsetHorizontal += ItemGunBaseNT.recoilHorizontal; + player.rotationPitch -= ItemGunBaseNT.recoilVertical; + player.rotationYaw -= ItemGunBaseNT.recoilHorizontal; + + float decay = 0.75F; + float rebound = 0.25F; + ItemGunBaseNT.recoilVertical *= decay; + ItemGunBaseNT.recoilHorizontal *= decay; + float dV = ItemGunBaseNT.offsetVertical * rebound; + float dH = ItemGunBaseNT.offsetHorizontal * rebound; - float decay = 0.8F; - this.recoilVertical *= decay; - this.offsetHorizontal *= decay; - float dV = this.offsetVertical * 0.2F; - float dH = this.offsetHorizontal * 0.2F; - - this.offsetVertical -= dV; - this.offsetHorizontal -= dH; + ItemGunBaseNT.offsetVertical -= dV; + ItemGunBaseNT.offsetHorizontal -= dH; player.rotationPitch += dV; player.rotationYaw += dH; } diff --git a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java index 7b096cef2..d579f7821 100644 --- a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java +++ b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java @@ -1,11 +1,13 @@ package com.hbm.packet.toclient; +import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.items.weapon.ItemGunBase; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; -import com.hbm.main.ModEventHandlerClient; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.HbmAnimations; import com.hbm.render.anim.HbmAnimations.AnimType; @@ -23,22 +25,31 @@ import net.minecraft.item.ItemStack; public class GunAnimationPacket implements IMessage { - int type; + public short type; + public int meta; public GunAnimationPacket() { } public GunAnimationPacket(int type) { - this.type = type; + this.type = (short) type; + this.meta = 0; + } + + public GunAnimationPacket(int type, int meta) { + this.type = (short) type; + this.meta = meta; } @Override public void fromBytes(ByteBuf buf) { - type = buf.readInt(); + type = buf.readShort(); + meta = buf.readInt(); } @Override public void toBytes(ByteBuf buf) { - buf.writeInt(type); + buf.writeShort(type); + buf.writeInt(meta); } public static class Handler implements IMessageHandler { @@ -57,7 +68,7 @@ public class GunAnimationPacket implements IMessage { return null; if(stack.getItem() instanceof ItemGunBaseNT) { - handleSedna(player, stack, slot, AnimType.values()[m.type]); + handleSedna(player, stack, slot, AnimType.values()[m.type], m.meta); } if(!(stack.getItem() instanceof ItemGunBase)) @@ -91,7 +102,7 @@ public class GunAnimationPacket implements IMessage { return null; } - public static void handleSedna(EntityPlayer player, ItemStack stack, int slot, AnimType type) { + public static void handleSedna(EntityPlayer player, ItemStack stack, int slot, AnimType type, int meta) { ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); GunConfig config = gun.getConfig(stack); @@ -99,8 +110,12 @@ public class GunAnimationPacket implements IMessage { gun.lastShot = System.currentTimeMillis(); gun.shotRand = player.worldObj.rand.nextDouble(); - ModEventHandlerClient.recoilVertical += 1; - ModEventHandlerClient.recoilHorizontal += player.getRNG().nextGaussian(); + Receiver[] receivers = config.getReceivers(stack); + if(meta >= 0 && meta < receivers.length) { + Receiver rec = receivers[meta]; + BiConsumer onRecoil= rec.getRecoil(stack); + if(onRecoil != null) onRecoil.accept(stack, new LambdaContext(config, player)); + } } BiFunction anims = config.getAnims(stack); diff --git a/src/main/java/com/hbm/render/block/RenderScaffoldDynamic.java b/src/main/java/com/hbm/render/block/RenderScaffoldDynamic.java deleted file mode 100644 index 91beb1e71..000000000 --- a/src/main/java/com/hbm/render/block/RenderScaffoldDynamic.java +++ /dev/null @@ -1,111 +0,0 @@ -package com.hbm.render.block; - -import org.lwjgl.opengl.GL11; - -import com.hbm.blocks.generic.BlockScaffoldDynamic; -import com.hbm.blocks.generic.BlockScaffoldDynamic.TileEntityScaffoldDynamic; -import com.hbm.render.util.RenderBlocksNT; - -import cpw.mods.fml.client.registry.ISimpleBlockRenderingHandler; -import net.minecraft.block.Block; -import net.minecraft.client.renderer.RenderBlocks; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.tileentity.TileEntity; -import net.minecraft.world.IBlockAccess; - -public class RenderScaffoldDynamic implements ISimpleBlockRenderingHandler { - - @Override - public void renderInventoryBlock(Block block, int metadata, int modelId, RenderBlocks renderer) { - - Tessellator tessellator = Tessellator.instance; - GL11.glTranslatef(-0.5F, -0.5F, -0.5F); - - tessellator.startDrawingQuads(); - - - renderer.setRenderBounds(0D, 0D, 0.875D, 0.75D, 1D, 1D); - tessellator.setNormal(0F, 1F, 0F); renderer.renderFaceYPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, -1F, 0F); renderer.renderFaceYNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(-1F, 0F, 0F); renderer.renderFaceXNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, 0F, 1F); renderer.renderFaceZPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, 0F, -1F); renderer.renderFaceZNeg(block, 0, 0, 0, block.getIcon(0, 0)); - - - renderer.setRenderBounds(0.75D, 0D, 0.75D, 1D, 1D, 1D); - tessellator.setNormal(0F, 1F, 0F); renderer.renderFaceYPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, -1F, 0F); renderer.renderFaceYNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(1F, 0F, 0F); renderer.renderFaceXPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(-1F, 0F, 0F); renderer.renderFaceXNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, 0F, 1F); renderer.renderFaceZPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, 0F, -1F); renderer.renderFaceZNeg(block, 0, 0, 0, block.getIcon(0, 0)); - - renderer.setRenderBounds(0.875D, 0D, 0D, 1D, 1D, 0.75D); - tessellator.setNormal(0F, 1F, 0F); renderer.renderFaceYPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, -1F, 0F); renderer.renderFaceYNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(1F, 0F, 0F); renderer.renderFaceXPos(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(-1F, 0F, 0F); renderer.renderFaceXNeg(block, 0, 0, 0, block.getIcon(0, 0)); - tessellator.setNormal(0F, 0F, -1F); renderer.renderFaceZNeg(block, 0, 0, 0, block.getIcon(0, 0)); - - tessellator.draw(); - } - - @Override - public boolean renderWorldBlock(IBlockAccess world, int x, int y, int z, Block block, int modelId, RenderBlocks renderer) { - Tessellator tessellator = Tessellator.instance; - tessellator.setBrightness(block.getMixedBrightnessForBlock(world, x, y, z)); - - renderer = RenderBlocksNT.INSTANCE.setWorld(world); - - TileEntity tile = world.getTileEntity(x, y, z); - if(!(tile instanceof TileEntityScaffoldDynamic)) return false; - TileEntityScaffoldDynamic scaffold = (TileEntityScaffoldDynamic) tile; - - boolean lpx = scaffold.has(scaffold.BAR_LOWER_POS_X); - boolean lnx = scaffold.has(scaffold.BAR_LOWER_NEG_X); - boolean upx = scaffold.has(scaffold.BAR_UPPER_POS_X); - boolean unx = scaffold.has(scaffold.BAR_UPPER_NEG_X); - boolean lpz = scaffold.has(scaffold.BAR_LOWER_POS_Z); - boolean lnz = scaffold.has(scaffold.BAR_LOWER_NEG_Z); - boolean upz = scaffold.has(scaffold.BAR_UPPER_POS_Z); - boolean unz = scaffold.has(scaffold.BAR_UPPER_NEG_Z); - - boolean p_nx_nz = scaffold.has(scaffold.POLE_NX_NZ); - boolean p_px_nz = scaffold.has(scaffold.POLE_PX_NZ); - boolean p_px_pz = scaffold.has(scaffold.POLE_PX_PZ); - boolean p_nx_pz = scaffold.has(scaffold.POLE_NX_PZ); - - BlockScaffoldDynamic.renderMode = 0; - if(p_nx_nz) { renderer.setRenderBounds(0D, 0D, 0D, 0.25D, 1D, 0.25D); renderer.renderStandardBlock(block, x, y, z); } - if(p_px_nz) { renderer.setRenderBounds(0.75D, 0D, 0D, 1D, 1D, 0.25D); renderer.renderStandardBlock(block, x, y, z); } - if(p_px_pz) { renderer.setRenderBounds(0.75D, 0D, 0.75D, 1D, 1D, 1D); renderer.renderStandardBlock(block, x, y, z); } - if(p_nx_pz) { renderer.setRenderBounds(0D, 0D, 0.75D, 0.25D, 1D, 1D); renderer.renderStandardBlock(block, x, y, z); } - - BlockScaffoldDynamic.renderMode = 1; - if(scaffold.has(scaffold.GRATE_LOWER)) { renderer.setRenderBounds(0.000, 0.000, 0.000, 1.000, 0.125, 1.000); renderer.renderStandardBlock(block, x, y, z); } - if(scaffold.has(scaffold.GRATE_UPPER)) { renderer.setRenderBounds(0.000, 0.875, 0.000, 1.000, 1.000, 1.000); renderer.renderStandardBlock(block, x, y, z); } - - BlockScaffoldDynamic.renderMode = 2; - - if(lpx) { renderer.setRenderBounds(0.75, 0.00, p_px_nz ? 0.25 : 0.00, 1.00, 0.25, p_px_pz ? 0.75 : 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(upx) { renderer.setRenderBounds(0.75, 0.75, p_px_nz ? 0.25 : 0.00, 1.00, 1.00, p_px_pz ? 0.75 : 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(lnx) { renderer.setRenderBounds(0.00, 0.00, p_nx_nz ? 0.25 : 0.00, 0.25, 0.25, p_nx_pz ? 0.75 : 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(unx) { renderer.setRenderBounds(0.00, 0.75, p_nx_nz ? 0.25 : 0.00, 0.25, 1.00, p_nx_pz ? 0.75 : 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(lpz) { renderer.setRenderBounds(p_nx_pz || lnx ? 0.25 : 0.00, 0.00, 0.75, p_px_pz || lpx ? 0.75 : 1.00, 0.25, 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(upz) { renderer.setRenderBounds(p_nx_pz || unx ? 0.25 : 0.00, 0.75, 0.75, p_px_pz || upx ? 0.75 : 1.00, 1.00, 1.00); renderer.renderStandardBlock(block, x, y, z); } - if(lnz) { renderer.setRenderBounds(p_nx_nz || lnx ? 0.25 : 0.00, 0.00, 0.00, p_px_nz || lpx ? 0.75 : 1.00, 0.25, 0.25); renderer.renderStandardBlock(block, x, y, z); } - if(unz) { renderer.setRenderBounds(p_nx_nz || unx ? 0.25 : 0.00, 0.75, 0.00, p_px_nz || upx ? 0.75 : 1.00, 1.00, 0.25); renderer.renderStandardBlock(block, x, y, z); } - - return true; - } - - @Override - public boolean shouldRender3DInInventory(int modelId) { - return false; - } - - @Override - public int getRenderId() { - return BlockScaffoldDynamic.renderIDScaffold; - } -} diff --git a/src/main/java/com/hbm/tileentity/TileMappings.java b/src/main/java/com/hbm/tileentity/TileMappings.java index a33860c56..e36bb9c52 100644 --- a/src/main/java/com/hbm/tileentity/TileMappings.java +++ b/src/main/java/com/hbm/tileentity/TileMappings.java @@ -14,7 +14,6 @@ import com.hbm.blocks.generic.BlockLoot.TileEntityLoot; import com.hbm.blocks.generic.BlockMotherOfAllOres.TileEntityRandomOre; import com.hbm.blocks.generic.BlockPedestal.TileEntityPedestal; import com.hbm.blocks.generic.BlockPlushie.TileEntityPlushie; -import com.hbm.blocks.generic.BlockScaffoldDynamic.TileEntityScaffoldDynamic; import com.hbm.blocks.generic.BlockSnowglobe.TileEntitySnowglobe; import com.hbm.blocks.generic.PartEmitter.TileEntityPartEmitter; import com.hbm.blocks.machine.BlockICF.TileEntityBlockICF; @@ -64,7 +63,6 @@ public class TileMappings { put(TileEntityDecoSteelPoles.class, "tileentity_steelpoles"); put(TileEntityDecoPoleTop.class, "tileentity_poletop"); put(TileEntityDecoPoleSatelliteReceiver.class, "tileentity_satellitereceicer"); - put(TileEntityScaffoldDynamic.class, "tileentity_scaffold_dynamic"); put(TileEntityMachineBattery.class, "tileentity_battery"); put(TileEntityCapacitor.class, "tileentity_capacitor"); put(TileEntityMachineWoodBurner.class, "tileentity_wood_burner"); From ee895c9bfcd3ef1e9b6a48c7ba31ed2dd65a0fe6 Mon Sep 17 00:00:00 2001 From: Bob Date: Thu, 26 Sep 2024 21:33:17 +0200 Subject: [PATCH 33/63] WAR --- src/main/java/com/hbm/blocks/ModBlocks.java | 6 +- .../blocks/machine/MachineRotaryFurnace.java | 39 + src/main/java/com/hbm/main/ClientProxy.java | 1 + .../java/com/hbm/main/ResourceManager.java | 18 +- .../tileentity/RenderRotaryFurnace.java | 61 + .../java/com/hbm/tileentity/TileMappings.java | 1 + .../TileEntityMachineRotaryFurnace.java | 37 + .../hbm/models/machines/rotary_furnace.obj | 2843 +++++++++++++---- .../gui/processing/gui_rotary_furnace.png | Bin 0 -> 4529 bytes .../gui/processing/gui_rotary_furnace_alt.png | Bin 0 -> 2365 bytes .../assets/hbm/textures/items/ammo.png | Bin 0 -> 1160 bytes .../hbm/textures/items/ingot_gunmetal.png | Bin 0 -> 353 bytes .../hbm/textures/items/ingot_gunsteel.png | Bin 0 -> 265 bytes .../models/machines/rotary_furnace.png | Bin 2033 -> 2087 bytes 14 files changed, 2321 insertions(+), 685 deletions(-) create mode 100644 src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java create mode 100644 src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java create mode 100644 src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java create mode 100644 src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace.png create mode 100644 src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace_alt.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo.png create mode 100644 src/main/resources/assets/hbm/textures/items/ingot_gunmetal.png create mode 100644 src/main/resources/assets/hbm/textures/items/ingot_gunsteel.png diff --git a/src/main/java/com/hbm/blocks/ModBlocks.java b/src/main/java/com/hbm/blocks/ModBlocks.java index 5829f854d..028fb0f0f 100644 --- a/src/main/java/com/hbm/blocks/ModBlocks.java +++ b/src/main/java/com/hbm/blocks/ModBlocks.java @@ -668,11 +668,11 @@ public class ModBlocks { public static Block machine_fel; public static Block machine_silex; - + + public static Block machine_rotary_furnace; public static Block machine_crystallizer; public static Block machine_uf6_tank; - public static Block machine_puf6_tank; public static Block machine_reactor_breeding; @@ -1768,6 +1768,7 @@ public class ModBlocks { machine_gascent = new MachineGasCent(Material.iron).setBlockName("machine_gascent").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_fel = new MachineFEL(Material.iron).setBlockName("machine_fel").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); machine_silex = new MachineSILEX(Material.iron).setBlockName("machine_silex").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_steel"); + machine_rotary_furnace = new MachineRotaryFurnace(Material.iron).setBlockName("machine_rotary_furnace").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":block_firebrick"); machine_crystallizer = new MachineCrystallizer(Material.iron).setBlockName("machine_crystallizer").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab).setBlockTextureName(RefStrings.MODID + ":machine_crystallizer"); machine_uf6_tank = new MachineUF6Tank(Material.iron).setBlockName("machine_uf6_tank").setHardness(5.0F).setResistance(10.0F).setCreativeTab(MainRegistry.machineTab); @@ -3014,6 +3015,7 @@ public class ModBlocks { GameRegistry.registerBlock(machine_gascent, machine_gascent.getUnlocalizedName()); GameRegistry.registerBlock(machine_fel, machine_fel.getUnlocalizedName()); GameRegistry.registerBlock(machine_silex, machine_silex.getUnlocalizedName()); + register(machine_rotary_furnace); GameRegistry.registerBlock(machine_crystallizer, machine_crystallizer.getUnlocalizedName()); GameRegistry.registerBlock(machine_uf6_tank, machine_uf6_tank.getUnlocalizedName()); GameRegistry.registerBlock(machine_puf6_tank, machine_puf6_tank.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java b/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java new file mode 100644 index 000000000..2160a0451 --- /dev/null +++ b/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java @@ -0,0 +1,39 @@ +package com.hbm.blocks.machine; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.tileentity.TileEntityProxyCombo; +import com.hbm.tileentity.machine.TileEntityMachineRotaryFurnace; + +import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.world.World; + +public class MachineRotaryFurnace extends BlockDummyable { + + public MachineRotaryFurnace(Material mat) { + super(mat); + } + + @Override + public TileEntity createNewTileEntity(World world, int meta) { + if(meta >= 12) return new TileEntityMachineRotaryFurnace(); + if(meta >= 6) return new TileEntityProxyCombo().inventory().fluid(); + return null; + } + + @Override + public boolean onBlockActivated(World world, int x, int y, int z, EntityPlayer player, int side, float hitX, float hitY, float hitZ) { + return this.standardOpenBehavior(world, x, y, z, player, 0); + } + + @Override + public int[] getDimensions() { + return new int[] {3, 0, 1, 1, 2, 2}; + } + + @Override + public int getOffset() { + return 1; + } +} diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index 4c54c112e..bd2e4a3d4 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -273,6 +273,7 @@ public class ClientProxy extends ServerProxy { ClientRegistry.bindTileEntitySpecialRenderer(TileEntityReactorResearch.class, new RenderSmallReactor()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityTesla.class, new RenderTesla()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityBarrel.class, new RenderFluidBarrel()); + ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineRotaryFurnace.class, new RenderRotaryFurnace()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineCrystallizer.class, new RenderCrystallizer()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMicrowave.class, new RenderMicrowave()); ClientRegistry.bindTileEntitySpecialRenderer(TileEntityMachineRTG.class, new RenderRTG()); diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 3ac8dcb38..7824afcb6 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -267,8 +267,8 @@ public class ResourceManager { public static final IModelCustom bomb_solinium = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/bombs/ufp.obj")); public static final IModelCustom n2 = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/bombs/n2.obj")); public static final IModelCustom bomb_multi = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/BombGeneric.obj")); - public static final IModelCustom fstbmb = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/bombs/fstbmb.obj")); - public static final IModelCustom dud = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/BalefireCrashed.obj")); + public static final IModelCustom fstbmb = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/bombs/fstbmb.obj")).asVBO(); + public static final IModelCustom dud = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/BalefireCrashed.obj")).asVBO(); //Satellites public static final IModelCustom sat_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/sat_base.obj")); @@ -285,7 +285,7 @@ public class ResourceManager { public static final IModelCustom satDock = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/sat_dock.obj")); //Solar Tower - public static final IModelCustom solar_boiler = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/solar_boiler.obj")); + public static final IModelCustom solar_boiler = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/solar_boiler.obj")).asVBO(); public static final IModelCustom solar_mirror = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/machines/solar_mirror.obj")); //Drain @@ -364,8 +364,8 @@ public class ResourceManager { public static final IModelCustom drone = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/mobs/quadcopter.obj")); //ZIRNOX - public static final IModelCustom zirnox = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/zirnox.obj")); - public static final IModelCustom zirnox_destroyed = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/zirnox_destroyed.obj")); + public static final IModelCustom zirnox = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/zirnox.obj")).asVBO(); + public static final IModelCustom zirnox_destroyed = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/zirnox_destroyed.obj")).asVBO(); //Belt public static final IModelCustom arrow = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/blocks/arrow.obj")); @@ -379,8 +379,11 @@ public class ResourceManager { //Radiolysis public static final IModelCustom radiolysis = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/radiolysis.obj")); + //RotaryFurnace + public static final IModelCustom rotary_furnace = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/rotary_furnace.obj")).asVBO(); + //Electrolyser - public static final IModelCustom electrolyser = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/electrolyser.obj")); + public static final IModelCustom electrolyser = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/machines/electrolyser.obj")).asVBO(); //Charging Station public static final IModelCustom charger = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/blocks/charger.obj")); @@ -781,6 +784,9 @@ public class ResourceManager { //Radiolysis public static final ResourceLocation radiolysis_tex = new ResourceLocation(RefStrings.MODID, "textures/models/radiolysis.png"); + //Rotary Furnace + public static final ResourceLocation rotary_furnace_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/rotary_furnace.png"); + //Electrolyser public static final ResourceLocation electrolyser_tex = new ResourceLocation(RefStrings.MODID, "textures/models/machines/electrolyser.png"); diff --git a/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java new file mode 100644 index 000000000..57b5ee037 --- /dev/null +++ b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java @@ -0,0 +1,61 @@ +package com.hbm.render.tileentity; + +import org.lwjgl.opengl.GL11; + +import com.hbm.blocks.BlockDummyable; +import com.hbm.blocks.ModBlocks; +import com.hbm.main.ResourceManager; +import com.hbm.render.item.ItemRenderBase; + +import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; +import net.minecraft.item.Item; +import net.minecraft.tileentity.TileEntity; +import net.minecraftforge.client.IItemRenderer; + +public class RenderRotaryFurnace extends TileEntitySpecialRenderer implements IItemRendererProvider { + + @Override + public void renderTileEntityAt(TileEntity tile, double x, double y, double z, float f) { + + GL11.glPushMatrix(); + GL11.glTranslated(x + 0.5, y, z + 0.5); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + + switch(tile.getBlockMetadata() - BlockDummyable.offset) { + case 2: GL11.glRotatef(90, 0F, 1F, 0F); break; + case 4: GL11.glRotatef(180, 0F, 1F, 0F); break; + case 3: GL11.glRotatef(270, 0F, 1F, 0F); break; + case 5: GL11.glRotatef(0, 0F, 1F, 0F); break; + } + + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.rotary_furnace_tex); + ResourceManager.rotary_furnace.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPopMatrix(); + } + + @Override + public Item getItemForRenderer() { + return Item.getItemFromBlock(ModBlocks.machine_rotary_furnace); + } + + @Override + public IItemRenderer getRenderer() { + return new ItemRenderBase() { + public void renderInventory() { + GL11.glTranslated(0, -2, 0); + GL11.glScaled(3.5, 3.5, 3.5); + } + public void renderCommon() { + GL11.glScaled(0.625, 0.625, 0.625); + GL11.glRotatef(90, 0F, 1F, 0F); + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.rotary_furnace_tex); + ResourceManager.rotary_furnace.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + }}; + } +} diff --git a/src/main/java/com/hbm/tileentity/TileMappings.java b/src/main/java/com/hbm/tileentity/TileMappings.java index e36bb9c52..43fd6dbde 100644 --- a/src/main/java/com/hbm/tileentity/TileMappings.java +++ b/src/main/java/com/hbm/tileentity/TileMappings.java @@ -150,6 +150,7 @@ public class TileMappings { put(TileEntityBarrel.class, "tileentity_fluid_barrel"); put(TileEntityCyberCrab.class, "tileentity_crabs"); put(TileEntitySoyuzCapsule.class, "tileentity_soyuz_capsule"); + put(TileEntityMachineRotaryFurnace.class, "tileentity_rotary_furnace"); put(TileEntityMachineCrystallizer.class, "tileentity_acidomatic"); put(TileEntitySoyuzStruct.class, "tileentity_soyuz_struct"); put(TileEntityITERStruct.class, "tileentity_iter_struct"); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java new file mode 100644 index 000000000..af03860dc --- /dev/null +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java @@ -0,0 +1,37 @@ +package com.hbm.tileentity.machine; + +import com.hbm.inventory.fluid.FluidType; +import com.hbm.inventory.fluid.tank.FluidTank; +import com.hbm.tileentity.TileEntityMachinePolluting; + +public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting { + + public TileEntityMachineRotaryFurnace() { + super(0, 50); + } + + @Override + public String getName() { + return null; + } + + @Override + public void updateEntity() { + + } + + @Override + public FluidTank[] getAllTanks() { + return null; + } + + @Override + public long transferFluid(FluidType type, int pressure, long fluid) { + return 0; + } + + @Override + public long getDemand(FluidType type, int pressure) { + return 0; + } +} diff --git a/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj b/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj index 1959a5728..20591f327 100644 --- a/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj +++ b/src/main/resources/assets/hbm/models/machines/rotary_furnace.obj @@ -619,6 +619,26 @@ v -0.187500 1.625000 1.187500 v -0.187500 1.625000 0.812500 v 0.187500 1.625000 0.812500 v 0.187500 1.625000 1.187500 +v 0.125000 1.375000 -2.250000 +v -0.125000 1.375000 -2.250000 +v 0.125000 1.125000 -2.500000 +v -0.125000 1.125000 -2.500000 +v 0.125000 1.625000 -2.250000 +v -0.125000 1.625000 -2.250000 +v 0.125000 1.375000 -2.500000 +v -0.125000 1.375000 -2.500000 +v 0.125000 1.062500 -2.500000 +v -0.125000 1.062500 -2.500000 +v 0.187500 1.125000 -2.500000 +v 0.187500 1.375000 -2.500000 +v -0.187500 1.125000 -2.500000 +v -0.187500 1.375000 -2.500000 +v 0.125000 1.312500 -2.250000 +v -0.125000 1.312500 -2.250000 +v 0.187500 1.375000 -2.250000 +v 0.187500 1.625000 -2.250000 +v -0.187500 1.375000 -2.250000 +v -0.187500 1.625000 -2.250000 vt 0.413793 0.000000 vt 0.068966 0.260870 vt 0.068966 0.000000 @@ -793,6 +813,34 @@ vt 0.474138 0.788043 vt 0.474138 1.000000 vt 0.500000 1.000000 vt 0.474138 0.902174 +vt 0.181034 0.875000 +vt 0.198276 0.853261 +vt 0.198276 0.875000 +vt 0.137931 0.826087 +vt 0.155172 0.847826 +vt 0.137931 0.847826 +vt 0.241379 0.826087 +vt 0.224138 0.847826 +vt 0.224138 0.826087 +vt 0.181034 0.853261 +vt 0.198276 0.847826 +vt 0.181034 0.875000 +vt 0.176724 0.853261 +vt 0.202586 0.875000 +vt 0.198276 0.875000 +vt 0.181034 0.847826 +vt 0.202586 0.853261 +vt 0.219828 0.847826 +vt 0.202586 0.826087 +vt 0.219828 0.826087 +vt 0.198276 0.826087 +vt 0.176724 0.847826 +vt 0.181034 0.826087 +vt 0.159483 0.847826 +vt 0.176724 0.826087 +vt 0.202586 0.847826 +vt 0.159483 0.826087 +vt 0.155172 0.826087 vt 0.965517 0.260870 vt 0.551724 0.260870 vt 0.827586 0.260870 @@ -804,6 +852,8 @@ vt 0.896552 0.652174 vt 0.275862 0.326087 vt 0.409483 0.777174 vt 0.577586 0.902174 +vt 0.241379 0.847826 +vt 0.176724 0.875000 vt 0.831897 0.771739 vt 0.844828 0.760870 vt 0.844828 0.771739 @@ -1451,14 +1501,16 @@ vn 0.0000 0.8321 -0.5547 vn -0.4851 0.7276 0.4851 vn 0.4851 0.7276 -0.4851 vn 0.0000 0.8321 0.5547 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.5774 -0.5774 0.5774 +vn -0.5774 -0.5774 0.5774 vn 0.0000 0.7071 0.7071 vn 0.1866 0.9824 0.0000 -vn 0.0000 0.7071 -0.7071 vn 0.0196 0.0473 -0.9987 vn -0.1363 -0.6737 -0.7263 vn 0.0000 -0.7071 -0.7071 vn -0.1363 -0.6737 0.7263 -vn 0.0000 -0.7071 0.7071 vn 0.1447 0.7194 0.6794 vn 0.1447 0.7194 -0.6794 vn -0.7071 -0.7071 0.0000 @@ -1664,6 +1716,21 @@ f 551/194/9 556/196/9 553/198/9 f 551/187/11 554/197/11 552/199/11 f 548/200/8 556/196/8 546/201/8 f 552/191/10 555/202/10 548/192/10 +f 557/203/25 560/204/25 558/205/25 +f 557/206/11 563/207/11 559/208/11 +f 558/209/8 564/210/8 562/211/8 +f 559/212/10 566/213/10 560/204/10 +f 563/214/10 567/215/10 559/212/10 +f 560/204/10 570/216/10 564/217/10 +f 559/212/10 567/215/10 565/218/10 +f 560/204/10 566/213/10 569/219/10 +f 570/220/11 575/221/11 576/222/11 +f 565/218/26 572/223/26 566/213/26 +f 567/224/27 571/225/27 565/218/27 +f 568/226/8 573/227/8 567/224/8 +f 569/228/28 572/223/28 575/221/28 +f 574/229/25 563/207/25 561/230/25 +f 570/220/25 562/211/25 564/210/25 f 19/29/7 20/148/7 18/30/7 f 302/32/8 20/148/8 28/33/8 f 18/35/9 23/46/9 22/36/9 @@ -1675,11 +1742,11 @@ f 27/48/12 28/33/12 29/38/12 f 24/50/10 303/41/10 305/43/10 f 21/52/7 305/43/7 306/42/7 f 26/54/9 27/48/9 30/49/9 -f 31/55/11 39/203/11 41/56/11 -f 40/58/13 43/204/13 35/59/13 -f 41/56/14 46/205/14 38/61/14 -f 35/59/9 43/204/9 45/62/9 -f 38/61/10 46/205/10 44/64/10 +f 31/55/11 39/231/11 41/56/11 +f 40/58/13 43/232/13 35/59/13 +f 41/56/14 46/233/14 38/61/14 +f 35/59/9 43/232/9 45/62/9 +f 38/61/10 46/233/10 44/64/10 f 36/65/15 44/64/15 42/66/15 f 37/63/16 45/62/16 39/68/16 f 34/67/8 42/66/8 40/58/8 @@ -1689,8 +1756,8 @@ f 46/72/21 47/71/21 49/77/21 f 49/80/8 61/83/8 62/81/8 f 50/73/24 48/76/24 45/79/24 f 61/83/12 59/98/12 60/84/12 -f 56/85/12 58/206/12 57/86/12 -f 54/88/8 58/207/8 56/85/8 +f 56/85/12 58/234/12 57/86/12 +f 54/88/8 58/235/8 56/85/8 f 51/90/11 55/87/11 57/91/11 f 47/93/10 59/98/10 61/83/10 f 52/89/9 56/85/9 55/87/9 @@ -1702,16 +1769,16 @@ f 232/106/9 237/100/9 236/102/9 f 234/108/8 238/104/8 237/100/8 f 231/110/11 236/102/11 235/101/11 f 245/112/12 246/138/12 243/113/12 -f 241/115/10 243/208/10 246/116/10 -f 239/118/9 240/209/9 245/119/9 +f 241/115/10 243/236/10 246/116/10 +f 239/118/9 240/237/9 245/119/9 f 261/121/12 262/125/12 259/122/12 f 257/124/10 259/131/10 262/125/10 -f 256/127/9 261/210/9 260/128/9 +f 256/127/9 261/238/9 260/128/9 f 258/126/8 262/125/8 261/121/8 f 255/129/11 260/128/11 259/131/11 f 543/132/12 544/179/12 541/133/12 f 296/135/12 295/141/12 294/136/12 -f 245/119/9 240/209/9 296/135/9 +f 245/119/9 240/237/9 296/135/9 f 245/112/11 293/137/11 294/136/11 f 242/139/8 295/141/8 296/135/8 f 246/116/10 294/136/10 295/141/10 @@ -1721,7 +1788,7 @@ f 28/33/8 27/48/8 21/147/8 f 20/148/8 302/32/8 24/149/8 f 21/147/8 27/48/8 26/150/8 f 18/30/8 24/149/8 26/150/8 -f 309/152/8 307/211/8 308/153/8 +f 309/152/8 307/239/8 308/153/8 f 312/155/10 314/172/10 316/156/10 f 313/157/8 316/156/8 315/158/8 f 318/160/10 320/164/10 322/161/10 @@ -1734,671 +1801,2093 @@ f 538/181/9 543/132/9 542/134/9 f 540/183/8 544/179/8 543/132/8 f 537/185/11 542/134/11 541/133/11 f 551/187/12 552/199/12 549/188/12 -f 547/190/10 549/212/10 552/191/10 -f 545/193/9 546/213/9 551/194/9 +f 547/190/10 549/240/10 552/191/10 +f 545/193/9 546/241/9 551/194/9 f 556/196/12 555/202/12 554/197/12 -f 551/194/9 546/213/9 556/196/9 +f 551/194/9 546/241/9 556/196/9 f 551/187/11 553/198/11 554/197/11 f 548/200/8 555/202/8 556/196/8 f 552/191/10 554/197/10 555/202/10 +f 557/203/25 559/212/25 560/204/25 +f 557/206/11 561/230/11 563/207/11 +f 558/209/8 560/242/8 564/210/8 +f 559/212/10 565/218/10 566/213/10 +f 563/214/10 568/243/10 567/215/10 +f 560/204/10 569/219/10 570/216/10 +f 570/220/11 569/228/11 575/221/11 +f 565/218/26 571/225/26 572/223/26 +f 567/224/27 573/227/27 571/225/27 +f 568/226/8 574/229/8 573/227/8 +f 569/228/28 566/213/28 572/223/28 +f 574/229/25 568/226/25 563/207/25 +f 570/220/25 576/222/25 562/211/25 s 1 -f 66/214/25 73/215/26 65/216/12 -f 64/217/27 71/218/28 63/219/10 -f 63/219/10 78/220/29 70/221/30 -f 69/222/7 76/223/31 68/224/32 -f 67/225/9 74/226/33 66/214/25 -f 65/216/12 72/227/34 64/217/27 -f 70/221/30 77/228/35 69/229/7 -f 68/224/32 75/230/36 67/225/9 -f 74/231/33 83/232/37 82/233/38 -f 73/215/26 80/234/39 72/235/34 -f 76/236/31 83/232/37 75/237/36 -f 74/231/33 81/238/40 73/215/26 -f 72/235/34 79/239/41 71/240/28 -f 71/240/28 85/241/42 78/242/29 -f 80/234/39 86/243/43 79/239/41 -f 79/239/41 92/244/44 85/241/42 -f 83/232/37 89/245/45 82/233/38 -f 81/238/40 87/246/46 80/234/39 -f 83/232/37 91/247/47 90/248/48 -f 81/238/40 89/245/45 88/249/49 -f 78/242/29 85/241/42 77/250/35 -f 85/241/42 92/244/44 77/250/35 -f 76/236/31 77/251/35 84/252/50 -f 84/252/50 77/251/35 91/247/47 -f 77/253/35 99/254/16 91/255/47 -f 86/256/43 100/257/14 92/258/44 -f 92/258/44 93/259/11 77/260/35 -f 90/261/48 97/262/13 89/263/45 -f 88/249/49 95/264/15 87/265/46 -f 91/255/47 98/266/9 90/261/48 -f 89/263/45 96/267/8 88/249/49 -f 87/265/46 94/268/10 86/256/43 -f 104/269/25 111/270/26 103/271/12 -f 102/272/27 109/273/28 101/274/10 -f 101/274/10 116/275/29 108/276/30 -f 107/277/7 114/278/31 106/279/32 -f 105/280/9 112/281/33 104/269/25 -f 103/271/12 110/282/34 102/272/27 -f 108/276/30 115/283/35 107/284/7 -f 106/279/32 113/285/36 105/280/9 -f 112/286/33 121/287/37 120/288/38 -f 111/270/26 118/289/39 110/290/34 -f 113/291/36 122/292/50 121/287/37 -f 111/270/26 120/288/38 119/293/40 -f 110/290/34 117/294/41 109/295/28 -f 109/295/28 123/296/42 116/297/29 -f 118/289/39 124/298/43 117/294/41 -f 117/294/41 130/299/44 123/296/42 -f 120/288/38 128/300/48 127/301/45 -f 118/289/39 126/302/49 125/303/46 -f 121/287/37 129/304/47 128/300/48 -f 120/288/38 126/302/49 119/293/40 -f 116/297/29 123/296/42 115/305/35 -f 123/296/42 130/299/44 115/305/35 -f 114/306/31 115/307/35 122/292/50 -f 122/292/50 115/307/35 129/304/47 -f 115/308/35 137/309/16 129/310/47 -f 124/311/43 138/312/14 130/313/44 -f 130/313/44 131/314/11 115/315/35 -f 128/316/48 135/317/13 127/318/45 -f 126/302/49 133/319/15 125/320/46 -f 129/310/47 136/321/9 128/316/48 -f 127/318/45 134/322/8 126/302/49 -f 125/320/46 132/323/10 124/311/43 -f 142/324/51 149/325/52 141/326/12 -f 140/327/40 147/328/53 139/329/8 -f 139/329/8 154/330/54 146/331/55 -f 145/332/7 152/333/56 144/334/35 -f 143/335/11 150/336/57 142/324/51 -f 140/327/40 149/325/52 148/337/58 -f 146/331/55 153/338/30 145/339/7 -f 144/334/35 151/340/59 143/335/11 -f 150/341/57 159/342/60 158/343/61 -f 149/325/52 156/344/62 148/345/58 -f 152/346/56 159/342/60 151/347/59 -f 149/325/52 158/343/61 157/348/25 -f 148/345/58 155/349/63 147/350/53 -f 154/351/54 155/349/63 161/352/64 -f 155/349/63 163/353/65 162/354/66 -f 161/352/64 162/354/66 168/355/67 -f 159/342/60 165/356/68 158/343/61 -f 156/344/62 164/357/69 163/353/65 -f 160/358/70 166/359/71 159/342/60 -f 157/348/25 165/356/68 164/357/69 -f 154/351/54 161/352/64 153/360/30 -f 161/352/64 168/355/67 153/360/30 -f 152/346/56 153/361/30 160/358/70 -f 160/358/70 153/361/30 167/362/72 -f 153/363/30 175/364/73 167/365/72 -f 162/366/66 176/367/74 168/368/67 -f 168/368/67 169/369/75 153/370/30 -f 166/371/71 173/372/76 165/373/68 -f 164/357/69 171/374/77 163/375/65 -f 167/365/72 174/376/78 166/371/71 -f 165/373/68 172/377/25 164/357/69 -f 163/375/65 170/378/79 162/366/66 -f 174/379/78 182/380/80 181/381/81 -f 171/382/77 178/383/82 170/384/79 -f 169/385/75 182/380/80 175/386/73 -f 170/384/79 183/387/83 176/388/74 -f 173/389/76 181/381/81 180/390/84 -f 176/388/74 177/391/30 169/369/75 -f 177/391/30 190/392/85 184/393/86 -f 181/381/81 189/394/87 188/395/88 -f 178/383/82 186/396/89 185/397/90 -f 177/398/30 189/394/87 182/380/80 -f 178/383/82 190/392/85 183/387/83 -f 181/381/81 187/399/91 180/390/84 -f 171/382/77 172/400/25 179/401/92 -f 179/401/92 172/400/25 186/396/89 -f 173/389/76 180/390/84 172/400/25 -f 180/390/84 187/399/91 172/400/25 -f 194/402/51 201/403/12 193/404/12 -f 192/405/40 199/406/8 191/407/8 -f 191/407/8 206/408/55 198/409/55 -f 197/410/7 204/411/35 196/412/35 -f 195/413/11 202/414/51 194/402/51 -f 192/405/40 201/403/12 200/415/40 -f 198/409/55 205/416/7 197/417/7 -f 196/412/35 203/418/11 195/413/11 -f 210/419/51 217/420/12 209/421/12 -f 208/422/40 215/423/8 207/424/8 -f 207/424/8 222/425/55 214/426/55 -f 213/427/7 220/428/35 212/429/35 -f 211/430/11 218/431/51 210/419/51 -f 208/422/40 217/420/12 216/432/40 -f 214/426/55 221/433/7 213/434/7 -f 212/429/35 219/435/11 211/430/11 -f 249/436/93 226/437/94 250/438/95 -f 247/439/96 224/440/51 248/441/97 -f 229/442/98 329/443/99 230/444/100 -f 248/441/97 225/445/101 249/436/93 -f 247/439/96 329/443/99 223/446/102 -f 253/447/30 230/448/100 254/449/10 -f 251/450/32 228/451/55 252/452/7 -f 298/453/12 249/454/93 299/455/25 -f 254/449/10 247/456/96 297/457/27 -f 252/458/7 229/459/98 253/447/30 -f 190/460/85 264/461/103 184/393/86 -f 189/462/87 268/463/14 188/464/88 -f 186/465/89 265/466/104 185/467/90 -f 187/468/91 263/469/105 172/470/25 -f 184/471/86 269/472/106 189/462/87 -f 172/470/25 266/473/107 186/465/89 -f 185/467/90 270/474/108 190/460/85 -f 188/464/88 267/475/109 187/468/91 -f 266/476/107 271/477/110 274/478/111 -f 270/479/108 272/480/112 264/481/103 -f 266/476/107 273/482/13 265/466/104 -f 267/483/109 271/477/110 263/484/105 -f 269/485/106 272/486/112 276/487/113 -f 270/479/108 273/482/13 277/488/114 -f 277/488/114 280/489/115 284/490/116 -f 271/477/110 281/491/117 274/478/111 -f 272/480/112 284/490/116 279/492/118 -f 274/478/111 280/489/115 273/482/13 -f 275/493/119 278/494/120 271/477/110 -f 272/486/112 283/495/121 276/487/113 -f 269/485/106 276/487/113 268/496/14 -f 276/487/113 283/495/121 268/496/14 -f 267/483/109 268/496/14 275/493/119 -f 275/493/119 268/496/14 282/497/122 -f 278/498/120 289/499/25 281/500/117 -f 284/501/116 287/502/7 279/503/118 -f 281/500/117 288/504/9 280/489/115 -f 268/505/14 290/506/27 282/507/122 -f 282/507/122 286/508/12 278/498/120 -f 283/509/121 285/510/10 268/505/14 -f 279/511/118 291/512/30 283/509/121 -f 280/489/115 292/513/32 284/501/116 -f 300/514/9 227/515/123 251/450/32 -f 299/455/25 250/516/95 300/514/9 -f 297/457/27 248/441/97 298/453/12 -f 250/438/95 331/517/124 227/518/123 -f 225/445/101 332/519/125 226/437/94 -f 226/437/94 338/520/126 331/517/124 -f 329/443/99 335/521/127 223/446/102 -f 224/440/51 333/522/128 225/445/101 -f 329/443/99 337/523/129 336/524/130 -f 224/440/51 335/521/127 334/525/131 -f 227/518/123 331/517/124 228/526/55 -f 331/517/124 338/520/126 228/526/55 -f 229/442/98 228/527/55 330/528/132 -f 330/528/132 228/527/55 337/523/129 -f 228/529/55 345/530/15 337/531/129 -f 332/532/125 346/533/13 338/534/126 -f 338/534/126 339/535/8 228/536/55 -f 336/537/130 343/538/14 335/539/127 -f 334/525/131 341/540/16 333/541/128 -f 337/531/129 344/542/10 336/537/130 -f 335/539/127 342/543/11 334/525/131 -f 333/541/128 340/544/9 332/532/125 -f 350/545/27 357/546/97 349/547/12 -f 348/548/25 355/549/95 347/550/9 -f 347/550/9 362/551/123 354/552/32 -f 353/553/7 360/554/98 352/555/30 -f 351/556/10 358/557/96 350/545/27 -f 349/547/12 356/558/93 348/548/25 -f 354/552/32 361/559/55 353/560/7 -f 352/555/30 359/561/100 351/556/10 -f 359/562/100 366/563/102 358/564/96 -f 357/546/97 364/565/101 356/566/93 -f 359/562/100 368/567/132 367/568/99 -f 357/546/97 366/563/102 365/569/51 -f 356/566/93 363/570/94 355/571/95 -f 355/571/95 369/572/124 362/573/123 -f 363/570/94 371/574/128 370/575/125 -f 363/570/94 376/576/126 369/572/124 -f 367/568/99 373/577/127 366/563/102 -f 365/569/51 371/574/128 364/565/101 -f 367/568/99 375/578/129 374/579/130 -f 365/569/51 373/577/127 372/580/131 -f 362/573/123 369/572/124 361/581/55 -f 369/572/124 376/576/126 361/581/55 -f 360/582/98 361/583/55 368/567/132 -f 368/567/132 361/583/55 375/578/129 -f 361/584/55 383/585/15 375/586/129 -f 370/587/125 384/588/13 376/589/126 -f 376/589/126 377/590/8 361/591/55 -f 374/592/130 381/593/14 373/594/127 -f 372/580/131 379/595/16 371/596/128 -f 375/586/129 382/597/10 374/592/130 -f 373/594/127 380/598/11 372/580/131 -f 371/596/128 378/599/9 370/587/125 -f 388/600/40 395/601/133 387/602/12 -f 386/603/51 393/604/134 385/605/11 -f 385/605/11 400/606/135 392/607/35 -f 391/608/7 398/609/136 390/610/55 -f 389/611/8 396/612/137 388/600/40 -f 387/602/12 394/613/138 386/603/51 -f 392/607/35 399/614/32 391/615/7 -f 390/610/55 397/616/139 389/611/8 -f 396/617/137 405/618/140 404/619/141 -f 395/601/133 402/620/142 394/621/138 -f 398/622/136 405/618/140 397/623/139 -f 396/617/137 403/624/27 395/601/133 -f 394/621/138 401/625/143 393/626/134 -f 393/626/134 407/627/144 400/628/135 -f 402/620/142 408/629/145 401/625/143 -f 401/625/143 414/630/146 407/627/144 -f 405/618/140 411/631/147 404/619/141 -f 403/624/27 409/632/148 402/620/142 -f 405/618/140 413/633/149 412/634/150 -f 404/619/141 410/635/151 403/624/27 -f 400/628/135 407/627/144 399/636/32 -f 407/627/144 414/630/146 399/636/32 -f 398/622/136 399/637/32 406/638/152 -f 406/638/152 399/637/32 413/633/149 -f 399/639/32 421/640/13 413/641/149 -f 408/642/145 422/643/16 414/644/146 -f 414/644/146 415/645/9 399/646/32 -f 412/647/150 419/648/15 411/649/147 -f 410/635/151 417/650/14 409/651/148 -f 413/641/149 420/652/8 412/647/150 -f 411/649/147 418/653/10 410/635/151 -f 409/651/148 416/654/11 408/642/145 -f 426/655/40 433/656/133 425/657/12 -f 424/658/51 431/659/134 423/660/11 -f 423/660/11 438/661/135 430/662/35 -f 429/663/7 436/664/136 428/665/55 -f 427/666/8 434/667/137 426/655/40 -f 425/657/12 432/668/138 424/658/51 -f 430/662/35 437/669/32 429/670/7 -f 428/665/55 435/671/139 427/666/8 -f 434/672/137 443/673/140 442/674/141 -f 433/656/133 440/675/142 432/676/138 -f 435/677/139 444/678/152 443/673/140 -f 433/656/133 442/674/141 441/679/27 -f 431/680/134 440/675/142 439/681/143 -f 431/680/134 445/682/144 438/683/135 -f 439/681/143 447/684/148 446/685/145 -f 439/681/143 452/686/146 445/682/144 -f 443/673/140 449/687/147 442/674/141 -f 441/679/27 447/684/148 440/675/142 -f 443/673/140 451/688/149 450/689/150 -f 441/679/27 449/687/147 448/690/151 -f 438/683/135 445/682/144 437/691/32 -f 445/682/144 452/686/146 437/691/32 -f 436/692/136 437/693/32 444/678/152 -f 444/678/152 437/693/32 451/688/149 -f 437/694/32 459/695/13 451/696/149 -f 446/697/145 460/698/16 452/699/146 -f 452/699/146 453/700/9 437/701/32 -f 450/702/150 457/703/15 449/704/147 -f 448/690/151 455/705/14 447/706/148 -f 451/696/149 458/707/8 450/702/150 -f 449/704/147 456/708/10 448/690/151 -f 447/706/148 454/709/11 446/697/145 -f 471/710/58 464/711/63 472/712/53 -f 470/713/52 461/714/61 462/715/25 -f 467/716/56 481/717/60 468/718/59 -f 470/713/52 463/719/62 471/710/58 -f 469/720/57 481/717/60 461/714/61 -f 475/721/35 468/722/59 476/723/11 -f 473/724/55 466/725/30 474/726/7 -f 478/727/12 471/728/58 479/729/40 -f 476/723/11 469/730/57 477/731/51 -f 474/732/7 467/733/56 475/721/35 -f 480/734/8 465/735/54 473/724/55 -f 479/729/40 472/736/53 480/734/8 -f 477/731/51 470/713/52 478/727/12 -f 472/712/53 483/737/64 465/738/54 -f 464/711/63 485/739/65 484/740/66 -f 483/737/64 484/740/66 490/741/67 -f 481/717/60 487/742/68 461/714/61 -f 463/719/62 486/743/69 485/739/65 -f 482/744/70 488/745/71 481/717/60 -f 462/715/25 487/742/68 486/743/69 -f 465/738/54 483/737/64 466/746/30 -f 483/737/64 490/741/67 466/746/30 -f 467/716/56 466/747/30 482/744/70 -f 482/744/70 466/747/30 489/748/72 -f 466/749/30 497/750/14 489/751/72 -f 484/752/66 498/753/15 490/754/67 -f 490/754/67 491/755/10 466/756/30 -f 488/757/71 495/758/16 487/759/68 -f 486/743/69 493/760/13 485/761/65 -f 489/751/72 496/762/11 488/757/71 -f 487/759/68 494/763/9 486/743/69 -f 485/761/65 492/764/8 484/752/66 -f 502/765/51 509/766/52 501/767/12 -f 500/768/40 507/769/53 499/770/8 -f 499/770/8 514/771/54 506/772/55 -f 505/773/7 512/774/56 504/775/35 -f 503/776/11 510/777/57 502/765/51 -f 501/767/12 508/778/58 500/768/40 -f 506/772/55 513/779/30 505/780/7 -f 504/775/35 511/781/59 503/776/11 -f 511/782/59 518/783/61 510/784/57 -f 509/766/52 516/785/62 508/786/58 -f 511/782/59 520/787/70 519/788/60 -f 509/766/52 518/783/61 517/789/25 -f 508/786/58 515/790/63 507/791/53 -f 507/791/53 521/792/64 514/793/54 -f 516/785/62 522/794/66 515/790/63 -f 521/792/64 522/794/66 528/795/67 -f 519/788/60 525/796/68 518/783/61 -f 516/785/62 524/797/69 523/798/65 -f 520/787/70 526/799/71 519/788/60 -f 517/789/25 525/796/68 524/797/69 -f 514/793/54 521/792/64 513/800/30 -f 521/792/64 528/795/67 513/800/30 -f 512/801/56 513/802/30 520/787/70 -f 520/787/70 513/802/30 527/803/72 -f 513/804/30 535/805/14 527/806/72 -f 522/807/66 536/808/15 528/809/67 -f 528/809/67 529/810/10 513/811/30 -f 526/812/71 533/813/16 525/814/68 -f 524/797/69 531/815/13 523/816/65 -f 527/806/72 534/817/11 526/812/71 -f 525/814/68 532/818/9 524/797/69 -f 523/816/65 530/819/8 522/807/66 -f 66/214/25 74/226/33 73/215/26 -f 64/217/27 72/227/34 71/218/28 -f 63/219/10 71/218/28 78/220/29 -f 69/222/7 77/820/35 76/223/31 -f 67/225/9 75/230/36 74/226/33 -f 65/216/12 73/215/26 72/227/34 -f 70/221/30 78/220/29 77/228/35 -f 68/224/32 76/223/31 75/230/36 -f 74/231/33 75/237/36 83/232/37 -f 73/215/26 81/238/40 80/234/39 -f 76/236/31 84/252/50 83/232/37 -f 74/231/33 82/233/38 81/238/40 -f 72/235/34 80/234/39 79/239/41 -f 71/240/28 79/239/41 85/241/42 -f 80/234/39 87/246/46 86/243/43 -f 79/239/41 86/243/43 92/244/44 -f 83/232/37 90/248/48 89/245/45 -f 81/238/40 88/249/49 87/246/46 -f 83/232/37 84/252/50 91/247/47 -f 81/238/40 82/233/38 89/245/45 -f 77/253/35 93/821/11 99/254/16 -f 86/256/43 94/268/10 100/257/14 -f 92/258/44 100/257/14 93/259/11 -f 90/261/48 98/266/9 97/262/13 -f 88/249/49 96/267/8 95/264/15 -f 91/255/47 99/254/16 98/266/9 -f 89/263/45 97/262/13 96/267/8 -f 87/265/46 95/264/15 94/268/10 -f 104/269/25 112/281/33 111/270/26 -f 102/272/27 110/282/34 109/273/28 -f 101/274/10 109/273/28 116/275/29 -f 107/277/7 115/822/35 114/278/31 -f 105/280/9 113/285/36 112/281/33 -f 103/271/12 111/270/26 110/282/34 -f 108/276/30 116/275/29 115/283/35 -f 106/279/32 114/278/31 113/285/36 -f 112/286/33 113/291/36 121/287/37 -f 111/270/26 119/293/40 118/289/39 -f 113/291/36 114/306/31 122/292/50 -f 111/270/26 112/286/33 120/288/38 -f 110/290/34 118/289/39 117/294/41 -f 109/295/28 117/294/41 123/296/42 -f 118/289/39 125/303/46 124/298/43 -f 117/294/41 124/298/43 130/299/44 -f 120/288/38 121/287/37 128/300/48 -f 118/289/39 119/293/40 126/302/49 -f 121/287/37 122/292/50 129/304/47 -f 120/288/38 127/301/45 126/302/49 -f 115/308/35 131/823/11 137/309/16 -f 124/311/43 132/323/10 138/312/14 -f 130/313/44 138/312/14 131/314/11 -f 128/316/48 136/321/9 135/317/13 -f 126/302/49 134/322/8 133/319/15 -f 129/310/47 137/309/16 136/321/9 -f 127/318/45 135/317/13 134/322/8 -f 125/320/46 133/319/15 132/323/10 -f 142/324/51 150/336/57 149/325/52 -f 140/327/40 148/337/58 147/328/53 -f 139/329/8 147/328/53 154/330/54 -f 145/332/7 153/824/30 152/333/56 -f 143/335/11 151/340/59 150/336/57 -f 140/327/40 141/326/12 149/325/52 -f 146/331/55 154/330/54 153/338/30 -f 144/334/35 152/333/56 151/340/59 -f 150/341/57 151/347/59 159/342/60 -f 149/325/52 157/348/25 156/344/62 -f 152/346/56 160/358/70 159/342/60 -f 149/325/52 150/341/57 158/343/61 -f 148/345/58 156/344/62 155/349/63 -f 154/351/54 147/350/53 155/349/63 -f 155/349/63 156/344/62 163/353/65 -f 161/352/64 155/349/63 162/354/66 -f 159/342/60 166/359/71 165/356/68 -f 156/344/62 157/348/25 164/357/69 -f 160/358/70 167/362/72 166/359/71 -f 157/348/25 158/343/61 165/356/68 -f 153/363/30 169/385/75 175/364/73 -f 162/366/66 170/378/79 176/367/74 -f 168/368/67 176/367/74 169/369/75 -f 166/371/71 174/376/78 173/372/76 -f 164/357/69 172/377/25 171/374/77 -f 167/365/72 175/364/73 174/376/78 -f 165/373/68 173/372/76 172/377/25 -f 163/375/65 171/374/77 170/378/79 -f 174/379/78 175/386/73 182/380/80 -f 171/382/77 179/401/92 178/383/82 -f 169/385/75 177/398/30 182/380/80 -f 170/384/79 178/383/82 183/387/83 -f 173/389/76 174/379/78 181/381/81 -f 176/388/74 183/387/83 177/391/30 -f 177/391/30 183/387/83 190/392/85 -f 181/381/81 182/380/80 189/394/87 -f 178/383/82 179/401/92 186/396/89 -f 177/398/30 184/471/86 189/394/87 -f 178/383/82 185/397/90 190/392/85 -f 181/381/81 188/395/88 187/399/91 -f 194/402/51 202/414/51 201/403/12 -f 192/405/40 200/415/40 199/406/8 -f 191/407/8 199/406/8 206/408/55 -f 197/410/7 205/825/7 204/411/35 -f 195/413/11 203/418/11 202/414/51 -f 192/405/40 193/404/12 201/403/12 -f 198/409/55 206/408/55 205/416/7 -f 196/412/35 204/411/35 203/418/11 -f 210/419/51 218/431/51 217/420/12 -f 208/422/40 216/432/40 215/423/8 -f 207/424/8 215/423/8 222/425/55 -f 213/427/7 221/826/7 220/428/35 -f 211/430/11 219/435/11 218/431/51 -f 208/422/40 209/421/12 217/420/12 -f 214/426/55 222/425/55 221/433/7 -f 212/429/35 220/428/35 219/435/11 -f 249/436/93 225/445/101 226/437/94 -f 247/439/96 223/446/102 224/440/51 -f 229/442/98 330/528/132 329/443/99 -f 248/441/97 224/440/51 225/445/101 -f 247/439/96 230/444/100 329/443/99 -f 253/447/30 229/459/98 230/448/100 -f 251/450/32 227/515/123 228/451/55 -f 298/453/12 248/441/97 249/454/93 -f 254/449/10 230/448/100 247/456/96 -f 252/458/7 228/827/55 229/459/98 -f 190/460/85 270/474/108 264/461/103 -f 189/462/87 269/472/106 268/463/14 -f 186/465/89 266/473/107 265/466/104 -f 187/468/91 267/475/109 263/469/105 -f 184/471/86 264/828/103 269/472/106 -f 172/470/25 263/469/105 266/473/107 -f 185/467/90 265/466/104 270/474/108 -f 188/464/88 268/463/14 267/475/109 -f 266/476/107 263/484/105 271/477/110 -f 270/479/108 277/488/114 272/480/112 -f 266/476/107 274/478/111 273/482/13 -f 267/483/109 275/493/119 271/477/110 -f 269/485/106 264/829/103 272/486/112 -f 270/479/108 265/466/104 273/482/13 -f 277/488/114 273/482/13 280/489/115 -f 271/477/110 278/494/120 281/491/117 -f 272/480/112 277/488/114 284/490/116 -f 274/478/111 281/491/117 280/489/115 -f 275/493/119 282/497/122 278/494/120 -f 272/486/112 279/830/118 283/495/121 -f 278/498/120 286/508/12 289/499/25 -f 284/501/116 292/513/32 287/502/7 -f 281/500/117 289/499/25 288/504/9 -f 268/505/14 285/510/10 290/506/27 -f 282/507/122 290/506/27 286/508/12 -f 283/509/121 291/512/30 285/510/10 -f 279/511/118 287/831/7 291/512/30 -f 280/489/115 288/504/9 292/513/32 -f 300/514/9 250/516/95 227/515/123 -f 299/455/25 249/454/93 250/516/95 -f 297/457/27 247/456/96 248/441/97 -f 250/438/95 226/437/94 331/517/124 -f 225/445/101 333/522/128 332/519/125 -f 226/437/94 332/519/125 338/520/126 -f 329/443/99 336/524/130 335/521/127 -f 224/440/51 334/525/131 333/522/128 -f 329/443/99 330/528/132 337/523/129 -f 224/440/51 223/446/102 335/521/127 -f 228/529/55 339/832/8 345/530/15 -f 332/532/125 340/544/9 346/533/13 -f 338/534/126 346/533/13 339/535/8 -f 336/537/130 344/542/10 343/538/14 -f 334/525/131 342/543/11 341/540/16 -f 337/531/129 345/530/15 344/542/10 -f 335/539/127 343/538/14 342/543/11 -f 333/541/128 341/540/16 340/544/9 -f 350/545/27 358/557/96 357/546/97 -f 348/548/25 356/558/93 355/549/95 -f 347/550/9 355/549/95 362/551/123 -f 353/553/7 361/833/55 360/554/98 -f 351/556/10 359/561/100 358/557/96 -f 349/547/12 357/546/97 356/558/93 -f 354/552/32 362/551/123 361/559/55 -f 352/555/30 360/554/98 359/561/100 -f 359/562/100 367/568/99 366/563/102 -f 357/546/97 365/569/51 364/565/101 -f 359/562/100 360/582/98 368/567/132 -f 357/546/97 358/564/96 366/563/102 -f 356/566/93 364/565/101 363/570/94 -f 355/571/95 363/570/94 369/572/124 -f 363/570/94 364/565/101 371/574/128 -f 363/570/94 370/575/125 376/576/126 -f 367/568/99 374/579/130 373/577/127 -f 365/569/51 372/580/131 371/574/128 -f 367/568/99 368/567/132 375/578/129 -f 365/569/51 366/563/102 373/577/127 -f 361/584/55 377/834/8 383/585/15 -f 370/587/125 378/599/9 384/588/13 -f 376/589/126 384/588/13 377/590/8 -f 374/592/130 382/597/10 381/593/14 -f 372/580/131 380/598/11 379/595/16 -f 375/586/129 383/585/15 382/597/10 -f 373/594/127 381/593/14 380/598/11 -f 371/596/128 379/595/16 378/599/9 -f 388/600/40 396/612/137 395/601/133 -f 386/603/51 394/613/138 393/604/134 -f 385/605/11 393/604/134 400/606/135 -f 391/608/7 399/835/32 398/609/136 -f 389/611/8 397/616/139 396/612/137 -f 387/602/12 395/601/133 394/613/138 -f 392/607/35 400/606/135 399/614/32 -f 390/610/55 398/609/136 397/616/139 -f 396/617/137 397/623/139 405/618/140 -f 395/601/133 403/624/27 402/620/142 -f 398/622/136 406/638/152 405/618/140 -f 396/617/137 404/619/141 403/624/27 -f 394/621/138 402/620/142 401/625/143 -f 393/626/134 401/625/143 407/627/144 -f 402/620/142 409/632/148 408/629/145 -f 401/625/143 408/629/145 414/630/146 -f 405/618/140 412/634/150 411/631/147 -f 403/624/27 410/635/151 409/632/148 -f 405/618/140 406/638/152 413/633/149 -f 404/619/141 411/631/147 410/635/151 -f 399/639/32 415/836/9 421/640/13 -f 408/642/145 416/654/11 422/643/16 -f 414/644/146 422/643/16 415/645/9 -f 412/647/150 420/652/8 419/648/15 -f 410/635/151 418/653/10 417/650/14 -f 413/641/149 421/640/13 420/652/8 -f 411/649/147 419/648/15 418/653/10 -f 409/651/148 417/650/14 416/654/11 -f 426/655/40 434/667/137 433/656/133 -f 424/658/51 432/668/138 431/659/134 -f 423/660/11 431/659/134 438/661/135 -f 429/663/7 437/837/32 436/664/136 -f 427/666/8 435/671/139 434/667/137 -f 425/657/12 433/656/133 432/668/138 -f 430/662/35 438/661/135 437/669/32 -f 428/665/55 436/664/136 435/671/139 -f 434/672/137 435/677/139 443/673/140 -f 433/656/133 441/679/27 440/675/142 -f 435/677/139 436/692/136 444/678/152 -f 433/656/133 434/672/137 442/674/141 -f 431/680/134 432/676/138 440/675/142 -f 431/680/134 439/681/143 445/682/144 -f 439/681/143 440/675/142 447/684/148 -f 439/681/143 446/685/145 452/686/146 -f 443/673/140 450/689/150 449/687/147 -f 441/679/27 448/690/151 447/684/148 -f 443/673/140 444/678/152 451/688/149 -f 441/679/27 442/674/141 449/687/147 -f 437/694/32 453/838/9 459/695/13 -f 446/697/145 454/709/11 460/698/16 -f 452/699/146 460/698/16 453/700/9 -f 450/702/150 458/707/8 457/703/15 -f 448/690/151 456/708/10 455/705/14 -f 451/696/149 459/695/13 458/707/8 -f 449/704/147 457/703/15 456/708/10 -f 447/706/148 455/705/14 454/709/11 -f 471/710/58 463/719/62 464/711/63 -f 470/713/52 469/720/57 461/714/61 -f 467/716/56 482/744/70 481/717/60 -f 470/713/52 462/715/25 463/719/62 -f 469/720/57 468/718/59 481/717/60 -f 475/721/35 467/733/56 468/722/59 -f 473/724/55 465/735/54 466/725/30 -f 478/727/12 470/713/52 471/728/58 -f 476/723/11 468/722/59 469/730/57 -f 474/732/7 466/839/30 467/733/56 -f 480/734/8 472/736/53 465/735/54 -f 479/729/40 471/728/58 472/736/53 -f 477/731/51 469/730/57 470/713/52 -f 472/712/53 464/711/63 483/737/64 -f 464/711/63 463/719/62 485/739/65 -f 483/737/64 464/711/63 484/740/66 -f 481/717/60 488/745/71 487/742/68 -f 463/719/62 462/715/25 486/743/69 -f 482/744/70 489/748/72 488/745/71 -f 462/715/25 461/714/61 487/742/68 -f 466/749/30 491/840/10 497/750/14 -f 484/752/66 492/764/8 498/753/15 -f 490/754/67 498/753/15 491/755/10 -f 488/757/71 496/762/11 495/758/16 -f 486/743/69 494/763/9 493/760/13 -f 489/751/72 497/750/14 496/762/11 -f 487/759/68 495/758/16 494/763/9 -f 485/761/65 493/760/13 492/764/8 -f 502/765/51 510/777/57 509/766/52 -f 500/768/40 508/778/58 507/769/53 -f 499/770/8 507/769/53 514/771/54 -f 505/773/7 513/841/30 512/774/56 -f 503/776/11 511/781/59 510/777/57 -f 501/767/12 509/766/52 508/778/58 -f 506/772/55 514/771/54 513/779/30 -f 504/775/35 512/774/56 511/781/59 -f 511/782/59 519/788/60 518/783/61 -f 509/766/52 517/789/25 516/785/62 -f 511/782/59 512/801/56 520/787/70 -f 509/766/52 510/784/57 518/783/61 -f 508/786/58 516/785/62 515/790/63 -f 507/791/53 515/790/63 521/792/64 -f 516/785/62 523/798/65 522/794/66 -f 521/792/64 515/790/63 522/794/66 -f 519/788/60 526/799/71 525/796/68 -f 516/785/62 517/789/25 524/797/69 -f 520/787/70 527/803/72 526/799/71 -f 517/789/25 518/783/61 525/796/68 -f 513/804/30 529/842/10 535/805/14 -f 522/807/66 530/819/8 536/808/15 -f 528/809/67 536/808/15 529/810/10 -f 526/812/71 534/817/11 533/813/16 -f 524/797/69 532/818/9 531/815/13 -f 527/806/72 535/805/14 534/817/11 -f 525/814/68 533/813/16 532/818/9 -f 523/816/65 531/815/13 530/819/8 +f 66/244/29 73/245/30 65/246/12 +f 64/247/25 71/248/31 63/249/10 +f 63/249/10 78/250/32 70/251/33 +f 69/252/7 76/253/34 68/254/26 +f 67/255/9 74/256/35 66/244/29 +f 65/246/12 72/257/36 64/247/25 +f 70/251/33 77/258/37 69/259/7 +f 68/254/26 75/260/38 67/255/9 +f 74/261/35 83/262/39 82/263/40 +f 73/245/30 80/264/41 72/265/36 +f 76/266/34 83/262/39 75/267/38 +f 74/261/35 81/268/42 73/245/30 +f 72/265/36 79/269/43 71/270/31 +f 71/270/31 85/271/44 78/272/32 +f 80/264/41 86/273/45 79/269/43 +f 79/269/43 92/274/46 85/271/44 +f 83/262/39 89/275/47 82/263/40 +f 81/268/42 87/276/48 80/264/41 +f 83/262/39 91/277/49 90/278/50 +f 81/268/42 89/275/47 88/279/51 +f 78/272/32 85/271/44 77/280/37 +f 85/271/44 92/274/46 77/280/37 +f 76/266/34 77/281/37 84/282/52 +f 84/282/52 77/281/37 91/277/49 +f 77/283/37 99/284/16 91/285/49 +f 86/286/45 100/287/14 92/288/46 +f 92/288/46 93/289/11 77/290/37 +f 90/291/50 97/292/13 89/293/47 +f 88/279/51 95/294/15 87/295/48 +f 91/285/49 98/296/9 90/291/50 +f 89/293/47 96/297/8 88/279/51 +f 87/295/48 94/298/10 86/286/45 +f 104/299/29 111/300/30 103/301/12 +f 102/302/25 109/303/31 101/304/10 +f 101/304/10 116/305/32 108/306/33 +f 107/307/7 114/308/34 106/309/26 +f 105/310/9 112/311/35 104/299/29 +f 103/301/12 110/312/36 102/302/25 +f 108/306/33 115/313/37 107/314/7 +f 106/309/26 113/315/38 105/310/9 +f 112/316/35 121/317/39 120/318/40 +f 111/300/30 118/319/41 110/320/36 +f 113/321/38 122/322/52 121/317/39 +f 111/300/30 120/318/40 119/323/42 +f 110/320/36 117/324/43 109/325/31 +f 109/325/31 123/326/44 116/327/32 +f 118/319/41 124/328/45 117/324/43 +f 117/324/43 130/329/46 123/326/44 +f 120/318/40 128/330/50 127/331/47 +f 118/319/41 126/332/51 125/333/48 +f 121/317/39 129/334/49 128/330/50 +f 120/318/40 126/332/51 119/323/42 +f 116/327/32 123/326/44 115/335/37 +f 123/326/44 130/329/46 115/335/37 +f 114/336/34 115/337/37 122/322/52 +f 122/322/52 115/337/37 129/334/49 +f 115/338/37 137/339/16 129/340/49 +f 124/341/45 138/342/14 130/343/46 +f 130/343/46 131/344/11 115/345/37 +f 128/346/50 135/347/13 127/348/47 +f 126/332/51 133/349/15 125/350/48 +f 129/340/49 136/351/9 128/346/50 +f 127/348/47 134/352/8 126/332/51 +f 125/350/48 132/353/10 124/341/45 +f 142/354/53 149/355/54 141/356/12 +f 140/357/42 147/358/55 139/359/8 +f 139/359/8 154/360/56 146/361/57 +f 145/362/7 152/363/58 144/364/37 +f 143/365/11 150/366/59 142/354/53 +f 140/357/42 149/355/54 148/367/60 +f 146/361/57 153/368/33 145/369/7 +f 144/364/37 151/370/61 143/365/11 +f 150/371/59 159/372/62 158/373/63 +f 149/355/54 156/374/64 148/375/60 +f 152/376/58 159/372/62 151/377/61 +f 149/355/54 158/373/63 157/378/29 +f 148/375/60 155/379/65 147/380/55 +f 154/381/56 155/379/65 161/382/66 +f 155/379/65 163/383/67 162/384/68 +f 161/382/66 162/384/68 168/385/69 +f 159/372/62 165/386/70 158/373/63 +f 156/374/64 164/387/71 163/383/67 +f 160/388/72 166/389/73 159/372/62 +f 157/378/29 165/386/70 164/387/71 +f 154/381/56 161/382/66 153/390/33 +f 161/382/66 168/385/69 153/390/33 +f 152/376/58 153/391/33 160/388/72 +f 160/388/72 153/391/33 167/392/74 +f 153/393/33 175/394/75 167/395/74 +f 162/396/68 176/397/76 168/398/69 +f 168/398/69 169/399/77 153/400/33 +f 166/401/73 173/402/78 165/403/70 +f 164/387/71 171/404/79 163/405/67 +f 167/395/74 174/406/80 166/401/73 +f 165/403/70 172/407/29 164/387/71 +f 163/405/67 170/408/81 162/396/68 +f 174/409/80 182/410/82 181/411/83 +f 171/412/79 178/413/84 170/414/81 +f 169/415/77 182/410/82 175/416/75 +f 170/414/81 183/417/85 176/418/76 +f 173/419/78 181/411/83 180/420/86 +f 176/418/76 177/421/33 169/399/77 +f 177/421/33 190/422/87 184/423/88 +f 181/411/83 189/424/89 188/425/90 +f 178/413/84 186/426/91 185/427/92 +f 177/428/33 189/424/89 182/410/82 +f 178/413/84 190/422/87 183/417/85 +f 181/411/83 187/429/93 180/420/86 +f 171/412/79 172/430/29 179/431/94 +f 179/431/94 172/430/29 186/426/91 +f 173/419/78 180/420/86 172/430/29 +f 180/420/86 187/429/93 172/430/29 +f 194/432/53 201/433/12 193/434/12 +f 192/435/42 199/436/8 191/437/8 +f 191/437/8 206/438/57 198/439/57 +f 197/440/7 204/441/37 196/442/37 +f 195/443/11 202/444/53 194/432/53 +f 192/435/42 201/433/12 200/445/42 +f 198/439/57 205/446/7 197/447/7 +f 196/442/37 203/448/11 195/443/11 +f 210/449/53 217/450/12 209/451/12 +f 208/452/42 215/453/8 207/454/8 +f 207/454/8 222/455/57 214/456/57 +f 213/457/7 220/458/37 212/459/37 +f 211/460/11 218/461/53 210/449/53 +f 208/452/42 217/450/12 216/462/42 +f 214/456/57 221/463/7 213/464/7 +f 212/459/37 219/465/11 211/460/11 +f 249/466/95 226/467/96 250/468/97 +f 247/469/98 224/470/53 248/471/99 +f 229/472/100 329/473/101 230/474/102 +f 248/471/99 225/475/103 249/466/95 +f 247/469/98 329/473/101 223/476/104 +f 253/477/33 230/478/102 254/479/10 +f 251/480/26 228/481/57 252/482/7 +f 298/483/12 249/484/95 299/485/29 +f 254/479/10 247/486/98 297/487/25 +f 252/488/7 229/489/100 253/477/33 +f 190/490/87 264/491/105 184/423/88 +f 189/492/89 268/493/14 188/494/90 +f 186/495/91 265/496/106 185/497/92 +f 187/498/93 263/499/107 172/500/29 +f 184/501/88 269/502/108 189/492/89 +f 172/500/29 266/503/109 186/495/91 +f 185/497/92 270/504/110 190/490/87 +f 188/494/90 267/505/111 187/498/93 +f 266/506/109 271/507/112 274/508/113 +f 270/509/110 272/510/114 264/511/105 +f 266/506/109 273/512/13 265/496/106 +f 267/513/111 271/507/112 263/514/107 +f 269/515/108 272/516/114 276/517/115 +f 270/509/110 273/512/13 277/518/116 +f 277/518/116 280/519/117 284/520/118 +f 271/507/112 281/521/119 274/508/113 +f 272/510/114 284/520/118 279/522/120 +f 274/508/113 280/519/117 273/512/13 +f 275/523/121 278/524/122 271/507/112 +f 272/516/114 283/525/123 276/517/115 +f 269/515/108 276/517/115 268/526/14 +f 276/517/115 283/525/123 268/526/14 +f 267/513/111 268/526/14 275/523/121 +f 275/523/121 268/526/14 282/527/124 +f 278/528/122 289/529/29 281/530/119 +f 284/531/118 287/532/7 279/533/120 +f 281/530/119 288/534/9 280/519/117 +f 268/535/14 290/536/25 282/537/124 +f 282/537/124 286/538/12 278/528/122 +f 283/539/123 285/540/10 268/535/14 +f 279/541/120 291/542/33 283/539/123 +f 280/519/117 292/543/26 284/531/118 +f 300/544/9 227/545/125 251/480/26 +f 299/485/29 250/546/97 300/544/9 +f 297/487/25 248/471/99 298/483/12 +f 250/468/97 331/547/126 227/548/125 +f 225/475/103 332/549/127 226/467/96 +f 226/467/96 338/550/128 331/547/126 +f 329/473/101 335/551/129 223/476/104 +f 224/470/53 333/552/130 225/475/103 +f 329/473/101 337/553/131 336/554/132 +f 224/470/53 335/551/129 334/555/133 +f 227/548/125 331/547/126 228/556/57 +f 331/547/126 338/550/128 228/556/57 +f 229/472/100 228/557/57 330/558/134 +f 330/558/134 228/557/57 337/553/131 +f 228/559/57 345/560/15 337/561/131 +f 332/562/127 346/563/13 338/564/128 +f 338/564/128 339/565/8 228/566/57 +f 336/567/132 343/568/14 335/569/129 +f 334/555/133 341/570/16 333/571/130 +f 337/561/131 344/572/10 336/567/132 +f 335/569/129 342/573/11 334/555/133 +f 333/571/130 340/574/9 332/562/127 +f 350/575/25 357/576/99 349/577/12 +f 348/578/29 355/579/97 347/580/9 +f 347/580/9 362/581/125 354/582/26 +f 353/583/7 360/584/100 352/585/33 +f 351/586/10 358/587/98 350/575/25 +f 349/577/12 356/588/95 348/578/29 +f 354/582/26 361/589/57 353/590/7 +f 352/585/33 359/591/102 351/586/10 +f 359/592/102 366/593/104 358/594/98 +f 357/576/99 364/595/103 356/596/95 +f 359/592/102 368/597/134 367/598/101 +f 357/576/99 366/593/104 365/599/53 +f 356/596/95 363/600/96 355/601/97 +f 355/601/97 369/602/126 362/603/125 +f 363/600/96 371/604/130 370/605/127 +f 363/600/96 376/606/128 369/602/126 +f 367/598/101 373/607/129 366/593/104 +f 365/599/53 371/604/130 364/595/103 +f 367/598/101 375/608/131 374/609/132 +f 365/599/53 373/607/129 372/610/133 +f 362/603/125 369/602/126 361/611/57 +f 369/602/126 376/606/128 361/611/57 +f 360/612/100 361/613/57 368/597/134 +f 368/597/134 361/613/57 375/608/131 +f 361/614/57 383/615/15 375/616/131 +f 370/617/127 384/618/13 376/619/128 +f 376/619/128 377/620/8 361/621/57 +f 374/622/132 381/623/14 373/624/129 +f 372/610/133 379/625/16 371/626/130 +f 375/616/131 382/627/10 374/622/132 +f 373/624/129 380/628/11 372/610/133 +f 371/626/130 378/629/9 370/617/127 +f 388/630/42 395/631/135 387/632/12 +f 386/633/53 393/634/136 385/635/11 +f 385/635/11 400/636/137 392/637/37 +f 391/638/7 398/639/138 390/640/57 +f 389/641/8 396/642/139 388/630/42 +f 387/632/12 394/643/140 386/633/53 +f 392/637/37 399/644/26 391/645/7 +f 390/640/57 397/646/141 389/641/8 +f 396/647/139 405/648/142 404/649/143 +f 395/631/135 402/650/144 394/651/140 +f 398/652/138 405/648/142 397/653/141 +f 396/647/139 403/654/25 395/631/135 +f 394/651/140 401/655/145 393/656/136 +f 393/656/136 407/657/146 400/658/137 +f 402/650/144 408/659/147 401/655/145 +f 401/655/145 414/660/148 407/657/146 +f 405/648/142 411/661/149 404/649/143 +f 403/654/25 409/662/150 402/650/144 +f 405/648/142 413/663/151 412/664/152 +f 404/649/143 410/665/153 403/654/25 +f 400/658/137 407/657/146 399/666/26 +f 407/657/146 414/660/148 399/666/26 +f 398/652/138 399/667/26 406/668/154 +f 406/668/154 399/667/26 413/663/151 +f 399/669/26 421/670/13 413/671/151 +f 408/672/147 422/673/16 414/674/148 +f 414/674/148 415/675/9 399/676/26 +f 412/677/152 419/678/15 411/679/149 +f 410/665/153 417/680/14 409/681/150 +f 413/671/151 420/682/8 412/677/152 +f 411/679/149 418/683/10 410/665/153 +f 409/681/150 416/684/11 408/672/147 +f 426/685/42 433/686/135 425/687/12 +f 424/688/53 431/689/136 423/690/11 +f 423/690/11 438/691/137 430/692/37 +f 429/693/7 436/694/138 428/695/57 +f 427/696/8 434/697/139 426/685/42 +f 425/687/12 432/698/140 424/688/53 +f 430/692/37 437/699/26 429/700/7 +f 428/695/57 435/701/141 427/696/8 +f 434/702/139 443/703/142 442/704/143 +f 433/686/135 440/705/144 432/706/140 +f 435/707/141 444/708/154 443/703/142 +f 433/686/135 442/704/143 441/709/25 +f 431/710/136 440/705/144 439/711/145 +f 431/710/136 445/712/146 438/713/137 +f 439/711/145 447/714/150 446/715/147 +f 439/711/145 452/716/148 445/712/146 +f 443/703/142 449/717/149 442/704/143 +f 441/709/25 447/714/150 440/705/144 +f 443/703/142 451/718/151 450/719/152 +f 441/709/25 449/717/149 448/720/153 +f 438/713/137 445/712/146 437/721/26 +f 445/712/146 452/716/148 437/721/26 +f 436/722/138 437/723/26 444/708/154 +f 444/708/154 437/723/26 451/718/151 +f 437/724/26 459/725/13 451/726/151 +f 446/727/147 460/728/16 452/729/148 +f 452/729/148 453/730/9 437/731/26 +f 450/732/152 457/733/15 449/734/149 +f 448/720/153 455/735/14 447/736/150 +f 451/726/151 458/737/8 450/732/152 +f 449/734/149 456/738/10 448/720/153 +f 447/736/150 454/739/11 446/727/147 +f 471/740/60 464/741/65 472/742/55 +f 470/743/54 461/744/63 462/745/29 +f 467/746/58 481/747/62 468/748/61 +f 470/743/54 463/749/64 471/740/60 +f 469/750/59 481/747/62 461/744/63 +f 475/751/37 468/752/61 476/753/11 +f 473/754/57 466/755/33 474/756/7 +f 478/757/12 471/758/60 479/759/42 +f 476/753/11 469/760/59 477/761/53 +f 474/762/7 467/763/58 475/751/37 +f 480/764/8 465/765/56 473/754/57 +f 479/759/42 472/766/55 480/764/8 +f 477/761/53 470/743/54 478/757/12 +f 472/742/55 483/767/66 465/768/56 +f 464/741/65 485/769/67 484/770/68 +f 483/767/66 484/770/68 490/771/69 +f 481/747/62 487/772/70 461/744/63 +f 463/749/64 486/773/71 485/769/67 +f 482/774/72 488/775/73 481/747/62 +f 462/745/29 487/772/70 486/773/71 +f 465/768/56 483/767/66 466/776/33 +f 483/767/66 490/771/69 466/776/33 +f 467/746/58 466/777/33 482/774/72 +f 482/774/72 466/777/33 489/778/74 +f 466/779/33 497/780/14 489/781/74 +f 484/782/68 498/783/15 490/784/69 +f 490/784/69 491/785/10 466/786/33 +f 488/787/73 495/788/16 487/789/70 +f 486/773/71 493/790/13 485/791/67 +f 489/781/74 496/792/11 488/787/73 +f 487/789/70 494/793/9 486/773/71 +f 485/791/67 492/794/8 484/782/68 +f 502/795/53 509/796/54 501/797/12 +f 500/798/42 507/799/55 499/800/8 +f 499/800/8 514/801/56 506/802/57 +f 505/803/7 512/804/58 504/805/37 +f 503/806/11 510/807/59 502/795/53 +f 501/797/12 508/808/60 500/798/42 +f 506/802/57 513/809/33 505/810/7 +f 504/805/37 511/811/61 503/806/11 +f 511/812/61 518/813/63 510/814/59 +f 509/796/54 516/815/64 508/816/60 +f 511/812/61 520/817/72 519/818/62 +f 509/796/54 518/813/63 517/819/29 +f 508/816/60 515/820/65 507/821/55 +f 507/821/55 521/822/66 514/823/56 +f 516/815/64 522/824/68 515/820/65 +f 521/822/66 522/824/68 528/825/69 +f 519/818/62 525/826/70 518/813/63 +f 516/815/64 524/827/71 523/828/67 +f 520/817/72 526/829/73 519/818/62 +f 517/819/29 525/826/70 524/827/71 +f 514/823/56 521/822/66 513/830/33 +f 521/822/66 528/825/69 513/830/33 +f 512/831/58 513/832/33 520/817/72 +f 520/817/72 513/832/33 527/833/74 +f 513/834/33 535/835/14 527/836/74 +f 522/837/68 536/838/15 528/839/69 +f 528/839/69 529/840/10 513/841/33 +f 526/842/73 533/843/16 525/844/70 +f 524/827/71 531/845/13 523/846/67 +f 527/836/74 534/847/11 526/842/73 +f 525/844/70 532/848/9 524/827/71 +f 523/846/67 530/849/8 522/837/68 +f 66/244/29 74/256/35 73/245/30 +f 64/247/25 72/257/36 71/248/31 +f 63/249/10 71/248/31 78/250/32 +f 69/252/7 77/850/37 76/253/34 +f 67/255/9 75/260/38 74/256/35 +f 65/246/12 73/245/30 72/257/36 +f 70/251/33 78/250/32 77/258/37 +f 68/254/26 76/253/34 75/260/38 +f 74/261/35 75/267/38 83/262/39 +f 73/245/30 81/268/42 80/264/41 +f 76/266/34 84/282/52 83/262/39 +f 74/261/35 82/263/40 81/268/42 +f 72/265/36 80/264/41 79/269/43 +f 71/270/31 79/269/43 85/271/44 +f 80/264/41 87/276/48 86/273/45 +f 79/269/43 86/273/45 92/274/46 +f 83/262/39 90/278/50 89/275/47 +f 81/268/42 88/279/51 87/276/48 +f 83/262/39 84/282/52 91/277/49 +f 81/268/42 82/263/40 89/275/47 +f 77/283/37 93/851/11 99/284/16 +f 86/286/45 94/298/10 100/287/14 +f 92/288/46 100/287/14 93/289/11 +f 90/291/50 98/296/9 97/292/13 +f 88/279/51 96/297/8 95/294/15 +f 91/285/49 99/284/16 98/296/9 +f 89/293/47 97/292/13 96/297/8 +f 87/295/48 95/294/15 94/298/10 +f 104/299/29 112/311/35 111/300/30 +f 102/302/25 110/312/36 109/303/31 +f 101/304/10 109/303/31 116/305/32 +f 107/307/7 115/852/37 114/308/34 +f 105/310/9 113/315/38 112/311/35 +f 103/301/12 111/300/30 110/312/36 +f 108/306/33 116/305/32 115/313/37 +f 106/309/26 114/308/34 113/315/38 +f 112/316/35 113/321/38 121/317/39 +f 111/300/30 119/323/42 118/319/41 +f 113/321/38 114/336/34 122/322/52 +f 111/300/30 112/316/35 120/318/40 +f 110/320/36 118/319/41 117/324/43 +f 109/325/31 117/324/43 123/326/44 +f 118/319/41 125/333/48 124/328/45 +f 117/324/43 124/328/45 130/329/46 +f 120/318/40 121/317/39 128/330/50 +f 118/319/41 119/323/42 126/332/51 +f 121/317/39 122/322/52 129/334/49 +f 120/318/40 127/331/47 126/332/51 +f 115/338/37 131/853/11 137/339/16 +f 124/341/45 132/353/10 138/342/14 +f 130/343/46 138/342/14 131/344/11 +f 128/346/50 136/351/9 135/347/13 +f 126/332/51 134/352/8 133/349/15 +f 129/340/49 137/339/16 136/351/9 +f 127/348/47 135/347/13 134/352/8 +f 125/350/48 133/349/15 132/353/10 +f 142/354/53 150/366/59 149/355/54 +f 140/357/42 148/367/60 147/358/55 +f 139/359/8 147/358/55 154/360/56 +f 145/362/7 153/854/33 152/363/58 +f 143/365/11 151/370/61 150/366/59 +f 140/357/42 141/356/12 149/355/54 +f 146/361/57 154/360/56 153/368/33 +f 144/364/37 152/363/58 151/370/61 +f 150/371/59 151/377/61 159/372/62 +f 149/355/54 157/378/29 156/374/64 +f 152/376/58 160/388/72 159/372/62 +f 149/355/54 150/371/59 158/373/63 +f 148/375/60 156/374/64 155/379/65 +f 154/381/56 147/380/55 155/379/65 +f 155/379/65 156/374/64 163/383/67 +f 161/382/66 155/379/65 162/384/68 +f 159/372/62 166/389/73 165/386/70 +f 156/374/64 157/378/29 164/387/71 +f 160/388/72 167/392/74 166/389/73 +f 157/378/29 158/373/63 165/386/70 +f 153/393/33 169/415/77 175/394/75 +f 162/396/68 170/408/81 176/397/76 +f 168/398/69 176/397/76 169/399/77 +f 166/401/73 174/406/80 173/402/78 +f 164/387/71 172/407/29 171/404/79 +f 167/395/74 175/394/75 174/406/80 +f 165/403/70 173/402/78 172/407/29 +f 163/405/67 171/404/79 170/408/81 +f 174/409/80 175/416/75 182/410/82 +f 171/412/79 179/431/94 178/413/84 +f 169/415/77 177/428/33 182/410/82 +f 170/414/81 178/413/84 183/417/85 +f 173/419/78 174/409/80 181/411/83 +f 176/418/76 183/417/85 177/421/33 +f 177/421/33 183/417/85 190/422/87 +f 181/411/83 182/410/82 189/424/89 +f 178/413/84 179/431/94 186/426/91 +f 177/428/33 184/501/88 189/424/89 +f 178/413/84 185/427/92 190/422/87 +f 181/411/83 188/425/90 187/429/93 +f 194/432/53 202/444/53 201/433/12 +f 192/435/42 200/445/42 199/436/8 +f 191/437/8 199/436/8 206/438/57 +f 197/440/7 205/855/7 204/441/37 +f 195/443/11 203/448/11 202/444/53 +f 192/435/42 193/434/12 201/433/12 +f 198/439/57 206/438/57 205/446/7 +f 196/442/37 204/441/37 203/448/11 +f 210/449/53 218/461/53 217/450/12 +f 208/452/42 216/462/42 215/453/8 +f 207/454/8 215/453/8 222/455/57 +f 213/457/7 221/856/7 220/458/37 +f 211/460/11 219/465/11 218/461/53 +f 208/452/42 209/451/12 217/450/12 +f 214/456/57 222/455/57 221/463/7 +f 212/459/37 220/458/37 219/465/11 +f 249/466/95 225/475/103 226/467/96 +f 247/469/98 223/476/104 224/470/53 +f 229/472/100 330/558/134 329/473/101 +f 248/471/99 224/470/53 225/475/103 +f 247/469/98 230/474/102 329/473/101 +f 253/477/33 229/489/100 230/478/102 +f 251/480/26 227/545/125 228/481/57 +f 298/483/12 248/471/99 249/484/95 +f 254/479/10 230/478/102 247/486/98 +f 252/488/7 228/857/57 229/489/100 +f 190/490/87 270/504/110 264/491/105 +f 189/492/89 269/502/108 268/493/14 +f 186/495/91 266/503/109 265/496/106 +f 187/498/93 267/505/111 263/499/107 +f 184/501/88 264/858/105 269/502/108 +f 172/500/29 263/499/107 266/503/109 +f 185/497/92 265/496/106 270/504/110 +f 188/494/90 268/493/14 267/505/111 +f 266/506/109 263/514/107 271/507/112 +f 270/509/110 277/518/116 272/510/114 +f 266/506/109 274/508/113 273/512/13 +f 267/513/111 275/523/121 271/507/112 +f 269/515/108 264/859/105 272/516/114 +f 270/509/110 265/496/106 273/512/13 +f 277/518/116 273/512/13 280/519/117 +f 271/507/112 278/524/122 281/521/119 +f 272/510/114 277/518/116 284/520/118 +f 274/508/113 281/521/119 280/519/117 +f 275/523/121 282/527/124 278/524/122 +f 272/516/114 279/860/120 283/525/123 +f 278/528/122 286/538/12 289/529/29 +f 284/531/118 292/543/26 287/532/7 +f 281/530/119 289/529/29 288/534/9 +f 268/535/14 285/540/10 290/536/25 +f 282/537/124 290/536/25 286/538/12 +f 283/539/123 291/542/33 285/540/10 +f 279/541/120 287/861/7 291/542/33 +f 280/519/117 288/534/9 292/543/26 +f 300/544/9 250/546/97 227/545/125 +f 299/485/29 249/484/95 250/546/97 +f 297/487/25 247/486/98 248/471/99 +f 250/468/97 226/467/96 331/547/126 +f 225/475/103 333/552/130 332/549/127 +f 226/467/96 332/549/127 338/550/128 +f 329/473/101 336/554/132 335/551/129 +f 224/470/53 334/555/133 333/552/130 +f 329/473/101 330/558/134 337/553/131 +f 224/470/53 223/476/104 335/551/129 +f 228/559/57 339/862/8 345/560/15 +f 332/562/127 340/574/9 346/563/13 +f 338/564/128 346/563/13 339/565/8 +f 336/567/132 344/572/10 343/568/14 +f 334/555/133 342/573/11 341/570/16 +f 337/561/131 345/560/15 344/572/10 +f 335/569/129 343/568/14 342/573/11 +f 333/571/130 341/570/16 340/574/9 +f 350/575/25 358/587/98 357/576/99 +f 348/578/29 356/588/95 355/579/97 +f 347/580/9 355/579/97 362/581/125 +f 353/583/7 361/863/57 360/584/100 +f 351/586/10 359/591/102 358/587/98 +f 349/577/12 357/576/99 356/588/95 +f 354/582/26 362/581/125 361/589/57 +f 352/585/33 360/584/100 359/591/102 +f 359/592/102 367/598/101 366/593/104 +f 357/576/99 365/599/53 364/595/103 +f 359/592/102 360/612/100 368/597/134 +f 357/576/99 358/594/98 366/593/104 +f 356/596/95 364/595/103 363/600/96 +f 355/601/97 363/600/96 369/602/126 +f 363/600/96 364/595/103 371/604/130 +f 363/600/96 370/605/127 376/606/128 +f 367/598/101 374/609/132 373/607/129 +f 365/599/53 372/610/133 371/604/130 +f 367/598/101 368/597/134 375/608/131 +f 365/599/53 366/593/104 373/607/129 +f 361/614/57 377/864/8 383/615/15 +f 370/617/127 378/629/9 384/618/13 +f 376/619/128 384/618/13 377/620/8 +f 374/622/132 382/627/10 381/623/14 +f 372/610/133 380/628/11 379/625/16 +f 375/616/131 383/615/15 382/627/10 +f 373/624/129 381/623/14 380/628/11 +f 371/626/130 379/625/16 378/629/9 +f 388/630/42 396/642/139 395/631/135 +f 386/633/53 394/643/140 393/634/136 +f 385/635/11 393/634/136 400/636/137 +f 391/638/7 399/865/26 398/639/138 +f 389/641/8 397/646/141 396/642/139 +f 387/632/12 395/631/135 394/643/140 +f 392/637/37 400/636/137 399/644/26 +f 390/640/57 398/639/138 397/646/141 +f 396/647/139 397/653/141 405/648/142 +f 395/631/135 403/654/25 402/650/144 +f 398/652/138 406/668/154 405/648/142 +f 396/647/139 404/649/143 403/654/25 +f 394/651/140 402/650/144 401/655/145 +f 393/656/136 401/655/145 407/657/146 +f 402/650/144 409/662/150 408/659/147 +f 401/655/145 408/659/147 414/660/148 +f 405/648/142 412/664/152 411/661/149 +f 403/654/25 410/665/153 409/662/150 +f 405/648/142 406/668/154 413/663/151 +f 404/649/143 411/661/149 410/665/153 +f 399/669/26 415/866/9 421/670/13 +f 408/672/147 416/684/11 422/673/16 +f 414/674/148 422/673/16 415/675/9 +f 412/677/152 420/682/8 419/678/15 +f 410/665/153 418/683/10 417/680/14 +f 413/671/151 421/670/13 420/682/8 +f 411/679/149 419/678/15 418/683/10 +f 409/681/150 417/680/14 416/684/11 +f 426/685/42 434/697/139 433/686/135 +f 424/688/53 432/698/140 431/689/136 +f 423/690/11 431/689/136 438/691/137 +f 429/693/7 437/867/26 436/694/138 +f 427/696/8 435/701/141 434/697/139 +f 425/687/12 433/686/135 432/698/140 +f 430/692/37 438/691/137 437/699/26 +f 428/695/57 436/694/138 435/701/141 +f 434/702/139 435/707/141 443/703/142 +f 433/686/135 441/709/25 440/705/144 +f 435/707/141 436/722/138 444/708/154 +f 433/686/135 434/702/139 442/704/143 +f 431/710/136 432/706/140 440/705/144 +f 431/710/136 439/711/145 445/712/146 +f 439/711/145 440/705/144 447/714/150 +f 439/711/145 446/715/147 452/716/148 +f 443/703/142 450/719/152 449/717/149 +f 441/709/25 448/720/153 447/714/150 +f 443/703/142 444/708/154 451/718/151 +f 441/709/25 442/704/143 449/717/149 +f 437/724/26 453/868/9 459/725/13 +f 446/727/147 454/739/11 460/728/16 +f 452/729/148 460/728/16 453/730/9 +f 450/732/152 458/737/8 457/733/15 +f 448/720/153 456/738/10 455/735/14 +f 451/726/151 459/725/13 458/737/8 +f 449/734/149 457/733/15 456/738/10 +f 447/736/150 455/735/14 454/739/11 +f 471/740/60 463/749/64 464/741/65 +f 470/743/54 469/750/59 461/744/63 +f 467/746/58 482/774/72 481/747/62 +f 470/743/54 462/745/29 463/749/64 +f 469/750/59 468/748/61 481/747/62 +f 475/751/37 467/763/58 468/752/61 +f 473/754/57 465/765/56 466/755/33 +f 478/757/12 470/743/54 471/758/60 +f 476/753/11 468/752/61 469/760/59 +f 474/762/7 466/869/33 467/763/58 +f 480/764/8 472/766/55 465/765/56 +f 479/759/42 471/758/60 472/766/55 +f 477/761/53 469/760/59 470/743/54 +f 472/742/55 464/741/65 483/767/66 +f 464/741/65 463/749/64 485/769/67 +f 483/767/66 464/741/65 484/770/68 +f 481/747/62 488/775/73 487/772/70 +f 463/749/64 462/745/29 486/773/71 +f 482/774/72 489/778/74 488/775/73 +f 462/745/29 461/744/63 487/772/70 +f 466/779/33 491/870/10 497/780/14 +f 484/782/68 492/794/8 498/783/15 +f 490/784/69 498/783/15 491/785/10 +f 488/787/73 496/792/11 495/788/16 +f 486/773/71 494/793/9 493/790/13 +f 489/781/74 497/780/14 496/792/11 +f 487/789/70 495/788/16 494/793/9 +f 485/791/67 493/790/13 492/794/8 +f 502/795/53 510/807/59 509/796/54 +f 500/798/42 508/808/60 507/799/55 +f 499/800/8 507/799/55 514/801/56 +f 505/803/7 513/871/33 512/804/58 +f 503/806/11 511/811/61 510/807/59 +f 501/797/12 509/796/54 508/808/60 +f 506/802/57 514/801/56 513/809/33 +f 504/805/37 512/804/58 511/811/61 +f 511/812/61 519/818/62 518/813/63 +f 509/796/54 517/819/29 516/815/64 +f 511/812/61 512/831/58 520/817/72 +f 509/796/54 510/814/59 518/813/63 +f 508/816/60 516/815/64 515/820/65 +f 507/821/55 515/820/65 521/822/66 +f 516/815/64 523/828/67 522/824/68 +f 521/822/66 515/820/65 522/824/68 +f 519/818/62 526/829/73 525/826/70 +f 516/815/64 517/819/29 524/827/71 +f 520/817/72 527/833/74 526/829/73 +f 517/819/29 518/813/63 525/826/70 +f 513/834/33 529/872/10 535/835/14 +f 522/837/68 530/849/8 536/838/15 +f 528/839/69 536/838/15 529/840/10 +f 526/842/73 534/847/11 533/843/16 +f 524/827/71 532/848/9 531/845/13 +f 527/836/74 535/835/14 534/847/11 +f 525/844/70 533/843/16 532/848/9 +f 523/846/67 531/845/13 530/849/8 +o Plane +v 4.500000 0.500000 -3.500000 +v 7.500000 0.500000 -3.500000 +v 7.500000 0.000000 -3.500000 +v 4.500000 0.000000 -3.500000 +v 7.500000 0.000000 3.500000 +v 4.500000 0.000000 3.500000 +v 7.500000 0.500000 3.500000 +v 4.500000 0.500000 3.500000 +v 4.750000 1.250000 -3.000000 +v 7.250000 1.250000 -3.000000 +v 4.750000 2.250000 -3.000000 +v 7.250000 2.250000 -3.000000 +v 5.500000 3.000000 -3.000000 +v 5.500000 0.500000 -3.000000 +v 6.500000 3.000000 -3.000000 +v 6.500000 0.500000 -3.000000 +v 4.750000 1.250000 1.000000 +v 7.250000 1.250000 1.000000 +v 4.750000 2.250000 1.000000 +v 7.250000 2.250000 1.000000 +v 5.500000 3.000000 1.000000 +v 5.500000 0.500000 1.000000 +v 6.500000 3.000000 1.000000 +v 6.500000 0.500000 1.000000 +v 4.500000 0.500000 -3.000000 +v 7.500000 0.500000 -3.000000 +v 4.500000 0.500000 -3.500000 +v 7.500000 0.500000 -3.500000 +v 4.500000 2.500000 -3.500000 +v 4.500000 2.500000 -3.000000 +v 7.500000 2.500000 -3.000000 +v 7.500000 2.500000 -3.500000 +v 5.000000 3.000000 -3.500000 +v 5.000000 3.000000 -3.000000 +v 7.000000 3.000000 -3.000000 +v 7.000000 3.000000 -3.500000 +v 4.500000 0.500000 1.500000 +v 7.500000 0.500000 1.500000 +v 4.500000 0.500000 1.000000 +v 7.500000 0.500000 1.000000 +v 4.500000 2.500000 1.000000 +v 4.500000 2.500000 1.500000 +v 7.500000 2.500000 1.500000 +v 7.500000 2.500000 1.000000 +v 5.000000 3.000000 1.000000 +v 5.000000 3.000000 1.500000 +v 7.000000 3.000000 1.500000 +v 7.000000 3.000000 1.000000 +v 4.500000 0.500000 3.000000 +v 7.500000 0.500000 3.000000 +v 4.500000 0.500000 2.500000 +v 7.500000 0.500000 2.500000 +v 4.500000 2.500000 2.500000 +v 4.500000 2.500000 3.000000 +v 7.500000 2.500000 3.000000 +v 7.500000 2.500000 2.500000 +v 5.000000 3.000000 2.500000 +v 5.000000 3.000000 3.000000 +v 7.000000 3.000000 3.000000 +v 7.000000 3.000000 2.500000 +v 7.250000 0.750000 1.750000 +v 7.250000 0.750000 2.250000 +v 7.500000 0.750000 2.250000 +v 7.500000 0.750000 1.750000 +v 4.750000 0.750000 1.750000 +v 4.750000 0.750000 2.250000 +v 4.500000 0.750000 2.250000 +v 4.500000 0.750000 1.750000 +v 4.750000 0.500000 1.750000 +v 4.500000 0.500000 1.750000 +v 4.750000 0.500000 2.250000 +v 4.500000 0.500000 2.250000 +v 6.500000 2.616025 2.500000 +v 6.866026 2.249999 2.500000 +v 7.000000 1.749999 2.500000 +v 6.866025 1.250000 2.500000 +v 6.500000 0.883974 2.500000 +v 6.000000 0.750000 2.500000 +v 5.500000 0.883974 2.500000 +v 5.133975 1.250000 2.500000 +v 5.000000 1.750000 2.500000 +v 5.133975 2.250000 2.500000 +v 5.500000 2.616025 2.500000 +v 6.000000 2.750000 2.500000 +v 6.000000 2.750000 1.500000 +v 5.500000 2.616025 1.500000 +v 5.133975 2.250000 1.500000 +v 5.000000 1.750000 1.500000 +v 5.133975 1.250000 1.500000 +v 5.500000 0.883974 1.500000 +v 6.000000 0.750000 1.500000 +v 6.500000 0.883974 1.500000 +v 6.866025 1.250000 1.500000 +v 7.000000 1.749999 1.500000 +v 6.866026 2.249999 1.500000 +v 6.500000 2.616025 1.500000 +v 7.500000 0.500000 1.750000 +v 7.250000 0.500000 1.750000 +v 7.500000 0.500000 2.250000 +v 7.250000 0.500000 2.250000 +v 4.750000 0.500000 2.187500 +v 4.750000 0.500000 1.812500 +v 4.750000 0.687500 1.812500 +v 4.750000 0.687500 2.187500 +v 5.250000 0.500000 2.187500 +v 5.250000 0.500000 1.812500 +v 5.250000 0.687500 1.812500 +v 5.250000 0.687500 2.187500 +v 6.750000 0.750000 1.750000 +v 6.750000 0.750000 2.250000 +v 6.750000 0.500000 1.750000 +v 6.750000 0.500000 2.250000 +v 5.250000 0.750000 1.750000 +v 5.250000 0.750000 2.250000 +v 5.250000 0.500000 1.750000 +v 5.250000 0.500000 2.250000 +v 7.250000 0.500000 2.187500 +v 7.250000 0.500000 1.812500 +v 7.250000 0.687500 1.812500 +v 7.250000 0.687500 2.187500 +v 6.750000 0.500000 2.187500 +v 6.750000 0.500000 1.812500 +v 6.750000 0.687500 1.812500 +v 6.750000 0.687500 2.187500 +v 6.500000 0.500000 3.500000 +v 7.000000 0.500000 3.500000 +v 6.500000 0.500000 3.000000 +v 7.000000 0.500000 3.000000 +v 6.500000 2.500000 3.000000 +v 6.500000 2.000000 3.500000 +v 7.000000 2.000000 3.500000 +v 7.000000 2.500000 3.000000 +v 5.000000 0.500000 3.500000 +v 5.500000 0.500000 3.500000 +v 5.000000 0.500000 3.000000 +v 5.500000 0.500000 3.000000 +v 5.000000 2.500000 3.000000 +v 5.000000 2.000000 3.500000 +v 5.500000 2.000000 3.500000 +v 5.500000 2.500000 3.000000 +v 5.500000 3.000000 -1.500000 +v 6.500000 3.000000 -1.500000 +v 5.500000 3.000000 -2.500000 +v 6.500000 3.000000 -2.500000 +v 5.500000 4.000000 -2.500000 +v 5.500000 4.000000 -1.500000 +v 6.500000 4.000000 -1.500000 +v 6.500000 4.000000 -2.500000 +v 7.000000 3.000000 -1.500000 +v 6.926776 3.176777 -1.500000 +v 6.750000 3.250000 -1.500000 +v 6.573223 3.176777 -1.500000 +v 6.500000 3.000000 -1.500000 +v 6.573223 2.823223 -1.500000 +v 6.750000 2.750000 -1.500000 +v 6.926776 2.823223 -1.500000 +v 7.000000 3.000000 0.000000 +v 6.926777 3.176777 0.000000 +v 6.750000 3.250000 0.000000 +v 6.573223 3.176777 0.000000 +v 6.500000 3.000000 0.000000 +v 6.573223 2.823223 0.000000 +v 6.750000 2.750000 0.000000 +v 6.926777 2.823223 0.000000 +v 7.000000 2.926777 0.176777 +v 6.926777 3.051777 0.301777 +v 6.750000 3.103553 0.353554 +v 6.573223 3.051777 0.301777 +v 6.500000 2.926777 0.176777 +v 6.573223 2.801776 0.051777 +v 6.926777 2.801776 0.051777 +v 7.000000 2.750000 0.250000 +v 6.926777 2.750000 0.426777 +v 6.750000 2.750000 0.500000 +v 6.573223 2.750000 0.426777 +v 6.500000 2.750000 0.250000 +v 6.573223 2.750000 0.073223 +v 6.926777 2.750000 0.073223 +v 6.750000 2.500000 0.000000 +v 7.000000 2.500000 0.250000 +v 6.926777 2.500000 0.426777 +v 6.750000 2.500000 0.500000 +v 6.573223 2.500000 0.426777 +v 6.500000 2.500000 0.250000 +v 6.573223 2.500000 0.073223 +v 6.926777 2.500000 0.073223 +v 7.000000 3.073223 -1.676777 +v 6.926776 3.198223 -1.551776 +v 6.573223 3.198223 -1.551776 +v 6.500000 3.073223 -1.676777 +v 6.573223 2.948223 -1.801777 +v 6.750000 2.896447 -1.853553 +v 6.926776 2.948223 -1.801777 +v 7.000000 3.250000 -1.750000 +v 6.926776 3.250000 -1.573223 +v 6.573223 3.250000 -1.573223 +v 6.500000 3.250000 -1.750000 +v 6.573223 3.250000 -1.926777 +v 6.750000 3.250000 -2.000000 +v 6.926776 3.250000 -1.926777 +v 6.750000 3.500000 -1.500000 +v 7.000000 3.500000 -1.750000 +v 6.926776 3.500000 -1.573223 +v 6.573223 3.500000 -1.573223 +v 6.500000 3.500000 -1.750000 +v 6.573223 3.500000 -1.926777 +v 6.750000 3.500000 -2.000000 +v 6.926776 3.500000 -1.926777 +v 6.676777 3.676777 -1.500000 +v 6.853553 3.853553 -1.750000 +v 6.801776 3.801776 -1.573223 +v 6.551777 3.551777 -1.573223 +v 6.551777 3.551777 -1.926777 +v 6.676777 3.676777 -2.000000 +v 6.801776 3.801776 -1.926777 +v 6.500000 3.750000 -1.500000 +v 6.500000 4.000000 -1.750000 +v 6.500000 3.926776 -1.573223 +v 6.500000 3.573223 -1.573223 +v 6.500000 3.573223 -1.926777 +v 6.500000 3.750000 -2.000000 +v 6.500000 3.926776 -1.926777 +v 6.750000 2.500000 -2.000000 +v 7.000000 2.500000 -2.250000 +v 6.926776 2.500000 -2.073223 +v 6.573223 2.500000 -2.073223 +v 6.500000 2.500000 -2.250000 +v 6.573223 2.500000 -2.426777 +v 6.750000 2.500000 -2.500000 +v 6.926776 2.500000 -2.426777 +v 6.750000 3.500000 -2.000000 +v 7.000000 3.500000 -2.250000 +v 6.926776 3.500000 -2.073223 +v 6.573223 3.500000 -2.073223 +v 6.500000 3.500000 -2.250000 +v 6.573223 3.500000 -2.426777 +v 6.750000 3.500000 -2.500000 +v 6.926776 3.500000 -2.426777 +v 6.676777 3.676777 -2.000000 +v 6.853553 3.853553 -2.250000 +v 6.801776 3.801776 -2.073223 +v 6.551777 3.551777 -2.073223 +v 6.551777 3.551777 -2.426777 +v 6.676777 3.676777 -2.500000 +v 6.801776 3.801776 -2.426777 +v 6.500000 3.750000 -2.000000 +v 6.500000 4.000000 -2.250000 +v 6.500000 3.926776 -2.073223 +v 6.500000 3.573223 -2.073223 +v 6.500000 3.573223 -2.426777 +v 6.500000 3.750000 -2.500000 +v 6.500000 3.926776 -2.426777 +v 5.000000 3.000000 -1.500000 +v 5.073224 3.176777 -1.500000 +v 5.250000 3.250000 -1.500000 +v 5.426777 3.176777 -1.500000 +v 5.500000 3.000000 -1.500000 +v 5.426777 2.823223 -1.500000 +v 5.250000 2.750000 -1.500000 +v 5.073224 2.823223 -1.500000 +v 5.000000 3.000000 0.000000 +v 5.073223 3.176777 0.000000 +v 5.250000 3.250000 0.000000 +v 5.426777 3.176777 0.000000 +v 5.500000 3.000000 0.000000 +v 5.426777 2.823223 0.000000 +v 5.250000 2.750000 0.000000 +v 5.073223 2.823223 0.000000 +v 5.000000 2.926777 0.176777 +v 5.073223 3.051777 0.301777 +v 5.250000 3.103553 0.353554 +v 5.426777 3.051777 0.301777 +v 5.500000 2.926777 0.176777 +v 5.426777 2.801776 0.051777 +v 5.073223 2.801776 0.051777 +v 5.000000 2.750000 0.250000 +v 5.073223 2.750000 0.426777 +v 5.250000 2.750000 0.500000 +v 5.426777 2.750000 0.426777 +v 5.500000 2.750000 0.250000 +v 5.426777 2.750000 0.073223 +v 5.073223 2.750000 0.073223 +v 5.250000 2.500000 0.000000 +v 5.000000 2.500000 0.250000 +v 5.073223 2.500000 0.426777 +v 5.250000 2.500000 0.500000 +v 5.426777 2.500000 0.426777 +v 5.500000 2.500000 0.250000 +v 5.426777 2.500000 0.073223 +v 5.073223 2.500000 0.073223 +v 5.000000 3.073223 -1.676777 +v 5.073224 3.198223 -1.551776 +v 5.426777 3.198223 -1.551776 +v 5.500000 3.073223 -1.676777 +v 5.426777 2.948223 -1.801777 +v 5.250000 2.896447 -1.853553 +v 5.073224 2.948223 -1.801777 +v 5.000000 3.250000 -1.750000 +v 5.073224 3.250000 -1.573223 +v 5.426777 3.250000 -1.573223 +v 5.500000 3.250000 -1.750000 +v 5.426777 3.250000 -1.926777 +v 5.250000 3.250000 -2.000000 +v 5.073224 3.250000 -1.926777 +v 5.250000 3.500000 -1.500000 +v 5.000000 3.500000 -1.750000 +v 5.073224 3.500000 -1.573223 +v 5.426777 3.500000 -1.573223 +v 5.500000 3.500000 -1.750000 +v 5.426777 3.500000 -1.926777 +v 5.250000 3.500000 -2.000000 +v 5.073224 3.500000 -1.926777 +v 5.323223 3.676777 -1.500000 +v 5.146447 3.853553 -1.750000 +v 5.198224 3.801776 -1.573223 +v 5.448223 3.551777 -1.573223 +v 5.448223 3.551777 -1.926777 +v 5.323223 3.676777 -2.000000 +v 5.198224 3.801776 -1.926777 +v 5.500000 3.750000 -1.500000 +v 5.500000 4.000000 -1.750000 +v 5.500000 3.926776 -1.573223 +v 5.500000 3.573223 -1.573223 +v 5.500000 3.573223 -1.926777 +v 5.500000 3.750000 -2.000000 +v 5.500000 3.926776 -1.926777 +v 5.250000 2.500000 -2.000000 +v 5.000000 2.500000 -2.250000 +v 5.073224 2.500000 -2.073223 +v 5.426777 2.500000 -2.073223 +v 5.500000 2.500000 -2.250000 +v 5.426777 2.500000 -2.426777 +v 5.250000 2.500000 -2.500000 +v 5.073224 2.500000 -2.426777 +v 5.250000 3.500000 -2.000000 +v 5.000000 3.500000 -2.250000 +v 5.073224 3.500000 -2.073223 +v 5.426777 3.500000 -2.073223 +v 5.500000 3.500000 -2.250000 +v 5.426777 3.500000 -2.426777 +v 5.250000 3.500000 -2.500000 +v 5.073224 3.500000 -2.426777 +v 5.323223 3.676777 -2.000000 +v 5.146447 3.853553 -2.250000 +v 5.198224 3.801776 -2.073223 +v 5.448223 3.551777 -2.073223 +v 5.448223 3.551777 -2.426777 +v 5.323223 3.676777 -2.500000 +v 5.198224 3.801776 -2.426777 +v 5.500000 3.750000 -2.000000 +v 5.500000 4.000000 -2.250000 +v 5.500000 3.926776 -2.073223 +v 5.500000 3.573223 -2.073223 +v 5.500000 3.573223 -2.426777 +v 5.500000 3.750000 -2.500000 +v 5.500000 3.926776 -2.426777 +v 5.000000 0.500000 0.250000 +v 7.000000 0.500000 0.250000 +v 5.000000 0.500000 -0.250000 +v 7.000000 0.500000 -0.250000 +v 5.000000 1.000000 -0.250000 +v 5.000000 1.000000 0.250000 +v 7.000000 1.000000 0.250000 +v 7.000000 1.000000 -0.250000 +v 5.000000 0.500000 -1.750000 +v 7.000000 0.500000 -1.750000 +v 5.000000 0.500000 -2.250000 +v 7.000000 0.500000 -2.250000 +v 5.000000 1.000000 -2.250000 +v 5.000000 1.000000 -1.750000 +v 7.000000 1.000000 -1.750000 +v 7.000000 1.000000 -2.250000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vt 0.000000 0.000000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.9659 0.2588 0.0000 +vn -0.2588 -0.9659 0.0000 +vn 0.9659 -0.2588 0.0000 +vn 0.2588 0.9659 0.0000 +vn -0.2588 0.9659 0.0000 +vn -0.9659 -0.2588 0.0000 +vn 0.2588 -0.9659 0.0000 +vn 0.9659 0.2588 0.0000 +vn 0.0000 0.7071 0.7071 +vn -0.7263 0.6737 0.1363 +vn 0.0000 0.9824 0.1866 +vn 0.7263 0.6737 0.1363 +vn 0.9987 0.0473 0.0196 +vn 0.9987 -0.0473 -0.0196 +vn 0.7263 -0.6737 -0.1363 +vn 0.6794 -0.7194 -0.1447 +vn 0.0000 -0.9824 -0.1866 +vn -0.7263 -0.6737 -0.1363 +vn -0.6794 -0.7194 -0.1447 +vn -0.9987 -0.0473 -0.0196 +vn -0.6794 0.7194 0.1447 +vn 0.6794 0.7194 0.1447 +vn 0.0000 -0.7071 -0.7071 +vn -0.9987 0.0473 0.0196 +vn -0.9955 0.0670 0.0670 +vn -0.6630 0.5293 0.5293 +vn 0.6630 0.5293 0.5293 +vn 0.9955 0.0670 0.0670 +vn 0.7573 -0.4617 -0.4617 +vn 0.9987 0.0196 0.0473 +vn 0.7263 -0.1363 -0.6737 +vn -0.9987 0.0196 0.0473 +vn -0.6794 0.1447 0.7194 +vn 0.6794 0.1447 0.7194 +vn -0.7573 -0.4617 -0.4617 +vn 0.0000 0.1866 0.9824 +vn -0.7263 -0.1363 -0.6737 +vn -0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 -0.7071 +vn -0.7071 0.0000 0.7071 +vn 0.7071 0.0000 0.7071 +vn 0.6630 -0.5293 -0.5293 +vn -0.6630 -0.5293 -0.5293 +vn 0.9955 -0.0670 -0.0670 +vn 0.7573 0.4617 0.4617 +vn -0.7573 0.4617 0.4617 +vn -0.9955 -0.0670 -0.0670 +vn 0.6794 -0.1447 -0.7194 +vn -0.6794 -0.1447 -0.7194 +vn 0.9987 -0.0196 -0.0473 +vn 0.7263 0.1363 0.6737 +vn 0.0000 -0.1866 -0.9824 +vn -0.7263 0.1363 0.6737 +vn -0.9987 -0.0196 -0.0473 +vn 0.7194 0.1447 -0.6794 +vn -0.6737 -0.1363 -0.7263 +vn 0.7194 0.1447 0.6794 +vn 0.0473 0.0196 0.9987 +vn 0.9824 0.1866 0.0000 +vn -0.6737 -0.1363 0.7263 +vn 0.0473 0.0196 -0.9987 +vn -0.9809 -0.1944 0.0000 +vn 0.5293 0.5293 0.6630 +vn 0.0670 0.0670 0.9955 +vn -0.4617 -0.4617 -0.7573 +vn 0.0670 0.0670 -0.9955 +vn -0.4617 -0.4617 0.7573 +vn 0.5293 0.5293 -0.6630 +vn -0.2611 -0.6303 0.7311 +vn 0.0392 0.0948 -0.9947 +vn 0.2962 0.7150 -0.6332 +vn 0.3827 0.9239 0.0000 +vn 0.2962 0.7150 0.6332 +vn 0.0392 0.0948 0.9947 +vn -0.2611 -0.6303 -0.7311 +vn -0.7194 0.1447 -0.6794 +vn 0.6737 -0.1363 -0.7263 +vn -0.7194 0.1447 0.6794 +vn -0.0473 0.0196 0.9987 +vn -0.9824 0.1866 0.0000 +vn 0.6737 -0.1363 0.7263 +vn -0.0473 0.0196 -0.9987 +vn 0.9809 -0.1944 0.0000 +vn -0.0670 0.0670 0.9955 +vn 0.4617 -0.4617 -0.7573 +vn 0.4617 -0.4617 0.7573 +vn -0.0670 0.0670 -0.9955 +vn 0.2611 -0.6303 0.7311 +vn -0.5293 0.5293 -0.6630 +vn -0.0392 0.0948 -0.9947 +vn -0.5293 0.5293 0.6630 +vn -0.3827 0.9239 0.0000 +vn -0.0392 0.0948 0.9947 +vn 0.2611 -0.6303 -0.7311 +vn -0.2962 0.7150 0.6332 +vn -0.2962 0.7150 -0.6332 +s off +f 577/873/155 579/874/155 580/875/155 +f 578/876/156 581/877/156 579/874/156 +f 583/878/157 582/879/157 581/877/157 +f 584/880/158 580/875/158 582/879/158 +f 583/878/159 577/873/159 584/880/159 +f 580/875/160 581/877/160 582/879/160 +f 613/881/158 617/882/158 615/883/158 +f 617/882/155 624/884/155 620/885/155 +f 596/886/156 586/887/156 588/888/156 +f 593/889/158 587/890/158 585/891/158 +f 598/892/161 585/891/161 590/893/161 +f 595/894/162 589/895/162 587/890/162 +f 597/896/159 591/897/159 589/895/159 +f 944/898/156 947/899/156 942/900/156 +f 599/901/163 588/888/163 591/897/163 +f 594/902/164 592/903/164 586/887/164 +f 615/883/155 620/885/155 616/904/155 +f 605/905/155 612/906/155 608/907/155 +f 601/908/158 605/905/158 603/909/158 +f 603/909/155 608/907/155 604/910/155 +f 602/911/157 606/912/157 601/908/157 +f 604/910/156 607/913/156 602/911/156 +f 611/914/159 609/915/159 610/916/159 +f 607/913/157 610/916/157 606/912/157 +f 608/907/163 611/914/163 607/913/163 +f 606/912/162 609/915/162 605/905/162 +f 614/917/157 618/918/157 613/881/157 +f 616/904/156 619/919/156 614/917/156 +f 623/920/159 621/921/159 622/922/159 +f 619/919/157 622/922/157 618/918/157 +f 620/885/163 623/920/163 619/919/163 +f 618/918/162 621/921/162 617/882/162 +f 625/923/158 629/924/158 627/925/158 +f 629/924/155 636/926/155 632/927/155 +f 627/925/155 632/927/155 628/928/155 +f 626/929/157 630/930/157 625/923/157 +f 628/928/156 631/931/156 626/929/156 +f 635/932/159 633/933/159 634/934/159 +f 631/931/157 634/934/157 630/930/157 +f 632/927/163 635/932/163 631/931/163 +f 630/930/162 633/933/162 629/924/162 +f 664/935/165 658/936/165 663/937/165 +f 667/938/166 655/939/166 666/940/166 +f 670/941/167 652/942/167 669/943/167 +f 663/937/162 659/944/162 662/945/162 +f 661/946/168 649/947/168 672/948/168 +f 666/940/161 656/949/161 665/950/161 +f 669/943/164 653/951/164 668/952/164 +f 662/945/169 660/953/169 661/946/169 +f 672/948/163 650/954/163 671/955/163 +f 665/950/170 657/956/170 664/935/170 +f 668/952/171 654/957/171 667/938/171 +f 671/955/172 651/958/172 670/941/172 +f 642/959/159 644/960/159 643/961/159 +f 646/962/155 641/963/155 645/964/155 +f 647/965/157 643/961/157 648/966/157 +f 679/967/156 645/964/156 641/963/156 +f 648/966/158 644/960/158 646/962/158 +f 639/968/159 637/969/159 638/970/159 +f 674/971/155 640/972/155 673/973/155 +f 675/974/157 638/970/157 676/975/157 +f 673/973/156 639/968/156 675/974/156 +f 637/969/158 696/976/158 638/970/158 +f 681/977/157 680/978/157 677/979/157 +f 683/980/155 678/981/155 679/967/155 +f 684/982/159 679/967/159 680/978/159 +f 685/983/159 690/984/159 686/985/159 +f 687/986/155 689/987/155 685/983/155 +f 686/985/157 692/988/157 688/989/157 +f 690/984/158 683/980/158 684/982/158 +f 692/988/158 684/982/158 681/977/158 +f 683/980/158 691/990/158 682/991/158 +f 680/978/156 641/963/156 642/959/156 +f 647/965/156 680/978/156 642/959/156 +f 695/992/158 674/971/158 694/993/158 +f 676/975/158 696/976/158 693/994/158 +f 696/976/157 697/995/157 693/994/157 +f 694/993/155 699/996/155 695/992/155 +f 695/992/159 700/997/159 696/976/159 +f 700/997/156 685/983/156 686/985/156 +f 699/996/156 687/986/156 685/983/156 +f 688/989/156 700/997/156 686/985/156 +f 712/998/156 715/999/156 710/1000/156 +f 707/1001/173 705/1002/173 706/1003/173 +f 704/1004/156 707/1001/156 702/1005/156 +f 703/1006/158 706/1003/158 705/1002/158 +f 715/999/173 713/1007/173 714/1008/173 +f 702/1005/157 706/1003/157 701/1009/157 +f 711/1010/158 714/1008/158 713/1007/158 +f 710/1000/157 714/1008/157 709/1011/157 +f 723/1012/159 721/1013/159 722/1014/159 +f 720/1015/156 723/1012/156 718/1016/156 +f 717/1017/158 721/1013/158 719/1018/158 +f 719/1018/155 724/1019/155 720/1015/155 +f 718/1016/157 722/1014/157 717/1017/157 +f 942/900/157 946/1020/157 941/1021/157 +f 943/1022/155 948/1023/155 944/898/155 +f 935/1024/155 940/1025/155 936/1026/155 +f 934/1027/157 938/1028/157 933/1029/157 +f 936/1026/156 939/1030/156 934/1027/156 +f 933/1029/158 937/1031/158 935/1024/158 +f 941/1021/158 945/1032/158 943/1022/158 +f 577/873/155 578/876/155 579/874/155 +f 578/876/156 583/878/156 581/877/156 +f 583/878/157 584/880/157 582/879/157 +f 584/880/158 577/873/158 580/875/158 +f 583/878/159 578/876/159 577/873/159 +f 580/875/160 579/874/160 581/877/160 +f 613/881/158 618/918/158 617/882/158 +f 617/882/155 621/921/155 624/884/155 +f 596/886/156 594/902/156 586/887/156 +f 593/889/158 595/894/158 587/890/158 +f 598/892/161 593/889/161 585/891/161 +f 595/894/162 597/896/162 589/895/162 +f 597/896/159 599/901/159 591/897/159 +f 944/898/156 948/1023/156 947/899/156 +f 599/901/163 596/886/163 588/888/163 +f 594/902/164 600/1033/164 592/903/164 +f 615/883/155 617/882/155 620/885/155 +f 605/905/155 609/915/155 612/906/155 +f 601/908/158 606/912/158 605/905/158 +f 603/909/155 605/905/155 608/907/155 +f 602/911/157 607/913/157 606/912/157 +f 604/910/156 608/907/156 607/913/156 +f 611/914/159 612/906/159 609/915/159 +f 607/913/157 611/914/157 610/916/157 +f 608/907/163 612/906/163 611/914/163 +f 606/912/162 610/916/162 609/915/162 +f 614/917/157 619/919/157 618/918/157 +f 616/904/156 620/885/156 619/919/156 +f 623/920/159 624/884/159 621/921/159 +f 619/919/157 623/920/157 622/922/157 +f 620/885/163 624/884/163 623/920/163 +f 618/918/162 622/922/162 621/921/162 +f 625/923/158 630/930/158 629/924/158 +f 629/924/155 633/933/155 636/926/155 +f 627/925/155 629/924/155 632/927/155 +f 626/929/157 631/931/157 630/930/157 +f 628/928/156 632/927/156 631/931/156 +f 635/932/159 636/926/159 633/933/159 +f 631/931/157 635/932/157 634/934/157 +f 632/927/163 636/926/163 635/932/163 +f 630/930/162 634/934/162 633/933/162 +f 664/935/165 657/956/165 658/936/165 +f 667/938/166 654/957/166 655/939/166 +f 670/941/167 651/958/167 652/942/167 +f 663/937/162 658/936/162 659/944/162 +f 661/946/168 660/953/168 649/947/168 +f 666/940/161 655/939/161 656/949/161 +f 669/943/164 652/942/164 653/951/164 +f 662/945/169 659/944/169 660/953/169 +f 672/948/163 649/947/163 650/954/163 +f 665/950/170 656/949/170 657/956/170 +f 668/952/171 653/951/171 654/957/171 +f 671/955/172 650/954/172 651/958/172 +f 642/959/159 641/963/159 644/960/159 +f 646/962/155 644/960/155 641/963/155 +f 647/965/157 642/959/157 643/961/157 +f 679/967/156 678/981/156 645/964/156 +f 648/966/158 643/961/158 644/960/158 +f 639/968/159 640/972/159 637/969/159 +f 674/971/155 637/969/155 640/972/155 +f 675/974/157 639/968/157 638/970/157 +f 673/973/156 640/972/156 639/968/156 +f 637/969/158 695/992/158 696/976/158 +f 681/977/157 684/982/157 680/978/157 +f 683/980/155 682/991/155 678/981/155 +f 684/982/159 683/980/159 679/967/159 +f 685/983/159 689/987/159 690/984/159 +f 687/986/155 691/990/155 689/987/155 +f 686/985/157 690/984/157 692/988/157 +f 690/984/158 689/987/158 683/980/158 +f 692/988/158 690/984/158 684/982/158 +f 683/980/158 689/987/158 691/990/158 +f 680/978/156 679/967/156 641/963/156 +f 647/965/156 677/979/156 680/978/156 +f 695/992/158 637/969/158 674/971/158 +f 676/975/158 638/970/158 696/976/158 +f 696/976/157 700/997/157 697/995/157 +f 694/993/155 698/1034/155 699/996/155 +f 695/992/159 699/996/159 700/997/159 +f 700/997/156 699/996/156 685/983/156 +f 699/996/156 698/1034/156 687/986/156 +f 688/989/156 697/995/156 700/997/156 +f 712/998/156 716/1035/156 715/999/156 +f 707/1001/173 708/1036/173 705/1002/173 +f 704/1004/156 708/1036/156 707/1001/156 +f 703/1006/158 701/1009/158 706/1003/158 +f 715/999/173 716/1035/173 713/1007/173 +f 702/1005/157 707/1001/157 706/1003/157 +f 711/1010/158 709/1011/158 714/1008/158 +f 710/1000/157 715/999/157 714/1008/157 +f 723/1012/159 724/1019/159 721/1013/159 +f 720/1015/156 724/1019/156 723/1012/156 +f 717/1017/158 722/1014/158 721/1013/158 +f 719/1018/155 721/1013/155 724/1019/155 +f 718/1016/157 723/1012/157 722/1014/157 +f 942/900/157 947/899/157 946/1020/157 +f 943/1022/155 945/1032/155 948/1023/155 +f 935/1024/155 937/1031/155 940/1025/155 +f 934/1027/157 939/1030/157 938/1028/157 +f 936/1026/156 940/1025/156 939/1030/156 +f 933/1029/158 938/1028/158 937/1031/158 +f 941/1021/158 946/1020/158 945/1032/158 +s 1 +f 728/1037/174 735/1038/175 727/1039/173 +f 726/1040/176 733/1041/177 725/1042/178 +f 725/1042/178 740/1043/179 732/1044/180 +f 731/1045/181 738/1046/182 730/1047/183 +f 729/1048/184 736/1049/185 728/1037/174 +f 727/1039/173 734/1050/186 726/1040/176 +f 732/1044/180 739/1051/187 731/1045/181 +f 730/1047/183 737/1052/188 729/1048/184 +f 736/1049/185 745/1053/189 744/1054/190 +f 735/1038/175 742/1055/191 734/1050/186 +f 738/1046/182 745/1053/189 737/1052/188 +f 736/1049/185 743/1056/173 735/1038/175 +f 734/1050/186 741/1057/192 733/1041/177 +f 733/1041/177 747/1058/193 740/1043/179 +f 742/1055/191 748/1059/194 741/1057/192 +f 747/1058/193 748/1059/194 754/1060/195 +f 744/1054/190 752/1061/196 751/1062/197 +f 743/1056/173 749/1063/198 742/1055/191 +f 746/1064/199 752/1061/196 745/1053/189 +f 743/1056/173 751/1062/197 750/1065/200 +f 740/1043/179 747/1058/193 739/1051/187 +f 747/1058/193 754/1060/195 739/1051/187 +f 738/1046/182 739/1051/187 746/1064/199 +f 746/1064/199 739/1051/187 753/1066/201 +f 739/1051/187 761/1067/202 753/1066/201 +f 748/1059/194 762/1068/203 754/1060/195 +f 754/1060/195 755/1069/155 739/1051/187 +f 752/1061/196 759/1070/204 751/1062/197 +f 750/1065/200 757/1071/205 749/1063/198 +f 753/1066/201 760/1072/158 752/1061/196 +f 751/1062/197 758/1073/157 750/1065/200 +f 749/1063/198 756/1074/156 748/1059/194 +f 731/1045/181 769/1075/206 732/1044/180 +f 729/1048/184 767/1076/207 730/1047/183 +f 726/1040/176 763/1077/208 764/1078/209 +f 725/1042/178 769/1075/206 763/1077/208 +f 730/1047/183 768/1079/187 731/1045/181 +f 729/1048/184 765/1080/210 766/1081/211 +f 768/1079/187 776/1082/212 769/1075/206 +f 766/1081/211 774/1083/213 767/1076/207 +f 764/1078/209 770/1084/214 771/1085/215 +f 769/1075/206 770/1084/214 763/1077/208 +f 768/1079/187 774/1083/213 775/1086/216 +f 766/1081/211 772/1087/217 773/1088/218 +f 727/1039/173 765/1080/210 728/1037/174 +f 765/1080/210 727/1039/173 772/1087/217 +f 726/1040/176 764/1078/209 727/1039/173 +f 764/1078/209 771/1085/215 727/1039/173 +f 775/1086/216 784/1089/219 776/1082/212 +f 773/1088/218 782/1090/220 774/1083/213 +f 770/1084/214 779/1091/221 771/1085/215 +f 771/1085/215 777/1092/222 727/1039/173 +f 776/1082/212 778/1093/223 770/1084/214 +f 727/1039/173 780/1094/224 772/1087/217 +f 774/1083/213 783/1095/225 775/1086/216 +f 772/1087/217 781/1096/226 773/1088/218 +f 778/1093/223 787/1097/227 779/1091/221 +f 779/1091/221 785/1098/228 777/1092/222 +f 784/1089/219 786/1099/163 778/1093/223 +f 783/1095/225 789/1100/229 790/1101/230 +f 777/1092/222 788/1102/231 780/1094/224 +f 784/1089/219 790/1101/230 791/1103/232 +f 785/1098/228 795/1104/233 788/1102/231 +f 791/1103/232 797/1105/234 798/1106/235 +f 787/1097/227 793/1107/236 794/1108/237 +f 787/1097/227 792/1109/238 785/1098/228 +f 791/1103/232 793/1107/236 786/1099/163 +f 789/1100/229 797/1105/234 790/1101/230 +f 781/1096/226 789/1100/229 782/1090/220 +f 789/1100/229 781/1096/226 796/1110/239 +f 780/1094/224 788/1102/231 781/1096/226 +f 788/1102/231 795/1104/233 781/1096/226 +f 805/1111/155 814/1112/219 806/1113/203 +f 803/1114/158 812/1115/220 804/1116/202 +f 800/1117/156 809/1118/221 801/1119/205 +f 801/1119/205 807/1120/222 799/1121/157 +f 806/1113/203 808/1122/223 800/1117/156 +f 799/1121/157 810/1123/224 802/1124/204 +f 804/1116/202 813/1125/225 805/1111/155 +f 802/1124/204 811/1126/226 803/1114/158 +f 808/1122/223 817/1127/227 809/1118/221 +f 809/1118/221 815/1128/228 807/1120/222 +f 814/1112/219 816/1129/163 808/1122/223 +f 813/1125/225 819/1130/229 820/1131/230 +f 807/1120/222 818/1132/231 810/1123/224 +f 814/1112/219 820/1131/230 821/1133/232 +f 818/1132/231 822/1134/238 825/1135/233 +f 821/1133/232 827/1136/234 828/1137/235 +f 816/1129/163 824/1138/237 817/1127/227 +f 815/1128/228 824/1138/237 822/1134/238 +f 821/1133/232 823/1139/236 816/1129/163 +f 819/1130/229 827/1136/234 820/1131/230 +f 811/1126/226 819/1130/229 812/1115/220 +f 819/1130/229 811/1126/226 826/1140/239 +f 810/1123/224 818/1132/231 811/1126/226 +f 818/1132/231 825/1135/233 811/1126/226 +f 839/1141/175 832/1142/176 831/1143/173 +f 837/1144/188 830/1145/174 829/1146/184 +f 844/1147/182 829/1146/184 836/1148/183 +f 842/1149/179 835/1150/181 834/1151/180 +f 840/1152/186 833/1153/178 832/1142/176 +f 838/1154/185 831/1143/173 830/1145/174 +f 843/1155/187 836/1148/183 835/1150/181 +f 841/1156/177 834/1151/180 833/1153/178 +f 840/1152/186 849/1157/192 841/1156/177 +f 846/1158/190 839/1141/175 838/1154/185 +f 849/1157/192 842/1149/179 841/1156/177 +f 847/1159/173 840/1152/186 839/1141/175 +f 845/1160/189 838/1154/185 837/1144/188 +f 844/1147/182 845/1160/189 837/1144/188 +f 852/1161/196 846/1158/190 845/1160/189 +f 858/1162/201 845/1160/189 851/1163/199 +f 855/1164/198 849/1157/192 848/1165/191 +f 853/1166/197 847/1159/173 846/1158/190 +f 849/1157/192 857/1167/195 850/1168/193 +f 847/1159/173 855/1164/198 848/1165/191 +f 844/1147/182 843/1155/187 851/1163/199 +f 851/1163/199 843/1155/187 858/1162/201 +f 842/1149/179 850/1168/193 843/1155/187 +f 850/1168/193 857/1167/195 843/1155/187 +f 865/1169/203 843/1155/187 857/1167/195 +f 866/1170/202 852/1161/196 858/1162/201 +f 859/1171/155 858/1162/201 843/1155/187 +f 863/1172/205 856/1173/194 855/1164/198 +f 861/1174/204 854/1175/200 853/1166/197 +f 864/1176/156 857/1167/195 856/1173/194 +f 862/1177/157 855/1164/198 854/1175/200 +f 860/1178/158 853/1166/197 852/1161/196 +f 873/1179/207 835/1150/181 836/1148/183 +f 834/1151/180 870/1180/208 833/1153/178 +f 830/1145/174 867/1181/211 829/1146/184 +f 829/1146/184 873/1179/207 836/1148/183 +f 835/1150/181 871/1182/206 834/1151/180 +f 870/1180/208 832/1142/176 833/1153/178 +f 880/1183/213 872/1184/187 873/1179/207 +f 878/1185/212 870/1180/208 871/1182/206 +f 868/1186/210 874/1187/218 867/1181/211 +f 867/1181/211 880/1183/213 873/1179/207 +f 872/1184/187 878/1185/212 871/1182/206 +f 877/1188/214 869/1189/209 870/1180/208 +f 831/1143/173 832/1142/176 869/1189/209 +f 869/1189/209 876/1190/215 831/1143/173 +f 830/1145/174 831/1143/173 868/1186/210 +f 868/1186/210 831/1143/173 875/1191/217 +f 888/1192/240 879/1193/216 880/1183/213 +f 886/1194/241 877/1188/214 878/1185/212 +f 883/1195/242 874/1187/218 875/1191/217 +f 881/1196/243 875/1191/217 831/1143/173 +f 882/1197/244 880/1183/213 874/1187/218 +f 884/1198/245 831/1143/173 876/1190/215 +f 887/1199/246 878/1185/212 879/1193/216 +f 885/1200/247 876/1190/215 877/1188/214 +f 883/1195/242 890/1201/162 882/1197/244 +f 889/1202/248 883/1195/242 881/1196/243 +f 890/1201/162 888/1192/240 882/1197/244 +f 887/1199/246 893/1203/249 886/1194/241 +f 892/1204/250 881/1196/243 884/1198/245 +f 888/1192/240 894/1205/251 887/1199/246 +f 899/1206/252 889/1202/248 892/1204/250 +f 895/1207/253 901/1208/254 894/1205/251 +f 891/1209/255 897/1210/256 890/1201/162 +f 896/1211/257 891/1209/255 889/1202/248 +f 897/1210/256 895/1207/253 890/1201/162 +f 901/1208/254 893/1203/249 894/1205/251 +f 885/1200/247 886/1194/241 893/1203/249 +f 893/1203/249 900/1212/258 885/1200/247 +f 884/1198/245 885/1200/247 892/1204/250 +f 892/1204/250 885/1200/247 899/1206/252 +f 918/1213/240 909/1214/155 910/1215/202 +f 916/1216/241 907/1217/156 908/1218/203 +f 913/1219/242 904/1220/158 905/1221/204 +f 911/1222/243 905/1221/204 903/1223/157 +f 912/1224/244 910/1215/202 904/1220/158 +f 914/1225/245 903/1223/157 906/1226/205 +f 917/1227/246 908/1218/203 909/1214/155 +f 915/1228/247 906/1226/205 907/1217/156 +f 913/1219/242 920/1229/162 912/1224/244 +f 911/1222/243 921/1230/255 913/1219/242 +f 920/1229/162 918/1213/240 912/1224/244 +f 917/1227/246 923/1231/249 916/1216/241 +f 922/1232/250 911/1222/243 914/1225/245 +f 918/1213/240 924/1233/251 917/1227/246 +f 922/1232/250 926/1234/257 919/1235/248 +f 925/1236/253 931/1237/254 924/1233/251 +f 928/1238/259 920/1229/162 921/1230/255 +f 926/1234/257 921/1230/255 919/1235/248 +f 927/1239/256 925/1236/253 920/1229/162 +f 931/1237/254 923/1231/249 924/1233/251 +f 915/1228/247 916/1216/241 923/1231/249 +f 923/1231/249 930/1240/258 915/1228/247 +f 914/1225/245 915/1228/247 922/1232/250 +f 922/1232/250 915/1228/247 929/1241/252 +f 728/1037/174 736/1049/185 735/1038/175 +f 726/1040/176 734/1050/186 733/1041/177 +f 725/1042/178 733/1041/177 740/1043/179 +f 731/1045/181 739/1051/187 738/1046/182 +f 729/1048/184 737/1052/188 736/1049/185 +f 727/1039/173 735/1038/175 734/1050/186 +f 732/1044/180 740/1043/179 739/1051/187 +f 730/1047/183 738/1046/182 737/1052/188 +f 736/1049/185 737/1052/188 745/1053/189 +f 735/1038/175 743/1056/173 742/1055/191 +f 738/1046/182 746/1064/199 745/1053/189 +f 736/1049/185 744/1054/190 743/1056/173 +f 734/1050/186 742/1055/191 741/1057/192 +f 733/1041/177 741/1057/192 747/1058/193 +f 742/1055/191 749/1063/198 748/1059/194 +f 747/1058/193 741/1057/192 748/1059/194 +f 744/1054/190 745/1053/189 752/1061/196 +f 743/1056/173 750/1065/200 749/1063/198 +f 746/1064/199 753/1066/201 752/1061/196 +f 743/1056/173 744/1054/190 751/1062/197 +f 739/1051/187 755/1069/155 761/1067/202 +f 748/1059/194 756/1074/156 762/1068/203 +f 754/1060/195 762/1068/203 755/1069/155 +f 752/1061/196 760/1072/158 759/1070/204 +f 750/1065/200 758/1073/157 757/1071/205 +f 753/1066/201 761/1067/202 760/1072/158 +f 751/1062/197 759/1070/204 758/1073/157 +f 749/1063/198 757/1071/205 756/1074/156 +f 731/1045/181 768/1079/187 769/1075/206 +f 729/1048/184 766/1081/211 767/1076/207 +f 726/1040/176 725/1042/178 763/1077/208 +f 725/1042/178 732/1044/180 769/1075/206 +f 730/1047/183 767/1076/207 768/1079/187 +f 729/1048/184 728/1037/174 765/1080/210 +f 768/1079/187 775/1086/216 776/1082/212 +f 766/1081/211 773/1088/218 774/1083/213 +f 764/1078/209 763/1077/208 770/1084/214 +f 769/1075/206 776/1082/212 770/1084/214 +f 768/1079/187 767/1076/207 774/1083/213 +f 766/1081/211 765/1080/210 772/1087/217 +f 775/1086/216 783/1095/225 784/1089/219 +f 773/1088/218 781/1096/226 782/1090/220 +f 770/1084/214 778/1093/223 779/1091/221 +f 771/1085/215 779/1091/221 777/1092/222 +f 776/1082/212 784/1089/219 778/1093/223 +f 727/1039/173 777/1092/222 780/1094/224 +f 774/1083/213 782/1090/220 783/1095/225 +f 772/1087/217 780/1094/224 781/1096/226 +f 778/1093/223 786/1099/163 787/1097/227 +f 779/1091/221 787/1097/227 785/1098/228 +f 784/1089/219 791/1103/232 786/1099/163 +f 783/1095/225 782/1090/220 789/1100/229 +f 777/1092/222 785/1098/228 788/1102/231 +f 784/1089/219 783/1095/225 790/1101/230 +f 785/1098/228 792/1109/238 795/1104/233 +f 791/1103/232 790/1101/230 797/1105/234 +f 787/1097/227 786/1099/163 793/1107/236 +f 787/1097/227 794/1108/237 792/1109/238 +f 791/1103/232 798/1106/235 793/1107/236 +f 789/1100/229 796/1110/239 797/1105/234 +f 805/1111/155 813/1125/225 814/1112/219 +f 803/1114/158 811/1126/226 812/1115/220 +f 800/1117/156 808/1122/223 809/1118/221 +f 801/1119/205 809/1118/221 807/1120/222 +f 806/1113/203 814/1112/219 808/1122/223 +f 799/1121/157 807/1120/222 810/1123/224 +f 804/1116/202 812/1115/220 813/1125/225 +f 802/1124/204 810/1123/224 811/1126/226 +f 808/1122/223 816/1129/163 817/1127/227 +f 809/1118/221 817/1127/227 815/1128/228 +f 814/1112/219 821/1133/232 816/1129/163 +f 813/1125/225 812/1115/220 819/1130/229 +f 807/1120/222 815/1128/228 818/1132/231 +f 814/1112/219 813/1125/225 820/1131/230 +f 818/1132/231 815/1128/228 822/1134/238 +f 821/1133/232 820/1131/230 827/1136/234 +f 816/1129/163 823/1139/236 824/1138/237 +f 815/1128/228 817/1127/227 824/1138/237 +f 821/1133/232 828/1137/235 823/1139/236 +f 819/1130/229 826/1140/239 827/1136/234 +f 839/1141/175 840/1152/186 832/1142/176 +f 837/1144/188 838/1154/185 830/1145/174 +f 844/1147/182 837/1144/188 829/1146/184 +f 842/1149/179 843/1155/187 835/1150/181 +f 840/1152/186 841/1156/177 833/1153/178 +f 838/1154/185 839/1141/175 831/1143/173 +f 843/1155/187 844/1147/182 836/1148/183 +f 841/1156/177 842/1149/179 834/1151/180 +f 840/1152/186 848/1165/191 849/1157/192 +f 846/1158/190 847/1159/173 839/1141/175 +f 849/1157/192 850/1168/193 842/1149/179 +f 847/1159/173 848/1165/191 840/1152/186 +f 845/1160/189 846/1158/190 838/1154/185 +f 844/1147/182 851/1163/199 845/1160/189 +f 852/1161/196 853/1166/197 846/1158/190 +f 858/1162/201 852/1161/196 845/1160/189 +f 855/1164/198 856/1173/194 849/1157/192 +f 853/1166/197 854/1175/200 847/1159/173 +f 849/1157/192 856/1173/194 857/1167/195 +f 847/1159/173 854/1175/200 855/1164/198 +f 865/1169/203 859/1171/155 843/1155/187 +f 866/1170/202 860/1178/158 852/1161/196 +f 859/1171/155 866/1170/202 858/1162/201 +f 863/1172/205 864/1176/156 856/1173/194 +f 861/1174/204 862/1177/157 854/1175/200 +f 864/1176/156 865/1169/203 857/1167/195 +f 862/1177/157 863/1172/205 855/1164/198 +f 860/1178/158 861/1174/204 853/1166/197 +f 873/1179/207 872/1184/187 835/1150/181 +f 834/1151/180 871/1182/206 870/1180/208 +f 830/1145/174 868/1186/210 867/1181/211 +f 829/1146/184 867/1181/211 873/1179/207 +f 835/1150/181 872/1184/187 871/1182/206 +f 870/1180/208 869/1189/209 832/1142/176 +f 880/1183/213 879/1193/216 872/1184/187 +f 878/1185/212 877/1188/214 870/1180/208 +f 868/1186/210 875/1191/217 874/1187/218 +f 867/1181/211 874/1187/218 880/1183/213 +f 872/1184/187 879/1193/216 878/1185/212 +f 877/1188/214 876/1190/215 869/1189/209 +f 888/1192/240 887/1199/246 879/1193/216 +f 886/1194/241 885/1200/247 877/1188/214 +f 883/1195/242 882/1197/244 874/1187/218 +f 881/1196/243 883/1195/242 875/1191/217 +f 882/1197/244 888/1192/240 880/1183/213 +f 884/1198/245 881/1196/243 831/1143/173 +f 887/1199/246 886/1194/241 878/1185/212 +f 885/1200/247 884/1198/245 876/1190/215 +f 883/1195/242 891/1209/255 890/1201/162 +f 889/1202/248 891/1209/255 883/1195/242 +f 890/1201/162 895/1207/253 888/1192/240 +f 887/1199/246 894/1205/251 893/1203/249 +f 892/1204/250 889/1202/248 881/1196/243 +f 888/1192/240 895/1207/253 894/1205/251 +f 899/1206/252 896/1211/257 889/1202/248 +f 895/1207/253 902/1242/260 901/1208/254 +f 891/1209/255 898/1243/259 897/1210/256 +f 896/1211/257 898/1243/259 891/1209/255 +f 897/1210/256 902/1242/260 895/1207/253 +f 901/1208/254 900/1212/258 893/1203/249 +f 918/1213/240 917/1227/246 909/1214/155 +f 916/1216/241 915/1228/247 907/1217/156 +f 913/1219/242 912/1224/244 904/1220/158 +f 911/1222/243 913/1219/242 905/1221/204 +f 912/1224/244 918/1213/240 910/1215/202 +f 914/1225/245 911/1222/243 903/1223/157 +f 917/1227/246 916/1216/241 908/1218/203 +f 915/1228/247 914/1225/245 906/1226/205 +f 913/1219/242 921/1230/255 920/1229/162 +f 911/1222/243 919/1235/248 921/1230/255 +f 920/1229/162 925/1236/253 918/1213/240 +f 917/1227/246 924/1233/251 923/1231/249 +f 922/1232/250 919/1235/248 911/1222/243 +f 918/1213/240 925/1236/253 924/1233/251 +f 922/1232/250 929/1241/252 926/1234/257 +f 925/1236/253 932/1244/260 931/1237/254 +f 928/1238/259 927/1239/256 920/1229/162 +f 926/1234/257 928/1238/259 921/1230/255 +f 927/1239/256 932/1244/260 925/1236/253 +f 931/1237/254 930/1240/258 923/1231/249 diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace.png new file mode 100644 index 0000000000000000000000000000000000000000..920a5871c7978daed2dba246d5bd919ef5785a32 GIT binary patch literal 4529 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 Dw;Ln` literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo.png b/src/main/resources/assets/hbm/textures/items/ammo.png new file mode 100644 index 0000000000000000000000000000000000000000..1986dcd73ed45115d3e0a639a21b78f3806a9431 GIT binary patch literal 1160 zcmV;31b6$1P)H7kY^#rzB9(9?GRo>0oo^*FnA0{gd^c zPU=bceLx^R-}m=^zxRIc-TOUDNC;Ix?ssV$5|gMvo`$aVC28noCczMxJ9cSGlHZXy zy-}6P|9f%M=|97uXYHSP09=Oxj!X!nDpR-ZMA|0N_n8L$v!E;}0DxxA!qr{25g%pH z+~Dn_V7qb=$j-}SpMZDb9B@B{8$~a0`?(DO`1~ss^)*mf7iXv2cF=7*k#ru$l^rwM zwymLg;KV$g3>k>dboN3H0MLD5d4c=e3oAL)VbP#Wh|Z$JmBO7}4L1+8K-3d?4%rJi)bVuSAY9ooaqqKI@B6lfd)N5`I5l4f{Fnr? z+fja{gj4f1fL`!GKk!Ux&J%QMrsq(2o%%U_tb4QAsYO$ITJYWioto(lLOAHB-#rZM z1>LrT?EKj;kW6WA6n?lm(@~wqt^KUqSYf!xVUUQ=L|1pm$I)sx|@eHbP}V z!K1Byiu26&;-(|*FIjZ?R)6q#^xYR0vaAm$B;b^L9&l%y$>{=-ceW0(ztlT04YETO zko15M*6%NYF5l{9kDHBggE&af3RMuS1;%~M9CeRaeFABJ%c5}Gc)SXd+^Da#WSxmX z3H`tqX9{|Gto3}8NgZ%HZGB)gxG50Lx;|13CPmkE;;sH%zWpdm?k7qAx~?B@$*LAv6ypO_-A`CnmUj6y>Uw-&5UHUkWPrkT>KVEeKJfyFG>2mj9 zE|<}2wE%!v{13bZG)<#&xeNg8Mts^k#rsfiF9Yv=j{RjD7^{CW z>s{Yltrm`tkCDsem`d>2B@i~k;=nig29yP*caVC!j?AZfy-eU(4sP(a^*4&kFS+%u z-&jgweWav|HNr5HS9c-RVG&kNkgdbl0CE>@PXk|W!;_^%GOlmY5 z5&%+F73<2~(KAugG}_qMAfqZ1z0rvNG3n$`W!~88YoOnDa&&U2&ZK@SoJdRAoM!Q()j6TJGQ{m1F0S+D1l-v`WiJumJ9rtLmJAP@)y0)apv zm=#hkN7L4y`&yv)j}dniN2sS~T`%qf(yqtT)}Q-5Kp+qZ1OkCTaDJKbdS2WIB;?%R a2mA|>RFyiL2(sq@00001u9s|QG;3>l+}5{aIGi4ie&;s(s@nYuHSL-Yh0 zIw1y7)iseqD$3X)YCSMkk<3u+xFOILzR7y+=l%W+|0c3Ts4NkxtvkmceRc;f0L!%E za@ug;3~cE1>Ws~Mg)F5p@uPs3huoMrU77qS0O*9Zt}78)BGmca1?#jh4}ODtu}2tt z_))+kxe@@oVoP`(vn#d+w!vQP8RK|G1O znCCjW(+|u{R(~c@*~h0=a_uq++zd5yNrqWV|YO;5NN=z{^?v)pyNk(X3wp z49B&TB~s~uYIr`WOm#M7$APH-gUKaSXBO zy*lZj;9&y}7XMD}0?sK#OFxtgYq~DI(DHxE1HLK!7Zv)A&KW;c=G}1IQ0RlX;VB>CPhC8xKOvcU~QzS)t!!4{iC#s)Zw#uT9`Sq@Qhg6FH zZgpYyyb`s1!>Vth=TGk4_M~amp}V^iT-KIG=*KX<6ul#x)|PvF!~5R`nQZ(_H!qoQ znCZIG=FFND??{8gidBbH<2L+fo}|0xXp2eai@!5^{!h?7x8Q!4d2Z5DS)q4UT0p-r Nc)I$ztaD0e0szJjYPSFY literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/machines/rotary_furnace.png b/src/main/resources/assets/hbm/textures/models/machines/rotary_furnace.png index 2107c50ec0568209ca7919342b41ea64ed307b3a..c576ba9ffc97352df07125f27d30f4463fe7a132 100644 GIT binary patch delta 1882 zcmZ`(c{JOJ7AAyDnu<FxOI1lbt=c-GUQA;tqN=1sPe}Zv$QG~R3MunCIg!E935f;|gsfR%+1+`6cvi#N#E38m z{d1bTKYBikVrh0-#2o5zbNqN)xKs|0C&Ajsr|WrRUnbpyhs@;1H{Xp*i>c%!fchbt zDp~(ifWJ>ygFZ<->qP_8&%=|P0^?l`=*<tt8HL_z2E%2TCsE%EB~YcsHy9-VLVK@qO_V z_GA(i3IWt<2?ii2je|GY6UE2P*RZo0Ka{j{J=a6^@hJQ$l|MT}h_-)d@%J?W7lsu%3wu>kUx zJ_l8A%wJ|Ikr>8L_PVZK!6JR_IH=2tWW~DDhhHs(DBERkEMs$4iB8P(F2VGId?XP@ zcezI%OrZRg#$6d{d9FKWN~O8Z=2!(e#IKIK^tU^&5e&7VT{_5##1+@0zNj-~#j8ci z_;lC3h*|;KvN1FF9|(hLL|uT=rht~p^ms3rLAbs8HB5u`5@pMS1g;KBG2^-Z@}-@B zqi3);j?cSY5z;ejXBLvEE;>~-tu7gr9~4XK>SCb9!BX?e)rDU^8lBr#(KuYx)+8i0 zr?=9BSGy|RL$R4>GNlP*rQh2&%@#Q!!`DTBZI1$vKsbo7HM3CrxX~BAU1-x6wG>Ly+Xc=UW!utjG8D9Oc zpB#bQ-0nY*?5IrgiYe_s`56E7sU^1cA5Li`T7fB874WWFU0?fx&#I+e%RS-ZsJ+B0 z|HE>~EF&PA)G*`saE}~>G*U*+@hePI7_Rpt1uS#8_;b8XQ)utk>qOOZL#t4S**s3e zPN^*xoBzl+53=lp3e6{FiRnG<8r9UVQ)usYu+D{O#^R4D;CAKkZf zsP!_2zA(@L-ODUYs=TA?U6qk}79r7ExS(IvsrfI3*XxD3jq=)>cHb_)dh~Nw=q7q! zCQ^%10GE;jF+6-VTDT5Ne~|7X$}P_Vcdy#OrgT zqli!6H`vp7aiZ2BRA}O{RMyrZWd{yV+QPFZNyl+ZEEWz@7A!gg%&~gmclG(PqwJN7 zw)_iGs%=yUx6=-c#`G_(6FBTfiWeY@$n}TS2hY#9-3T~Y6ep&qMO6(K&L`+M!YS&h zdHPz^4q8TLJsmdu=YYS}apZUO+G^XQe(Ab?2;`L^7|U@WCUe5|%}~P%?%T%i4~RT| zfT5L!2DQdTneg%Pi7|AF@y#atAmQK8PchS~>9A&%p^Q;c0 w1kESvt^(6SKH0>Q(9gmv3QnVqp0A_7CQ**D|SCN;XIT61Lm8MxBvhE literal 2033 zcmd5-dpy(YA7_j;N2odWJGq2&P8;P=gbbU@TtcHAmrO1dDq@=^mr0UKB>9nhXXIM6 z)X8Nrei*OFNU=mTvc)XrvV~^9uk(AI-=Dv~f6wdnJnuiA=lOh|=l#5&_a_tQ;iL@x z2`VEaqwM1B;053(ptnL4fN|jf?KS}NWIGo;1Zatnvl%inighjy82pto;d^V+Bo^NH z^&B?LxlzyOi`(v8*Bg_t3%+3}Cg?|>FINZ;xo&S5xlwtiFiCgt@R4)iPPbw>gRVZv+-~WYor4ij0=%eW0a)y5TIX;@AVJ z1e10#^Y?j4+Y$Sc!k(|I)2z7_r&Y#TOLZVW7z{;47~QT|+MK&cANagE*G!>iC4-bv zl%4?PeT3gWnG$7#@i^KZI^u}wOI5u z*NFLq?6|S~I9yO#9Stpqq@MIATE|v%$ah5;JMNfrF5W)o00rzq&nJTKIl}? ztAq4)hBQ3sjmD~0LYm);l@C)n^gRlh-dJQA919LmV?|%;o;QK`7q%NrmPWomCSsp| z)>(AOrev7q?UZnDJ?m+@d1OBt^2rsEwpwBo{N!4B;!ivr8BAzNB& zxKY88YI?DtDr(a>8Y4Xv@ym9ta3%`GK$CZcK_YoJLcxXA^63@x3M7bOOooO*YVXsZ zJy>wjdE@ak-$vo1;-oOR1Z+u}=rP1$(Yig}%pyPcfATPq^9dPo1yPl8IFEI?R8Nd9 zvN~#!9b5BQ{gt2;>ef`C_-C~CLzeN@u4T=E828)DE&jg!cZzCjYadd(g%qoeE^y8g8Q<;% z`CN91(Sj;sn#qC-ZH_x4>-SNt>lNoxvkweD8A z*iyU&{EoopnMECZ+9>~eADvB#lB7x|FCViyu~isHl~Uh}b<1APZ->sDzp|mhx42l5 z0=iX=`pB^d#ELvIYUBr~wr|QNT(d&u=3)M7N!u!o&z}wPgCIuG1E{*jhUpBWRa&yK z0RorF;kX4GJ`$ErD-Y@S`HOvDjBKYfZRHO9A#D+g76oW%p~_k0J+-mR(@9+pQL<=5CEu(a{K_OZH&aO3V#&uhRI0 z>&YR-HM{+)a}PVG&hLr%%%dRdXui$$hQVBsJZ#W>E_bw-bu7a)w!>4zkKXtdi^nze z|6qtzkKwWTx*eUphfoymm%O+Yaa+L4M8fxx-{P|EmyLy@VyU$}%pBR)_jNSk+>Mw% zILnc2)-$nUU6`D#cYJWa+9)S{R&N3>dn%q>=t(d&3B7zjPg@Q5Ly4Yo>YA-7kvNu* z@eA3R!{5iTU^&6A@-Ph~*nYvc4`7y#PzXT|1z?Gu4kl%`2pxYzJg)3{*bK9bmqu#A|Ajh3s(~E5YARx>p14`I7Jl6bjJ?-npc;E2Hx1 z)bj})z%D7AbOGNhC$?~`bZAq4v0_+90HpnE`Hn6Dzww^w723b;g{$bMs-Brjl$vh{ zF7c=z$ZZ^d-sxdKMrT_Vn}j9aaoA|q8|WX0%CZb^VsNM$lLlsH)*yxYwr)x;+=ZK6 zEYMJlIZrj#M5e~LaNEJ|1cKQ)^td)#6(Hzeu!5L+ZuU+f&$BPP4w{v<_)@__I}6Q_ z@6yW<-H%BfKc2yRb;n&;mvy{%S2w`k;tX%olz6AnF?U>*?XQZPstTn+YU$suTQ)T4 zcuy8~pP;W1#;3xX9!nWpI-7G2fTYv_70UiUgG9-sKL@W)b@c>lxQvUVhr=Vgpp<_D Dn&X!@ From 50daf7f8dd55b40a6c00d09880d85b88b31fc83d Mon Sep 17 00:00:00 2001 From: Boblet Date: Fri, 27 Sep 2024 14:35:08 +0200 Subject: [PATCH 34/63] texture sheet --- .../assets/hbm/textures/items/ammo.png | Bin 1160 -> 5344 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/src/main/resources/assets/hbm/textures/items/ammo.png b/src/main/resources/assets/hbm/textures/items/ammo.png index 1986dcd73ed45115d3e0a639a21b78f3806a9431..4af3055b0065e6ff9dabd6e9b1ab8abfff807993 100644 GIT binary patch literal 5344 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 From a6f694b7b3ddaeee022302f23178672be443a735 Mon Sep 17 00:00:00 2001 From: Bob Date: Sun, 29 Sep 2024 20:56:11 +0200 Subject: [PATCH 35/63] GUNMETAL --- changelog | 9 +- .../blocks/machine/MachineRotaryFurnace.java | 23 +- .../ContainerMachineRotaryFurnace.java | 75 ++++ .../container/ContainerMachineShredder.java | 4 +- .../gui/GUIMachineRotaryFurnace.java | 93 +++++ .../hbm/inventory/gui/GUIMachineShredder.java | 2 +- .../recipes/RotaryFurnaceRecipes.java | 176 ++++++++++ .../recipes/loader/SerializableRecipe.java | 1 + .../weapon/sedna/factory/GunFactory.java | 2 +- .../hbm/items/weapon/sedna/factory/Lego.java | 5 - .../weapon/sedna/factory/LegoClient.java | 10 + .../sedna/factory/XFactoryBlackPowder.java | 2 +- .../tileentity/RenderRotaryFurnace.java | 7 +- .../hbm/tileentity/IConditionalInvAccess.java | 2 +- .../TileEntityMachineRotaryFurnace.java | 328 +++++++++++++++++- .../oil/TileEntityMachinePyroOven.java | 14 +- .../blocks/machine_shredder_bottom_alt.png | Bin 451 -> 518 bytes .../blocks/machine_shredder_front_alt.png | Bin 321 -> 578 bytes .../blocks/machine_shredder_side_alt.png | Bin 271 -> 595 bytes .../blocks/machine_shredder_top_alt.png | Bin 280 -> 386 bytes .../assets/hbm/textures/gui/gui_shredder.png | Bin 3449 -> 4108 bytes .../gui/processing/gui_rotary_furnace.png | Bin 4529 -> 5655 bytes .../assets/hbm/textures/items/ammo.png | Bin 5344 -> 7407 bytes .../hbm/textures/items/ingot_gunmetal.png | Bin 353 -> 349 bytes .../models/machines/rotary_furnace.png | Bin 2087 -> 12871 bytes 25 files changed, 723 insertions(+), 30 deletions(-) create mode 100644 src/main/java/com/hbm/inventory/container/ContainerMachineRotaryFurnace.java create mode 100644 src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java create mode 100644 src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java diff --git a/changelog b/changelog index dd831e3fd..ce5ce5c44 100644 --- a/changelog +++ b/changelog @@ -4,7 +4,14 @@ * Overdrive upgrades now use fullerite instead of lithium crystals * Machines now only send their sync packets once a second instead of once per tick if the values haven't changed, reducing network traffic by a considerable amount * Tom's explosion no longer causes any block updates on the millions of blocks it deletes which hopefully fixes a majority of the lag caused by the crater +* Overdrive upgrades now increase power usage in pyrolysis ovens (equivalent to 2 speed upgrades per level) +* Due to the increased maximum demand with overdrives + speed upgrades, the energy buffer for the pyrolysis oven has been increased tenfold +* Updated basalt textures +* Scaffold blocks can now be placed horizontally +* Updated the shredder's textures ## Fixed * The conveyor grabber should no longer skip over items when used in long lines -* Fixed a potential crash regarding crucibles \ No newline at end of file +* Fixed a potential crash regarding crucibles +* Fixed compatibility with EndlessIDs, biome changes should no longer crash the game +* Fixed GL state leak caused by fluid tanks, causing some tile entities to be rendered without face culling \ No newline at end of file diff --git a/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java b/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java index 2160a0451..523bc10b7 100644 --- a/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java +++ b/src/main/java/com/hbm/blocks/machine/MachineRotaryFurnace.java @@ -8,6 +8,7 @@ import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; public class MachineRotaryFurnace extends BlockDummyable { @@ -29,11 +30,31 @@ public class MachineRotaryFurnace extends BlockDummyable { @Override public int[] getDimensions() { - return new int[] {3, 0, 1, 1, 2, 2}; + return new int[] {4, 0, 1, 1, 2, 2}; } @Override public int getOffset() { return 1; } + + @Override + protected void fillSpace(World world, int x, int y, int z, ForgeDirection dir, int o) { + super.fillSpace(world, x, y, z, dir, o); + x += dir.offsetX * o; + z += dir.offsetZ * o; + + ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN); + + //back + for(int i = -2; i <= 2; i++) { + this.makeExtra(world, x - dir.offsetX + rot.offsetX * i, y, z - dir.offsetZ + rot.offsetZ * i); + } + //side fluid + this.makeExtra(world, x + dir.offsetX - rot.offsetX * 2, y, z + dir.offsetZ - rot.offsetZ * 2); + //exhaust + this.makeExtra(world, x + rot.offsetX, y + 4, z + rot.offsetZ); + //solid fuel + this.makeExtra(world, x + dir.offsetX + rot.offsetX, y, z + dir.offsetZ + rot.offsetZ); + } } diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineRotaryFurnace.java b/src/main/java/com/hbm/inventory/container/ContainerMachineRotaryFurnace.java new file mode 100644 index 000000000..219f1f0e6 --- /dev/null +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineRotaryFurnace.java @@ -0,0 +1,75 @@ +package com.hbm.inventory.container; + +import com.hbm.items.machine.IItemFluidIdentifier; +import com.hbm.tileentity.machine.TileEntityMachineRotaryFurnace; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.inventory.Slot; +import net.minecraft.item.ItemStack; +import net.minecraft.tileentity.TileEntityFurnace; + +public class ContainerMachineRotaryFurnace extends Container { + + private TileEntityMachineRotaryFurnace furnace; + + public ContainerMachineRotaryFurnace(InventoryPlayer invPlayer, TileEntityMachineRotaryFurnace tile) { + furnace = tile; + + //Inputs + this.addSlotToContainer(new Slot(tile, 0, 8, 18)); + this.addSlotToContainer(new Slot(tile, 1, 26, 18)); + this.addSlotToContainer(new Slot(tile, 2, 44, 18)); + //Fluid ID + this.addSlotToContainer(new Slot(tile, 3, 8, 54)); + //Solid fuel + this.addSlotToContainer(new Slot(tile, 4, 44, 54)); + + for(int i = 0; i < 3; i++) { + for(int j = 0; j < 9; j++) { + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 104 + i * 18)); + } + } + + for(int i = 0; i < 9; i++) { + this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 162)); + } + } + + @Override + public ItemStack transferStackInSlot(EntityPlayer player, int index) { + ItemStack rStack = null; + Slot slot = (Slot) this.inventorySlots.get(index); + + if(slot != null && slot.getHasStack()) { + ItemStack stack = slot.getStack(); + rStack = stack.copy(); + + if(index <= 4) { + if(!this.mergeItemStack(stack, 5, this.inventorySlots.size(), true)) return null; + } else { + if(TileEntityFurnace.isItemFuel(rStack)) { + if(!this.mergeItemStack(stack, 4, 5, false)) return null; + } else if(rStack.getItem() instanceof IItemFluidIdentifier) { + if(!this.mergeItemStack(stack, 3, 4, false)) return null; + } else { + if(!this.mergeItemStack(stack, 0, 3, false)) return null; + } + } + + if(stack.stackSize == 0) { + slot.putStack((ItemStack) null); + } else { + slot.onSlotChanged(); + } + } + + return rStack; + } + + @Override + public boolean canInteractWith(EntityPlayer player) { + return furnace.isUseableByPlayer(player); + } +} diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineShredder.java b/src/main/java/com/hbm/inventory/container/ContainerMachineShredder.java index c10e47ae7..983129533 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineShredder.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineShredder.java @@ -55,12 +55,12 @@ public class ContainerMachineShredder extends Container { for(int i = 0; i < 3; i++) { for(int j = 0; j < 9; j++) { - this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 56)); + this.addSlotToContainer(new Slot(invPlayer, j + i * 9 + 9, 8 + j * 18, 84 + i * 18 + 67)); } } for(int i = 0; i < 9; i++) { - this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 56)); + this.addSlotToContainer(new Slot(invPlayer, i, 8 + i * 18, 142 + 67)); } } diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java b/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java new file mode 100644 index 000000000..873694184 --- /dev/null +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java @@ -0,0 +1,93 @@ +package com.hbm.inventory.gui; + +import java.awt.Color; + +import org.lwjgl.input.Keyboard; +import org.lwjgl.opengl.GL11; + +import com.hbm.inventory.container.ContainerMachineRotaryFurnace; +import com.hbm.inventory.material.Mats; +import com.hbm.lib.RefStrings; +import com.hbm.tileentity.machine.TileEntityMachineRotaryFurnace; +import com.hbm.util.I18nUtil; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.resources.I18n; +import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.util.EnumChatFormatting; +import net.minecraft.util.ResourceLocation; + +public class GUIMachineRotaryFurnace extends GuiInfoContainer { + + private static ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/gui/processing/gui_rotary_furnace.png"); + private TileEntityMachineRotaryFurnace furnace; + + public GUIMachineRotaryFurnace(InventoryPlayer playerInv, TileEntityMachineRotaryFurnace tile) { + super(new ContainerMachineRotaryFurnace(playerInv, tile)); + + this.furnace = tile; + this.xSize = 176; + this.ySize = 186; + } + + @Override + public void drawScreen(int x, int y, float interp) { + super.drawScreen(x, y, interp); + + furnace.tanks[0].renderTankInfo(this, x, y, guiLeft + 8, guiTop + 36, 52, 16); + furnace.tanks[1].renderTankInfo(this, x, y, guiLeft + 134, guiTop + 18, 16, 52); + furnace.tanks[2].renderTankInfo(this, x, y, guiLeft + 152, guiTop + 18, 16, 52); + + if(furnace.output == null) { + this.drawCustomInfoStat(x, y, guiLeft + 98, guiTop + 18, 16, 52, x, y, EnumChatFormatting.RED + "Empty"); + } else { + this.drawCustomInfoStat(x, y, guiLeft + 98, guiTop + 18, 16, 52, x, y,EnumChatFormatting.YELLOW + + I18nUtil.resolveKey(furnace.output.material.getUnlocalizedName()) + ": " + Mats.formatAmount(furnace.output.amount, Keyboard.isKeyDown(Keyboard.KEY_LSHIFT))); + } + } + + @Override + protected void drawGuiContainerForegroundLayer(int i, int j) { + String name = this.furnace.hasCustomInventoryName() ? this.furnace.getInventoryName() : I18n.format(this.furnace.getInventoryName()); + this.fontRendererObj.drawString(name, (this.xSize - 54) / 2 - this.fontRendererObj.getStringWidth(name) / 2, 6, 4210752); + this.fontRendererObj.drawString(I18n.format("container.inventory"), 8, this.ySize - 96 + 2, 4210752); + } + + @Override + protected void drawGuiContainerBackgroundLayer(float interp, int x, int y) { + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + Minecraft.getMinecraft().getTextureManager().bindTexture(texture); + drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); + + int p = (int) (furnace.progress * 33); + drawTexturedModalRect(guiLeft + 63, guiTop + 30, 176, 0, p, 10); + + if(furnace.maxBurnTime > 0) { + int b = furnace.burnTime * 14 / furnace.maxBurnTime; + drawTexturedModalRect(guiLeft + 26, guiTop + 69 - b, 176, 24 - b, 14, b); + } + + if(furnace.output != null) { + + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); + + int hex = furnace.output.material.moltenColor; + int amount = furnace.output.amount * 52 / furnace.maxOutput; + Color color = new Color(hex); + GL11.glColor3f(color.getRed() / 255F, color.getGreen() / 255F, color.getBlue() / 255F); + drawTexturedModalRect(guiLeft + 98, guiTop + 70 - amount, 176, 76 - amount, 16, amount); + GL11.glEnable(GL11.GL_BLEND); + GL11.glColor4f(1F, 1F, 1F, 0.3F); + drawTexturedModalRect(guiLeft + 98, guiTop + 70 - amount, 176, 76 - amount, 16, amount); + GL11.glDisable(GL11.GL_BLEND); + + OpenGlHelper.glBlendFunc(770, 771, 1, 0); + GL11.glColor3f(255, 255, 255); + } + + furnace.tanks[0].renderTank(guiLeft + 8, guiTop + 52, this.zLevel, 52, 16, 1); + furnace.tanks[1].renderTank(guiLeft + 134, guiTop + 70, this.zLevel, 16, 52); + furnace.tanks[2].renderTank(guiLeft + 152, guiTop + 70, this.zLevel, 16, 52); + } +} diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineShredder.java b/src/main/java/com/hbm/inventory/gui/GUIMachineShredder.java index 255b789ba..ef433374e 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineShredder.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineShredder.java @@ -21,7 +21,7 @@ public class GUIMachineShredder extends GuiInfoContainer { diFurnace = tedf; this.xSize = 176; - this.ySize = 222; + this.ySize = 233; } @Override diff --git a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java new file mode 100644 index 000000000..713474b35 --- /dev/null +++ b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java @@ -0,0 +1,176 @@ +package com.hbm.inventory.recipes; + +import java.io.IOException; +import java.util.ArrayList; +import java.util.HashMap; +import java.util.Iterator; +import java.util.List; + +import static com.hbm.inventory.OreDictManager.*; +import static com.hbm.inventory.material.Mats.*; +import static com.hbm.inventory.material.MaterialShapes.*; + +import com.google.gson.JsonArray; +import com.google.gson.JsonElement; +import com.google.gson.JsonObject; +import com.google.gson.stream.JsonWriter; +import com.hbm.inventory.FluidStack; +import com.hbm.inventory.RecipesCommon.AStack; +import com.hbm.inventory.RecipesCommon.OreDictStack; +import com.hbm.inventory.material.Mats; +import com.hbm.inventory.material.Mats.MaterialStack; +import com.hbm.inventory.recipes.loader.SerializableRecipe; +import com.hbm.items.machine.ItemFluidIcon; +import com.hbm.items.machine.ItemScraps; + +import net.minecraft.item.ItemStack; + +public class RotaryFurnaceRecipes extends SerializableRecipe { + + public static List recipes = new ArrayList(); + + @Override + public void registerDefaults() { + + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(1)), 200, 100, + new OreDictStack(IRON.ingot()), new OreDictStack(ANY_COKE.gem()) + )); + } + + public static HashMap getRecipes() { + + HashMap recipes = new HashMap(); + + for(RotaryFurnaceRecipe recipe : RotaryFurnaceRecipes.recipes) { + + int size = recipe.ingredients.length + (recipe.fluid != null ? 1 : 0); + Object[] array = new Object[size]; + + for(int i = 0; i < recipe.ingredients.length; i++) { + array[i] = recipe.ingredients[i]; + } + + if(recipe.fluid != null) array[size - 1] = ItemFluidIcon.make(recipe.fluid); + + recipes.put(array, ItemScraps.create(recipe.output, true)); + } + + return recipes; + } + + public static RotaryFurnaceRecipe getRecipe(ItemStack... inputs) { + + outer: + for(RotaryFurnaceRecipe recipe : recipes) { + + List recipeList = new ArrayList(); + for(AStack ingredient : recipe.ingredients) recipeList.add(ingredient); + + for(int i = 0; i < inputs.length; i++) { + + ItemStack inputStack = inputs[i]; + + if(inputStack != null) { + + boolean hasMatch = false; + Iterator iterator = recipeList.iterator(); + + while(iterator.hasNext()) { + AStack recipeStack = iterator.next(); + + if(recipeStack.matchesRecipe(inputStack, true) && inputStack.stackSize >= recipeStack.stacksize) { + hasMatch = true; + recipeList.remove(recipeStack); + break; + } + } + + if(!hasMatch) { + continue outer; + } + } + } + + if(recipeList.isEmpty()) return recipe; + } + + return null; + } + + @Override + public String getFileName() { + return "hbmRotaryFurnace.json"; + } + + @Override + public Object getRecipeObject() { + return recipes; + } + + @Override + public void deleteRecipes() { + recipes.clear(); + } + + @Override + public void readRecipe(JsonElement recipe) { + JsonObject obj = (JsonObject) recipe; + + AStack[] inputs = this.readAStackArray(obj.get("inputs").getAsJsonArray()); + FluidStack fluid = obj.has("fluid") ? this.readFluidStack(obj.get("fluid").getAsJsonArray()) : null; + + JsonArray array = obj.get("output").getAsJsonArray(); + MaterialStack stack = new MaterialStack(Mats.matByName.get(array.get(0).getAsString()), array.get(1).getAsInt()); + + int duration = obj.get("duration").getAsInt(); + int steam = obj.get("steam").getAsInt(); + + recipes.add(new RotaryFurnaceRecipe(stack, duration, steam, fluid, inputs)); + } + + @Override + public void writeRecipe(Object obj, JsonWriter writer) throws IOException { + RotaryFurnaceRecipe recipe = (RotaryFurnaceRecipe) obj; + + writer.name("inputs").beginArray(); + for(AStack aStack : recipe.ingredients) { + this.writeAStack(aStack, writer); + } + writer.endArray(); + + if(recipe.fluid != null) { + writer.name("fluid"); + this.writeFluidStack(recipe.fluid, writer); + } + + writer.name("output").beginArray(); + writer.setIndent(""); + writer.value(recipe.output.material.names[0]).value(recipe.output.amount); + writer.endArray(); + writer.setIndent(" "); + + writer.name("duration").value(recipe.duration); + writer.name("steam").value(recipe.steam); + } + + public static class RotaryFurnaceRecipe { + + public AStack[] ingredients; + public FluidStack fluid; + public MaterialStack output; + public int duration; + public int steam; + + public RotaryFurnaceRecipe(MaterialStack output, int duration, int steam, FluidStack fluid, AStack... ingredients) { + this.ingredients = ingredients; + this.fluid = fluid; + this.output = output; + this.duration = duration; + this.steam = steam; + } + + public RotaryFurnaceRecipe(MaterialStack output, int duration, int steam, AStack... ingredients) { + this(output, duration, steam, null, ingredients); + } + } +} diff --git a/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java b/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java index bbcbceb5a..3652216d0 100644 --- a/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java +++ b/src/main/java/com/hbm/inventory/recipes/loader/SerializableRecipe.java @@ -71,6 +71,7 @@ public abstract class SerializableRecipe { recipeHandlers.add(new ElectrolyserFluidRecipes()); recipeHandlers.add(new ElectrolyserMetalRecipes()); recipeHandlers.add(new ArcWelderRecipes()); + recipeHandlers.add(new RotaryFurnaceRecipes()); recipeHandlers.add(new ExposureChamberRecipes()); recipeHandlers.add(new AssemblerRecipes()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index d44feaa28..30e1c9c74 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -35,7 +35,7 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) + .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index fd6444561..55226db8a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -11,8 +11,6 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.Receiver; -import com.hbm.items.weapon.sedna.hud.HUDComponentAmmoCounter; -import com.hbm.items.weapon.sedna.hud.HUDComponentDurabilityBar; import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.BusAnimationSequence; @@ -29,9 +27,6 @@ import net.minecraft.item.ItemStack; public class Lego { public static final Random ANIM_RAND = new Random(); - - public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY = new HUDComponentDurabilityBar(); - public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); /** * If IDLE and the mag of receiver 0 can be loaded, set state to RELOADING. Used by keybinds. */ diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java new file mode 100644 index 000000000..bed03eb38 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java @@ -0,0 +1,10 @@ +package com.hbm.items.weapon.sedna.factory; + +import com.hbm.items.weapon.sedna.hud.HUDComponentAmmoCounter; +import com.hbm.items.weapon.sedna.hud.HUDComponentDurabilityBar; + +public class LegoClient { + + public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY = new HUDComponentDurabilityBar(); + public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index b541be616..1f39386a4 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -28,7 +28,7 @@ public class XFactoryBlackPowder { BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).hud(Lego.HUD_COMPONENT_DURABILITY, Lego.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) diff --git a/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java index 57b5ee037..d7ff261ae 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java +++ b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java @@ -6,6 +6,7 @@ import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; import com.hbm.main.ResourceManager; import com.hbm.render.item.ItemRenderBase; +import com.hbm.util.BobMathUtil; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; import net.minecraft.item.Item; @@ -31,7 +32,11 @@ public class RenderRotaryFurnace extends TileEntitySpecialRenderer implements II GL11.glShadeModel(GL11.GL_SMOOTH); bindTexture(ResourceManager.rotary_furnace_tex); - ResourceManager.rotary_furnace.renderAll(); + ResourceManager.rotary_furnace.renderPart("Furnace"); + GL11.glPushMatrix(); + GL11.glTranslated(0, BobMathUtil.sps((tile.getWorldObj().getTotalWorldTime() + f) * 0.125) * 0.5 - 0.5, 0); + ResourceManager.rotary_furnace.renderPart("Piston"); + GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); GL11.glPopMatrix(); diff --git a/src/main/java/com/hbm/tileentity/IConditionalInvAccess.java b/src/main/java/com/hbm/tileentity/IConditionalInvAccess.java index 9416eb837..d66553efa 100644 --- a/src/main/java/com/hbm/tileentity/IConditionalInvAccess.java +++ b/src/main/java/com/hbm/tileentity/IConditionalInvAccess.java @@ -11,7 +11,7 @@ import net.minecraft.item.ItemStack; public interface IConditionalInvAccess { public boolean isItemValidForSlot(int x, int y, int z, int slot, ItemStack stack); - public boolean canInsertItem(int x, int y, int z, int slot, ItemStack stack, int side); + public default boolean canInsertItem(int x, int y, int z, int slot, ItemStack stack, int side) { return isItemValidForSlot(x, y, z, slot, stack); } public boolean canExtractItem(int x, int y, int z, int slot, ItemStack stack, int side); public int[] getAccessibleSlotsFromSide(int x, int y, int z, int side); } diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java index af03860dc..85e8fb5db 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java @@ -1,37 +1,337 @@ package com.hbm.tileentity.machine; -import com.hbm.inventory.fluid.FluidType; -import com.hbm.inventory.fluid.tank.FluidTank; -import com.hbm.tileentity.TileEntityMachinePolluting; +import java.util.Random; -public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting { +import com.hbm.handler.pollution.PollutionHandler; +import com.hbm.handler.pollution.PollutionHandler.PollutionType; +import com.hbm.inventory.RecipesCommon.AStack; +import com.hbm.inventory.container.ContainerMachineRotaryFurnace; +import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.fluid.tank.FluidTank; +import com.hbm.inventory.gui.GUIMachineRotaryFurnace; +import com.hbm.inventory.material.MaterialShapes; +import com.hbm.inventory.material.Mats; +import com.hbm.inventory.material.Mats.MaterialStack; +import com.hbm.inventory.recipes.RotaryFurnaceRecipes; +import com.hbm.inventory.recipes.RotaryFurnaceRecipes.RotaryFurnaceRecipe; +import com.hbm.lib.Library; +import com.hbm.main.MainRegistry; +import com.hbm.packet.PacketDispatcher; +import com.hbm.packet.toclient.AuxParticlePacketNT; +import com.hbm.tileentity.IConditionalInvAccess; +import com.hbm.tileentity.IFluidCopiable; +import com.hbm.tileentity.IGUIProvider; +import com.hbm.tileentity.TileEntityMachinePolluting; +import com.hbm.util.CrucibleUtil; +import com.hbm.util.fauxpointtwelve.BlockPos; +import com.hbm.util.fauxpointtwelve.DirPos; + +import api.hbm.fluid.IFluidStandardTransceiver; +import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; +import io.netty.buffer.ByteBuf; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.inventory.Container; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntityFurnace; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; +import net.minecraftforge.common.util.ForgeDirection; + +public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting implements IFluidStandardTransceiver, IGUIProvider, IFluidCopiable, IConditionalInvAccess { + + public FluidTank[] tanks; + public boolean isProgressing; + public float progress; + public int burnTime; + public int maxBurnTime; + public boolean isVenting; + public MaterialStack output; + public static final int maxOutput = MaterialShapes.BLOCK.q(16); public TileEntityMachineRotaryFurnace() { - super(0, 50); + super(5, 50); + tanks = new FluidTank[3]; + tanks[0] = new FluidTank(Fluids.NONE, 16_000); + tanks[1] = new FluidTank(Fluids.STEAM, 4_000); + tanks[2] = new FluidTank(Fluids.SPENTSTEAM, 40); } @Override public String getName() { - return null; + return "container.machineRotaryFurnace"; } @Override public void updateEntity() { + ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); + ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN); + + if(!worldObj.isRemote) { + + tanks[0].setType(3, slots); + + for(DirPos pos : getSteamPos()) { + this.trySubscribe(tanks[1].getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + if(tanks[2].getFill() > 0) this.sendFluid(tanks[2], worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + } + if(tanks[0].getTankType() != Fluids.NONE) for(DirPos pos : getFluidPos()) { + this.trySubscribe(tanks[0].getTankType(), worldObj, pos.getX(), pos.getY(), pos.getZ(), pos.getDir()); + } + + if(smoke.getFill() > 0) this.sendFluid(smoke, worldObj, xCoord + rot.offsetX, yCoord + 5, zCoord + rot.offsetZ, Library.POS_Y); + + if(this.output != null) { + + Vec3 impact = Vec3.createVectorHelper(0, 0, 0); + MaterialStack leftover = CrucibleUtil.pourSingleStack(worldObj, xCoord + 0.5D + rot.offsetX * 2.875D, yCoord + 1.25D, zCoord + 0.5D + rot.offsetZ * 2.875D, 6, true, this.output, MaterialShapes.INGOT.q(1), impact); + + if(leftover.amount != this.output.amount) { + this.output = leftover; + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "foundry"); + data.setInteger("color", leftover.material.moltenColor); + data.setByte("dir", (byte) rot.ordinal()); + data.setFloat("off", 0.625F); + data.setFloat("base", 0.625F); + data.setFloat("len", Math.max(1F, yCoord + 1 - (float) (Math.ceil(impact.yCoord) - 1.125))); + PacketDispatcher.wrapper.sendToAllAround(new AuxParticlePacketNT(data, xCoord + 0.5D + rot.offsetX * 2.875D, yCoord + 0.75, zCoord + 0.5D + rot.offsetZ * 2.875D), new TargetPoint(worldObj.provider.dimensionId, xCoord + 0.5, yCoord + 1, zCoord + 0.5, 50)); + } + + if(output.amount <= 0) this.output = null; + } + + RotaryFurnaceRecipe recipe = RotaryFurnaceRecipes.getRecipe(slots[0], slots[1], slots[2]); + + if(recipe != null) { + + if(this.burnTime <= 0 && slots[4] != null && TileEntityFurnace.isItemFuel(slots[4])) { + this.maxBurnTime = this.burnTime = TileEntityFurnace.getItemBurnTime(slots[4]) / 2; + this.decrStackSize(4, 1); + this.markChanged(); + } + + if(this.canProcess(recipe)) { + this.progress += 1F / recipe.duration; + tanks[1].setFill(tanks[1].getFill() - recipe.steam); + tanks[2].setFill(tanks[2].getFill() + recipe.steam / 100); + + if(this.progress >= 1F) { + this.progress -= 1F; + this.consumeItems(recipe); + + if(this.output == null) { + this.output = recipe.output.copy(); + } else { + this.output.amount += recipe.output.amount; + } + this.markDirty(); + } + + } else { + this.progress = 0; + } + } else { + this.progress = 0; + } + + this.isVenting = false; + if(this.burnTime > 0) { + this.pollute(PollutionType.SOOT, PollutionHandler.SOOT_PER_SECOND / 10F); + this.burnTime--; + } + + this.networkPackNT(50); + + } else { + + if(this.burnTime > 0 && MainRegistry.proxy.me().getDistance(xCoord, yCoord, zCoord) < 25) { + Random rand = worldObj.rand; + worldObj.spawnParticle("flame", xCoord + 0.5 + dir.offsetX * 0.5 + rot.offsetX + rand.nextGaussian() * 0.25, yCoord + 0.375, zCoord + 0.5 + dir.offsetZ * 0.5 + rot.offsetZ + rand.nextGaussian() * 0.25, 0, 0, 0); + } + + if(isVenting && worldObj.getTotalWorldTime() % 2 == 0) { + + NBTTagCompound fx = new NBTTagCompound(); + fx.setString("type", "tower"); + fx.setFloat("lift", 10F); + fx.setFloat("base", 0.25F); + fx.setFloat("max", 2.5F); + fx.setInteger("life", 100 + worldObj.rand.nextInt(20)); + fx.setInteger("color",0x202020); + fx.setDouble("posX", xCoord + 0.5 + rot.offsetX); + fx.setDouble("posY", yCoord + 5); + fx.setDouble("posZ", zCoord + 0.5 + rot.offsetZ); + MainRegistry.proxy.effectNT(fx); + } + } } + @Override public void serialize(ByteBuf buf) { + super.serialize(buf); + tanks[0].serialize(buf); + tanks[1].serialize(buf); + tanks[2].serialize(buf); + buf.writeBoolean(isVenting); + buf.writeBoolean(isProgressing); + buf.writeFloat(progress); + buf.writeInt(burnTime); + buf.writeInt(maxBurnTime); + + if(this.output != null) { + buf.writeBoolean(true); + buf.writeInt(this.output.material.id); + buf.writeInt(this.output.amount); + } else { + buf.writeBoolean(false); + } + } + + @Override public void deserialize(ByteBuf buf) { + super.deserialize(buf); + tanks[0].deserialize(buf); + tanks[1].deserialize(buf); + tanks[2].deserialize(buf); + isVenting = buf.readBoolean(); + isProgressing = buf.readBoolean(); + progress = buf.readFloat(); + burnTime = buf.readInt(); + maxBurnTime = buf.readInt(); + + if(buf.readBoolean()) { + this.output = new MaterialStack(Mats.matById.get(buf.readInt()), buf.readInt()); + } else { + this.output = null; + } + } + @Override - public FluidTank[] getAllTanks() { - return null; + public void readFromNBT(NBTTagCompound nbt) { + super.readFromNBT(nbt); + this.tanks[0].readFromNBT(nbt, "t0"); + this.tanks[1].readFromNBT(nbt, "t1"); + this.tanks[2].readFromNBT(nbt, "t2"); + this.progress = nbt.getFloat("prog"); + this.burnTime = nbt.getInteger("burn"); + this.maxBurnTime = nbt.getInteger("maxBurn"); + } + + @Override + public void writeToNBT(NBTTagCompound nbt) { + super.writeToNBT(nbt); + this.tanks[0].writeToNBT(nbt, "t0"); + this.tanks[1].writeToNBT(nbt, "t1"); + this.tanks[2].writeToNBT(nbt, "t2"); + nbt.setFloat("prog", progress); + nbt.setInteger("burn", burnTime); + nbt.setInteger("maxBurn", maxBurnTime); + } + + public DirPos[] getSteamPos() { + ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); + ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN); + + return new DirPos[] { + new DirPos(xCoord - dir.offsetX * 2 - rot.offsetX * 2, yCoord, zCoord - dir.offsetZ * 2 - rot.offsetZ * 2, dir.getOpposite()), + new DirPos(xCoord - dir.offsetX * 2 - rot.offsetX, yCoord, zCoord - dir.offsetZ * 2 - rot.offsetZ, dir.getOpposite()) + }; + } + + public DirPos[] getFluidPos() { + ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); + ForgeDirection rot = dir.getRotation(ForgeDirection.DOWN); + + return new DirPos[] { + new DirPos(xCoord + dir.offsetX + rot.offsetX * 3, yCoord, zCoord + dir.offsetZ + rot.offsetZ * 3, rot), + new DirPos(xCoord - dir.offsetX + rot.offsetX * 3, yCoord, zCoord - dir.offsetZ + rot.offsetZ * 3, rot) + }; + } + + public boolean canProcess(RotaryFurnaceRecipe recipe) { + + if(this.burnTime <= 0) return false; + + if(recipe.fluid != null) { + if(this.tanks[0].getTankType() != recipe.fluid.type) return false; + if(this.tanks[0].getFill() < recipe.fluid.fill) return false; + } + + if(tanks[1].getFill() < recipe.steam) return false; + if(tanks[2].getMaxFill() - tanks[2].getFill() < recipe.steam / 100) return false; + + if(this.output != null) { + if(this.output.material != recipe.output.material) return false; + if(this.output.amount + recipe.output.amount > this.maxOutput) return false; + } + + return true; + } + + public void consumeItems(RotaryFurnaceRecipe recipe) { + + for(AStack aStack : recipe.ingredients) { + + for(int i = 0; i < 3; i++) { + ItemStack stack = slots[i]; + if(aStack.matchesRecipe(stack, true) && stack.stackSize >= aStack.stacksize) { + this.decrStackSize(i, aStack.stacksize); + break; + } + } + } + + if(recipe.fluid != null) { + this.tanks[0].setFill(tanks[0].getFill() - recipe.fluid.fill); + } + } + + @Override + public void pollute(PollutionType type, float amount) { + FluidTank tank = type == PollutionType.SOOT ? smoke : type == PollutionType.HEAVYMETAL ? smoke_leaded : smoke_poison; + + int fluidAmount = (int) Math.ceil(amount * 100); + tank.setFill(tank.getFill() + fluidAmount); + + if(tank.getFill() > tank.getMaxFill()) { + int overflow = tank.getFill() - tank.getMaxFill(); + tank.setFill(tank.getMaxFill()); + PollutionHandler.incrementPollution(worldObj, xCoord, yCoord, zCoord, type, overflow / 100F); + this.isVenting = true; + } } - @Override - public long transferFluid(FluidType type, int pressure, long fluid) { - return 0; - } + @Override public int[] getAccessibleSlotsFromSide(int side) { return new int[0]; } + @Override public boolean isItemValidForSlot(int slot, ItemStack stack) { return slot < 3 || slot == 4; } + @Override public boolean canExtractItem(int slot, ItemStack stack, int side) { return false; } + + @Override public boolean isItemValidForSlot(int x, int y, int z, int slot, ItemStack stack) { return slot < 3 || slot == 4; } + @Override public boolean canExtractItem(int x, int y, int z, int slot, ItemStack stack, int side) { return false; } @Override - public long getDemand(FluidType type, int pressure) { - return 0; + public int[] getAccessibleSlotsFromSide(int x, int y, int z, int side) { + BlockPos pos = new BlockPos(x, y, z); + ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); + ForgeDirection rot = dir.getRotation(ForgeDirection.UP); + BlockPos core = new BlockPos(xCoord, yCoord, zCoord); + core.offset(dir, -1); + + //Red + if(pos.equals(core.clone().offset(rot, -2))) return new int[] {0}; + //Yellow + if(pos.equals(core.clone().offset(rot, -1))) return new int[] {1}; + //Green + if(pos.equals(core)) return new int[] {2}; + //Fuel + if(pos.equals(new BlockPos(xCoord, yCoord, zCoord).offset(dir).offset(rot, -1))) return new int[] {4}; + + return new int[] { }; } + + @Override public FluidTank[] getAllTanks() { return new FluidTank[] {tanks[0], tanks[1], tanks[2], smoke}; } + @Override public FluidTank[] getSendingTanks() { return new FluidTank[] {tanks[2], smoke}; } + @Override public FluidTank[] getReceivingTanks() { return new FluidTank[] {tanks[0], tanks[1]}; } + + @Override public Container provideContainer(int ID, EntityPlayer player, World world, int x, int y, int z) { return new ContainerMachineRotaryFurnace(player.inventory, this); } + @Override public Object provideGUI(int ID, EntityPlayer player, World world, int x, int y, int z) { return new GUIMachineRotaryFurnace(player.inventory, this); } } diff --git a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachinePyroOven.java b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachinePyroOven.java index fb5757aef..17c9e8db8 100644 --- a/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachinePyroOven.java +++ b/src/main/java/com/hbm/tileentity/machine/oil/TileEntityMachinePyroOven.java @@ -12,6 +12,7 @@ import com.hbm.inventory.fluid.tank.FluidTank; import com.hbm.inventory.gui.GUIPyroOven; import com.hbm.inventory.recipes.PyroOvenRecipes; import com.hbm.inventory.recipes.PyroOvenRecipes.PyroOvenRecipe; +import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.items.machine.ItemMachineUpgrade.UpgradeType; import com.hbm.lib.Library; import com.hbm.main.MainRegistry; @@ -41,7 +42,7 @@ import net.minecraftforge.common.util.ForgeDirection; public class TileEntityMachinePyroOven extends TileEntityMachinePolluting implements IEnergyReceiverMK2, IFluidStandardTransceiver, IGUIProvider, IUpgradeInfoProvider, IFluidCopiable { public long power; - public static final long maxPower = 1_000_000; + public static final long maxPower = 10_000_000; public boolean isVenting; public boolean isProgressing; public float progress; @@ -61,6 +62,15 @@ public class TileEntityMachinePyroOven extends TileEntityMachinePolluting implem tanks[1] = new FluidTank(Fluids.NONE, 24_000); } + @Override + public void setInventorySlotContents(int i, ItemStack stack) { + super.setInventorySlotContents(i, stack); + + if(stack != null && stack.getItem() instanceof ItemMachineUpgrade && i >= 4 && i <= 5) { + worldObj.playSoundEffect(xCoord + 0.5, yCoord + 0.5, zCoord + 0.5, "hbm:item.upgradePlug", 1.0F, 1.0F); + } + } + @Override public String getName() { return "container.machinePyroOven"; @@ -96,7 +106,7 @@ public class TileEntityMachinePyroOven extends TileEntityMachinePolluting implem PyroOvenRecipe recipe = getMatchingRecipe(); this.progress += 1F / Math.max((recipe.duration - speed * (recipe.duration / 4)) / (overdrive * 2 + 1), 1); this.isProgressing = true; - this.power -= this.getConsumption(speed, powerSaving); + this.power -= this.getConsumption(speed + overdrive * 2, powerSaving); if(progress >= 1F) { this.progress = 0F; diff --git a/src/main/resources/assets/hbm/textures/blocks/machine_shredder_bottom_alt.png b/src/main/resources/assets/hbm/textures/blocks/machine_shredder_bottom_alt.png index be4b6d73cb7d46dab43d1959e4a47778cc93abc5..051390fba70d49952b4f08bcc7b67535ab100e73 100644 GIT binary patch delta 488 zcmVVPRoWQBgfTJvur%J3Bi#I5=EfT(7UMU|?XWsj0HEvYMKj zgoK1QH#c2fU1MWopP!#vT3S+4Qk$Ebm6erLR8&@0R<5qDjEsymH8qfskcfzg|6Kr- zl$8IKRGgfgd3k?%SXfw&j*f3{ZWo27iTZ@Z}S65f7 ztE-KTjh!hs{Qv*}32;bRa{vGizyJUazyWI3i3tDz0L@86K~yMHEl}xtf-n%AaK;TG zicKJZNPtSUw%Yss->eaxKf617d@~C$#t?*2oTPlknXi9I5M@#l-4gPQ$Q9O`V!KHd za>4MVbC|rWiqgWEWuk7{UAHgnEfUbvu4&zZrnOmsUUb9gCJ#4^r3}$)g=aS%4wGvX zWQ0+}Jct>FV!Y_%>9KMe4JCNhc0S*a&gVBu@vghewX27Zy1rc3g5y({3jFIk__1Co zt-z#LYJNzozpC?!iGyW#S5hts^Ih*cP2wmF{3jUx0sqYt=SRv8;{X5v4rN$LW=%~1 eDgXcg2mk;800000(o>TF0000}Z{Pd&gN^Y9%=S&U`KwLV+4nTm1f;~Fzc00&?KEEFTpX%6v4Mb4{(*|w-^MAP^Bb|=E@7oi2I6d$j<$0cES(>K$Yb{8Z$BrcCpb5ufkEvn<&LjfF e?fy^E^So~+W#c{H{Yypw0000q+ diff --git a/src/main/resources/assets/hbm/textures/blocks/machine_shredder_front_alt.png b/src/main/resources/assets/hbm/textures/blocks/machine_shredder_front_alt.png index 7049ae709ad25ae422d5fd665e847552f5fda90d..b8ac2780044fc9192db7310fd4d0dbbf77ee0893 100644 GIT binary patch delta 529 zcmV+s0`C360>T84Bnkm@Qb$4nuFf3kks%v@zW@LZzX3P}QzQTY0li5?K~y+TZIZpJ z>QE4c_fKLH5fR}wx6(?{=kN_gu)A+zdBH+oh*809520@&rhdBOaOrUiTF|HEdPnLz$8h8H*TO<*!XOg7R;%gZaEJz& z$U)zK#B@3>m&=7hp;#>9sd514+!qDkDzY;Ym;e9(01jnXNoGw=04e|g00;m800000 T0Mb*F00000NkvXXu0mjfCVA-S delta 273 zcmV+s0q*|71i=E3B#|)~f589%4#5Gqk!$S$000?uMObuGZ)S9NVRB^vaA9d~bS`dX zbRaY?FfK7LtqKaj0002KNklD*bTbn0JXTLNJbyf;AH|PG3>-)azx+)9mswF#34WGzOYAp*#^GH|$s>#*Rd;bS0 X*{|)ZS4f5c0000<2SrXqu0mjf{Ah75 diff --git a/src/main/resources/assets/hbm/textures/blocks/machine_shredder_side_alt.png b/src/main/resources/assets/hbm/textures/blocks/machine_shredder_side_alt.png index de74959ec696da9a5acb4daf12e56a030801e733..817e0e6b7c6bf07d080dd8706ab639dd5be58a48 100644 GIT binary patch delta 547 zcmV+;0^I$N0@DPLBnkm@Qb$4nuFf3kks%v@zW@LZzX3P}QzQTY0nSN8K~y+TRgyic z8bK6>&(6B;u84?mo1plCV8F&EA%DQeTCDRM1nUbH`bSdcA6VH*f~{Iur;_0Jy{o&< zeRfABc^SuZ-t#f4q+m7RSt{X(rJ_ufvaxKgCDVNZ3Lak44Z`jsoG&&xSp6B6EptU}q&)4hq zbUL}NyW8!eDB5nf`Fy@wt&)(!pH8Rb*|ts1?RJAP#q0o=&}Oq)uh;E%8$k+cFc@?? zol2#0xm<9;`vb*dvET0#g^W+I60BB#tHojgMay5Gf1BRm>*@=KKchgU(`ine&*z9n z`aSVmH(m)+snl}0B$YIvpp4`DKFv(hzu;D37@EFFQuqK>$#~;?$C&+$R{}!tLBO_pL~wf+DG;vXH%5O9M4000hU lSV?A0O#mtY000O800000007bsQ({Su zZ*R|JV8~)%$Yx;3VPJ@jjjd;5YGh??W@BsN;K*iYFXZN~5EQHv6>XK0>X4DKx3`av zkC&I1udlD4C?e9y%Nr~_Ne*ZaXMsm#F#`kNeh_A~U=3CQ3NH3^aSYK2_U*sTcUXbP znYq4|C1ZEd>5TvX-P3Oz7E@dzbJNr3e=1MpqO+A^X~*Qv*xw}G>i=B&G-!5ro5q%V zrJ?V29Td0jx4x$m%CJLYmf=D%whxi}yB5x}-S&a^XoT6`8&u`8WOD#92wV!D45B<;{an^LB{Ts5u%CK8 delta 264 zcmZo-p20LhvYv^7fnmbL3^O3blJ4m1$iT3%pZiZDE0E7w;1OBOz`%C^gc-B0b#ej) zB}-f*N`mv#O3D+9QW**oGxJLH@={9_O!N%&3=P(DaRF5`O!ahe46*Q^+P_h-RY8E2 zH*mKC5GXDTwBEpyyxh#`KbLpJVdp9<2^Va-r(_CH5A~UNoQ?GI7B$i77(m#Gk$iy$`-C3^6 zcEyhM*H``j4pYAcE6m%b-)OR6B~z9u!>ahq+>c diff --git a/src/main/resources/assets/hbm/textures/gui/gui_shredder.png b/src/main/resources/assets/hbm/textures/gui/gui_shredder.png index 34e2e4ea5a7e2bf08a1829fb865e15ace8e09a82..19b774c76f77d5ef938c3d07155c07d4f4dec418 100644 GIT binary patch literal 4108 zcmbVOc{r4P_rK>hVziBsRI*K$r;)V~V;Pw53&I@h`H`<(AN-}5==e81h`~u_R`#OM6DoQ+1^{+8TH#IY12Z^-46kSA`|9WO zEdnl_PB3nb3G2Qy*tlfA&FtIL^GN*8bZY}W!R`5k$jDgIoP7I)n(QwB`J)siBat_v zC9f#wP`gW}8{AK(K8%i?VOzoXzW>Dfomc)Txga>Am$&51?OPVIG06N8Jai-|E4X0F z=GF=I^u4l$*0g%k6GP+b3-bYsKN_Y@`Se=?WQ#;brpqra^L9nU21R38RB8Snsd%GBK_mUK!1L*nBCCplof$USs(L&1O31n7H#? zBCfMY-kbsE{RYXNDD&G92AS&DUBkEzMJncVxfq>5E^lhNrlzJ(x0gCedoviHtOeVp zvwz2xqx;+1HR{gwuL7(EkQ5N$bj*3Wj~ZXzmx;(}(YiRC43HBhj4C+##cW39BV6}! z^p-w-fHHX#(>QF4$Ls3pNvCN5ZQ8>AyR)OCqpe+kHgSG_9Ad>yr)oU~aVis+ZY5Gf zLhO8hV20bvC4T-}MM3k_<9=lUy4>Es>UE4#`iUPJ$sZ9oHGw&PjlXeG zI{{%@szjscai=!rS^vmMKvV+`@=B3y{|=Jk#_)IT(4g8me!^^ zdns$Z{goKGvn%Af&gV~$=$0tkC|BQnPbKlFqbxVg=W3>*bHn!oq@|@9 zEnmJgo0c7}^#4>NBhHdbG7u_LHKnx`0lhi`%v9F?ub%^(rnv(&LsbtCIgwAqOaXt- z$63j5yr?S#5JVh+0T5;PxCGC81x>!EMO{@nQuY!A6ix{_(ghWDCXQ>|sY~Xra#4M# z`pNmsJpNZ*3tIUt%tQ>vRJQT;lXplU({H*%Lu%P)ta>d&oAaW#yuDN^rw;?9_}f;j z8t`whJz&AS*yd!~>Xr4-4}!|F%&|*N55$1Xr^{;T>a~WmPFRH;5a&@D>|sY^-Nb5n7J;b*39n$M{3ICo)PR}ZeL$ew)442pC|7~ zt;&Le{i?g|fr)3%zTs87X0Ejs3qC9{53O+hFUl$SHj(hyqh;m{s-{`A?) zqJVwZUAB}03`oAIuwrfr;66h1cg_>|HlO@`{_wLlSWluo!tD>vHMMk)RAyD+Tvyf4 zhm+&CGEba08)%J|iTqp20sIZEk#L?-Mt2PRn$LF-y{bZWm=RrMvRrGK6xR63AER~@ z&v8Iq*6>5v%(sTd_Z>@LX9}}K7pdtkcB7}wJ0)bpXI2MMQa&J3OT@$9mA|pRAw_X1 z6sg@vT{E`zD7BB>24 z$6t9q5$(x)C68bIF~%)0Z(5)F?Be=eVpadBNPn?9z1(t6N?-0COy`0qTd581w$H1^ zooSO-shYs;AKxxQ;EZSPY$QL?gwLVIkhszO6Ol$$D(I5mXg;thF{zR@_$nt_+TWXZt1TRcvQPyd@e_5}(!52sOJ#M*M>cWl9F(`W+ zw3Mk2=w$b5RkDOUNWxKGt9b#sZ!5M7FLXBFJXbcu_x#0_3sihFol|h>3(K zlQVBr!zz3PpC8gtZpe z>p<0F26`eITqRN#Y9U43Tz?GY00n$&LP7=szY#Ne4MpHxtUjR83D?}S?J|i(au^3s zJmriw#^HuZ%H#(Rwgw6K%k&+P^x4pCNLk`4yHR3R_eMbKL50$v2p<(Wf4G?I52V}C z{lPMBB$6F8`)C-22Zwr;FV=P!-er1)MyEZh4m6$-eH=&3V<0L0W`_C1;hspkeHJ`} zm~TBqDcThpV$?srl4d+uF?nL-wM_q#5p{=s(q6e8Q@N*vH8Y76F#PC#m*b)~JyERk zyUUmmw|;%(`u3;b+^K4?E6OBEDKaOSyry-=VT`YGUV1E`J6_ttrV`m=Jtl^`EW3E7 zo>mRE?E2E|D``5uc4ycj%i_k$O*f6??*Kt5;>(5l%i7%{zK2I7WEOE-IdwCOKj&9t zv`*W?0$&&+CTa{P+IO#i3F`^0eNlf{DWmqM0;2bh%U5eJ3g|@NfqQm#ryR4-1xk-* z;%kC^3()NMBoeW${mD_$1>MCXct>sXJ zb30kt+!0|5lO$96Fl2*bA!O_9n3H~A=T>ij;5s1KHk!9sT#~7B?Qaa3;z<*Fg*aGgWOh<- zT3b54IaWq`P%Djq#|M`z_kZMB9ts*?w(`Yz?gJM)84NzlUaw!8l}=E$k%jaGSO}H( zx*}cfjs$}Pxr+AymtHuI@!<6OS1TwPt*Cl$-2)rq(JnN-q(cy3fmLX@37T}{2Ktf1 z%NY^&*vI`iOUeeQEFvPJEgOGDJM9Bh1dLOl{EE1Yy71E9dG#^Un=JyhfMWJ0(>(xN zfv&CV+hBy?Q*+g_|43R4*&*l!Yw;igJ`0r?u`5Uc>K5x7aN>T;0qyt^*A_$A2mEMw z_ZCYa#+iw5Q$`DTlS@9yo8QvE1Dj2y#u2NRhF0ZnHX-ioa{%faF|vZgAf)28`lUZB1a%bSfX*s1lbFEHGKWI=}}HB>?0*S|ViP zDkDPUgs7~HzDvSU6p*vzoVP9|9^~g0-X3~3Fly$AzQnJfYJ+-s^3cX@RtHHG4}QeY z-t}n@>Vp|UkTd=_n0GK*JH6vO75&V&wmuG5Dq)6Qi^D+)L!-6R2$w^63wK;~52o6P z-jE^7V8L$U9Oq~NykuoDypPv-*8z~fpa|UT+{)gl*33Mf8=|BrM&@+!3R zuKoVP$8LU>tTf&RBi~7cQkMuIlV7e|7|BW|y3qR5Gcz*gzJvE$F=SR>pJSm4__zV? pX0)jHM_=0+U`%`+_^;2!xrkRtw&BQT0NzJTo~a2W>IH!xoX3;Mw0HOzenj=w-$EyQ1k^_L;(5+q&)@oCsx1sN5P zCWWn)AiMy{=V0Lr2zdhj9T4;kBIK~*F08r(kxj6)8F-I?-wNJJ;PygH9aN;lu?&!I zgVU){l>(=>Ky?yaS`SwfpmsG}kAs>-IJXIUzk@zDsN7+I1%oayG#5tZz^FZZm4xT7udFZmoibWpF17nwCIw1jxhTVJJKff~NuSd?9ptL$?>S@gVmwWFLXNBG|Pb zb`-fUrG^o|+>Hp)uS%Fvg%EpKnMHC*& zNA3P!9>D*o%S64_6Z%J{0MKs|KkPO4ybKwqiF}ue_#5Lz;+W($AdE>&5;-KT5t+|( zaCC5TJWHb?Cu&!KkC$M}%Aw-i)IJu&w3{LkbMiDNvDf07nusBSUkU|UHmgwcD zOllWwF~l!E%Bi^H636dZ%yEyG8ledf>ib-ZQu`Mj_GpyW4X~q4mx#iD+%UV>U}UDb zAM?F`!Jd$uFwB4XlvrK^@))v`#pq%cy*4YenCvG4T(E?13fk!R1tYHv+?>mA%1cNEI?f;K2i!|&H|N)-m+9-1zQI&&nu11V z;`@$--5nJ*lK;BN^@qZcoFL4d?d5xnekFUu>@=F&?mL3!=+gBlhgWR#lV&Q(6XdfT zdv&OIF`9T|hWk_u$nWmQjcp zw@%HTXO#AR_E!%JbIL@L{OH+aZ zr0+O&@Rr+ClxDM-6Uvq^IEz|ynRL&|`7CnICC#)^*$uT;ur?!)M`D>St%ybz{$$foo{zfG;fLR*lNQ#8T&D#6YKc$&rxvU=i0*DGUR^8qmqnT% z-YI2s7;LV#5HkioJ*%fVpfEUqDx9ID_Du0hbJyED>)niKM@Nae*Mv9Gw6PY$+GQKk zOLF1@SJ0Fu7Gi6`!nw?J9n;mL=rRR2)uW9~`%zUQ>Q-0FVupl7=VnYt3%)k^ILoql zZ(cBD#szXY)Yb{-hWmoguTqgFETz49H_`5zRd!sUu|AJ=Bc4_Jb6e-g=wJY;Yl?a9 zw0-y@g~C(r{d!aGw9R2{Ol1_7d??XSc4g+Kl0DZHCu!>ZbytFN`69h7ez?@~=|Tm}vjdFj${Cex*V>S5h{>7&!s%_m@(Fdz1qy%BP;*Mfe<|&Q%7D_ylj!K`JM412uKOWVxgH4}sWgz8 zC_a6mq!GCWT_?Xcapbi!m9fNHAJc!d?J;_?BA%AW(k=zbbcqlb@b=^)e6mhsOuQ48 zE8CBx>LR3itaE>AKV#$=%CY7edE6F-%%i$B(uQ#pluY~@Z0$*r-k1a}pRtWT;()cF zg!9>0i=GB^v}mCsEesrM$<=gJQy8Jl4YGBL8sB5b(jAiZm>o?(2TNZWEZtZj<#q>? zjxaRW=;1&af33ktHi}Ng(yEl3jpnuGL_ygP7HPqE4*w8_mR zth%N6p`~&Wz5AOGk^8!SU3X?eTBvfm|3 zB5tsyOgBI_g!=h1RA#1yy%uM+h|;1=ix4e#Y4JddNm_i+;-wa3Exsb~DXpQ6l&tOICsqc(>B>v6RSVPu=r!&h!+tF23O`=!nVJYZQl+bGvh@(F~)0I2aMF^?f*K) zi%#NfO^gm>;l=Iv*Mh3S?M9S0;+mgyja$M<4`Y?vulF+}d-mR>VryN4sGMt&TzLL~ zL26ApsE?;sXT!zAOiK9+I|~?!*ZcP_?KSw<@i__;K~{DGdjp^m;2Y{w#f{GT2R*iL AJ^%m! diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_rotary_furnace.png index 920a5871c7978daed2dba246d5bd919ef5785a32..54854a28db9053c51b370d3a8d581617afda9be1 100644 GIT binary patch literal 5655 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 QUwR?kYkJywn$}PL1D02fI{*Lx literal 4529 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 G`u_k27g8Mn literal 5344 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 Ef;3}}N&o-= delta 310 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 HoNxLc!C$f+ From ad3c4e20ca68a02c211b39dc086c3f8b6af8a40f Mon Sep 17 00:00:00 2001 From: Boblet Date: Mon, 30 Sep 2024 16:55:43 +0200 Subject: [PATCH 36/63] it's fucking lego! --- src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java | 2 +- .../java/com/hbm/items/weapon/sedna/factory/GunFactory.java | 2 +- .../com/hbm/items/weapon/sedna/factory/GunFactoryClient.java | 4 ++++ .../hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java | 2 +- src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java | 5 +++++ 5 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 886bdb89e..8f3169d6d 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -65,7 +65,7 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public static float aimingProgress; /** NEVER ACCESS DIRECTLY - USE GETTER */ - private GunConfig config_DNA; + public GunConfig config_DNA; public GunConfig getConfig(ItemStack stack) { return WeaponUpgradeManager.eval(config_DNA, stack, O_GUNCONFIG, this); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 30e1c9c74..dcc1aa49a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -35,7 +35,7 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) + .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 8d584f367..a4b66a0c8 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -8,6 +8,7 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.render.item.weapon.sedna.ItemRenderDebug; import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; @@ -23,6 +24,9 @@ public class GunFactoryClient { //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); + //HUDS + ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 1f39386a4..1c4668282 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -28,7 +28,7 @@ public class XFactoryBlackPowder { BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) diff --git a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java index e04fa11a2..8762d0d42 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java @@ -7,10 +7,15 @@ public class BusAnimationKeyframe { //it's an enum so stuff like accelerated animations between just //two frames could be implemented public static enum IType { + /** Teleport */ CONSTANT, + /** Linear interpolation */ LINEAR, + /** "Sine wave up", quarter of a sine peak that goes from neutral to rising */ SIN_UP, + /** "Sine wave down", quarter of a sine peak that goes from rising back to neutral */ SIN_DOWN, + /** "Sine wave", first half of a sine peak, accelerating up and then decelerating, makes for smooth movement */ SIN_FULL, } From 63926ccd4a52488b66d9f5b94b1aa9b49bbdfc7e Mon Sep 17 00:00:00 2001 From: abel1502 Date: Mon, 30 Sep 2024 23:04:14 +0300 Subject: [PATCH 37/63] Add strand caster unclogging upgrade --- .../ContainerMachineStrandCaster.java | 14 +++- src/main/java/com/hbm/items/ModItems.java | 3 + .../hbm/items/machine/ItemMachineUpgrade.java | 6 ++ .../java/com/hbm/main/CraftingManager.java | 2 + .../TileEntityMachineStrandCaster.java | 63 +++++++++++------- src/main/resources/assets/hbm/lang/de_DE.lang | 1 + src/main/resources/assets/hbm/lang/en_US.lang | 1 + src/main/resources/assets/hbm/lang/it_IT.lang | 1 + src/main/resources/assets/hbm/lang/pl_PL.lang | 1 + src/main/resources/assets/hbm/lang/ru_RU.lang | 1 + src/main/resources/assets/hbm/lang/zh_CN.lang | 1 + .../gui/processing/gui_strand_caster.png | Bin 11637 -> 12535 bytes .../hbm/textures/items/upgrade_unclog.png | Bin 0 -> 759 bytes 13 files changed, 67 insertions(+), 27 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/items/upgrade_unclog.png diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java b/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java index 6c503f6ce..8850edf6f 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java @@ -2,6 +2,9 @@ package com.hbm.inventory.container; import com.hbm.inventory.SlotCraftingOutput; import com.hbm.inventory.SlotNonRetarded; +import com.hbm.inventory.SlotUpgrade; +import com.hbm.items.ModItems; +import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.tileentity.machine.TileEntityMachineStrandCaster; import com.hbm.util.InventoryUtil; import net.minecraft.entity.player.EntityPlayer; @@ -27,6 +30,9 @@ public class ContainerMachineStrandCaster extends Container { } } + //unstacking upgrade + this.addSlotToContainer(new SlotUpgrade(this.caster, 7, 57, 25)); + for (int i = 0; i < 3; i++) { for (int j = 0; j < 9; j++) { @@ -48,13 +54,17 @@ public class ContainerMachineStrandCaster extends Container { ItemStack originalStack = slot.getStack(); stack = originalStack.copy(); - if (index <= 6) { - if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 7, this.inventorySlots.size(), true)) { + if (index <= 7) { + if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 8, this.inventorySlots.size(), true)) { return null; } slot.onSlotChange(originalStack, stack); + } else if (stack.getItem() == ModItems.upgrade_unclog) { + // Doesn't matter if it suceeds + this.mergeItemStack(originalStack, 7, 8, false); + return null; } else if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 1, 2, false)) { return null; } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index f14c4b01a..c1f57f7f0 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1849,6 +1849,7 @@ public class ModItems { public static Item upgrade_gc_speed; public static Item upgrade_5g; public static Item upgrade_stack; + public static Item upgrade_unclog; public static Item upgrade_ejector; public static Item ingot_euphemium; @@ -4401,6 +4402,7 @@ public class ModItems { upgrade_gc_speed = new ItemMachineUpgrade().setUnlocalizedName("upgrade_gc_speed").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_gc_speed"); upgrade_5g = new ItemMachineUpgrade().setUnlocalizedName("upgrade_5g").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_5g"); upgrade_stack = new ItemMetaUpgrade(3).setUnlocalizedName("upgrade_stack").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_stack"); + upgrade_unclog = new ItemMachineUpgrade().setUnlocalizedName("upgrade_unclog").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_unclog"); upgrade_ejector = new ItemMetaUpgrade(3).setUnlocalizedName("upgrade_ejector").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_ejector"); wand = new ItemWand().setUnlocalizedName("wand_k").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setFull3D().setTextureName(RefStrings.MODID + ":wand"); @@ -6389,6 +6391,7 @@ public class ModItems { GameRegistry.registerItem(upgrade_gc_speed, upgrade_gc_speed.getUnlocalizedName()); GameRegistry.registerItem(upgrade_5g, upgrade_5g.getUnlocalizedName()); GameRegistry.registerItem(upgrade_stack, upgrade_stack.getUnlocalizedName()); + GameRegistry.registerItem(upgrade_unclog, upgrade_unclog.getUnlocalizedName()); GameRegistry.registerItem(upgrade_ejector, upgrade_ejector.getUnlocalizedName()); //Machine Templates diff --git a/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java b/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java index 99619f968..9eb813a43 100644 --- a/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java +++ b/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java @@ -107,6 +107,12 @@ public class ItemMachineUpgrade extends Item { list.add("Allows for total isotopic separation of HEUF6"); list.add(EnumChatFormatting.YELLOW + "also your centrifuge goes sicko mode"); } + + if(this == ModItems.upgrade_unclog) { + list.add(EnumChatFormatting.RED + "Strand Caster Upgrade"); + list.add("Stops the buffer from constantly clogging up"); + list.add("by allowing to periodically drain its contents"); + } } public static enum UpgradeType { diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index cce77298b..9ddedab8e 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -14,6 +14,7 @@ import com.hbm.config.GeneralConfig; import com.hbm.crafting.*; import com.hbm.crafting.handlers.*; import com.hbm.inventory.OreDictManager; +import com.hbm.inventory.OreDictManager.DictFrame; import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.material.MaterialShapes; import com.hbm.inventory.material.Mats; @@ -795,6 +796,7 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 0), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_PNEUMATIC), 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 1), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_HYDRAULIC), 'U', new ItemStack(ModItems.upgrade_stack, 1, 0) }); addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 2), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CHIP), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_ELECTRIC), 'U', new ItemStack(ModItems.upgrade_stack, 1, 1) }); + addRecipeAuto(new ItemStack(ModItems.upgrade_unclog, 1), new Object[] { " B ", "TUT", " B ", 'B', new ItemStack(ModItems.tank_steel), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_PNEUMATIC), 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 0), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_copper, 'P', ModItems.motor, 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 1), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_gold, 'P', ModItems.motor, 'U', new ItemStack(ModItems.upgrade_ejector, 1, 0) }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 2), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_saturnite, 'P', ModItems.motor, 'U', new ItemStack(ModItems.upgrade_ejector, 1, 1) }); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java index d27f59aac..b67d2d8bb 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java @@ -35,6 +35,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase public FluidTank water; public FluidTank steam; + private long lastCastTick = 0; public String getName() { return "container.machineStrandCaster"; @@ -46,7 +47,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase } public TileEntityMachineStrandCaster() { - super(7); + super(8); water = new FluidTank(Fluids.WATER, 64_000); steam = new FluidTank(Fluids.SPENTSTEAM, 64_000); } @@ -81,31 +82,41 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase ItemMold.Mold mold = this.getInstalledMold(); if(canProcess()) { - - int itemsCasted = Math.min(amount / mold.getCost(), 9); - - for(int j = 0; j < itemsCasted; j++) { - this.amount -= mold.getCost(); - - ItemStack out = mold.getOutput(type); - - for(int i = 1; i < 7; i++) { - if(slots[i] == null) { - slots[i] = out.copy(); - break; - } - - if(slots[i].isItemEqual(out) && slots[i].stackSize + out.stackSize <= out.getMaxStackSize()) { - slots[i].stackSize += out.stackSize; - break; - } - - } + int minAmount = mold.getCost() * 9; + + // The upgrade makes it flush the buffers after 10 seconds of inactivity + if(slots[7] != null && slots[7].getItem() == ModItems.upgrade_unclog && worldObj.getWorldTime() >= lastCastTick + 200) { + minAmount = mold.getCost(); } - markChanged(); - water.setFill(water.getFill() - getWaterRequired() * itemsCasted); - steam.setFill(steam.getFill() + getWaterRequired() * itemsCasted); + if(this.amount >= minAmount) { + int itemsCasted = amount / mold.getCost(); + + for(int j = 0; j < itemsCasted; j++) { + this.amount -= mold.getCost(); + + ItemStack out = mold.getOutput(type); + + for(int i = 1; i < 7; i++) { + if(slots[i] == null) { + slots[i] = out.copy(); + break; + } + + if(slots[i].isItemEqual(out) && slots[i].stackSize + out.stackSize <= out.getMaxStackSize()) { + slots[i].stackSize += out.stackSize; + break; + } + + } + } + markChanged(); + + water.setFill(water.getFill() - getWaterRequired() * itemsCasted); + steam.setFill(steam.getFill() + getWaterRequired() * itemsCasted); + + lastCastTick = worldObj.getWorldTime(); + } } } @@ -120,7 +131,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase public boolean canProcess() { ItemMold.Mold mold = this.getInstalledMold(); - if(type != null && mold != null && this.amount >= mold.getCost() * 9 && mold.getOutput(type) != null) { + if(type != null && mold != null && mold.getOutput(type) != null) { for(int i = 1; i < 7; i++) { if(slots[i] == null || slots[i].isItemEqual(mold.getOutput(type)) && slots[i].stackSize + mold.getOutput(type).stackSize <= mold.getOutput(type).getMaxStackSize()) return water.getFill() >= getWaterRequired() && steam.getFill() < steam.getMaxFill(); @@ -270,6 +281,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase super.writeToNBT(nbt); water.writeToNBT(nbt, "w"); steam.writeToNBT(nbt, "s"); + nbt.setLong("t", lastCastTick); } @Override @@ -277,6 +289,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase super.readFromNBT(nbt); water.readFromNBT(nbt, "w"); steam.readFromNBT(nbt, "s"); + lastCastTick = nbt.getLong("t"); } @Override diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 89177e7b7..fa95fdc2c 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -3515,6 +3515,7 @@ item.upgrade_speed_3.name=Geschwindigkeitsupgrade Mk.III item.upgrade_stack_1.name=Stapelupgrade Mk.I item.upgrade_stack_2.name=Stapelupgrade Mk.II item.upgrade_stack_3.name=Stapelupgrade Mk.III +item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Maschinenupgrade-Vorlage item.volcanic_pickaxe.name=Geschmolzene Spitzhacke item.wand_d.name=Debug-Zauberstab diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index be8bb0358..b91a80313 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -4532,6 +4532,7 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III +item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.volcanic_axe.name=Molten Axe item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/it_IT.lang b/src/main/resources/assets/hbm/lang/it_IT.lang index 1143e0318..acac9eb4a 100644 --- a/src/main/resources/assets/hbm/lang/it_IT.lang +++ b/src/main/resources/assets/hbm/lang/it_IT.lang @@ -4711,6 +4711,7 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III +item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.volcanic_axe.name=Molten Axe item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/pl_PL.lang b/src/main/resources/assets/hbm/lang/pl_PL.lang index 1307d0b8b..3cdfabd06 100644 --- a/src/main/resources/assets/hbm/lang/pl_PL.lang +++ b/src/main/resources/assets/hbm/lang/pl_PL.lang @@ -4137,6 +4137,7 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III +item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.v1.name=V1 item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/ru_RU.lang b/src/main/resources/assets/hbm/lang/ru_RU.lang index 93e77b657..a5b9d9a4a 100644 --- a/src/main/resources/assets/hbm/lang/ru_RU.lang +++ b/src/main/resources/assets/hbm/lang/ru_RU.lang @@ -3965,6 +3965,7 @@ item.upgrade_ejector_3.name=Улучшение извлекателя "Скор item.upgrade_stack_1.name=Улучшение извлекателя "Количество стака" I уровня item.upgrade_stack_2.name=Улучшение извлекателя "Количество стака" II уровня item.upgrade_stack_3.name=Улучшение извлекателя "Количество стака" III уровня +item.upgrade_unclog.name=Улучшение машины непрерывного литья "Частичный слив" item.fusion_core.name=Ядерный блок item.energy_core.name=Импровизированный энергоблок diff --git a/src/main/resources/assets/hbm/lang/zh_CN.lang b/src/main/resources/assets/hbm/lang/zh_CN.lang index 3190e942c..511d554b6 100644 --- a/src/main/resources/assets/hbm/lang/zh_CN.lang +++ b/src/main/resources/assets/hbm/lang/zh_CN.lang @@ -4407,6 +4407,7 @@ item.upgrade_speed_3=三级红色机器升级 item.upgrade_stack_1=一级堆叠弹出升级 item.upgrade_stack_2=二级堆叠弹出升级 item.upgrade_stack_3=三级堆叠弹出升级 +item.upgrade_unclog.name=Unclogging upgrade item.upgrade_template=机器升级模板 item.volcanic_axe=熔岩斧 item.volcanic_pickaxe=熔岩镐 diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png index 2af67e09eb749ed526c61c2ef58bd3f7ff5bd5e1..de357deddd8ca359bb3ec47fac1e24a7ceff1d2c 100644 GIT binary patch literal 12535 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 F{{kb*75xAJ literal 11637 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 diff --git a/src/main/resources/assets/hbm/textures/items/upgrade_unclog.png b/src/main/resources/assets/hbm/textures/items/upgrade_unclog.png new file mode 100644 index 0000000000000000000000000000000000000000..9ff526c640cac058ffb9286d08404125485d5b3c GIT binary patch literal 759 zcmV zG|^3f5&Q||SktqUF>0>&8$7yRhjg#n_x@ciDZ^3VX%rq+mR%HxFigTNY`oL9Bv zHk__Q$DNh16W@|gw%0V_`50Q`&~^pQi`&IW0|{rm;O1t7nH zoVWa^0a%e~^iKwc_l*q8XJ#{W?LP`uROV<6X9sF1GpI^RFhsIn0Gjrkf$5}848xv9 zM-kQnH6J^R;9j_J0V^A%=j6$Im|+0(D=q+Ye*KEIV7*KrFZ{2t{!d6FG5~o2r00K# z(tj3^7r@aIZh)fb=kr@&`tIA0U|LJZ6h$871zu)gELc2-c;l3;G)gqWG%5@8WA#SV zGl)JGcq{C&ffe^sz1@uIMFD77KU_wr|APJE3Kp5s!7@KGS^4o4H pXbwbT;{uqu5g0HazhSU(006;%sgg@XZ_@w(002ovPDHLkV1fZvPM81y literal 0 HcmV?d00001 From 6cddb3e2387574602b5136de23417f759ccd81d9 Mon Sep 17 00:00:00 2001 From: Bob Date: Mon, 30 Sep 2024 22:12:21 +0200 Subject: [PATCH 38/63] NEI stuff, textures --- .../handler/nei/ArcFurnaceFluidHandler.java | 2 +- .../handler/nei/ArcFurnaceSolidHandler.java | 2 +- .../com/hbm/handler/nei/ArcWelderHandler.java | 2 +- .../com/hbm/handler/nei/AshpitHandler.java | 2 +- .../com/hbm/handler/nei/BoilingHandler.java | 2 +- .../com/hbm/handler/nei/CokingHandler.java | 2 +- .../hbm/handler/nei/CombinationHandler.java | 2 +- .../handler/nei/ElectrolyserFluidHandler.java | 2 +- .../handler/nei/ElectrolyserMetalHandler.java | 2 +- .../handler/nei/ExposureChamberHandler.java | 2 +- .../hbm/handler/nei/FractioningHandler.java | 2 +- .../hbm/handler/nei/LiquefactionHandler.java | 2 +- .../com/hbm/handler/nei/MixerHandler.java | 2 +- .../com/hbm/handler/nei/OutgasserHandler.java | 2 +- .../java/com/hbm/handler/nei/PyroHandler.java | 2 +- .../hbm/handler/nei/RotaryFurnaceHandler.java | 62 ++++++++++++++++++ .../com/hbm/handler/nei/SawmillHandler.java | 2 +- .../handler/nei/SolderingStationHandler.java | 2 +- .../handler/nei/SolidificationHandler.java | 2 +- .../hbm/handler/nei/ZirnoxRecipeHandler.java | 2 +- src/main/java/com/hbm/items/ModItems.java | 6 ++ src/main/java/com/hbm/main/NEIRegistry.java | 1 + .../TileEntityMachineRotaryFurnace.java | 9 ++- .../assets/hbm/textures/items/ammo.png | Bin 7407 -> 11221 bytes .../hbm/textures/items/chem_icon_SATURN.png | Bin 369 -> 366 bytes .../hbm/textures/items/ingot_saturnite.png | Bin 390 -> 317 bytes .../hbm/textures/items/plate_saturnite.png | Bin 375 -> 310 bytes 27 files changed, 92 insertions(+), 24 deletions(-) create mode 100644 src/main/java/com/hbm/handler/nei/RotaryFurnaceHandler.java diff --git a/src/main/java/com/hbm/handler/nei/ArcFurnaceFluidHandler.java b/src/main/java/com/hbm/handler/nei/ArcFurnaceFluidHandler.java index 228cb786c..b7290eedb 100644 --- a/src/main/java/com/hbm/handler/nei/ArcFurnaceFluidHandler.java +++ b/src/main/java/com/hbm/handler/nei/ArcFurnaceFluidHandler.java @@ -6,7 +6,7 @@ import com.hbm.inventory.recipes.ArcFurnaceRecipes; public class ArcFurnaceFluidHandler extends NEIUniversalHandler { public ArcFurnaceFluidHandler() { - super("Arc Furnace (Fluid)", ModBlocks.machine_arc_furnace, ArcFurnaceRecipes.getFluidRecipes()); + super(ModBlocks.machine_arc_furnace.getLocalizedName(), ModBlocks.machine_arc_furnace, ArcFurnaceRecipes.getFluidRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ArcFurnaceSolidHandler.java b/src/main/java/com/hbm/handler/nei/ArcFurnaceSolidHandler.java index b2b21ffd9..7345e4f72 100644 --- a/src/main/java/com/hbm/handler/nei/ArcFurnaceSolidHandler.java +++ b/src/main/java/com/hbm/handler/nei/ArcFurnaceSolidHandler.java @@ -6,7 +6,7 @@ import com.hbm.inventory.recipes.ArcFurnaceRecipes; public class ArcFurnaceSolidHandler extends NEIUniversalHandler { public ArcFurnaceSolidHandler() { - super("Arc Furnace (Solid)", ModBlocks.machine_arc_furnace, ArcFurnaceRecipes.getSolidRecipes()); + super(ModBlocks.machine_arc_furnace.getLocalizedName(), ModBlocks.machine_arc_furnace, ArcFurnaceRecipes.getSolidRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ArcWelderHandler.java b/src/main/java/com/hbm/handler/nei/ArcWelderHandler.java index e598840fc..b1eb411bf 100644 --- a/src/main/java/com/hbm/handler/nei/ArcWelderHandler.java +++ b/src/main/java/com/hbm/handler/nei/ArcWelderHandler.java @@ -15,7 +15,7 @@ import net.minecraft.item.ItemStack; public class ArcWelderHandler extends NEIUniversalHandler { public ArcWelderHandler() { - super("Arc Welder", ModBlocks.machine_arc_welder, ArcWelderRecipes.getRecipes()); + super(ModBlocks.machine_arc_welder.getLocalizedName(), ModBlocks.machine_arc_welder, ArcWelderRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/AshpitHandler.java b/src/main/java/com/hbm/handler/nei/AshpitHandler.java index d7cf8af20..6e4313a84 100644 --- a/src/main/java/com/hbm/handler/nei/AshpitHandler.java +++ b/src/main/java/com/hbm/handler/nei/AshpitHandler.java @@ -17,7 +17,7 @@ import net.minecraft.item.ItemStack; public class AshpitHandler extends NEIUniversalHandler { public AshpitHandler() { - super("Ashpit", ModBlocks.machine_ashpit, getRecipes()); + super(ModBlocks.machine_ashpit.getLocalizedName(), ModBlocks.machine_ashpit, getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/BoilingHandler.java b/src/main/java/com/hbm/handler/nei/BoilingHandler.java index a048cfb44..0ac8427c8 100644 --- a/src/main/java/com/hbm/handler/nei/BoilingHandler.java +++ b/src/main/java/com/hbm/handler/nei/BoilingHandler.java @@ -13,7 +13,7 @@ import com.hbm.items.machine.ItemFluidIcon; public class BoilingHandler extends NEIUniversalHandler { public BoilingHandler() { - super("Boiler", ModBlocks.machine_boiler, generateRecipes()); + super(ModBlocks.machine_boiler.getLocalizedName(), ModBlocks.machine_boiler, generateRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/CokingHandler.java b/src/main/java/com/hbm/handler/nei/CokingHandler.java index a0227147e..41d0c72ce 100644 --- a/src/main/java/com/hbm/handler/nei/CokingHandler.java +++ b/src/main/java/com/hbm/handler/nei/CokingHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.CokerRecipes; public class CokingHandler extends NEIUniversalHandler { public CokingHandler() { - super("Coking", ModBlocks.machine_coker, CokerRecipes.getRecipes()); + super(ModBlocks.machine_coker.getLocalizedName(), ModBlocks.machine_coker, CokerRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/CombinationHandler.java b/src/main/java/com/hbm/handler/nei/CombinationHandler.java index 0c07afbbc..b303a2b53 100644 --- a/src/main/java/com/hbm/handler/nei/CombinationHandler.java +++ b/src/main/java/com/hbm/handler/nei/CombinationHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.CombinationRecipes; public class CombinationHandler extends NEIUniversalHandler { public CombinationHandler() { - super("Combination Furnace", ModBlocks.furnace_combination, CombinationRecipes.getRecipes()); + super(ModBlocks.furnace_combination.getLocalizedName(), ModBlocks.furnace_combination, CombinationRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ElectrolyserFluidHandler.java b/src/main/java/com/hbm/handler/nei/ElectrolyserFluidHandler.java index 11af20db8..5072b1bfb 100644 --- a/src/main/java/com/hbm/handler/nei/ElectrolyserFluidHandler.java +++ b/src/main/java/com/hbm/handler/nei/ElectrolyserFluidHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.ElectrolyserFluidRecipes; public class ElectrolyserFluidHandler extends NEIUniversalHandler { public ElectrolyserFluidHandler() { - super("Electrolysis", ModBlocks.machine_electrolyser, ElectrolyserFluidRecipes.getRecipes()); + super(ModBlocks.machine_electrolyser.getLocalizedName(), ModBlocks.machine_electrolyser, ElectrolyserFluidRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ElectrolyserMetalHandler.java b/src/main/java/com/hbm/handler/nei/ElectrolyserMetalHandler.java index f1d5b6e68..b695f86b9 100644 --- a/src/main/java/com/hbm/handler/nei/ElectrolyserMetalHandler.java +++ b/src/main/java/com/hbm/handler/nei/ElectrolyserMetalHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.ElectrolyserMetalRecipes; public class ElectrolyserMetalHandler extends NEIUniversalHandler { public ElectrolyserMetalHandler() { - super("Electrolysis", ModBlocks.machine_electrolyser, ElectrolyserMetalRecipes.getRecipes()); + super(ModBlocks.machine_electrolyser.getLocalizedName(), ModBlocks.machine_electrolyser, ElectrolyserMetalRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ExposureChamberHandler.java b/src/main/java/com/hbm/handler/nei/ExposureChamberHandler.java index 4969763e4..a9f16bb50 100644 --- a/src/main/java/com/hbm/handler/nei/ExposureChamberHandler.java +++ b/src/main/java/com/hbm/handler/nei/ExposureChamberHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.ExposureChamberRecipes; public class ExposureChamberHandler extends NEIUniversalHandler { public ExposureChamberHandler() { - super("Exposure Chamber", ModBlocks.machine_exposure_chamber, ExposureChamberRecipes.getRecipes()); + super(ModBlocks.machine_exposure_chamber.getLocalizedName(), ModBlocks.machine_exposure_chamber, ExposureChamberRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/FractioningHandler.java b/src/main/java/com/hbm/handler/nei/FractioningHandler.java index 158ab9b4d..fb54c4d51 100644 --- a/src/main/java/com/hbm/handler/nei/FractioningHandler.java +++ b/src/main/java/com/hbm/handler/nei/FractioningHandler.java @@ -6,7 +6,7 @@ import com.hbm.inventory.recipes.FractionRecipes; public class FractioningHandler extends NEIUniversalHandler { public FractioningHandler() { - super("Fractioning", ModBlocks.machine_fraction_tower, FractionRecipes.getFractionRecipesForNEI()); + super(ModBlocks.machine_fraction_tower.getLocalizedName(), ModBlocks.machine_fraction_tower, FractionRecipes.getFractionRecipesForNEI()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/LiquefactionHandler.java b/src/main/java/com/hbm/handler/nei/LiquefactionHandler.java index b3f31e9cb..5d0398d4c 100644 --- a/src/main/java/com/hbm/handler/nei/LiquefactionHandler.java +++ b/src/main/java/com/hbm/handler/nei/LiquefactionHandler.java @@ -6,7 +6,7 @@ import com.hbm.inventory.recipes.LiquefactionRecipes; public class LiquefactionHandler extends NEIUniversalHandler { public LiquefactionHandler() { - super("Liquefaction", ModBlocks.machine_liquefactor, LiquefactionRecipes.getRecipes()); + super(ModBlocks.machine_liquefactor.getLocalizedName(), ModBlocks.machine_liquefactor, LiquefactionRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/MixerHandler.java b/src/main/java/com/hbm/handler/nei/MixerHandler.java index 320cde187..b93ff9ca1 100644 --- a/src/main/java/com/hbm/handler/nei/MixerHandler.java +++ b/src/main/java/com/hbm/handler/nei/MixerHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.MixerRecipes; public class MixerHandler extends NEIUniversalHandler { public MixerHandler() { - super("Mixer", ModBlocks.machine_mixer, MixerRecipes.getRecipes()); + super(ModBlocks.machine_mixer.getLocalizedName(), ModBlocks.machine_mixer, MixerRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/OutgasserHandler.java b/src/main/java/com/hbm/handler/nei/OutgasserHandler.java index e3965aea1..6a7575609 100644 --- a/src/main/java/com/hbm/handler/nei/OutgasserHandler.java +++ b/src/main/java/com/hbm/handler/nei/OutgasserHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.OutgasserRecipes; public class OutgasserHandler extends NEIUniversalHandler { public OutgasserHandler() { - super("Irradiation", ModBlocks.rbmk_outgasser, OutgasserRecipes.getRecipes()); + super(ModBlocks.rbmk_outgasser.getLocalizedName(), ModBlocks.rbmk_outgasser, OutgasserRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/PyroHandler.java b/src/main/java/com/hbm/handler/nei/PyroHandler.java index f4a992ad4..b81813e53 100644 --- a/src/main/java/com/hbm/handler/nei/PyroHandler.java +++ b/src/main/java/com/hbm/handler/nei/PyroHandler.java @@ -9,7 +9,7 @@ import com.hbm.inventory.recipes.PyroOvenRecipes; public class PyroHandler extends NEIUniversalHandler { public PyroHandler() { - super("Pyrolysis", ModBlocks.machine_pyrooven, PyroOvenRecipes.getRecipes()); + super(ModBlocks.machine_pyrooven.getLocalizedName(), ModBlocks.machine_pyrooven, PyroOvenRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/RotaryFurnaceHandler.java b/src/main/java/com/hbm/handler/nei/RotaryFurnaceHandler.java new file mode 100644 index 000000000..ca6c3b628 --- /dev/null +++ b/src/main/java/com/hbm/handler/nei/RotaryFurnaceHandler.java @@ -0,0 +1,62 @@ +package com.hbm.handler.nei; + +import java.awt.Rectangle; +import java.util.Locale; + +import com.hbm.blocks.ModBlocks; +import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.gui.GUIMachineRotaryFurnace; +import com.hbm.inventory.recipes.RotaryFurnaceRecipes; +import com.hbm.inventory.recipes.RotaryFurnaceRecipes.RotaryFurnaceRecipe; +import com.hbm.items.machine.ItemScraps; +import com.hbm.util.I18nUtil; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.gui.FontRenderer; +import net.minecraft.item.ItemStack; + +public class RotaryFurnaceHandler extends NEIUniversalHandler { + + public RotaryFurnaceHandler() { + super(ModBlocks.machine_rotary_furnace.getLocalizedName(), ModBlocks.machine_rotary_furnace, RotaryFurnaceRecipes.getRecipes()); + } + + @Override + public String getKey() { + return "ntmRotaryFurnace"; + } + + @Override + public void loadTransferRects() { + super.loadTransferRects(); + transferRectsGui.add(new RecipeTransferRect(new Rectangle(58, 19, 32, 10), "ntmRotaryFurnace")); + guiGui.add(GUIMachineRotaryFurnace.class); + RecipeTransferRectHandler.registerRectsToGuis(guiGui, transferRectsGui); + } + + @Override + public void drawExtras(int recipe) { + + RecipeSet rec = (RecipeSet) this.arecipes.get(recipe); + Object[] original = (Object[]) rec.originalInputInstance; + ItemStack output = rec.output[0].item; + + outer: for(RotaryFurnaceRecipe arc : RotaryFurnaceRecipes.recipes) { + + if(ItemStack.areItemStacksEqual(ItemScraps.create(arc.output, true), output) && arc.ingredients.length == original.length - (arc.fluid == null ? 0 : 1)) { + + for(int i = 0; i < rec.input.length - (arc.fluid == null ? 0 : 1); i++) { + if(arc.ingredients[i] != original[i]) continue outer; + } + + FontRenderer fontRenderer = Minecraft.getMinecraft().fontRenderer; + String duration = String.format(Locale.US, "%,d", arc.duration) + " ticks"; + String consumption = I18nUtil.resolveKey(Fluids.STEAM.getUnlocalizedName()) + ": " + String.format(Locale.US, "%,d", arc.steam) + " mB/t"; + int side = 160; + fontRenderer.drawString(duration, side - fontRenderer.getStringWidth(duration), 43, 0x404040); + fontRenderer.drawString(consumption, side - fontRenderer.getStringWidth(consumption), 55, 0x404040); + return; + } + } + } +} diff --git a/src/main/java/com/hbm/handler/nei/SawmillHandler.java b/src/main/java/com/hbm/handler/nei/SawmillHandler.java index e573e9f42..43d79bf87 100644 --- a/src/main/java/com/hbm/handler/nei/SawmillHandler.java +++ b/src/main/java/com/hbm/handler/nei/SawmillHandler.java @@ -6,7 +6,7 @@ import com.hbm.tileentity.machine.TileEntitySawmill; public class SawmillHandler extends NEIUniversalHandler { public SawmillHandler() { - super("Sawmill", ModBlocks.machine_sawmill, TileEntitySawmill.getRecipes()); + super(ModBlocks.machine_sawmill.getLocalizedName(), ModBlocks.machine_sawmill, TileEntitySawmill.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/SolderingStationHandler.java b/src/main/java/com/hbm/handler/nei/SolderingStationHandler.java index a48f5f620..a1f127692 100644 --- a/src/main/java/com/hbm/handler/nei/SolderingStationHandler.java +++ b/src/main/java/com/hbm/handler/nei/SolderingStationHandler.java @@ -15,7 +15,7 @@ import net.minecraft.item.ItemStack; public class SolderingStationHandler extends NEIUniversalHandler { public SolderingStationHandler() { - super("Soldering Station", ModBlocks.machine_soldering_station, SolderingRecipes.getRecipes()); + super(ModBlocks.machine_soldering_station.getLocalizedName(), ModBlocks.machine_soldering_station, SolderingRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/SolidificationHandler.java b/src/main/java/com/hbm/handler/nei/SolidificationHandler.java index 181f7dfa8..5eda6e643 100644 --- a/src/main/java/com/hbm/handler/nei/SolidificationHandler.java +++ b/src/main/java/com/hbm/handler/nei/SolidificationHandler.java @@ -6,7 +6,7 @@ import com.hbm.inventory.recipes.SolidificationRecipes; public class SolidificationHandler extends NEIUniversalHandler { public SolidificationHandler() { - super("Solidification", ModBlocks.machine_solidifier, SolidificationRecipes.getRecipes()); + super(ModBlocks.machine_solidifier.getLocalizedName(), ModBlocks.machine_solidifier, SolidificationRecipes.getRecipes()); } @Override diff --git a/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java b/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java index a39208d98..b5ab368d5 100644 --- a/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java +++ b/src/main/java/com/hbm/handler/nei/ZirnoxRecipeHandler.java @@ -6,7 +6,7 @@ import com.hbm.tileentity.machine.TileEntityReactorZirnox; public class ZirnoxRecipeHandler extends NEIUniversalHandler { public ZirnoxRecipeHandler() { - super("ZIRNOX", ModBlocks.reactor_zirnox, TileEntityReactorZirnox.fuelMap); + super(ModBlocks.reactor_zirnox.getLocalizedName(), ModBlocks.reactor_zirnox, TileEntityReactorZirnox.fuelMap); } @Override diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index f14c4b01a..fc268d07a 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -189,6 +189,8 @@ public class ModItems { public static Item nugget_tetraneutronium; public static Item powder_tetraneutronium; public static Item ingot_starmetal; + public static Item ingot_gunmetal; + public static Item ingot_weaponsteel; public static Item ingot_saturnite; public static Item plate_saturnite; public static Item ingot_ferrouranium; @@ -2617,6 +2619,8 @@ public class ModItems { nugget_dineutronium = new ItemCustomLore().setUnlocalizedName("nugget_dineutronium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":nugget_dineutronium"); powder_dineutronium = new ItemCustomLore().setUnlocalizedName("powder_dineutronium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_dineutronium"); ingot_starmetal = new ItemStarmetal().setUnlocalizedName("ingot_starmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_starmetal"); + ingot_gunmetal = new Item().setUnlocalizedName("ingot_gunmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_gunmetal"); + ingot_weaponsteel = new Item().setUnlocalizedName("ingot_weaponsteel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_gunsteel"); ingot_saturnite = new ItemCustomLore().setRarity(EnumRarity.rare).setUnlocalizedName("ingot_saturnite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_saturnite"); plate_saturnite = new ItemCustomLore().setRarity(EnumRarity.rare).setUnlocalizedName("plate_saturnite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_saturnite"); ingot_ferrouranium = new ItemCustomLore().setUnlocalizedName("ingot_ferrouranium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_ferrouranium"); @@ -5570,6 +5574,8 @@ public class ModItems { GameRegistry.registerItem(ingot_desh, ingot_desh.getUnlocalizedName()); GameRegistry.registerItem(ingot_ferrouranium, ingot_ferrouranium.getUnlocalizedName()); GameRegistry.registerItem(ingot_starmetal, ingot_starmetal.getUnlocalizedName()); + GameRegistry.registerItem(ingot_gunmetal, ingot_gunmetal.getUnlocalizedName()); + GameRegistry.registerItem(ingot_weaponsteel, ingot_weaponsteel.getUnlocalizedName()); GameRegistry.registerItem(ingot_saturnite, ingot_saturnite.getUnlocalizedName()); GameRegistry.registerItem(ingot_euphemium, ingot_euphemium.getUnlocalizedName()); GameRegistry.registerItem(ingot_dineutronium, ingot_dineutronium.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/main/NEIRegistry.java b/src/main/java/com/hbm/main/NEIRegistry.java index 8db11642a..3899820c8 100644 --- a/src/main/java/com/hbm/main/NEIRegistry.java +++ b/src/main/java/com/hbm/main/NEIRegistry.java @@ -66,6 +66,7 @@ public class NEIRegistry { handlers.add(new ExposureChamberHandler()); handlers.add(new ArcFurnaceSolidHandler()); handlers.add(new ArcFurnaceFluidHandler()); + handlers.add(new RotaryFurnaceHandler()); //this shit comes last handlers.add(new FluidRecipeHandler()); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java index 85e8fb5db..2ae2a54e2 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java @@ -314,16 +314,15 @@ public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting i ForgeDirection dir = ForgeDirection.getOrientation(this.getBlockMetadata() - 10); ForgeDirection rot = dir.getRotation(ForgeDirection.UP); BlockPos core = new BlockPos(xCoord, yCoord, zCoord); - core.offset(dir, -1); //Red - if(pos.equals(core.clone().offset(rot, -2))) return new int[] {0}; + if(side == dir.getOpposite().ordinal() && pos.equals(core.clone().offset(dir, -1).offset(rot, -2))) return new int[] {0}; //Yellow - if(pos.equals(core.clone().offset(rot, -1))) return new int[] {1}; + if(side == dir.getOpposite().ordinal() && pos.equals(core.clone().offset(dir, -1).offset(rot, -1))) return new int[] {1}; //Green - if(pos.equals(core)) return new int[] {2}; + if(side == dir.getOpposite().ordinal() && pos.equals(core.clone().offset(dir, -1))) return new int[] {2}; //Fuel - if(pos.equals(new BlockPos(xCoord, yCoord, zCoord).offset(dir).offset(rot, -1))) return new int[] {4}; + if(side == dir.ordinal() && pos.equals(core.clone().offset(dir, 1).offset(rot, -1))) return new int[] {4}; return new int[] { }; } diff --git a/src/main/resources/assets/hbm/textures/items/ammo.png b/src/main/resources/assets/hbm/textures/items/ammo.png index 9f9dba6934eb7d7e4b8a2296aa033d9ba5223102..f386e052cf5e2e01ce960224cf8cbee71f96f6bf 100644 GIT binary patch literal 11221 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�hlf^^{$&J%E(ty{lqV# zRKSe+KS>SDGp9DaF;2sjgpIEdX<6I@!4*)EK{PVQyz)0Lg3;R9wE(FY?Hm!}?oI~k zUv8eB8jl`{FGkan8x)x`U4T2S9IGcO&ZvqhiiYFjj~{^9u7Gq*};&_TogrWfS) z$rfclWKrjhd;Q=JhoM7n3QEfSckkLOXmoL)j`uI8oeGWX4O}`+q`>0Sy~g4`Jk+GH zQ;|SbyNX?B2nGJjek%m*n2|}P3oqCG|2#Ns`Ocs4G_QBC8Z{IVVitZmUA_4GqUuR{ z^^a%k$-+zECeCMov*xFcLhMFyV0w?qRD0H&GO>Tr3`O zbaq_5hFuiypa=j*;h2l_tWeQB=j#Q%Xf%t&th<1Y#<_6#3%Yx$j`?2`49Qej^(w%v z8ZaiuOOAH9_gVl^JU`5@Pe1Nd zT$`N=!ACvh-fSUi0N!f3@y0%G*J!@gC0M<;=pjlZL@$YM+0{ab5G7ioMM8)k5f-aOi3p;% ztS*Eot1K4Z{Ql23&oj@Rc4y|Ed(L~__uS{E#yWJ=?9>1N(CO)Fnt`no06+jr3h>DA z`qK%pA$zK>XF&;WNXkbE0KoAHHh70!@^(6s8Ufv z)V4ttP^e1e{Yx{vBzWDXLtjeWsr=7T%6LTc&UU!(PV3HgoBd~O&fED23^sh{&U$3) z(|^h=f`w=j`Qh-w>;q0g{-jJeErp&0YsOk$(bT5Smv)zN7Xba!-oNgUk}<#gkhmYn z8IZq|zBW7Pm@z~>w~ikPW=Pg;-%hd&k`c9vpE{S2wTwL%m1&f5kP0%^-Sr5ISxz4f+* zLp-hdFxL)V?bCfLL;~({j#%IN)4cp4>VCrzWBlb>qgt#wwG;Kf)$7cJ2=ROw#}x|^lj|uidJt%gT5Q(?jm3C%?!$|9&o*tz zFHEZB2APE{iXu~>g}{f4kugEUmw~iy9z3hzp4LS>-_n7?{W9PX>1!^^pwZvbV$>jX zGTH(uL~2Mfu(&pzZ0x6K@=(U9gLW%d7wlY=K*#-i{)IuHP+#)iQ;LQ8aqaS z1qGI2lDdDA>&PF+A&?o&4kGe5+eQY>RRA9q5n?y_Bi>70-eR&CHD{SWBs86mq3-fr zA=I+mikTH*Efih8bj6>VX-i?E0g|UPAL8?2?FS!13DZ9dgrg?>fXy={j%&^C#RvRu z9ivRPDaiHFb%^#Z+tn}#IiqS(>bxnuE3@m3QB`6Y$NnFZxYfVjQs5ui6K+CrJ{MsF zF1!r=9v3Y{XKtQvHN`bl8z-R4Jde!(4SIW-zHV1z9!i3h_q24(NkZ3x&u<0wwM6q> z`~2uA&E?_(%CFp^3;TCbMMEV^!PY!{6ir=Ve4Rz2!jc4Jl@fn=z?oLY@%7L69f0gPWgtbaa$~{nF5|QJVRI*x)%y0yyKv&9is2kit2rB@$ZU;@7@YBxatqHrvTJ zs21=#q`982=Ixa%fS!iz#v_t;k?NM>8DGJfnVGM6Y`_LXepN+R=AQrI%t^>xbdi?h zY|kS;B-XO^X!J(UvF{8yxg)&Y1o2kJjT{CwyjIf*x;#6+hH_?hc4TUbl1oTwf~TLR zT$8P06@1HFZqC)Uk0IF1zZXVKerJaDwn-no`SSk!`D5zouRrMz?XZ9tcv$OAI!)Bx zq?rKtZDZcnS-6sFZCskE^4~Q@4+sjj19thCI6G-+*1UWx$AYPhoR(YgZf5BVWO<$^ zyF1GV>f!3NzS}&n5->4B>oUK@5^cKZzxAv?&K!+j@>tXUrvY$b)Lsy*#e2q?n5`t1 zLGR<^xKbfqc;YS?e9 zNR;pX9Zam&uv#$~mSIolT24w`)ZudhKH60Q|9i;)v%yW92W%YM%S$5cbY>#<>~4lr zmmMozySOQ`QIg%=?KPOHqjddS1RP<0fkrOksYM?;F>$>RR^NXsJ{U+Dw+>_#xkozA zTYda^RU8h#>XAPyb!1nBf0X{+nP8Fxl%SxN(CvVt{ z!RXo9*=gUNa-n^TQH{hm$AkSG^eKJt9~nSjed0j%>_bAOPGJC#@i18isg2oeB42@r z4pZ((Qpe|?p^YctXrF8H#Lhn&85`3?tc|sMopRJ1Qf4f^Bt$>hKDVO9$|jWedJZ>< zoOh+n5<~gQ9zyJo!Thy|KY3EcmmM7h1wY)UiQb(pSqW#DF?Y6g|t_jcG+#pBO)5kwBC54|4S1 zqp#FrING`s?F;|4!Q{EM(S_ulpnA1~j1S`O7g+kD{M)-tW|G^Dv)ktB=Q1Jo;oNsx zm4)rm3bs9rbZ&zqO$RkDan74Pv(pQFmKDlVpIsHOLSZ&{-RfavB;7m5%jpF~UaXL9 zFUxH$X=K5WPIL!XZf-8YXv7C|vnY@J?&3gh@yFeHDJ}EG^(659LWNF=L2Tsa0Y^pd z5a0YHp_E%EeBa9lEJ&x0Un&pUU&AyvXOv#6*2Q=2*js zbETT(PvP-D;O+Ay)EB_x!egl48I<}0{R4gHJQ~qHUG^yPpR)4YmtM?Z)|z5$=LPzH zmvy5h!?_CNs*If6wf|Z&63G5Jbm09-j-ng4`EW>g(Cv`^dRTSV%yob_Zt~YJo>n=u zqRXQr3ZVbvT1N~N@9GOU)hf*=w?aOdI7x2NNyPpZ;1VWlHBrr|KBh|8KU9fov55Z7 zAS6uIcoJsdrbb21*Vp0A&71)o$Jv;YFvoJ;k!T(q>TJK|O}F}N_V&5bE*0>RWWCRz zowFDldNmv=wtLt)M2TiU{(*J%_w0Xh59Q zh(+^1DkHu7%DU;HwCQl?z^;fku46UDs@?pgD&WF`P-IFO7#MgU)%dW-_~b^^ERDy! zL#n47ip|XyJ$u)9?q!;@9IAIA$mr+z>s>R7Xn)2fa{skzrMY+jodxXQ|MD|C0K>no zZx90I!cz2kx9>@IJbCbXHt*Kl?~+Ed$r&vyT=e>;fSB6QO=#n z^c64A99)lMqx>{9c}G)o@)*-E_oPog?UJaoJ022BKCJF$hPlQe6@;HuKL}s@3A2$Q zmQdv}eHsbQEI)JDh01@%q9@_0VQTY!nzDAAb*U%{KZ@ zJ}bYv@E@#YAuNjMEW7$swBPAJeJTy2Tdt|>f{fOzDE5Y%mzuTDkHuGfSk3b`bcV7L zbJF5Qw@BIL7Y@W#Y}EdlnC`mCImFxB+w20stY$@dBo-EVl;+!m-16pF;+LL}I%7{50rrlq|s5YwkNxv;ux_KEOpvYv8~f)2H6 ztAuxw+dTHx#w7{V9(OYv8X7uHR@v+FGK4I~u^7^DP?G6JL@3)1IHWKAXJn)6N@deX zy+jk3A4qFKa!VQCWy%i?6evAN}JiL&cFeSA$D8F+Ae9X^5MVT7k1K1&ICQrEl&>QU&BMIeW;kE%-KD=1ZnAFgiKz1Q{w$7!z9meorw;*6*cG1Oro^;|r5WpQxLM z>bh8JIX?^(O<$G$=(>FQ3V1^&!5ma-%(j^gQVC#xJ>)4s1G`hV_hfEuG`{k_O1re^ z9P^U1S+vW_9H;=j$VH#z!IQNi38F?rx2exa?>}>=@v}=v(xQqxhx|lKi0AJ(`-Mkf zXU|CG3r)o5gDFDm+7J)VNZ&*yGpFkOJ$p(3pt5@DJEy@+U>?!90M_a|_w2tFA44B) z5P{JEmR1B>soY5e7k2n7?y@=65~bb&2Nq)T;DxKEG(^-&?8nz?LW!YABchu3naDj|a-qI= zv{2{rAQK`K37VH$Lca|^|K7$7qn~YJ1PeI4PB%rin@sa?{vkE6?>7I=40#U(K#=6# zRY5sQnfscXB>=HJj&$LxCyU2bBB(ik`&{^QO-9AZ(w8}*e$$aX&Al0YA)2}3F^qQf z4cKl)ikgz3Ouu2C#*?uNjo^Ur;Q>=Hst z$lUExS6P9tI~M-4LS6lG^-v*Z?2tw$r^#EMx+A0#Le&_s640i+o;y~-R8L?d_ z20-iDXE7rF%u@q@kPNulO%M_COR)IEpVpX6bt}_cNm(t_gO+=J)Zdxs zmiHFobemF{GWI_Th5f}uR}`=jTL2%f4e-&Va+EfsCG?iNI005RMB+o zkjN14kS&vIZ8q<&%4ID-7x(T0$v#1ai&5O|p#H9fj9kpK>i7kY^U36gAqyhaPD8lu z4qe|mqPj6#o}kqgjp=ECAum6sv4nD#T^MlSqZLV%q9r5Y0u@BrCktgyq<;2#`~>>G z3L^Ia3J}4wGb9&SDk!U{&=6!K3CWZga-64>`gJGzdva#Gb=vB>S#uViz`}zJolq!!{K1zn&5~TcNg+}Npe}2%1zSnB>N`SpT5;7!kS7g}dKt9a0 zdc0sFmr@MMlEuT51Kt>?J8x0-(I%2d-^*})uycrzX|J^Q_@%KMMWoyda`cm2(=8pMpCjg80aWLLaae z>Uvu_Wqi0-uoJDUyz{^_@8v%w2VhFP?%Hq^J_LV5sJ?J*&2{5x-Ic72R60%=*xU;1 z(2t^aT&t-&2Toq~YA9}Q_N6FsnwgTo$C&9U$@=6xBcGi{EqB{rdP0zwT9iHLB^j4GOx6qa};rjB$-uc(P|bUkwF|_J$ay z5u8f62ggddb3oy~Suy+YBV8I>4tlk%~?P&Nr`67K%w1_n| zfnCe<6#2JypphmG(imOr`6K7MM*Xe0w*^U`RG%jLLc^jIAi@D!cR5TDT18vMHaYQp z802*>-cY%hSV5`G+d#3T)^N=pSOb6nd5yBvR3l~%( zUtaMrq8{EjnVLD<%QMIt*?n$%%RWfX=jUAKw?zZpQZl+rqU_dGEvbu(3rKzB!;fxB zm5`}pXsmWWYhM?NjeP8>e0Imk#PRGcM}j-2P}0-z<})T><)P3T2sk2*(@-+x)EH*@Pz918R?4*KYs$lgk|NogF`l{ON;_emFn?O{x{O`iiLuz zhbKy33O*0hSg&C05*M2l&fAgytVwkRkaV~m0a;nuuTNH~Im;Yey5-D(GavFm`XK6Q zj@YJc$%`JvUk3*_V)L?0rf=2flPVgMoSUR% z(gKVT&VmS6yoUW+s{4Al4DZqcqmz$K@BQui;z zUDuewIqx3Ku~Qc0B5Ba8|7wG=!j~==D%r}Q zO;Jo3dmaCkLkew0g*!7#m%vfk$OfNIZ^?a^+r0gvng8a4(!XJ57rp_na%ukjaNVfG zjNqh8zB~&s=?XfDmO#=Q$Yo6iU*Bp7I9D=ZcRi_d7fN(iRz1D`SJ$NyhP{#W?x&;Z zElmv4I9r7(=>YF4ixV`us}nJ!HbtvEfBwBsl@V^gt%e$+-z1I;-pij0>t6oU2u8Fb zml4_YP5;i|r}t-ZDH zqI%xpI_P+?F|AMKy0Q29OL4#vSc4g%xw?RdmaIMo!X7L61_LF=TBCzu2lV|k3to^g zZez!SMY*pE?JR1FSn+D~lv>VXA8|~iMIU@O$2)nYd(TH}0`An;h{~^4r1@1%v$Th= zGdHkWuo{AVGJBL9v1xMZRJ@JIKAP(e2YIVA~!T$m5MJ7;*0D5hK)=Ia==ayR|=}59jVCWNygz4k_u7% z{Zx{CD^4PXeGTL`u7V`!e~t&j%9m#do2EL(^z>^sO;237OH^MM+G=1>BNYHwTZ0O6 z6mKO}71JKt)&!h$d3{!$^cwN``I!~7cV>@n?)z9)rfW~oMAT0nh@bn)ybX{rFj@Il zlAfq!9$iG@#Pg^EH)pCkgOAnH7+)bdIBWZH6tya|^{l*~=Uykvhg z^N)sLHNHcQN%zahe)*jffl@*^G#&c<$qn^fjn$#&A!@L)3!j<% z;a=YDj`l&Y7CtScJ4j%9RMk@ieBIsEK%u^SQ z-%$AbhM^bh>oT2L3ZxLgMypCtltm070{#ZAs0B!XcF)c`)k`{4zB#*zh8ulH>x_o% zPc+67yauymdDy@3MD5pit{Z7cQv?JC3ITmb+p`VoEAqEfpZxv%cf|IH9aO#)D*NTT zLS+^N9-`dPw+!s3q*rwwuquZa?~reG2)q;EMMj|8vB}C?t9W&i#!;UlN)-*R#>9h5 zaIfpmry6cdFPe+3&gyAA!~B2w)zUoq^Z5@W?wM6gC7Hl}qdjHgN$@8IDaK}%n?yrF z?%5MhhVM>)PG9T|#&X@%ZQM5zBJ*8q>YSvBG8TJ8mXkvy2Wxnq#p}?o-%8boCtKe1 z;fw+A5j^SK%B(V)$NU5X7Z*$-{V=fD+AKu^n9vr645 G`u_k27g8Mn diff --git a/src/main/resources/assets/hbm/textures/items/chem_icon_SATURN.png b/src/main/resources/assets/hbm/textures/items/chem_icon_SATURN.png index 06149dfa927852891da5d3d1017ec7565f9be7b6..af0895d3093966ce6ebedeaf467f9a2e89bdc3f7 100644 GIT binary patch delta 323 zcmV-J0lfb40`3BkG=C*YL_t(Ijg^zJZi6rohJPfMu+}4qtMDE$)lZRRq|M0FWY30;@B4lJ&j2?@oEL4J7wvF8n1U#ecmk^xtXBAW zdv#nm1^FNVuv7p*OCsSAVySS&Lzo18kuc7ScCp#Ql+pp$;D6|``*;EXZ3qDNq`)!( zQ_4|zvDvySno_#GMjtO8m{Nje0`_#?WSMYKz2E)mEaFLDz-k3kN<6PuIMfO1{ciLc z1ox&u1y(B@>aR)oyLtxz%=q#mFl8V?jXvTbed>F_QUOzSQ|LUP0)l3IdEEo*#A@YE zo3CH)^S~e3Ej%7HpC3U0oL?dp(4+d#0|F^`35i5JfvIHAgCXQcZ;}29zr``gk6)FE V1x;k5GPD2y002ovPDHLkV1mYHl!X8Q delta 326 zcmV-M0lEI}0`UTnG=C^bL_t(IjkS_7io!q?hQFXy+z?5VB5b!1`|oFW{ka z0S_Qp1{P~CkXBX*NXVi|J6lXsw4)sCkBfJ#rdqkV}Fw9)O$%7hI+k?A}C7? zY)=pb%$G~zIIblDOeT{$1W=aXy0F{P2O!VcMiKM%nmCT1L#j+uFQve;BqVo*6)_(un#-9mH6NW>`^Ow-`@@E1*s;681 Y0llD&YgPgHlmGw#07*qoM6N<$f+$#-!#1^ zrk}=>B}n|N(1g|zTF3j-W8~5$Xb1wRO$E@4NIHeori#T=SbqeEB57VX{c5|zTN8ob z;B5W%3JuVw0O8_LWreq97G7<4aYS!T%-!1a_YS-@sInqlK9j1fBGeuBKRU|_Jr)S9 z!&}3{{T;_n(;fD+V+cIDf)s?-aqQj};p^!cfZOX!lE@XLKo&ZM1rkvF=!i&GX#B~< oCCx!Y8wKS*3>#aVgZ`F%0E_dsh7sE)d;kCd07*qoM6N<$f<1AGDgXcg delta 363 zcmV-x0hIo|0)_*SB!2;OQb$4nuFf3k00004XF*Lt006O%3;baP00009a7bBm000iZ z000iZ0XPLyBme*b8%ab#R5(wilh10xKoG{i^{ADGTs*YBdXzwW6Ku)diwD6M@S%JS z!DA?R?GuQ%f*?o`f?lUPlbNu#X%PLvWM=<--y~$$5fSd8rGNQmt~PMdGjZs!qVW?h z1fx-zcRSG6rz;0F26dvBeqZwUW+OQ?5rh9kd7evc#BnTHjMT*8@rgQ<2~LNDEV7U{ zSl7@bO;fFaB!2{RLP=Bz2nYy#2xN!=008YtL_t(Ijn$Gdj)FiGhCh;NoRUz3 z2@Qp3&<;9Iu+SO~v4x4HiKV^Xz;5k!&#=Wd7_cUmP|g+#8N!HLt}mHp-hAK7pEvLl zWk<2Hqga`G)-w>mnTOP6PF?0)KaM>{jDc>Fbzmz3lr9k_(0`eSNYC%V(({p?Kag0a ziH~6Yu8kw?C|1GyhPufA1iNVlz-7Oq31&(FRG%lDMcA25aNED^cilSxanEwgz6hzl zPCZyoZ$}54@(e)p^KA(LUE-!0b&(^d{$QdG4z{36mdP92^=cF}uCbLI?zzXn(Xyjh hO@f*6>;Av`1r!JIrmBo1tl|Iw002ovPDHLkV1jsEgsuPp delta 348 zcmV-i0i*u50`~%tB!2;OQb$4nuFf3k00004XF*Lt006O%3;baP00009a7bBm000iZ z000iZ0XPLyBme*b3`s;mR5(wilf4RpP!z}iw%o`ekf0%YfFQ&%aC7eg+QV1#0fOeB zr6q6(dVnSu7fFbQy65B(ui2+Rko$rE-#Pb+mQo6B=oI7Me19dlbO$$jilxEZBa|WE z=K)Cqb=X;t#e>EU%8C@!&v-K7ecN?$na+$(j1H<5?corP;~-5_-lF;Gcx2gWvne}a zLA_O}C}BcmXMGH&IF5z>=r&$1*)CNHdRgX#tUb@;^(u;h^%^Xo%JannaU2^hS0zR; z%YZxw_WR-pbX76E9_C@l5<)~l5b#(J5=vdI@)GNkR}~2g@At From 4b59c55c5a61b4932391194328d225845f668e58 Mon Sep 17 00:00:00 2001 From: abel1502 Date: Tue, 1 Oct 2024 00:18:24 +0300 Subject: [PATCH 39/63] Remove the upgrade, just change the caster --- .../ContainerMachineStrandCaster.java | 14 ++------------ src/main/java/com/hbm/items/ModItems.java | 3 --- .../hbm/items/machine/ItemMachineUpgrade.java | 6 ------ .../java/com/hbm/main/CraftingManager.java | 2 -- .../TileEntityMachineStrandCaster.java | 18 +++++++++--------- src/main/resources/assets/hbm/lang/de_DE.lang | 1 - src/main/resources/assets/hbm/lang/en_US.lang | 1 - src/main/resources/assets/hbm/lang/it_IT.lang | 1 - src/main/resources/assets/hbm/lang/pl_PL.lang | 1 - src/main/resources/assets/hbm/lang/ru_RU.lang | 1 - src/main/resources/assets/hbm/lang/zh_CN.lang | 1 - .../gui/processing/gui_strand_caster.png | Bin 12535 -> 11637 bytes .../hbm/textures/items/upgrade_unclog.png | Bin 759 -> 0 bytes 13 files changed, 11 insertions(+), 38 deletions(-) delete mode 100644 src/main/resources/assets/hbm/textures/items/upgrade_unclog.png diff --git a/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java b/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java index 8850edf6f..6c503f6ce 100644 --- a/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java +++ b/src/main/java/com/hbm/inventory/container/ContainerMachineStrandCaster.java @@ -2,9 +2,6 @@ package com.hbm.inventory.container; import com.hbm.inventory.SlotCraftingOutput; import com.hbm.inventory.SlotNonRetarded; -import com.hbm.inventory.SlotUpgrade; -import com.hbm.items.ModItems; -import com.hbm.items.machine.ItemMachineUpgrade; import com.hbm.tileentity.machine.TileEntityMachineStrandCaster; import com.hbm.util.InventoryUtil; import net.minecraft.entity.player.EntityPlayer; @@ -30,9 +27,6 @@ public class ContainerMachineStrandCaster extends Container { } } - //unstacking upgrade - this.addSlotToContainer(new SlotUpgrade(this.caster, 7, 57, 25)); - for (int i = 0; i < 3; i++) { for (int j = 0; j < 9; j++) { @@ -54,17 +48,13 @@ public class ContainerMachineStrandCaster extends Container { ItemStack originalStack = slot.getStack(); stack = originalStack.copy(); - if (index <= 7) { - if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 8, this.inventorySlots.size(), true)) { + if (index <= 6) { + if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 7, this.inventorySlots.size(), true)) { return null; } slot.onSlotChange(originalStack, stack); - } else if (stack.getItem() == ModItems.upgrade_unclog) { - // Doesn't matter if it suceeds - this.mergeItemStack(originalStack, 7, 8, false); - return null; } else if (!InventoryUtil.mergeItemStack(this.inventorySlots, originalStack, 1, 2, false)) { return null; } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index c1f57f7f0..f14c4b01a 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1849,7 +1849,6 @@ public class ModItems { public static Item upgrade_gc_speed; public static Item upgrade_5g; public static Item upgrade_stack; - public static Item upgrade_unclog; public static Item upgrade_ejector; public static Item ingot_euphemium; @@ -4402,7 +4401,6 @@ public class ModItems { upgrade_gc_speed = new ItemMachineUpgrade().setUnlocalizedName("upgrade_gc_speed").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_gc_speed"); upgrade_5g = new ItemMachineUpgrade().setUnlocalizedName("upgrade_5g").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_5g"); upgrade_stack = new ItemMetaUpgrade(3).setUnlocalizedName("upgrade_stack").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_stack"); - upgrade_unclog = new ItemMachineUpgrade().setUnlocalizedName("upgrade_unclog").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_unclog"); upgrade_ejector = new ItemMetaUpgrade(3).setUnlocalizedName("upgrade_ejector").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":upgrade_ejector"); wand = new ItemWand().setUnlocalizedName("wand_k").setMaxStackSize(1).setCreativeTab(MainRegistry.consumableTab).setFull3D().setTextureName(RefStrings.MODID + ":wand"); @@ -6391,7 +6389,6 @@ public class ModItems { GameRegistry.registerItem(upgrade_gc_speed, upgrade_gc_speed.getUnlocalizedName()); GameRegistry.registerItem(upgrade_5g, upgrade_5g.getUnlocalizedName()); GameRegistry.registerItem(upgrade_stack, upgrade_stack.getUnlocalizedName()); - GameRegistry.registerItem(upgrade_unclog, upgrade_unclog.getUnlocalizedName()); GameRegistry.registerItem(upgrade_ejector, upgrade_ejector.getUnlocalizedName()); //Machine Templates diff --git a/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java b/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java index 9eb813a43..99619f968 100644 --- a/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java +++ b/src/main/java/com/hbm/items/machine/ItemMachineUpgrade.java @@ -107,12 +107,6 @@ public class ItemMachineUpgrade extends Item { list.add("Allows for total isotopic separation of HEUF6"); list.add(EnumChatFormatting.YELLOW + "also your centrifuge goes sicko mode"); } - - if(this == ModItems.upgrade_unclog) { - list.add(EnumChatFormatting.RED + "Strand Caster Upgrade"); - list.add("Stops the buffer from constantly clogging up"); - list.add("by allowing to periodically drain its contents"); - } } public static enum UpgradeType { diff --git a/src/main/java/com/hbm/main/CraftingManager.java b/src/main/java/com/hbm/main/CraftingManager.java index 9ddedab8e..cce77298b 100644 --- a/src/main/java/com/hbm/main/CraftingManager.java +++ b/src/main/java/com/hbm/main/CraftingManager.java @@ -14,7 +14,6 @@ import com.hbm.config.GeneralConfig; import com.hbm.crafting.*; import com.hbm.crafting.handlers.*; import com.hbm.inventory.OreDictManager; -import com.hbm.inventory.OreDictManager.DictFrame; import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.material.MaterialShapes; import com.hbm.inventory.material.Mats; @@ -796,7 +795,6 @@ public class CraftingManager { addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 0), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.VACUUM_TUBE), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_PNEUMATIC), 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 1), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CAPACITOR), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_HYDRAULIC), 'U', new ItemStack(ModItems.upgrade_stack, 1, 0) }); addRecipeAuto(new ItemStack(ModItems.upgrade_stack, 1, 2), new Object[] { " C ", "PUP", " C ", 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.CHIP), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_ELECTRIC), 'U', new ItemStack(ModItems.upgrade_stack, 1, 1) }); - addRecipeAuto(new ItemStack(ModItems.upgrade_unclog, 1), new Object[] { " B ", "TUT", " B ", 'B', new ItemStack(ModItems.tank_steel), 'P', DictFrame.fromOne(ModItems.part_generic, EnumPartType.PISTON_PNEUMATIC), 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 0), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_copper, 'P', ModItems.motor, 'U', ModItems.upgrade_template }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 1), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_gold, 'P', ModItems.motor, 'U', new ItemStack(ModItems.upgrade_ejector, 1, 0) }); addRecipeAuto(new ItemStack(ModItems.upgrade_ejector, 1, 2), new Object[] { " C ", "PUP", " C ", 'C', ModItems.plate_saturnite, 'P', ModItems.motor, 'U', new ItemStack(ModItems.upgrade_ejector, 1, 1) }); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java index b67d2d8bb..c05bfe3fe 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineStrandCaster.java @@ -47,7 +47,7 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase } public TileEntityMachineStrandCaster() { - super(8); + super(7); water = new FluidTank(Fluids.WATER, 64_000); steam = new FluidTank(Fluids.SPENTSTEAM, 64_000); } @@ -84,34 +84,34 @@ public class TileEntityMachineStrandCaster extends TileEntityFoundryCastingBase if(canProcess()) { int minAmount = mold.getCost() * 9; - // The upgrade makes it flush the buffers after 10 seconds of inactivity - if(slots[7] != null && slots[7].getItem() == ModItems.upgrade_unclog && worldObj.getWorldTime() >= lastCastTick + 200) { + // Makes it flush the buffers after 10 seconds of inactivity + if(worldObj.getWorldTime() >= lastCastTick + 200) { minAmount = mold.getCost(); } if(this.amount >= minAmount) { int itemsCasted = amount / mold.getCost(); - + for(int j = 0; j < itemsCasted; j++) { this.amount -= mold.getCost(); - + ItemStack out = mold.getOutput(type); - + for(int i = 1; i < 7; i++) { if(slots[i] == null) { slots[i] = out.copy(); break; } - + if(slots[i].isItemEqual(out) && slots[i].stackSize + out.stackSize <= out.getMaxStackSize()) { slots[i].stackSize += out.stackSize; break; } - + } } markChanged(); - + water.setFill(water.getFill() - getWaterRequired() * itemsCasted); steam.setFill(steam.getFill() + getWaterRequired() * itemsCasted); diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index fa95fdc2c..89177e7b7 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -3515,7 +3515,6 @@ item.upgrade_speed_3.name=Geschwindigkeitsupgrade Mk.III item.upgrade_stack_1.name=Stapelupgrade Mk.I item.upgrade_stack_2.name=Stapelupgrade Mk.II item.upgrade_stack_3.name=Stapelupgrade Mk.III -item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Maschinenupgrade-Vorlage item.volcanic_pickaxe.name=Geschmolzene Spitzhacke item.wand_d.name=Debug-Zauberstab diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index b91a80313..be8bb0358 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -4532,7 +4532,6 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III -item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.volcanic_axe.name=Molten Axe item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/it_IT.lang b/src/main/resources/assets/hbm/lang/it_IT.lang index acac9eb4a..1143e0318 100644 --- a/src/main/resources/assets/hbm/lang/it_IT.lang +++ b/src/main/resources/assets/hbm/lang/it_IT.lang @@ -4711,7 +4711,6 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III -item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.volcanic_axe.name=Molten Axe item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/pl_PL.lang b/src/main/resources/assets/hbm/lang/pl_PL.lang index 3cdfabd06..1307d0b8b 100644 --- a/src/main/resources/assets/hbm/lang/pl_PL.lang +++ b/src/main/resources/assets/hbm/lang/pl_PL.lang @@ -4137,7 +4137,6 @@ item.upgrade_speed_3.name=Speed Upgrade Mk.III item.upgrade_stack_1.name=Stack Ejection Upgrade Mk.I item.upgrade_stack_2.name=Stack Ejection Upgrade Mk.II item.upgrade_stack_3.name=Stack Ejection Upgrade Mk.III -item.upgrade_unclog.name=Unclogging Upgrade item.upgrade_template.name=Machine Upgrade Template item.v1.name=V1 item.volcanic_pickaxe.name=Molten Pickaxe diff --git a/src/main/resources/assets/hbm/lang/ru_RU.lang b/src/main/resources/assets/hbm/lang/ru_RU.lang index a5b9d9a4a..93e77b657 100644 --- a/src/main/resources/assets/hbm/lang/ru_RU.lang +++ b/src/main/resources/assets/hbm/lang/ru_RU.lang @@ -3965,7 +3965,6 @@ item.upgrade_ejector_3.name=Улучшение извлекателя "Скор item.upgrade_stack_1.name=Улучшение извлекателя "Количество стака" I уровня item.upgrade_stack_2.name=Улучшение извлекателя "Количество стака" II уровня item.upgrade_stack_3.name=Улучшение извлекателя "Количество стака" III уровня -item.upgrade_unclog.name=Улучшение машины непрерывного литья "Частичный слив" item.fusion_core.name=Ядерный блок item.energy_core.name=Импровизированный энергоблок diff --git a/src/main/resources/assets/hbm/lang/zh_CN.lang b/src/main/resources/assets/hbm/lang/zh_CN.lang index 511d554b6..3190e942c 100644 --- a/src/main/resources/assets/hbm/lang/zh_CN.lang +++ b/src/main/resources/assets/hbm/lang/zh_CN.lang @@ -4407,7 +4407,6 @@ item.upgrade_speed_3=三级红色机器升级 item.upgrade_stack_1=一级堆叠弹出升级 item.upgrade_stack_2=二级堆叠弹出升级 item.upgrade_stack_3=三级堆叠弹出升级 -item.upgrade_unclog.name=Unclogging upgrade item.upgrade_template=机器升级模板 item.volcanic_axe=熔岩斧 item.volcanic_pickaxe=熔岩镐 diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_strand_caster.png index de357deddd8ca359bb3ec47fac1e24a7ceff1d2c..2af67e09eb749ed526c61c2ef58bd3f7ff5bd5e1 100644 GIT binary patch literal 11637 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 literal 12535 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 F{{kb*75xAJ diff --git a/src/main/resources/assets/hbm/textures/items/upgrade_unclog.png b/src/main/resources/assets/hbm/textures/items/upgrade_unclog.png deleted file mode 100644 index 9ff526c640cac058ffb9286d08404125485d5b3c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 759 zcmV zG|^3f5&Q||SktqUF>0>&8$7yRhjg#n_x@ciDZ^3VX%rq+mR%HxFigTNY`oL9Bv zHk__Q$DNh16W@|gw%0V_`50Q`&~^pQi`&IW0|{rm;O1t7nH zoVWa^0a%e~^iKwc_l*q8XJ#{W?LP`uROV<6X9sF1GpI^RFhsIn0Gjrkf$5}848xv9 zM-kQnH6J^R;9j_J0V^A%=j6$Im|+0(D=q+Ye*KEIV7*KrFZ{2t{!d6FG5~o2r00K# z(tj3^7r@aIZh)fb=kr@&`tIA0U|LJZ6h$871zu)gELc2-c;l3;G)gqWG%5@8WA#SV zGl)JGcq{C&ffe^sz1@uIMFD77KU_wr|APJE3Kp5s!7@KGS^4o4H pXbwbT;{uqu5g0HazhSU(006;%sgg@XZ_@w(002ovPDHLkV1fZvPM81y From 0bdfe286e45b1eeccb56227a1df7a8d01a1ac00f Mon Sep 17 00:00:00 2001 From: Boblet Date: Tue, 1 Oct 2024 16:56:39 +0200 Subject: [PATCH 40/63] shapes --- changelog | 1 + gradle.properties | 2 +- .../java/com/hbm/crafting/MineralRecipes.java | 43 +++--- .../java/com/hbm/hazard/HazardRegistry.java | 6 +- .../com/hbm/inventory/OreDictManager.java | 122 +++++++++--------- src/main/java/com/hbm/inventory/OreNames.java | 34 ----- .../gui/GUIMachineSolderingStation.java | 23 ++++ .../inventory/material/MaterialShapes.java | 56 +++++--- .../java/com/hbm/inventory/material/Mats.java | 40 +++--- .../inventory/recipes/ArcFurnaceRecipes.java | 18 +-- .../inventory/recipes/CrucibleRecipes.java | 17 +-- .../hbm/inventory/recipes/PressRecipes.java | 3 +- .../inventory/recipes/anvil/AnvilRecipes.java | 7 +- .../recipes/anvil/AnvilSmithingMold.java | 4 +- .../java/com/hbm/items/ItemCustomLore.java | 34 ++--- src/main/java/com/hbm/items/ModItems.java | 28 +++- .../TileEntityMachineSolderingStation.java | 21 ++- src/main/resources/assets/hbm/lang/de_DE.lang | 9 ++ src/main/resources/assets/hbm/lang/en_US.lang | 9 ++ .../gui/processing/gui_soldering_station.png | Bin 3180 -> 3363 bytes .../assets/hbm/textures/items/ammo.png | Bin 11221 -> 11146 bytes .../hbm/textures/items/part_barrel_heavy.png | Bin 0 -> 183 bytes .../hbm/textures/items/part_barrel_light.png | Bin 0 -> 176 bytes .../assets/hbm/textures/items/part_grip.png | Bin 0 -> 239 bytes .../hbm/textures/items/part_mechanism.png | Bin 0 -> 359 bytes .../textures/items/part_receiver_heavy.png | Bin 0 -> 226 bytes .../textures/items/part_receiver_light.png | Bin 0 -> 238 bytes .../assets/hbm/textures/items/part_stock.png | Bin 0 -> 213 bytes 28 files changed, 274 insertions(+), 203 deletions(-) delete mode 100644 src/main/java/com/hbm/inventory/OreNames.java create mode 100644 src/main/resources/assets/hbm/textures/items/part_barrel_heavy.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_barrel_light.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_grip.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_mechanism.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_receiver_heavy.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_receiver_light.png create mode 100644 src/main/resources/assets/hbm/textures/items/part_stock.png diff --git a/changelog b/changelog index ce5ce5c44..277ae7279 100644 --- a/changelog +++ b/changelog @@ -9,6 +9,7 @@ * Updated basalt textures * Scaffold blocks can now be placed horizontally * Updated the shredder's textures +* The strand caster will now cast its remaining buffer after 10 seconds of inactivity, even if the buffer is not full enough for a batch of 9 ## Fixed * The conveyor grabber should no longer skip over items when used in long lines diff --git a/gradle.properties b/gradle.properties index d0028d08c..0517f3c81 100644 --- a/gradle.properties +++ b/gradle.properties @@ -48,7 +48,7 @@ credits=HbMinecraft,\ \ Voxelstice (OpenComputers integration, turbine spinup),\ \ BallOfEnergy1 (OpenComputers integration),\ \ sdddddf80 (recipe configs, chinese localization, custom machine holograms),\ - \ Abel1502 (optimization, crate upgrade recipes),\ + \ Abel1502 (optimization, crate upgrade recipes, strand caster improvements),\ \ SuperCraftAlex (tooltips)\ \ Ice-Arrow (research reactor tweaks),\ \ 245tt (anvil GUI improvements),\ diff --git a/src/main/java/com/hbm/crafting/MineralRecipes.java b/src/main/java/com/hbm/crafting/MineralRecipes.java index db125cf8c..6ab5ea10b 100644 --- a/src/main/java/com/hbm/crafting/MineralRecipes.java +++ b/src/main/java/com/hbm/crafting/MineralRecipes.java @@ -2,6 +2,7 @@ package com.hbm.crafting; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.BlockEnums.EnumStoneType; +import com.hbm.inventory.material.MaterialShapes; import com.hbm.items.ItemEnums.EnumCokeType; import com.hbm.items.ModItems; import com.hbm.items.machine.ItemRTGPelletDepleted.DepletedRTGMaterial; @@ -106,31 +107,31 @@ public class MineralRecipes { addBillet(ModItems.billet_cobalt, ModItems.ingot_cobalt, ModItems.nugget_cobalt); addBillet(ModItems.billet_co60, ModItems.ingot_co60, ModItems.nugget_co60); - addBillet(ModItems.billet_sr90, ModItems.ingot_sr90, ModItems.nugget_sr90, SR90.allNuggets()); - addBillet(ModItems.billet_uranium, ModItems.ingot_uranium, ModItems.nugget_uranium, U.allNuggets()); - addBillet(ModItems.billet_u233, ModItems.ingot_u233, ModItems.nugget_u233, U233.allNuggets()); - addBillet(ModItems.billet_u235, ModItems.ingot_u235, ModItems.nugget_u235, U235.allNuggets()); - addBillet(ModItems.billet_u238, ModItems.ingot_u238, ModItems.nugget_u238, U238.allNuggets()); - addBillet(ModItems.billet_th232, ModItems.ingot_th232, ModItems.nugget_th232, TH232.allNuggets()); - addBillet(ModItems.billet_plutonium, ModItems.ingot_plutonium, ModItems.nugget_plutonium, PU.allNuggets()); - addBillet(ModItems.billet_pu238, ModItems.ingot_pu238, ModItems.nugget_pu238, PU238.allNuggets()); - addBillet(ModItems.billet_pu239, ModItems.ingot_pu239, ModItems.nugget_pu239, PU239.allNuggets()); - addBillet(ModItems.billet_pu240, ModItems.ingot_pu240, ModItems.nugget_pu240, PU240.allNuggets()); - addBillet(ModItems.billet_pu241, ModItems.ingot_pu241, ModItems.nugget_pu241, PU241.allNuggets()); + addBillet(ModItems.billet_sr90, ModItems.ingot_sr90, ModItems.nugget_sr90, SR90.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_uranium, ModItems.ingot_uranium, ModItems.nugget_uranium, U.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_u233, ModItems.ingot_u233, ModItems.nugget_u233, U233.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_u235, ModItems.ingot_u235, ModItems.nugget_u235, U235.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_u238, ModItems.ingot_u238, ModItems.nugget_u238, U238.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_th232, ModItems.ingot_th232, ModItems.nugget_th232, TH232.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_plutonium, ModItems.ingot_plutonium, ModItems.nugget_plutonium, PU.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_pu238, ModItems.ingot_pu238, ModItems.nugget_pu238, PU238.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_pu239, ModItems.ingot_pu239, ModItems.nugget_pu239, PU239.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_pu240, ModItems.ingot_pu240, ModItems.nugget_pu240, PU240.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_pu241, ModItems.ingot_pu241, ModItems.nugget_pu241, PU241.all(MaterialShapes.NUGGET)); addBillet(ModItems.billet_pu_mix, ModItems.ingot_pu_mix, ModItems.nugget_pu_mix); - addBillet(ModItems.billet_am241, ModItems.ingot_am241, ModItems.nugget_am241, AM241.allNuggets()); - addBillet(ModItems.billet_am242, ModItems.ingot_am242, ModItems.nugget_am242, AM242.allNuggets()); + addBillet(ModItems.billet_am241, ModItems.ingot_am241, ModItems.nugget_am241, AM241.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_am242, ModItems.ingot_am242, ModItems.nugget_am242, AM242.all(MaterialShapes.NUGGET)); addBillet(ModItems.billet_am_mix, ModItems.ingot_am_mix, ModItems.nugget_am_mix); - addBillet(ModItems.billet_neptunium, ModItems.ingot_neptunium, ModItems.nugget_neptunium, NP237.allNuggets()); - addBillet(ModItems.billet_polonium, ModItems.ingot_polonium, ModItems.nugget_polonium, PO210.allNuggets()); - addBillet(ModItems.billet_technetium, ModItems.ingot_technetium, ModItems.nugget_technetium, TC99.allNuggets()); - addBillet(ModItems.billet_au198, ModItems.ingot_au198, ModItems.nugget_au198, AU198.allNuggets()); - addBillet(ModItems.billet_pb209, ModItems.ingot_pb209, ModItems.nugget_pb209, PB209.allNuggets()); //and so forth - addBillet(ModItems.billet_ra226, ModItems.ingot_ra226, ModItems.nugget_ra226, RA226.allNuggets()); - addBillet(ModItems.billet_actinium, ModItems.ingot_actinium, ModItems.nugget_actinium, AC227.allNuggets()); + addBillet(ModItems.billet_neptunium, ModItems.ingot_neptunium, ModItems.nugget_neptunium, NP237.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_polonium, ModItems.ingot_polonium, ModItems.nugget_polonium, PO210.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_technetium, ModItems.ingot_technetium, ModItems.nugget_technetium, TC99.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_au198, ModItems.ingot_au198, ModItems.nugget_au198, AU198.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_pb209, ModItems.ingot_pb209, ModItems.nugget_pb209, PB209.all(MaterialShapes.NUGGET)); //and so forth + addBillet(ModItems.billet_ra226, ModItems.ingot_ra226, ModItems.nugget_ra226, RA226.all(MaterialShapes.NUGGET)); + addBillet(ModItems.billet_actinium, ModItems.ingot_actinium, ModItems.nugget_actinium, AC227.all(MaterialShapes.NUGGET)); addBillet(ModItems.billet_schrabidium, ModItems.ingot_schrabidium, ModItems.nugget_schrabidium, SA326.nugget()); addBillet(ModItems.billet_solinium, ModItems.ingot_solinium, ModItems.nugget_solinium, SA327.nugget()); - addBillet(ModItems.billet_gh336, ModItems.ingot_gh336, ModItems.nugget_gh336, GH336.allNuggets()); + addBillet(ModItems.billet_gh336, ModItems.ingot_gh336, ModItems.nugget_gh336, GH336.all(MaterialShapes.NUGGET)); addBillet(ModItems.billet_uranium_fuel, ModItems.ingot_uranium_fuel, ModItems.nugget_uranium_fuel); addBillet(ModItems.billet_thorium_fuel, ModItems.ingot_thorium_fuel, ModItems.nugget_thorium_fuel); addBillet(ModItems.billet_plutonium_fuel, ModItems.ingot_plutonium_fuel, ModItems.nugget_plutonium_fuel); diff --git a/src/main/java/com/hbm/hazard/HazardRegistry.java b/src/main/java/com/hbm/hazard/HazardRegistry.java index 0653efe8c..eeb51bcd8 100644 --- a/src/main/java/com/hbm/hazard/HazardRegistry.java +++ b/src/main/java/com/hbm/hazard/HazardRegistry.java @@ -498,8 +498,8 @@ public class HazardRegistry { /* * Blacklist */ - for(String ore : TH232.ores()) HazardSystem.blacklist(ore); - for(String ore : U.ores()) HazardSystem.blacklist(ore); + for(String ore : TH232.all(MaterialShapes.ORE)) HazardSystem.blacklist(ore); + for(String ore : U.all(MaterialShapes.ORE)) HazardSystem.blacklist(ore); /* @@ -523,7 +523,7 @@ public class HazardRegistry { }; for(MaterialShapes shape : MaterialShapes.allShapes) { - for(String prefix : shape.prefixes) { + if(!shape.noAutogen) for(String prefix : shape.prefixes) { for(Object[] o : data) { HazardSystem.register(prefix + o[0], new HazardData().setMutex(0b1).addEntry(new HazardEntry(RADIATION, (float) o[1] * shape.q(1) / MaterialShapes.INGOT.q(1)))); } diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index 973bf8000..ebf747ea7 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -9,7 +9,7 @@ import java.util.List; import static com.hbm.items.ModItems.*; import static com.hbm.blocks.ModBlocks.*; import static com.hbm.inventory.OreDictManager.DictFrame.*; -import static com.hbm.inventory.OreNames.*; +import static com.hbm.inventory.material.MaterialShapes.*; import com.hbm.blocks.ModBlocks; import com.hbm.blocks.generic.BlockOreBasalt.EnumBasaltOreType; @@ -205,6 +205,8 @@ public class OreDictManager { public static final DictFrame CMB = new DictFrame("CMBSteel"); public static final DictFrame DESH = new DictFrame("WorkersAlloy"); public static final DictFrame STAR = new DictFrame("Starmetal"); + public static final DictFrame GUNMETAL = new DictFrame("GunMetal"); + public static final DictFrame WEAPONSTEEL = new DictFrame("WeaponSteel"); public static final DictFrame BIGMT = new DictFrame("Saturnite"); public static final DictFrame FERRO = new DictFrame("Ferrouranium"); public static final DictFrame EUPH = new DictFrame("Euphemium"); @@ -409,6 +411,8 @@ public class OreDictManager { CMB .ingot(ingot_combine_steel) .dust(powder_combine_steel) .plate(plate_combine_steel) .block(block_combine_steel); DESH .nugget(nugget_desh) .ingot(ingot_desh) .dust(powder_desh) .block(block_desh); STAR .ingot(ingot_starmetal) .block(block_starmetal); + GUNMETAL .ingot(ingot_gunmetal); + WEAPONSTEEL .ingot(ingot_weaponsteel); BIGMT .ingot(ingot_saturnite) .plate(plate_saturnite); FERRO .ingot(ingot_ferrouranium); EUPH .nugget(nugget_euphemium) .ingot(ingot_euphemium) .dust(powder_euphemium) .block(block_euphemium); @@ -548,6 +552,14 @@ public class OreDictManager { } if(mat.shapes.contains(MaterialShapes.FRAGMENT)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.FRAGMENT.name() + name, new ItemStack(ModItems.bedrock_ore_fragment, 1, mat.id)); if(mat.shapes.contains(MaterialShapes.WIRE)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.WIRE.name() + name, new ItemStack(ModItems.wire_fine, 1, mat.id)); + + if(mat.shapes.contains(MaterialShapes.LIGHTBARREL)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.LIGHTBARREL.name() + name, new ItemStack(ModItems.part_barrel_light, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.HEAVYBARREL)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.HEAVYBARREL.name() + name, new ItemStack(ModItems.part_barrel_heavy, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.LIGHTRECEIVER)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.LIGHTRECEIVER.name() + name, new ItemStack(ModItems.part_receiver_light, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.HEAVYRECEIVER)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.HEAVYRECEIVER.name() + name, new ItemStack(ModItems.part_receiver_heavy, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.MECHANISM)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.MECHANISM.name() + name, new ItemStack(ModItems.part_mechanism, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.STOCK)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.STOCK.name() + name, new ItemStack(ModItems.part_stock, 1, mat.id)); + if(mat.shapes.contains(MaterialShapes.GRIP)) for(String name : mat.names) OreDictionary.registerOre(MaterialShapes.GRIP.name() + name, new ItemStack(ModItems.part_grip, 1, mat.id)); } for(EnumBedrockOre ore : EnumBedrockOre.values()) { @@ -669,8 +681,8 @@ public class OreDictManager { ANY_RUBBER.addPrefix(INGOT, true); ANY_PLASTIC.addPrefix(INGOT, true).addPrefix(DUST, true).addPrefix(BLOCK, true); ANY_HARDPLASTIC.addPrefix(INGOT, true); - ANY_RESISTANTALLOY.addPrefix(INGOT, true).addPrefix(DUST, true).addPrefix(PLATECAST, true).addPrefix(PLATEWELDED, true).addPrefix(HEAVY_COMPONENT, true).addPrefix(BLOCK, true); - ANY_BISMOIDBRONZE.addPrefix(INGOT, true).addPrefix(PLATECAST, true); + ANY_RESISTANTALLOY.addPrefix(INGOT, true).addPrefix(DUST, true).addPrefix(CASTPLATE, true).addPrefix(WELDEDPLATE, true).addPrefix(HEAVY_COMPONENT, true).addPrefix(BLOCK, true); + ANY_BISMOIDBRONZE.addPrefix(INGOT, true).addPrefix(CASTPLATE, true); ANY_TAR.addPrefix(ANY, false); } @@ -737,44 +749,28 @@ public class OreDictManager { /* * Quick access methods to grab ore names for recipes. */ - public String any() { return ANY + mats[0]; } - public String nugget() { return NUGGET + mats[0]; } - public String tiny() { return TINY + mats[0]; } - public String bolt() { return BOLT + mats[0]; } - public String ingot() { return INGOT + mats[0]; } - public String dustTiny() { return DUSTTINY + mats[0]; } - public String dust() { return DUST + mats[0]; } - public String gem() { return GEM + mats[0]; } - public String crystal() { return CRYSTAL + mats[0]; } - public String plate() { return PLATE + mats[0]; } - public String plateCast() { return PLATECAST + mats[0]; } - public String plateWelded() { return PLATEWELDED + mats[0]; } - public String heavyComp() { return HEAVY_COMPONENT + mats[0]; } - public String wireFine() { return WIRE + mats[0]; } - public String wireDense() { return WIREDENSE + mats[0]; } - public String shell() { return SHELL + mats[0]; } - public String pipe() { return PIPE + mats[0]; } - public String billet() { return BILLET + mats[0]; } - public String block() { return BLOCK + mats[0]; } - public String ore() { return ORE + mats[0]; } - public String fragment() { return FRAGMENT + mats[0]; } - public String[] anys() { return appendToAll(ANY); } - public String[] nuggets() { return appendToAll(NUGGET); } - public String[] tinys() { return appendToAll(TINY); } - public String[] allNuggets() { return appendToAll(NUGGET, TINY); } - public String[] ingots() { return appendToAll(INGOT); } - public String[] dustTinys() { return appendToAll(DUSTTINY); } - public String[] dusts() { return appendToAll(DUST); } - public String[] gems() { return appendToAll(GEM); } - public String[] crystals() { return appendToAll(CRYSTAL); } - public String[] plates() { return appendToAll(PLATE); } - public String[] plateCasts() { return appendToAll(PLATECAST); } - public String[] shells() { return appendToAll(SHELL); } - public String[] pipes() { return appendToAll(PIPE); } - public String[] billets() { return appendToAll(BILLET); } - public String[] blocks() { return appendToAll(BLOCK); } - public String[] ores() { return appendToAll(ORE); } - public String[] fragments() { return appendToAll(FRAGMENT); } + public String any() { return ANY.name() + mats[0]; } + public String nugget() { return NUGGET.name() + mats[0]; } + public String tiny() { return TINY.name() + mats[0]; } + public String bolt() { return BOLT.name() + mats[0]; } + public String ingot() { return INGOT.name() + mats[0]; } + public String dustTiny() { return DUSTTINY.name() + mats[0]; } + public String dust() { return DUST.name() + mats[0]; } + public String gem() { return GEM.name() + mats[0]; } + public String crystal() { return CRYSTAL.name() + mats[0]; } + public String plate() { return PLATE.name() + mats[0]; } + public String plateCast() { return CASTPLATE.name() + mats[0]; } + public String plateWelded() { return WELDEDPLATE.name() + mats[0]; } + public String heavyComp() { return HEAVY_COMPONENT.name() + mats[0]; } + public String wireFine() { return WIRE.name() + mats[0]; } + public String wireDense() { return DENSEWIRE.name() + mats[0]; } + public String shell() { return SHELL.name() + mats[0]; } + public String pipe() { return PIPE.name() + mats[0]; } + public String billet() { return BILLET.name() + mats[0]; } + public String block() { return BLOCK.name() + mats[0]; } + public String ore() { return ORE.name() + mats[0]; } + public String fragment() { return FRAGMENT.name() + mats[0]; } + public String[] all(MaterialShapes shape) { return appendToAll(shape.prefixes); } /** Returns cast (triple) plates if 528 mode is enabled or normal plates if not */ public String plate528() { return GeneralConfig.enable528 ? plateCast() : plate(); } @@ -868,7 +864,7 @@ public class OreDictManager { } public DictFrame plateCast(Object... plate) { hazMult = HazardRegistry.plateCast; - return makeObject(PLATECAST, plate); + return makeObject(CASTPLATE, plate); } public DictFrame billet(Object... billet) { hazMult = HazardRegistry.billet; @@ -888,8 +884,9 @@ public class OreDictManager { return makeObject(ORENETHER, oreNether); } - public DictFrame makeObject(String tag, Object... objects) { + public DictFrame makeObject(MaterialShapes shape, Object... objects) { + String tag = shape.name(); for(Object o : objects) { if(o instanceof Item) registerStack(tag, new ItemStack((Item) o)); if(o instanceof Block) registerStack(tag, new ItemStack((Block) o)); @@ -974,8 +971,9 @@ public class OreDictManager { * @param prefix The prefix of both the input and result of the reregistration * @return */ - public DictGroup addPrefix(String prefix, boolean inputPrefix) { + public DictGroup addPrefix(MaterialShapes shape, boolean inputPrefix) { + String prefix = shape.name(); String group = prefix + groupName; for(String name : names) { @@ -998,24 +996,24 @@ public class OreDictManager { return this; } - public String any() { return ANY + groupName; } - public String nugget() { return NUGGET + groupName; } - public String tiny() { return TINY + groupName; } - public String bolt() { return BOLT + groupName; } - public String ingot() { return INGOT + groupName; } - public String dustTiny() { return DUSTTINY + groupName; } - public String dust() { return DUST + groupName; } - public String gem() { return GEM + groupName; } - public String crystal() { return CRYSTAL + groupName; } - public String plate() { return PLATE + groupName; } - public String plateCast() { return PLATECAST + groupName; } - public String plateWelded() { return PLATEWELDED + groupName; } - public String heavyComp() { return HEAVY_COMPONENT + groupName; } - public String wireFine() { return WIRE + groupName; } - public String wireDense() { return WIREDENSE + groupName; } - public String billet() { return BILLET + groupName; } - public String block() { return BLOCK + groupName; } - public String ore() { return ORE + groupName; } + public String any() { return ANY.name() + groupName; } + public String nugget() { return NUGGET.name() + groupName; } + public String tiny() { return TINY.name() + groupName; } + public String bolt() { return BOLT.name() + groupName; } + public String ingot() { return INGOT.name() + groupName; } + public String dustTiny() { return DUSTTINY .name() + groupName; } + public String dust() { return DUST.name() + groupName; } + public String gem() { return GEM.name() + groupName; } + public String crystal() { return CRYSTAL.name() + groupName; } + public String plate() { return PLATE.name() + groupName; } + public String plateCast() { return CASTPLATE.name() + groupName; } + public String plateWelded() { return WELDEDPLATE.name() + groupName; } + public String heavyComp() { return HEAVY_COMPONENT.name() + groupName; } + public String wireFine() { return WIRE.name() + groupName; } + public String wireDense() { return DENSEWIRE.name() + groupName; } + public String billet() { return BILLET.name() + groupName; } + public String block() { return BLOCK.name() + groupName; } + public String ore() { return ORE.name() + groupName; } } private static void addReRegistration(String original, String additional) { diff --git a/src/main/java/com/hbm/inventory/OreNames.java b/src/main/java/com/hbm/inventory/OreNames.java deleted file mode 100644 index 036d82ead..000000000 --- a/src/main/java/com/hbm/inventory/OreNames.java +++ /dev/null @@ -1,34 +0,0 @@ -package com.hbm.inventory; - -public class OreNames { - - /* - * PREFIXES - */ - public static final String ANY = "any"; - public static final String NUGGET = "nugget"; - public static final String TINY = "tiny"; - public static final String FRAGMENT = "bedrockorefragment"; - public static final String BOLT = "bolt"; - public static final String INGOT = "ingot"; - public static final String DUSTTINY = "dustTiny"; - public static final String DUST = "dust"; - public static final String GEM = "gem"; - public static final String CRYSTAL = "crystal"; - public static final String PLATE = "plate"; - public static final String PLATECAST = "plateTriple"; //cast plates are solid plates made from 3 ingots, turns out that's literally just a GT triple plate - public static final String PLATEWELDED = "plateSextuple"; - public static final String SHELL = "shell"; - public static final String PIPE = "ntmpipe"; - public static final String WIRE = "wireFine"; - public static final String WIREDENSE = "wireDense"; - public static final String BILLET = "billet"; - public static final String BLOCK = "block"; - public static final String ORE = "ore"; - public static final String ORENETHER = "oreNether"; - public static final String HEAVY_COMPONENT = "componentHeavy"; - - public static final String[] prefixes = new String[] { - ANY, NUGGET, TINY, FRAGMENT, BOLT, INGOT, DUSTTINY, DUST, GEM, CRYSTAL, PLATE, PLATECAST, BILLET, BLOCK, ORE, ORENETHER, HEAVY_COMPONENT, WIRE, WIREDENSE - }; -} diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineSolderingStation.java b/src/main/java/com/hbm/inventory/gui/GUIMachineSolderingStation.java index 1a3a3f363..7e718b9f9 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineSolderingStation.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineSolderingStation.java @@ -4,11 +4,16 @@ import org.lwjgl.opengl.GL11; import com.hbm.inventory.container.ContainerMachineSolderingStation; import com.hbm.lib.RefStrings; +import com.hbm.packet.PacketDispatcher; +import com.hbm.packet.toserver.NBTControlPacket; import com.hbm.tileentity.machine.TileEntityMachineSolderingStation; import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.PositionedSoundRecord; import net.minecraft.client.resources.I18n; import net.minecraft.entity.player.InventoryPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.EnumChatFormatting; import net.minecraft.util.ResourceLocation; public class GUIMachineSolderingStation extends GuiInfoContainer { @@ -32,6 +37,24 @@ public class GUIMachineSolderingStation extends GuiInfoContainer { this.drawElectricityInfo(this, x, y, guiLeft + 152, guiTop + 18, 16, 52, solderer.getPower(), solderer.getMaxPower()); this.drawCustomInfoStat(x, y, guiLeft + 78, guiTop + 67, 8, 8, guiLeft + 78, guiTop + 67, this.getUpgradeInfo(solderer)); + + + this.drawCustomInfoStat(x, y, guiLeft + 5, guiTop + 66, 10, 10, x, y, + "Recipe Collision Prevention: " + (solderer.collisionPrevention ? EnumChatFormatting.GREEN + "ON" : EnumChatFormatting.RED + "OFF"), + "Prevents no-fluid recipes from being processed", + "when fluid is present."); + } + + @Override + protected void mouseClicked(int x, int y, int i) { + super.mouseClicked(x, y, i); + + if(guiLeft + 5 <= x && guiLeft + 5 + 10 > x && guiTop + 66 < y && guiTop + 66 + 10 >= y) { + mc.getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("gui.button.press"), 1.0F)); + NBTTagCompound data = new NBTTagCompound(); + data.setBoolean("collision", true); + PacketDispatcher.wrapper.sendToServer(new NBTControlPacket(data, solderer.xCoord, solderer.yCoord, solderer.zCoord)); + } } @Override diff --git a/src/main/java/com/hbm/inventory/material/MaterialShapes.java b/src/main/java/com/hbm/inventory/material/MaterialShapes.java index a7cd59f3d..7e3f12b07 100644 --- a/src/main/java/com/hbm/inventory/material/MaterialShapes.java +++ b/src/main/java/com/hbm/inventory/material/MaterialShapes.java @@ -9,8 +9,13 @@ public class MaterialShapes { public static final List allShapes = new ArrayList(); + public static final MaterialShapes ANY = new MaterialShapes(0).noAutogen(); + public static final MaterialShapes ORE = new MaterialShapes(0, "ore", "oreNether").noAutogen(); + public static final MaterialShapes ORENETHER = new MaterialShapes(0, "oreNether").noAutogen(); + public static final MaterialShapes QUANTUM = new MaterialShapes(1); // 1/72 of an ingot, allows the ingot to be divisible through 2, 4, 6, 8, 9, 12, 24 and 36 - public static final MaterialShapes NUGGET = new MaterialShapes(8, "nugget"); + public static final MaterialShapes NUGGET = new MaterialShapes(8, "nugget", "tiny"); + public static final MaterialShapes TINY = new MaterialShapes(8, "tiny").noAutogen(); public static final MaterialShapes FRAGMENT = new MaterialShapes(8, "bedrockorefragment"); public static final MaterialShapes DUSTTINY = new MaterialShapes(NUGGET.quantity, "dustTiny"); public static final MaterialShapes WIRE = new MaterialShapes(9, "wireFine"); @@ -29,28 +34,37 @@ public class MaterialShapes { public static final MaterialShapes QUART = new MaterialShapes(162); public static final MaterialShapes BLOCK = new MaterialShapes(INGOT.quantity * 9, "block"); public static final MaterialShapes HEAVY_COMPONENT = new MaterialShapes(CASTPLATE.quantity * 256, "componentHeavy"); + + public static final MaterialShapes LIGHTBARREL = new MaterialShapes(INGOT.quantity * 3, "barrelLight"); + public static final MaterialShapes HEAVYBARREL = new MaterialShapes(INGOT.quantity * 6, "barrelHeavy"); + public static final MaterialShapes LIGHTRECEIVER = new MaterialShapes(INGOT.quantity * 4, "receiverLight"); + public static final MaterialShapes HEAVYRECEIVER = new MaterialShapes(INGOT.quantity * 9, "receiverHeavy"); + public static final MaterialShapes MECHANISM = new MaterialShapes(INGOT.quantity * 4, "gunMechanism"); + public static final MaterialShapes STOCK = new MaterialShapes(INGOT.quantity * 4, "stock"); + public static final MaterialShapes GRIP = new MaterialShapes(INGOT.quantity * 2, "grip"); public static void registerCompatShapes() { if(Compat.isModLoaded(Compat.MOD_GT6)) { - new MaterialShapes(BLOCK.q(1), "blockDust"); - new MaterialShapes(BLOCK.q(1), "blockGem"); - new MaterialShapes(BLOCK.q(1), "blockIngot"); - new MaterialShapes(BLOCK.q(1), "blockSolid"); - new MaterialShapes(INGOT.q(9, 8), "crushed"); - new MaterialShapes(INGOT.q(9, 72), "crushedTiny"); - new MaterialShapes(INGOT.q(10, 8), "crushedPurified"); - new MaterialShapes(INGOT.q(10, 72), "crushedPurifiedTiny"); - new MaterialShapes(INGOT.q(11, 8), "crushedCentrifuged"); - new MaterialShapes(INGOT.q(11, 72), "crushedCentrifugedTiny"); - new MaterialShapes(INGOT.q(1, 4), "dustSmall"); - new MaterialShapes(INGOT.q(1, 72), "dustDiv72"); - new MaterialShapes(INGOT.q(10, 9), "dustImpure"); - new MaterialShapes(INGOT.q(11, 9), "dustPure"); - new MaterialShapes(INGOT.q(12, 9), "dustRefined"); + new MaterialShapes(BLOCK.q(1), "blockDust").noAutogen(); + new MaterialShapes(BLOCK.q(1), "blockGem").noAutogen(); + new MaterialShapes(BLOCK.q(1), "blockIngot").noAutogen(); + new MaterialShapes(BLOCK.q(1), "blockSolid").noAutogen(); + new MaterialShapes(INGOT.q(9, 8), "crushed").noAutogen(); + new MaterialShapes(INGOT.q(9, 72), "crushedTiny").noAutogen(); + new MaterialShapes(INGOT.q(10, 8), "crushedPurified").noAutogen(); + new MaterialShapes(INGOT.q(10, 72), "crushedPurifiedTiny").noAutogen(); + new MaterialShapes(INGOT.q(11, 8), "crushedCentrifuged").noAutogen(); + new MaterialShapes(INGOT.q(11, 72), "crushedCentrifugedTiny").noAutogen(); + new MaterialShapes(INGOT.q(1, 4), "dustSmall").noAutogen(); + new MaterialShapes(INGOT.q(1, 72), "dustDiv72").noAutogen(); + new MaterialShapes(INGOT.q(10, 9), "dustImpure").noAutogen(); + new MaterialShapes(INGOT.q(11, 9), "dustPure").noAutogen(); + new MaterialShapes(INGOT.q(12, 9), "dustRefined").noAutogen(); } } + public boolean noAutogen = false; private int quantity; public final String[] prefixes; @@ -65,6 +79,12 @@ public class MaterialShapes { allShapes.add(this); } + /** Disables recipe autogen for special cases like compatibility prefixes (TINY, ORENETHER), technical prefixes (ANY) or prefixes that have to be handled manually (ORE) */ + public MaterialShapes noAutogen() { + this.noAutogen = true; + return this; + } + public int q(int amount) { return this.quantity * amount; } @@ -76,4 +96,8 @@ public class MaterialShapes { public String name() { return (prefixes != null && prefixes.length > 0) ? prefixes[0] : "unknown"; } + + public String make(NTMMaterial mat) { + return this.name() + mat.names[0]; + } } diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java index 3739f9fd1..dd1bee085 100644 --- a/src/main/java/com/hbm/inventory/material/Mats.java +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -131,25 +131,27 @@ public class Mats { public static final NTMMaterial MAT_OSMIRIDIUM = makeSmeltable(7699, OSMIRIDIUM, 0xDBE3EF, 0x7891BE, 0xACBDD9).setShapes(NUGGET, INGOT, CASTPLATE, WELDEDPLATE).m(); //Alloys - public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_MINGRADE = makeSmeltable(_AS + 1, MINGRADE, 0xFFBA7D, 0xAF1700, 0xE44C0F).setShapes(WIRE, INGOT, DUST, BLOCK).m(); - public static final NTMMaterial MAT_ALLOY = makeSmeltable(_AS + 2, ALLOY, 0xFF8330, 0x700000, 0xFF7318).setShapes(WIRE, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK).m(); - public static final NTMMaterial MAT_SATURN = makeSmeltable(_AS + 4, BIGMT, 0x4DA3AF, 0x00000C, 0x4DA3AF).setShapes(INGOT, DUST, PLATE, CASTPLATE, BLOCK).m(); - public static final NTMMaterial MAT_DESH = makeSmeltable(_AS + 12, DESH, 0xFF6D6D, 0x720000, 0xF22929).setShapes(INGOT, DUST, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_STAR = makeSmeltable(_AS + 5, STAR, 0xCCCCEA, 0x11111A, 0xA5A5D3).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m(); - public static final NTMMaterial MAT_FERRO = makeSmeltable(_AS + 7, FERRO, 0xB7B7C9, 0x101022, 0x6B6B8B).setShapes(INGOT).m(); - public static final NTMMaterial MAT_TCALLOY = makeSmeltable(_AS + 6, TCALLOY, 0xD4D6D6, 0x323D3D, 0x9CA6A6).setShapes(INGOT, DUST, CASTPLATE, WELDEDPLATE, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_CDALLOY = makeSmeltable(_AS + 13, CDALLOY, 0xF7DF8F, 0x604308, 0xFBD368).setShapes(INGOT, CASTPLATE, WELDEDPLATE, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_BBRONZE = makeSmeltable(_AS + 16, BBRONZE, 0xE19A69, 0x485353, 0x987D65).setShapes(INGOT, CASTPLATE).m(); - public static final NTMMaterial MAT_ABRONZE = makeSmeltable(_AS + 17, ABRONZE, 0xDB9462, 0x203331, 0x77644D).setShapes(INGOT, CASTPLATE).m(); - public static final NTMMaterial MAT_BSCCO = makeSmeltable(_AS + 18, BSCCO, 0x767BF1, 0x000000, 0x5E62C0).setShapes(INGOT, DENSEWIRE).m(); - public static final NTMMaterial MAT_MAGTUNG = makeSmeltable(_AS + 8, MAGTUNG, 0x22A2A2, 0x0F0F0F, 0x22A2A2).setShapes(WIRE, INGOT, DUST, DENSEWIRE, BLOCK).m(); - public static final NTMMaterial MAT_CMB = makeSmeltable(_AS + 9, CMB, 0x6F6FB4, 0x000011, 0x6F6FB4).setShapes(INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, BLOCK).m(); - public static final NTMMaterial MAT_DNT = makeSmeltable(_AS + 15, DNT, 0x7582B9, 0x16000E, 0x455289).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m(); - public static final NTMMaterial MAT_FLUX = makeAdditive(_AS + 10, df("Flux"), 0xF1E0BB, 0x6F6256, 0xDECCAD).setShapes(DUST).n(); - public static final NTMMaterial MAT_SLAG = makeSmeltable(_AS + 11, SLAG, 0x554940, 0x34281F, 0x6C6562).setShapes(BLOCK).n(); - public static final NTMMaterial MAT_MUD = makeSmeltable(_AS + 14, MUD, 0xBCB5A9, 0x481213, 0x96783B).setShapes(INGOT).n(); + public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_MINGRADE = makeSmeltable(_AS + 1, MINGRADE, 0xFFBA7D, 0xAF1700, 0xE44C0F).setShapes(WIRE, INGOT, DUST, BLOCK).m(); + public static final NTMMaterial MAT_ALLOY = makeSmeltable(_AS + 2, ALLOY, 0xFF8330, 0x700000, 0xFF7318).setShapes(WIRE, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK).m(); + public static final NTMMaterial MAT_DESH = makeSmeltable(_AS + 12, DESH, 0xFF6D6D, 0x720000, 0xF22929).setShapes(INGOT, DUST, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_STAR = makeSmeltable(_AS + 5, STAR, 0xCCCCEA, 0x11111A, 0xA5A5D3).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m(); + public static final NTMMaterial MAT_FERRO = makeSmeltable(_AS + 7, FERRO, 0xB7B7C9, 0x101022, 0x6B6B8B).setShapes(INGOT).m(); + public static final NTMMaterial MAT_TCALLOY = makeSmeltable(_AS + 6, TCALLOY, 0xD4D6D6, 0x323D3D, 0x9CA6A6).setShapes(INGOT, DUST, CASTPLATE, WELDEDPLATE, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_CDALLOY = makeSmeltable(_AS + 13, CDALLOY, 0xF7DF8F, 0x604308, 0xFBD368).setShapes(INGOT, CASTPLATE, WELDEDPLATE, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_BBRONZE = makeSmeltable(_AS + 16, BBRONZE, 0xE19A69, 0x485353, 0x987D65).setShapes(INGOT, CASTPLATE).m(); + public static final NTMMaterial MAT_ABRONZE = makeSmeltable(_AS + 17, ABRONZE, 0xDB9462, 0x203331, 0x77644D).setShapes(INGOT, CASTPLATE).m(); + public static final NTMMaterial MAT_BSCCO = makeSmeltable(_AS + 18, BSCCO, 0x767BF1, 0x000000, 0x5E62C0).setShapes(INGOT, DENSEWIRE).m(); + public static final NTMMaterial MAT_MAGTUNG = makeSmeltable(_AS + 8, MAGTUNG, 0x22A2A2, 0x0F0F0F, 0x22A2A2).setShapes(WIRE, INGOT, DUST, DENSEWIRE, BLOCK).m(); + public static final NTMMaterial MAT_CMB = makeSmeltable(_AS + 9, CMB, 0x6F6FB4, 0x000011, 0x6F6FB4).setShapes(INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, BLOCK).m(); + public static final NTMMaterial MAT_DNT = makeSmeltable(_AS + 15, DNT, 0x7582B9, 0x16000E, 0x455289).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m(); + public static final NTMMaterial MAT_FLUX = makeAdditive(_AS + 10, df("Flux"), 0xF1E0BB, 0x6F6256, 0xDECCAD).setShapes(DUST).n(); + public static final NTMMaterial MAT_SLAG = makeSmeltable(_AS + 11, SLAG, 0x554940, 0x34281F, 0x6C6562).setShapes(BLOCK).n(); + public static final NTMMaterial MAT_MUD = makeSmeltable(_AS + 14, MUD, 0xBCB5A9, 0x481213, 0x96783B).setShapes(INGOT).n(); + public static final NTMMaterial MAT_GUNMETAL = makeSmeltable(_AS + 19, GUNMETAL, 0xFFEF3F, 0xAD3600, 0xF9C62C).setShapes(INGOT, LIGHTBARREL, HEAVYBARREL, LIGHTRECEIVER, HEAVYRECEIVER, MECHANISM, STOCK, GRIP).n(); + public static final NTMMaterial MAT_WEAPONSTEEL = makeSmeltable(_AS + 20, WEAPONSTEEL, 0xA0A0A0, 0x000000, 0x808080).setShapes(INGOT, LIGHTBARREL, HEAVYBARREL, LIGHTRECEIVER, HEAVYRECEIVER, MECHANISM, STOCK, GRIP).n(); + public static final NTMMaterial MAT_SATURN = makeSmeltable(_AS + 4, BIGMT, 0x3AC4DA, 0x09282C, 0x30A4B7).setShapes(INGOT, PLATE, CASTPLATE, BLOCK, LIGHTBARREL, HEAVYBARREL, LIGHTRECEIVER, HEAVYRECEIVER, MECHANISM, STOCK, GRIP).m(); //Extension public static final NTMMaterial MAT_RAREEARTH = makeNonSmeltable(_ES + 00, RAREEARTH, 0xC1BDBD, 0x384646, 0x7B7F7F).setShapes(FRAGMENT, INGOT).n(); diff --git a/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java index c32d31a52..800bd9ac6 100644 --- a/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/ArcFurnaceRecipes.java @@ -82,14 +82,16 @@ public class ArcFurnaceRecipes extends SerializableRecipe { NTMMaterial convert = material.smeltsInto; if(convert.smeltable == SmeltingBehavior.SMELTABLE) { for(MaterialShapes shape : MaterialShapes.allShapes) { - String name = shape.name() + material.names[0]; - if(!OreDictionary.getOres(name).isEmpty()) { - OreDictStack dict = new OreDictStack(name); - ArcFurnaceRecipe recipe = recipes.get(dict); - if(recipe == null) recipe = new ArcFurnaceRecipe(); - if(recipe.fluidOutput == null) { - recipe.fluid(new MaterialStack(convert, (int) (shape.q(1) * out / in))); - recipes.put(dict, recipe); + if(!shape.noAutogen) { + String name = shape.name() + material.names[0]; + if(!OreDictionary.getOres(name).isEmpty()) { + OreDictStack dict = new OreDictStack(name); + ArcFurnaceRecipe recipe = recipes.get(dict); + if(recipe == null) recipe = new ArcFurnaceRecipe(); + if(recipe.fluidOutput == null) { + recipe.fluid(new MaterialStack(convert, (int) (shape.q(1) * out / in))); + recipes.put(dict, recipe); + } } } } diff --git a/src/main/java/com/hbm/inventory/recipes/CrucibleRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrucibleRecipes.java index 919efab4f..fe489691e 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrucibleRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrucibleRecipes.java @@ -258,14 +258,15 @@ public class CrucibleRecipes extends SerializableRecipe { NTMMaterial convert = material.smeltsInto; if(convert.smeltable == SmeltingBehavior.SMELTABLE || convert.smeltable == SmeltingBehavior.ADDITIVE) for(MaterialShapes shape : MaterialShapes.allShapes) { //TODO: buffer these - - String name = shape.name() + material.names[0]; - List ores = OreDictionary.getOres(name); - - if(!ores.isEmpty()) { - List stacks = new ArrayList(); - stacks.add(ItemScraps.create(new MaterialStack(convert, (int) (shape.q(1) * out / in)), true)); - map.put(new OreDictStack(name), stacks); + if(!shape.noAutogen) { + String name = shape.make(material); + List ores = OreDictionary.getOres(name); + + if(!ores.isEmpty()) { + List stacks = new ArrayList(); + stacks.add(ItemScraps.create(new MaterialStack(convert, (int) (shape.q(1) * out / in)), true)); + map.put(new OreDictStack(name), stacks); + } } } } diff --git a/src/main/java/com/hbm/inventory/recipes/PressRecipes.java b/src/main/java/com/hbm/inventory/recipes/PressRecipes.java index db090d982..eab661cfc 100644 --- a/src/main/java/com/hbm/inventory/recipes/PressRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/PressRecipes.java @@ -10,7 +10,6 @@ import static com.hbm.inventory.OreDictManager.*; import com.google.gson.JsonElement; import com.google.gson.JsonObject; import com.google.gson.stream.JsonWriter; -import com.hbm.inventory.OreNames; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; @@ -88,7 +87,7 @@ public class PressRecipes extends SerializableRecipe { for(NTMMaterial mat : Mats.orderedList) { if(mat.shapes.contains(MaterialShapes.WIRE) && mat.shapes.contains(MaterialShapes.INGOT)) { - makeRecipe(StampType.WIRE, new OreDictStack(OreNames.INGOT + mat.names[0]), new ItemStack(ModItems.wire_fine, 8, mat.id)); + makeRecipe(StampType.WIRE, new OreDictStack(MaterialShapes.INGOT.make(mat)), new ItemStack(ModItems.wire_fine, 8, mat.id)); } } diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java index 8ca863583..2f52054d6 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -6,7 +6,6 @@ import java.util.List; import com.hbm.blocks.ModBlocks; import com.hbm.config.GeneralConfig; import com.hbm.inventory.OreDictManager; -import com.hbm.inventory.OreNames; import com.hbm.inventory.OreDictManager.DictFrame; import static com.hbm.inventory.OreDictManager.*; @@ -110,8 +109,8 @@ public class AnvilRecipes { new ItemStack(ModItems.stamp_titanium_flat), new ItemStack(ModItems.stamp_obsidian_flat) })); - smithingRecipes.add(new AnvilSmithingMold(8, new OreDictStack(STEEL.shell()), new OreDictStack(OreNames.SHELL))); - smithingRecipes.add(new AnvilSmithingMold(9, new OreDictStack(STEEL.pipe()), new OreDictStack(OreNames.PIPE))); + smithingRecipes.add(new AnvilSmithingMold(8, new OreDictStack(STEEL.shell()), new OreDictStack(MaterialShapes.SHELL.name()))); + smithingRecipes.add(new AnvilSmithingMold(9, new OreDictStack(STEEL.pipe()), new OreDictStack(MaterialShapes.PIPE.name()))); smithingRecipes.add(new AnvilSmithingMold(10, new OreDictStack(IRON.ingot(), 9), new OreDictStack("ingot", 9))); smithingRecipes.add(new AnvilSmithingMold(11, new OreDictStack(IRON.plate(), 9), new OreDictStack("plate", 9))); smithingRecipes.add(new AnvilSmithingMold(12, new OreDictStack(IRON.block()), new OreDictStack("block"))); @@ -152,7 +151,7 @@ public class AnvilRecipes { for(NTMMaterial mat : Mats.orderedList) { if(mat.shapes.contains(MaterialShapes.WIRE) && mat.shapes.contains(MaterialShapes.INGOT)) { - constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(OreNames.INGOT + mat.names[0]), new AnvilOutput(new ItemStack(ModItems.wire_fine, 8, mat.id))).setTier(4)); + constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(MaterialShapes.INGOT.name() + mat.names[0]), new AnvilOutput(new ItemStack(ModItems.wire_fine, 8, mat.id))).setTier(4)); } } diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilSmithingMold.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilSmithingMold.java index 5dd1bef82..11a1693a3 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilSmithingMold.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilSmithingMold.java @@ -2,10 +2,10 @@ package com.hbm.inventory.recipes.anvil; import java.util.List; -import com.hbm.inventory.OreNames; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; +import com.hbm.inventory.material.MaterialShapes; import com.hbm.items.ModItems; import com.hbm.util.ItemStackUtil; @@ -34,7 +34,7 @@ public class AnvilSmithingMold extends AnvilSmithingRecipe { for(String name : names) { - for(String otherPrefix : OreNames.prefixes) { + for(MaterialShapes shape : MaterialShapes.allShapes) for(String otherPrefix : shape.prefixes) { if(otherPrefix.length() > matchesPrefix.name.length() && name.startsWith(otherPrefix)) { return false; //ignore if there's a longer prefix that matches (i.e. a more accurate match) } diff --git a/src/main/java/com/hbm/items/ItemCustomLore.java b/src/main/java/com/hbm/items/ItemCustomLore.java index b8598c288..15dab0dd7 100644 --- a/src/main/java/com/hbm/items/ItemCustomLore.java +++ b/src/main/java/com/hbm/items/ItemCustomLore.java @@ -51,23 +51,27 @@ public class ItemCustomLore extends Item { if(this == ModItems.undefined) { - if(player.worldObj.rand.nextInt(10) == 0) { - list.add(EnumChatFormatting.DARK_RED + "UNDEFINED"); - } else { - Random rand = new Random(System.currentTimeMillis() / 500); - - if(setSize == 0) - setSize = Item.itemRegistry.getKeys().size(); - - int r = rand.nextInt(setSize); - - Item item = Item.getItemById(r); - - if(item != null) { - list.add(new ItemStack(item).getDisplayName()); + try { + if(player.worldObj.rand.nextInt(10) == 0) { + list.add(EnumChatFormatting.DARK_RED + "UNDEFINED"); } else { - list.add(EnumChatFormatting.RED + "ERROR #" + r); + Random rand = new Random(System.currentTimeMillis() / 500); + + if(setSize == 0) + setSize = Item.itemRegistry.getKeys().size(); + + int r = rand.nextInt(setSize); + + Item item = Item.getItemById(r); + + if(item != null) { + list.add(new ItemStack(item).getDisplayName()); + } else { + list.add(EnumChatFormatting.RED + "ERROR #" + r); + } } + } catch(Exception ex) { + list.add(EnumChatFormatting.DARK_RED + "UNDEFINED"); } } } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index fc268d07a..f30ea49fc 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -768,6 +768,13 @@ public class ModItems { public static Item heavy_component; public static Item wire_fine; public static Item wire_dense; + public static Item part_barrel_light; + public static Item part_barrel_heavy; + public static Item part_receiver_light; + public static Item part_receiver_heavy; + public static Item part_mechanism; + public static Item part_stock; + public static Item part_grip; public static Item part_lithium; public static Item part_beryllium; @@ -3198,6 +3205,14 @@ public class ModItems { .aot(Mats.MAT_CARBON, "wire_carbon").aot(Mats.MAT_SCHRABIDIUM, "wire_schrabidium") .aot(Mats.MAT_MAGTUNG, "wire_magnetized_tungsten").setUnlocalizedName("wire_fine").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":wire_fine"); wire_dense = new ItemAutogen(MaterialShapes.DENSEWIRE).setUnlocalizedName("wire_dense").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":wire_dense"); + + part_barrel_light = new ItemAutogen(MaterialShapes.LIGHTBARREL).setUnlocalizedName("part_barrel_light").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_barrel_light"); + part_barrel_heavy = new ItemAutogen(MaterialShapes.HEAVYBARREL).setUnlocalizedName("part_barrel_heavy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_barrel_heavy"); + part_receiver_light = new ItemAutogen(MaterialShapes.LIGHTRECEIVER).setUnlocalizedName("part_receiver_light").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_receiver_light"); + part_receiver_heavy = new ItemAutogen(MaterialShapes.HEAVYRECEIVER).setUnlocalizedName("part_receiver_heavy").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_receiver_heavy"); + part_mechanism = new ItemAutogen(MaterialShapes.MECHANISM).setUnlocalizedName("part_mechanism").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_mechanism"); + part_stock = new ItemAutogen(MaterialShapes.STOCK).setUnlocalizedName("part_stock").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_stock"); + part_grip = new ItemAutogen(MaterialShapes.GRIP).setUnlocalizedName("part_grip").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":part_grip"); part_lithium = new Item().setUnlocalizedName("part_lithium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":part_lithium"); part_beryllium = new Item().setUnlocalizedName("part_beryllium").setCreativeTab(MainRegistry.controlTab).setTextureName(RefStrings.MODID + ":part_beryllium"); @@ -6009,15 +6024,9 @@ public class ModItems { GameRegistry.registerItem(motor_desh, motor_desh.getUnlocalizedName()); GameRegistry.registerItem(motor_bismuth, motor_bismuth.getUnlocalizedName()); GameRegistry.registerItem(centrifuge_element, centrifuge_element.getUnlocalizedName()); - //GameRegistry.registerItem(centrifuge_tower, centrifuge_tower.getUnlocalizedName()); - //GameRegistry.registerItem(magnet_dee, magnet_dee.getUnlocalizedName()); GameRegistry.registerItem(magnet_circular, magnet_circular.getUnlocalizedName()); - //GameRegistry.registerItem(cyclotron_tower, cyclotron_tower.getUnlocalizedName()); GameRegistry.registerItem(reactor_core, reactor_core.getUnlocalizedName()); GameRegistry.registerItem(rtg_unit, rtg_unit.getUnlocalizedName()); - //GameRegistry.registerItem(thermo_unit_empty, thermo_unit_empty.getUnlocalizedName()); - //GameRegistry.registerItem(thermo_unit_endo, thermo_unit_endo.getUnlocalizedName()); - //GameRegistry.registerItem(thermo_unit_exo, thermo_unit_exo.getUnlocalizedName()); GameRegistry.registerItem(levitation_unit, levitation_unit.getUnlocalizedName()); GameRegistry.registerItem(pipes_steel, pipes_steel.getUnlocalizedName()); GameRegistry.registerItem(drill_titanium, drill_titanium.getUnlocalizedName()); @@ -6032,6 +6041,13 @@ public class ModItems { GameRegistry.registerItem(parts_legendary, parts_legendary.getUnlocalizedName()); GameRegistry.registerItem(gear_large, gear_large.getUnlocalizedName()); GameRegistry.registerItem(sawblade, sawblade.getUnlocalizedName()); + GameRegistry.registerItem(part_barrel_light, part_barrel_light.getUnlocalizedName()); + GameRegistry.registerItem(part_barrel_heavy, part_barrel_heavy.getUnlocalizedName()); + GameRegistry.registerItem(part_receiver_light, part_receiver_light.getUnlocalizedName()); + GameRegistry.registerItem(part_receiver_heavy, part_receiver_heavy.getUnlocalizedName()); + GameRegistry.registerItem(part_mechanism, part_mechanism.getUnlocalizedName()); + GameRegistry.registerItem(part_stock, part_stock.getUnlocalizedName()); + GameRegistry.registerItem(part_grip, part_grip.getUnlocalizedName()); //Plant Products GameRegistry.registerItem(plant_item, plant_item.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSolderingStation.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSolderingStation.java index 2fb4a1380..be2d34aa9 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSolderingStation.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineSolderingStation.java @@ -3,6 +3,7 @@ package com.hbm.tileentity.machine; import java.util.List; import com.hbm.blocks.ModBlocks; +import com.hbm.interfaces.IControlReceiver; import com.hbm.inventory.UpgradeManager; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.container.ContainerMachineSolderingStation; @@ -38,11 +39,12 @@ import net.minecraft.util.EnumChatFormatting; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityMachineSolderingStation extends TileEntityMachineBase implements IEnergyReceiverMK2, IFluidStandardReceiver, IGUIProvider, IUpgradeInfoProvider, IFluidCopiable { +public class TileEntityMachineSolderingStation extends TileEntityMachineBase implements IEnergyReceiverMK2, IFluidStandardReceiver, IControlReceiver, IGUIProvider, IUpgradeInfoProvider, IFluidCopiable { public long power; public long maxPower = 2_000; public long consumption; + public boolean collisionPrevention = false; public int progress; public int processTime = 1; @@ -140,6 +142,7 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp data.setLong("consumption", consumption); data.setInteger("progress", progress); data.setInteger("processTime", processTime); + data.setBoolean("collisionPrevention", collisionPrevention); if(recipe != null) { data.setInteger("display", Item.getIdFromItem(recipe.output.getItem())); data.setInteger("displayMeta", recipe.output.getItemDamage()); @@ -158,7 +161,7 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp if(this.tank.getFill() < recipe.fluid.fill) return false; } - if(recipe.fluid == null && this.tank.getFill() > 0) return false; + if(collisionPrevention && recipe.fluid == null && this.tank.getFill() > 0) return false; if(slots[6] != null) { if(slots[6].getItem() != recipe.output.getItem()) return false; @@ -248,6 +251,7 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp this.consumption = nbt.getLong("consumption"); this.progress = nbt.getInteger("progress"); this.processTime = nbt.getInteger("processTime"); + this.collisionPrevention = nbt.getBoolean("collisionPrevention"); if(nbt.hasKey("display")) { this.display = new ItemStack(Item.getItemById(nbt.getInteger("display")), 1, nbt.getInteger("displayMeta")); @@ -266,6 +270,7 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp this.maxPower = nbt.getLong("maxPower"); this.progress = nbt.getInteger("progress"); this.processTime = nbt.getInteger("processTime"); + this.collisionPrevention = nbt.getBoolean("collisionPrevention"); tank.readFromNBT(nbt, "t"); } @@ -277,6 +282,7 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp nbt.setLong("maxPower", maxPower); nbt.setInteger("progress", progress); nbt.setInteger("processTime", processTime); + nbt.setBoolean("collisionPrevention", collisionPrevention); tank.writeToNBT(nbt, "t"); } @@ -370,4 +376,15 @@ public class TileEntityMachineSolderingStation extends TileEntityMachineBase imp public FluidTank getTankToPaste() { return tank; } + + @Override + public boolean hasPermission(EntityPlayer player) { + return this.isUseableByPlayer(player); + } + + @Override + public void receiveControl(NBTTagCompound data) { + this.collisionPrevention = !this.collisionPrevention; + this.markDirty(); + } } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 89177e7b7..0df5c046d 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -843,6 +843,7 @@ hbmmat.gold=Gold hbmmat.gold198=Gold-198 hbmmat.graphene=Graphen hbmmat.graphite=Graphit +hbmmat.gunmetal=Maschinenmetall hbmmat.hematite=Hämatit hbmmat.iron=Eisen hbmmat.lanthanum=Lanthan @@ -903,6 +904,7 @@ hbmmat.uranium233=Uran-233 hbmmat.uranium235=Uran-235 hbmmat.uranium238=Uran-238 hbmmat.watzmud=Giftiger Schlamm +hbmmat.weaponsteel=Waffenstahl hbmmat.whitephosphorus=Weißer Phosphor hbmmat.workersalloy=Desh hbmmat.wroughtiron=Schmiedeeisen @@ -2774,6 +2776,8 @@ item.page_of_.page6.name=Seite 6 item.page_of_.page7.name=Seite 7 item.page_of_.page8.name=Seite 8 item.pancake.name=Pfannkuchen aus Altmetall, Nägeln und Edelsteinpulver +item.part_barrel_heavy.name=Schwerer %slauf +item.part_barrel_light.name=Leichter %slauf item.part_beryllium.name=Berylliumstaubkiste item.part_carbon.name=Kohlenstoffstaubkiste item.part_copper.name=Kupferstaubkiste @@ -2782,8 +2786,13 @@ item.part_generic.lde.name=Leichtbauteil item.part_generic.piston_electric.name=Electrischer Kolben item.part_generic.piston_hydraulic.name=Hydraulischer Kolben item.part_generic.piston_pneumatic.name=Pneumatischer Kolben +item.part_grip.name=%sgriff item.part_lithium.name=Lithiumstaubkiste +item.part_mechanism.name=%smechanismus item.part_plutonium.name=Plutoniumstaubkiste +item.part_receiver_heavy.name=Schwerer %sverschluss +item.part_receiver_light.name=Leichter %sverschluss +item.part_stock.name=%sschaft item.particle_aelectron.name=Positronenkapsel item.particle_amat.name=Antimaterienkapsel item.particle_aproton.name=Antiprotonenkapsel diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index be8bb0358..8c8d24faf 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1565,6 +1565,7 @@ hbmmat.gold=Gold hbmmat.gold198=Gold-198 hbmmat.graphene=Graphene hbmmat.graphite=Graphite +hbmmat.gunmetal=Gunmetal hbmmat.hematite=Hematite hbmmat.iron=Iron hbmmat.lanthanum=Lanthanium @@ -1625,6 +1626,7 @@ hbmmat.uranium233=Uranium-233 hbmmat.uranium235=Uranium-235 hbmmat.uranium238=Uranium-238 hbmmat.watzmud=Poisonous Mud +hbmmat.weaponsteel=Weapon Steel hbmmat.whitephosphorus=White Phosphorus hbmmat.workersalloy=Desh hbmmat.wroughtiron=Wroght Iron @@ -3626,6 +3628,8 @@ item.page_of_.page6.name=Page 6 item.page_of_.page7.name=Page 7 item.page_of_.page8.name=Page 8 item.pancake.name=Pancake made from Scrap Metal, Nails and Gem Dust +item.part_barrel_heavy.name=Heavy %s Barrel +item.part_barrel_light.name=Light %s Barrel item.part_beryllium.name=Box of Beryllium Dust item.part_carbon.name=Box of Carbon Dust item.part_copper.name=Box of Copper Dust @@ -3634,8 +3638,13 @@ item.part_generic.lde.name=Low-Density Element item.part_generic.piston_electric.name=Electric Piston item.part_generic.piston_hydraulic.name=Hydraulic Piston item.part_generic.piston_pneumatic.name=Pneumatic Piston +item.part_grip.name=%s Grip item.part_lithium.name=Box of Lithium Dust +item.part_mechanism.name=%s Mechanism item.part_plutonium.name=Box of Plutonium Dust +item.part_receiver_heavy.name=Heavy %s Receiver +item.part_receiver_light.name=Light %s Receiver +item.part_stock.name=%s Stock item.particle_aelectron.name=Positron Capsule item.particle_amat.name=Antimatter Capsule item.particle_aproton.name=Antiproton Capsule diff --git a/src/main/resources/assets/hbm/textures/gui/processing/gui_soldering_station.png b/src/main/resources/assets/hbm/textures/gui/processing/gui_soldering_station.png index cb30817437b2b3aaf2fa0870d55487dd19a2e66b..b99c7f9822dfe336dfc9e94474c783e3fb3fbb5e 100644 GIT binary patch delta 3041 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 diff --git a/src/main/resources/assets/hbm/textures/items/ammo.png b/src/main/resources/assets/hbm/textures/items/ammo.png index f386e052cf5e2e01ce960224cf8cbee71f96f6bf..cd34dcb95682c9ae92a87a5af3146092ec99c472 100644 GIT binary patch literal 11146 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 literal 11221 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�hlf^^{$&J%E(ty{lqV# zRKSe+KS>SDGp9DaF;2sjgpIEdX<6I@!4*)EK{PVQyz)0Lg3;R9wE(FY?Hm!}?oI~k zUv8eB8jl`{FGkan8x)x`U4T2S9IGcO&ZvqhiiYFjj~{^9u7Gq*};&_TogrWfS) z$rfclWKrjhd;Q=JhoM7n3QEfSckkLOXmoL)j`uI8oeGWX4O}`+q`>0Sy~g4`Jk+GH zQ;|SbyNX?B2nGJjek%m*n2|}P3oqCG|2#Ns`Ocs4G_QBC8Z{IVVitZmUA_4GqUuR{ z^^a%k$-+zECeCMov*xFcLhMFyV0w?qRD0H&GO>Tr3`O zbaq_5hFuiypa=j*;h2l_tWeQB=j#Q%Xf%t&th<1Y#<_6#3%Yx$j`?2`49Qej^(w%v z8ZaiuOOAH9_gVl^JU`5@Pe1Nd zT$`N=!ACvh-fSUi0N!f3@y0%G*J!@KUdy>03@?$y2B+n`X*72L9FluINtB&0=a^BGsC2rm5oFKS+KoPCGky5Ad|&)v-B dl&^opGJCi7<%lmcy?{0|c)I$ztaD0e0su!NKC%D+ literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/part_barrel_light.png b/src/main/resources/assets/hbm/textures/items/part_barrel_light.png new file mode 100644 index 0000000000000000000000000000000000000000..c407b692ea8134add71afc4899d30f7edfb48b24 GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfiS!-t%yY&dJHJ!X*3e$VrSO$aVMW!Z zIrQVb%cXa@A{lG%n_H$Y%dApn&|LaiyXWzb);FQ7Tucw<>}H#CifcOKjeGx1HeCOl l@!*AWdE=bV^WX1WEWSk5hqWox<1Wy}44$rjF6*2UngH#UU*`Y- literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/part_mechanism.png b/src/main/resources/assets/hbm/textures/items/part_mechanism.png new file mode 100644 index 0000000000000000000000000000000000000000..734659e1440d4ad1fc8a75bdaa3f5d07bd7bacf7 GIT binary patch literal 359 zcmV-t0hs=YP)a{#Twuh`|j?6 zsN2gk)=p>p9wNlxrD@T}?DD0uY2sU!+{G>>b*cyVzLcGO@Q3Sdw%nQ4HrsanpQLUg W?IgJEo3bg;kqn-$elF{r5}E*Qi&8xR literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/part_receiver_light.png b/src/main/resources/assets/hbm/textures/items/part_receiver_light.png new file mode 100644 index 0000000000000000000000000000000000000000..ea2057903fbad535905577bcfdf27301092aeeb6 GIT binary patch literal 238 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vfekx((ldg(GG}R>kSMl%?!u~bn(2Ve zd4?kr(hmMY3QJvj1lN|zR=hu&9*})^?_`#ObDhgCOpa52ILBDArL1}Pl%TuU@12f4 kP$;A9UCVsR@V`%fM1Vc3P4O9bpo1AaUHx3vIVCg!07eX3_5c6? literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/part_stock.png b/src/main/resources/assets/hbm/textures/items/part_stock.png new file mode 100644 index 0000000000000000000000000000000000000000..a93b55f67a481fdbb33f370ba8f771987913f636 GIT binary patch literal 213 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VftyTM<>=k%$Y>m?M zKYvmUm!>d0*w}68_T`@b;bOnFGbNQ4{hjT|!N}m?ay%q$Uq+UKl0-5CLsYgEP~d2* zW#_%>zwO0-rP*uSrUtFEkGK+bwZi=OuO|ODY1Jpr&fmiz_)IVO!~O*lKzA{Cy85}S Ib4q9e0P##vp#T5? literal 0 HcmV?d00001 From 75df8fb94504f68c3de11f9076211073f40ae42a Mon Sep 17 00:00:00 2001 From: Bob Date: Tue, 1 Oct 2024 21:35:43 +0200 Subject: [PATCH 41/63] ATLAS --- .../gui/GUIMachineRotaryFurnace.java | 2 +- .../recipes/RotaryFurnaceRecipes.java | 15 ++- src/main/java/com/hbm/items/ModItems.java | 4 +- .../java/com/hbm/items/machine/ItemMold.java | 8 ++ .../weapon/sedna/factory/GunFactory.java | 6 + .../sedna/factory/GunFactoryClient.java | 3 + .../weapon/sedna/factory/Orchestras.java | 29 ++++- .../weapon/sedna/factory/XFactory357.java | 79 +++++++++++ .../sedna/factory/XFactoryBlackPowder.java | 2 +- .../item/weapon/sedna/ItemRenderAtlas.java | 123 ++++++++++++++++++ .../tileentity/RenderRotaryFurnace.java | 7 +- .../TileEntityMachineRotaryFurnace.java | 9 ++ src/main/resources/assets/hbm/lang/de_DE.lang | 7 + src/main/resources/assets/hbm/lang/en_US.lang | 7 + .../textures/items/ammo_standard.m357_ap.png | Bin 0 -> 237 bytes .../items/ammo_standard.m357_express.png | Bin 0 -> 265 bytes .../textures/items/ammo_standard.m357_fmj.png | Bin 0 -> 233 bytes .../textures/items/ammo_standard.m357_jhp.png | Bin 0 -> 236 bytes .../textures/items/ammo_standard.m357_sp.png | Bin 0 -> 233 bytes .../hbm/textures/items/mold_barrel_heavy.png | Bin 0 -> 214 bytes .../hbm/textures/items/mold_barrel_light.png | Bin 0 -> 235 bytes .../assets/hbm/textures/items/mold_grip.png | Bin 0 -> 251 bytes .../hbm/textures/items/mold_mechanism.png | Bin 0 -> 293 bytes .../textures/items/mold_receiver_heavy.png | Bin 0 -> 244 bytes .../textures/items/mold_receiver_light.png | Bin 0 -> 244 bytes .../hbm/textures/items/mold_steel_base.png | Bin 0 -> 187 bytes .../assets/hbm/textures/items/mold_stock.png | Bin 0 -> 238 bytes 27 files changed, 293 insertions(+), 8 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m357_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m357_express.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m357_fmj.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m357_jhp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m357_sp.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_barrel_heavy.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_barrel_light.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_grip.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_mechanism.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_receiver_heavy.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_receiver_light.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_steel_base.png create mode 100644 src/main/resources/assets/hbm/textures/items/mold_stock.png diff --git a/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java b/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java index 873694184..84a46915d 100644 --- a/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java +++ b/src/main/java/com/hbm/inventory/gui/GUIMachineRotaryFurnace.java @@ -60,7 +60,7 @@ public class GUIMachineRotaryFurnace extends GuiInfoContainer { Minecraft.getMinecraft().getTextureManager().bindTexture(texture); drawTexturedModalRect(guiLeft, guiTop, 0, 0, xSize, ySize); - int p = (int) (furnace.progress * 33); + int p = (int) Math.ceil(furnace.progress * 33); drawTexturedModalRect(guiLeft + 63, guiTop + 30, 176, 0, p, 10); if(furnace.maxBurnTime > 0) { diff --git a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java index 713474b35..87464341a 100644 --- a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java @@ -16,10 +16,13 @@ import com.google.gson.JsonObject; import com.google.gson.stream.JsonWriter; import com.hbm.inventory.FluidStack; import com.hbm.inventory.RecipesCommon.AStack; +import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; +import com.hbm.inventory.fluid.Fluids; import com.hbm.inventory.material.Mats; import com.hbm.inventory.material.Mats.MaterialStack; import com.hbm.inventory.recipes.loader.SerializableRecipe; +import com.hbm.items.ModItems; import com.hbm.items.machine.ItemFluidIcon; import com.hbm.items.machine.ItemScraps; @@ -31,10 +34,16 @@ public class RotaryFurnaceRecipes extends SerializableRecipe { @Override public void registerDefaults() { + + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(1)), 100, 100, new OreDictStack(IRON.ingot()), new OreDictStack(COAL.gem()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(1)), 100, 100, new OreDictStack(IRON.ingot()), new OreDictStack(ANY_COKE.gem()))); - recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(1)), 200, 100, - new OreDictStack(IRON.ingot()), new OreDictStack(ANY_COKE.gem()) - )); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(2)), 100, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(COAL.gem()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(3)), 100, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(4)), 200, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()), new ComparableStack(ModItems.powder_flux))); + + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_GUNMETAL, INGOT.q(4)), 200, 100, new OreDictStack(CU.ingot(), 3), new OreDictStack(AL.ingot(), 1))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_WEAPONSTEEL, INGOT.q(1)), 200, 400, new FluidStack(Fluids.GAS_COKER, 100), new OreDictStack(STEEL.ingot(), 1), new ComparableStack(ModItems.powder_flux, 2))); } public static HashMap getRecipes() { diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index f30ea49fc..9b13f5a59 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1618,8 +1618,9 @@ public class ModItems { public static Item gun_debug; public static Item ammo_debug; - + public static Item gun_pepperbox; + public static Item gun_atlas; public static Item ammo_standard; @@ -7021,6 +7022,7 @@ public class ModItems { GameRegistry.registerItem(ammo_debug, ammo_debug.getUnlocalizedName()); GameRegistry.registerItem(gun_pepperbox, gun_pepperbox.getUnlocalizedName()); + GameRegistry.registerItem(gun_atlas, gun_atlas.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); //Ammo diff --git a/src/main/java/com/hbm/items/machine/ItemMold.java b/src/main/java/com/hbm/items/machine/ItemMold.java index 81b8fb0b8..b6467c310 100644 --- a/src/main/java/com/hbm/items/machine/ItemMold.java +++ b/src/main/java/com/hbm/items/machine/ItemMold.java @@ -80,6 +80,14 @@ public class ItemMold extends Item { registerMold(new MoldSingle( 16, S, "c9", new ItemStack(ModItems.casing_9), Mats.MAT_COPPER, MaterialShapes.PLATE.q(1))); registerMold(new MoldSingle( 17, S, "c50", new ItemStack(ModItems.casing_50), Mats.MAT_COPPER, MaterialShapes.PLATE.q(1))); registerMold(new MoldSingle( 18, S, "cbuckshot", new ItemStack(ModItems.casing_buckshot), Mats.MAT_COPPER, MaterialShapes.PLATE.q(1))); + + registerMold(new MoldShape( 22, S, "barrel_light", MaterialShapes.LIGHTBARREL)); + registerMold(new MoldShape( 23, S, "barrel_heavy", MaterialShapes.HEAVYBARREL)); + registerMold(new MoldShape( 24, S, "receiver_light", MaterialShapes.LIGHTRECEIVER)); + registerMold(new MoldShape( 25, S, "receiver_heavy", MaterialShapes.HEAVYRECEIVER)); + registerMold(new MoldShape( 26, S, "mechanism", MaterialShapes.MECHANISM)); + registerMold(new MoldShape( 27, S, "stock", MaterialShapes.STOCK)); + registerMold(new MoldShape( 28, S, "grip", MaterialShapes.GRIP)); } public void registerMold(Mold mold) { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index dcc1aa49a..34ba52b61 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -47,6 +47,7 @@ public class GunFactory { ).setUnlocalizedName("gun_debug").setTextureName(RefStrings.MODID + ":gun_darter"); XFactoryBlackPowder.init(); + XFactory357.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); @@ -57,5 +58,10 @@ public class GunFactory { STONE_AP, STONE_IRON, STONE_SHOT, + M357_SP, + M357_FMJ, + M357_JHP, + M357_AP, + M357_EXPRESS, } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index a4b66a0c8..19efdc760 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -9,6 +9,7 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.render.item.weapon.sedna.ItemRenderAtlas; import com.hbm.render.item.weapon.sedna.ItemRenderDebug; import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; @@ -21,12 +22,14 @@ public class GunFactoryClient { //GUNS MinecraftForgeClient.registerItemRenderer(ModItems.gun_debug, new ItemRenderDebug()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_pepperbox, new ItemRenderPepperbox()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_atlas, new ItemRenderAtlas()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); //HUDS ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_atlas).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index c2b889575..93548ffed 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -38,7 +38,7 @@ public class Orchestras { if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); } if(type == AnimType.CYCLE_DRY) { - if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); } if(type == AnimType.INSPECT) { @@ -71,4 +71,31 @@ public class Orchestras { if(timer == 45) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 0.6F); } }; + + public static BiConsumer ORCHESTRA_ATLAS = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 44) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 14) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 14) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + } + if(type == AnimType.INSPECT) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.JAMMED) { + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java new file mode 100644 index 000000000..6bf4e95f2 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -0,0 +1,79 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory357 { + + public static BulletConfig m357_sp; + public static BulletConfig m357_fmj; + public static BulletConfig m357_jhp; + public static BulletConfig m357_ap; + public static BulletConfig m357_express; + + public static void init() { + m357_sp = new BulletConfig().setItem(EnumAmmo.M357_SP); + m357_fmj = new BulletConfig().setItem(EnumAmmo.M357_FMJ).setDamage(0.8F).setArmorPiercing(0.1F); + m357_jhp = new BulletConfig().setItem(EnumAmmo.M357_JHP).setDamage(1.5F).setArmorPiercing(-0.25F); + m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false); + m357_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setWear(1.5F); + + ModItems.gun_atlas = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(4).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_ATLAS) + .rec(new Receiver(0) + .dmg(10F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) + .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) + .anim(LAMBDA_ATLAS_ANIMS) + ).setUnlocalizedName("gun_atlas").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_ATLAS_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, -3, 350, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); + case CYCLE_DRY: return new BusAnimation() + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); + case RELOAD: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(0, 0, 90, 300).addPos(0, 0, 90, 2000).addPos(0, 0, 0, 150)) + .addBus("FRONT", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(0, 0, 45, 150).addPos(0, 0, 45, 2000).addPos(0, 0, 0, 75)) + .addBus("RELOAD_ROT", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(60, 0, 0, 500).addPos(60, 0, 0, 500).addPos(0, -90, -90, 0).addPos(0, -90, -90, 600).addPos(0, 0, 0, 300).addPos(0, 0, 0, 100).addPos(-45, 0, 0, 50).addPos(-45, 0, 0, 100).addPos(0, 0, 0, 300)) + .addBus("RELOAD_MOVE", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, -15, 0, 1000).addPos(0, 0, 0, 450)) + .addBus("DRUM_PUSH", new BusAnimationSequence().addPos(0, 0, 0, 1600).addPos(0, 0, -5, 0).addPos(0, 0, 0, 300)); + case INSPECT: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(0, 0, 90, 300).addPos(0, 0, 90, 1000).addPos(0, 0, 0, 150)) + .addBus("FRONT", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(0, 0, 45, 150).addPos(0, 0, 45, 1000).addPos(0, 0, 0, 75)) + .addBus("RELOAD_ROT", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(45, 0, 0, 500, IType.SIN_FULL).addPos(45, 0, 0, 500).addPos(-45, 0, 0, 50).addPos(-45, 0, 0, 100).addPos(0, 0, 0, 300)) + .addBus("RELOAD_MOVE", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, -2.5, 0, 500, IType.SIN_FULL).addPos(0, -2.5, 0, 500).addPos(0, 0, 0, 350)); + case JAMMED: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 90, 300).addPos(0, 0, 90, 1000).addPos(0, 0, 0, 150)) + .addBus("FRONT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 200).addPos(0, 0, 45, 150).addPos(0, 0, 45, 1000).addPos(0, 0, 0, 75)) + .addBus("RELOAD_ROT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 300).addPos(45, 0, 0, 500, IType.SIN_FULL).addPos(45, 0, 0, 500).addPos(-45, 0, 0, 50).addPos(-45, 0, 0, 100).addPos(0, 0, 0, 300)) + .addBus("RELOAD_MOVE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 300).addPos(0, -2.5, 0, 500, IType.SIN_FULL).addPos(0, -2.5, 0, 500).addPos(0, 0, 0, 350)); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 1c4668282..691982117 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -28,7 +28,7 @@ public class XFactoryBlackPowder { BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).jam(58).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java new file mode 100644 index 000000000..4036dd54b --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java @@ -0,0 +1,123 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderAtlas extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.0F * offset, -0.75F * offset, 1F * offset, + 0, -3.125 / 8D, 0.25); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.bio_revolver_tex); + double scale = 0.125D; + GL11.glScaled(scale, scale, scale); + + GL11.glShadeModel(GL11.GL_SMOOTH); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] reloadMove = HbmAnimations.getRelevantTransformation("RELOAD_MOVE"); + double[] reloadRot = HbmAnimations.getRelevantTransformation("RELOAD_ROT"); + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + + GL11.glTranslated(recoil[0], recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 10, 1, 0, 0); + + GL11.glTranslated(0, 0, -7); + GL11.glRotated(equip[0], -1, 0, 0); + GL11.glTranslated(0, 0, 7); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.5, 9.25); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.5D); + GL11.glPopMatrix(); + + GL11.glTranslated(reloadMove[0], reloadMove[1], reloadMove[2]); + + GL11.glRotated(reloadRot[0], 1, 0, 0); + GL11.glRotated(reloadRot[2], 0, 0, 1); + GL11.glRotated(reloadRot[1], 0, 1, 0); + ResourceManager.bio_revolver.renderPart("Grip"); + + GL11.glPushMatrix(); /// FRONT PUSH /// + GL11.glRotated(HbmAnimations.getRelevantTransformation("FRONT")[2], 1, 0, 0); + ResourceManager.bio_revolver.renderPart("Barrel"); + GL11.glPushMatrix(); /// LATCH PUSH /// + GL11.glTranslated(0, 2.3125, -0.875); + GL11.glRotated(HbmAnimations.getRelevantTransformation("LATCH")[2], 1, 0, 0); + GL11.glTranslated(0, -2.3125, 0.875); + ResourceManager.bio_revolver.renderPart("Latch"); + GL11.glPopMatrix(); /// LATCH POP /// + + GL11.glPushMatrix(); /// DRUM PUSH /// + GL11.glTranslated(0, 1, 0); + GL11.glRotated(HbmAnimations.getRelevantTransformation("DRUM")[2] * 60, 0, 0, 1); + GL11.glTranslated(0, -1, 0); + GL11.glTranslated(0, 0, HbmAnimations.getRelevantTransformation("DRUM_PUSH")[2]); + ResourceManager.bio_revolver.renderPart("Drum"); + GL11.glPopMatrix(); /// DRUM POP /// + + GL11.glPopMatrix(); /// FRONT POP /// + + GL11.glPushMatrix(); /// HAMMER /// + GL11.glTranslated(0, 0, -4.5); + GL11.glRotated(-45 + 45 * HbmAnimations.getRelevantTransformation("HAMMER")[2], 1, 0, 0); + GL11.glTranslated(0, 0, 4.5); + ResourceManager.bio_revolver.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.5, 9.25); + GL11.glRotated(90, 0, 1, 0); + this.renderGapFlash(gun.lastShot); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.125D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 1.5, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.bio_revolver_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java index d7ff261ae..e326c7445 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java +++ b/src/main/java/com/hbm/render/tileentity/RenderRotaryFurnace.java @@ -6,6 +6,7 @@ import com.hbm.blocks.BlockDummyable; import com.hbm.blocks.ModBlocks; import com.hbm.main.ResourceManager; import com.hbm.render.item.ItemRenderBase; +import com.hbm.tileentity.machine.TileEntityMachineRotaryFurnace; import com.hbm.util.BobMathUtil; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; @@ -34,7 +35,11 @@ public class RenderRotaryFurnace extends TileEntitySpecialRenderer implements II bindTexture(ResourceManager.rotary_furnace_tex); ResourceManager.rotary_furnace.renderPart("Furnace"); GL11.glPushMatrix(); - GL11.glTranslated(0, BobMathUtil.sps((tile.getWorldObj().getTotalWorldTime() + f) * 0.125) * 0.5 - 0.5, 0); + + TileEntityMachineRotaryFurnace furnace = (TileEntityMachineRotaryFurnace) tile; + float anim = furnace.lastAnim + (furnace.anim - furnace.lastAnim) * f; + + GL11.glTranslated(0, BobMathUtil.sps((anim * 0.75) * 0.125) * 0.5 - 0.5, 0); ResourceManager.rotary_furnace.renderPart("Piston"); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java index 2ae2a54e2..771badfe1 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityMachineRotaryFurnace.java @@ -48,6 +48,9 @@ public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting i public boolean isVenting; public MaterialStack output; public static final int maxOutput = MaterialShapes.BLOCK.q(16); + + public int anim; + public int lastAnim; public TileEntityMachineRotaryFurnace() { super(5, 50); @@ -103,6 +106,7 @@ public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting i } RotaryFurnaceRecipe recipe = RotaryFurnaceRecipes.getRecipe(slots[0], slots[1], slots[2]); + this.isProgressing = false; if(recipe != null) { @@ -116,6 +120,7 @@ public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting i this.progress += 1F / recipe.duration; tanks[1].setFill(tanks[1].getFill() - recipe.steam); tanks[2].setFill(tanks[2].getFill() + recipe.steam / 100); + this.isProgressing = true; if(this.progress >= 1F) { this.progress -= 1F; @@ -165,6 +170,10 @@ public class TileEntityMachineRotaryFurnace extends TileEntityMachinePolluting i fx.setDouble("posZ", zCoord + 0.5 + rot.offsetZ); MainRegistry.proxy.effectNT(fx); } + this.lastAnim = this.anim; + if(this.isProgressing) { + this.anim++; + } } } diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 0df5c046d..c797ec3f7 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -373,6 +373,7 @@ container.machineMixer=Industrieller Mixer container.machineOreSlopper=B.E.M. container.machinePyroOven=Pyrolyseofen container.machineRefinery=Ölraffinerie +container.machineRotaryFurnace=Rotationshochofen container.machineSelenium=Hochleistungs-Sternmotor container.machineShredder=Brecher container.machineSILEX=SILEX @@ -1145,6 +1146,11 @@ item.ammo_shell.name=240mm Geschoss item.ammo_shell_apfsds_du.name=240mm APFSDS-DU item.ammo_shell_apfsds_t.name=240mm APFSDS-T item.ammo_shell_explosive.name=240mm HE-Geschoss +item.ammo_standard.m357_ap.name=.357 Magnumkugel (Panzerbrechend) +item.ammo_standard.m357_express.name=.357 Magnumkugel (VMG Express) +item.ammo_standard.m357_fmj.name=.357 Magnumkugel (Vollmantelgeschoss) +item.ammo_standard.m357_jhp.name=.357 Magnumkugel (Hohlspitz) +item.ammo_standard.m357_sp.name=.357 Magnumkugel (Teilmantelgeschoss) item.ammo_standard.stone.name=Kugel und Pulver item.ammo_standard.stone_ap.name=Feuerstein und Pulver item.ammo_standard.stone_iron.name=Eisenkugel und Pulver @@ -4367,6 +4373,7 @@ tile.machine_reactor_on.name=Brutreaktor tile.machine_reactor_small.name=Atomreaktor tile.machine_refinery.name=Ölraffinerie tile.machine_reix_mainframe.name=Rei-X Hauptrechner (WIP) +tile.machine_rotary_furnace.name=Rotationshochofen tile.machine_rtg_blue.name=Konvektionsgenerator tile.machine_rtg_cyan.name=Schrabidium-Zerfallsenergie-Generator (WIP) tile.machine_rtg_furnace_off.name=RTG-Ofen diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 8c8d24faf..8eb87dca8 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -775,6 +775,7 @@ container.machineMixer=Industrial Mixer container.machineOreSlopper=B.O.P. container.machinePyroOven=Pyrolysis Oven container.machineRefinery=Oil Refinery +container.machineRotaryFurnace=Rotary Furnace container.machineSelenium=Radial Performance Engine container.machineShredder=Shredder container.machineSILEX=SILEX @@ -1868,6 +1869,11 @@ item.ammo_shell_apfsds_du.name=240mm APFSDS-DU item.ammo_shell_apfsds_t.name=240mm APFSDS-T item.ammo_shell_explosive.name=240mm HE Shell item.ammo_shell_w9.name=240mm W9 Nuclear Shell +item.ammo_standard.m357_ap.name=.357 Magnum Round (Armor Piercing) +item.ammo_standard.m357_express.name=.357 Magnum Round (FMJ Express) +item.ammo_standard.m357_fmj.name=.357 Magnum Round (Full Metal Jacket) +item.ammo_standard.m357_jhp.name=.357 Magnum Round (Jacketed Hollow Point) +item.ammo_standard.m357_sp.name=.357 Magnum Round (Soft Point) item.ammo_standard.stone.name=Ball and Powder item.ammo_standard.stone_ap.name=Flint and Powder item.ammo_standard.stone_iron.name=Iron Ball and Powder @@ -5465,6 +5471,7 @@ tile.machine_reactor.name=Breeding Reactor tile.machine_reactor_small.name=Research Reactor tile.machine_refinery.name=Oil Refinery tile.machine_reix_mainframe.name=Rei-X Mainframe (WIP) +tile.machine_rotary_furnace.name=Rotary Furnace tile.machine_rtg_blue.name=Convection Generator tile.machine_rtg_cyan.name=Schrabidium Decay Generator (WIP) tile.machine_rtg_furnace_off.name=RTG Furnace diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..a9dbde5aa51af5edb57d87cc7831ac789b607c7b GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfTwu`%@Sf*czTDXcK!CzthzQWBN4KwY9bcGo*o=p)t_xa1m+(~Q!R|C8Z)4quc zB*!?d<811XFy4NXt0;zj_XNfb+&{T)H2N?achqlOHEWffm6^cArBix3)=Wuq*|MiU i`oy-K?SFFSz2x28Sru2U>2?iCKgI literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_express.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_express.png new file mode 100644 index 0000000000000000000000000000000000000000..cad8fbc2dbc067cb459683cae6b4cb8071d58bbe GIT binary patch literal 265 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfKaSXBO zJ=?#KuPH#JtzPD{U=2(9j>a^DIXN5eIy~o;nfjAsU(4Gv?OqQ>iH>t;G7defV}2B{ ztU3CN|MQ&Zzt347SpT?0dadd0TN01I9REFYOKXP#2U7=!&3R|BoqyQAu`o<{Zh30c zk!QOO*X)&0sTAC@;nq5X*jWcBr6>f*Z9xD4 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_fmj.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_fmj.png new file mode 100644 index 0000000000000000000000000000000000000000..7025adb2ad81dae3a2b4cc694a53d26ae6a88086 GIT binary patch literal 233 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf8(2d>*X&0+;2arvBdeCyV0Nj|L@H+IeUXgG17RG eVoLTgR)#j26_%5Ky7U0u%HZkh=d#Wzp$Pzhabslw literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_jhp.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m357_jhp.png new file mode 100644 index 0000000000000000000000000000000000000000..6f13cbeb74dbd81089f853b4f158bc3944da5f9d GIT binary patch literal 236 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf{zSd(7~$I*~sS>*B)vl`FVm|koO4Y{MXTdU0!U0Gb6raV|JaIN~8^75$c@^Y6;QO;%MTdqxW zozyRNGSb{wCjXg!#S_IFjf@J+4Xf7iebVks5uf<>oQk5-by1}cH>}@DTYnI7d8pZO zAbD=c*88gU!CpJ}T|BeRN?+cP$=^|AUXun7L#5Bv@Ox_CSbn^n!<6)wb289j44$rj JF6*2UngAzwOvL~I literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/mold_barrel_light.png b/src/main/resources/assets/hbm/textures/items/mold_barrel_light.png new file mode 100644 index 0000000000000000000000000000000000000000..0e3bbe8e5780f3b89636b2b86db545ba47424d7d GIT binary patch literal 235 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf;1LBL7XCJ;kS^~)%_)n5rU*~I%qd@Sq+0Ix#vL6G)BF`2HI{yf(k{Ca<-BU^ zqOE1wLKmM1Ui=U$`cbozb@nm_ejC<`LTlL5K)eFmScda|aFLU=d#7Zzs g`nziCyt+5+R>}*Pv9I+m2fCKQ)78&qol`;+0A6EPwg3PC literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/mold_grip.png b/src/main/resources/assets/hbm/textures/items/mold_grip.png new file mode 100644 index 0000000000000000000000000000000000000000..e59e5274908560155fd102936e10a95a56d9e578 GIT binary patch literal 251 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf-dkU2b4fX^@Amyf||tMlFexXSD-J(90} zeBWdH4?EVr4a}cB^Jj&JwX2cL=m@-8gi|HcjA5D`%Y4GJJ;InSIAyxZ&qc~_qgJm<;kV1?9T_j z^P5}z=p93kp@1MmRQ8r@Vdu}h*t>r7?&P#70n*7As?&QmvM}*ns6KvX-#c$Lc0-w> znUd)`4z}+_n5;iViYz$7{Px&wUlpYluXe3x+~s^u+hsk=2foU7-S7q0PgFnXOD=de zC3bI_n)?MiwScS9PYy6?7szWrnUPks<6Tiu(i)HOf7~}CT{6}xDxH?SXIb$5Y01{E pnY9xcv;M4NNIkyU;a&Sl?j@V|dR?wz+6we1gQu&X%Q~loCIGLSbzT4f literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/mold_receiver_heavy.png b/src/main/resources/assets/hbm/textures/items/mold_receiver_heavy.png new file mode 100644 index 0000000000000000000000000000000000000000..4036ee57b2f5961ef3ff954c7bf2139bd65d0569 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf- zxue>2dFC$GV6Pq4lO)dM+!UW7nRbn3{k|o~xETzOEn90`@q5{n6PCvB(swm|xBI|d z!F;`8`G;2^;+pjNuBwEF3B_y2UefyK^Oy nH(%Pz^*WTX-FfHa-Jcn~+NM1_^)2fz(Af;0u6{1-oD!M<=^tQD literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/mold_receiver_light.png b/src/main/resources/assets/hbm/textures/items/mold_receiver_light.png new file mode 100644 index 0000000000000000000000000000000000000000..98d550222f584fa5d126b92b39f4965bc80614c2 GIT binary patch literal 244 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfJ8FD^z|pXIsd@?Q4BnFZhH zsdc`Xro3okc&J6ki#w%hX$%Yjp$9nLSnOW*X4~89(7D`ey4EL8F@JR8sP==vY}xy( zthUPU)KJnqX&B$BVd|vr5_DwKw#N}aOg6ta-k5wjzvq$q^Ny)!Dno6051hH&8^bC1 rQ|v=mU556##mxI}|9^D7`!7T3?u~jDRukia&Svm*^>bP0l+XkKSO{f- literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/mold_steel_base.png b/src/main/resources/assets/hbm/textures/items/mold_steel_base.png new file mode 100644 index 0000000000000000000000000000000000000000..fd2c59e1b2583e0c635ba835dcb3e14b72349a8e GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf>cfB75J|NA3QJ=dBO&*~lmvZ+B*7 z2(4u?cWmicG5II&*#~|C$IB!cWR4r2Xw!B1v8QY1)*Q9d;U6k<1SL0}j_$bm%HH$; k0fq^GL+@UFb+nG*koAlSIqZ+xfevQyboFyt=akR{0LD38g8%>k literal 0 HcmV?d00001 From 8da78f68950d0c1bf4d3ea85ff7ad23fae8064f6 Mon Sep 17 00:00:00 2001 From: abel1502 Date: Wed, 2 Oct 2024 14:07:32 +0300 Subject: [PATCH 42/63] Make RBMK crane rotatable visually --- .../blocks/machine/rbmk/RBMKCraneConsole.java | 20 +++++++++++++++- .../render/tileentity/RenderCraneConsole.java | 7 +----- .../machine/rbmk/TileEntityCraneConsole.java | 24 +++++++++++++++++++ 3 files changed, 44 insertions(+), 7 deletions(-) diff --git a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java index 21059f59a..b181f5b35 100644 --- a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java +++ b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java @@ -4,14 +4,17 @@ import com.hbm.blocks.BlockDummyable; import com.hbm.handler.MultiblockHandlerXR; import com.hbm.tileentity.machine.rbmk.TileEntityCraneConsole; +import api.hbm.block.IToolable; +import api.hbm.block.IToolable.ToolType; import net.minecraft.block.material.Material; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; import net.minecraft.world.IBlockAccess; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class RBMKCraneConsole extends BlockDummyable { +public class RBMKCraneConsole extends BlockDummyable implements IToolable { public RBMKCraneConsole() { super(Material.iron); @@ -72,4 +75,19 @@ public class RBMKCraneConsole extends BlockDummyable { this.setBlockBounds(0.0F, 0.0F, 0.0F, 1.0F, 1.0F, 1.0F); } } + + @Override + public boolean onScrew(World world, EntityPlayer player, int x, int y, int z, int side, float fX, float fY, float fZ, ToolType tool) { + + if(tool == ToolType.SCREWDRIVER) { + if(world.isRemote) return true; + + TileEntityCraneConsole tile = (TileEntityCraneConsole) world.getTileEntity(x, y, z); + tile.cycleCraneRotation(); + tile.markDirty(); + return true; + } + + return false; + } } diff --git a/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java b/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java index d06119605..c4a54fe6d 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java +++ b/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java @@ -99,12 +99,7 @@ public class RenderCraneConsole extends TileEntitySpecialRenderer { double cranePosZ = (-te.zCoord + console.centerZ); GL11.glTranslated(cranePosX, cranePosY, cranePosZ); - switch(te.getBlockMetadata() - BlockDummyable.offset) { - case 2: GL11.glRotatef(90, 0F, 1F, 0F); break; - case 4: GL11.glRotatef(180, 0F, 1F, 0F); break; - case 3: GL11.glRotatef(270, 0F, 1F, 0F); break; - case 5: GL11.glRotatef(0, 0F, 1F, 0F); break; - } + GL11.glRotatef(((TileEntityCraneConsole)te).getCraneRotation(), 0F, 1F, 0F); double posX = (console.lastPosFront + (console.posFront - console.lastPosFront) * interp); double posZ = (console.lastPosLeft + (console.posLeft - console.lastPosLeft) * interp); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java index cf1d2d8bf..e672372dc 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java @@ -28,6 +28,8 @@ import net.minecraftforge.common.util.ForgeDirection; import java.util.List; +import org.lwjgl.opengl.GL11; + @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")}) public class TileEntityCraneConsole extends TileEntity implements INBTPacketReceiver, SimpleComponent, CompatHandler.OCComponent { @@ -44,6 +46,8 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece public boolean setUpCrane = false; + public int craneRotationOffset = 0; + public double lastTiltFront = 0; public double lastTiltLeft = 0; public double tiltFront = 0; @@ -169,6 +173,7 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece nbt.setBoolean("crane", setUpCrane); if(setUpCrane) { //no need to send any of this if there's NO FUCKING CRANE THERE + nbt.setInteger("craneRotationOffset", craneRotationOffset); nbt.setInteger("centerX", centerX); nbt.setInteger("centerY", centerY); nbt.setInteger("centerZ", centerZ); @@ -250,6 +255,7 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece lastProgress = progress; this.setUpCrane = nbt.getBoolean("crane"); + this.craneRotationOffset = nbt.getInteger("craneRotationOffset"); this.centerX = nbt.getInteger("centerX"); this.centerY = nbt.getInteger("centerY"); this.centerZ = nbt.getInteger("centerZ"); @@ -277,16 +283,33 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece this.spanR = 7; this.height = 7; + this.setUpCrane = true; this.markDirty(); } + + public int getCraneRotation() { + int result = craneRotationOffset; + switch(this.getBlockMetadata() - BlockDummyable.offset) { + case 2: result += 90; break; + case 4: result += 180; break; + case 3: result += 270; break; + case 5: result += 0; break; + } + return result % 360; + } + + public void cycleCraneRotation() { + this.craneRotationOffset = (this.craneRotationOffset + 90) % 360; + } @Override public void readFromNBT(NBTTagCompound nbt) { super.readFromNBT(nbt); this.setUpCrane = nbt.getBoolean("crane"); + this.craneRotationOffset = nbt.getInteger("craneRotationOffset"); this.centerX = nbt.getInteger("centerX"); this.centerY = nbt.getInteger("centerY"); this.centerZ = nbt.getInteger("centerZ"); @@ -307,6 +330,7 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece super.writeToNBT(nbt); nbt.setBoolean("crane", setUpCrane); + nbt.setInteger("craneRotationOffset", craneRotationOffset); nbt.setInteger("centerX", centerX); nbt.setInteger("centerY", centerY); nbt.setInteger("centerZ", centerZ); From 5944999cf94bde58e9a129d696456dd303a3f46e Mon Sep 17 00:00:00 2001 From: abel1502 Date: Wed, 2 Oct 2024 16:21:33 +0300 Subject: [PATCH 43/63] Fix rbmk crane rotation --- .../blocks/machine/rbmk/RBMKCraneConsole.java | 5 ++- .../render/tileentity/RenderCraneConsole.java | 37 ++++++++++++++++--- .../machine/rbmk/TileEntityCraneConsole.java | 11 ------ 3 files changed, 35 insertions(+), 18 deletions(-) diff --git a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java index b181f5b35..a996595fe 100644 --- a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java +++ b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java @@ -81,8 +81,9 @@ public class RBMKCraneConsole extends BlockDummyable implements IToolable { if(tool == ToolType.SCREWDRIVER) { if(world.isRemote) return true; - - TileEntityCraneConsole tile = (TileEntityCraneConsole) world.getTileEntity(x, y, z); + + int[] pos = findCore(world, x, y, z); + TileEntityCraneConsole tile = (TileEntityCraneConsole) world.getTileEntity(pos[0], pos[1], pos[2]); tile.cycleCraneRotation(); tile.markDirty(); return true; diff --git a/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java b/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java index c4a54fe6d..467f1fc22 100644 --- a/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java +++ b/src/main/java/com/hbm/render/tileentity/RenderCraneConsole.java @@ -99,22 +99,49 @@ public class RenderCraneConsole extends TileEntitySpecialRenderer { double cranePosZ = (-te.zCoord + console.centerZ); GL11.glTranslated(cranePosX, cranePosY, cranePosZ); - GL11.glRotatef(((TileEntityCraneConsole)te).getCraneRotation(), 0F, 1F, 0F); + switch(te.getBlockMetadata() - BlockDummyable.offset) { + case 2: GL11.glRotatef(90, 0F, 1F, 0F); break; + case 4: GL11.glRotatef(180, 0F, 1F, 0F); break; + case 3: GL11.glRotatef(270, 0F, 1F, 0F); break; + case 5: GL11.glRotatef(0, 0F, 1F, 0F); break; + } double posX = (console.lastPosFront + (console.posFront - console.lastPosFront) * interp); double posZ = (console.lastPosLeft + (console.posLeft - console.lastPosLeft) * interp); - GL11.glTranslated(0, 0, posZ); + GL11.glTranslated(-posX, 0, posZ); + + int craneRotationOffset = ((TileEntityCraneConsole)te).craneRotationOffset; + GL11.glRotatef(craneRotationOffset, 0F, 1F, 0F); GL11.glPushMatrix(); - GL11.glTranslated(-console.spanL, height - 1, 0); + int girderSpan = 0; + GL11.glRotatef(-craneRotationOffset, 0F, 1F, 0F); + switch(craneRotationOffset) { + case 0: + girderSpan = console.spanL + console.spanR + 1; + GL11.glTranslated(posX - console.spanL, 0, 0); + break; + case 90: + girderSpan = console.spanF + console.spanB + 1; + GL11.glTranslated(0, 0, -posZ + console.spanB); + break; + case 180: + girderSpan = console.spanL + console.spanR + 1; + GL11.glTranslated(posX + console.spanR, 0, 0); + break; + case 270: + girderSpan = console.spanF + console.spanB + 1; + GL11.glTranslated(0, 0, -posZ - console.spanF); + break; + } + GL11.glRotatef(craneRotationOffset, 0F, 1F, 0F); - for(int i = -console.spanL; i <= console.spanR; i++) { + for(int i = 0; i < girderSpan; i++) { ResourceManager.rbmk_crane.renderPart("Girder"); GL11.glTranslated(1, 0, 0); } GL11.glPopMatrix(); - GL11.glTranslated(-posX, 0, 0); ResourceManager.rbmk_crane.renderPart("Main"); GL11.glPushMatrix(); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java index e672372dc..c98c229ae 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java @@ -289,17 +289,6 @@ public class TileEntityCraneConsole extends TileEntity implements INBTPacketRece this.markDirty(); } - public int getCraneRotation() { - int result = craneRotationOffset; - switch(this.getBlockMetadata() - BlockDummyable.offset) { - case 2: result += 90; break; - case 4: result += 180; break; - case 3: result += 270; break; - case 5: result += 0; break; - } - return result % 360; - } - public void cycleCraneRotation() { this.craneRotationOffset = (this.craneRotationOffset + 90) % 360; } From ea895daa8542eff01a0500877965ec39fabd00b0 Mon Sep 17 00:00:00 2001 From: Boblet Date: Wed, 2 Oct 2024 16:58:12 +0200 Subject: [PATCH 44/63] shells and casings --- changelog | 1 + .../java/com/hbm/crafting/WeaponRecipes.java | 16 +++++++ .../com/hbm/inventory/OreDictManager.java | 13 +++++- .../inventory/material/MaterialShapes.java | 14 +++--- .../java/com/hbm/inventory/material/Mats.java | 40 +++++++++--------- .../hbm/inventory/recipes/PressRecipes.java | 32 ++++++++------ .../recipes/RotaryFurnaceRecipes.java | 3 ++ .../inventory/recipes/anvil/AnvilRecipes.java | 16 +++++++ src/main/java/com/hbm/items/ItemEnums.java | 4 ++ src/main/java/com/hbm/items/ModItems.java | 11 +++++ .../weapon/sedna/factory/XFactory357.java | 4 +- src/main/resources/assets/hbm/lang/de_DE.lang | 2 + src/main/resources/assets/hbm/lang/en_US.lang | 2 + .../assets/hbm/textures/gui/gui_wiki.png | Bin 0 -> 893 bytes .../hbm/textures/items/casing.buckshot.png | Bin 0 -> 252 bytes .../hbm/textures/items/casing.large.png | Bin 0 -> 244 bytes .../hbm/textures/items/casing.large_steel.png | Bin 0 -> 212 bytes .../hbm/textures/items/casing.shotshell.png | Bin 0 -> 198 bytes .../hbm/textures/items/casing.small.png | Bin 0 -> 226 bytes .../hbm/textures/items/casing.small_steel.png | Bin 0 -> 197 bytes .../hbm/textures/items/plate_gunmetal.png | Bin 0 -> 317 bytes .../hbm/textures/items/plate_gunsteel.png | Bin 0 -> 242 bytes 22 files changed, 116 insertions(+), 42 deletions(-) create mode 100644 src/main/resources/assets/hbm/textures/gui/gui_wiki.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.buckshot.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.large.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.large_steel.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.shotshell.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.small.png create mode 100644 src/main/resources/assets/hbm/textures/items/casing.small_steel.png create mode 100644 src/main/resources/assets/hbm/textures/items/plate_gunmetal.png create mode 100644 src/main/resources/assets/hbm/textures/items/plate_gunsteel.png diff --git a/changelog b/changelog index 277ae7279..bfb7a61da 100644 --- a/changelog +++ b/changelog @@ -10,6 +10,7 @@ * Scaffold blocks can now be placed horizontally * Updated the shredder's textures * The strand caster will now cast its remaining buffer after 10 seconds of inactivity, even if the buffer is not full enough for a batch of 9 +* The soldering station now has a toggle for the "refuse to do recipes with no fluid if fluid is present" behavior ## Fixed * The conveyor grabber should no longer skip over items when used in long lines diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 665afe7f6..801ecc8cd 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -4,6 +4,7 @@ import com.hbm.blocks.ModBlocks; import com.hbm.inventory.OreDictManager; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.material.Mats; import static com.hbm.inventory.OreDictManager.*; @@ -12,6 +13,7 @@ import com.hbm.items.food.ItemConserve.EnumFoodType; import com.hbm.items.machine.ItemCircuit.EnumCircuitType; import com.hbm.items.ModItems; import com.hbm.items.weapon.GunB92Cell; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.main.CraftingManager; import net.minecraft.init.Blocks; @@ -26,6 +28,20 @@ import net.minecraft.item.ItemStack; public class WeaponRecipes { public static void register() { + + //SEDNA Parts + CraftingManager.addRecipeAuto(new ItemStack(ModItems.part_stock, 1, Mats.MAT_WOOD.id), new Object[] { "WWW", " W", 'W', KEY_PLANKS }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.part_grip, 1, Mats.MAT_WOOD.id), new Object[] { "W ", " W", " W", 'W', KEY_PLANKS }); + + //SEDNA Guns + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_pepperbox, 1), new Object[] { "IIW", " C", 'I', IRON.ingot(), 'W', KEY_PLANKS, 'C', CU.ingot() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_atlas, 1), new Object[] { "BRM", " G", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); + + //SEDNA Ammo + CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE, 6), new Object[] { "C", "P", "G", 'C', KEY_COBBLESTONE, 'P', Items.paper, 'G', Items.gunpowder }); + CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE_AP, 6), new Object[] { "C", "P", "G", 'C', Items.flint, 'P', Items.paper, 'G', Items.gunpowder }); + CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE_SHOT, 6), new Object[] { "C", "P", "G", 'C', Blocks.gravel, 'P', Items.paper, 'G', Items.gunpowder }); + CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE_IRON, 6), new Object[] { "C", "P", "G", 'C', IRON.ingot(), 'P', Items.paper, 'G', Items.gunpowder }); //Missiles CraftingManager.addShapelessAuto(new ItemStack(ModItems.missile_taint, 1), new Object[] { ModItems.missile_assembly, ModItems.bucket_mud, ModItems.powder_spark_mix, ModItems.powder_magic }); diff --git a/src/main/java/com/hbm/inventory/OreDictManager.java b/src/main/java/com/hbm/inventory/OreDictManager.java index ebf747ea7..b63e5d595 100644 --- a/src/main/java/com/hbm/inventory/OreDictManager.java +++ b/src/main/java/com/hbm/inventory/OreDictManager.java @@ -108,6 +108,8 @@ public class OreDictManager { /* * VANILLA */ + public static final DictFrame WOOD = new DictFrame("Wood"); + public static final DictFrame BONE = new DictFrame("Bone"); public static final DictFrame COAL = new DictFrame("Coal"); public static final DictFrame IRON = new DictFrame("Iron"); public static final DictFrame GOLD = new DictFrame("Gold"); @@ -411,8 +413,8 @@ public class OreDictManager { CMB .ingot(ingot_combine_steel) .dust(powder_combine_steel) .plate(plate_combine_steel) .block(block_combine_steel); DESH .nugget(nugget_desh) .ingot(ingot_desh) .dust(powder_desh) .block(block_desh); STAR .ingot(ingot_starmetal) .block(block_starmetal); - GUNMETAL .ingot(ingot_gunmetal); - WEAPONSTEEL .ingot(ingot_weaponsteel); + GUNMETAL .ingot(ingot_gunmetal) .plate(plate_gunmetal); + WEAPONSTEEL .ingot(ingot_weaponsteel) .plate(plate_weaponsteel); BIGMT .ingot(ingot_saturnite) .plate(plate_saturnite); FERRO .ingot(ingot_ferrouranium); EUPH .nugget(nugget_euphemium) .ingot(ingot_euphemium) .dust(powder_euphemium) .block(block_euphemium); @@ -770,6 +772,13 @@ public class OreDictManager { public String block() { return BLOCK.name() + mats[0]; } public String ore() { return ORE.name() + mats[0]; } public String fragment() { return FRAGMENT.name() + mats[0]; } + public String lightBarrel() { return LIGHTBARREL.name() + mats[0]; } + public String heavyBarrel() { return HEAVYBARREL.name() + mats[0]; } + public String lightReceiver() { return LIGHTRECEIVER.name() + mats[0]; } + public String heavyReceiver() { return HEAVYRECEIVER.name() + mats[0]; } + public String mechanism() { return MECHANISM.name() + mats[0]; } + public String stock() { return STOCK.name() + mats[0]; } + public String grip() { return GRIP.name() + mats[0]; } public String[] all(MaterialShapes shape) { return appendToAll(shape.prefixes); } /** Returns cast (triple) plates if 528 mode is enabled or normal plates if not */ diff --git a/src/main/java/com/hbm/inventory/material/MaterialShapes.java b/src/main/java/com/hbm/inventory/material/MaterialShapes.java index 7e3f12b07..e6660ac78 100644 --- a/src/main/java/com/hbm/inventory/material/MaterialShapes.java +++ b/src/main/java/com/hbm/inventory/material/MaterialShapes.java @@ -35,13 +35,13 @@ public class MaterialShapes { public static final MaterialShapes BLOCK = new MaterialShapes(INGOT.quantity * 9, "block"); public static final MaterialShapes HEAVY_COMPONENT = new MaterialShapes(CASTPLATE.quantity * 256, "componentHeavy"); - public static final MaterialShapes LIGHTBARREL = new MaterialShapes(INGOT.quantity * 3, "barrelLight"); - public static final MaterialShapes HEAVYBARREL = new MaterialShapes(INGOT.quantity * 6, "barrelHeavy"); - public static final MaterialShapes LIGHTRECEIVER = new MaterialShapes(INGOT.quantity * 4, "receiverLight"); - public static final MaterialShapes HEAVYRECEIVER = new MaterialShapes(INGOT.quantity * 9, "receiverHeavy"); - public static final MaterialShapes MECHANISM = new MaterialShapes(INGOT.quantity * 4, "gunMechanism"); - public static final MaterialShapes STOCK = new MaterialShapes(INGOT.quantity * 4, "stock"); - public static final MaterialShapes GRIP = new MaterialShapes(INGOT.quantity * 2, "grip"); + public static final MaterialShapes LIGHTBARREL = new MaterialShapes(INGOT.quantity * 3, "barrelLight"); + public static final MaterialShapes HEAVYBARREL = new MaterialShapes(INGOT.quantity * 6, "barrelHeavy"); + public static final MaterialShapes LIGHTRECEIVER = new MaterialShapes(INGOT.quantity * 4, "receiverLight"); + public static final MaterialShapes HEAVYRECEIVER = new MaterialShapes(INGOT.quantity * 9, "receiverHeavy"); + public static final MaterialShapes MECHANISM = new MaterialShapes(INGOT.quantity * 4, "gunMechanism"); + public static final MaterialShapes STOCK = new MaterialShapes(INGOT.quantity * 4, "stock"); + public static final MaterialShapes GRIP = new MaterialShapes(INGOT.quantity * 2, "grip"); public static void registerCompatShapes() { diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java index dd1bee085..4c696bf7f 100644 --- a/src/main/java/com/hbm/inventory/material/Mats.java +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -47,24 +47,26 @@ public class Mats { public static final int _ES = 20_000; //Vanilla and vanilla-like - public static final NTMMaterial MAT_STONE = makeSmeltable(_VS + 00, df("Stone"), 0x7F7F7F, 0x353535, 0x4D2F23).n(); - public static final NTMMaterial MAT_CARBON = makeAdditive( 699, CARBON, 0x363636, 0x030303, 0x404040).setShapes(WIRE, INGOT, BLOCK).n(); - public static final NTMMaterial MAT_COAL = makeNonSmeltable(600, COAL, 0x363636, 0x030303, 0x404040).setConversion(MAT_CARBON, 2, 1).setShapes(FRAGMENT).n(); - public static final NTMMaterial MAT_LIGNITE = makeNonSmeltable(601, LIGNITE, 0x542D0F, 0x261508, 0x472913).setConversion(MAT_CARBON, 3, 1).setShapes(FRAGMENT).n(); - public static final NTMMaterial MAT_COALCOKE = make( 610, COALCOKE) .setConversion(MAT_CARBON, 4, 3).n(); - public static final NTMMaterial MAT_PETCOKE = make( 611, PETCOKE) .setConversion(MAT_CARBON, 4, 3).n(); - public static final NTMMaterial MAT_LIGCOKE = make( 612, LIGCOKE) .setConversion(MAT_CARBON, 4, 3).n(); - public static final NTMMaterial MAT_GRAPHITE = make( 620, GRAPHITE) .setConversion(MAT_CARBON, 1, 1).n(); - public static final NTMMaterial MAT_DIAMOND = makeNonSmeltable(1430, DIAMOND, 0xFFFFFF, 0x1B7B6B, 0x8CF4E2).setConversion(MAT_CARBON, 1, 1).setShapes(FRAGMENT).n(); - public static final NTMMaterial MAT_IRON = makeSmeltable(2600, IRON, 0xFFFFFF, 0x353535, 0xFFA259).setShapes(FRAGMENT, INGOT, DUST, PIPE, CASTPLATE, WELDEDPLATE, BLOCK).m(); - public static final NTMMaterial MAT_GOLD = makeSmeltable(7900, GOLD, 0xFFFF8B, 0xC26E00, 0xE8D754).setShapes(FRAGMENT, WIRE, NUGGET, INGOT, DUST, DENSEWIRE, CASTPLATE, BLOCK).m(); - public static final NTMMaterial MAT_REDSTONE = makeSmeltable(_VS + 01, REDSTONE, 0xE3260C, 0x700E06, 0xFF1000).setShapes(FRAGMENT).n(); - public static final NTMMaterial MAT_OBSIDIAN = makeSmeltable(_VS + 02, df("Obsidian"), 0x3D234D).n(); - public static final NTMMaterial MAT_HEMATITE = makeAdditive( 2601, HEMATITE, 0xDFB7AE, 0x5F372E, 0x6E463D).m(); - public static final NTMMaterial MAT_WROUGHTIRON = makeSmeltable(2602, df("WroughtIron"), 0xFAAB89).m(); - public static final NTMMaterial MAT_PIGIRON = makeSmeltable(2603, df("PigIron"), 0xFF8B59).m(); - public static final NTMMaterial MAT_METEORICIRON = makeSmeltable(2604, df("MeteoricIron"), 0x715347).m(); - public static final NTMMaterial MAT_MALACHITE = makeAdditive( 2901, MALACHITE, 0xA2F0C8, 0x227048, 0x61AF87).m(); + public static final NTMMaterial MAT_WOOD = makeNonSmeltable(_VS + 03, WOOD, 0x896727, 0x281E0B, 0x896727).setShapes(STOCK, GRIP).n(); + public static final NTMMaterial MAT_IVORY = makeNonSmeltable(_VS + 04, BONE, 0xFFFEEE, 0x797870, 0xEDEBCA).setShapes(GRIP).n(); + public static final NTMMaterial MAT_STONE = makeSmeltable(_VS + 00, df("Stone"), 0x7F7F7F, 0x353535, 0x4D2F23).n(); + public static final NTMMaterial MAT_CARBON = makeAdditive( 699, CARBON, 0x363636, 0x030303, 0x404040).setShapes(WIRE, INGOT, BLOCK).n(); + public static final NTMMaterial MAT_COAL = makeNonSmeltable(600, COAL, 0x363636, 0x030303, 0x404040).setConversion(MAT_CARBON, 2, 1).setShapes(FRAGMENT).n(); + public static final NTMMaterial MAT_LIGNITE = makeNonSmeltable(601, LIGNITE, 0x542D0F, 0x261508, 0x472913).setConversion(MAT_CARBON, 3, 1).setShapes(FRAGMENT).n(); + public static final NTMMaterial MAT_COALCOKE = make( 610, COALCOKE) .setConversion(MAT_CARBON, 4, 3).n(); + public static final NTMMaterial MAT_PETCOKE = make( 611, PETCOKE) .setConversion(MAT_CARBON, 4, 3).n(); + public static final NTMMaterial MAT_LIGCOKE = make( 612, LIGCOKE) .setConversion(MAT_CARBON, 4, 3).n(); + public static final NTMMaterial MAT_GRAPHITE = make( 620, GRAPHITE) .setConversion(MAT_CARBON, 1, 1).n(); + public static final NTMMaterial MAT_DIAMOND = makeNonSmeltable(1430, DIAMOND, 0xFFFFFF, 0x1B7B6B, 0x8CF4E2).setConversion(MAT_CARBON, 1, 1).setShapes(FRAGMENT).n(); + public static final NTMMaterial MAT_IRON = makeSmeltable(2600, IRON, 0xFFFFFF, 0x353535, 0xFFA259).setShapes(FRAGMENT, INGOT, DUST, PIPE, CASTPLATE, WELDEDPLATE, BLOCK).m(); + public static final NTMMaterial MAT_GOLD = makeSmeltable(7900, GOLD, 0xFFFF8B, 0xC26E00, 0xE8D754).setShapes(FRAGMENT, WIRE, NUGGET, INGOT, DUST, DENSEWIRE, CASTPLATE, BLOCK).m(); + public static final NTMMaterial MAT_REDSTONE = makeSmeltable(_VS + 01, REDSTONE, 0xE3260C, 0x700E06, 0xFF1000).setShapes(FRAGMENT).n(); + public static final NTMMaterial MAT_OBSIDIAN = makeSmeltable(_VS + 02, df("Obsidian"), 0x3D234D).n(); + public static final NTMMaterial MAT_HEMATITE = makeAdditive( 2601, HEMATITE, 0xDFB7AE, 0x5F372E, 0x6E463D).m(); + public static final NTMMaterial MAT_WROUGHTIRON = makeSmeltable(2602, df("WroughtIron"), 0xFAAB89).m(); + public static final NTMMaterial MAT_PIGIRON = makeSmeltable(2603, df("PigIron"), 0xFF8B59).m(); + public static final NTMMaterial MAT_METEORICIRON = makeSmeltable(2604, df("MeteoricIron"), 0x715347).m(); + public static final NTMMaterial MAT_MALACHITE = makeAdditive( 2901, MALACHITE, 0xA2F0C8, 0x227048, 0x61AF87).m(); //Radioactive public static final NTMMaterial MAT_URANIUM = makeSmeltable(9200, U, 0xC1C7BD, 0x2B3227, 0x9AA196).setShapes(FRAGMENT, NUGGET, BILLET, INGOT, DUST, BLOCK).m(); @@ -131,7 +133,7 @@ public class Mats { public static final NTMMaterial MAT_OSMIRIDIUM = makeSmeltable(7699, OSMIRIDIUM, 0xDBE3EF, 0x7891BE, 0xACBDD9).setShapes(NUGGET, INGOT, CASTPLATE, WELDEDPLATE).m(); //Alloys - public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT).m(); + public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT, LIGHTBARREL, LIGHTRECEIVER).m(); public static final NTMMaterial MAT_MINGRADE = makeSmeltable(_AS + 1, MINGRADE, 0xFFBA7D, 0xAF1700, 0xE44C0F).setShapes(WIRE, INGOT, DUST, BLOCK).m(); public static final NTMMaterial MAT_ALLOY = makeSmeltable(_AS + 2, ALLOY, 0xFF8330, 0x700000, 0xFF7318).setShapes(WIRE, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK).m(); diff --git a/src/main/java/com/hbm/inventory/recipes/PressRecipes.java b/src/main/java/com/hbm/inventory/recipes/PressRecipes.java index eab661cfc..a2907a600 100644 --- a/src/main/java/com/hbm/inventory/recipes/PressRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/PressRecipes.java @@ -18,6 +18,7 @@ import com.hbm.inventory.material.Mats; import com.hbm.inventory.material.NTMMaterial; import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ItemEnums.EnumBriquetteType; +import com.hbm.items.ItemEnums.EnumCasingType; import com.hbm.items.ItemEnums.EnumPages; import com.hbm.items.ItemAmmoEnums.Ammo357Magnum; import com.hbm.items.ItemAmmoEnums.Ammo556mm; @@ -72,18 +73,25 @@ public class PressRecipes extends SerializableRecipe { makeRecipe(StampType.FLAT, new OreDictStack(LIGNITE.dust()), DictFrame.fromOne(ModItems.briquette, EnumBriquetteType.LIGNITE)); makeRecipe(StampType.FLAT, new ComparableStack(ModItems.powder_sawdust), DictFrame.fromOne(ModItems.briquette, EnumBriquetteType.WOOD)); - makeRecipe(StampType.PLATE, new OreDictStack(IRON.ingot()), ModItems.plate_iron); - makeRecipe(StampType.PLATE, new OreDictStack(GOLD.ingot()), ModItems.plate_gold); - makeRecipe(StampType.PLATE, new OreDictStack(TI.ingot()), ModItems.plate_titanium); - makeRecipe(StampType.PLATE, new OreDictStack(AL.ingot()), ModItems.plate_aluminium); - makeRecipe(StampType.PLATE, new OreDictStack(STEEL.ingot()), ModItems.plate_steel); - makeRecipe(StampType.PLATE, new OreDictStack(PB.ingot()), ModItems.plate_lead); - makeRecipe(StampType.PLATE, new OreDictStack(CU.ingot()), ModItems.plate_copper); - makeRecipe(StampType.PLATE, new OreDictStack(ALLOY.ingot()), ModItems.plate_advanced_alloy); - makeRecipe(StampType.PLATE, new OreDictStack(SA326.ingot()), ModItems.plate_schrabidium); - makeRecipe(StampType.PLATE, new OreDictStack(CMB.ingot()), ModItems.plate_combine_steel); - makeRecipe(StampType.PLATE, new OreDictStack(BIGMT.ingot()), ModItems.plate_saturnite); - makeRecipe(StampType.PLATE, new OreDictStack(DURA.ingot()), ModItems.plate_dura_steel); + makeRecipe(StampType.PLATE, new OreDictStack(IRON.ingot()), ModItems.plate_iron); + makeRecipe(StampType.PLATE, new OreDictStack(GOLD.ingot()), ModItems.plate_gold); + makeRecipe(StampType.PLATE, new OreDictStack(TI.ingot()), ModItems.plate_titanium); + makeRecipe(StampType.PLATE, new OreDictStack(AL.ingot()), ModItems.plate_aluminium); + makeRecipe(StampType.PLATE, new OreDictStack(STEEL.ingot()), ModItems.plate_steel); + makeRecipe(StampType.PLATE, new OreDictStack(PB.ingot()), ModItems.plate_lead); + makeRecipe(StampType.PLATE, new OreDictStack(CU.ingot()), ModItems.plate_copper); + makeRecipe(StampType.PLATE, new OreDictStack(ALLOY.ingot()), ModItems.plate_advanced_alloy); + makeRecipe(StampType.PLATE, new OreDictStack(SA326.ingot()), ModItems.plate_schrabidium); + makeRecipe(StampType.PLATE, new OreDictStack(CMB.ingot()), ModItems.plate_combine_steel); + makeRecipe(StampType.PLATE, new OreDictStack(GUNMETAL.ingot()), ModItems.plate_gunmetal); + makeRecipe(StampType.PLATE, new OreDictStack(WEAPONSTEEL.ingot()), ModItems.plate_weaponsteel); + makeRecipe(StampType.PLATE, new OreDictStack(BIGMT.ingot()), ModItems.plate_saturnite); + makeRecipe(StampType.PLATE, new OreDictStack(DURA.ingot()), ModItems.plate_dura_steel); + + makeRecipe(StampType.C9, new OreDictStack(GUNMETAL.plate()), DictFrame.fromOne(ModItems.casing, EnumCasingType.SMALL, 4)); + makeRecipe(StampType.C50, new OreDictStack(GUNMETAL.plate()), DictFrame.fromOne(ModItems.casing, EnumCasingType.LARGE, 2)); + makeRecipe(StampType.C9, new OreDictStack(WEAPONSTEEL.plate()), DictFrame.fromOne(ModItems.casing, EnumCasingType.SMALL_STEEL, 4)); + makeRecipe(StampType.C50, new OreDictStack(WEAPONSTEEL.plate()), DictFrame.fromOne(ModItems.casing, EnumCasingType.LARGE_STEEL, 2)); for(NTMMaterial mat : Mats.orderedList) { if(mat.shapes.contains(MaterialShapes.WIRE) && mat.shapes.contains(MaterialShapes.INGOT)) { diff --git a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java index 87464341a..b57b02123 100644 --- a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java @@ -42,6 +42,9 @@ public class RotaryFurnaceRecipes extends SerializableRecipe { recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(3)), 100, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()))); recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(4)), 200, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()), new ComparableStack(ModItems.powder_flux))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_DESH, INGOT.q(1)), 100, 200, new FluidStack(Fluids.MERCURY, 100), new ComparableStack(ModItems.powder_desh_mix), new OreDictStack(COAL.dust()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_SATURN, INGOT.q(2)), 200, 400, new FluidStack(Fluids.HEATINGOIL, 250), new OreDictStack(DURA.dust(), 2), new OreDictStack(CU.dust()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_GUNMETAL, INGOT.q(4)), 200, 100, new OreDictStack(CU.ingot(), 3), new OreDictStack(AL.ingot(), 1))); recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_WEAPONSTEEL, INGOT.q(1)), 200, 400, new FluidStack(Fluids.GAS_COKER, 100), new OreDictStack(STEEL.ingot(), 1), new ComparableStack(ModItems.powder_flux, 2))); } diff --git a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java index 2f52054d6..ff6591a4a 100644 --- a/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/anvil/AnvilRecipes.java @@ -306,6 +306,14 @@ public class AnvilRecipes { new OreDictStack(KEY_BRICK, 16) }, new AnvilOutput(new ItemStack(ModBlocks.furnace_combination))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe( + new AStack[] { + new ComparableStack(Blocks.stonebrick, 8), + new ComparableStack(ModItems.ingot_firebrick, 16), + new OreDictStack(IRON.ingot(), 4), + new OreDictStack(CU.plate(), 8), + }, new AnvilOutput(new ItemStack(ModBlocks.machine_rotary_furnace))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe( new AStack[] { new OreDictStack(KEY_PLANKS, 16), @@ -561,6 +569,14 @@ public class AnvilRecipes { } public static void registerConstructionAmmo() { + + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 22))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 23))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 24))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 25))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 26))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 27))).setTier(2)); + constructionRecipes.add(new AnvilConstructionRecipe(new AStack[]{new ComparableStack(ModItems.mold_base), new OreDictStack(STEEL.ingot(), 4)}, new AnvilOutput(new ItemStack(ModItems.mold, 1, 28))).setTier(2)); constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(CU.plate()), new AnvilOutput(new ItemStack(ModItems.casing_357))).setTier(1)); constructionRecipes.add(new AnvilConstructionRecipe(new OreDictStack(CU.plate()), new AnvilOutput(new ItemStack(ModItems.casing_44))).setTier(1)); diff --git a/src/main/java/com/hbm/items/ItemEnums.java b/src/main/java/com/hbm/items/ItemEnums.java index 8e4592d72..97d817daa 100644 --- a/src/main/java/com/hbm/items/ItemEnums.java +++ b/src/main/java/com/hbm/items/ItemEnums.java @@ -79,4 +79,8 @@ public class ItemEnums { public static enum EnumSecretType { CANISTER, CONTROLLER } + + public static enum EnumCasingType { + SMALL, LARGE, SMALL_STEEL, LARGE_STEEL, SHOTSHELL, BUCKSHOT + } } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 9b13f5a59..60a1246f0 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -190,7 +190,9 @@ public class ModItems { public static Item powder_tetraneutronium; public static Item ingot_starmetal; public static Item ingot_gunmetal; + public static Item plate_gunmetal; public static Item ingot_weaponsteel; + public static Item plate_weaponsteel; public static Item ingot_saturnite; public static Item plate_saturnite; public static Item ingot_ferrouranium; @@ -640,6 +642,8 @@ public class ModItems { public static Item assembly_nuke; public static Item assembly_luna; + public static Item casing; + public static Item folly_shell; public static Item folly_bullet; public static Item folly_bullet_nuclear; @@ -2628,7 +2632,9 @@ public class ModItems { powder_dineutronium = new ItemCustomLore().setUnlocalizedName("powder_dineutronium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":powder_dineutronium"); ingot_starmetal = new ItemStarmetal().setUnlocalizedName("ingot_starmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_starmetal"); ingot_gunmetal = new Item().setUnlocalizedName("ingot_gunmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_gunmetal"); + plate_gunmetal = new Item().setUnlocalizedName("plate_gunmetal").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_gunmetal"); ingot_weaponsteel = new Item().setUnlocalizedName("ingot_weaponsteel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_gunsteel"); + plate_weaponsteel = new Item().setUnlocalizedName("plate_weaponsteel").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_gunsteel"); ingot_saturnite = new ItemCustomLore().setRarity(EnumRarity.rare).setUnlocalizedName("ingot_saturnite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_saturnite"); plate_saturnite = new ItemCustomLore().setRarity(EnumRarity.rare).setUnlocalizedName("plate_saturnite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_saturnite"); ingot_ferrouranium = new ItemCustomLore().setUnlocalizedName("ingot_ferrouranium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_ferrouranium"); @@ -3067,6 +3073,7 @@ public class ModItems { folly_bullet = new Item().setUnlocalizedName("folly_bullet").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":folly_bullet"); folly_bullet_nuclear = new Item().setUnlocalizedName("folly_bullet_nuclear").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":folly_bullet_nuclear"); folly_bullet_du = new Item().setUnlocalizedName("folly_bullet_du").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":folly_bullet_du"); + casing = new ItemEnumMulti(ItemEnums.EnumCasingType.class, true, true).setUnlocalizedName("casing").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":casing"); wiring_red_copper = new ItemWiring().setUnlocalizedName("wiring_red_copper").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":wiring_red_copper"); @@ -5959,6 +5966,8 @@ public class ModItems { GameRegistry.registerItem(plate_schrabidium, plate_schrabidium.getUnlocalizedName()); GameRegistry.registerItem(plate_combine_steel, plate_combine_steel.getUnlocalizedName()); GameRegistry.registerItem(plate_mixed, plate_mixed.getUnlocalizedName()); + GameRegistry.registerItem(plate_gunmetal, plate_gunmetal.getUnlocalizedName()); + GameRegistry.registerItem(plate_weaponsteel, plate_weaponsteel.getUnlocalizedName()); GameRegistry.registerItem(plate_saturnite, plate_saturnite.getUnlocalizedName()); GameRegistry.registerItem(plate_paa, plate_paa.getUnlocalizedName()); GameRegistry.registerItem(plate_polymer, plate_polymer.getUnlocalizedName()); @@ -6148,6 +6157,8 @@ public class ModItems { GameRegistry.registerItem(casing_50, casing_50.getUnlocalizedName()); GameRegistry.registerItem(casing_buckshot, casing_buckshot.getUnlocalizedName()); + GameRegistry.registerItem(casing, casing.getUnlocalizedName()); + //Bullet Assemblies GameRegistry.registerItem(assembly_iron, assembly_iron.getUnlocalizedName()); GameRegistry.registerItem(assembly_steel, assembly_steel.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index 6bf4e95f2..b461a0ff2 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -30,8 +30,8 @@ public class XFactory357 { m357_sp = new BulletConfig().setItem(EnumAmmo.M357_SP); m357_fmj = new BulletConfig().setItem(EnumAmmo.M357_FMJ).setDamage(0.8F).setArmorPiercing(0.1F); m357_jhp = new BulletConfig().setItem(EnumAmmo.M357_JHP).setDamage(1.5F).setArmorPiercing(-0.25F); - m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false); - m357_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setWear(1.5F); + m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F); + m357_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F); ModItems.gun_atlas = new ItemGunBaseNT(new GunConfig() .dura(300).draw(4).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_ATLAS) diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index c797ec3f7..93614bfdc 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -813,6 +813,7 @@ hbmmat.bakelite=Bakelit hbmmat.beryllium=Beryllium hbmmat.bismuth=Bismut hbmmat.bismuthbronze=Bismutbronze +hbmmat.bone=Elfenbein hbmmat.borax=Borax hbmmat.boron=Bor hbmmat.bscco=BSCCO @@ -907,6 +908,7 @@ hbmmat.uranium238=Uran-238 hbmmat.watzmud=Giftiger Schlamm hbmmat.weaponsteel=Waffenstahl hbmmat.whitephosphorus=Weißer Phosphor +hbmmat.wood=Holz hbmmat.workersalloy=Desh hbmmat.wroughtiron=Schmiedeeisen hbmmat.zirconium=Zirkonium diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 8eb87dca8..3777b2108 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1535,6 +1535,7 @@ hbmmat.bakelite=Bakelite hbmmat.beryllium=Beryllium hbmmat.bismuth=Bismuth hbmmat.bismuthbronze=Bismuth Bronze +hbmmat.bone=Ivory hbmmat.borax=Borax hbmmat.boron=Boron hbmmat.bscco=BSCCO @@ -1629,6 +1630,7 @@ hbmmat.uranium238=Uranium-238 hbmmat.watzmud=Poisonous Mud hbmmat.weaponsteel=Weapon Steel hbmmat.whitephosphorus=White Phosphorus +hbmmat.wood=Wood hbmmat.workersalloy=Desh hbmmat.wroughtiron=Wroght Iron hbmmat.zirconium=Zirconium diff --git a/src/main/resources/assets/hbm/textures/gui/gui_wiki.png b/src/main/resources/assets/hbm/textures/gui/gui_wiki.png new file mode 100644 index 0000000000000000000000000000000000000000..90785445ba5ed50e870560cd6a69e3753a6f0d8b GIT binary patch literal 893 zcmeAS@N?(olHy`uVBq!ia0y~yU<5K5893O0R7}x|G$6%N?Bp530R%N1DIE+9%qE^L zjv*Cu-rhFMo8utSaPhvN`y+-sCwSSPFqo_kvGfgck>1(y=tgJnoA-OUwyZI^lwp^k zBA2)Q_IJgX7JWCjy>-2AZ)az>=Wa(u{^>L4JC{DUIS&+F|NOtr`R%d-@AG!b&$!c{ z8hd?a<=s7Z|8t+dJbC^0{P5mp@mt^jUZ4AWDfh4P^1siWl%(cg{`5yxS-qI2nwS8^dohHyGd)E<9fNLqNxe;Ze=~ z`_Duf4zY});S~bYejnVmZu9%!Qb+;YdZ;-#|T9M50 lInOJzu^(lAQ)(F<+A3yxD|NE4?YlbF2f0*-(4U!7_`sWV-!3UnM zkBnkDP5kn9DI6ECrB(d=Wg7G5-0JWn(qQRNU$fif@9z`bAm1+T!Fc#8!|g-zJofu) zlPf+w<(842ooLRGu9H${bN0XoP3Cj)&+8_bFiY5_8vNPyZ`#ANd&7C&=j}VZk|$q6 u;L@1`4eG{gO_Lo?`W#$duzD#61B1DegMxCy*~38RGkCiCxvXA4O7qp&GDlj|f4cmbO>tE+f-n&zM^uxPn z)^oBpR5gk;TxAecH9W<$;0CMm8HP14ADrDA&ZFca)nID8)-?G?{zUdpuLz}GTR-zV rf6(;#8o}Ej*>vXkvYCyIjf@PrLZ*9E9=tQ~sv^QkE%)^3e`y`Mjuf7)Uj-6@Zr*8-iz;OXk; Jvd$@?2>_J_Q0D*u literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/casing.shotshell.png b/src/main/resources/assets/hbm/textures/items/casing.shotshell.png new file mode 100644 index 0000000000000000000000000000000000000000..f6b55e841878bb4ba6556c10f245a137a837660b GIT binary patch literal 198 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfumAtwzkOJ-R`PItPS(b%Mi6)y%yxMF>wL+3cdCzmc=ybD&Z!MmjUonF2Nsw$ q%rH4{ph4Yu;qpBXf_GdEVqvKDGk=;Day|g)5C%_IKbLh*2~7YDCQ-2f literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/casing.small.png b/src/main/resources/assets/hbm/textures/items/casing.small.png new file mode 100644 index 0000000000000000000000000000000000000000..87e9269eb5c9a84b71a8d995f93d4d576da88c87 GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfEuj%smS{_{?+MSn@pZ2`3y zy@H4$*@N@a&KG1qmtXTLqCoP)>l6*=3x3sXK+u*Rz5a1f+ieCj-^8}~>-UZJ?EK#K z@b1}i3*G}SS(6SHm@&kk5N5qL%kWSAE|)j|pGHmlpM6&1gIfBYwh3!zMldkM{4#f` Tn71Ye=tu@nS3j3^P6gbigXJr9-}ZZ_H+b@fiz z!!s-nLV|{CYo(`!I54Wde5@jVP~x%3j^Bm*Kg{r~dcVV(LC`SQOw>ck_`LCByV{#i t=CiJze}8FI_Hm}S`WII}nf*b`|4)}$Lb>Vxk3e@Yc)I$ztaD0e0s!9)Np=7L literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/plate_gunmetal.png b/src/main/resources/assets/hbm/textures/items/plate_gunmetal.png new file mode 100644 index 0000000000000000000000000000000000000000..84a7b470c548b5124afeca8bed39b28dca65e6c8 GIT binary patch literal 317 zcmV-D0mA-?P)15QgD*K_?JKg-RDT0;P2k7m4aELyA3wo1DNWaG5Kp za;bVNH*PHuHjYadi=qPlj-{?94xJ{+eP>3{=NDE3FDv_nMn=+ P00000NkvXXu0mjf8pMKV literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/plate_gunsteel.png b/src/main/resources/assets/hbm/textures/items/plate_gunsteel.png new file mode 100644 index 0000000000000000000000000000000000000000..833e792f1fcf97b15cdf4ebf77fb07742b9a1c6b GIT binary patch literal 242 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfDeIEn^0F{^ zGBA|8yZD?ja%@!D?Rvz>GrDn-fFOT`jkc$>qw(qoVrrJ9MH9|^wz2-fcHQn@{^u1r zlODW_zHx?u;d-g>Kf9(ScE35+ALwGvIDY@;o!Y2`t-F{v3Y|3Byyv~O>e3~@98&pZ nA1}39DZ3}^PUebVjDH!Lmd)?3Zm?SmbTosftDnm{r-UW|-56QE literal 0 HcmV?d00001 From 59254c7179120020f9101e26992e8fb9c546bfc7 Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 2 Oct 2024 22:02:19 +0200 Subject: [PATCH 45/63] the horngus of a dongfish --- .../projectile/EntityBulletBaseMK4.java | 3 +- src/main/java/com/hbm/items/ModItems.java | 3 + .../com/hbm/items/weapon/sedna/GunConfig.java | 12 + .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 2 +- .../weapon/sedna/factory/GunFactory.java | 1 + .../sedna/factory/GunFactoryClient.java | 27 +- .../hbm/items/weapon/sedna/factory/Lego.java | 4 +- .../weapon/sedna/factory/Orchestras.java | 27 + .../weapon/sedna/factory/XFactory357.java | 4 +- .../weapon/sedna/factory/XFactory44.java | 65 + .../sedna/factory/XFactoryBlackPowder.java | 4 +- .../java/com/hbm/main/ResourceManager.java | 6 +- .../item/weapon/sedna/ItemRenderAtlas.java | 2 +- .../item/weapon/sedna/ItemRenderHenry.java | 118 + .../weapon/sedna/ItemRenderWeaponBase.java | 8 +- .../assets/hbm/models/weapons/henry.obj | 2340 +++++++++-------- .../hbm/textures/models/weapons/henry.png | Bin 2039 -> 7891 bytes 17 files changed, 1464 insertions(+), 1162 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index 0e23f25c4..7b000c098 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -34,7 +34,7 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { this(entity.worldObj); this.thrower = entity; - this.config = config; + this.setBulletConfig(config); this.damage = baseDamage * this.config.damageMult; @@ -64,6 +64,7 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { } public void setBulletConfig(BulletConfig config) { + this.config = config; this.dataWatcher.updateObject(3, config.id); } diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 60a1246f0..049387b6d 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1625,6 +1625,7 @@ public class ModItems { public static Item gun_pepperbox; public static Item gun_atlas; + public static Item gun_henry; public static Item ammo_standard; @@ -7034,6 +7035,8 @@ public class ModItems { GameRegistry.registerItem(gun_pepperbox, gun_pepperbox.getUnlocalizedName()); GameRegistry.registerItem(gun_atlas, gun_atlas.getUnlocalizedName()); + GameRegistry.registerItem(gun_henry, gun_henry.getUnlocalizedName()); + GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); //Ammo diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index cd4e87c49..5824c6972 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -4,6 +4,8 @@ import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.factory.GunStateDecider; +import com.hbm.items.weapon.sedna.factory.Lego; import com.hbm.items.weapon.sedna.hud.IHUDComponent; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.HbmAnimations.AnimType; @@ -125,4 +127,14 @@ public class GunConfig { //client public GunConfig anim(BiFunction lambda) { this.animations_DNA = lambda; return this; } public GunConfig hud(IHUDComponent... components) { this.hudComponents_DNA = components; return this; } + + /** Standard package for keybind handling and decider using LEGO prefabs: Primary fire on LMB, + * reload on R, aiming on MMB and the standard decider which includes jamming and auto fire handling*/ + public GunConfig setupStandardConfiguration() { + this.pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY); + this.pr(Lego.LAMBDA_STANDARD_RELOAD); + this.pt(Lego.LAMBDA_TOGGLE_AIM); + this.decider(GunStateDecider.LAMBDA_STANDARD_DECIDER); + return this; + } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 8f3169d6d..123609630 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -287,7 +287,7 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei IHUDComponent[] components = gun.getConfig(stack).getHUDComponents(stack); - for(IHUDComponent component : components) { + if(components != null) for(IHUDComponent component : components) { int bottomOffset = 0; component.renderHUDComponent(event, type, player, stack, bottomOffset); bottomOffset += component.getComponentHeight(player, stack); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 34ba52b61..cb409e93a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -48,6 +48,7 @@ public class GunFactory { XFactoryBlackPowder.init(); XFactory357.init(); + XFactory44.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 19efdc760..6c5ba0788 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -1,6 +1,8 @@ package com.hbm.items.weapon.sedna.factory; import static com.hbm.items.weapon.sedna.factory.GunFactory.*; +import static com.hbm.items.weapon.sedna.factory.XFactory357.*; +import static com.hbm.items.weapon.sedna.factory.XFactory44.*; import java.util.function.BiConsumer; @@ -11,6 +13,7 @@ import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.render.item.weapon.sedna.ItemRenderAtlas; import com.hbm.render.item.weapon.sedna.ItemRenderDebug; +import com.hbm.render.item.weapon.sedna.ItemRenderHenry; import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; import net.minecraft.client.renderer.Tessellator; @@ -23,27 +26,43 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_debug, new ItemRenderDebug()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_pepperbox, new ItemRenderPepperbox()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_atlas, new ItemRenderAtlas()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_henry, new ItemRenderHenry()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); + m357_sp.setRenderer(RENDER_STANDARD_BULLET); + m357_fmj.setRenderer(RENDER_STANDARD_BULLET); + m357_jhp.setRenderer(RENDER_STANDARD_BULLET); + m357_ap.setRenderer(RENDER_STANDARD_BULLET); + m357_express.setRenderer(RENDER_EXPRESS_BULLET); + m44_sp.setRenderer(RENDER_STANDARD_BULLET); + m44_fmj.setRenderer(RENDER_STANDARD_BULLET); + m44_jhp.setRenderer(RENDER_STANDARD_BULLET); + m44_ap.setRenderer(RENDER_STANDARD_BULLET); + m44_express.setRenderer(RENDER_EXPRESS_BULLET); //HUDS ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_atlas).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_henry).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { - Tessellator tess = Tessellator.instance; double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; if(length <= 0) return; - renderBulletStandard(tess, 0xFFBF00, 0xFFFFFF, length, false); + renderBulletStandard(Tessellator.instance, 0xFFBF00, 0xFFFFFF, length, false); + }; + + public static BiConsumer RENDER_EXPRESS_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, false); }; public static BiConsumer RENDER_TRACER_BULLET = (bullet, interp) -> { - Tessellator tess = Tessellator.instance; double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; if(length <= 0) return; - renderBulletStandard(tess, 0x9E082E, 0xFF8A79, length, true); + renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, true); }; public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, boolean fullbright) { renderBulletStandard(tess, dark, light, length, 0.03125D, 0.03125D * 0.25D, fullbright); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 55226db8a..60c7a8f0d 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -83,8 +83,8 @@ public class Lego { /** Toggles isAiming. Used by keybinds. */ public static BiConsumer LAMBDA_STANDARD_RECOIL = (stack, ctx) -> { - ItemGunBaseNT.recoilVertical += 10; - ItemGunBaseNT.recoilHorizontal += ctx.player.getRNG().nextGaussian() * 1.5; + //ItemGunBaseNT.recoilVertical += 10; + //ItemGunBaseNT.recoilHorizontal += ctx.player.getRNG().nextGaussian() * 1.5; }; /** Toggles isAiming. Used by keybinds. */ diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 93548ffed..837c4576d 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -98,4 +98,31 @@ public class Orchestras { if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); } }; + + public static BiConsumer ORCHESTRA_HENRY = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 44) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 14) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + } + if(type == AnimType.INSPECT) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.JAMMED) { + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index b461a0ff2..576c6c481 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -39,9 +39,7 @@ public class XFactory357 { .dmg(10F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) - .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_ATLAS_ANIMS) + .setupStandardConfiguration().anim(LAMBDA_ATLAS_ANIMS) ).setUnlocalizedName("gun_atlas").setTextureName(RefStrings.MODID + ":gun_darter"); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java new file mode 100644 index 000000000..865af98ac --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java @@ -0,0 +1,65 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory44 { + + public static BulletConfig m44_sp; + public static BulletConfig m44_fmj; + public static BulletConfig m44_jhp; + public static BulletConfig m44_ap; + public static BulletConfig m44_express; + + public static void init() { + m44_sp = new BulletConfig().setItem(EnumAmmo.M357_SP); + m44_fmj = new BulletConfig().setItem(EnumAmmo.M357_FMJ).setDamage(0.8F).setArmorPiercing(0.1F); + m44_jhp = new BulletConfig().setItem(EnumAmmo.M357_JHP).setDamage(1.5F).setArmorPiercing(-0.25F); + m44_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F); + m44_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F); + + ModItems.gun_henry = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(15).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_HENRY) + .rec(new Receiver(0) + .dmg(12F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 6).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_HENRY_ANIMS) + ).setUnlocalizedName("gun_henry").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_HENRY_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, -3, 350, IType.SIN_DOWN)) + .addBus("SIGHT", new BusAnimationSequence().addPos(80, 0, 0, 0).addPos(80, 0, 0, 500).addPos(0, 0, -3, 250, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -1, 50).addPos(0, 0, 0, 250)) + .addBus("SIGHT", new BusAnimationSequence().addPos(35, 0, 0, 100, IType.SIN_DOWN).addPos(0, 0, 0, 100, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); + case CYCLE_DRY: return new BusAnimation(); + case RELOAD: return new BusAnimation(); + case INSPECT: return new BusAnimation(); + case JAMMED: return new BusAnimation(); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 691982117..1427e224f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -33,9 +33,7 @@ public class XFactoryBlackPowder { .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) - .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_PEPPERBOX_ANIMS) + .setupStandardConfiguration().anim(LAMBDA_PEPPERBOX_ANIMS) ).setUnlocalizedName("gun_pepperbox").setTextureName(RefStrings.MODID + ":gun_darter"); } diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 7824afcb6..283e1b185 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -838,7 +838,6 @@ public class ResourceManager { public static final IModelCustom spas_12 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/spas-12.obj")); public static final IModelCustom nightmare_dark = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/nightmare_dark.obj")); public static final IModelCustom glass_cannon = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/glass_cannon.obj")); - public static final IModelCustom bio_revolver = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/bio_revolver.obj")); public static final IModelCustom chemthrower = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/chemthrower.obj")).asVBO(); public static final IModelCustom novac = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/novac.obj")); public static final IModelCustom m2 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/m2_browning.obj")).asVBO(); //large fella should be a display list @@ -852,6 +851,8 @@ public class ResourceManager { public static final IModelCustom lilmac = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/lilmac.obj")).asVBO(); public static final IModelCustom pepperbox = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/pepperbox.obj")).asVBO(); + public static final IModelCustom bio_revolver = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/bio_revolver.obj")).asVBO(); + public static final IModelCustom henry = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/henry.obj")).asVBO(); public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); @@ -943,7 +944,6 @@ public class ResourceManager { public static final ResourceLocation remington_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/remington.png"); public static final ResourceLocation spas_12_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/spas-12.png"); public static final ResourceLocation glass_cannon_panel_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/glass_cannon_panel.png"); - public static final ResourceLocation bio_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bio_revolver.png"); public static final ResourceLocation chemthrower_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/chemthrower.png"); public static final ResourceLocation novac_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/novac.png"); public static final ResourceLocation novac_scope_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/novac_scope.png"); @@ -964,6 +964,8 @@ public class ResourceManager { public static final ResourceLocation debug_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/debug_gun.png"); public static final ResourceLocation pepperbox_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/pepperbox.png"); + public static final ResourceLocation bio_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bio_revolver.png"); + public static final ResourceLocation henry_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/henry.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java index 4036dd54b..2ece42799 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java @@ -90,7 +90,7 @@ public class ItemRenderAtlas extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 1.5, 9.25); GL11.glRotated(90, 0, 1, 0); - this.renderGapFlash(gun.lastShot); + this.renderMuzzleFlash(gun.lastShot, 75, 7.5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java new file mode 100644 index 000000000..0a2ddb99d --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java @@ -0,0 +1,118 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderHenry extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.25F * offset, -1F * offset, 1.75F * offset, + 0, -5 / 8D, 1); + + float aimingProgress = ItemGunBaseNT.prevAimingProgress + (ItemGunBaseNT.aimingProgress - ItemGunBaseNT.prevAimingProgress) * interp; + double r = -2.5 * aimingProgress; + GL11.glRotated(r, 1, 0, 0); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.henry_tex); + double scale = 0.375D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] sight = HbmAnimations.getRelevantTransformation("SIGHT"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] hammer = HbmAnimations.getRelevantTransformation("HAMMER"); + double[] lever = HbmAnimations.getRelevantTransformation("LEVER"); + double[] turn = HbmAnimations.getRelevantTransformation("TURN"); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glTranslated(recoil[0] * 2, recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 5, 1, 0, 0); + GL11.glRotated(turn[2], 0, 0, 1); + + GL11.glTranslated(0, 2, -4); + GL11.glRotated(equip[0], -1, 0, 0); + GL11.glTranslated(0, -2, 4); + + ResourceManager.henry.renderPart("Gun"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.25, -0.1875); + GL11.glRotated(sight[0], 1, 0, 0); + GL11.glTranslated(0, -1.25, 0.1875); + ResourceManager.henry.renderPart("Sight"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.625, -3); + GL11.glRotated(-30 + hammer[0], 1, 0, 0); + GL11.glTranslated(0, -0.625, 3); + ResourceManager.henry.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.25, -2.3125); + GL11.glRotated(lever[0], 1, 0, 0); + GL11.glTranslated(0, -0.25, 2.3125); + ResourceManager.henry.renderPart("Lever"); + GL11.glPopMatrix(); + + ResourceManager.henry.renderPart("Front"); + ResourceManager.henry.renderPart("Bullet"); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + this.renderMuzzleFlash(gun.lastShot, 75, 5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.5D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 0.5, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.henry_tex); + ResourceManager.henry.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java index 1c714db8e..9638fbd80 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java @@ -282,9 +282,13 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { } public static void renderMuzzleFlash(long lastShot) { + renderMuzzleFlash(lastShot, 75, 15); + } + + public static void renderMuzzleFlash(long lastShot, int duration, double l) { Tessellator tess = Tessellator.instance; - int flash = 75; + int flash = duration; if(System.currentTimeMillis() - lastShot < flash) { GL11.glEnable(GL11.GL_BLEND); @@ -294,7 +298,7 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { double fire = (System.currentTimeMillis() - lastShot) / (double) flash; double width = 6 * fire; - double length = 15 * fire; + double length = l * fire; double inset = 2; Minecraft.getMinecraft().renderEngine.bindTexture(flash_plume); tess.startDrawingQuads(); diff --git a/src/main/resources/assets/hbm/models/weapons/henry.obj b/src/main/resources/assets/hbm/models/weapons/henry.obj index 4779070e8..03ba3df7f 100644 --- a/src/main/resources/assets/hbm/models/weapons/henry.obj +++ b/src/main/resources/assets/hbm/models/weapons/henry.obj @@ -1,6 +1,226 @@ # Blender v2.79 (sub 0) OBJ File: 'henry.blend' # www.blender.org -o Plane +o Sight +v -0.125000 1.250000 -0.218750 +v 0.125000 1.250000 -0.218750 +v -0.125000 1.250000 -0.156250 +v 0.125000 1.250000 -0.156250 +v -0.125000 2.000000 -0.218750 +v 0.125000 2.000000 -0.218750 +v -0.125000 2.000000 -0.156250 +v 0.125000 2.000000 -0.156250 +v -0.062500 1.875000 -0.218750 +v 0.062500 1.875000 -0.218750 +v -0.062500 1.875000 -0.156250 +v 0.062500 1.875000 -0.156250 +v -0.062500 1.250000 -0.218750 +v 0.062500 1.250000 -0.218750 +v -0.062500 1.250000 -0.156250 +v 0.062500 1.250000 -0.156250 +vt 0.017857 0.456522 +vt -0.000000 0.478261 +vt 0.005952 0.456522 +vt 0.017857 0.445652 +vt 0.053571 0.489130 +vt 0.029762 0.478261 +vt 0.053571 0.478261 +vt 0.059524 0.478261 +vt 0.053571 0.347826 +vt 0.059524 0.347826 +vt 0.023810 0.347826 +vt 0.023810 0.478261 +vt 0.035714 0.456522 +vt 0.047619 0.456522 +vt 0.041667 0.456522 +vt 0.047619 0.347826 +vt 0.041667 0.347826 +vt 0.041667 0.456522 +vt 0.029762 0.347826 +vt -0.000000 0.347826 +vt 0.005952 0.445652 +vt 0.029762 0.489130 +vt 0.041667 0.347826 +vt 0.035714 0.347826 +vt 0.017857 0.347826 +vt 0.005952 0.347826 +vn 0.0000 0.0000 1.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +s off +f 12/1/1 7/2/1 11/3/1 +f 11/3/2 10/4/2 12/1/2 +f 7/5/3 6/6/3 5/7/3 +f 7/8/4 1/9/4 3/10/4 +f 4/11/5 6/6/5 8/12/5 +f 5/7/6 10/13/6 9/14/6 +f 11/15/5 13/16/5 9/14/5 +f 10/13/4 16/17/4 12/18/4 +f 12/1/1 4/11/1 8/12/1 +f 2/19/6 10/13/6 6/6/6 +f 3/20/1 11/3/1 7/2/1 +f 9/14/6 1/9/6 5/7/6 +f 12/1/1 8/12/1 7/2/1 +f 11/3/2 9/21/2 10/4/2 +f 7/5/3 8/22/3 6/6/3 +f 7/8/4 5/7/4 1/9/4 +f 4/11/5 2/19/5 6/6/5 +f 5/7/6 6/6/6 10/13/6 +f 11/15/5 15/23/5 13/16/5 +f 10/13/4 14/24/4 16/17/4 +f 12/1/1 16/25/1 4/11/1 +f 2/19/6 14/24/6 10/13/6 +f 3/20/1 15/26/1 11/3/1 +f 9/14/6 13/16/6 1/9/6 +o Bullet +v -0.099437 0.786939 5.875000 +v 0.000000 0.828127 5.875000 +v -0.140625 0.687502 5.875000 +v -0.099437 0.588065 5.875000 +v 0.000000 0.546877 5.875000 +v 0.099437 0.588065 5.875000 +v 0.140625 0.687502 5.875000 +v 0.099437 0.786939 5.875000 +v -0.099437 0.786939 6.375000 +v 0.000000 0.828127 6.375000 +v -0.140625 0.687502 6.375000 +v -0.099437 0.588065 6.375000 +v 0.000000 0.546877 6.375000 +v 0.099437 0.588065 6.375000 +v 0.140625 0.687502 6.375000 +v 0.099437 0.786939 6.375000 +v -0.049718 0.737221 6.625000 +v 0.000000 0.757815 6.625000 +v -0.070312 0.687502 6.625000 +v -0.049718 0.637784 6.625000 +v 0.000000 0.617190 6.625000 +v 0.049718 0.637784 6.625000 +v 0.070312 0.687502 6.625000 +v 0.049718 0.737221 6.625000 +vt 0.023809 0.923983 +vt 0.015419 0.930330 +vt 0.011943 0.945652 +vt 0.015419 0.960974 +vt 0.023809 0.967321 +vt 0.032200 0.960974 +vt 0.035676 0.945652 +vt 0.032200 0.930330 +vt 0.023810 0.880435 +vt -0.000000 0.891304 +vt -0.000000 0.880435 +vt 0.071429 0.815217 +vt 0.023810 0.793478 +vt 0.071429 0.793478 +vt 0.071429 0.771739 +vt 0.023810 0.750000 +vt 0.071429 0.750000 +vt 0.071429 0.902174 +vt 0.071429 0.880435 +vt 0.071429 0.858696 +vt 0.023810 0.836957 +vt 0.071429 0.836957 +vt 0.023810 0.815217 +vt 0.023810 0.771739 +vt 0.071429 0.923913 +vt 0.023810 0.902174 +vt 0.023810 0.858696 +vt 0.011629 0.934783 +vt 0.009966 0.942113 +vt 0.005952 0.945149 +vt -0.000000 0.836957 +vt -0.000000 0.826087 +vt -0.000000 0.815217 +vt -0.000000 0.771739 +vt -0.000000 0.913043 +vt -0.000000 0.902174 +vt -0.000000 0.858696 +vt -0.000000 0.804348 +vt -0.000000 0.793478 +vt -0.000000 0.750000 +vt 0.023810 0.923913 +vt 0.001938 0.942113 +vt 0.000276 0.934783 +vt 0.001938 0.927453 +vt 0.005952 0.924417 +vt 0.009966 0.927453 +vt -0.000000 0.847826 +vt -0.000000 0.782609 +vt -0.000000 0.869565 +vt -0.000000 0.760870 +vn 0.0000 0.0000 -1.0000 +vn -0.9627 -0.0000 0.2707 +vn -0.4833 -0.4833 0.7300 +vn -0.6835 -0.0000 0.7300 +vn 0.7071 0.7071 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.6835 -0.0000 0.7300 +vn 0.4833 0.4833 0.7300 +vn 0.0000 0.6835 0.7300 +vn -0.6807 0.6807 0.2707 +vn 0.0000 0.9627 0.2707 +vn 0.6807 0.6807 0.2707 +vn 0.9627 0.0000 0.2707 +vn 0.4833 -0.4833 0.7300 +vn 0.6807 -0.6807 0.2707 +vn -0.6807 -0.6807 0.2707 +vn 0.0000 -0.6835 0.7300 +vn -0.4833 0.4833 0.7300 +vn 0.0000 -0.9627 0.2707 +s off +f 21/27/7 20/28/7 19/29/7 +f 19/29/7 17/30/7 18/31/7 +f 18/31/7 24/32/7 19/29/7 +f 24/32/7 23/33/7 19/29/7 +f 23/33/7 22/34/7 19/29/7 +f 22/34/7 21/27/7 19/29/7 +s 1 +f 27/35/8 36/36/9 35/37/10 +f 24/38/11 31/39/12 23/40/12 +f 22/41/13 29/42/14 21/43/14 +f 20/44/15 27/35/16 19/45/16 +f 17/46/17 26/47/18 18/48/18 +f 18/48/18 32/49/11 24/38/11 +f 23/40/12 30/50/13 22/41/13 +f 21/51/14 28/52/15 20/44/15 +f 19/45/16 25/53/17 17/46/17 +f 39/54/19 40/55/20 34/56/21 +f 25/53/22 34/57/21 26/47/23 +f 32/49/24 34/58/21 40/59/20 +f 31/39/25 38/60/26 30/50/27 +f 28/52/28 37/61/29 36/62/9 +f 27/35/8 33/63/30 25/53/22 +f 31/39/25 40/64/20 39/65/19 +f 30/50/27 37/66/29 29/42/31 +f 27/35/8 28/52/28 36/36/9 +f 24/38/11 32/49/11 31/39/12 +f 22/41/13 30/50/13 29/42/14 +f 20/44/15 28/52/15 27/35/16 +f 17/46/17 25/53/17 26/47/18 +f 18/48/18 26/47/18 32/49/11 +f 23/40/12 31/39/12 30/50/13 +f 21/51/14 29/67/14 28/52/15 +f 19/45/16 27/35/16 25/53/17 +f 34/56/21 33/68/30 35/69/10 +f 35/69/10 36/70/9 34/56/21 +f 36/70/9 37/71/29 34/56/21 +f 37/71/29 38/72/26 34/56/21 +f 38/72/26 39/54/19 34/56/21 +f 25/53/22 33/73/30 34/57/21 +f 32/49/24 26/47/23 34/58/21 +f 31/39/25 39/74/19 38/60/26 +f 28/52/28 29/67/31 37/61/29 +f 27/35/8 35/75/10 33/63/30 +f 31/39/25 32/49/24 40/64/20 +f 30/50/27 38/76/26 37/66/29 +o Front v 0.062500 1.187500 6.000000 v 0.187500 1.062500 6.000000 v -0.187500 1.062500 6.000000 @@ -9,22 +229,6 @@ v 0.187500 0.937500 6.000000 v 0.062500 0.812500 6.000000 v -0.062500 0.812500 6.000000 v -0.187500 0.937500 6.000000 -v -0.187500 0.937500 6.000000 -v -0.062500 0.812500 6.000000 -v 0.062500 0.812500 6.000000 -v 0.187500 0.937500 6.000000 -v -0.062500 1.187500 6.000000 -v -0.187500 1.062500 6.000000 -v 0.187500 1.062500 6.000000 -v 0.062500 1.187500 6.000000 -v 0.062500 1.187500 -0.625000 -v 0.187500 1.062500 -0.625000 -v -0.187500 1.062500 -0.625000 -v -0.062500 1.187500 -0.625000 -v 0.187500 0.937500 -0.625000 -v 0.062500 0.812500 -0.625000 -v -0.062500 0.812500 -0.625000 -v -0.187500 0.937500 -0.625000 v 0.062500 0.812499 8.000000 v -0.062500 0.812499 8.000000 v 0.187500 0.937499 8.000000 @@ -49,22 +253,6 @@ v 0.062500 1.124999 7.000000 v -0.062500 1.124999 7.000000 v 0.125000 0.937499 7.000000 v 0.125000 1.062499 7.000000 -v 0.000000 0.875000 -0.625000 -v -0.132582 0.820082 -0.625000 -v -0.187500 0.687500 -0.625000 -v -0.132582 0.554917 -0.625000 -v 0.000000 0.500000 -0.625000 -v 0.132582 0.554917 -0.625000 -v 0.187500 0.687500 -0.625000 -v 0.132582 0.820082 -0.625000 -v 0.000000 0.875000 5.937500 -v -0.132582 0.820082 5.937500 -v -0.187500 0.687500 5.937500 -v -0.132582 0.554917 5.937500 -v 0.000000 0.500000 5.937500 -v 0.132582 0.554917 5.937500 -v 0.187500 0.687500 5.937500 -v 0.132582 0.820082 5.937500 v 0.000000 0.875000 5.937500 v -0.132582 0.820082 5.937500 v -0.187500 0.687500 5.937500 @@ -81,6 +269,734 @@ v 0.000000 0.500002 7.875000 v 0.132582 0.554920 7.875000 v 0.187500 0.687502 7.875000 v 0.132582 0.820085 7.875000 +v -0.125000 1.062499 7.937500 +v -0.125000 1.312499 7.937500 +v -0.125000 1.062499 7.687500 +v -0.125000 1.312499 7.687500 +v 0.125000 1.062499 7.937500 +v 0.125000 1.312499 7.937500 +v 0.125000 1.062499 7.687500 +v 0.125000 1.312499 7.687500 +v 0.062500 1.124999 7.687500 +v -0.062500 1.124999 7.687500 +v -0.062500 1.124999 7.937500 +v 0.062500 1.124999 7.937500 +vt 0.238095 0.108696 +vt 0.267857 0.076087 +vt 0.285714 0.130435 +vt 0.029762 0.163043 +vt 0.041667 0.130435 +vt 0.047619 0.130435 +vt 0.238095 0.054348 +vt 0.047619 0.021739 +vt 0.238095 0.021739 +vt 0.238095 0.130435 +vt 0.047619 0.108696 +vt 0.238095 0.163043 +vt 0.047619 0.000000 +vt 0.238095 -0.000000 +vt 0.238095 0.217391 +vt 0.047619 0.184783 +vt 0.238095 0.184783 +vt 0.047619 0.163043 +vt 0.238095 0.076087 +vt 0.047619 0.054348 +vt 0.047619 0.076087 +vt 0.000000 0.130435 +vt 0.017857 0.152174 +vt 0.017857 0.163043 +vt 0.041667 0.108696 +vt 0.029762 0.152174 +vt 0.029762 0.086957 +vt 0.029762 0.076087 +vt 0.017857 0.086957 +vt 0.017857 0.076087 +vt 0.005952 0.108696 +vt 0.000000 0.108696 +vt 0.005952 0.130435 +vt 0.113095 0.293478 +vt 0.095238 0.282609 +vt 0.101190 0.250000 +vt 0.149477 0.292260 +vt 0.154684 0.315217 +vt 0.119125 0.315217 +vt 0.154685 0.250000 +vt 0.149477 0.272958 +vt 0.136905 0.282467 +vt 0.851190 0.434783 +vt 0.827381 0.478261 +vt 0.827381 0.434783 +vt 0.851190 0.478261 +vt 0.875000 0.478261 +vt 0.869048 0.510870 +vt 0.898810 0.434783 +vt 0.898810 0.478261 +vt 0.875000 0.434783 +vt 0.857143 0.402174 +vt 0.267857 0.163043 +vt 0.255952 0.163043 +vt 0.255952 0.076087 +vt 0.285714 0.108696 +vt 0.047619 0.217391 +vt 0.113095 0.250000 +vt 0.119048 0.260870 +vt 0.119048 0.282609 +vt 0.101190 0.293478 +vt 0.095238 0.260870 +vt 0.149477 0.338175 +vt 0.136905 0.347684 +vt 0.124333 0.338175 +vt 0.124333 0.292260 +vt 0.136905 0.282750 +vt 0.124333 0.272958 +vt 0.119125 0.250000 +vt 0.124333 0.227043 +vt 0.136905 0.217533 +vt 0.149477 0.227043 +vt 0.857143 0.510870 +vt 0.851190 0.521739 +vt 0.875000 0.521739 +vt 0.869048 0.402174 +vt 0.875000 0.391304 +vt 0.851190 0.391304 +vt -0.000000 0.315217 +vt 0.095238 0.326087 +vt 0.000000 0.326087 +vt -0.000000 0.260870 +vt 0.000000 0.282609 +vt 0.000000 0.228261 +vt 0.095238 0.250000 +vt 0.000000 0.250000 +vt 0.000000 0.217391 +vt 0.095238 0.228261 +vt -0.000000 0.293478 +vt 0.095238 0.315217 +vt 0.095238 0.347826 +vt 0.000000 0.347826 +vt 0.095238 0.293478 +vt 0.339286 0.369565 +vt 0.154762 0.391304 +vt 0.154762 0.369565 +vt 0.339286 0.326087 +vt 0.154762 0.347826 +vt 0.154762 0.326087 +vt 0.339286 0.282609 +vt 0.154762 0.260870 +vt 0.339286 0.260870 +vt 0.339286 0.239130 +vt 0.154762 0.217391 +vt 0.339286 0.217391 +vt 0.339286 0.347826 +vt 0.339286 0.304348 +vt 0.154762 0.304348 +vt 0.154762 0.282609 +vt 0.154762 0.239130 +vt 0.095238 0.217391 +vt 0.339286 0.391304 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0000 1.0000 +vn 0.7071 -0.7071 -0.0000 +vn 0.0000 1.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -0.7071 -0.7071 -0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.7071 0.7071 0.0000 +vn -0.9239 0.3827 0.0000 +vn -0.3827 0.9239 0.0000 +vn 0.3827 -0.9239 0.0000 +vn -0.3827 -0.9239 0.0000 +vn 0.9239 0.3827 0.0000 +vn 0.9239 -0.3827 0.0000 +vn 0.3827 0.9239 0.0000 +vn -0.9239 -0.3827 0.0000 +s off +f 41/77/32 45/78/32 47/79/32 +f 56/80/33 62/81/33 54/82/33 +f 45/83/34 49/84/34 46/85/34 +f 44/86/35 53/87/35 41/77/35 +f 43/88/36 54/82/36 44/86/36 +f 46/85/37 50/89/37 47/90/37 +f 47/91/38 55/92/38 48/93/38 +f 48/93/39 56/94/39 43/88/39 +f 42/95/40 51/96/40 45/83/40 +f 41/77/41 52/97/41 42/95/41 +f 50/98/33 57/99/33 55/100/33 +f 54/82/33 61/101/33 53/87/33 +f 55/100/33 58/102/33 56/80/33 +f 53/87/33 64/103/33 52/104/33 +f 52/104/33 63/105/33 51/106/33 +f 51/106/33 59/107/33 49/108/33 +f 49/108/33 60/109/33 50/98/33 +f 71/110/33 69/111/33 66/112/33 +f 76/113/32 75/114/32 79/115/32 +f 87/116/33 88/117/33 82/118/33 +f 90/119/39 91/120/39 89/121/39 +f 92/122/32 96/123/32 97/124/32 +f 96/123/40 93/125/40 95/126/40 +f 94/127/33 90/119/33 99/128/33 +f 92/122/35 94/127/35 96/123/35 +f 47/79/32 48/129/32 43/130/32 +f 43/130/32 44/86/32 41/77/32 +f 41/77/32 42/131/32 45/78/32 +f 45/78/32 46/132/32 47/79/32 +f 47/79/32 43/130/32 41/77/32 +f 56/80/33 58/102/33 62/81/33 +f 45/83/34 51/96/34 49/84/34 +f 44/86/35 54/82/35 53/87/35 +f 43/88/36 56/94/36 54/82/36 +f 46/85/37 49/84/37 50/89/37 +f 47/91/38 50/133/38 55/92/38 +f 48/93/39 55/92/39 56/94/39 +f 42/95/40 52/97/40 51/96/40 +f 41/77/41 53/87/41 52/97/41 +f 50/98/33 60/109/33 57/99/33 +f 54/82/33 62/81/33 61/101/33 +f 55/100/33 57/99/33 58/102/33 +f 53/87/33 61/101/33 64/103/33 +f 52/104/33 64/103/33 63/105/33 +f 51/106/33 63/105/33 59/107/33 +f 49/108/33 59/107/33 60/109/33 +f 66/112/33 65/134/33 68/135/33 +f 68/135/33 67/136/33 71/110/33 +f 71/110/33 72/137/33 69/111/33 +f 69/111/33 70/138/33 66/112/33 +f 66/112/33 68/135/33 71/110/33 +f 75/114/32 74/139/32 73/140/32 +f 73/140/32 80/141/32 75/114/32 +f 80/141/32 79/115/32 75/114/32 +f 79/115/32 78/142/32 77/143/32 +f 77/143/32 76/113/32 79/115/32 +f 82/118/33 81/144/33 83/145/33 +f 83/145/33 84/146/33 82/118/33 +f 84/146/33 85/147/33 82/118/33 +f 85/147/33 86/148/33 82/118/33 +f 86/148/33 87/116/33 82/118/33 +f 90/119/39 92/122/39 91/120/39 +f 98/149/32 91/150/32 92/122/32 +f 96/123/32 95/151/32 97/124/32 +f 97/124/32 98/149/32 92/122/32 +f 96/123/40 94/127/40 93/125/40 +f 100/152/33 93/153/33 94/127/33 +f 90/119/33 89/154/33 99/128/33 +f 99/128/33 100/152/33 94/127/33 +f 92/122/35 90/119/35 94/127/35 +s 1 +f 63/155/42 67/156/43 59/157/43 +f 62/158/44 69/111/45 61/159/45 +f 57/160/46 66/161/47 58/162/47 +f 58/162/47 70/138/44 62/158/44 +f 60/163/48 65/164/46 57/160/46 +f 64/165/49 71/166/42 63/155/42 +f 59/157/43 68/167/48 60/168/48 +f 61/159/45 72/169/49 64/165/49 +f 76/170/38 85/171/37 84/172/38 +f 74/173/36 83/174/39 81/175/36 +f 80/176/41 87/177/40 79/178/40 +f 78/179/34 85/180/37 77/181/37 +f 75/182/39 84/172/38 83/174/39 +f 73/183/35 81/175/36 82/184/35 +f 73/183/35 88/185/41 80/176/41 +f 79/178/40 86/186/34 78/179/34 +f 63/155/42 71/166/42 67/156/43 +f 62/158/44 70/138/44 69/111/45 +f 57/160/46 65/164/46 66/161/47 +f 58/162/47 66/161/47 70/138/44 +f 60/163/48 68/187/48 65/164/46 +f 64/165/49 72/169/49 71/166/42 +f 59/157/43 67/156/43 68/167/48 +f 61/159/45 69/111/45 72/169/49 +f 76/170/38 77/188/37 85/171/37 +f 74/173/36 75/182/39 83/174/39 +f 80/176/41 88/185/41 87/177/40 +f 78/179/34 86/186/34 85/180/37 +f 75/182/39 76/170/38 84/172/38 +f 73/183/35 74/173/36 81/175/36 +f 73/183/35 82/184/35 88/185/41 +f 79/178/40 87/177/40 86/186/34 +o Hammer +v 0.000000 1.250000 -2.625000 +v -0.044194 1.231694 -2.625000 +v -0.062500 1.187500 -2.625000 +v -0.044194 1.143306 -2.625000 +v 0.000000 1.125000 -2.625000 +v 0.044194 1.143306 -2.625000 +v 0.062500 1.187500 -2.625000 +v 0.044194 1.231694 -2.625000 +v -0.044194 1.231694 -2.875000 +v 0.000000 1.250000 -2.875000 +v -0.062500 1.187500 -2.875000 +v -0.044194 1.143306 -2.875000 +v 0.000000 1.125000 -2.875000 +v 0.044194 1.143306 -2.875000 +v 0.062500 1.187500 -2.875000 +v 0.044194 1.231694 -2.875000 +v -0.062500 0.750000 -2.875000 +v 0.062500 0.750000 -2.875000 +v -0.062500 1.375000 -2.875000 +v 0.062500 1.375000 -2.875000 +v -0.062500 1.500000 -3.000000 +v 0.062500 1.500000 -3.000000 +v -0.062500 1.375000 -2.937500 +v 0.062500 1.375000 -2.937500 +v -0.062500 1.250000 -2.937500 +v 0.062500 1.250000 -2.937500 +v -0.062500 1.125000 -3.062500 +v 0.062500 1.125000 -3.062500 +v -0.062500 1.062500 -3.187500 +v 0.062500 1.062500 -3.187500 +v -0.062500 0.937500 -3.312500 +v 0.062500 0.937500 -3.312500 +v -0.062500 0.812500 -3.375000 +v 0.062500 0.812500 -3.375000 +v -0.062500 0.750000 -3.375000 +v 0.062500 0.750000 -3.375000 +vt 0.928571 0.478234 +vt 0.934539 0.489131 +vt 0.928571 0.500027 +vt 0.845238 0.630435 +vt 0.857143 0.608696 +vt 0.839286 0.543478 +vt 0.839286 0.543478 +vt 0.845238 0.630435 +vt 0.839286 0.652174 +vt 0.924352 0.496836 +vt 0.922604 0.489131 +vt 0.924352 0.481426 +vt 0.932791 0.481426 +vt 0.932791 0.496836 +vt 0.839286 0.652174 +vt 0.845238 0.673913 +vt 0.845238 0.652174 +vt 0.886905 0.554348 +vt 0.886905 0.543478 +vt 0.880952 0.576087 +vt 0.869048 0.597826 +vt 0.886905 0.543478 +vt 0.880952 0.576087 +vt 0.886905 0.554348 +vt 0.869048 0.597826 +vt 0.857143 0.608696 +vt 0.845238 0.652174 +vt 0.845238 0.673913 +vt 0.827381 0.673913 +vt 0.827381 0.652174 +vt 0.898810 0.532609 +vt 0.922619 0.521739 +vt 0.922619 0.532609 +vt 0.898810 0.510870 +vt 0.898810 0.521739 +vt 0.898810 0.489130 +vt 0.922619 0.500000 +vt 0.898810 0.500000 +vt 0.898810 0.565217 +vt 0.922619 0.554348 +vt 0.922619 0.565217 +vt 0.922619 0.543478 +vt 0.898810 0.543478 +vt 0.922619 0.510870 +vt 0.898810 0.478261 +vt 0.922619 0.489130 +vt 0.898810 0.554348 +vt 0.827381 0.543478 +vt 0.886905 0.684783 +vt 0.898810 0.663043 +vt 0.898810 0.684783 +vt 0.886905 0.663043 +vt 0.898810 0.641304 +vt 0.886905 0.641304 +vt 0.898810 0.619565 +vt 0.886905 0.619565 +vt 0.898810 0.597826 +vt 0.886905 0.597826 +vt 0.898810 0.576087 +vt 0.886905 0.576087 +vt 0.898810 0.554348 +vt 0.898810 0.543478 +vt 0.839286 0.673913 +vt 0.922619 0.478261 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.3827 0.9239 +vn 0.0000 0.7071 0.7071 +vn -0.7071 0.7071 -0.0000 +vn 0.0000 1.0000 -0.0000 +vn 0.7071 0.7071 -0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.0000 -0.4472 -0.8944 +vn 0.0000 -0.2298 -0.9732 +vn 0.0000 0.3827 -0.9239 +vn 0.0000 0.8112 -0.5847 +vn 0.0000 0.5847 -0.8112 +vn 0.0000 0.2298 -0.9732 +vn 0.0000 0.0000 -1.0000 +s off +f 105/189/50 107/190/50 101/191/50 +f 125/192/51 127/193/51 117/194/51 +f 118/195/52 126/196/52 120/197/52 +f 101/191/50 102/198/50 103/199/50 +f 103/199/50 104/200/50 105/189/50 +f 105/189/50 106/201/50 107/190/50 +f 107/190/50 108/202/50 101/191/50 +f 101/191/50 103/199/50 105/189/50 +f 119/203/51 121/204/51 123/205/51 +f 119/203/51 123/205/51 125/192/51 +f 133/206/51 135/207/51 131/208/51 +f 135/207/51 117/194/51 131/208/51 +f 129/209/51 131/208/51 117/194/51 +f 127/193/51 129/209/51 117/194/51 +f 117/194/51 119/203/51 125/192/51 +f 118/195/52 136/210/52 132/211/52 +f 136/210/52 134/212/52 132/211/52 +f 132/211/52 130/213/52 118/195/52 +f 130/213/52 128/214/52 118/195/52 +f 124/215/52 122/216/52 120/197/52 +f 128/214/52 126/196/52 118/195/52 +f 126/196/52 124/215/52 120/197/52 +s 1 +f 120/197/53 121/217/54 119/218/53 +f 102/219/55 110/220/56 109/221/55 +f 108/222/57 110/220/56 101/223/56 +f 106/224/58 115/225/52 107/226/52 +f 105/227/59 112/228/60 113/229/59 +f 102/219/55 111/230/51 103/231/51 +f 107/226/52 116/232/57 108/222/57 +f 105/233/59 114/234/58 106/224/58 +f 103/231/51 112/228/60 104/235/60 +f 118/195/50 119/218/53 117/236/50 +f 122/237/61 123/238/62 121/239/61 +f 124/240/62 125/241/63 123/238/62 +f 126/242/63 127/243/64 125/241/63 +f 128/244/64 129/245/64 127/243/64 +f 130/246/64 131/247/65 129/245/64 +f 132/248/65 133/249/66 131/247/65 +f 134/212/66 135/250/67 133/249/66 +f 120/197/53 122/251/54 121/217/54 +f 102/219/55 101/223/56 110/220/56 +f 108/222/57 116/232/57 110/220/56 +f 106/224/58 114/234/58 115/225/52 +f 105/227/59 104/235/60 112/228/60 +f 102/219/55 109/221/55 111/230/51 +f 107/226/52 115/225/52 116/232/57 +f 105/233/59 113/252/59 114/234/58 +f 103/231/51 111/230/51 112/228/60 +f 118/195/50 120/197/53 119/218/53 +f 122/237/61 124/240/62 123/238/62 +f 124/240/62 126/242/63 125/241/63 +f 126/242/63 128/244/64 127/243/64 +f 128/244/64 130/246/64 129/245/64 +f 130/246/64 132/248/65 131/247/65 +f 132/248/65 134/212/66 133/249/66 +f 134/212/66 136/210/67 135/250/67 +o Lever +v -0.125000 0.198188 -2.345635 +v 0.125000 0.198188 -2.345635 +v -0.125000 -0.036735 -2.260129 +v 0.125000 -0.036735 -2.260129 +v -0.125000 -0.426690 -2.783309 +v 0.125000 -0.426690 -2.783309 +v -0.125000 0.176812 -2.404365 +v 0.125000 0.176812 -2.404365 +v -0.125000 -0.058111 -2.318860 +v 0.125000 -0.058111 -2.318860 +v -0.125000 -0.485421 -2.761932 +v 0.125000 -0.485421 -2.761932 +v 0.125000 -0.357163 -2.409548 +v -0.125000 -0.357163 -2.409548 +v 0.125000 -0.298432 -2.430924 +v -0.125000 -0.298432 -2.430924 +v -0.125000 -0.437486 -3.178446 +v 0.125000 -0.437486 -3.178446 +v -0.125000 -0.496217 -3.157070 +v 0.125000 -0.496217 -3.157070 +v -0.125000 -0.736754 -4.000677 +v 0.125000 -0.736754 -4.000677 +v -0.125000 -0.795484 -3.979300 +v 0.125000 -0.795484 -3.979300 +v -0.125000 -0.720741 -4.139421 +v 0.125000 -0.720741 -4.139421 +v -0.125000 -0.699365 -4.080690 +v 0.125000 -0.699365 -4.080690 +v -0.125000 -0.485818 -4.224926 +v 0.125000 -0.485818 -4.224926 +v -0.125000 -0.464442 -4.166195 +v 0.125000 -0.464442 -4.166195 +v -0.125000 -0.325638 -4.150311 +v 0.125000 -0.325638 -4.150311 +v -0.125000 -0.384369 -4.128934 +v 0.125000 -0.384369 -4.128934 +v -0.125000 -0.026370 -3.328080 +v 0.125000 -0.026370 -3.328080 +v -0.125000 -0.085101 -3.306704 +v 0.125000 -0.085101 -3.306704 +v -0.125000 -0.101079 -3.167866 +v 0.125000 -0.101079 -3.167866 +v -0.125000 -0.122456 -3.226596 +v 0.125000 -0.122456 -3.226596 +v -0.125000 -0.336003 -3.082361 +v 0.125000 -0.336003 -3.082361 +v -0.125000 -0.357379 -3.141091 +v 0.125000 -0.357379 -3.141091 +v -0.125000 -0.277272 -3.103737 +v 0.125000 -0.277272 -3.103737 +v -0.125000 -0.336003 -3.082361 +v 0.125000 -0.336003 -3.082361 +vt 0.827381 0.804348 +vt 0.851190 0.793478 +vt 0.851190 0.804348 +vt 0.851190 0.847826 +vt 0.827381 0.858696 +vt 0.827381 0.847826 +vt 0.886905 0.804348 +vt 0.922619 0.793478 +vt 0.922619 0.804348 +vt 0.886905 0.847826 +vt 0.922619 0.858696 +vt 0.886905 0.858696 +vt 0.880952 0.858696 +vt 0.857143 0.858696 +vt 0.880952 0.793478 +vt 0.857143 0.793478 +vt 0.958333 0.728261 +vt 0.970238 0.739130 +vt 0.952381 0.739130 +vt 0.970238 0.782609 +vt 0.958333 0.793478 +vt 0.952381 0.782609 +vt 0.952381 0.728261 +vt 0.869048 0.739130 +vt 0.869048 0.728261 +vt 0.952381 0.793478 +vt 0.869048 0.782609 +vt 0.863095 0.793478 +vt 0.851190 0.782609 +vt 0.851190 0.739130 +vt 0.863095 0.728261 +vt 0.827381 0.793478 +vt 0.827381 0.782609 +vt 0.827381 0.728261 +vt 0.851190 0.728261 +vt 0.970238 0.782609 +vt 0.958333 0.793478 +vt 0.952381 0.782609 +vt 0.970238 0.739130 +vt 0.958333 0.728261 +vt 0.964286 0.728261 +vt 0.952381 0.739130 +vt 0.869048 0.728261 +vt 0.952381 0.728261 +vt 0.869048 0.793478 +vt 0.869048 0.782609 +vt 0.869048 0.739130 +vt 0.857143 0.728261 +vt 0.863095 0.728261 +vt 0.857143 0.793478 +vt 0.851190 0.782609 +vt 0.851190 0.728261 +vt 0.827381 0.739130 +vt 0.827381 0.728261 +vt 0.851190 0.793478 +vt 0.827381 0.782609 +vt 0.958333 0.804348 +vt 0.958333 0.847826 +vt 0.958333 0.858696 +vt 0.827381 0.793478 +vt 0.851190 0.858696 +vt 0.886905 0.793478 +vt 0.922619 0.847826 +vt 0.964286 0.728261 +vt 0.964286 0.793478 +vt 0.869048 0.793478 +vt 0.857143 0.793478 +vt 0.857143 0.728261 +vt 0.851190 0.793478 +vt 0.827381 0.739130 +vt 0.964286 0.793478 +vt 0.952381 0.793478 +vt 0.851190 0.739130 +vt 0.863095 0.793478 +vt 0.827381 0.793478 +vt 0.958333 0.793478 +vt 0.922619 0.902174 +vt 0.886905 0.902174 +vt 0.851190 0.902174 +vt 0.880952 0.902174 +vt 0.857143 0.902174 +vt 0.952381 0.684783 +vt 0.958333 0.728261 +vt 0.869048 0.684783 +vt 0.863095 0.728261 +vt 0.839286 0.684783 +vt 0.863095 0.684783 +vt 0.958333 0.728261 +vt 0.952381 0.684783 +vt 0.958333 0.684783 +vt 0.869048 0.684783 +vt 0.863095 0.684783 +vt 0.863095 0.728261 +vt 0.839286 0.684783 +vt 0.958333 0.902174 +vt 0.827381 0.902174 +vt 0.958333 0.684783 +vt 0.839286 0.728261 +vt 0.839286 0.728261 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.3420 0.9397 +vn 0.0000 -0.0436 0.9990 +vn 0.0000 -0.7373 0.6756 +vn 0.0000 -0.9990 -0.0436 +vn 0.0000 0.7373 -0.6756 +vn 0.0000 0.9990 0.0436 +vn 0.0000 0.0436 -0.9990 +vn 0.0000 -0.3420 -0.9397 +vn 0.0000 -0.9990 -0.0438 +vn 0.0000 0.9990 0.0440 +vn 0.0000 -0.6754 -0.7374 +vn 0.0000 0.0434 -0.9991 +vn 0.0000 0.6753 0.7375 +vn 0.0000 -0.0432 0.9991 +vn 0.0000 -0.7370 0.6759 +vn 0.0000 0.7371 -0.6757 +vn 0.0000 -0.6756 -0.7373 +vn 0.0000 0.6756 0.7373 +vn 0.0000 0.9063 0.4226 +vn 0.0000 -0.9063 -0.4226 +s off +f 137/253/68 145/254/68 139/255/68 +f 140/256/69 144/257/69 138/258/69 +f 150/259/68 141/260/68 147/261/68 +f 149/262/69 142/263/69 151/264/69 +f 140/256/69 151/265/69 146/266/69 +f 152/267/68 139/255/68 145/268/68 +f 154/269/69 182/270/69 156/271/69 +f 181/272/68 153/273/68 155/274/68 +f 154/275/69 160/276/69 158/277/69 +f 153/278/68 159/279/68 155/274/68 +f 157/280/68 161/281/68 159/279/68 +f 162/282/69 158/283/69 160/276/69 +f 161/281/68 167/284/68 165/285/68 +f 162/282/69 168/286/69 164/287/69 +f 165/288/68 171/289/68 169/290/68 +f 166/291/69 172/292/69 168/293/69 +f 170/294/69 176/295/69 172/296/69 +f 169/290/68 175/297/68 173/298/68 +f 174/299/69 180/300/69 176/301/69 +f 173/298/68 179/302/68 177/303/68 +f 180/304/69 182/305/69 184/306/69 +f 179/307/68 181/308/68 177/303/68 +f 141/260/68 187/309/68 147/261/68 +f 142/263/69 188/310/69 186/311/69 +f 137/253/68 143/312/68 145/254/68 +f 140/256/69 146/313/69 144/257/69 +f 150/259/68 152/314/68 141/260/68 +f 149/262/69 148/315/69 142/263/69 +f 140/256/69 149/262/69 151/265/69 +f 152/267/68 150/259/68 139/255/68 +f 154/269/69 184/316/69 182/270/69 +f 181/272/68 183/317/68 153/273/68 +f 154/275/69 156/271/69 160/276/69 +f 153/278/68 157/318/68 159/279/68 +f 157/280/68 163/319/68 161/281/68 +f 162/282/69 164/320/69 158/283/69 +f 161/281/68 163/321/68 167/284/68 +f 162/282/69 166/322/69 168/286/69 +f 165/288/68 167/323/68 171/289/68 +f 166/291/69 170/294/69 172/292/69 +f 170/294/69 174/299/69 176/295/69 +f 169/290/68 171/324/68 175/297/68 +f 174/299/69 178/325/69 180/300/69 +f 173/298/68 175/326/68 179/302/68 +f 180/304/69 178/325/69 182/305/69 +f 179/307/68 183/327/68 181/308/68 +f 141/260/68 185/328/68 187/309/68 +f 142/263/69 148/315/69 188/310/69 +s 1 +f 137/253/70 140/256/71 138/258/70 +f 150/259/72 148/315/73 149/262/72 +f 151/264/74 141/329/75 152/330/74 +f 145/331/76 144/257/77 146/313/76 +f 139/255/71 149/262/72 140/256/71 +f 146/266/76 152/332/74 145/333/76 +f 182/270/71 155/274/72 156/271/72 +f 153/334/74 184/335/76 154/275/74 +f 155/274/72 160/276/78 156/271/72 +f 154/275/74 157/336/79 153/334/74 +f 159/279/78 162/282/80 160/276/78 +f 161/281/80 166/322/81 162/282/80 +f 164/337/82 157/336/79 158/277/79 +f 164/337/82 167/338/83 163/339/82 +f 168/340/83 171/341/84 167/342/83 +f 165/288/81 170/294/85 166/291/81 +f 169/290/85 174/299/75 170/294/85 +f 172/296/84 175/343/73 171/341/84 +f 176/295/73 179/344/86 175/343/73 +f 173/298/75 178/325/87 174/299/75 +f 180/345/86 183/346/76 179/344/86 +f 177/303/87 182/305/71 178/325/87 +f 142/263/75 185/347/88 141/329/75 +f 147/261/73 188/310/89 148/315/73 +f 137/253/70 139/255/71 140/256/71 +f 150/259/72 147/261/73 148/315/73 +f 151/264/74 142/263/75 141/329/75 +f 145/331/76 143/348/77 144/257/77 +f 139/255/71 150/259/72 149/262/72 +f 146/266/76 151/265/74 152/332/74 +f 182/270/71 181/272/71 155/274/72 +f 153/334/74 183/349/76 184/335/76 +f 155/274/72 159/279/78 160/276/78 +f 154/275/74 158/277/79 157/336/79 +f 159/279/78 161/281/80 162/282/80 +f 161/281/80 165/285/81 166/322/81 +f 164/337/82 163/339/82 157/336/79 +f 164/337/82 168/350/83 167/338/83 +f 168/340/83 172/296/84 171/341/84 +f 165/288/81 169/290/85 170/294/85 +f 169/290/85 173/298/75 174/299/75 +f 172/296/84 176/295/73 175/343/73 +f 176/295/73 180/345/86 179/344/86 +f 173/298/75 177/303/87 178/325/87 +f 180/345/86 184/351/76 183/346/76 +f 177/303/87 181/308/71 182/305/71 +f 142/263/75 186/311/88 185/347/88 +f 147/261/73 187/309/89 188/310/89 +o Gun +v -0.187500 0.937500 6.000000 +v -0.062500 0.812500 6.000000 +v 0.062500 0.812500 6.000000 +v 0.187500 0.937500 6.000000 +v -0.062500 1.187500 6.000000 +v -0.187500 1.062500 6.000000 +v 0.187500 1.062500 6.000000 +v 0.062500 1.187500 6.000000 +v 0.062500 1.187500 -0.625000 +v 0.187500 1.062500 -0.625000 +v -0.187500 1.062500 -0.625000 +v -0.062500 1.187500 -0.625000 +v 0.187500 0.937500 -0.625000 +v 0.062500 0.812500 -0.625000 +v -0.062500 0.812500 -0.625000 +v -0.187500 0.937500 -0.625000 +v 0.000000 0.875000 -0.625000 +v -0.132582 0.820082 -0.625000 +v -0.187500 0.687500 -0.625000 +v -0.132582 0.554917 -0.625000 +v 0.000000 0.500000 -0.625000 +v 0.132582 0.554917 -0.625000 +v 0.187500 0.687500 -0.625000 +v 0.132582 0.820082 -0.625000 +v 0.000000 0.875000 5.937500 +v -0.132582 0.820082 5.937500 +v -0.187500 0.687500 5.937500 +v -0.132582 0.554917 5.937500 +v 0.000000 0.500000 5.937500 +v 0.132582 0.554917 5.937500 +v 0.187500 0.687500 5.937500 +v 0.132582 0.820082 5.937500 v -0.250000 0.312500 -1.000000 v -0.125000 0.187500 -1.000000 v 0.125000 0.187500 -1.000000 @@ -155,42 +1071,6 @@ v -0.062500 1.250000 -2.625000 v 0.062500 1.125000 -2.687500 v 0.062500 1.125000 -2.625000 v -0.062500 1.125000 -2.687500 -v 0.000000 1.250000 -2.625000 -v -0.044194 1.231694 -2.625000 -v -0.062500 1.187500 -2.625000 -v -0.044194 1.143306 -2.625000 -v 0.000000 1.125000 -2.625000 -v 0.044194 1.143306 -2.625000 -v 0.062500 1.187500 -2.625000 -v 0.044194 1.231694 -2.625000 -v -0.044194 1.231694 -2.875000 -v 0.000000 1.250000 -2.875000 -v -0.062500 1.187500 -2.875000 -v -0.044194 1.143306 -2.875000 -v 0.000000 1.125000 -2.875000 -v 0.044194 1.143306 -2.875000 -v 0.062500 1.187500 -2.875000 -v 0.044194 1.231694 -2.875000 -v -0.062500 0.750000 -2.875000 -v 0.062500 0.750000 -2.875000 -v -0.062500 1.375000 -2.875000 -v 0.062500 1.375000 -2.875000 -v -0.062500 1.500000 -3.000000 -v 0.062500 1.500000 -3.000000 -v -0.062500 1.375000 -2.937500 -v 0.062500 1.375000 -2.937500 -v -0.062500 1.250000 -2.937500 -v 0.062500 1.250000 -2.937500 -v -0.062500 1.125000 -3.062500 -v 0.062500 1.125000 -3.062500 -v -0.062500 1.062500 -3.187500 -v 0.062500 1.062500 -3.187500 -v -0.062500 0.937500 -3.312500 -v 0.062500 0.937500 -3.312500 -v -0.062500 0.812500 -3.375000 -v 0.062500 0.812500 -3.375000 -v -0.062500 0.750000 -3.375000 -v 0.062500 0.750000 -3.375000 v -0.062500 0.187500 -2.750000 v 0.062500 0.187500 -2.750000 v -0.062500 0.187500 -2.812500 @@ -205,58 +1085,6 @@ v -0.062500 -0.063500 -2.875000 v 0.062500 -0.063500 -2.875000 v -0.062500 -0.188500 -2.750000 v 0.062500 -0.188500 -2.750000 -v -0.125000 0.198188 -2.345635 -v 0.125000 0.198188 -2.345635 -v -0.125000 -0.036735 -2.260129 -v 0.125000 -0.036735 -2.260129 -v -0.125000 -0.426690 -2.783309 -v 0.125000 -0.426690 -2.783309 -v -0.125000 0.176812 -2.404365 -v 0.125000 0.176812 -2.404365 -v -0.125000 -0.058111 -2.318860 -v 0.125000 -0.058111 -2.318860 -v -0.125000 -0.485421 -2.761932 -v 0.125000 -0.485421 -2.761932 -v 0.125000 -0.357163 -2.409548 -v -0.125000 -0.357163 -2.409548 -v 0.125000 -0.298432 -2.430924 -v -0.125000 -0.298432 -2.430924 -v -0.125000 -0.437486 -3.178446 -v 0.125000 -0.437486 -3.178446 -v -0.125000 -0.496217 -3.157070 -v 0.125000 -0.496217 -3.157070 -v -0.125000 -0.736754 -4.000677 -v 0.125000 -0.736754 -4.000677 -v -0.125000 -0.795484 -3.979300 -v 0.125000 -0.795484 -3.979300 -v -0.125000 -0.720741 -4.139421 -v 0.125000 -0.720741 -4.139421 -v -0.125000 -0.699365 -4.080690 -v 0.125000 -0.699365 -4.080690 -v -0.125000 -0.485818 -4.224926 -v 0.125000 -0.485818 -4.224926 -v -0.125000 -0.464442 -4.166195 -v 0.125000 -0.464442 -4.166195 -v -0.125000 -0.325638 -4.150311 -v 0.125000 -0.325638 -4.150311 -v -0.125000 -0.384369 -4.128934 -v 0.125000 -0.384369 -4.128934 -v -0.125000 -0.026370 -3.328080 -v 0.125000 -0.026370 -3.328080 -v -0.125000 -0.085101 -3.306704 -v 0.125000 -0.085101 -3.306704 -v -0.125000 -0.101079 -3.167866 -v 0.125000 -0.101079 -3.167866 -v -0.125000 -0.122456 -3.226596 -v 0.125000 -0.122456 -3.226596 -v -0.125000 -0.336003 -3.082361 -v 0.125000 -0.336003 -3.082361 -v -0.125000 -0.357379 -3.141091 -v 0.125000 -0.357379 -3.141091 -v -0.125000 -0.277272 -3.103737 -v 0.125000 -0.277272 -3.103737 -v -0.125000 -0.336003 -3.082361 -v 0.125000 -0.336003 -3.082361 v -0.125000 1.250000 -0.250000 v 0.125000 1.250000 -0.250000 v -0.125000 1.250000 -0.125000 @@ -281,58 +1109,6 @@ v -0.187500 1.343750 -0.187500 v 0.187500 1.343750 -0.187500 v -0.187500 1.316291 -0.253791 v 0.187500 1.316291 -0.253791 -v -0.125000 1.250000 -0.218750 -v 0.125000 1.250000 -0.218750 -v -0.125000 1.250000 -0.156250 -v 0.125000 1.250000 -0.156250 -v -0.125000 2.000000 -0.218750 -v 0.125000 2.000000 -0.218750 -v -0.125000 2.000000 -0.156250 -v 0.125000 2.000000 -0.156250 -v -0.062500 1.875000 -0.218750 -v 0.062500 1.875000 -0.218750 -v -0.062500 1.875000 -0.156250 -v 0.062500 1.875000 -0.156250 -v -0.062500 1.250000 -0.218750 -v 0.062500 1.250000 -0.218750 -v -0.062500 1.250000 -0.156250 -v 0.062500 1.250000 -0.156250 -v -0.125000 1.062499 7.937500 -v -0.125000 1.312499 7.937500 -v -0.125000 1.062499 7.687500 -v -0.125000 1.312499 7.687500 -v 0.125000 1.062499 7.937500 -v 0.125000 1.312499 7.937500 -v 0.125000 1.062499 7.687500 -v 0.125000 1.312499 7.687500 -v 0.062500 1.124999 7.687500 -v -0.062500 1.124999 7.687500 -v -0.062500 1.124999 7.937500 -v 0.062500 1.124999 7.937500 -v -0.099437 0.786939 5.875000 -v 0.000000 0.828127 5.875000 -v -0.140625 0.687502 5.875000 -v -0.099437 0.588065 5.875000 -v 0.000000 0.546877 5.875000 -v 0.099437 0.588065 5.875000 -v 0.140625 0.687502 5.875000 -v 0.099437 0.786939 5.875000 -v -0.099437 0.786939 6.375000 -v 0.000000 0.828127 6.375000 -v -0.140625 0.687502 6.375000 -v -0.099437 0.588065 6.375000 -v 0.000000 0.546877 6.375000 -v 0.099437 0.588065 6.375000 -v 0.140625 0.687502 6.375000 -v 0.099437 0.786939 6.375000 -v -0.049718 0.737221 6.625000 -v 0.000000 0.757815 6.625000 -v -0.070312 0.687502 6.625000 -v -0.049718 0.637784 6.625000 -v 0.000000 0.617190 6.625000 -v 0.049718 0.637784 6.625000 -v 0.070312 0.687502 6.625000 -v 0.049718 0.737221 6.625000 vt 0.964286 0.130435 vt 0.333333 0.108696 vt 0.964286 0.108696 @@ -344,57 +1120,15 @@ vt 0.964286 0.163043 vt 0.964286 0.076087 vt 0.333333 0.054348 vt 0.964286 0.054348 -vt 0.238095 0.108696 -vt 0.267857 0.076087 -vt 0.285714 0.130435 vt 0.333333 0.076087 vt 0.333333 0.217391 vt 0.333333 0.184783 vt 0.964286 0.021739 vt 0.333333 0.000000 vt 0.964286 0.000000 -vt 0.029762 0.163043 -vt 0.041667 0.130435 -vt 0.047619 0.130435 -vt 0.238095 0.054348 -vt 0.047619 0.021739 -vt 0.238095 0.021739 -vt 0.238095 0.130435 -vt 0.047619 0.108696 -vt 0.238095 0.163043 -vt 0.047619 0.000000 -vt 0.238095 -0.000000 -vt 0.238095 0.217391 -vt 0.047619 0.184783 -vt 0.238095 0.184783 -vt 0.047619 0.163043 -vt 0.238095 0.076087 -vt 0.047619 0.054348 -vt 0.047619 0.076087 -vt 0.000000 0.130435 -vt 0.017857 0.152174 -vt 0.017857 0.163043 -vt 0.041667 0.108696 -vt 0.029762 0.152174 -vt 0.029762 0.086957 -vt 0.029762 0.076087 -vt 0.017857 0.086957 -vt 0.017857 0.076087 -vt 0.005952 0.108696 -vt 0.000000 0.108696 -vt 0.005952 0.130435 -vt 0.113095 0.293478 -vt 0.095238 0.282609 -vt 0.101190 0.250000 vt 0.369715 0.272958 vt 0.357143 0.282467 vt 0.357143 0.217533 -vt 0.149477 0.292260 -vt 0.154684 0.315217 -vt 0.119125 0.315217 -vt 0.154685 0.250000 -vt 0.149477 0.272958 -vt 0.136905 0.282467 vt 0.238095 0.478261 vt 0.267857 0.521739 vt 0.208333 0.521739 @@ -425,80 +1159,12 @@ vt 0.071429 0.630435 vt 0.059524 0.641304 vt 0.059524 0.630435 vt 0.053571 0.641304 -vt 0.928571 0.478234 -vt 0.934539 0.489131 -vt 0.928571 0.500027 -vt 0.845238 0.630435 -vt 0.857143 0.608696 -vt 0.839286 0.543478 -vt 0.839286 0.543478 -vt 0.845238 0.630435 -vt 0.839286 0.652174 vt 0.970238 0.413043 vt 0.976190 0.413043 vt 0.976190 0.434783 vt 0.952381 0.413043 vt 0.958333 0.413043 vt 0.958333 0.434783 -vt 0.827381 0.804348 -vt 0.851190 0.793478 -vt 0.851190 0.804348 -vt 0.851190 0.847826 -vt 0.827381 0.858696 -vt 0.827381 0.847826 -vt 0.886905 0.804348 -vt 0.922619 0.793478 -vt 0.922619 0.804348 -vt 0.886905 0.847826 -vt 0.922619 0.858696 -vt 0.886905 0.858696 -vt 0.880952 0.858696 -vt 0.857143 0.858696 -vt 0.880952 0.793478 -vt 0.857143 0.793478 -vt 0.958333 0.728261 -vt 0.970238 0.739130 -vt 0.952381 0.739130 -vt 0.970238 0.782609 -vt 0.958333 0.793478 -vt 0.952381 0.782609 -vt 0.952381 0.728261 -vt 0.869048 0.739130 -vt 0.869048 0.728261 -vt 0.952381 0.793478 -vt 0.869048 0.782609 -vt 0.863095 0.793478 -vt 0.851190 0.782609 -vt 0.851190 0.739130 -vt 0.863095 0.728261 -vt 0.827381 0.793478 -vt 0.827381 0.782609 -vt 0.827381 0.728261 -vt 0.851190 0.728261 -vt 0.970238 0.782609 -vt 0.958333 0.793478 -vt 0.952381 0.782609 -vt 0.970238 0.739130 -vt 0.958333 0.728261 -vt 0.964286 0.728261 -vt 0.952381 0.739130 -vt 0.869048 0.728261 -vt 0.952381 0.728261 -vt 0.869048 0.793478 -vt 0.869048 0.782609 -vt 0.869048 0.739130 -vt 0.857143 0.728261 -vt 0.863095 0.728261 -vt 0.857143 0.793478 -vt 0.851190 0.782609 -vt 0.851190 0.728261 -vt 0.827381 0.739130 -vt 0.827381 0.728261 -vt 0.851190 0.793478 -vt 0.827381 0.782609 -vt 0.958333 0.804348 -vt 0.958333 0.847826 -vt 0.958333 0.858696 vt 0.886905 0.543478 vt 0.898810 0.521739 vt 0.898810 0.543478 @@ -514,71 +1180,18 @@ vt 0.943452 0.423842 vt 0.943453 0.456450 vt 0.937166 0.451696 vt 0.949738 0.428738 -vt 0.017857 0.456522 -vt -0.000000 0.478261 -vt 0.005952 0.456522 -vt 0.017857 0.445652 -vt 0.053571 0.489130 -vt 0.029762 0.478261 -vt 0.053571 0.478261 -vt 0.059524 0.478261 -vt 0.053571 0.347826 -vt 0.059524 0.347826 -vt 0.023810 0.347826 -vt 0.023810 0.478261 -vt 0.035714 0.456522 -vt 0.047619 0.456522 -vt 0.041667 0.456522 -vt 0.047619 0.347826 -vt 0.041667 0.347826 -vt 0.041667 0.456522 -vt 0.029762 0.347826 -vt -0.000000 0.347826 -vt 0.851190 0.434783 -vt 0.827381 0.478261 -vt 0.827381 0.434783 -vt 0.851190 0.478261 -vt 0.875000 0.478261 -vt 0.869048 0.510870 -vt 0.898810 0.434783 -vt 0.898810 0.478261 -vt 0.875000 0.434783 -vt 0.857143 0.402174 -vt 0.023809 0.923983 -vt 0.015419 0.930330 -vt 0.011943 0.945652 vt 0.333333 0.130435 vt 0.303571 0.163043 vt 0.285714 0.130435 vt 0.285714 0.108696 vt 0.315476 0.076087 -vt 0.267857 0.163043 -vt 0.255952 0.163043 -vt 0.255952 0.076087 -vt 0.285714 0.108696 vt 0.964286 0.217391 vt 0.333333 0.021739 -vt 0.047619 0.217391 -vt 0.113095 0.250000 -vt 0.119048 0.260870 -vt 0.119048 0.282609 -vt 0.101190 0.293478 -vt 0.095238 0.260870 vt 0.344571 0.272958 vt 0.339363 0.250000 vt 0.344571 0.227042 vt 0.369715 0.227042 vt 0.374922 0.250000 -vt 0.149477 0.338175 -vt 0.136905 0.347684 -vt 0.124333 0.338175 -vt 0.124333 0.292260 -vt 0.136905 0.282750 -vt 0.124333 0.272958 -vt 0.119125 0.250000 -vt 0.124333 0.227043 -vt 0.136905 0.217533 -vt 0.149477 0.227043 vt 0.011905 0.750000 vt 0.011905 0.663043 vt -0.000000 0.728261 @@ -589,25 +1202,6 @@ vt 0.077381 0.847826 vt 0.351190 0.478261 vt 0.113095 0.521739 vt 0.077381 0.565217 -vt 0.924352 0.496836 -vt 0.922604 0.489131 -vt 0.924352 0.481426 -vt 0.932791 0.481426 -vt 0.932791 0.496836 -vt 0.839286 0.652174 -vt 0.845238 0.673913 -vt 0.845238 0.652174 -vt 0.886905 0.554348 -vt 0.886905 0.543478 -vt 0.880952 0.576087 -vt 0.869048 0.597826 -vt 0.886905 0.543478 -vt 0.880952 0.576087 -vt 0.886905 0.554348 -vt 0.869048 0.597826 -vt 0.857143 0.608696 -vt 0.845238 0.652174 -vt 0.845238 0.673913 vt 0.970238 0.456522 vt 0.970238 0.434783 vt 0.976190 0.391304 @@ -616,23 +1210,6 @@ vt 0.958333 0.456522 vt 0.952381 0.434783 vt 0.952381 0.456522 vt 0.952381 0.391304 -vt 0.827381 0.793478 -vt 0.851190 0.858696 -vt 0.886905 0.793478 -vt 0.922619 0.847826 -vt 0.964286 0.728261 -vt 0.964286 0.793478 -vt 0.869048 0.793478 -vt 0.857143 0.793478 -vt 0.857143 0.728261 -vt 0.851190 0.793478 -vt 0.827381 0.739130 -vt 0.964286 0.793478 -vt 0.952381 0.793478 -vt 0.851190 0.739130 -vt 0.863095 0.793478 -vt 0.827381 0.793478 -vt 0.958333 0.793478 vt 0.827381 0.521739 vt 0.949738 0.396130 vt 0.952342 0.407609 @@ -644,38 +1221,6 @@ vt 0.937166 0.428738 vt 0.943453 0.423984 vt 0.952342 0.440217 vt 0.949738 0.451696 -vt 0.005952 0.445652 -vt 0.029762 0.489130 -vt 0.041667 0.347826 -vt 0.035714 0.347826 -vt 0.017857 0.347826 -vt 0.005952 0.347826 -vt 0.857143 0.510870 -vt 0.851190 0.521739 -vt 0.875000 0.521739 -vt 0.869048 0.402174 -vt 0.875000 0.391304 -vt 0.851190 0.391304 -vt 0.015419 0.960974 -vt 0.023809 0.967321 -vt 0.032200 0.960974 -vt 0.035676 0.945652 -vt 0.032200 0.930330 -vt -0.000000 0.315217 -vt 0.095238 0.326087 -vt 0.000000 0.326087 -vt -0.000000 0.260870 -vt 0.000000 0.282609 -vt 0.000000 0.228261 -vt 0.095238 0.250000 -vt 0.000000 0.250000 -vt 0.000000 0.217391 -vt 0.095238 0.228261 -vt -0.000000 0.293478 -vt 0.095238 0.315217 -vt 0.095238 0.347826 -vt 0.000000 0.347826 -vt 0.095238 0.293478 vt 1.000000 0.260870 vt 0.375000 0.239130 vt 1.000000 0.239130 @@ -693,23 +1238,6 @@ vt 0.375000 0.347826 vt 0.375000 0.304348 vt 1.000000 0.304348 vt 0.375000 0.282609 -vt 0.339286 0.369565 -vt 0.154762 0.391304 -vt 0.154762 0.369565 -vt 0.339286 0.326087 -vt 0.154762 0.347826 -vt 0.154762 0.326087 -vt 0.339286 0.282609 -vt 0.154762 0.260870 -vt 0.339286 0.260870 -vt 0.339286 0.239130 -vt 0.154762 0.217391 -vt 0.339286 0.217391 -vt 0.339286 0.347826 -vt 0.339286 0.304348 -vt 0.154762 0.304348 -vt 0.154762 0.282609 -vt 0.154762 0.239130 vt 0.095238 0.413043 vt 0.113095 0.456522 vt 0.095238 0.456522 @@ -788,64 +1316,11 @@ vt 0.351190 0.869565 vt 0.827381 0.478261 vt 0.767857 0.521739 vt 0.767857 0.652174 -vt 0.827381 0.673913 -vt 0.827381 0.652174 -vt 0.898810 0.532609 -vt 0.922619 0.521739 -vt 0.922619 0.532609 -vt 0.898810 0.510870 -vt 0.898810 0.521739 -vt 0.898810 0.489130 -vt 0.922619 0.500000 -vt 0.898810 0.500000 -vt 0.898810 0.565217 -vt 0.922619 0.554348 -vt 0.922619 0.565217 -vt 0.922619 0.543478 -vt 0.898810 0.543478 -vt 0.922619 0.510870 -vt 0.898810 0.478261 -vt 0.922619 0.489130 -vt 0.898810 0.554348 -vt 0.827381 0.543478 -vt 0.886905 0.684783 -vt 0.898810 0.663043 -vt 0.898810 0.684783 -vt 0.886905 0.663043 -vt 0.898810 0.641304 -vt 0.886905 0.641304 -vt 0.898810 0.619565 -vt 0.886905 0.619565 -vt 0.898810 0.597826 -vt 0.886905 0.597826 -vt 0.898810 0.576087 -vt 0.886905 0.576087 -vt 0.898810 0.554348 -vt 0.898810 0.543478 vt 0.988095 0.434783 vt 0.988095 0.456522 vt 0.988095 0.413043 vt 0.988095 0.391304 vt 0.958333 0.391304 -vt 0.922619 0.902174 -vt 0.886905 0.902174 -vt 0.851190 0.902174 -vt 0.880952 0.902174 -vt 0.857143 0.902174 -vt 0.952381 0.684783 -vt 0.958333 0.728261 -vt 0.869048 0.684783 -vt 0.863095 0.728261 -vt 0.839286 0.684783 -vt 0.863095 0.684783 -vt 0.958333 0.728261 -vt 0.952381 0.684783 -vt 0.958333 0.684783 -vt 0.869048 0.684783 -vt 0.863095 0.684783 -vt 0.863095 0.728261 -vt 0.839286 0.684783 -vt 0.958333 0.902174 vt 0.934524 0.456522 vt 0.898810 0.467391 vt 0.898810 0.456522 @@ -864,41 +1339,7 @@ vt 0.934524 0.434783 vt 0.898810 0.445652 vt 0.934524 0.445652 vt 0.827381 0.652174 -vt 0.023810 0.880435 -vt -0.000000 0.891304 -vt -0.000000 0.880435 -vt 0.071429 0.815217 -vt 0.023810 0.793478 -vt 0.071429 0.793478 -vt 0.071429 0.771739 -vt 0.023810 0.750000 -vt 0.071429 0.750000 -vt 0.071429 0.902174 -vt 0.071429 0.880435 -vt 0.071429 0.858696 -vt 0.023810 0.836957 -vt 0.071429 0.836957 -vt 0.023810 0.815217 -vt 0.023810 0.771739 -vt 0.071429 0.923913 -vt 0.023810 0.902174 -vt 0.023810 0.858696 -vt 0.011629 0.934783 -vt 0.009966 0.942113 -vt 0.005952 0.945149 -vt -0.000000 0.836957 -vt -0.000000 0.826087 -vt -0.000000 0.815217 -vt -0.000000 0.771739 -vt -0.000000 0.913043 -vt -0.000000 0.902174 -vt -0.000000 0.858696 -vt -0.000000 0.804348 -vt -0.000000 0.793478 -vt -0.000000 0.750000 -vt 0.095238 0.217391 vt 0.375000 0.391304 -vt 0.339286 0.391304 vt 0.071429 0.391304 vt 0.279762 0.717391 vt 0.351190 0.663043 @@ -908,42 +1349,18 @@ vt 0.827381 0.695652 vt 0.779762 0.978261 vt 0.779762 0.695652 vt 0.767857 0.521739 -vt 0.839286 0.673913 -vt 0.922619 0.478261 vt 0.970238 0.391304 -vt 0.827381 0.902174 -vt 0.958333 0.684783 -vt 0.839286 0.728261 -vt 0.839286 0.728261 vt 0.934524 0.478261 -vt 0.023810 0.923913 -vt 0.001938 0.942113 -vt 0.000276 0.934783 -vt 0.001938 0.927453 -vt 0.005952 0.924417 -vt 0.009966 0.927453 -vt -0.000000 0.847826 -vt -0.000000 0.782609 -vt -0.000000 0.869565 -vt -0.000000 0.760870 vn 0.0000 1.0000 0.0000 vn 0.0000 0.0000 1.0000 vn -1.0000 0.0000 0.0000 vn 1.0000 0.0000 0.0000 -vn 0.0000 0.0000 -1.0000 vn 0.7071 0.7071 0.0000 vn -0.7071 0.7071 0.0000 vn -0.7071 -0.7071 0.0000 vn 0.7071 -0.7071 0.0000 vn 0.0000 -1.0000 0.0000 -vn -0.9239 0.3827 0.0000 -vn -0.3827 0.9239 0.0000 -vn 0.3827 -0.9239 0.0000 -vn -0.3827 -0.9239 0.0000 -vn 0.9239 0.3827 0.0000 -vn 0.9239 -0.3827 0.0000 -vn 0.3827 0.9239 0.0000 -vn -0.9239 -0.3827 0.0000 +vn 0.0000 0.0000 -1.0000 vn 0.0000 -0.8174 0.5760 vn 0.0000 -0.5547 0.8321 vn -0.6912 -0.6912 0.2110 @@ -1013,12 +1430,6 @@ vn 0.0000 0.2298 -0.9732 vn 0.0000 -0.2298 -0.9732 vn 0.9668 0.2515 0.0444 vn 0.0000 0.7181 -0.6960 -vn 0.0000 0.3827 0.9239 -vn 0.0000 0.7071 0.7071 -vn 0.0000 -0.4472 -0.8944 -vn 0.0000 0.3827 -0.9239 -vn 0.0000 0.8112 -0.5847 -vn 0.0000 0.5847 -0.8112 vn 0.0000 0.2282 -0.9736 vn 0.0000 0.4444 -0.8958 vn 0.0000 -0.4444 0.8958 @@ -1027,614 +1438,257 @@ vn 0.0000 -0.3827 -0.9239 vn 0.0000 0.2298 0.9732 vn 0.0000 0.4472 0.8944 vn 0.0000 -0.7071 -0.7071 -vn 0.0000 0.3420 0.9397 -vn 0.0000 -0.0436 0.9990 -vn 0.0000 -0.7373 0.6756 -vn 0.0000 -0.9990 -0.0436 -vn 0.0000 0.7373 -0.6756 -vn 0.0000 0.9990 0.0436 -vn 0.0000 0.0436 -0.9990 -vn 0.0000 -0.3420 -0.9397 -vn 0.0000 -0.9990 -0.0438 -vn 0.0000 0.9990 0.0440 -vn 0.0000 -0.6754 -0.7374 -vn 0.0000 0.0434 -0.9991 -vn 0.0000 0.6753 0.7375 -vn 0.0000 -0.0432 0.9991 -vn 0.0000 -0.7370 0.6759 -vn 0.0000 0.7371 -0.6757 -vn 0.0000 -0.6756 -0.7373 -vn 0.0000 0.6756 0.7373 -vn 0.0000 0.9063 0.4226 -vn 0.0000 -0.9063 -0.4226 vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 0.7071 vn 0.0000 0.7071 -0.7071 -vn -0.9627 -0.0000 0.2707 -vn -0.4833 -0.4833 0.7300 -vn -0.6835 -0.0000 0.7300 -vn 0.6835 -0.0000 0.7300 -vn 0.4833 0.4833 0.7300 -vn 0.0000 0.6835 0.7300 -vn -0.6807 0.6807 0.2707 -vn 0.0000 0.9627 0.2707 -vn 0.6807 0.6807 0.2707 -vn 0.9627 0.0000 0.2707 -vn 0.4833 -0.4833 0.7300 -vn 0.6807 -0.6807 0.2707 -vn -0.6807 -0.6807 0.2707 -vn 0.0000 -0.6835 0.7300 -vn -0.4833 0.4833 0.7300 -vn 0.0000 -0.9627 0.2707 vn -0.7016 -0.7016 0.1247 vn -0.9263 0.3529 -0.1323 vn -0.2418 0.6861 0.6861 s off -f 20/1/1 16/2/1 17/3/1 -f 12/4/2 16/2/2 14/5/2 -f 24/6/3 14/7/3 19/8/3 -f 18/9/4 12/10/4 21/11/4 -f 1/12/5 5/13/5 7/14/5 -f 18/9/6 16/2/6 15/15/6 -f 14/7/7 20/1/7 19/8/7 -f 24/6/8 10/16/8 9/17/8 -f 12/10/9 22/18/9 21/11/9 -f 22/18/10 10/19/10 23/20/10 -f 32/21/2 38/22/2 30/23/2 -f 5/24/9 25/25/9 6/26/9 -f 4/27/1 29/28/1 1/12/1 -f 3/29/7 30/23/7 4/27/7 -f 6/26/10 26/30/10 7/31/10 -f 7/32/8 31/33/8 8/34/8 -f 8/34/3 32/35/3 3/29/3 -f 2/36/4 27/37/4 5/24/4 -f 1/12/6 28/38/6 2/36/6 -f 26/39/2 33/40/2 31/41/2 -f 30/23/2 37/42/2 29/28/2 -f 31/41/2 34/43/2 32/21/2 -f 29/28/2 40/44/2 28/45/2 -f 28/45/2 39/46/2 27/47/2 -f 27/47/2 35/48/2 25/49/2 -f 25/49/2 36/50/2 26/39/2 -f 47/51/2 45/52/2 42/53/2 -f 64/54/2 57/55/2 61/56/2 -f 68/57/5 67/58/5 71/59/5 -f 79/60/2 80/61/2 74/62/2 -f 110/63/4 100/64/4 106/65/4 -f 96/66/2 93/67/2 94/68/2 -f 107/69/3 103/70/3 99/71/3 -f 103/70/3 88/72/3 94/73/3 -f 122/74/4 120/75/4 116/76/4 -f 117/77/3 125/78/3 121/79/3 -f 116/76/4 102/80/4 100/64/4 -f 113/81/3 99/71/3 97/82/3 -f 106/65/4 95/83/4 85/84/4 -f 149/85/5 150/86/5 151/87/5 -f 154/88/4 151/87/4 150/86/4 -f 154/89/1 153/90/1 152/91/1 -f 153/90/3 149/85/3 152/92/3 -f 159/93/2 161/94/2 155/95/2 -f 179/96/3 181/97/3 171/98/3 -f 172/99/4 180/100/4 174/101/4 -f 201/102/3 199/103/3 195/104/3 -f 200/105/4 202/106/4 198/107/4 -f 205/108/3 213/109/3 207/110/3 -f 208/111/4 212/112/4 206/113/4 -f 218/114/3 209/115/3 215/116/3 -f 217/117/4 210/118/4 219/119/4 -f 208/111/4 219/120/4 214/121/4 -f 220/122/3 207/110/3 213/123/3 -f 222/124/4 250/125/4 224/126/4 -f 249/127/3 221/128/3 223/129/3 -f 222/130/4 228/131/4 226/132/4 -f 221/133/3 227/134/3 223/129/3 -f 225/135/3 229/136/3 227/134/3 -f 230/137/4 226/138/4 228/131/4 -f 229/136/3 235/139/3 233/140/3 -f 230/137/4 236/141/4 232/142/4 -f 233/143/3 239/144/3 237/145/3 -f 234/146/4 240/147/4 236/148/4 -f 238/149/4 244/150/4 240/151/4 -f 237/145/3 243/152/3 241/153/3 -f 242/154/4 248/155/4 244/156/4 -f 241/153/3 247/157/3 245/158/3 -f 248/159/4 250/160/4 252/161/4 -f 247/162/3 249/163/3 245/158/3 -f 209/115/3 255/164/3 215/116/3 -f 210/118/4 256/165/4 254/166/4 -f 257/167/3 264/168/3 259/169/3 -f 258/170/5 262/171/5 257/167/5 -f 260/172/4 261/173/4 258/170/4 -f 259/174/2 263/175/2 260/172/2 -f 272/176/4 270/177/4 278/178/4 -f 277/179/3 279/180/3 271/181/3 -f 292/182/2 287/183/2 291/184/2 -f 291/184/10 290/185/10 292/182/10 -f 287/186/1 286/187/1 285/188/1 -f 287/189/3 281/190/3 283/191/3 -f 284/192/4 286/187/4 288/193/4 -f 285/188/5 290/194/5 289/195/5 -f 291/196/4 293/197/4 289/195/4 -f 290/194/3 296/198/3 292/199/3 -f 292/182/2 284/192/2 288/193/2 -f 282/200/5 290/194/5 286/187/5 -f 283/201/2 291/184/2 287/183/2 -f 289/195/5 281/190/5 285/188/5 -f 298/202/3 299/203/3 297/204/3 -f 300/205/5 304/206/5 305/207/5 -f 304/206/4 301/208/4 303/209/4 -f 302/210/2 298/202/2 307/211/2 -f 300/205/1 302/210/1 304/206/1 -f 313/212/5 312/213/5 311/214/5 -f 20/1/1 13/215/1 16/2/1 -f 14/5/2 9/216/2 10/217/2 -f 10/217/2 11/218/2 12/4/2 -f 12/4/2 15/219/2 16/2/2 -f 16/2/2 13/215/2 14/5/2 -f 14/5/2 10/217/2 12/4/2 -f 24/6/3 9/17/3 14/7/3 -f 18/9/4 15/15/4 12/10/4 -f 7/14/5 8/220/5 3/221/5 -f 3/221/5 4/27/5 1/12/5 -f 1/12/5 2/222/5 5/13/5 -f 5/13/5 6/223/5 7/14/5 -f 7/14/5 3/221/5 1/12/5 -f 18/9/6 17/3/6 16/2/6 -f 14/7/7 13/215/7 20/1/7 -f 24/6/8 23/224/8 10/16/8 -f 12/10/9 11/225/9 22/18/9 -f 22/18/10 11/225/10 10/19/10 -f 32/21/2 34/43/2 38/22/2 -f 5/24/9 27/37/9 25/25/9 -f 4/27/1 30/23/1 29/28/1 -f 3/29/7 32/35/7 30/23/7 -f 6/26/10 25/25/10 26/30/10 -f 7/32/8 26/226/8 31/33/8 -f 8/34/3 31/33/3 32/35/3 -f 2/36/4 28/38/4 27/37/4 -f 1/12/6 29/28/6 28/38/6 -f 26/39/2 36/50/2 33/40/2 -f 30/23/2 38/22/2 37/42/2 -f 31/41/2 33/40/2 34/43/2 -f 29/28/2 37/42/2 40/44/2 -f 28/45/2 40/44/2 39/46/2 -f 27/47/2 39/46/2 35/48/2 -f 25/49/2 35/48/2 36/50/2 -f 42/53/2 41/227/2 44/228/2 -f 44/228/2 43/229/2 47/51/2 -f 47/51/2 48/230/2 45/52/2 -f 45/52/2 46/231/2 42/53/2 -f 42/53/2 44/228/2 47/51/2 -f 57/55/2 58/232/2 59/233/2 -f 59/233/2 60/234/2 57/55/2 -f 60/234/2 61/56/2 57/55/2 -f 61/56/2 62/235/2 63/236/2 -f 63/236/2 64/54/2 61/56/2 -f 67/58/5 66/237/5 65/238/5 -f 65/238/5 72/239/5 67/58/5 -f 72/239/5 71/59/5 67/58/5 -f 71/59/5 70/240/5 69/241/5 -f 69/241/5 68/57/5 71/59/5 -f 74/62/2 73/242/2 75/243/2 -f 75/243/2 76/244/2 74/62/2 -f 76/244/2 77/245/2 74/62/2 -f 77/245/2 78/246/2 74/62/2 -f 78/246/2 79/60/2 74/62/2 -f 94/68/2 89/247/2 92/248/2 -f 89/247/2 90/249/2 92/248/2 -f 90/249/2 91/250/2 92/248/2 -f 92/248/2 95/251/2 94/68/2 -f 95/251/2 96/66/2 94/68/2 -f 103/70/3 81/252/3 88/72/3 -f 88/72/3 89/253/3 94/73/3 -f 94/73/3 97/82/3 103/70/3 -f 97/82/3 99/71/3 103/70/3 -f 116/76/4 100/64/4 122/74/4 -f 122/74/4 126/254/4 120/75/4 -f 121/79/3 99/71/3 113/81/3 -f 113/81/3 117/77/3 121/79/3 -f 85/84/4 84/255/4 106/65/4 -f 106/65/4 100/64/4 102/80/4 -f 102/80/4 95/83/4 106/65/4 -f 95/83/4 92/256/4 85/84/4 -f 149/85/5 153/90/5 150/86/5 -f 154/89/1 150/86/1 153/90/1 -f 155/95/2 156/257/2 157/258/2 -f 157/258/2 158/259/2 159/93/2 -f 159/93/2 160/260/2 161/94/2 -f 161/94/2 162/261/2 155/95/2 -f 155/95/2 157/258/2 159/93/2 -f 173/262/3 175/263/3 177/264/3 -f 173/262/3 177/264/3 179/96/3 -f 187/265/3 189/266/3 185/267/3 -f 189/266/3 171/98/3 185/267/3 -f 183/268/3 185/267/3 171/98/3 -f 181/97/3 183/268/3 171/98/3 -f 171/98/3 173/262/3 179/96/3 -f 172/99/4 190/269/4 186/270/4 -f 190/269/4 188/271/4 186/270/4 -f 186/270/4 184/272/4 172/99/4 -f 184/272/4 182/273/4 172/99/4 -f 178/274/4 176/275/4 174/101/4 -f 182/273/4 180/100/4 172/99/4 -f 180/100/4 178/274/4 174/101/4 -f 193/276/3 197/277/3 195/104/3 -f 197/277/3 201/102/3 195/104/3 -f 201/102/3 203/278/3 199/103/3 -f 195/104/3 191/279/3 193/276/3 -f 198/107/4 194/280/4 196/281/4 -f 194/280/4 192/282/4 196/281/4 -f 200/105/4 204/283/4 202/106/4 -f 198/107/4 196/281/4 200/105/4 -f 205/108/3 211/284/3 213/109/3 -f 208/111/4 214/285/4 212/112/4 -f 218/114/3 220/286/3 209/115/3 -f 217/117/4 216/287/4 210/118/4 -f 208/111/4 217/117/4 219/120/4 -f 220/122/3 218/114/3 207/110/3 -f 222/124/4 252/288/4 250/125/4 -f 249/127/3 251/289/3 221/128/3 -f 222/130/4 224/126/4 228/131/4 -f 221/133/3 225/290/3 227/134/3 -f 225/135/3 231/291/3 229/136/3 -f 230/137/4 232/292/4 226/138/4 -f 229/136/3 231/293/3 235/139/3 -f 230/137/4 234/294/4 236/141/4 -f 233/143/3 235/295/3 239/144/3 -f 234/146/4 238/149/4 240/147/4 -f 238/149/4 242/154/4 244/150/4 -f 237/145/3 239/296/3 243/152/3 -f 242/154/4 246/297/4 248/155/4 -f 241/153/3 243/298/3 247/157/3 -f 248/159/4 246/297/4 250/160/4 -f 247/162/3 251/299/3 249/163/3 -f 209/115/3 253/300/3 255/164/3 -f 210/118/4 216/287/4 256/165/4 -f 257/167/3 262/171/3 264/168/3 -f 258/170/5 261/173/5 262/171/5 -f 260/172/4 263/175/4 261/173/4 -f 259/174/2 264/301/2 263/175/2 -f 270/177/4 268/302/4 278/178/4 -f 268/302/4 266/303/4 278/178/4 -f 266/303/4 280/304/4 278/178/4 -f 278/178/4 276/305/4 274/306/4 -f 274/306/4 272/176/4 278/178/4 -f 279/180/3 265/307/3 271/181/3 -f 265/307/3 267/308/3 271/181/3 -f 267/308/3 269/309/3 271/181/3 -f 271/181/3 273/310/3 275/311/3 -f 275/311/3 277/179/3 271/181/3 -f 292/182/2 288/193/2 287/183/2 -f 291/184/10 289/312/10 290/185/10 -f 287/186/1 288/313/1 286/187/1 -f 287/189/3 285/188/3 281/190/3 -f 284/192/4 282/200/4 286/187/4 -f 285/188/5 286/187/5 290/194/5 -f 291/196/4 295/314/4 293/197/4 -f 290/194/3 294/315/3 296/198/3 -f 292/182/2 296/316/2 284/192/2 -f 282/200/5 294/315/5 290/194/5 -f 283/201/2 295/317/2 291/184/2 -f 289/195/5 293/197/5 281/190/5 -f 298/202/3 300/205/3 299/203/3 -f 306/318/5 299/319/5 300/205/5 -f 304/206/5 303/320/5 305/207/5 -f 305/207/5 306/318/5 300/205/5 -f 304/206/4 302/210/4 301/208/4 -f 308/321/2 301/322/2 302/210/2 -f 298/202/2 297/323/2 307/211/2 -f 307/211/2 308/321/2 302/210/2 -f 300/205/1 298/202/1 302/210/1 -f 311/214/5 309/324/5 310/325/5 -f 310/325/5 316/326/5 311/214/5 -f 316/326/5 315/327/5 311/214/5 -f 315/327/5 314/328/5 311/214/5 -f 314/328/5 313/212/5 311/214/5 +f 200/352/90 196/353/90 197/354/90 +f 192/355/91 196/353/91 194/356/91 +f 204/357/92 194/358/92 199/359/92 +f 198/360/93 192/361/93 201/362/93 +f 198/360/94 196/353/94 195/363/94 +f 194/358/95 200/352/95 199/359/95 +f 204/357/96 190/364/96 189/365/96 +f 192/361/97 202/366/97 201/362/97 +f 202/366/98 190/367/98 203/368/98 +f 220/369/91 213/370/91 217/371/91 +f 250/372/93 240/373/93 246/374/93 +f 236/375/91 233/376/91 234/377/91 +f 247/378/92 243/379/92 239/380/92 +f 243/379/92 228/381/92 234/382/92 +f 262/383/93 260/384/93 256/385/93 +f 257/386/92 265/387/92 261/388/92 +f 256/385/93 242/389/93 240/373/93 +f 253/390/92 239/380/92 237/391/92 +f 246/374/93 235/392/93 225/393/93 +f 289/394/99 290/395/99 291/396/99 +f 294/397/93 291/396/93 290/395/93 +f 294/398/90 293/399/90 292/400/90 +f 293/399/92 289/394/92 292/401/92 +f 305/402/92 303/403/92 299/404/92 +f 304/405/93 306/406/93 302/407/93 +f 309/408/92 316/409/92 311/410/92 +f 310/411/99 314/412/99 309/408/99 +f 312/413/93 313/414/93 310/411/93 +f 311/415/91 315/416/91 312/413/91 +f 324/417/93 322/418/93 330/419/93 +f 329/420/92 331/421/92 323/422/92 +f 200/352/90 193/423/90 196/353/90 +f 194/356/91 189/424/91 190/425/91 +f 190/425/91 191/426/91 192/355/91 +f 192/355/91 195/427/91 196/353/91 +f 196/353/91 193/423/91 194/356/91 +f 194/356/91 190/425/91 192/355/91 +f 204/357/92 189/365/92 194/358/92 +f 198/360/93 195/363/93 192/361/93 +f 198/360/94 197/354/94 196/353/94 +f 194/358/95 193/423/95 200/352/95 +f 204/357/96 203/428/96 190/364/96 +f 192/361/97 191/429/97 202/366/97 +f 202/366/98 191/429/98 190/367/98 +f 213/370/91 214/430/91 215/431/91 +f 215/431/91 216/432/91 213/370/91 +f 216/432/91 217/371/91 213/370/91 +f 217/371/91 218/433/91 219/434/91 +f 219/434/91 220/369/91 217/371/91 +f 234/377/91 229/435/91 232/436/91 +f 229/435/91 230/437/91 232/436/91 +f 230/437/91 231/438/91 232/436/91 +f 232/436/91 235/439/91 234/377/91 +f 235/439/91 236/375/91 234/377/91 +f 243/379/92 221/440/92 228/381/92 +f 228/381/92 229/441/92 234/382/92 +f 234/382/92 237/391/92 243/379/92 +f 237/391/92 239/380/92 243/379/92 +f 256/385/93 240/373/93 262/383/93 +f 262/383/93 266/442/93 260/384/93 +f 261/388/92 239/380/92 253/390/92 +f 253/390/92 257/386/92 261/388/92 +f 225/393/93 224/443/93 246/374/93 +f 246/374/93 240/373/93 242/389/93 +f 242/389/93 235/392/93 246/374/93 +f 235/392/93 232/444/93 225/393/93 +f 289/394/99 293/399/99 290/395/99 +f 294/398/90 290/395/90 293/399/90 +f 297/445/92 301/446/92 299/404/92 +f 301/446/92 305/402/92 299/404/92 +f 305/402/92 307/447/92 303/403/92 +f 299/404/92 295/448/92 297/445/92 +f 302/407/93 298/449/93 300/450/93 +f 298/449/93 296/451/93 300/450/93 +f 304/405/93 308/452/93 306/406/93 +f 302/407/93 300/450/93 304/405/93 +f 309/408/92 314/412/92 316/409/92 +f 310/411/99 313/414/99 314/412/99 +f 312/413/93 315/416/93 313/414/93 +f 311/415/91 316/453/91 315/416/91 +f 322/418/93 320/454/93 330/419/93 +f 320/454/93 318/455/93 330/419/93 +f 318/455/93 332/456/93 330/419/93 +f 330/419/93 328/457/93 326/458/93 +f 326/458/93 324/417/93 330/419/93 +f 331/421/92 317/459/92 323/422/92 +f 317/459/92 319/460/92 323/422/92 +f 319/460/92 321/461/92 323/422/92 +f 323/422/92 325/462/92 327/463/92 +f 327/463/92 329/420/92 323/422/92 s 1 -f 39/329/11 43/330/12 35/331/12 -f 38/332/13 45/52/14 37/333/14 -f 33/334/15 42/335/16 34/336/16 -f 34/336/16 46/231/13 38/332/13 -f 36/337/17 41/338/15 33/334/15 -f 40/339/18 47/340/11 39/329/11 -f 35/331/12 44/341/17 36/342/17 -f 37/333/14 48/343/18 40/339/18 -f 55/344/4 62/345/9 54/346/9 -f 53/347/10 60/348/8 52/349/8 -f 51/350/3 58/351/7 50/352/7 -f 56/353/6 63/354/4 55/344/4 -f 54/346/9 61/355/10 53/356/10 -f 52/349/8 59/357/3 51/350/3 -f 50/352/7 57/358/1 49/359/1 -f 49/359/1 64/360/6 56/353/6 -f 68/361/8 77/362/10 76/363/8 -f 66/364/7 75/365/3 73/366/7 -f 72/367/6 79/368/4 71/369/4 -f 70/370/9 77/371/10 69/372/10 -f 67/373/3 76/363/8 75/365/3 -f 65/374/1 73/366/7 74/375/1 -f 65/374/1 80/376/6 72/367/6 -f 71/369/4 78/377/9 70/370/9 -f 87/378/19 83/379/20 86/380/19 -f 103/381/21 82/382/8 81/383/8 -f 86/380/22 84/384/23 85/385/24 -f 87/378/25 81/383/26 82/382/26 -f 90/386/27 88/387/28 87/378/25 -f 91/388/29 85/385/24 92/389/29 -f 90/386/30 86/380/19 91/388/30 -f 105/390/31 84/384/9 83/379/9 -f 82/382/10 105/390/32 83/379/10 -f 93/67/1 151/391/33 98/392/34 -f 94/73/7 98/392/35 97/82/36 -f 102/80/37 96/66/6 95/83/6 -f 111/393/38 107/394/8 99/395/39 -f 101/396/34 152/397/40 149/398/33 -f 104/399/32 109/400/10 105/390/32 -f 105/390/31 110/63/9 106/401/41 -f 107/394/8 104/399/42 103/381/21 -f 108/402/10 112/403/43 109/400/10 -f 110/63/9 112/403/44 100/404/45 -f 97/82/36 114/405/46 113/406/47 -f 101/396/48 102/80/37 115/407/49 -f 152/397/40 119/408/50 118/409/50 -f 113/406/47 118/409/51 117/410/51 -f 116/411/52 119/408/53 115/407/49 -f 111/393/43 124/412/54 112/403/43 -f 99/395/39 123/413/55 111/393/38 -f 112/403/44 122/414/56 100/404/45 -f 123/413/54 128/415/57 124/412/54 -f 123/413/55 125/416/58 127/417/58 -f 124/412/59 126/254/60 122/414/56 -f 119/418/61 130/419/62 118/420/63 -f 117/421/64 130/419/62 129/422/65 -f 120/423/66 131/424/67 119/418/61 -f 127/417/68 136/425/69 128/415/70 -f 127/417/68 133/426/71 135/427/72 -f 128/415/70 134/428/73 126/254/74 -f 135/429/5 134/428/75 136/430/5 -f 140/431/76 137/432/5 138/433/5 -f 138/434/67 144/435/77 140/436/78 -f 137/437/62 143/438/79 141/439/63 -f 137/437/62 142/440/61 138/434/67 -f 131/424/80 144/435/77 142/440/81 -f 142/440/81 130/419/82 131/424/80 -f 130/419/82 143/438/79 129/422/65 -f 146/441/3 129/442/65 143/443/79 -f 129/442/65 133/444/71 125/445/83 -f 117/446/64 129/442/65 125/445/83 -f 145/447/84 148/448/85 147/449/84 -f 134/428/73 132/450/86 126/451/74 -f 132/450/86 120/452/66 126/451/74 -f 133/453/75 147/449/84 134/428/75 -f 132/450/86 147/454/4 148/455/4 -f 115/407/49 102/80/37 116/411/52 -f 114/405/46 97/82/36 98/392/35 -f 151/391/33 114/405/87 98/392/34 -f 174/101/88 175/456/89 173/457/88 -f 156/458/7 164/459/1 163/460/7 -f 162/461/6 164/459/1 155/462/1 -f 160/463/9 169/464/4 161/465/4 -f 159/466/10 166/467/8 167/468/10 -f 156/458/7 165/469/3 157/470/3 -f 161/465/4 170/471/6 162/461/6 -f 159/472/10 168/473/9 160/463/9 -f 157/470/3 166/467/8 158/474/8 -f 172/99/2 173/457/88 171/475/2 -f 176/476/90 177/477/85 175/478/90 -f 178/479/85 179/480/91 177/477/85 -f 180/481/91 181/482/92 179/480/91 -f 182/483/92 183/484/92 181/482/92 -f 184/485/92 185/486/93 183/484/92 -f 186/487/93 187/488/84 185/486/93 -f 188/271/84 189/489/5 187/488/84 -f 198/107/94 193/276/95 194/280/95 -f 191/279/96 196/490/97 192/491/96 -f 202/106/98 197/277/94 198/107/94 -f 195/104/97 200/492/99 196/490/97 -f 199/103/99 204/493/100 200/492/99 -f 204/494/101 201/102/98 202/106/98 -f 205/108/102 208/111/103 206/113/102 -f 218/114/104 216/287/105 217/117/104 -f 219/119/106 209/495/107 220/496/106 -f 213/497/108 212/112/109 214/285/108 -f 207/110/103 217/117/104 208/111/103 -f 214/121/108 220/498/106 213/499/108 -f 250/125/103 223/129/104 224/126/104 -f 221/500/106 252/501/108 222/130/106 -f 223/129/104 228/131/110 224/126/104 -f 222/130/106 225/502/111 221/500/106 -f 227/134/110 230/137/112 228/131/110 -f 229/136/112 234/294/113 230/137/112 -f 232/503/114 225/502/111 226/132/111 -f 232/503/114 235/504/115 231/505/114 -f 236/506/115 239/507/116 235/508/115 -f 233/143/113 238/149/117 234/146/113 -f 237/145/117 242/154/107 238/149/117 -f 240/151/116 243/509/105 239/507/116 -f 244/150/105 247/510/118 243/509/105 -f 241/153/107 246/297/119 242/154/107 -f 248/511/118 251/512/108 247/510/118 -f 245/158/119 250/160/103 246/297/119 -f 210/118/107 253/513/120 209/495/107 -f 215/116/105 256/165/121 216/287/105 -f 149/398/33 96/66/1 101/396/34 -f 93/67/1 149/398/33 151/391/33 -f 266/514/5 267/515/101 265/516/5 -f 268/517/101 269/518/10 267/515/101 -f 270/519/10 271/520/122 269/521/10 -f 272/522/122 273/523/2 271/520/122 -f 274/524/2 275/525/89 273/523/2 -f 276/526/89 277/527/1 275/525/89 -f 278/528/1 279/529/123 277/527/1 -f 280/530/123 265/516/5 279/529/123 -f 96/66/6 102/80/37 101/396/48 -f 98/392/35 94/73/7 93/67/7 -f 146/531/85 140/431/76 148/448/85 -f 319/532/124 328/533/125 327/534/126 -f 316/535/6 323/536/4 315/537/4 -f 314/538/9 321/539/10 313/540/10 -f 312/541/8 319/532/3 311/542/3 -f 309/543/7 318/544/1 310/545/1 -f 310/545/1 324/546/6 316/535/6 -f 315/537/4 322/547/9 314/538/9 -f 313/548/10 320/549/8 312/541/8 -f 311/542/3 317/550/7 309/543/7 -f 331/551/127 332/552/128 326/553/129 -f 317/550/130 326/554/129 318/544/131 -f 324/546/132 326/555/129 332/556/128 -f 323/536/133 330/557/134 322/547/135 -f 320/549/136 329/558/137 328/559/125 -f 319/532/124 325/560/138 317/550/130 -f 323/536/133 332/561/128 331/562/127 -f 322/547/135 329/563/137 321/539/139 -f 39/329/11 47/340/11 43/330/12 -f 38/332/13 46/231/13 45/52/14 -f 33/334/15 41/338/15 42/335/16 -f 34/336/16 42/335/16 46/231/13 -f 36/337/17 44/564/17 41/338/15 -f 40/339/18 48/343/18 47/340/11 -f 35/331/12 43/330/12 44/341/17 -f 37/333/14 45/52/14 48/343/18 -f 55/344/4 63/354/4 62/345/9 -f 53/347/10 61/565/10 60/348/8 -f 51/350/3 59/357/3 58/351/7 -f 56/353/6 64/360/6 63/354/4 -f 54/346/9 62/345/9 61/355/10 -f 52/349/8 60/348/8 59/357/3 -f 50/352/7 58/351/7 57/358/1 -f 49/359/1 57/358/1 64/360/6 -f 68/361/8 69/566/10 77/362/10 -f 66/364/7 67/373/3 75/365/3 -f 72/367/6 80/376/6 79/368/4 -f 70/370/9 78/377/9 77/371/10 -f 67/373/3 68/361/8 76/363/8 -f 65/374/1 66/364/7 73/366/7 -f 65/374/1 74/375/1 80/376/6 -f 71/369/4 79/368/4 78/377/9 -f 87/378/19 82/382/20 83/379/20 -f 103/381/21 104/399/42 82/382/8 -f 86/380/22 83/379/23 84/384/23 -f 87/378/25 88/387/28 81/383/26 -f 90/386/27 89/567/27 88/387/28 -f 91/388/29 86/380/22 85/385/24 -f 90/386/30 87/378/19 86/380/19 -f 105/390/31 106/401/41 84/384/9 -f 82/382/10 104/399/32 105/390/32 -f 111/393/38 108/402/8 107/394/8 -f 101/396/34 115/407/87 152/397/40 -f 104/399/32 108/402/10 109/400/10 -f 105/390/31 109/400/9 110/63/9 -f 107/394/8 108/402/8 104/399/42 -f 108/402/10 111/393/43 112/403/43 -f 110/63/9 109/400/9 112/403/44 -f 118/409/50 114/405/87 154/568/40 -f 152/397/40 115/407/87 119/408/50 -f 118/409/50 154/568/40 152/397/40 -f 113/406/47 114/405/46 118/409/51 -f 116/411/52 120/569/53 119/408/53 -f 111/393/43 123/413/54 124/412/54 -f 99/395/39 121/570/140 123/413/55 -f 112/403/44 124/412/59 122/414/56 -f 123/413/54 127/417/57 128/415/57 -f 123/413/55 121/570/140 125/416/58 -f 124/412/59 128/415/60 126/254/60 -f 119/418/61 131/424/67 130/419/62 -f 117/421/64 118/420/63 130/419/62 -f 120/423/66 132/571/86 131/424/67 -f 127/417/68 135/427/72 136/425/69 -f 127/417/68 125/416/83 133/426/71 -f 128/415/70 136/425/69 134/428/73 -f 135/429/5 133/453/75 134/428/75 -f 140/431/76 139/572/76 137/432/5 -f 138/434/67 142/440/61 144/435/77 -f 137/437/62 139/573/141 143/438/79 -f 137/437/62 141/439/63 142/440/61 -f 131/424/80 132/571/86 144/435/77 -f 142/440/81 141/439/142 130/419/82 -f 130/419/82 141/439/142 143/438/79 -f 143/443/79 139/574/141 146/441/3 -f 146/441/3 145/575/3 129/442/65 -f 129/442/65 145/575/3 133/444/71 -f 145/447/84 146/531/85 148/448/85 -f 134/428/73 147/454/4 132/450/86 -f 133/453/75 145/447/84 147/449/84 -f 148/455/4 140/431/78 144/435/77 -f 144/435/77 132/450/86 148/455/4 -f 151/391/33 154/568/40 114/405/87 -f 174/101/88 176/576/89 175/456/89 -f 156/458/7 155/462/1 164/459/1 -f 162/461/6 170/471/6 164/459/1 -f 160/463/9 168/473/9 169/464/4 -f 159/466/10 158/474/8 166/467/8 -f 156/458/7 163/460/7 165/469/3 -f 161/465/4 169/464/4 170/471/6 -f 159/472/10 167/577/10 168/473/9 -f 157/470/3 165/469/3 166/467/8 -f 172/99/2 174/101/88 173/457/88 -f 176/476/90 178/479/85 177/477/85 -f 178/479/85 180/481/91 179/480/91 -f 180/481/91 182/483/92 181/482/92 -f 182/483/92 184/485/92 183/484/92 -f 184/485/92 186/487/93 185/486/93 -f 186/487/93 188/271/84 187/488/84 -f 188/271/84 190/269/5 189/489/5 -f 198/107/94 197/277/94 193/276/95 -f 191/279/96 195/104/97 196/490/97 -f 202/106/98 201/102/98 197/277/94 -f 195/104/97 199/103/99 200/492/99 -f 199/103/99 203/278/100 204/493/100 -f 204/494/101 203/578/101 201/102/98 -f 205/108/102 207/110/103 208/111/103 -f 218/114/104 215/116/105 216/287/105 -f 219/119/106 210/118/107 209/495/107 -f 213/497/108 211/579/109 212/112/109 -f 207/110/103 218/114/104 217/117/104 -f 214/121/108 219/120/106 220/498/106 -f 250/125/103 249/127/103 223/129/104 -f 221/500/106 251/580/108 252/501/108 -f 223/129/104 227/134/110 228/131/110 -f 222/130/106 226/132/111 225/502/111 -f 227/134/110 229/136/112 230/137/112 -f 229/136/112 233/140/113 234/294/113 -f 232/503/114 231/505/114 225/502/111 -f 232/503/114 236/581/115 235/504/115 -f 236/506/115 240/151/116 239/507/116 -f 233/143/113 237/145/117 238/149/117 -f 237/145/117 241/153/107 242/154/107 -f 240/151/116 244/150/105 243/509/105 -f 244/150/105 248/511/118 247/510/118 -f 241/153/107 245/158/119 246/297/119 -f 248/511/118 252/582/108 251/512/108 -f 245/158/119 249/163/103 250/160/103 -f 210/118/107 254/166/120 253/513/120 -f 215/116/105 255/164/121 256/165/121 -f 93/67/1 96/66/1 149/398/33 -f 266/514/5 268/517/101 267/515/101 -f 268/517/101 270/583/10 269/518/10 -f 270/519/10 272/522/122 271/520/122 -f 272/522/122 274/524/2 273/523/2 -f 274/524/2 276/526/89 275/525/89 -f 276/526/89 278/528/1 277/527/1 -f 278/528/1 280/530/123 279/529/123 -f 280/530/123 266/514/5 265/516/5 -f 146/531/85 139/572/76 140/431/76 -f 319/532/124 320/549/136 328/533/125 -f 316/535/6 324/546/6 323/536/4 -f 314/538/9 322/547/9 321/539/10 -f 312/541/8 320/549/8 319/532/3 -f 309/543/7 317/550/7 318/544/1 -f 310/545/1 318/544/1 324/546/6 -f 315/537/4 323/536/4 322/547/9 -f 313/548/10 321/584/10 320/549/8 -f 311/542/3 319/532/3 317/550/7 -f 326/553/129 325/585/138 327/586/126 -f 327/586/126 328/587/125 326/553/129 -f 328/587/125 329/588/137 326/553/129 -f 329/588/137 330/589/134 326/553/129 -f 330/589/134 331/551/127 326/553/129 -f 317/550/130 325/590/138 326/554/129 -f 324/546/132 318/544/131 326/555/129 -f 323/536/133 331/591/127 330/557/134 -f 320/549/136 321/584/139 329/558/137 -f 319/532/124 327/592/126 325/560/138 -f 323/536/133 324/546/132 332/561/128 -f 322/547/135 330/593/134 329/563/137 +f 211/464/93 218/465/97 210/466/97 +f 209/467/98 216/468/96 208/469/96 +f 207/470/92 214/471/95 206/472/95 +f 212/473/94 219/474/93 211/464/93 +f 210/466/97 217/475/98 209/476/98 +f 208/469/96 215/477/92 207/470/92 +f 206/472/95 213/478/90 205/479/90 +f 205/479/90 220/480/94 212/473/94 +f 227/481/100 223/482/101 226/483/100 +f 243/484/102 222/485/96 221/486/96 +f 226/483/103 224/487/104 225/488/105 +f 227/481/106 221/486/107 222/485/107 +f 230/489/108 228/490/109 227/481/106 +f 231/491/110 225/488/105 232/492/110 +f 230/489/111 226/483/100 231/491/111 +f 245/493/112 224/487/97 223/482/97 +f 222/485/98 245/493/113 223/482/98 +f 233/376/90 291/494/114 238/495/115 +f 234/382/95 238/495/116 237/391/117 +f 242/389/118 236/375/94 235/392/94 +f 251/496/119 247/497/96 239/498/120 +f 241/499/115 292/500/121 289/501/114 +f 244/502/113 249/503/98 245/493/113 +f 245/493/112 250/372/97 246/504/122 +f 247/497/96 244/502/123 243/484/102 +f 248/505/98 252/506/124 249/503/98 +f 250/372/97 252/506/125 240/507/126 +f 237/391/117 254/508/127 253/509/128 +f 241/499/129 242/389/118 255/510/130 +f 292/500/121 259/511/131 258/512/131 +f 253/509/128 258/512/132 257/513/132 +f 256/514/133 259/511/134 255/510/130 +f 251/496/124 264/515/135 252/506/124 +f 239/498/120 263/516/136 251/496/119 +f 252/506/125 262/517/137 240/507/126 +f 263/516/135 268/518/138 264/515/135 +f 263/516/136 265/519/139 267/520/139 +f 264/515/140 266/442/141 262/517/137 +f 259/521/142 270/522/143 258/523/144 +f 257/524/145 270/522/143 269/525/146 +f 260/526/147 271/527/148 259/521/142 +f 267/520/149 276/528/150 268/518/151 +f 267/520/149 273/529/152 275/530/153 +f 268/518/151 274/531/154 266/442/155 +f 275/532/99 274/531/156 276/533/99 +f 280/534/157 277/535/99 278/536/99 +f 278/537/148 284/538/158 280/539/159 +f 277/540/143 283/541/160 281/542/144 +f 277/540/143 282/543/142 278/537/148 +f 271/527/161 284/538/158 282/543/162 +f 282/543/162 270/522/163 271/527/161 +f 270/522/163 283/541/160 269/525/146 +f 286/544/92 269/545/146 283/546/160 +f 269/545/146 273/547/152 265/548/164 +f 257/549/145 269/545/146 265/548/164 +f 285/550/165 288/551/166 287/552/165 +f 274/531/154 272/553/167 266/554/155 +f 272/553/167 260/555/147 266/554/155 +f 273/556/156 287/552/165 274/531/156 +f 272/553/167 287/557/93 288/558/93 +f 255/510/130 242/389/118 256/514/133 +f 254/508/127 237/391/117 238/495/116 +f 291/494/114 254/508/168 238/495/115 +f 302/407/169 297/445/170 298/449/170 +f 295/448/171 300/559/172 296/560/171 +f 306/406/173 301/446/169 302/407/169 +f 299/404/172 304/561/174 300/559/172 +f 303/403/174 308/562/175 304/561/174 +f 308/563/176 305/402/173 306/406/173 +f 289/501/114 236/375/90 241/499/115 +f 233/376/90 289/501/114 291/494/114 +f 318/564/99 319/565/176 317/566/99 +f 320/567/176 321/568/98 319/565/176 +f 322/569/98 323/570/177 321/571/98 +f 324/572/177 325/573/91 323/570/177 +f 326/574/91 327/575/178 325/573/91 +f 328/576/178 329/577/90 327/575/178 +f 330/578/90 331/579/179 329/577/90 +f 332/580/179 317/566/99 331/579/179 +f 236/375/94 242/389/118 241/499/129 +f 238/495/116 234/382/95 233/376/95 +f 286/581/166 280/534/157 288/551/166 +f 211/464/93 219/474/93 218/465/97 +f 209/467/98 217/582/98 216/468/96 +f 207/470/92 215/477/92 214/471/95 +f 212/473/94 220/480/94 219/474/93 +f 210/466/97 218/465/97 217/475/98 +f 208/469/96 216/468/96 215/477/92 +f 206/472/95 214/471/95 213/478/90 +f 205/479/90 213/478/90 220/480/94 +f 227/481/100 222/485/101 223/482/101 +f 243/484/102 244/502/123 222/485/96 +f 226/483/103 223/482/104 224/487/104 +f 227/481/106 228/490/109 221/486/107 +f 230/489/108 229/583/108 228/490/109 +f 231/491/110 226/483/103 225/488/105 +f 230/489/111 227/481/100 226/483/100 +f 245/493/112 246/504/122 224/487/97 +f 222/485/98 244/502/113 245/493/113 +f 251/496/119 248/505/96 247/497/96 +f 241/499/115 255/510/168 292/500/121 +f 244/502/113 248/505/98 249/503/98 +f 245/493/112 249/503/97 250/372/97 +f 247/497/96 248/505/96 244/502/123 +f 248/505/98 251/496/124 252/506/124 +f 250/372/97 249/503/97 252/506/125 +f 258/512/131 254/508/168 294/584/121 +f 292/500/121 255/510/168 259/511/131 +f 258/512/131 294/584/121 292/500/121 +f 253/509/128 254/508/127 258/512/132 +f 256/514/133 260/585/134 259/511/134 +f 251/496/124 263/516/135 264/515/135 +f 239/498/120 261/586/180 263/516/136 +f 252/506/125 264/515/140 262/517/137 +f 263/516/135 267/520/138 268/518/138 +f 263/516/136 261/586/180 265/519/139 +f 264/515/140 268/518/141 266/442/141 +f 259/521/142 271/527/148 270/522/143 +f 257/524/145 258/523/144 270/522/143 +f 260/526/147 272/587/167 271/527/148 +f 267/520/149 275/530/153 276/528/150 +f 267/520/149 265/519/164 273/529/152 +f 268/518/151 276/528/150 274/531/154 +f 275/532/99 273/556/156 274/531/156 +f 280/534/157 279/588/157 277/535/99 +f 278/537/148 282/543/142 284/538/158 +f 277/540/143 279/589/181 283/541/160 +f 277/540/143 281/542/144 282/543/142 +f 271/527/161 272/587/167 284/538/158 +f 282/543/162 281/542/182 270/522/163 +f 270/522/163 281/542/182 283/541/160 +f 283/546/160 279/590/181 286/544/92 +f 286/544/92 285/591/92 269/545/146 +f 269/545/146 285/591/92 273/547/152 +f 285/550/165 286/581/166 288/551/166 +f 274/531/154 287/557/93 272/553/167 +f 273/556/156 285/550/165 287/552/165 +f 288/558/93 280/534/159 284/538/158 +f 284/538/158 272/553/167 288/558/93 +f 291/494/114 294/584/121 254/508/168 +f 302/407/169 301/446/169 297/445/170 +f 295/448/171 299/404/172 300/559/172 +f 306/406/173 305/402/173 301/446/169 +f 299/404/172 303/403/174 304/561/174 +f 303/403/174 307/447/175 308/562/175 +f 308/563/176 307/592/176 305/402/173 +f 233/376/90 236/375/90 289/501/114 +f 318/564/99 320/567/176 319/565/176 +f 320/567/176 322/593/98 321/568/98 +f 322/569/98 324/572/177 323/570/177 +f 324/572/177 326/574/91 325/573/91 +f 326/574/91 328/576/178 327/575/178 +f 328/576/178 330/578/90 329/577/90 +f 330/578/90 332/580/179 331/579/179 +f 332/580/179 318/564/99 317/566/99 +f 286/581/166 279/588/157 280/534/157 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/henry.png b/src/main/resources/assets/hbm/textures/models/weapons/henry.png index dfc361696e9e40cb3ba2480ee70dd1de2ba81567..d8cd0aa3a17a9d1596e13cc222ff668be5e27d91 100644 GIT binary patch literal 7891 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 delta 2010 zcmV<02POE^J@*fgGk*uJNklzl-EH6vv-7{sRUAsiz3bl?#CcQf+b75t1^2 zDKhnPT$SF>|H2Zso)km4Hi2#O7hG}NR^hlKod1C%3;6?-Vn%baELpN8>xbukU>T2W zX|y}veR@xNmH`NYAc$$O)E$V)JqPYne~-iGH8Zb+lCgV5-IR9ol2@o};#Ws&HJyX`)E6s(=3GJ?gJB`I@Hd@0+kbXeokp zWr~IK5vN+e7_q7X8!JTP_2$sKQmYu6$d2`TJ-W{O55wnOMdK?@Q+ve-H6mx>gNkXX zF~Ty5HMBTgKJ%QZP$^K~tIRnM8k(ugqbhTX(&aPHS*(k+peA9?z0xyRHd8h(fa*hr z3X%q>)PE}Do5+Vy7Bg2;TUGwF`;qv!bo@d-V;ENupe8LUA@Ozzi(Hg1REUz!X7G3{txQ zb5Jz^3=z4QSNv_@;(jo;a+>+R? z#(&~x0r2puPRE_f6U;GIV*-xSgQQTLgH;{kC3N#QUn;ZXS65dY0N~-_!D?~Ux+)j0 zfrDV|^-E{p024o{`{IL3|F5sF`StZR7Xpky1z;B)2RP-Ta{%6C5XI-Xyt#B2z?Ic% z6|AiyebC$~$pzTpr~BcB@2QL80RSE!AAbQLtN?8|36x12JTL%;iFdzi+qQEjX^z%Z zP?A_fA%q-)3;QJp7yx6L?kBq2?RW{dJ}<#n6~yvG7d6BSk>+es0hVJ`udc4RE>b5S z)Iupj1t?dnLWEVL?O{d(J7@{MHK)2iNq|AIG zEV;P=AuMQCQLU@Ur)~jWN)#UwSAVhY8(`u|e5QQR-X8XK&7nD_-pR*DlKG%>;bMt( zA`@j~#rw?e0@Q~6=wYEg=#WTl7EnG z>h1}|;rG8Q?*;EXEhurG>>FSvi@I-s!B}hi5xx6V0q8eEFl~-7WW9WEVso*UE`2hw z)Xl>}a!gnW!{=x^a}s*}@n1kVY)gW0dpc(DB?CALbncB1h%+UW1tkb4lzC22Z~alv zUvj;{lZ1=#0uXL{#{v>4F@GN>3n~x&AO9I_VzfYq{J-3z_|l(7JU7924l(Y-C_cnS3F?-8F;TZ_5nN`HR6&?o^gT&L z`9vGyrz~@Y!jy-2iE;ZujE5{Jku|LT%FhpLUUzc@)f_-Uh}5g8kbe(aF0)zCy~n=g z1R-Gj#?OkdJG}+n119x5WlZ^p-*K{_xl^e(JcU9$`5_mP5@j-L6fcW2$Kn1RrtSe@ zqY}4{dcZrkpT72Pk04HXNAaq_f4Zx+*QFflf2sA0U^EY!KeI*gn+*NWOC(X2hW8MU zugp74>@)O1Wxtbr(0}|1K2a|xh4?(fF(hy5PfMMbNWv_MS)+JaoGFLv~S|dVT8Brb=;)|9ok~q#mq(gnEZ-5U8kwjWPjK2kLnrq~5fu|0V#ISDU ziKTw1ju5lb&^#znB1|{L1AH1-Jza#Oef=uRn#X{8**DbV$$6Vz#hNa9=u)-N%2B=7r=LXmtKP>@6v38mW+ sSwQJ_M3Im{iL9Y?J0feyf)ZKtKi5`cCzC0qT>t<807*qoM6N<$g7w144*&oF From 591864a4063e48138e07301f9f6715ac9640bef3 Mon Sep 17 00:00:00 2001 From: abel1502 Date: Thu, 3 Oct 2024 13:56:33 +0300 Subject: [PATCH 46/63] Quick way to solve #1713 --- .../hbm/inventory/recipes/SILEXRecipes.java | 29 ++++++++++++++++++- 1 file changed, 28 insertions(+), 1 deletion(-) diff --git a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java index 5858ff359..2c58d6850 100644 --- a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java @@ -15,11 +15,13 @@ import com.hbm.items.ItemEnums.EnumAshType; import com.hbm.items.machine.ItemFELCrystal.EnumWavelengths; import com.hbm.items.special.ItemWasteLong; import com.hbm.items.special.ItemWasteShort; +import com.hbm.util.ItemStackUtil; import com.hbm.util.WeightedRandomObject; import net.minecraft.init.Blocks; import net.minecraft.init.Items; import net.minecraft.item.ItemStack; +import net.minecraft.item.Item; import net.minecraftforge.oredict.OreDictionary; public class SILEXRecipes { @@ -642,6 +644,15 @@ public class SILEXRecipes { recipes.put(new ComparableStack(ModItems.fluid_icon, 1, Fluids.FULLERENE.getID()), new SILEXRecipe(1_000, 1_000, EnumWavelengths.UV).addOut(DictFrame.fromOne(ModItems.powder_ash, EnumAshType.FULLERENE), 1)); } + + private static final HashMap tinyWasteTranslation = new HashMap(); + + static { + tinyWasteTranslation.put(ModItems.nuclear_waste_short_tiny, ModItems.nuclear_waste_short); + tinyWasteTranslation.put(ModItems.nuclear_waste_long_tiny, ModItems.nuclear_waste_long); + tinyWasteTranslation.put(ModItems.nuclear_waste_short_depleted_tiny, ModItems.nuclear_waste_short_depleted); + tinyWasteTranslation.put(ModItems.nuclear_waste_long_depleted_tiny, ModItems.nuclear_waste_long_depleted); + } public static SILEXRecipe getOutput(ItemStack stack) { @@ -656,11 +667,27 @@ public class SILEXRecipes { String[] dictKeys = comp.getDictKeys(); for(String key : dictKeys) { - String translation = translateDict(key); if(recipes.containsKey(translation)) return recipes.get(translation); } + + if(tinyWasteTranslation.containsKey(comp.item)) { + SILEXRecipe result = getOutput(new ItemStack(tinyWasteTranslation.get(comp.item), comp.stacksize, comp.meta)); + + if(result != null) { + // This way it rounds down if somehow the recipe's fluid produced is not divisible by 900 + int fluidProduced = (result.fluidProduced / 900) * 100; + SILEXRecipe tinyVersion = new SILEXRecipe(fluidProduced, result.fluidConsumed, result.laserStrength); + // Shared ownership shouldn't be an issue since the resulting recipe isn't modified by the caller + tinyVersion.outputs = result.outputs; + + // TODO: Cache? Might break saving recipes, IDK + // recipes.put(comp, tinyVersion); + + return tinyVersion; + } + } return null; } From c8d40f0d357549643b98fe1fc7c252d8b73c1c9d Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 3 Oct 2024 16:28:15 +0200 Subject: [PATCH 47/63] offsets and casing ejection sillies --- .../blocks/machine/rbmk/RBMKCraneConsole.java | 1 - .../recipes/RotaryFurnaceRecipes.java | 2 +- .../com/hbm/items/weapon/sedna/GunConfig.java | 1 + .../com/hbm/items/weapon/sedna/Receiver.java | 51 ++++++------ .../weapon/sedna/factory/GunFactory.java | 13 +-- .../weapon/sedna/factory/GunStateDecider.java | 2 + .../hbm/items/weapon/sedna/factory/Lego.java | 14 +++- .../weapon/sedna/factory/Orchestras.java | 20 +++-- .../weapon/sedna/factory/XFactory357.java | 1 + .../weapon/sedna/factory/XFactory44.java | 34 +++++--- .../items/weapon/sedna/mags/IMagazine.java | 4 + .../sedna/mags/MagazineSingleReload.java | 74 ++++++++++++++++++ .../sedna/mags/MagazineSingleTypeBase.java | 6 ++ src/main/java/com/hbm/main/ClientProxy.java | 4 +- .../com/hbm/particle/ParticleSpentCasing.java | 60 +++++++------- .../hbm/particle/helper/CasingCreator.java | 65 +++++++++++++++ .../com/hbm/render/anim/HbmAnimations.java | 4 +- .../item/weapon/sedna/ItemRenderHenry.java | 7 ++ .../machine/rbmk/TileEntityCraneConsole.java | 2 - src/main/resources/assets/hbm/lang/de_DE.lang | 5 ++ src/main/resources/assets/hbm/lang/en_US.lang | 5 ++ .../textures/items/ammo_standard.m44_ap.png | Bin 0 -> 297 bytes .../items/ammo_standard.m44_express.png | Bin 0 -> 302 bytes .../textures/items/ammo_standard.m44_fmj.png | Bin 0 -> 269 bytes .../textures/items/ammo_standard.m44_jhp.png | Bin 0 -> 289 bytes .../textures/items/ammo_standard.m44_sp.png | Bin 0 -> 283 bytes 26 files changed, 285 insertions(+), 90 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java create mode 100644 src/main/java/com/hbm/particle/helper/CasingCreator.java create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m44_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m44_express.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m44_fmj.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m44_jhp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.m44_sp.png diff --git a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java index a996595fe..680856254 100644 --- a/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java +++ b/src/main/java/com/hbm/blocks/machine/rbmk/RBMKCraneConsole.java @@ -5,7 +5,6 @@ import com.hbm.handler.MultiblockHandlerXR; import com.hbm.tileentity.machine.rbmk.TileEntityCraneConsole; import api.hbm.block.IToolable; -import api.hbm.block.IToolable.ToolType; import net.minecraft.block.material.Material; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.tileentity.TileEntity; diff --git a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java index b57b02123..233405e7c 100644 --- a/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/RotaryFurnaceRecipes.java @@ -42,7 +42,7 @@ public class RotaryFurnaceRecipes extends SerializableRecipe { recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(3)), 100, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()))); recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_STEEL, INGOT.q(4)), 200, 100, new OreDictStack(IRON.fragment(), 9), new OreDictStack(ANY_COKE.gem()), new ComparableStack(ModItems.powder_flux))); - recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_DESH, INGOT.q(1)), 100, 200, new FluidStack(Fluids.MERCURY, 100), new ComparableStack(ModItems.powder_desh_mix), new OreDictStack(COAL.dust()))); + recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_DESH, INGOT.q(1)), 100, 200, new FluidStack(Fluids.LIGHTOIL, 100), new ComparableStack(ModItems.powder_desh_ready))); recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_SATURN, INGOT.q(2)), 200, 400, new FluidStack(Fluids.HEATINGOIL, 250), new OreDictStack(DURA.dust(), 2), new OreDictStack(CU.dust()))); recipes.add(new RotaryFurnaceRecipe(new MaterialStack(MAT_GUNMETAL, INGOT.q(4)), 200, 100, new OreDictStack(CU.ingot(), 3), new OreDictStack(AL.ingot(), 1))); diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index 5824c6972..0eb48eab2 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -106,6 +106,7 @@ public class GunConfig { public GunConfig jam(int jam) { this.jamDuration_DNA = jam; return this; } public GunConfig crosshair(Crosshair crosshair) { this.crosshair_DNA = crosshair; return this; } public GunConfig smoke(boolean doesSmoke) { this.doesSmoke_DNA = doesSmoke; return this; } + public GunConfig reloadSequential(boolean flag) { this.reloadAnimationsSequential_DNA = flag; return this; } public GunConfig orchestra(BiConsumer orchestra) { this.orchestra_DNA = orchestra; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 7f20acd99..37ef97cff 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -8,6 +8,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.mags.IMagazine; import net.minecraft.item.ItemStack; +import net.minecraft.util.Vec3; /** * Receivers are the gun's "moving parts", i.e. they determine things like base damage, spread, the ejector and the magazine. Think of this class like the @@ -30,6 +31,7 @@ public class Receiver { public static final String F_FIREVOLUME = "F_FIREVOLUME"; public static final String F_FIREPITCH = "F_FIREPITCH"; public static final String O_MAGAZINE = "O_MAGAZINE"; + public static final String O_PROJECTILEOFFSET = "O_PROJECTILEOFFSET"; public static final String FUN_CANFIRE = "FUN_CANFIRE"; public static final String CON_ONFIRE = "CON_ONFIRE"; public static final String CON_ONRECOIL = "CON_ONRECOIL"; @@ -52,40 +54,43 @@ public class Receiver { protected float fireVolume_DNA = 1.0F; protected float firePitch_DNA = 1.0F; protected IMagazine magazine_DNA; + protected Vec3 projectileOffset_DNA = Vec3.createVectorHelper(0, 0, 0); protected BiFunction canFire_DNA; protected BiConsumer onFire_DNA; protected BiConsumer onRecoil_DNA; /* GETTERS */ - public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } - public int getDelayAfterFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterFire_DNA, stack, I_DELAYAFTERFIRE, this); } - public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } - public float getGunSpread(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } - public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } - public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } - public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } - public boolean getEjectOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejectOnFire_DNA, stack, B_EJECTONFIRE, this); } - public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } - public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } - public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } - public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } - public IMagazine getMagazine(ItemStack stack) { return WeaponUpgradeManager.eval(this.magazine_DNA, stack, O_MAGAZINE, this); } + public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } + public int getDelayAfterFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterFire_DNA, stack, I_DELAYAFTERFIRE, this); } + public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } + public float getGunSpread(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } + public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } + public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } + public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } + public boolean getEjectOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejectOnFire_DNA, stack, B_EJECTONFIRE, this); } + public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } + public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } + public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } + public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } + public IMagazine getMagazine(ItemStack stack) { return WeaponUpgradeManager.eval(this.magazine_DNA, stack, O_MAGAZINE, this); } + public Vec3 getProjectileOffset(ItemStack stack) { return WeaponUpgradeManager.eval(this.projectileOffset_DNA, stack, O_PROJECTILEOFFSET, this); } public BiFunction getCanFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.canFire_DNA, stack, FUN_CANFIRE, this); } public BiConsumer getOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.onFire_DNA, stack, CON_ONFIRE, this); } public BiConsumer getRecoil(ItemStack stack) { return WeaponUpgradeManager.eval(this.onRecoil_DNA, stack, CON_ONRECOIL, this); } /* SETTERS */ - public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } - public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } - public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } - public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } - public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } - public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } - public Receiver ejector(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } - public Receiver ejectOnFire(boolean eject) { this.ejectOnFire_DNA = eject; return this; } - public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } - public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } + public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } + public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } + public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } + public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } + public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } + public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } + public Receiver ejector(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } + public Receiver ejectOnFire(boolean eject) { this.ejectOnFire_DNA = eject; return this; } + public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } + public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } + public Receiver offset(double f, double u, double s) { this.projectileOffset_DNA = Vec3.createVectorHelper(f, u, s); return this; } public Receiver canFire(BiFunction lambda) { this.canFire_DNA = lambda; return this; } public Receiver fire(BiConsumer lambda) { this.onFire_DNA = lambda; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index cb409e93a..9d8270bd9 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -40,6 +40,7 @@ public class GunFactory { .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) .ejector(new CasingEjector().setMotion(0, -0.1, 0).setAngleRange(0.01F, 0.025F)) + .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) @@ -55,14 +56,8 @@ public class GunFactory { } public static enum EnumAmmo { - STONE, - STONE_AP, - STONE_IRON, - STONE_SHOT, - M357_SP, - M357_FMJ, - M357_JHP, - M357_AP, - M357_EXPRESS, + STONE, STONE_AP, STONE_IRON, STONE_SHOT, + M357_SP, M357_FMJ, M357_JHP, M357_AP, M357_EXPRESS, + M44_SP, M44_FMJ, M44_JHP, M44_AP, M44_EXPRESS, } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index 9e798f3c6..a9118a909 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -63,6 +63,7 @@ public class GunStateDecider { if(cfg.getReceivers(stack)[recIndex].getMagazine(stack).canReload(stack, player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); ItemGunBaseNT.setTimer(stack, cfg.getReceivers(stack)[recIndex].getReloadDuration(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_CYCLE); //if no more reloading can be done, go idle } else { @@ -73,6 +74,7 @@ public class GunStateDecider { } else { ItemGunBaseNT.setState(stack, GunState.IDLE); ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END); } } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 60c7a8f0d..6c14fee0f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -18,6 +18,7 @@ import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.util.Vec3; /** * "LEGO" - i.e. standardized building blocks which can be used to set up gun configs easily. @@ -39,11 +40,12 @@ public class Lego { if(state == GunState.IDLE) { ItemGunBaseNT.setIsAiming(stack, false); + IMagazine mag = rec.getMagazine(stack); - if(rec.getMagazine(stack).canReload(stack, ctx.player)) { + if(mag.canReload(stack, ctx.player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); ItemGunBaseNT.setTimer(stack, rec.getReloadDuration(stack)); - ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD); + ItemGunBaseNT.playAnimation(player, stack, mag.getAmount(stack) == 0 ? AnimType.RELOAD_EMPTY : AnimType.RELOAD); } else { ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT); } @@ -104,19 +106,23 @@ public class Lego { EntityPlayer player = ctx.player; ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE); - double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : -0.3125D; float aim = ItemGunBaseNT.getIsAiming(stack) ? 0.25F : 1F; Receiver primary = ctx.config.getReceivers(stack)[0]; IMagazine mag = primary.getMagazine(stack); BulletConfig config = (BulletConfig) mag.getType(stack); + Vec3 offset = primary.getProjectileOffset(stack); + double forwardOffset = offset.xCoord; + double heightOffset = offset.yCoord; + double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : offset.zCoord; + int projectiles = config.projectilesMin; if(config.projectilesMax > config.projectilesMin) projectiles += player.getRNG().nextInt(config.projectilesMax - config.projectilesMin + 1); for(int i = 0; i < projectiles; i++) { float damage = primary.getBaseDamage(stack) * getStandardWearDamage(stack, ctx.config); float spread = primary.getGunSpread(stack) * aim + getStandardWearSpread(stack, ctx.config) * 0.125F; - EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, damage, spread, sideOffset, -0.0625, 0.75); + EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, damage, spread, sideOffset, heightOffset, forwardOffset); player.worldObj.spawnEntityInWorld(mk4); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 837c4576d..e4bade605 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -8,11 +8,16 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.mags.IMagazine; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.helper.CasingCreator; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +/** Orchestras are server-side components that run along client-side animations. + * The orchestra only knows what animation is or was playing and how long it started, but not if it is still active. + * Orchestras are useful for things like playing server-side sound, spawning casings or sending particle packets.*/ public class Orchestras { public static BiConsumer DEBUG_ORCHESTRA = (stack, ctx) -> { @@ -103,26 +108,25 @@ public class Orchestras { EntityPlayer player = ctx.player; AnimType type = ItemGunBaseNT.getLastAnim(stack); int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.RELOAD) { - if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); - if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); - if(timer == 44) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); } if(type == AnimType.CYCLE) { + if(timer == 14) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + casing.setupSmoke(1F, 0.5D, 60, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.5, -0.125, aiming ? -0.125 : -0.375D, 0, 0.12, -0.12, casing.getName()); + } if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } if(type == AnimType.CYCLE_DRY) { if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); - if(timer == 14) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } if(type == AnimType.INSPECT) { - if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); - if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); } if(type == AnimType.JAMMED) { - if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); - if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); } }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index 576c6c481..ca3d174e8 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -38,6 +38,7 @@ public class XFactory357 { .rec(new Receiver(0) .dmg(10F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) + .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration().anim(LAMBDA_ATLAS_ANIMS) ).setUnlocalizedName("gun_atlas").setTextureName(RefStrings.MODID + ":gun_darter"); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java index 865af98ac..5b92fcc77 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java @@ -9,8 +9,10 @@ import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; -import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.items.weapon.sedna.mags.MagazineSingleReload; import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; import com.hbm.render.anim.BusAnimation; import com.hbm.render.anim.BusAnimationSequence; import com.hbm.render.anim.BusAnimationKeyframe.IType; @@ -27,17 +29,24 @@ public class XFactory44 { public static BulletConfig m44_express; public static void init() { - m44_sp = new BulletConfig().setItem(EnumAmmo.M357_SP); - m44_fmj = new BulletConfig().setItem(EnumAmmo.M357_FMJ).setDamage(0.8F).setArmorPiercing(0.1F); - m44_jhp = new BulletConfig().setItem(EnumAmmo.M357_JHP).setDamage(1.5F).setArmorPiercing(-0.25F); - m44_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F); - m44_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F); + SpentCasing casing44 = new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS).setupSmoke(1F, 0.5D, 60, 20); + m44_sp = new BulletConfig().setItem(EnumAmmo.M44_SP) + .setCasing(casing44.clone().register("m44")); + m44_fmj = new BulletConfig().setItem(EnumAmmo.M44_FMJ).setDamage(0.8F).setArmorPiercing(0.1F) + .setCasing(casing44.clone().register("m44fmj")); + m44_jhp = new BulletConfig().setItem(EnumAmmo.M44_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) + .setCasing(casing44.clone().register("m44jhp")); + m44_ap = new BulletConfig().setItem(EnumAmmo.M44_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F) + .setCasing(casing44.clone().setColor(SpentCasing.COLOR_CASE_44).register("m44ap")); + m44_express = new BulletConfig().setItem(EnumAmmo.M44_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F) + .setCasing(casing44.clone().register("m44express")); ModItems.gun_henry = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(15).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_HENRY) + .dura(300).draw(15).inspect(23).jam(45).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_HENRY) .rec(new Receiver(0) - .dmg(12F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) - .mag(new MagazineFullReload(0, 6).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) + .dmg(12F).delay(16).reload(10).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 14).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) + .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration().anim(LAMBDA_HENRY_ANIMS) ).setUnlocalizedName("gun_henry").setTextureName(RefStrings.MODID + ":gun_darter"); @@ -54,8 +63,13 @@ public class XFactory44 { .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); - case CYCLE_DRY: return new BusAnimation(); + case CYCLE_DRY: return new BusAnimation() + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); case RELOAD: return new BusAnimation(); + case RELOAD_CYCLE: return new BusAnimation(); + case RELOAD_END: return new BusAnimation(); case INSPECT: return new BusAnimation(); case JAMMED: return new BusAnimation(); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java index b875e1ee5..4550b63b8 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java @@ -1,5 +1,7 @@ package com.hbm.items.weapon.sedna.mags; +import com.hbm.particle.SpentCasing; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; @@ -29,4 +31,6 @@ public interface IMagazine { public ItemStack getIconForHUD(ItemStack stack); /** It explains itself */ public String reportAmmoStateForHUD(ItemStack stack); + /** Casing config to use then ejecting */ + public SpentCasing getCasing(ItemStack stack); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java new file mode 100644 index 000000000..f1ea92846 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java @@ -0,0 +1,74 @@ +package com.hbm.items.weapon.sedna.mags; + +import com.hbm.items.weapon.sedna.BulletConfig; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; + +/** Uses individual bullets which are loaded all at once */ +public class MagazineSingleReload extends MagazineSingleTypeBase { + + public MagazineSingleReload(int index, int capacity) { + super(index, capacity); + } + + /** Returns true if the player has the same ammo if partially loaded, or any valid ammo if not */ + @Override + public boolean canReload(ItemStack stack, EntityPlayer player) { + + if(this.getAmount(stack) >= this.getCapacity(stack)) return false; + + for(ItemStack slot : player.inventory.mainInventory) { + + if(slot != null) { + if(this.getAmount(stack) == 0) { + for(BulletConfig config : this.acceptedBullets) { + if(config.ammo.matchesRecipe(slot, true)) return true; + } + } else { + BulletConfig config = this.getType(stack); + if(config == null) { config = this.acceptedBullets.get(0); this.setType(stack, config); } + if(config.ammo.matchesRecipe(slot, true)) return true; + } + } + } + + return false; + } + + /** Reloads all rounds at once. If the mag is empty, the mag's type will change to the first valid ammo type */ + @Override + public void reloadAction(ItemStack stack, EntityPlayer player) { + + for(int i = 0; i < player.inventory.mainInventory.length; i++) { + ItemStack slot = player.inventory.mainInventory[i]; + + if(slot != null) { + + //mag is empty, assume next best type + if(this.getAmount(stack) == 0) { + + for(BulletConfig config : this.acceptedBullets) { + if(config.ammo.matchesRecipe(slot, true)) { + this.setType(stack, config); + this.setAmount(stack, 1); + player.inventory.decrStackSize(i, 1); + return; + } + } + //mag has a type set, only load that + } else { + BulletConfig config = this.getType(stack); + if(config == null) { config = this.acceptedBullets.get(0); this.setType(stack, config); } //fixing broken NBT + + if(config.ammo.matchesRecipe(slot, true)) { + int alreadyLoaded = this.getAmount(stack); + this.setAmount(stack, alreadyLoaded + 1); + player.inventory.decrStackSize(i, 1); + return; + } + } + } + } + } +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java index 2b86530b7..e88b5337e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java @@ -5,6 +5,7 @@ import java.util.List; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.particle.SpentCasing; import net.minecraft.item.ItemStack; @@ -57,6 +58,11 @@ public abstract class MagazineSingleTypeBase implements IMagazine return getAmount(stack) + " / " + getCapacity(stack); } + @Override + public SpentCasing getCasing(ItemStack stack) { + return this.getType(stack).casing; + } + @Override public int getCapacity(ItemStack stack) { return capacity; } @Override public int getAmount(ItemStack stack) { return getMagCount(stack, index); } @Override public void setAmount(ItemStack stack, int amount) { setMagCount(stack, index, amount); } diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index bd2e4a3d4..ee491b259 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -89,8 +89,7 @@ import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.factory.GunFactoryClient; import com.hbm.lib.RefStrings; import com.hbm.particle.*; -import com.hbm.particle.helper.ExplosionCreator; -import com.hbm.particle.helper.IParticleCreator; +import com.hbm.particle.helper.*; import com.hbm.particle.psys.engine.EventHandlerParticleEngine; import com.hbm.render.anim.*; import com.hbm.render.anim.HbmAnimations.Animation; @@ -989,6 +988,7 @@ public class ClientProxy extends ServerProxy { static { particleCreators.put("explosionLarge", new ExplosionCreator()); + particleCreators.put("casingNT", new CasingCreator()); } //mk3, only use this one diff --git a/src/main/java/com/hbm/particle/ParticleSpentCasing.java b/src/main/java/com/hbm/particle/ParticleSpentCasing.java index 59e6ae201..b50f9f184 100644 --- a/src/main/java/com/hbm/particle/ParticleSpentCasing.java +++ b/src/main/java/com/hbm/particle/ParticleSpentCasing.java @@ -42,8 +42,6 @@ public class ParticleSpentCasing extends EntityFX { private boolean isSmoking; private float momentumPitch, momentumYaw; - private boolean onGroundPreviously = false; - private double maxHeight; public ParticleSpentCasing(TextureManager textureManager, World world, double x, double y, double z, double mx, double my, double mz, float momentumPitch, float momentumYaw, SpentCasing config) { super(world, x, y, z, 0, 0, 0); @@ -66,9 +64,7 @@ public class ParticleSpentCasing extends EntityFX { this.motionY = my; this.motionZ = mz; - particleGravity = 8F; - - maxHeight = y; + particleGravity = 1F; } @Override @@ -78,24 +74,34 @@ public class ParticleSpentCasing extends EntityFX { @Override public void onUpdate() { - super.onUpdate(); + + this.prevPosX = this.posX; + this.prevPosY = this.posY; + this.prevPosZ = this.posZ; - if(motionY > 0 && posY > maxHeight) - maxHeight = posY; + if(this.particleAge++ >= this.particleMaxAge) { + this.setDead(); + } - if(!onGroundPreviously && onGround) - tryPlayBounceSound(); + this.motionY -= 0.04D * (double) this.particleGravity; + double prevMotionY = this.motionY; + this.moveEntity(this.motionX, this.motionY, this.motionZ); + this.motionX *= 0.98D; + this.motionY *= 0.98D; + this.motionZ *= 0.98D; - if(!onGroundPreviously && onGround) { + if(this.onGround) { + this.motionX *= 0.7D; + this.motionZ *= 0.7D; + } + + if(onGround) { + this.onGround = false; + motionY = prevMotionY * -0.5; + this.rotationPitch = 0; + //momentumPitch = (float) rand.nextGaussian() * config.getBouncePitch(); + //momentumYaw = (float) rand.nextGaussian() * config.getBounceYaw(); - onGroundPreviously = true; - motionY = Math.log10(maxHeight - posY + 2); - momentumPitch = (float) rand.nextGaussian() * config.getBouncePitch(); - momentumYaw = (float) rand.nextGaussian() * config.getBounceYaw(); - maxHeight = posY; - - } else if(onGroundPreviously && !onGround) { - onGroundPreviously = false; } if(particleAge > maxSmokeGen && !smokeNodes.isEmpty()) @@ -193,8 +199,6 @@ public class ParticleSpentCasing extends EntityFX { GL11.glPushMatrix(); GL11.glTranslated(pX - dX, pY - dY - this.height / 4, pZ - dZ); - //GL11.glScalef(dScale, dScale, dScale); - //GL11.glScalef(config.getScaleX(), config.getScaleY(), config.getScaleZ()); if(!smokeNodes.isEmpty()) { tessellator.startDrawingQuads(); @@ -271,17 +275,17 @@ public class ParticleSpentCasing extends EntityFX { @Override @SideOnly(Side.CLIENT) public int getBrightnessForRender(float p_70070_1_) { - int i = MathHelper.floor_double(this.posX); - int j = MathHelper.floor_double(this.posZ); + int x = MathHelper.floor_double(this.posX); + int z = MathHelper.floor_double(this.posZ); - if(this.worldObj.blockExists(i, 0, j)) { + if(this.worldObj.blockExists(x, 0, z)) { double d0 = (this.boundingBox.maxY - this.boundingBox.minY) * 0.66D; - int k = MathHelper.floor_double(this.posY - (double) this.yOffset + d0); - return this.worldObj.getLightBrightnessForSkyBlocks(i, k, j, 0); + int y = MathHelper.floor_double(this.posY - (double) this.yOffset + d0); + return this.worldObj.getLightBrightnessForSkyBlocks(x, y, z, 0); } else { return 0; - } - } + } + } private void tryPlayBounceSound() { diff --git a/src/main/java/com/hbm/particle/helper/CasingCreator.java b/src/main/java/com/hbm/particle/helper/CasingCreator.java new file mode 100644 index 000000000..0eaa84196 --- /dev/null +++ b/src/main/java/com/hbm/particle/helper/CasingCreator.java @@ -0,0 +1,65 @@ +package com.hbm.particle.helper; + +import java.util.Random; + +import com.hbm.particle.ParticleSpentCasing; +import com.hbm.particle.SpentCasing; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.Vec3; +import net.minecraft.world.World; + +public class CasingCreator implements IParticleCreator { + + public static void composeEffect(World world, EntityPlayer player, double frontOffset, double heightOffset, double sideOffset, double frontMotion, double heightMotion, double sideMotion, String casing) { + + if(player.isSneaking()) heightOffset -= 0.075F; + + Vec3 offset = Vec3.createVectorHelper(sideOffset, heightOffset, frontOffset); + offset.rotateAroundX(-player.rotationPitch / 180F * (float) Math.PI); + offset.rotateAroundY(-player.rotationYaw / 180F * (float) Math.PI); + + double x = player.posX + offset.xCoord; + double y = player.posY + player.getEyeHeight() + offset.yCoord; + double z = player.posZ + offset.zCoord; + + Vec3 motion = Vec3.createVectorHelper(sideMotion, heightMotion, frontMotion); + motion.rotateAroundX(-player.rotationPitch / 180F * (float) Math.PI); + motion.rotateAroundY(-player.rotationYaw / 180F * (float) Math.PI); + + double mX = player.motionX + motion.xCoord; + double mY = player.motionY + motion.yCoord; + double mZ = player.motionZ + motion.zCoord; + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "casingNT"); + data.setDouble("mX", mX); + data.setDouble("mY", mY); + data.setDouble("mZ", mZ); + data.setFloat("yaw", player.rotationYaw); + data.setFloat("pitch", player.rotationPitch); + data.setString("name", casing); + + IParticleCreator.sendPacket(world, x, y, z, 50, data); + } + + @Override + public void makeParticle(World world, EntityPlayer player, TextureManager texman, Random rand, double x, double y, double z, NBTTagCompound data) { + + String name = data.getString("name"); + SpentCasing casingConfig = SpentCasing.casingMap.get(name); + double mX = data.getDouble("mX"); + double mY = data.getDouble("mY"); + double mZ = data.getDouble("mZ"); + float yaw = data.getFloat("yaw"); + float pitch = data.getFloat("pitch"); + ParticleSpentCasing casing = new ParticleSpentCasing(texman, world, x, y, z, mX, mY, mZ, 0, 0, casingConfig); + casing.prevRotationYaw = casing.rotationYaw = yaw; + casing.prevRotationPitch = casing.rotationPitch = pitch; + Minecraft.getMinecraft().effectRenderer.addEffect(casing); + } + +} diff --git a/src/main/java/com/hbm/render/anim/HbmAnimations.java b/src/main/java/com/hbm/render/anim/HbmAnimations.java index b7a26823c..6dd55dd68 100644 --- a/src/main/java/com/hbm/render/anim/HbmAnimations.java +++ b/src/main/java/com/hbm/render/anim/HbmAnimations.java @@ -18,8 +18,8 @@ public class HbmAnimations { public static final Animation[] hotbar = new Animation[9]; public static enum AnimType { - RELOAD, //animation for reloading the weapon - RELOAD_EMPTY, //animation for reloading from empty + RELOAD, //either a full reload or start of a reload + RELOAD_EMPTY, //same as reload, but the mag is completely empty RELOAD_CYCLE, //animation that plays for every individual round (for shotguns and similar single round loading weapons) RELOAD_END, //animation for transitioning from our RELOAD_CYCLE to idle CYCLE, //animation for every firing cycle diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java index 0a2ddb99d..1bdb30483 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java @@ -53,6 +53,13 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { GL11.glRotated(equip[0], -1, 0, 0); GL11.glTranslated(0, -2, 4); + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(turn[2], 0, 0, -1); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.25D); + GL11.glPopMatrix(); + ResourceManager.henry.renderPart("Gun"); GL11.glPushMatrix(); diff --git a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java index c98c229ae..a71c407b5 100644 --- a/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java +++ b/src/main/java/com/hbm/tileentity/machine/rbmk/TileEntityCraneConsole.java @@ -28,8 +28,6 @@ import net.minecraftforge.common.util.ForgeDirection; import java.util.List; -import org.lwjgl.opengl.GL11; - @Optional.InterfaceList({@Optional.Interface(iface = "li.cil.oc.api.network.SimpleComponent", modid = "OpenComputers")}) public class TileEntityCraneConsole extends TileEntity implements INBTPacketReceiver, SimpleComponent, CompatHandler.OCComponent { diff --git a/src/main/resources/assets/hbm/lang/de_DE.lang b/src/main/resources/assets/hbm/lang/de_DE.lang index 93614bfdc..5e0a7bdbe 100644 --- a/src/main/resources/assets/hbm/lang/de_DE.lang +++ b/src/main/resources/assets/hbm/lang/de_DE.lang @@ -1153,6 +1153,11 @@ item.ammo_standard.m357_express.name=.357 Magnumkugel (VMG Express) item.ammo_standard.m357_fmj.name=.357 Magnumkugel (Vollmantelgeschoss) item.ammo_standard.m357_jhp.name=.357 Magnumkugel (Hohlspitz) item.ammo_standard.m357_sp.name=.357 Magnumkugel (Teilmantelgeschoss) +item.ammo_standard.m44_ap.name=.44 Magnumkugel (Panzerbrechend) +item.ammo_standard.m44_express.name=.44 Magnumkugel (VMG Express) +item.ammo_standard.m44_fmj.name=.44 Magnumkugel (Vollmantelgeschoss) +item.ammo_standard.m44_jhp.name=.44 Magnumkugel (Hohlspitz) +item.ammo_standard.m44_sp.name=.44 Magnumkugel (Teilmantelgeschoss) item.ammo_standard.stone.name=Kugel und Pulver item.ammo_standard.stone_ap.name=Feuerstein und Pulver item.ammo_standard.stone_iron.name=Eisenkugel und Pulver diff --git a/src/main/resources/assets/hbm/lang/en_US.lang b/src/main/resources/assets/hbm/lang/en_US.lang index 3777b2108..e5c7acb68 100644 --- a/src/main/resources/assets/hbm/lang/en_US.lang +++ b/src/main/resources/assets/hbm/lang/en_US.lang @@ -1876,6 +1876,11 @@ item.ammo_standard.m357_express.name=.357 Magnum Round (FMJ Express) item.ammo_standard.m357_fmj.name=.357 Magnum Round (Full Metal Jacket) item.ammo_standard.m357_jhp.name=.357 Magnum Round (Jacketed Hollow Point) item.ammo_standard.m357_sp.name=.357 Magnum Round (Soft Point) +item.ammo_standard.m44_ap.name=.44 Magnum Round (Armor Piercing) +item.ammo_standard.m44_express.name=.44 Magnum Round (FMJ Express) +item.ammo_standard.m44_fmj.name=.44 Magnum Round (Full Metal Jacket) +item.ammo_standard.m44_jhp.name=.44 Magnum Round (Jacketed Hollow Point) +item.ammo_standard.m44_sp.name=.44 Magnum Round (Soft Point) item.ammo_standard.stone.name=Ball and Powder item.ammo_standard.stone_ap.name=Flint and Powder item.ammo_standard.stone_iron.name=Iron Ball and Powder diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m44_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m44_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..dc528cbf0c5759fd55ead968f85aef976847a071 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfWMO_lg=tEvWv35Q_Jqg;zQ9mF`L}6h<^B!pU01)p t<;-z!+uC-4YwQ0=M8?{<)y3L~&u5xFVQ)rUQyI{&44$rjF6*2UngFfoc(nik literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.m44_express.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.m44_express.png new file mode 100644 index 0000000000000000000000000000000000000000..e838655760ee76ffd09c0921de32347a5b6c1b19 GIT binary patch literal 302 zcmV+}0nz@6P)6h===*bkVfknV=6l=Kutd=lN`iU=Cod zm2-}!X^5hTFbt_T!JwJ|pe)N7pg4~4-m|=X=IU-i&6}-l%> zt?EsnwlXTx5hZK7k|OOSqu}rBOoIE8$?#9}1)Kd8DS*$9=_I>0igIpAHGv4GiO_cXJr-Z0rzQRQ+TT zvvmAX9~bLMh7xbe_gBc<{WyDilaKf83@Pj93@ibmp$6<6jBB55|a`V5-ch{C@6nFDa)h(?oN8e_gC7@ZC{<)O#OKm@gzDu+f)5@s-w#vy=K3O zrp&W{W-a1rl-}^*V!E5)$K57VgoN7r-Df>|7=1tjc2zla?EKO*v9a;t{@smAhflBnFL7wApYe*yEQ6S|9UtSj|KyLG zZlG8kSNHe$gEM7w9G9P%)p)kX^oW2`?4bidu)%)P!~d66lm6GsUH Date: Thu, 3 Oct 2024 21:29:20 +0200 Subject: [PATCH 48/63] :b:enry --- .../java/com/hbm/crafting/WeaponRecipes.java | 1 + src/main/java/com/hbm/items/ModItems.java | 2 + .../hbm/items/special/ItemBedrockOreBase.java | 2 +- .../com/hbm/items/weapon/sedna/Receiver.java | 57 +- .../weapon/sedna/factory/GunFactory.java | 2 + .../sedna/factory/GunFactoryClient.java | 8 + .../weapon/sedna/factory/GunStateDecider.java | 6 +- .../hbm/items/weapon/sedna/factory/Lego.java | 2 +- .../weapon/sedna/factory/Orchestras.java | 26 +- .../weapon/sedna/factory/XFactory44.java | 28 +- .../weapon/sedna/factory/XFactory9mm.java | 64 + .../java/com/hbm/main/ResourceManager.java | 2 + .../weapon/sedna/ItemRenderGreasegun.java | 77 + .../item/weapon/sedna/ItemRenderHenry.java | 30 +- .../assets/hbm/models/weapons/greasegun.obj | 6117 +++++++++-------- .../textures/items/ammo_standard.p9_ap.png | Bin 0 -> 237 bytes .../textures/items/ammo_standard.p9_fmj.png | Bin 0 -> 241 bytes .../textures/items/ammo_standard.p9_jhp.png | Bin 0 -> 251 bytes .../textures/items/ammo_standard.p9_sp.png | Bin 0 -> 248 bytes .../hbm/textures/models/weapons/henry.png | Bin 7891 -> 7907 bytes 20 files changed, 3352 insertions(+), 3072 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p9_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p9_fmj.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p9_jhp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p9_sp.png diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 801ecc8cd..625c587fd 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -36,6 +36,7 @@ public class WeaponRecipes { //SEDNA Guns CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_pepperbox, 1), new Object[] { "IIW", " C", 'I', IRON.ingot(), 'W', KEY_PLANKS, 'C', CU.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_atlas, 1), new Object[] { "BRM", " G", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_henry, 1), new Object[] { "BRP", "BMS", 'B', STEEL.lightBarrel(), 'R', GUNMETAL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'S', WOOD.stock(), 'P', GUNMETAL.plate() }); //SEDNA Ammo CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE, 6), new Object[] { "C", "P", "G", 'C', KEY_COBBLESTONE, 'P', Items.paper, 'G', Items.gunpowder }); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 049387b6d..d98aa51c9 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1626,6 +1626,7 @@ public class ModItems { public static Item gun_pepperbox; public static Item gun_atlas; public static Item gun_henry; + public static Item gun_greasegun; public static Item ammo_standard; @@ -7036,6 +7037,7 @@ public class ModItems { GameRegistry.registerItem(gun_pepperbox, gun_pepperbox.getUnlocalizedName()); GameRegistry.registerItem(gun_atlas, gun_atlas.getUnlocalizedName()); GameRegistry.registerItem(gun_henry, gun_henry.getUnlocalizedName()); + GameRegistry.registerItem(gun_greasegun, gun_greasegun.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java b/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java index a20220d8e..4204013b5 100644 --- a/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java +++ b/src/main/java/com/hbm/items/special/ItemBedrockOreBase.java @@ -38,7 +38,7 @@ public class ItemBedrockOreBase extends Item { for(BedrockOreType type : BedrockOreType.values()) { double amount = this.getOreAmount(stack, type); String typeName = StatCollector.translateToLocalFormatted("item.bedrock_ore.type." + type.suffix + ".name"); - list.add(typeName + ": " + ((int) (amount * 100)) / 100D + " (" + ItemOreDensityScanner.translateDensity(amount) + EnumChatFormatting.RESET + ")"); + list.add(typeName + ": " + ((int) (amount * 100)) / 100D + " (" + StatCollector.translateToLocalFormatted(ItemOreDensityScanner.translateDensity(amount)) + EnumChatFormatting.RESET + ")"); } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index 37ef97cff..e4fee17ea 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -18,23 +18,25 @@ import net.minecraft.util.Vec3; */ public class Receiver { - public static final String F_BASEDAMAGE = "F_BASEDAMAGE"; - public static final String I_DELAYAFTERFIRE = "I_DELAYAFTERFIRE"; - public static final String I_ROUNDSPERCYCLE = "I_ROUNDSPERCYCLE"; - public static final String F_SPREADMOD = "F_SPREADMOD"; - public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; - public static final String B_DOESDRYFIRE = "B_DOESDRYFIRE"; - public static final String O_EJECTOR = "O_EJECTOR"; - public static final String B_EJECTONFIRE = "B_EJECTONFIRE"; - public static final String I_RELOADDURATION = "I_RELOADDURATION"; - public static final String S_FIRESOUND = "S_FIRESOUND"; - public static final String F_FIREVOLUME = "F_FIREVOLUME"; - public static final String F_FIREPITCH = "F_FIREPITCH"; - public static final String O_MAGAZINE = "O_MAGAZINE"; - public static final String O_PROJECTILEOFFSET = "O_PROJECTILEOFFSET"; - public static final String FUN_CANFIRE = "FUN_CANFIRE"; - public static final String CON_ONFIRE = "CON_ONFIRE"; - public static final String CON_ONRECOIL = "CON_ONRECOIL"; + public static final String F_BASEDAMAGE = "F_BASEDAMAGE"; + public static final String I_DELAYAFTERFIRE = "I_DELAYAFTERFIRE"; + public static final String I_ROUNDSPERCYCLE = "I_ROUNDSPERCYCLE"; + public static final String F_SPREADMOD = "F_SPREADMOD"; + public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; + public static final String B_DOESDRYFIRE = "B_DOESDRYFIRE"; + public static final String O_EJECTOR = "O_EJECTOR"; + public static final String B_EJECTONFIRE = "B_EJECTONFIRE"; + public static final String I_RELOADBEGINDURATION = "I_RELOADBEGINDURATION"; + public static final String I_RELOADCYCLEDURATION = "I_RELOADCYCLEDURATION"; + public static final String I_RELOADENDDURATION = "I_RELOADENDDURATION"; + public static final String S_FIRESOUND = "S_FIRESOUND"; + public static final String F_FIREVOLUME = "F_FIREVOLUME"; + public static final String F_FIREPITCH = "F_FIREPITCH"; + public static final String O_MAGAZINE = "O_MAGAZINE"; + public static final String O_PROJECTILEOFFSET = "O_PROJECTILEOFFSET"; + public static final String FUN_CANFIRE = "FUN_CANFIRE"; + public static final String CON_ONFIRE = "CON_ONFIRE"; + public static final String CON_ONRECOIL = "CON_ONRECOIL"; public Receiver(int index) { this.index = index; @@ -49,7 +51,9 @@ public class Receiver { protected boolean doesDryFire_DNA = true; protected CasingEjector ejector_DNA = null; protected boolean ejectOnFire_DNA = true; - protected int reloadDuration_DNA; + protected int reloadBeginDuration_DNA; + protected int reloadCycleDuration_DNA; + protected int reloadEndDuration_DNA; protected String fireSound_DNA; protected float fireVolume_DNA = 1.0F; protected float firePitch_DNA = 1.0F; @@ -68,7 +72,9 @@ public class Receiver { public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } public boolean getEjectOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejectOnFire_DNA, stack, B_EJECTONFIRE, this); } - public int getReloadDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadDuration_DNA, stack, I_RELOADDURATION, this); } + public int getReloadBeginDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadBeginDuration_DNA, stack, I_RELOADBEGINDURATION, this); } + public int getReloadCycleDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadCycleDuration_DNA, stack, I_RELOADCYCLEDURATION, this); } + public int getReloadEndDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadEndDuration_DNA, stack, I_RELOADENDDURATION, this); } public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } @@ -83,15 +89,24 @@ public class Receiver { public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } - public Receiver spread(int spread) { this.spreadModExtra_DNA = spread; return this; } + public Receiver spread(float spread) { this.spreadModExtra_DNA = spread; return this; } public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } public Receiver ejector(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } public Receiver ejectOnFire(boolean eject) { this.ejectOnFire_DNA = eject; return this; } - public Receiver reload(int delay) { this.reloadDuration_DNA = delay; return this; } public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } public Receiver offset(double f, double u, double s) { this.projectileOffset_DNA = Vec3.createVectorHelper(f, u, s); return this; } + public Receiver reload(int delay) { + return reload(delay, delay, 0); + } + public Receiver reload(int a, int b, int c) { + this.reloadBeginDuration_DNA = a; + this.reloadCycleDuration_DNA = b; + this.reloadEndDuration_DNA = c; + return this; + } + public Receiver canFire(BiFunction lambda) { this.canFire_DNA = lambda; return this; } public Receiver fire(BiConsumer lambda) { this.onFire_DNA = lambda; return this; } public Receiver recoil(BiConsumer lambda) { this.onRecoil_DNA = lambda; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 9d8270bd9..6654f7148 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -50,6 +50,7 @@ public class GunFactory { XFactoryBlackPowder.init(); XFactory357.init(); XFactory44.init(); + XFactory9mm.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); @@ -59,5 +60,6 @@ public class GunFactory { STONE, STONE_AP, STONE_IRON, STONE_SHOT, M357_SP, M357_FMJ, M357_JHP, M357_AP, M357_EXPRESS, M44_SP, M44_FMJ, M44_JHP, M44_AP, M44_EXPRESS, + P9_SP, P9_FMJ, P9_JHP, P9_AP, } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 6c5ba0788..4d88861cb 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -3,6 +3,7 @@ package com.hbm.items.weapon.sedna.factory; import static com.hbm.items.weapon.sedna.factory.GunFactory.*; import static com.hbm.items.weapon.sedna.factory.XFactory357.*; import static com.hbm.items.weapon.sedna.factory.XFactory44.*; +import static com.hbm.items.weapon.sedna.factory.XFactory9mm.*; import java.util.function.BiConsumer; @@ -13,6 +14,7 @@ import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.render.item.weapon.sedna.ItemRenderAtlas; import com.hbm.render.item.weapon.sedna.ItemRenderDebug; +import com.hbm.render.item.weapon.sedna.ItemRenderGreasegun; import com.hbm.render.item.weapon.sedna.ItemRenderHenry; import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; @@ -27,6 +29,7 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_pepperbox, new ItemRenderPepperbox()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_atlas, new ItemRenderAtlas()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_henry, new ItemRenderHenry()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_greasegun, new ItemRenderGreasegun()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); @@ -40,11 +43,16 @@ public class GunFactoryClient { m44_jhp.setRenderer(RENDER_STANDARD_BULLET); m44_ap.setRenderer(RENDER_STANDARD_BULLET); m44_express.setRenderer(RENDER_EXPRESS_BULLET); + p9_sp.setRenderer(RENDER_STANDARD_BULLET); + p9_fmj.setRenderer(RENDER_STANDARD_BULLET); + p9_jhp.setRenderer(RENDER_STANDARD_BULLET); + p9_ap.setRenderer(RENDER_STANDARD_BULLET); //HUDS ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_atlas).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_henry).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_greasegun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index a9118a909..ea6678947 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -62,7 +62,7 @@ public class GunStateDecider { //if after reloading the gun can still reload, assume a tube mag and resume reloading if(cfg.getReceivers(stack)[recIndex].getMagazine(stack).canReload(stack, player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); - ItemGunBaseNT.setTimer(stack, cfg.getReceivers(stack)[recIndex].getReloadDuration(stack)); + ItemGunBaseNT.setTimer(stack, rec.getReloadCycleDuration(stack)); ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_CYCLE); //if no more reloading can be done, go idle } else { @@ -72,8 +72,8 @@ public class GunStateDecider { ItemGunBaseNT.setTimer(stack, cfg.getJamDuration(stack)); ItemGunBaseNT.playAnimation(player, stack, AnimType.JAMMED); } else { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.setState(stack, GunState.DRAWING); + ItemGunBaseNT.setTimer(stack, rec.getReloadEndDuration(stack)); ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END); } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 6c14fee0f..7d842a69c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -44,7 +44,7 @@ public class Lego { if(mag.canReload(stack, ctx.player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); - ItemGunBaseNT.setTimer(stack, rec.getReloadDuration(stack)); + ItemGunBaseNT.setTimer(stack, rec.getReloadBeginDuration(stack)); ItemGunBaseNT.playAnimation(player, stack, mag.getAmount(stack) == 0 ? AnimType.RELOAD_EMPTY : AnimType.RELOAD); } else { ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index e4bade605..7b2b7f536 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -111,6 +111,21 @@ public class Orchestras { boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.RELOAD) { + if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.RELOAD_CYCLE) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.RELOAD_END) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.9F); + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); + } + if(type == AnimType.JAMMED) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.9F); + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); + if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); + if(timer == 44) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } if(type == AnimType.CYCLE) { if(timer == 14) { @@ -124,9 +139,12 @@ public class Orchestras { if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } - if(type == AnimType.INSPECT) { - } - if(type == AnimType.JAMMED) { - } + }; + + public static BiConsumer ORCHESTRA_GREASEGUN = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java index 5b92fcc77..70eb1606e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java @@ -44,7 +44,7 @@ public class XFactory44 { ModItems.gun_henry = new ItemGunBaseNT(new GunConfig() .dura(300).draw(15).inspect(23).jam(45).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_HENRY) .rec(new Receiver(0) - .dmg(12F).delay(16).reload(10).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(25, 11, 18).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 14).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) @@ -67,11 +67,27 @@ public class XFactory44 { .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); - case RELOAD: return new BusAnimation(); - case RELOAD_CYCLE: return new BusAnimation(); - case RELOAD_END: return new BusAnimation(); - case INSPECT: return new BusAnimation(); - case JAMMED: return new BusAnimation(); + case RELOAD: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 400, IType.SIN_FULL)) + .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -90, 200, IType.SIN_FULL)) + .addBus("BULLET", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(3, 0, -6, 0).addPos(0, 0, 1, 300, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); + case RELOAD_CYCLE: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0)) + .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0)) + .addBus("BULLET", new BusAnimationSequence().addPos(3, 0, -6, 0).addPos(0, 0, 1, 300, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); + case RELOAD_END: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(-60, 0, 0, 300).addPos(0, 0, 0, 400, IType.SIN_FULL)) + .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0).addPos(0, 0, 0, 200, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)); + case JAMMED: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(-60, 0, 0, 300).addPos(0, 0, 0, 400, IType.SIN_FULL)) + .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0).addPos(0, 0, 0, 200, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200).addPos(0, 0, 0, 500).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200).addPos(0, 0, 0, 200).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP).addPos(0, 0, 0, 500).addPos(0, 0, 45, 200, IType.SIN_FULL).addPos(0, 0, 45, 600).addPos(0, 0, 0, 200, IType.SIN_FULL)); + case INSPECT: return new BusAnimation() + .addBus("YEET", new BusAnimationSequence().addPos(0, 2, 0, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("ROLL", new BusAnimationSequence().addPos(0, 0, 360, 400)); } return null; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java new file mode 100644 index 000000000..dee1efe44 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java @@ -0,0 +1,64 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory9mm { + + public static BulletConfig p9_sp; + public static BulletConfig p9_fmj; + public static BulletConfig p9_jhp; + public static BulletConfig p9_ap; + + public static void init() { + SpentCasing casing9 = new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS); + p9_sp = new BulletConfig().setItem(EnumAmmo.P9_SP) + .setCasing(casing9.clone().register("p9")); + p9_fmj = new BulletConfig().setItem(EnumAmmo.P9_FMJ).setDamage(0.8F).setArmorPiercing(0.1F) + .setCasing(casing9.clone().register("p9fmj")); + p9_jhp = new BulletConfig().setItem(EnumAmmo.P9_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) + .setCasing(casing9.clone().register("p9jhp")); + p9_ap = new BulletConfig().setItem(EnumAmmo.P9_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F) + .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("p9ap")); + + ModItems.gun_greasegun = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(15).inspect(23).jam(45).crosshair(Crosshair.L_CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_GREASEGUN) + .rec(new Receiver(0) + .dmg(5F).delay(5).auto(true).spread(0.015F).reload(25, 11, 18).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap)) + .offset(0.75, -0.0625, -0.3125D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_GREASEGUN_ANIMS) + ).setUnlocalizedName("gun_greasegun").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_GREASEGUN_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation(); + case CYCLE: return new BusAnimation(); + case CYCLE_DRY: return new BusAnimation(); + case RELOAD: return new BusAnimation(); + case RELOAD_CYCLE: return new BusAnimation(); + case RELOAD_END: return new BusAnimation(); + case JAMMED: return new BusAnimation(); + case INSPECT: return new BusAnimation(); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 283e1b185..c6e8a2132 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -853,6 +853,7 @@ public class ResourceManager { public static final IModelCustom pepperbox = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/pepperbox.obj")).asVBO(); public static final IModelCustom bio_revolver = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/bio_revolver.obj")).asVBO(); public static final IModelCustom henry = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/henry.obj")).asVBO(); + public static final IModelCustom greasegun = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/greasegun.obj")).asVBO(); public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); @@ -966,6 +967,7 @@ public class ResourceManager { public static final ResourceLocation pepperbox_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/pepperbox.png"); public static final ResourceLocation bio_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bio_revolver.png"); public static final ResourceLocation henry_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/henry.png"); + public static final ResourceLocation greasegun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/greasegun.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java new file mode 100644 index 000000000..2ef652d5c --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java @@ -0,0 +1,77 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderGreasegun extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.25F * offset, -1F * offset, 1.75F * offset, + 0, -2.625 / 8D, 1.125); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.greasegun_tex); + double scale = 0.375D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + + GL11.glShadeModel(GL11.GL_SMOOTH); + ResourceManager.greasegun.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, 8); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + GL11.glScaled(0.5, 0.5, 0.5); + this.renderMuzzleFlash(gun.lastShot, 75, 10); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.5D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 2, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.greasegun_tex); + ResourceManager.greasegun.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java index 1bdb30483..b12929b76 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java @@ -42,12 +42,27 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { double[] hammer = HbmAnimations.getRelevantTransformation("HAMMER"); double[] lever = HbmAnimations.getRelevantTransformation("LEVER"); double[] turn = HbmAnimations.getRelevantTransformation("TURN"); + double[] lift = HbmAnimations.getRelevantTransformation("LIFT"); + double[] twist = HbmAnimations.getRelevantTransformation("TWIST"); + double[] bullet = HbmAnimations.getRelevantTransformation("BULLET"); + double[] yeet = HbmAnimations.getRelevantTransformation("YEET"); + double[] roll = HbmAnimations.getRelevantTransformation("ROLL"); GL11.glShadeModel(GL11.GL_SMOOTH); GL11.glTranslated(recoil[0] * 2, recoil[1], recoil[2]); GL11.glRotated(recoil[2] * 5, 1, 0, 0); GL11.glRotated(turn[2], 0, 0, 1); + + GL11.glTranslated(yeet[0], yeet[1], yeet[2]); + + GL11.glTranslated(0, 1, 0); + GL11.glRotated(roll[2], 0, 0, 1); + GL11.glTranslated(0, -1, 0); + + GL11.glTranslated(0, -4, 4); + GL11.glRotated(lift[0], 1, 0, 0); + GL11.glTranslated(0, 4, -4); GL11.glTranslated(0, 2, -4); GL11.glRotated(equip[0], -1, 0, 0); @@ -82,9 +97,18 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { GL11.glTranslated(0, -0.25, 2.3125); ResourceManager.henry.renderPart("Lever"); GL11.glPopMatrix(); - + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 0); + GL11.glRotated(twist[2], 0, 0, 1); + GL11.glTranslated(0, -1, 0); ResourceManager.henry.renderPart("Front"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(bullet[0], bullet[1], bullet[2] - 1); ResourceManager.henry.renderPart("Bullet"); + GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); @@ -99,7 +123,9 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { @Override protected void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); - GL11.glTranslated(0, 1, 3); + double scale = 1.75D; + GL11.glScaled(scale, scale, scale); + GL11.glTranslated(0, 0.25, 3); } diff --git a/src/main/resources/assets/hbm/models/weapons/greasegun.obj b/src/main/resources/assets/hbm/models/weapons/greasegun.obj index fd439f5e1..9f056a7b8 100644 --- a/src/main/resources/assets/hbm/models/weapons/greasegun.obj +++ b/src/main/resources/assets/hbm/models/weapons/greasegun.obj @@ -1,6 +1,1913 @@ # Blender v2.79 (sub 0) OBJ File: 'greasegun.blend' # www.blender.org -o Cylinder +o Bullet +v 0.000000 -0.293931 1.531675 +v -0.078125 -0.313602 1.538834 +v -0.135317 -0.367344 1.558395 +v -0.156250 -0.440758 1.585115 +v -0.135317 -0.514171 1.611836 +v -0.078125 -0.567913 1.631396 +v 0.000000 -0.587584 1.638556 +v 0.078125 -0.567914 1.631396 +v 0.135316 -0.514171 1.611836 +v 0.156250 -0.440758 1.585115 +v 0.135316 -0.367344 1.558395 +v 0.078125 -0.313602 1.538834 +v 0.000000 -0.122921 2.001521 +v -0.078125 -0.142592 2.008681 +v -0.135317 -0.196334 2.028241 +v -0.156250 -0.269747 2.054962 +v -0.135317 -0.343161 2.081682 +v -0.078125 -0.396903 2.101243 +v 0.000000 -0.416574 2.108402 +v 0.078125 -0.396903 2.101243 +v 0.135316 -0.343161 2.081682 +v 0.156250 -0.269747 2.054962 +v 0.135316 -0.196334 2.028241 +v 0.078125 -0.142592 2.008681 +v 0.000000 -0.095498 2.191073 +v -0.058594 -0.110252 2.196443 +v -0.101488 -0.150559 2.211114 +v -0.117188 -0.205619 2.231154 +v -0.101488 -0.260679 2.251194 +v -0.058594 -0.300986 2.265865 +v 0.000000 -0.315739 2.271235 +v 0.058594 -0.300986 2.265865 +v 0.101487 -0.260679 2.251194 +v 0.117188 -0.205619 2.231154 +v 0.101487 -0.150559 2.211114 +v 0.058594 -0.110252 2.196443 +v 0.000000 -0.147536 2.276525 +v -0.019531 -0.152454 2.278315 +v -0.033830 -0.165889 2.283205 +v -0.039062 -0.184243 2.289885 +v -0.033830 -0.202596 2.296565 +v -0.019531 -0.216031 2.301455 +v 0.000000 -0.220949 2.303245 +v 0.019531 -0.216032 2.301455 +v 0.033829 -0.202596 2.296565 +v 0.039062 -0.184243 2.289885 +v 0.033829 -0.165889 2.283205 +v 0.019531 -0.152454 2.278315 +vt 0.676595 0.272573 +vt 0.683036 0.263897 +vt 0.689476 0.289927 +vt 0.686754 0.296278 +vt 0.676595 0.289927 +vt 0.683036 0.298603 +vt 0.679317 0.296278 +vt 0.675599 0.281250 +vt 0.679317 0.266222 +vt 0.686754 0.266222 +vt 0.689476 0.272573 +vt 0.690473 0.281250 +vt 0.636905 0.298611 +vt 0.660714 0.291667 +vt 0.660714 0.298611 +vt 0.636905 0.333333 +vt 0.660714 0.326389 +vt 0.660714 0.333333 +vt 0.636905 0.263889 +vt 0.660714 0.270833 +vt 0.636905 0.270833 +vt 0.636905 0.284722 +vt 0.636905 0.291667 +vt 0.636905 0.326389 +vt 0.660714 0.319444 +vt 0.636905 0.347222 +vt 0.660714 0.340278 +vt 0.660714 0.347222 +vt 0.636905 0.277778 +vt 0.660714 0.284722 +vt 0.636905 0.312500 +vt 0.636905 0.319444 +vt 0.636905 0.305556 +vt 0.660714 0.305556 +vt 0.636905 0.340278 +vt 0.660714 0.277778 +vt 0.660714 0.312500 +vt 0.669643 0.340278 +vt 0.669643 0.347222 +vt 0.669643 0.284722 +vt 0.669643 0.312500 +vt 0.669643 0.319444 +vt 0.669643 0.305556 +vt 0.669643 0.277778 +vt 0.669643 0.291667 +vt 0.669643 0.298611 +vt 0.669643 0.333333 +vt 0.660714 0.263889 +vt 0.669643 0.270833 +vt 0.669643 0.326389 +vt 0.675595 0.347222 +vt 0.675595 0.277778 +vt 0.675595 0.284722 +vt 0.675595 0.319444 +vt 0.675595 0.305556 +vt 0.675595 0.340278 +vt 0.675595 0.312500 +vt 0.675595 0.291667 +vt 0.675595 0.298611 +vt 0.675595 0.326389 +vt 0.675595 0.333333 +vt 0.675595 0.263889 +vt 0.675595 0.270833 +vt 0.676042 0.302196 +vt 0.681100 0.302196 +vt 0.678571 0.312365 +vt 0.669643 0.263889 +vt 0.677132 0.311457 +vt 0.676042 0.308915 +vt 0.675653 0.305556 +vt 0.677132 0.299654 +vt 0.678571 0.298746 +vt 0.680011 0.299654 +vt 0.681490 0.305556 +vt 0.681100 0.308915 +vt 0.680011 0.311457 +vn 0.0000 -0.3420 -0.9397 +vn -0.5000 0.8138 -0.2962 +vn -0.8616 0.5019 -0.0754 +vn -0.4975 0.8441 -0.1999 +vn 0.8660 -0.4698 0.1710 +vn 0.9949 0.0345 0.0948 +vn 0.8616 -0.4330 0.2649 +vn -0.0000 -0.9397 0.3420 +vn -0.4974 -0.7752 0.3894 +vn -0.5000 -0.8138 0.2962 +vn -1.0000 0.0000 -0.0000 +vn -0.8660 0.4698 -0.1710 +vn 1.0000 -0.0000 0.0000 +vn 0.8616 0.5019 -0.0754 +vn 0.4975 -0.7752 0.3894 +vn -0.0000 -0.9004 0.4350 +vn -0.8660 -0.4698 0.1710 +vn -0.9949 0.0345 0.0948 +vn 0.5000 0.8138 -0.2962 +vn 0.8660 0.4698 -0.1710 +vn 0.0000 0.9397 -0.3420 +vn -0.0000 0.9694 -0.2455 +vn 0.5000 -0.8138 0.2962 +vn -0.8616 -0.4330 0.2649 +vn 0.4975 0.8441 -0.1999 +vn 0.4331 -0.5339 0.7262 +vn 0.0000 -0.6430 0.7659 +vn -0.8661 0.1709 0.4697 +vn 0.4331 0.8758 0.2131 +vn 0.7501 0.5779 0.3215 +vn -0.0000 0.9848 0.1734 +vn -0.7501 -0.2360 0.6178 +vn -0.7501 0.5779 0.3215 +vn -0.4331 0.8758 0.2131 +vn 0.7501 -0.2360 0.6178 +vn -0.4331 -0.5339 0.7262 +vn 0.8661 0.1709 0.4697 +vn 0.0000 -0.0388 0.9992 +vn -0.3276 0.1389 0.9346 +vn -0.3782 0.3166 0.8699 +vn 0.3276 0.4943 0.8052 +vn 0.0000 0.6720 0.7405 +vn 0.1891 0.0088 0.9819 +vn 0.1891 0.6244 0.7579 +vn -0.3276 0.4943 0.8052 +vn -0.1891 0.6244 0.7579 +vn 0.3782 0.3166 0.8699 +vn 0.3276 0.1389 0.9346 +vn -0.1891 0.0088 0.9819 +s off +f 9/1/1 7/2/1 3/3/1 +f 3/3/1 2/4/1 11/5/1 +f 2/4/1 1/6/1 11/5/1 +f 1/6/1 12/7/1 11/5/1 +f 11/5/1 10/8/1 9/1/1 +f 9/1/1 8/9/1 7/2/1 +f 7/2/1 6/10/1 5/11/1 +f 5/11/1 4/12/1 7/2/1 +f 4/12/1 3/3/1 7/2/1 +f 11/5/1 9/1/1 3/3/1 +s 1 +f 2/13/2 15/14/3 14/15/4 +f 9/16/5 22/17/6 21/18/7 +f 7/19/8 18/20/9 6/21/10 +f 4/22/11 15/14/3 3/23/12 +f 10/24/13 23/25/14 22/17/6 +f 7/26/8 20/27/15 19/28/16 +f 5/29/17 16/30/18 4/22/11 +f 12/31/19 23/25/14 11/32/20 +f 1/33/21 14/15/4 13/34/22 +f 9/16/5 20/27/15 8/35/23 +f 5/29/17 18/20/9 17/36/24 +f 1/33/21 24/37/25 12/31/19 +f 19/28/16 32/38/26 31/39/27 +f 17/36/24 28/40/28 16/30/18 +f 23/25/14 36/41/29 35/42/30 +f 14/15/4 25/43/31 13/34/22 +f 21/18/7 32/38/26 20/27/15 +f 18/20/9 29/44/32 17/36/24 +f 24/37/25 25/43/31 36/41/29 +f 14/15/4 27/45/33 26/46/34 +f 22/17/6 33/47/35 21/18/7 +f 19/48/16 30/49/36 18/20/9 +f 16/30/18 27/45/33 15/14/3 +f 22/17/6 35/42/30 34/50/37 +f 32/38/26 43/51/38 31/39/27 +f 28/40/28 41/52/39 40/53/40 +f 36/41/29 47/54/41 35/42/30 +f 26/46/34 37/55/42 25/43/31 +f 33/47/35 44/56/43 32/38/26 +f 30/49/36 41/52/39 29/44/32 +f 36/41/29 37/55/42 48/57/44 +f 26/46/34 39/58/45 38/59/46 +f 33/47/35 46/60/47 45/61/48 +f 30/49/36 43/62/38 42/63/49 +f 28/40/28 39/58/45 27/45/33 +f 35/42/30 46/60/47 34/50/37 +f 41/64/39 45/65/48 37/66/42 +f 2/13/2 3/23/12 15/14/3 +f 9/16/5 10/24/13 22/17/6 +f 7/19/8 19/48/16 18/20/9 +f 4/22/11 16/30/18 15/14/3 +f 10/24/13 11/32/20 23/25/14 +f 7/26/8 8/35/23 20/27/15 +f 5/29/17 17/36/24 16/30/18 +f 12/31/19 24/37/25 23/25/14 +f 1/33/21 2/13/2 14/15/4 +f 9/16/5 21/18/7 20/27/15 +f 5/29/17 6/21/10 18/20/9 +f 1/33/21 13/34/22 24/37/25 +f 19/28/16 20/27/15 32/38/26 +f 17/36/24 29/44/32 28/40/28 +f 23/25/14 24/37/25 36/41/29 +f 14/15/4 26/46/34 25/43/31 +f 21/18/7 33/47/35 32/38/26 +f 18/20/9 30/49/36 29/44/32 +f 24/37/25 13/34/22 25/43/31 +f 14/15/4 15/14/3 27/45/33 +f 22/17/6 34/50/37 33/47/35 +f 19/48/16 31/67/27 30/49/36 +f 16/30/18 28/40/28 27/45/33 +f 22/17/6 23/25/14 35/42/30 +f 32/38/26 44/56/43 43/51/38 +f 28/40/28 29/44/32 41/52/39 +f 36/41/29 48/57/44 47/54/41 +f 26/46/34 38/59/46 37/55/42 +f 33/47/35 45/61/48 44/56/43 +f 30/49/36 42/63/49 41/52/39 +f 36/41/29 25/43/31 37/55/42 +f 26/46/34 27/45/33 39/58/45 +f 33/47/35 34/50/37 46/60/47 +f 30/49/36 31/67/27 43/62/38 +f 28/40/28 40/53/40 39/58/45 +f 35/42/30 47/54/41 46/60/47 +f 37/66/42 38/68/46 39/69/45 +f 39/69/45 40/70/40 37/66/42 +f 40/70/40 41/64/39 37/66/42 +f 41/64/39 42/71/49 45/65/48 +f 42/71/49 43/72/38 45/65/48 +f 43/72/38 44/73/43 45/65/48 +f 45/65/48 46/74/47 47/75/41 +f 47/75/41 48/76/44 37/66/42 +f 45/65/48 47/75/41 37/66/42 +o Handle +v -0.250000 -1.580894 -0.329788 +v -0.250000 -1.459289 -0.374049 +v -0.250000 -1.331845 -0.351577 +v -0.250000 -1.232712 -0.268394 +v -0.250000 -1.188451 -0.146789 +v -0.250000 -1.210923 -0.019345 +v -0.250000 -1.294106 0.079788 +v -0.250000 -1.415711 0.124049 +v -0.250000 -1.543154 0.101577 +v -0.250000 -1.642288 0.018394 +v -0.250000 -1.686549 -0.103211 +v -0.250000 -1.664077 -0.230654 +v -0.500000 -1.580894 -0.329788 +v -0.500000 -1.459289 -0.374049 +v -0.500000 -1.331845 -0.351577 +v -0.500000 -1.232712 -0.268394 +v -0.500000 -1.188451 -0.146789 +v -0.500000 -1.210923 -0.019345 +v -0.500000 -1.294106 0.079788 +v -0.500000 -1.415711 0.124049 +v -0.500000 -1.543154 0.101577 +v -0.500000 -1.642288 0.018394 +v -0.500000 -1.686549 -0.103211 +v -0.500000 -1.664077 -0.230654 +v -0.593750 -0.612984 1.052531 +v -0.593750 -0.521780 1.019336 +v -0.593750 -0.426197 1.036189 +v -0.593750 -0.351847 1.098576 +v -0.593750 -0.318652 1.189780 +v -0.593750 -0.335506 1.285363 +v -0.593750 -0.397893 1.359713 +v -0.593750 -0.489097 1.392909 +v -0.593750 -0.584679 1.376055 +v -0.593750 -0.659029 1.313668 +v -0.593750 -0.692225 1.222464 +v -0.593750 -0.675371 1.126881 +v -0.781250 -0.612984 1.052531 +v -0.781250 -0.521780 1.019336 +v -0.781250 -0.426197 1.036189 +v -0.781250 -0.351847 1.098576 +v -0.781250 -0.318652 1.189780 +v -0.781250 -0.335506 1.285363 +v -0.781250 -0.397893 1.359713 +v -0.781250 -0.489097 1.392909 +v -0.781250 -0.584679 1.376055 +v -0.781250 -0.659029 1.313668 +v -0.781250 -0.692225 1.222464 +v -0.781250 -0.675371 1.126881 +v -0.750000 -0.643681 1.226622 +v -0.625000 -0.643681 1.226622 +v -0.750000 -0.438893 1.083228 +v -0.625000 -0.438893 1.083228 +v -0.750000 -0.582287 0.878440 +v -0.750000 -0.787075 1.021834 +v -0.625000 -0.787075 1.021834 +v -0.625000 -0.582287 0.878440 +v -0.437500 -1.155863 0.059288 +v -0.437500 -1.360651 0.202682 +v -0.312500 -1.360651 0.202682 +v -0.312500 -1.155863 0.059288 +v -0.437500 -1.227560 -0.043106 +v -0.437500 -1.432348 0.100288 +v -0.312500 -1.432348 0.100288 +v -0.312500 -1.227560 -0.043106 +v -0.781250 -0.577135 1.103728 +v -0.781250 -0.516333 1.081598 +v -0.781250 -0.452611 1.092834 +v -0.781250 -0.403044 1.134425 +v -0.781250 -0.380914 1.195228 +v -0.781250 -0.392150 1.258950 +v -0.781250 -0.433741 1.308516 +v -0.781250 -0.494544 1.330647 +v -0.781250 -0.558265 1.319411 +v -0.781250 -0.607832 1.277819 +v -0.781250 -0.629963 1.217017 +v -0.781250 -0.618727 1.153295 +v -1.531250 -0.577135 1.103728 +v -1.531250 -0.516333 1.081598 +v -1.531250 -0.452611 1.092834 +v -1.531250 -0.403044 1.134425 +v -1.531250 -0.380914 1.195228 +v -1.531250 -0.392150 1.258950 +v -1.531250 -0.433741 1.308516 +v -1.531250 -0.494544 1.330647 +v -1.531250 -0.558265 1.319411 +v -1.531250 -0.607832 1.277819 +v -1.531250 -0.629963 1.217017 +v -1.531250 -0.618727 1.153295 +vt 0.717262 0.500032 +vt 0.727560 0.513905 +vt 0.727560 0.541651 +vt 0.668008 0.736165 +vt 0.668008 0.763835 +vt 0.647468 0.763835 +vt 0.647468 0.680609 +vt 0.657738 0.666774 +vt 0.668008 0.680609 +vt 0.577381 0.722222 +vt 0.571429 0.708333 +vt 0.577381 0.708333 +vt 0.636905 0.722222 +vt 0.625000 0.708333 +vt 0.636905 0.708333 +vt 0.636905 0.680556 +vt 0.625000 0.666667 +vt 0.636905 0.666667 +vt 0.625000 0.722222 +vt 0.577381 0.680556 +vt 0.577381 0.666667 +vt 0.571429 0.666667 +vt 0.711309 0.694407 +vt 0.706168 0.687481 +vt 0.706168 0.673629 +vt 0.706964 0.541651 +vt 0.705371 0.527778 +vt 0.706964 0.513905 +vt 0.711316 0.503749 +vt 0.723207 0.503749 +vt 0.729153 0.527778 +vt 0.723207 0.551806 +vt 0.717262 0.555524 +vt 0.711316 0.551806 +vt 0.645879 0.750000 +vt 0.647468 0.736165 +vt 0.651809 0.726037 +vt 0.657738 0.722330 +vt 0.663667 0.726037 +vt 0.669597 0.750000 +vt 0.663667 0.773963 +vt 0.657738 0.777671 +vt 0.651809 0.773963 +vt 0.669597 0.694444 +vt 0.668008 0.708280 +vt 0.663667 0.718408 +vt 0.657738 0.722115 +vt 0.651809 0.718408 +vt 0.647468 0.708280 +vt 0.645879 0.694444 +vt 0.651809 0.670481 +vt 0.663667 0.670481 +vt 0.571429 0.722222 +vt 0.625000 0.680556 +vt 0.571429 0.680556 +vt 0.708341 0.668559 +vt 0.711309 0.666703 +vt 0.714278 0.668559 +vt 0.716451 0.673629 +vt 0.717246 0.680555 +vt 0.716451 0.687481 +vt 0.714278 0.692551 +vt 0.708341 0.692552 +vt 0.705373 0.680555 +vt 0.705357 0.611111 +vt 0.693452 0.597222 +vt 0.705357 0.597222 +vt 0.705357 0.513889 +vt 0.693452 0.500000 +vt 0.705357 0.500000 +vt 0.705357 0.652778 +vt 0.693452 0.638889 +vt 0.705357 0.638889 +vt 0.705357 0.555556 +vt 0.693452 0.541667 +vt 0.705357 0.541667 +vt 0.693452 0.583333 +vt 0.705357 0.583333 +vt 0.693452 0.625000 +vt 0.705357 0.625000 +vt 0.693452 0.527778 +vt 0.705357 0.527778 +vt 0.693452 0.569444 +vt 0.705357 0.569444 +vt 0.693452 0.611111 +vt 0.693452 0.513889 +vt 0.705357 0.666667 +vt 0.693452 0.652778 +vt 0.693452 0.555556 +vt 0.636905 0.805556 +vt 0.645833 0.791667 +vt 0.645833 0.805556 +vt 0.636905 0.708333 +vt 0.645833 0.694444 +vt 0.645833 0.708333 +vt 0.636905 0.750000 +vt 0.645833 0.736111 +vt 0.645833 0.750000 +vt 0.636905 0.791667 +vt 0.645833 0.777778 +vt 0.636905 0.694444 +vt 0.645833 0.680556 +vt 0.636905 0.833333 +vt 0.645833 0.819444 +vt 0.645833 0.833333 +vt 0.636905 0.736111 +vt 0.645833 0.722222 +vt 0.636905 0.777778 +vt 0.645833 0.763889 +vt 0.636905 0.680556 +vt 0.645833 0.666667 +vt 0.636905 0.819444 +vt 0.636905 0.722222 +vt 0.636905 0.763889 +vt 0.577381 0.750000 +vt 0.625000 0.750000 +vt 0.705357 0.708333 +vt 0.669643 0.715278 +vt 0.669643 0.708333 +vt 0.705357 0.687500 +vt 0.669643 0.694444 +vt 0.669643 0.687500 +vt 0.705357 0.736111 +vt 0.669643 0.743056 +vt 0.669643 0.736111 +vt 0.705357 0.666667 +vt 0.669643 0.673611 +vt 0.669643 0.666667 +vt 0.705357 0.715278 +vt 0.669643 0.722222 +vt 0.705357 0.694444 +vt 0.669643 0.701389 +vt 0.705357 0.743056 +vt 0.669643 0.750000 +vt 0.705357 0.673611 +vt 0.669643 0.680556 +vt 0.705357 0.722222 +vt 0.669643 0.729167 +vt 0.705357 0.701389 +vt 0.705357 0.680556 +vt 0.705357 0.729167 +vt 0.693452 0.666667 +vt 0.636905 0.666667 +vt 0.636905 0.750000 +vt 0.571429 0.750000 +vt 0.705357 0.750000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.8192 -0.5736 +vn 0.0000 -0.8192 0.5736 +vn 0.0000 0.9962 -0.0872 +vn 0.0000 0.9063 0.4226 +vn 0.0000 -0.9063 -0.4226 +vn 0.0000 -0.5736 -0.8192 +vn 0.0000 -0.0872 -0.9962 +vn 0.0000 0.4226 -0.9063 +vn 0.0000 -0.4226 0.9063 +vn 0.0000 0.5736 0.8192 +vn 0.0000 -0.9962 0.0872 +vn 0.0000 0.0872 0.9962 +vn 0.9886 0.0865 0.1236 +vn -0.9886 -0.0865 -0.1236 +s off +f 71/77/50 69/78/50 67/79/50 +f 93/80/50 91/81/50 87/82/50 +f 81/83/51 83/84/51 73/85/51 +f 108/86/52 109/87/52 105/88/52 +f 100/89/52 101/90/52 99/91/52 +f 97/92/53 103/93/53 98/94/53 +f 104/95/52 105/88/52 101/90/52 +f 103/93/53 106/96/53 107/97/53 +f 106/96/53 111/98/53 107/97/53 +f 131/99/50 129/100/50 127/101/50 +f 63/102/50 62/103/50 61/104/50 +f 61/104/50 72/105/50 71/77/50 +f 71/77/50 70/106/50 69/78/50 +f 69/78/50 68/107/50 67/79/50 +f 67/79/50 66/108/50 63/102/50 +f 66/108/50 65/109/50 63/102/50 +f 65/109/50 64/110/50 63/102/50 +f 63/102/50 61/104/50 67/79/50 +f 61/104/50 71/77/50 67/79/50 +f 87/82/50 86/111/50 85/112/50 +f 85/112/50 96/113/50 95/114/50 +f 95/114/50 94/115/50 93/80/50 +f 93/80/50 92/116/50 91/81/50 +f 91/81/50 90/117/50 87/82/50 +f 90/117/50 89/118/50 87/82/50 +f 89/118/50 88/119/50 87/82/50 +f 87/82/50 85/112/50 95/114/50 +f 95/114/50 93/80/50 87/82/50 +f 73/85/51 74/120/51 75/121/51 +f 75/121/51 76/122/51 77/123/51 +f 77/123/51 78/124/51 81/83/51 +f 78/124/51 79/125/51 81/83/51 +f 79/125/51 80/126/51 81/83/51 +f 81/83/51 82/127/51 83/84/51 +f 83/84/51 84/128/51 73/85/51 +f 73/85/51 75/121/51 81/83/51 +f 75/121/51 77/123/51 81/83/51 +f 108/86/52 112/129/52 109/87/52 +f 100/89/52 104/95/52 101/90/52 +f 97/92/53 102/130/53 103/93/53 +f 104/95/52 108/86/52 105/88/52 +f 103/93/53 102/130/53 106/96/53 +f 106/96/53 110/131/53 111/98/53 +f 127/101/50 126/132/50 125/133/50 +f 125/133/50 136/134/50 127/101/50 +f 136/134/50 135/135/50 127/101/50 +f 135/135/50 134/136/50 133/137/50 +f 133/137/50 132/138/50 131/99/50 +f 131/99/50 130/139/50 129/100/50 +f 129/100/50 128/140/50 127/101/50 +f 135/135/50 133/137/50 127/101/50 +f 133/137/50 131/99/50 127/101/50 +s 1 +f 53/141/54 66/142/55 54/143/55 +f 60/144/56 61/145/57 49/146/57 +f 50/147/58 63/148/59 51/149/59 +f 57/150/60 70/151/53 58/152/53 +f 54/143/55 67/153/61 55/154/61 +f 51/149/59 64/155/52 52/156/52 +f 58/152/53 71/157/62 59/158/62 +f 55/154/61 68/159/63 56/160/63 +f 52/156/52 65/161/54 53/141/54 +f 59/158/62 72/162/56 60/144/56 +f 49/163/57 62/164/58 50/147/58 +f 56/160/63 69/165/60 57/150/60 +f 87/166/59 76/167/52 75/168/59 +f 94/169/53 83/170/62 82/171/53 +f 91/172/61 80/173/63 79/174/61 +f 88/175/52 77/176/54 76/167/52 +f 95/177/62 84/178/56 83/170/62 +f 85/179/57 74/180/58 73/181/57 +f 92/182/63 81/183/60 80/173/63 +f 89/184/54 78/185/55 77/176/54 +f 96/186/56 73/187/57 84/178/56 +f 86/188/58 75/168/59 74/180/58 +f 93/189/60 82/171/53 81/183/60 +f 90/190/55 79/174/61 78/185/55 +f 104/95/64 107/191/64 108/86/64 +f 100/89/51 103/192/64 104/95/64 +f 99/91/50 102/130/65 97/92/50 +f 101/90/65 106/96/65 102/130/65 +f 131/193/61 120/194/63 119/195/61 +f 107/191/64 112/129/51 108/86/64 +f 105/88/65 110/131/50 106/96/65 +f 128/196/52 117/197/54 116/198/52 +f 135/199/62 124/200/56 123/201/62 +f 125/202/57 114/203/58 113/204/57 +f 132/205/63 121/206/60 120/194/63 +f 129/207/54 118/208/55 117/197/54 +f 136/209/56 113/210/57 124/200/56 +f 126/211/58 115/212/59 114/203/58 +f 133/213/60 122/214/53 121/206/60 +f 130/215/55 119/195/61 118/208/55 +f 127/216/59 116/198/52 115/212/59 +f 134/217/53 123/201/62 122/214/53 +f 53/141/54 65/161/54 66/142/55 +f 60/144/56 72/162/56 61/145/57 +f 50/147/58 62/164/58 63/148/59 +f 57/150/60 69/165/60 70/151/53 +f 54/143/55 66/142/55 67/153/61 +f 51/149/59 63/148/59 64/155/52 +f 58/152/53 70/151/53 71/157/62 +f 55/154/61 67/153/61 68/159/63 +f 52/156/52 64/155/52 65/161/54 +f 59/158/62 71/157/62 72/162/56 +f 49/163/57 61/218/57 62/164/58 +f 56/160/63 68/159/63 69/165/60 +f 87/166/59 88/175/52 76/167/52 +f 94/169/53 95/177/62 83/170/62 +f 91/172/61 92/182/63 80/173/63 +f 88/175/52 89/184/54 77/176/54 +f 95/177/62 96/186/56 84/178/56 +f 85/179/57 86/188/58 74/180/58 +f 92/182/63 93/189/60 81/183/60 +f 89/184/54 90/190/55 78/185/55 +f 96/186/56 85/219/57 73/187/57 +f 86/188/58 87/166/59 75/168/59 +f 93/189/60 94/169/53 82/171/53 +f 90/190/55 91/172/61 79/174/61 +f 104/95/64 103/192/64 107/191/64 +f 100/89/51 98/220/51 103/192/64 +f 99/91/50 101/90/65 102/130/65 +f 101/90/65 105/88/65 106/96/65 +f 131/193/61 132/205/63 120/194/63 +f 107/191/64 111/221/51 112/129/51 +f 105/88/65 109/87/50 110/131/50 +f 128/196/52 129/207/54 117/197/54 +f 135/199/62 136/209/56 124/200/56 +f 125/202/57 126/211/58 114/203/58 +f 132/205/63 133/213/60 121/206/60 +f 129/207/54 130/215/55 118/208/55 +f 136/209/56 125/222/57 113/210/57 +f 126/211/58 127/216/59 115/212/59 +f 133/213/60 134/217/53 122/214/53 +f 130/215/55 131/193/61 119/195/61 +f 127/216/59 128/196/52 116/198/52 +f 134/217/53 135/199/62 123/201/62 +o Magazine +v 0.187500 -0.312500 1.375000 +v 0.187500 -0.312500 2.375000 +v -0.187500 -0.312500 2.375000 +v -0.187500 -0.312500 1.375000 +v -0.187500 -6.687500 1.375000 +v -0.187500 -6.687500 2.375000 +v 0.187500 -6.687500 2.375000 +v 0.187500 -6.687500 1.375000 +v 0.125000 -0.187500 1.375000 +v -0.125000 -0.187500 1.375000 +v 0.062500 -0.187500 1.875000 +v -0.062500 -0.187500 1.875000 +v -0.062500 -0.187500 1.375000 +v -0.125000 -0.187500 1.875000 +v 0.062500 -0.187500 1.375000 +v 0.125000 -0.187500 1.875000 +v 0.187500 -0.312500 1.875000 +v -0.187500 -0.312500 1.875000 +v 0.062500 -0.312500 1.875000 +v -0.062500 -0.312500 1.875000 +v 0.062500 -0.312500 1.375000 +v -0.062500 -0.312500 1.375000 +vt 0.779762 0.041667 +vt 0.779762 0.750000 +vt 0.755952 0.750000 +vt 0.797619 0.041667 +vt 0.845238 0.041667 +vt 0.845238 0.750000 +vt 0.821429 0.750000 +vt 0.732143 0.041667 +vt 0.779762 -0.000000 +vt 0.863095 0.041667 +vt 0.845238 0.750000 +vt 0.845238 0.750000 +vt 0.797619 0.805556 +vt 0.800595 0.861111 +vt 0.797619 0.861111 +vt 0.806548 0.861111 +vt 0.800595 0.805556 +vt 0.806548 0.805556 +vt 0.776786 0.805556 +vt 0.779762 0.861111 +vt 0.776786 0.861111 +vt 0.770833 0.805556 +vt 0.770833 0.861111 +vt 0.797619 0.875000 +vt 0.803571 0.875000 +vt 0.779762 0.875000 +vt 0.773810 0.875000 +vt 0.797619 0.750000 +vt 0.791667 0.805556 +vt 0.785714 0.805556 +vt 0.791667 0.861111 +vt 0.785714 0.861111 +vt 0.779762 0.805556 +vt 0.779762 0.791667 +vt 0.797619 0.791667 +vt 0.732143 0.750000 +vt 0.732143 0.000000 +vt 0.863095 0.750000 +vt 0.779762 0.805556 +vt 0.797619 0.805556 +vt 0.773810 0.791667 +vt 0.803571 0.791667 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8944 0.4472 0.0000 +vn -0.8944 0.4472 0.0000 +s off +f 142/223/66 139/224/66 154/225/66 +f 143/226/67 139/224/67 142/223/67 +f 144/227/68 137/228/68 153/229/68 +f 141/230/69 143/231/69 142/223/69 +f 141/232/70 158/233/70 157/234/70 +f 147/235/71 145/236/71 151/237/71 +f 137/238/72 152/239/72 153/240/72 +f 150/241/71 149/242/71 146/243/71 +f 154/244/73 146/243/73 140/245/73 +f 157/246/70 145/236/70 137/247/70 +f 146/243/70 158/248/70 140/249/70 +f 138/250/71 155/251/71 156/252/71 +f 147/235/66 157/253/66 155/251/66 +f 158/254/68 148/255/68 156/252/68 +f 156/252/71 157/253/71 158/254/71 +f 150/241/67 156/256/67 148/255/67 +f 155/257/67 152/239/67 147/235/67 +f 140/258/66 141/230/66 154/225/66 +f 141/230/66 142/223/66 154/225/66 +f 143/226/67 138/250/67 139/224/67 +f 138/250/68 143/226/68 153/229/68 +f 143/226/68 144/227/68 153/229/68 +f 141/230/69 144/259/69 143/231/69 +f 137/228/70 144/227/70 157/234/70 +f 144/227/70 141/232/70 157/234/70 +f 141/232/70 140/260/70 158/233/70 +f 147/235/71 152/239/71 145/236/71 +f 137/238/72 145/236/72 152/239/72 +f 150/241/71 148/255/71 149/242/71 +f 154/244/73 150/241/73 146/243/73 +f 157/246/70 151/237/70 145/236/70 +f 146/243/70 149/242/70 158/248/70 +f 154/261/71 139/224/71 156/252/71 +f 139/224/71 138/250/71 156/252/71 +f 138/250/71 153/262/71 155/251/71 +f 147/235/66 151/237/66 157/253/66 +f 158/254/68 149/242/68 148/255/68 +f 156/252/71 155/251/71 157/253/71 +f 150/241/67 154/263/67 156/256/67 +f 155/257/67 153/264/67 152/239/67 +o Flap +v 0.562500 1.125000 0.312500 +v 0.519682 0.909741 0.312500 +v 0.397748 0.727252 0.312500 +v 0.215260 0.605318 0.312500 +v 0.625000 1.125000 0.312500 +v 0.239177 0.547575 0.312500 +v 0.441942 0.683058 0.312500 +v 0.577425 0.885823 0.312500 +v 0.562500 1.125000 2.437500 +v 0.519682 0.909741 2.437500 +v 0.397747 0.727252 2.437500 +v 0.215260 0.605318 2.437500 +v 0.239177 0.547575 2.437500 +v 0.441941 0.683058 2.437500 +v 0.577424 0.885823 2.437500 +v 0.625000 1.125000 2.437500 +v 0.239177 0.547575 2.062500 +v 0.000000 0.500000 2.062500 +v 0.000000 0.562500 2.062500 +v 0.215260 0.605318 2.062500 +v 0.239177 0.547575 0.687500 +v 0.000000 0.500000 0.687500 +v 0.215260 0.605318 0.687500 +v 0.000000 0.562500 0.687500 +vt 0.431548 0.597222 +vt 0.532738 0.590278 +vt 0.431548 0.590278 +vt 0.449405 0.520833 +vt 0.431548 0.513889 +vt 0.431548 0.520833 +vt 0.449405 0.486111 +vt 0.514881 0.493056 +vt 0.514881 0.486111 +vt 0.529762 0.513889 +vt 0.532738 0.541667 +vt 0.532738 0.513889 +vt 0.529762 0.569444 +vt 0.532738 0.597222 +vt 0.532738 0.569444 +vt 0.529762 0.541667 +vt 0.431548 0.541667 +vt 0.434524 0.513889 +vt 0.434524 0.569444 +vt 0.431548 0.569444 +vt 0.434524 0.541667 +vt 0.449405 0.513889 +vt 0.452381 0.486111 +vt 0.511905 0.513889 +vt 0.514881 0.513889 +vt 0.514881 0.520833 +vt 0.532738 0.520833 +vt 0.449405 0.493056 +vt 0.529762 0.597222 +vt 0.434524 0.597222 +vt 0.452381 0.513889 +vt 0.511905 0.486111 +vt 0.532738 0.569444 +vt 0.431548 0.534722 +vt 0.532738 0.534722 +vt 0.449405 0.486111 +vt 0.514881 0.513889 +vt 0.449405 0.513889 +vt 0.532738 0.597222 +vt 0.431548 0.569444 +vt 0.514881 0.486111 +vt 0.431548 0.597222 +vt 0.532738 0.513889 +vt 0.431548 0.513889 +vn 0.0000 1.0000 0.0000 +vn -0.9239 -0.3827 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.0000 0.0000 1.0000 +vn -0.9239 0.3827 -0.0000 +vn -0.7071 0.7071 -0.0000 +vn 0.9239 -0.3827 0.0000 +vn 0.9808 -0.1951 0.0000 +vn -0.1951 0.9808 0.0000 +vn -0.4430 0.8965 -0.0000 +vn -0.9808 0.1951 -0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.4430 -0.8965 0.0000 +vn 0.1951 -0.9808 0.0000 +vn -0.5556 0.8315 0.0000 +vn 0.5556 -0.8315 0.0000 +s off +f 174/265/74 159/266/74 167/267/74 +f 178/268/75 171/269/75 170/270/75 +f 176/271/76 182/272/76 180/273/76 +f 162/274/77 165/275/77 164/276/77 +f 160/277/77 163/278/77 166/279/77 +f 161/280/77 166/279/77 165/275/77 +f 172/281/78 170/282/78 171/269/78 +f 174/265/78 168/283/78 173/284/78 +f 173/284/78 169/285/78 172/281/78 +f 175/286/78 177/287/78 176/271/78 +f 180/273/77 181/288/77 179/289/77 +f 164/276/75 181/290/75 162/291/75 +f 174/265/74 163/278/74 159/266/74 +f 178/268/75 175/286/75 171/269/75 +f 176/271/76 177/292/76 182/272/76 +f 162/274/77 161/280/77 165/275/77 +f 160/277/77 159/293/77 163/278/77 +f 161/280/77 160/277/77 166/279/77 +f 172/281/78 169/285/78 170/282/78 +f 174/265/78 167/294/78 168/283/78 +f 173/284/78 168/283/78 169/285/78 +f 175/286/78 178/295/78 177/287/78 +f 180/273/77 182/296/77 181/288/77 +f 164/276/75 179/289/75 181/290/75 +s 1 +f 168/297/79 161/298/80 169/299/80 +f 173/284/81 163/278/82 174/265/82 +f 182/300/83 178/301/84 181/302/84 +f 167/303/85 160/304/79 168/297/79 +f 172/281/86 166/279/81 173/284/81 +f 175/286/87 180/273/88 179/289/87 +f 178/301/84 161/298/80 181/302/84 +f 179/289/87 165/275/86 172/281/86 +f 168/297/79 160/304/79 161/298/80 +f 173/284/81 166/279/81 163/278/82 +f 182/300/83 177/305/83 178/301/84 +f 167/303/85 159/306/85 160/304/79 +f 172/281/86 165/275/86 166/279/81 +f 175/286/87 176/271/88 180/273/88 +f 178/301/84 170/307/89 169/299/80 +f 169/299/80 161/298/80 178/301/84 +f 161/298/80 162/308/89 181/302/84 +f 172/281/86 171/269/90 175/286/87 +f 179/289/87 164/276/90 165/275/86 +f 172/281/86 175/286/87 179/289/87 +o Stock +v -0.375000 -0.437500 -6.562500 +v -0.437500 -0.454247 -6.562500 +v -0.483253 -0.500000 -6.562500 +v -0.500000 -0.562500 -6.562500 +v -0.483253 -0.625000 -6.562500 +v -0.437500 -0.670753 -6.562500 +v -0.375000 -0.687500 -6.562500 +v -0.312500 -0.670753 -6.562500 +v -0.266747 -0.625000 -6.562500 +v -0.250000 -0.562500 -6.562500 +v -0.266747 -0.500000 -6.562500 +v -0.312500 -0.454247 -6.562500 +v -0.375000 -2.937500 -7.062500 +v -0.375000 -0.504487 -6.812500 +v -0.437500 -0.518991 -6.804127 +v -0.483253 -0.558614 -6.781250 +v -0.500000 -0.612741 -6.750000 +v -0.483253 -0.666867 -6.718750 +v -0.437500 -0.706490 -6.695873 +v -0.375000 -0.720994 -6.687500 +v -0.312500 -0.706490 -6.695873 +v -0.266747 -0.666867 -6.718750 +v -0.250000 -0.612741 -6.750000 +v -0.266747 -0.558614 -6.781250 +v -0.312500 -0.518991 -6.804127 +v -0.375000 -0.687500 -6.995513 +v -0.437500 -0.695874 -6.981009 +v -0.483253 -0.718750 -6.941386 +v -0.500000 -0.750000 -6.887259 +v -0.483253 -0.781250 -6.833133 +v -0.437500 -0.804126 -6.793509 +v -0.375000 -0.812500 -6.779007 +v -0.312500 -0.804126 -6.793509 +v -0.266747 -0.781250 -6.833133 +v -0.250000 -0.750000 -6.887259 +v -0.266747 -0.718750 -6.941386 +v -0.312500 -0.695874 -6.981009 +v -0.375000 -0.937500 -7.062500 +v -0.437500 -0.937500 -7.045753 +v -0.483253 -0.937500 -7.000000 +v -0.500000 -0.937500 -6.937500 +v -0.483253 -0.937500 -6.875000 +v -0.437500 -0.937500 -6.829247 +v -0.375000 -0.937500 -6.812500 +v -0.312500 -0.937500 -6.829247 +v -0.266747 -0.937500 -6.875000 +v -0.250000 -0.937500 -6.937500 +v -0.266747 -0.937500 -7.000000 +v -0.312500 -0.937500 -7.045753 +v -0.437500 -2.937500 -7.045753 +v -0.483253 -2.937500 -7.000000 +v -0.500000 -2.937500 -6.937500 +v -0.483253 -2.937500 -6.875000 +v -0.437500 -2.937500 -6.829247 +v -0.375000 -2.937500 -6.812500 +v -0.312500 -2.937500 -6.829247 +v -0.266747 -2.937500 -6.875000 +v -0.250000 -2.937500 -6.937500 +v -0.266747 -2.937500 -7.000000 +v -0.312500 -2.937500 -7.045753 +v 0.375000 -0.437500 -6.562500 +v -0.324759 -3.125000 -7.062500 +v -0.378886 -3.156250 -7.045753 +v -0.418509 -3.179127 -7.000000 +v -0.433013 -3.187500 -6.937500 +v -0.418509 -3.179127 -6.875000 +v -0.378886 -3.156250 -6.829247 +v -0.324759 -3.125000 -6.812500 +v -0.270633 -3.093750 -6.829247 +v -0.231009 -3.070873 -6.875000 +v -0.216506 -3.062500 -6.937500 +v -0.231009 -3.070873 -7.000000 +v -0.270633 -3.093750 -7.045753 +v -0.187500 -3.262259 -7.062500 +v -0.218750 -3.316386 -7.045753 +v -0.241627 -3.356009 -7.000000 +v -0.250000 -3.370513 -6.937500 +v -0.241627 -3.356009 -6.875000 +v -0.218750 -3.316386 -6.829247 +v -0.187500 -3.262259 -6.812500 +v -0.156250 -3.208133 -6.829247 +v -0.133374 -3.168509 -6.875000 +v -0.125000 -3.154006 -6.937500 +v -0.133373 -3.168509 -7.000000 +v -0.156250 -3.208133 -7.045753 +v 0.000000 -3.312500 -7.062500 +v 0.000000 -3.375000 -7.045753 +v 0.000000 -3.420753 -7.000000 +v 0.000000 -3.437500 -6.937500 +v 0.000000 -3.420753 -6.875000 +v -0.000000 -3.375000 -6.829247 +v 0.000000 -3.312500 -6.812500 +v -0.000000 -3.250000 -6.829247 +v 0.000000 -3.204247 -6.875000 +v 0.000000 -3.187500 -6.937500 +v 0.000000 -3.204247 -7.000000 +v 0.000000 -3.250000 -7.045753 +v 0.437500 -0.454247 -6.562500 +v 0.483253 -0.500000 -6.562500 +v 0.500000 -0.562500 -6.562500 +v 0.483253 -0.625000 -6.562500 +v 0.437500 -0.670753 -6.562500 +v 0.375000 -0.687500 -6.562500 +v 0.312500 -0.670753 -6.562500 +v 0.266747 -0.625000 -6.562500 +v 0.250000 -0.562500 -6.562500 +v 0.266747 -0.500000 -6.562500 +v 0.312500 -0.454247 -6.562500 +v 0.375000 -2.937500 -7.062500 +v 0.375000 -0.504487 -6.812500 +v 0.437500 -0.518991 -6.804127 +v 0.483253 -0.558614 -6.781250 +v 0.500000 -0.612741 -6.750000 +v 0.483253 -0.666867 -6.718750 +v 0.437500 -0.706490 -6.695873 +v 0.375000 -0.720994 -6.687500 +v 0.312500 -0.706490 -6.695873 +v 0.266747 -0.666867 -6.718750 +v 0.250000 -0.612741 -6.750000 +v 0.266747 -0.558614 -6.781250 +v 0.312500 -0.518991 -6.804127 +v 0.375000 -0.687500 -6.995513 +v 0.437500 -0.695874 -6.981009 +v 0.483253 -0.718750 -6.941386 +v 0.500000 -0.750000 -6.887259 +v 0.483253 -0.781250 -6.833133 +v 0.437500 -0.804126 -6.793509 +v 0.375000 -0.812500 -6.779007 +v 0.312500 -0.804126 -6.793509 +v 0.266747 -0.781250 -6.833133 +v 0.250000 -0.750000 -6.887259 +v 0.266747 -0.718750 -6.941386 +v 0.312500 -0.695874 -6.981009 +v 0.375000 -0.937500 -7.062500 +v 0.437500 -0.937500 -7.045753 +v 0.483253 -0.937500 -7.000000 +v 0.500000 -0.937500 -6.937500 +v 0.483253 -0.937500 -6.875000 +v 0.437500 -0.937500 -6.829247 +v 0.375000 -0.937500 -6.812500 +v 0.312500 -0.937500 -6.829247 +v 0.266747 -0.937500 -6.875000 +v 0.250000 -0.937500 -6.937500 +v 0.266747 -0.937500 -7.000000 +v 0.312500 -0.937500 -7.045753 +v 0.437500 -2.937500 -7.045753 +v 0.483253 -2.937500 -7.000000 +v 0.500000 -2.937500 -6.937500 +v 0.483253 -2.937500 -6.875000 +v 0.437500 -2.937500 -6.829247 +v 0.375000 -2.937500 -6.812500 +v 0.312500 -2.937500 -6.829247 +v 0.266747 -2.937500 -6.875000 +v 0.250000 -2.937500 -6.937500 +v 0.266747 -2.937500 -7.000000 +v 0.312500 -2.937500 -7.045753 +v 0.324759 -3.125000 -7.062500 +v 0.378886 -3.156250 -7.045753 +v 0.418509 -3.179127 -7.000000 +v 0.433012 -3.187500 -6.937500 +v 0.418509 -3.179127 -6.875000 +v 0.378886 -3.156250 -6.829247 +v 0.324759 -3.125000 -6.812500 +v 0.270633 -3.093750 -6.829247 +v 0.231009 -3.070873 -6.875000 +v 0.216506 -3.062500 -6.937500 +v 0.231009 -3.070873 -7.000000 +v 0.270633 -3.093750 -7.045753 +v 0.187500 -3.262259 -7.062500 +v 0.218750 -3.316386 -7.045753 +v 0.241627 -3.356009 -7.000000 +v 0.250000 -3.370513 -6.937500 +v 0.241627 -3.356009 -6.875000 +v 0.218750 -3.316386 -6.829247 +v 0.187500 -3.262259 -6.812500 +v 0.156250 -3.208133 -6.829247 +v 0.133373 -3.168509 -6.875000 +v 0.125000 -3.154006 -6.937500 +v 0.133373 -3.168509 -7.000000 +v 0.156250 -3.208133 -7.045753 +v -0.375000 -0.437500 1.187500 +v -0.437500 -0.454247 1.187500 +v -0.483253 -0.500000 1.187500 +v -0.500000 -0.562500 1.187500 +v -0.483253 -0.625000 1.187500 +v -0.437500 -0.670753 1.187500 +v -0.375000 -0.687500 1.187500 +v -0.312500 -0.670753 1.187500 +v -0.266747 -0.625000 1.187500 +v -0.250000 -0.562500 1.187500 +v -0.266747 -0.500000 1.187500 +v -0.312500 -0.454247 1.187500 +v 0.375000 -0.437500 1.187500 +v 0.437500 -0.454247 1.187500 +v 0.483253 -0.500000 1.187500 +v 0.500000 -0.562500 1.187500 +v 0.483253 -0.625000 1.187500 +v 0.437500 -0.670753 1.187500 +v 0.375000 -0.687500 1.187500 +v 0.312500 -0.670753 1.187500 +v 0.266747 -0.625000 1.187500 +v 0.250000 -0.562500 1.187500 +v 0.266747 -0.500000 1.187500 +v 0.312500 -0.454247 1.187500 +vt 0.518695 0.923665 +vt 0.528925 0.923665 +vt 0.523810 0.944337 +vt 0.518695 0.937446 +vt 0.523810 0.916775 +vt 0.528925 0.937446 +vt 0.520857 0.942491 +vt 0.518695 0.937446 +vt 0.517904 0.930556 +vt 0.520857 0.918621 +vt 0.523810 0.916775 +vt 0.526763 0.918621 +vt 0.529716 0.930556 +vt 0.528925 0.937446 +vt 0.526763 0.942490 +vt 0.526763 0.942490 +vt 0.523810 0.944337 +vt 0.520857 0.942491 +vt 0.517904 0.930556 +vt 0.518695 0.923665 +vt 0.520857 0.918621 +vt 0.526763 0.918621 +vt 0.528925 0.923665 +vt 0.529716 0.930556 +vt 0.369048 0.916667 +vt 0.377976 0.923611 +vt 0.369048 0.923611 +vt 0.369048 0.979167 +vt 0.377976 0.986111 +vt 0.369048 0.986111 +vt 0.369048 0.951389 +vt 0.377976 0.944444 +vt 0.377976 0.951389 +vt 0.369048 0.965278 +vt 0.377976 0.958333 +vt 0.377976 0.965278 +vt 0.369048 0.930556 +vt 0.377976 0.930556 +vt 0.369048 0.993056 +vt 0.377976 0.993056 +vt 0.369048 0.958333 +vt 0.369048 0.972222 +vt 0.377976 0.972222 +vt 0.377976 0.937500 +vt 0.369048 0.937500 +vt 0.369048 1.000000 +vt 0.377976 1.000000 +vt 0.377976 0.979167 +vt 0.369048 0.944444 +vt 0.386905 0.958333 +vt 0.386905 0.972222 +vt 0.386905 0.930556 +vt 0.386905 0.937500 +vt 0.386905 1.000000 +vt 0.386905 0.979167 +vt 0.386905 0.944444 +vt 0.377976 0.916667 +vt 0.386905 0.923611 +vt 0.386905 0.986111 +vt 0.386905 0.951389 +vt 0.386905 0.965278 +vt 0.386905 0.993056 +vt 0.395833 0.993056 +vt 0.395833 0.951389 +vt 0.395833 0.958333 +vt 0.395833 0.972222 +vt 0.395833 0.930556 +vt 0.395833 0.937500 +vt 0.395833 1.000000 +vt 0.395833 0.979167 +vt 0.395833 0.944444 +vt 0.386905 0.916667 +vt 0.395833 0.923611 +vt 0.395833 0.986111 +vt 0.395833 0.965278 +vt 0.491071 0.993056 +vt 0.491071 0.958333 +vt 0.491071 0.972222 +vt 0.491071 0.930556 +vt 0.491071 0.937500 +vt 0.491071 1.000000 +vt 0.491071 0.979167 +vt 0.491071 0.944444 +vt 0.395833 0.916667 +vt 0.491071 0.923611 +vt 0.491071 0.986111 +vt 0.491071 0.951389 +vt 0.491071 0.965278 +vt 0.500000 0.923611 +vt 0.500000 0.930556 +vt 0.500000 0.993056 +vt 0.500000 0.958333 +vt 0.500000 0.972222 +vt 0.500000 0.937500 +vt 0.500000 1.000000 +vt 0.500000 0.979167 +vt 0.500000 0.944444 +vt 0.491071 0.916667 +vt 0.500000 0.986111 +vt 0.500000 0.951389 +vt 0.500000 0.965278 +vt 0.508929 0.958333 +vt 0.508929 0.965278 +vt 0.508929 0.923611 +vt 0.508929 0.930556 +vt 0.508929 0.993056 +vt 0.508929 0.972222 +vt 0.508929 0.937500 +vt 0.508929 1.000000 +vt 0.508929 0.979167 +vt 0.508929 0.944444 +vt 0.500000 0.916667 +vt 0.508929 0.986111 +vt 0.508929 0.951389 +vt 0.517857 0.951389 +vt 0.517857 0.958333 +vt 0.517857 0.965278 +vt 0.517857 0.923611 +vt 0.517857 0.930556 +vt 0.517857 0.993056 +vt 0.517857 0.972222 +vt 0.517857 0.937500 +vt 0.517857 1.000000 +vt 0.517857 0.979167 +vt 0.517857 0.944444 +vt 0.508929 0.916667 +vt 0.517857 0.986111 +vt 0.377976 0.993056 +vt 0.369048 1.000000 +vt 0.369048 0.993056 +vt 0.377976 0.930556 +vt 0.369048 0.937500 +vt 0.369048 0.930556 +vt 0.369048 0.965278 +vt 0.377976 0.972222 +vt 0.369048 0.972222 +vt 0.369048 0.951389 +vt 0.377976 0.958333 +vt 0.369048 0.958333 +vt 0.377976 0.986111 +vt 0.369048 0.986111 +vt 0.377976 0.923611 +vt 0.369048 0.923611 +vt 0.377976 0.944444 +vt 0.369048 0.944444 +vt 0.369048 0.979167 +vt 0.369048 0.916667 +vt 0.377976 0.979167 +vt 0.386905 0.965278 +vt 0.377976 0.965278 +vt 0.386905 0.944444 +vt 0.377976 0.951389 +vt 0.386905 0.979167 +vt 0.377976 0.916667 +vt 0.386905 0.923611 +vt 0.377976 0.937500 +vt 0.386905 0.972222 +vt 0.386905 0.993056 +vt 0.377976 1.000000 +vt 0.386905 0.930556 +vt 0.386905 0.951389 +vt 0.395833 0.923611 +vt 0.395833 0.958333 +vt 0.386905 0.958333 +vt 0.395833 0.944444 +vt 0.395833 0.986111 +vt 0.386905 0.986111 +vt 0.386905 0.916667 +vt 0.395833 0.937500 +vt 0.386905 0.937500 +vt 0.395833 0.979167 +vt 0.395833 0.993056 +vt 0.386905 1.000000 +vt 0.395833 0.930556 +vt 0.395833 0.972222 +vt 0.491071 0.923611 +vt 0.491071 0.958333 +vt 0.395833 0.965278 +vt 0.491071 0.944444 +vt 0.395833 0.951389 +vt 0.491071 0.979167 +vt 0.395833 0.916667 +vt 0.491071 0.937500 +vt 0.491071 0.972222 +vt 0.491071 0.993056 +vt 0.395833 1.000000 +vt 0.491071 0.930556 +vt 0.491071 0.951389 +vt 0.491071 0.986111 +vt 0.500000 0.993056 +vt 0.500000 0.923611 +vt 0.500000 0.958333 +vt 0.491071 0.965278 +vt 0.500000 0.944444 +vt 0.500000 0.986111 +vt 0.491071 0.916667 +vt 0.500000 0.972222 +vt 0.491071 1.000000 +vt 0.500000 0.937500 +vt 0.500000 0.951389 +vt 0.508929 0.958333 +vt 0.508929 0.993056 +vt 0.508929 0.923611 +vt 0.500000 0.930556 +vt 0.500000 0.965278 +vt 0.508929 0.944444 +vt 0.508929 0.979167 +vt 0.500000 0.979167 +vt 0.508929 0.916667 +vt 0.500000 0.916667 +vt 0.500000 1.000000 +vt 0.508929 0.930556 +vt 0.508929 0.972222 +vt 0.517857 0.972222 +vt 0.508929 0.965278 +vt 0.517857 0.965278 +vt 0.517857 0.979167 +vt 0.508929 0.986111 +vt 0.517857 0.986111 +vt 0.517857 0.993056 +vt 0.517857 0.916667 +vt 0.517857 0.923611 +vt 0.517857 0.930556 +vt 0.508929 0.937500 +vt 0.517857 0.937500 +vt 0.517857 0.944444 +vt 0.508929 0.951389 +vt 0.517857 0.951389 +vt 0.000000 0.937500 +vt 0.000000 0.965278 +vt 0.000000 0.993056 +vt 0.000000 0.930556 +vt 0.000000 0.958333 +vt 0.000000 0.916667 +vt 0.000000 0.923611 +vt 0.000000 0.923611 +vt 0.000000 0.916667 +vt 0.000000 0.958333 +vt 0.000000 0.930556 +vt 0.000000 0.993056 +vt 0.000000 0.965278 +vt 0.000000 0.937500 +vt 0.000000 0.986111 +vt 0.000000 0.972222 +vt 0.000000 0.951389 +vt 0.000000 0.944444 +vt 0.000000 0.979167 +vt 0.000000 0.979167 +vt 0.000000 0.944444 +vt 0.000000 0.951389 +vt 0.000000 0.972222 +vt 0.000000 0.986111 +vt 0.508929 1.000000 +vt 0.000000 1.000000 +vt 0.000000 1.000000 +vn 0.0000 0.0000 1.0000 +vn -0.0000 -0.9911 0.1334 +vn 0.5194 -0.7400 0.4273 +vn 0.5065 -0.8546 0.1144 +vn -0.9998 0.0215 -0.0058 +vn -0.8846 -0.4039 0.2332 +vn -0.8738 -0.4822 0.0628 +vn 0.4883 0.8653 -0.1129 +vn 0.8474 0.4598 -0.2654 +vn 0.4823 0.7586 -0.4380 +vn -0.4883 0.8653 -0.1129 +vn 0.0000 0.8660 -0.5000 +vn -0.4823 0.7586 -0.4380 +vn 0.8738 -0.4822 0.0628 +vn 0.8846 -0.4039 0.2332 +vn -0.5065 -0.8546 0.1144 +vn -0.5194 -0.7400 0.4273 +vn 0.0000 0.9918 -0.1278 +vn -0.8549 0.5140 -0.0698 +vn -0.8474 0.4598 -0.2654 +vn 0.9991 0.0373 -0.0215 +vn 0.9998 0.0215 -0.0058 +vn -0.0000 -0.8660 0.5000 +vn -0.9991 0.0373 -0.0215 +vn 0.8549 0.5140 -0.0698 +vn -0.0000 0.5000 -0.8660 +vn -0.8474 0.2655 -0.4598 +vn 0.8846 -0.2332 0.4039 +vn 0.9991 0.0215 -0.0373 +vn 0.0000 -0.5000 0.8660 +vn -0.9991 0.0215 -0.0373 +vn 0.8474 0.2655 -0.4598 +vn 0.5195 -0.4273 0.7400 +vn -0.8846 -0.2332 0.4039 +vn 0.4823 0.4380 -0.7586 +vn -0.4823 0.4380 -0.7586 +vn -0.5194 -0.4273 0.7400 +vn -0.5065 -0.1144 0.8546 +vn 0.4883 0.1129 -0.8653 +vn -0.0000 0.1278 -0.9918 +vn -0.8549 0.0698 -0.5140 +vn 0.8738 -0.0628 0.4822 +vn 0.9998 0.0058 -0.0215 +vn -0.0000 -0.1334 0.9911 +vn -0.9998 0.0058 -0.0215 +vn 0.8549 0.0698 -0.5140 +vn 0.5065 -0.1144 0.8546 +vn -0.8738 -0.0628 0.4822 +vn -0.4883 0.1129 -0.8653 +vn -0.5140 -0.0698 0.8549 +vn -0.0215 -0.0058 -0.9998 +vn -0.8653 -0.1129 -0.4883 +vn 0.8546 0.1144 0.5065 +vn 0.9911 0.1334 0.0000 +vn -0.0215 -0.0058 0.9998 +vn -0.9918 -0.1278 0.0000 +vn 0.8546 0.1144 -0.5065 +vn 0.4822 0.0628 0.8738 +vn -0.8653 -0.1129 0.4883 +vn 0.4822 0.0628 -0.8738 +vn -0.5140 -0.0698 -0.8549 +vn 0.4039 0.2332 0.8846 +vn 0.7400 0.4273 0.5195 +vn -0.4598 -0.2655 0.8474 +vn -0.0373 -0.0215 -0.9991 +vn -0.7586 -0.4380 -0.4823 +vn 0.8660 0.5000 0.0000 +vn -0.0373 -0.0215 0.9991 +vn -0.8660 -0.5000 -0.0000 +vn 0.7400 0.4273 -0.5195 +vn -0.7586 -0.4380 0.4823 +vn 0.4039 0.2332 -0.8846 +vn -0.4598 -0.2655 -0.8474 +vn -0.0215 -0.0373 -0.9991 +vn -0.2655 -0.4598 -0.8474 +vn 0.2332 0.4039 0.8846 +vn 0.4273 0.7400 0.5195 +vn -0.2655 -0.4598 0.8474 +vn -0.4380 -0.7586 -0.4823 +vn 0.5000 0.8660 -0.0000 +vn -0.0215 -0.0373 0.9991 +vn -0.5000 -0.8660 -0.0000 +vn 0.4273 0.7400 -0.5194 +vn -0.4380 -0.7586 0.4823 +vn 0.2332 0.4039 -0.8846 +vn 0.0000 0.4664 -0.8846 +vn 0.0000 -0.0431 -0.9991 +vn 0.0000 -0.5309 -0.8474 +vn 0.0000 0.4664 0.8846 +vn 0.0000 0.8545 0.5195 +vn -0.0000 -0.5309 0.8474 +vn 0.0000 -0.8760 -0.4823 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -0.0431 0.9991 +vn 0.0000 -1.0000 -0.0000 +vn 0.0000 0.8545 -0.5194 +vn 0.0000 -0.8760 0.4823 +vn -0.5194 -0.7400 0.4272 +vn 0.5195 -0.7400 0.4272 +vn 0.5194 -0.4273 0.7400 +vn 0.5140 -0.0698 0.8549 +vn 0.0215 -0.0058 -0.9998 +vn 0.8653 -0.1129 -0.4883 +vn -0.9911 0.1334 0.0000 +vn 0.9918 -0.1278 0.0000 +vn -0.8546 0.1144 -0.5065 +vn -0.4822 0.0628 0.8738 +vn 0.8653 -0.1129 0.4883 +vn 0.5140 -0.0698 -0.8549 +vn -0.8546 0.1144 0.5065 +vn -0.4039 0.2332 0.8846 +vn 0.4598 -0.2654 0.8474 +vn 0.0373 -0.0215 -0.9991 +vn -0.4822 0.0628 -0.8738 +vn 0.7586 -0.4380 -0.4823 +vn -0.7400 0.4272 0.5194 +vn 0.0215 -0.0058 0.9998 +vn -0.7400 0.4273 -0.5195 +vn 0.8660 -0.5000 -0.0000 +vn 0.4598 -0.2654 -0.8474 +vn 0.0215 -0.0373 -0.9991 +vn -0.2332 0.4039 0.8846 +vn 0.2655 -0.4598 0.8474 +vn 0.7586 -0.4380 0.4823 +vn -0.4039 0.2332 -0.8846 +vn 0.4380 -0.7586 -0.4823 +vn -0.5000 0.8660 -0.0000 +vn -0.8660 0.5000 -0.0000 +vn 0.0215 -0.0373 0.9991 +vn 0.0373 -0.0215 0.9991 +vn 0.4380 -0.7586 0.4823 +vn -0.4273 0.7400 -0.5194 +vn -0.2332 0.4039 -0.8846 +vn -0.4273 0.7400 0.5194 +vn 0.5000 -0.8660 -0.0000 +vn 0.2654 -0.4598 -0.8474 +vn 1.0000 0.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +s off +f 367/309/91 371/310/91 363/311/91 +f 385/312/91 381/313/91 377/314/91 +f 363/311/91 364/315/91 365/316/91 +f 365/316/91 366/317/91 363/311/91 +f 366/317/91 367/309/91 363/311/91 +f 367/309/91 368/318/91 371/310/91 +f 368/318/91 369/319/91 371/310/91 +f 369/319/91 370/320/91 371/310/91 +f 371/310/91 372/321/91 373/322/91 +f 373/322/91 374/323/91 371/310/91 +f 374/323/91 363/311/91 371/310/91 +f 377/314/91 376/324/91 375/325/91 +f 375/325/91 386/326/91 377/314/91 +f 386/326/91 385/312/91 377/314/91 +f 385/312/91 384/327/91 383/328/91 +f 383/328/91 382/329/91 385/312/91 +f 382/329/91 381/313/91 385/312/91 +f 381/313/91 380/330/91 377/314/91 +f 380/330/91 379/331/91 377/314/91 +f 379/331/91 378/332/91 377/314/91 +s 1 +f 189/333/92 203/334/93 190/335/94 +f 186/336/95 200/337/96 187/338/97 +f 194/339/98 206/340/99 207/341/100 +f 184/342/101 196/343/102 197/344/103 +f 191/345/104 203/334/93 204/346/105 +f 188/347/106 200/337/96 201/348/107 +f 194/339/98 196/343/102 183/349/108 +f 185/350/109 197/344/103 198/351/110 +f 191/345/104 205/352/111 192/353/112 +f 189/354/92 201/348/107 202/355/113 +f 185/350/109 199/356/114 186/336/95 +f 192/353/112 206/340/99 193/357/115 +f 207/341/100 208/358/116 196/343/102 +f 197/344/103 210/359/117 198/351/110 +f 205/352/111 216/360/118 217/361/119 +f 201/348/107 214/362/120 202/355/113 +f 198/351/110 211/363/121 199/356/114 +f 205/352/111 218/364/122 206/340/99 +f 202/365/113 215/366/123 203/334/93 +f 199/356/114 212/367/124 200/337/96 +f 207/341/100 218/364/122 219/368/125 +f 197/344/103 208/358/116 209/369/126 +f 204/346/105 215/366/123 216/360/118 +f 200/337/96 213/370/127 201/348/107 +f 212/367/124 225/371/128 213/370/127 +f 208/358/116 231/372/129 220/373/130 +f 209/369/126 222/374/131 210/359/117 +f 217/361/119 228/375/132 229/376/133 +f 214/362/120 225/371/128 226/377/134 +f 210/359/117 223/378/135 211/363/121 +f 218/364/122 229/376/133 230/379/136 +f 214/380/120 227/381/137 215/366/123 +f 211/363/121 224/382/138 212/367/124 +f 219/368/125 230/379/136 231/372/129 +f 209/369/126 220/373/130 221/383/139 +f 216/360/118 227/381/137 228/375/132 +f 224/382/138 236/384/140 225/371/128 +f 231/372/129 195/385/141 220/373/130 +f 221/383/139 233/386/142 222/374/131 +f 229/376/133 239/387/143 240/388/144 +f 225/371/128 237/389/145 226/377/134 +f 222/374/131 234/390/146 223/378/135 +f 229/376/133 241/391/147 230/379/136 +f 226/392/134 238/393/148 227/381/137 +f 223/378/135 235/394/149 224/382/138 +f 230/379/136 242/395/150 231/372/129 +f 221/383/139 195/385/141 232/396/151 +f 228/375/132 238/393/148 239/387/143 +f 239/387/143 251/397/152 252/398/153 +f 235/394/149 249/399/154 236/384/140 +f 242/395/150 244/400/155 195/385/141 +f 232/396/151 246/401/156 233/386/142 +f 240/388/144 252/398/153 253/402/157 +f 237/389/145 249/399/154 250/403/158 +f 234/390/146 246/401/156 247/404/159 +f 240/388/144 254/405/160 241/391/147 +f 237/406/145 251/397/152 238/393/148 +f 235/394/149 247/404/159 248/407/161 +f 242/395/150 254/405/160 255/408/162 +f 232/396/151 244/400/155 245/409/163 +f 245/409/163 256/410/164 257/411/165 +f 252/398/153 263/412/166 264/413/167 +f 248/407/161 261/414/168 249/399/154 +f 255/408/162 256/410/164 244/400/155 +f 246/401/156 257/411/165 258/415/169 +f 252/398/153 265/416/170 253/402/157 +f 250/403/158 261/414/168 262/417/171 +f 247/404/159 258/415/169 259/418/172 +f 254/405/160 265/416/170 266/419/173 +f 250/420/158 263/412/166 251/397/152 +f 247/404/159 260/421/174 248/407/161 +f 255/408/162 266/419/173 267/422/175 +f 266/419/173 279/423/176 267/422/175 +f 257/411/165 268/424/177 269/425/178 +f 264/413/167 275/426/179 276/427/180 +f 260/421/174 273/428/181 261/414/168 +f 267/422/175 268/424/177 256/410/164 +f 257/411/165 270/429/182 258/415/169 +f 265/416/170 276/427/180 277/430/183 +f 262/417/171 273/428/181 274/431/184 +f 259/418/172 270/429/182 271/432/185 +f 266/419/173 277/430/183 278/433/186 +f 262/434/171 275/426/179 263/412/166 +f 259/418/172 272/435/187 260/421/174 +f 299/436/188 285/437/92 286/438/106 +f 296/439/105 282/440/112 283/441/104 +f 290/442/101 302/443/110 289/444/109 +f 280/445/98 292/446/102 243/447/108 +f 300/448/96 286/438/106 287/449/97 +f 297/450/189 283/441/104 284/451/94 +f 292/446/102 290/442/101 243/447/108 +f 294/452/99 280/445/98 281/453/115 +f 288/454/95 300/448/96 287/449/97 +f 285/455/92 297/450/189 284/451/94 +f 282/440/112 294/452/99 281/453/115 +f 289/444/109 301/456/114 288/454/95 +f 292/446/102 315/457/126 303/458/103 +f 306/459/122 293/460/100 294/452/99 +f 313/461/121 300/448/96 301/456/114 +f 298/462/113 309/463/190 297/450/189 +f 295/464/111 306/459/122 294/452/99 +f 314/465/117 301/456/114 302/443/110 +f 311/466/127 298/467/113 299/436/188 +f 308/468/118 295/464/111 296/439/105 +f 303/458/103 314/465/117 302/443/110 +f 305/469/125 292/446/102 293/460/100 +f 300/448/96 311/466/127 299/436/188 +f 309/463/190 296/439/105 297/450/189 +f 321/470/137 308/468/118 309/463/190 +f 316/471/130 315/457/126 304/472/116 +f 318/473/136 305/469/125 306/459/122 +f 313/461/121 324/474/138 312/475/124 +f 310/476/120 321/470/137 309/463/190 +f 319/477/133 306/459/122 307/478/119 +f 314/465/117 325/479/135 313/461/121 +f 323/480/128 310/481/120 311/466/127 +f 320/482/132 307/478/119 308/468/118 +f 315/457/126 326/483/131 314/465/117 +f 305/469/125 316/471/130 304/472/116 +f 312/475/124 323/480/128 311/466/127 +f 332/484/191 320/482/132 321/470/137 +f 291/485/192 327/486/139 316/471/130 +f 329/487/193 317/488/129 318/473/136 +f 336/489/194 324/474/138 325/479/135 +f 322/490/134 332/484/191 321/470/137 +f 330/491/195 318/473/136 319/477/133 +f 337/492/196 325/479/135 326/483/131 +f 334/493/197 322/494/134 323/480/128 +f 331/495/198 319/477/133 320/482/132 +f 327/486/139 337/492/196 326/483/131 +f 328/496/199 316/471/130 317/488/129 +f 324/474/138 334/493/197 323/480/128 +f 335/497/200 346/498/201 334/493/197 +f 344/499/202 331/495/198 332/484/191 +f 339/500/203 338/501/204 291/485/192 +f 341/502/205 328/496/199 329/487/193 +f 336/489/194 347/503/206 335/497/200 +f 333/504/207 344/499/202 332/484/191 +f 330/491/195 341/502/205 329/487/193 +f 349/505/208 336/489/194 337/492/196 +f 346/498/201 333/506/207 334/493/197 +f 331/495/198 342/507/209 330/491/195 +f 338/501/204 349/505/208 337/492/196 +f 328/496/199 339/500/203 291/485/192 +f 340/508/210 351/509/211 339/500/203 +f 347/503/206 358/510/212 346/498/201 +f 356/511/213 343/512/214 344/499/202 +f 351/509/211 350/513/215 339/500/203 +f 353/514/216 340/508/210 341/502/205 +f 360/515/217 347/503/206 348/516/218 +f 357/517/219 344/499/202 345/518/220 +f 342/507/209 353/514/216 341/502/205 +f 349/505/208 360/515/217 348/516/218 +f 358/510/212 345/519/220 346/498/201 +f 355/520/221 342/507/209 343/512/214 +f 350/513/215 361/521/222 349/505/208 +f 278/522/186 362/523/223 279/524/176 +f 277/525/183 361/521/222 278/522/186 +f 359/526/224 277/525/183 276/527/180 +f 358/510/212 276/527/180 275/528/179 +f 274/431/184 358/510/212 275/528/179 +f 356/511/213 274/529/184 273/530/181 +f 272/531/187 356/511/213 273/530/181 +f 354/532/225 272/531/187 271/533/185 +f 270/534/182 354/532/225 271/533/185 +f 352/535/226 270/534/182 269/536/178 +f 268/424/177 352/535/226 269/536/178 +f 362/523/223 268/424/177 279/524/176 +f 281/453/115 378/537/227 282/440/112 +f 289/444/109 386/538/217 290/442/101 +f 189/354/92 368/539/172 188/347/106 +f 282/440/112 379/540/209 283/441/104 +f 290/442/101 375/541/183 243/447/108 +f 190/335/94 369/542/185 189/333/92 +f 283/441/104 380/543/225 284/451/94 +f 191/345/104 370/544/225 190/335/94 +f 284/451/94 381/545/185 285/455/92 +f 184/342/101 363/546/183 183/349/108 +f 192/353/112 371/547/209 191/345/104 +f 285/437/92 382/548/172 286/438/106 +f 185/350/109 364/549/217 184/342/101 +f 193/357/115 372/550/227 192/353/112 +f 286/438/106 383/551/159 287/449/97 +f 186/336/95 365/552/218 185/350/109 +f 243/447/108 376/553/170 280/445/98 +f 194/339/98 373/554/157 193/357/115 +f 287/449/97 384/555/228 288/454/95 +f 187/338/97 366/556/228 186/336/95 +f 280/445/98 377/557/157 281/453/115 +f 183/349/108 374/558/170 194/339/98 +f 288/454/95 385/559/218 289/444/109 +f 188/347/106 367/560/159 187/338/97 +f 189/333/92 202/365/113 203/334/93 +f 186/336/95 199/356/114 200/337/96 +f 194/339/98 193/357/115 206/340/99 +f 184/342/101 183/349/108 196/343/102 +f 191/345/104 190/335/94 203/334/93 +f 188/347/106 187/338/97 200/337/96 +f 194/339/98 207/341/100 196/343/102 +f 185/350/109 184/342/101 197/344/103 +f 191/345/104 204/346/105 205/352/111 +f 189/354/92 188/347/106 201/348/107 +f 185/350/109 198/351/110 199/356/114 +f 192/353/112 205/352/111 206/340/99 +f 207/341/100 219/368/125 208/358/116 +f 197/344/103 209/369/126 210/359/117 +f 205/352/111 204/346/105 216/360/118 +f 201/348/107 213/370/127 214/362/120 +f 198/351/110 210/359/117 211/363/121 +f 205/352/111 217/361/119 218/364/122 +f 202/365/113 214/380/120 215/366/123 +f 199/356/114 211/363/121 212/367/124 +f 207/341/100 206/340/99 218/364/122 +f 197/344/103 196/343/102 208/358/116 +f 204/346/105 203/334/93 215/366/123 +f 200/337/96 212/367/124 213/370/127 +f 212/367/124 224/382/138 225/371/128 +f 208/358/116 219/368/125 231/372/129 +f 209/369/126 221/383/139 222/374/131 +f 217/361/119 216/360/118 228/375/132 +f 214/362/120 213/370/127 225/371/128 +f 210/359/117 222/374/131 223/378/135 +f 218/364/122 217/361/119 229/376/133 +f 214/380/120 226/392/134 227/381/137 +f 211/363/121 223/378/135 224/382/138 +f 219/368/125 218/364/122 230/379/136 +f 209/369/126 208/358/116 220/373/130 +f 216/360/118 215/366/123 227/381/137 +f 224/382/138 235/394/149 236/384/140 +f 231/372/129 242/395/150 195/385/141 +f 221/383/139 232/396/151 233/386/142 +f 229/376/133 228/375/132 239/387/143 +f 225/371/128 236/384/140 237/389/145 +f 222/374/131 233/386/142 234/390/146 +f 229/376/133 240/388/144 241/391/147 +f 226/392/134 237/406/145 238/393/148 +f 223/378/135 234/390/146 235/394/149 +f 230/379/136 241/391/147 242/395/150 +f 221/383/139 220/373/130 195/385/141 +f 228/375/132 227/381/137 238/393/148 +f 239/387/143 238/393/148 251/397/152 +f 235/394/149 248/407/161 249/399/154 +f 242/395/150 255/408/162 244/400/155 +f 232/396/151 245/409/163 246/401/156 +f 240/388/144 239/387/143 252/398/153 +f 237/389/145 236/384/140 249/399/154 +f 234/390/146 233/386/142 246/401/156 +f 240/388/144 253/402/157 254/405/160 +f 237/406/145 250/420/158 251/397/152 +f 235/394/149 234/390/146 247/404/159 +f 242/395/150 241/391/147 254/405/160 +f 232/396/151 195/385/141 244/400/155 +f 245/409/163 244/400/155 256/410/164 +f 252/398/153 251/397/152 263/412/166 +f 248/407/161 260/421/174 261/414/168 +f 255/408/162 267/422/175 256/410/164 +f 246/401/156 245/409/163 257/411/165 +f 252/398/153 264/413/167 265/416/170 +f 250/403/158 249/399/154 261/414/168 +f 247/404/159 246/401/156 258/415/169 +f 254/405/160 253/402/157 265/416/170 +f 250/420/158 262/434/171 263/412/166 +f 247/404/159 259/418/172 260/421/174 +f 255/408/162 254/405/160 266/419/173 +f 266/419/173 278/433/186 279/423/176 +f 257/411/165 256/410/164 268/424/177 +f 264/413/167 263/412/166 275/426/179 +f 260/421/174 272/435/187 273/428/181 +f 267/422/175 279/423/176 268/424/177 +f 257/411/165 269/425/178 270/429/182 +f 265/416/170 264/413/167 276/427/180 +f 262/417/171 261/414/168 273/428/181 +f 259/418/172 258/415/169 270/429/182 +f 266/419/173 265/416/170 277/430/183 +f 262/434/171 274/529/184 275/426/179 +f 259/418/172 271/432/185 272/435/187 +f 299/436/188 298/467/113 285/437/92 +f 296/439/105 295/464/111 282/440/112 +f 290/442/101 303/458/103 302/443/110 +f 280/445/98 293/460/100 292/446/102 +f 300/448/96 299/436/188 286/438/106 +f 297/450/189 296/439/105 283/441/104 +f 292/446/102 303/458/103 290/442/101 +f 294/452/99 293/460/100 280/445/98 +f 288/454/95 301/456/114 300/448/96 +f 285/455/92 298/462/113 297/450/189 +f 282/440/112 295/464/111 294/452/99 +f 289/444/109 302/443/110 301/456/114 +f 292/446/102 304/472/116 315/457/126 +f 306/459/122 305/469/125 293/460/100 +f 313/461/121 312/475/124 300/448/96 +f 298/462/113 310/476/120 309/463/190 +f 295/464/111 307/478/119 306/459/122 +f 314/465/117 313/461/121 301/456/114 +f 311/466/127 310/481/120 298/467/113 +f 308/468/118 307/478/119 295/464/111 +f 303/458/103 315/457/126 314/465/117 +f 305/469/125 304/472/116 292/446/102 +f 300/448/96 312/475/124 311/466/127 +f 309/463/190 308/468/118 296/439/105 +f 321/470/137 320/482/132 308/468/118 +f 316/471/130 327/486/139 315/457/126 +f 318/473/136 317/488/129 305/469/125 +f 313/461/121 325/479/135 324/474/138 +f 310/476/120 322/490/134 321/470/137 +f 319/477/133 318/473/136 306/459/122 +f 314/465/117 326/483/131 325/479/135 +f 323/480/128 322/494/134 310/481/120 +f 320/482/132 319/477/133 307/478/119 +f 315/457/126 327/486/139 326/483/131 +f 305/469/125 317/488/129 316/471/130 +f 312/475/124 324/474/138 323/480/128 +f 332/484/191 331/495/198 320/482/132 +f 291/485/192 338/501/204 327/486/139 +f 329/487/193 328/496/199 317/488/129 +f 336/489/194 335/497/200 324/474/138 +f 322/490/134 333/504/207 332/484/191 +f 330/491/195 329/487/193 318/473/136 +f 337/492/196 336/489/194 325/479/135 +f 334/493/197 333/506/207 322/494/134 +f 331/495/198 330/491/195 319/477/133 +f 327/486/139 338/501/204 337/492/196 +f 328/496/199 291/485/192 316/471/130 +f 324/474/138 335/497/200 334/493/197 +f 335/497/200 347/503/206 346/498/201 +f 344/499/202 343/512/214 331/495/198 +f 339/500/203 350/513/215 338/501/204 +f 341/502/205 340/508/210 328/496/199 +f 336/489/194 348/516/218 347/503/206 +f 333/504/207 345/518/220 344/499/202 +f 330/491/195 342/507/209 341/502/205 +f 349/505/208 348/516/218 336/489/194 +f 346/498/201 345/519/220 333/506/207 +f 331/495/198 343/512/214 342/507/209 +f 338/501/204 350/513/215 349/505/208 +f 328/496/199 340/508/210 339/500/203 +f 340/508/210 352/535/226 351/509/211 +f 347/503/206 359/526/224 358/510/212 +f 356/511/213 355/520/221 343/512/214 +f 351/509/211 362/523/223 350/513/215 +f 353/514/216 352/535/226 340/508/210 +f 360/515/217 359/526/224 347/503/206 +f 357/517/219 356/511/213 344/499/202 +f 342/507/209 354/532/225 353/514/216 +f 349/505/208 361/521/222 360/515/217 +f 358/510/212 357/561/219 345/519/220 +f 355/520/221 354/532/225 342/507/209 +f 350/513/215 362/523/223 361/521/222 +f 278/522/186 361/521/222 362/523/223 +f 277/525/183 360/515/217 361/521/222 +f 359/526/224 360/515/217 277/525/183 +f 358/510/212 359/526/224 276/527/180 +f 274/431/184 357/561/219 358/510/212 +f 356/511/213 357/517/219 274/529/184 +f 272/531/187 355/520/221 356/511/213 +f 354/532/225 355/520/221 272/531/187 +f 270/534/182 353/514/216 354/532/225 +f 352/535/226 353/514/216 270/534/182 +f 268/424/177 351/509/211 352/535/226 +f 362/523/223 351/509/211 268/424/177 +f 281/453/115 377/557/157 378/537/227 +f 289/444/109 385/559/218 386/538/217 +f 189/354/92 369/562/185 368/539/172 +f 282/440/112 378/537/227 379/540/209 +f 290/442/101 386/538/217 375/541/183 +f 190/335/94 370/544/225 369/542/185 +f 283/441/104 379/540/209 380/543/225 +f 191/345/104 371/547/209 370/544/225 +f 284/451/94 380/543/225 381/545/185 +f 184/342/101 364/549/217 363/546/183 +f 192/353/112 372/550/227 371/547/209 +f 285/437/92 381/563/185 382/548/172 +f 185/350/109 365/552/218 364/549/217 +f 193/357/115 373/554/157 372/550/227 +f 286/438/106 382/548/172 383/551/159 +f 186/336/95 366/556/228 365/552/218 +f 243/447/108 375/541/183 376/553/170 +f 194/339/98 374/558/170 373/554/157 +f 287/449/97 383/551/159 384/555/228 +f 187/338/97 367/560/159 366/556/228 +f 280/445/98 376/553/170 377/557/157 +f 183/349/108 363/546/183 374/558/170 +f 288/454/95 384/555/228 385/559/218 +f 188/347/106 368/539/172 367/560/159 +o Gun v 0.000000 0.250000 3.750000 v 0.000000 0.250000 8.000000 v 0.095671 0.230970 3.750000 @@ -227,16 +2134,8 @@ v 0.397747 0.397748 -4.625000 v 0.215259 0.519682 -4.625000 v -0.312500 -0.437500 1.250000 v 0.312500 -0.437500 1.250000 -v 0.187500 -0.312500 1.375000 -v 0.187500 -0.312500 2.375000 -v -0.187500 -0.312500 2.375000 -v -0.187500 -0.312500 1.375000 v -0.312500 -2.187500 1.250000 v 0.312500 -2.187500 1.250000 -v -0.187500 -6.687500 1.375000 -v -0.187500 -6.687500 2.375000 -v 0.187500 -6.687500 2.375000 -v 0.187500 -6.687500 1.375000 v -0.312500 -0.437500 2.312500 v -0.125000 -0.437500 2.500000 v 0.125000 -0.437500 2.500000 @@ -328,22 +2227,6 @@ v -0.230970 0.095671 2.875000 v -0.176777 0.176777 2.875000 v -0.095671 0.230970 2.875000 v -0.000000 0.250000 2.875000 -v 0.562500 1.125000 0.312500 -v 0.519682 0.909741 0.312500 -v 0.397748 0.727252 0.312500 -v 0.215260 0.605318 0.312500 -v 0.625000 1.125000 0.312500 -v 0.239177 0.547575 0.312500 -v 0.441942 0.683058 0.312500 -v 0.577425 0.885823 0.312500 -v 0.562500 1.125000 2.437500 -v 0.519682 0.909741 2.437500 -v 0.397747 0.727252 2.437500 -v 0.215260 0.605318 2.437500 -v 0.239177 0.547575 2.437500 -v 0.441941 0.683058 2.437500 -v 0.577424 0.885823 2.437500 -v 0.625000 1.125000 2.437500 v 0.625000 0.000000 0.312500 v 0.577425 0.239177 0.312500 v 0.441941 0.441942 0.312500 @@ -372,14 +2255,6 @@ v 0.239177 0.577425 2.062500 v 0.000000 0.625000 2.062500 v 0.215260 0.519682 2.062500 v 0.000000 0.562500 2.062500 -v 0.239177 0.547575 2.062500 -v 0.000000 0.500000 2.062500 -v 0.000000 0.562500 2.062500 -v 0.215260 0.605318 2.062500 -v 0.239177 0.547575 0.687500 -v 0.000000 0.500000 0.687500 -v 0.215260 0.605318 0.687500 -v 0.000000 0.562500 0.687500 v -0.250000 -0.437500 -1.875000 v 0.250000 -0.437500 -1.875000 v -0.250000 -1.812500 -1.875000 @@ -480,94 +2355,6 @@ v -0.125000 -1.437500 -3.125000 v 0.125000 -1.437500 -3.125000 v -0.125000 -1.437500 -3.500000 v 0.125000 -1.437500 -3.500000 -v -0.250000 -1.580894 -0.329788 -v -0.250000 -1.459289 -0.374049 -v -0.250000 -1.331845 -0.351577 -v -0.250000 -1.232712 -0.268394 -v -0.250000 -1.188451 -0.146789 -v -0.250000 -1.210923 -0.019345 -v -0.250000 -1.294106 0.079788 -v -0.250000 -1.415711 0.124049 -v -0.250000 -1.543154 0.101577 -v -0.250000 -1.642288 0.018394 -v -0.250000 -1.686549 -0.103211 -v -0.250000 -1.664077 -0.230654 -v -0.500000 -1.580894 -0.329788 -v -0.500000 -1.459289 -0.374049 -v -0.500000 -1.331845 -0.351577 -v -0.500000 -1.232712 -0.268394 -v -0.500000 -1.188451 -0.146789 -v -0.500000 -1.210923 -0.019345 -v -0.500000 -1.294106 0.079788 -v -0.500000 -1.415711 0.124049 -v -0.500000 -1.543154 0.101577 -v -0.500000 -1.642288 0.018394 -v -0.500000 -1.686549 -0.103211 -v -0.500000 -1.664077 -0.230654 -v -0.593750 -0.612984 1.052531 -v -0.593750 -0.521780 1.019336 -v -0.593750 -0.426197 1.036189 -v -0.593750 -0.351847 1.098576 -v -0.593750 -0.318652 1.189780 -v -0.593750 -0.335506 1.285363 -v -0.593750 -0.397893 1.359713 -v -0.593750 -0.489097 1.392909 -v -0.593750 -0.584679 1.376055 -v -0.593750 -0.659029 1.313668 -v -0.593750 -0.692225 1.222464 -v -0.593750 -0.675371 1.126881 -v -0.781250 -0.612984 1.052531 -v -0.781250 -0.521780 1.019336 -v -0.781250 -0.426197 1.036189 -v -0.781250 -0.351847 1.098576 -v -0.781250 -0.318652 1.189780 -v -0.781250 -0.335506 1.285363 -v -0.781250 -0.397893 1.359713 -v -0.781250 -0.489097 1.392909 -v -0.781250 -0.584679 1.376055 -v -0.781250 -0.659029 1.313668 -v -0.781250 -0.692225 1.222464 -v -0.781250 -0.675371 1.126881 -v -0.750000 -0.643681 1.226622 -v -0.625000 -0.643681 1.226622 -v -0.750000 -0.438893 1.083228 -v -0.625000 -0.438893 1.083228 -v -0.750000 -0.582287 0.878440 -v -0.750000 -0.787075 1.021834 -v -0.625000 -0.787075 1.021834 -v -0.625000 -0.582287 0.878440 -v -0.437500 -1.155863 0.059288 -v -0.437500 -1.360651 0.202682 -v -0.312500 -1.360651 0.202682 -v -0.312500 -1.155863 0.059288 -v -0.437500 -1.227560 -0.043106 -v -0.437500 -1.432348 0.100288 -v -0.312500 -1.432348 0.100288 -v -0.312500 -1.227560 -0.043106 -v -0.781250 -0.577135 1.103728 -v -0.781250 -0.516333 1.081598 -v -0.781250 -0.452611 1.092834 -v -0.781250 -0.403044 1.134425 -v -0.781250 -0.380914 1.195228 -v -0.781250 -0.392150 1.258950 -v -0.781250 -0.433741 1.308516 -v -0.781250 -0.494544 1.330647 -v -0.781250 -0.558265 1.319411 -v -0.781250 -0.607832 1.277819 -v -0.781250 -0.629963 1.217017 -v -0.781250 -0.618727 1.153295 -v -1.531250 -0.577135 1.103728 -v -1.531250 -0.516333 1.081598 -v -1.531250 -0.452611 1.092834 -v -1.531250 -0.403044 1.134425 -v -1.531250 -0.380914 1.195228 -v -1.531250 -0.392150 1.258950 -v -1.531250 -0.433741 1.308516 -v -1.531250 -0.494544 1.330647 -v -1.531250 -0.558265 1.319411 -v -1.531250 -0.607832 1.277819 -v -1.531250 -0.629963 1.217017 -v -1.531250 -0.618727 1.153295 v -0.375000 -0.375000 -1.937500 v -0.468750 -0.400120 -1.937500 v -0.537380 -0.468750 -1.937500 @@ -616,272 +2403,6 @@ v -0.212621 -0.656250 -5.062500 v -0.187500 -0.562500 -5.062500 v -0.212621 -0.468750 -5.062500 v -0.281250 -0.400120 -5.062500 -v -0.375000 -0.437500 -6.562500 -v -0.437500 -0.454247 -6.562500 -v -0.483253 -0.500000 -6.562500 -v -0.500000 -0.562500 -6.562500 -v -0.483253 -0.625000 -6.562500 -v -0.437500 -0.670753 -6.562500 -v -0.375000 -0.687500 -6.562500 -v -0.312500 -0.670753 -6.562500 -v -0.266747 -0.625000 -6.562500 -v -0.250000 -0.562500 -6.562500 -v -0.266747 -0.500000 -6.562500 -v -0.312500 -0.454247 -6.562500 -v -0.375000 -2.937500 -7.062500 -v -0.375000 -0.504487 -6.812500 -v -0.437500 -0.518991 -6.804127 -v -0.483253 -0.558614 -6.781250 -v -0.500000 -0.612741 -6.750000 -v -0.483253 -0.666867 -6.718750 -v -0.437500 -0.706490 -6.695873 -v -0.375000 -0.720994 -6.687500 -v -0.312500 -0.706490 -6.695873 -v -0.266747 -0.666867 -6.718750 -v -0.250000 -0.612741 -6.750000 -v -0.266747 -0.558614 -6.781250 -v -0.312500 -0.518991 -6.804127 -v -0.375000 -0.687500 -6.995513 -v -0.437500 -0.695874 -6.981009 -v -0.483253 -0.718750 -6.941386 -v -0.500000 -0.750000 -6.887259 -v -0.483253 -0.781250 -6.833133 -v -0.437500 -0.804126 -6.793509 -v -0.375000 -0.812500 -6.779007 -v -0.312500 -0.804126 -6.793509 -v -0.266747 -0.781250 -6.833133 -v -0.250000 -0.750000 -6.887259 -v -0.266747 -0.718750 -6.941386 -v -0.312500 -0.695874 -6.981009 -v -0.375000 -0.937500 -7.062500 -v -0.437500 -0.937500 -7.045753 -v -0.483253 -0.937500 -7.000000 -v -0.500000 -0.937500 -6.937500 -v -0.483253 -0.937500 -6.875000 -v -0.437500 -0.937500 -6.829247 -v -0.375000 -0.937500 -6.812500 -v -0.312500 -0.937500 -6.829247 -v -0.266747 -0.937500 -6.875000 -v -0.250000 -0.937500 -6.937500 -v -0.266747 -0.937500 -7.000000 -v -0.312500 -0.937500 -7.045753 -v -0.437500 -2.937500 -7.045753 -v -0.483253 -2.937500 -7.000000 -v -0.500000 -2.937500 -6.937500 -v -0.483253 -2.937500 -6.875000 -v -0.437500 -2.937500 -6.829247 -v -0.375000 -2.937500 -6.812500 -v -0.312500 -2.937500 -6.829247 -v -0.266747 -2.937500 -6.875000 -v -0.250000 -2.937500 -6.937500 -v -0.266747 -2.937500 -7.000000 -v -0.312500 -2.937500 -7.045753 -v 0.375000 -0.437500 -6.562500 -v -0.324759 -3.125000 -7.062500 -v -0.378886 -3.156250 -7.045753 -v -0.418509 -3.179127 -7.000000 -v -0.433013 -3.187500 -6.937500 -v -0.418509 -3.179127 -6.875000 -v -0.378886 -3.156250 -6.829247 -v -0.324759 -3.125000 -6.812500 -v -0.270633 -3.093750 -6.829247 -v -0.231009 -3.070873 -6.875000 -v -0.216506 -3.062500 -6.937500 -v -0.231009 -3.070873 -7.000000 -v -0.270633 -3.093750 -7.045753 -v -0.187500 -3.262259 -7.062500 -v -0.218750 -3.316386 -7.045753 -v -0.241627 -3.356009 -7.000000 -v -0.250000 -3.370513 -6.937500 -v -0.241627 -3.356009 -6.875000 -v -0.218750 -3.316386 -6.829247 -v -0.187500 -3.262259 -6.812500 -v -0.156250 -3.208133 -6.829247 -v -0.133374 -3.168509 -6.875000 -v -0.125000 -3.154006 -6.937500 -v -0.133373 -3.168509 -7.000000 -v -0.156250 -3.208133 -7.045753 -v 0.000000 -3.312500 -7.062500 -v 0.000000 -3.375000 -7.045753 -v 0.000000 -3.420753 -7.000000 -v 0.000000 -3.437500 -6.937500 -v 0.000000 -3.420753 -6.875000 -v -0.000000 -3.375000 -6.829247 -v 0.000000 -3.312500 -6.812500 -v -0.000000 -3.250000 -6.829247 -v 0.000000 -3.204247 -6.875000 -v 0.000000 -3.187500 -6.937500 -v 0.000000 -3.204247 -7.000000 -v 0.000000 -3.250000 -7.045753 -v 0.437500 -0.454247 -6.562500 -v 0.483253 -0.500000 -6.562500 -v 0.500000 -0.562500 -6.562500 -v 0.483253 -0.625000 -6.562500 -v 0.437500 -0.670753 -6.562500 -v 0.375000 -0.687500 -6.562500 -v 0.312500 -0.670753 -6.562500 -v 0.266747 -0.625000 -6.562500 -v 0.250000 -0.562500 -6.562500 -v 0.266747 -0.500000 -6.562500 -v 0.312500 -0.454247 -6.562500 -v 0.375000 -2.937500 -7.062500 -v 0.375000 -0.504487 -6.812500 -v 0.437500 -0.518991 -6.804127 -v 0.483253 -0.558614 -6.781250 -v 0.500000 -0.612741 -6.750000 -v 0.483253 -0.666867 -6.718750 -v 0.437500 -0.706490 -6.695873 -v 0.375000 -0.720994 -6.687500 -v 0.312500 -0.706490 -6.695873 -v 0.266747 -0.666867 -6.718750 -v 0.250000 -0.612741 -6.750000 -v 0.266747 -0.558614 -6.781250 -v 0.312500 -0.518991 -6.804127 -v 0.375000 -0.687500 -6.995513 -v 0.437500 -0.695874 -6.981009 -v 0.483253 -0.718750 -6.941386 -v 0.500000 -0.750000 -6.887259 -v 0.483253 -0.781250 -6.833133 -v 0.437500 -0.804126 -6.793509 -v 0.375000 -0.812500 -6.779007 -v 0.312500 -0.804126 -6.793509 -v 0.266747 -0.781250 -6.833133 -v 0.250000 -0.750000 -6.887259 -v 0.266747 -0.718750 -6.941386 -v 0.312500 -0.695874 -6.981009 -v 0.375000 -0.937500 -7.062500 -v 0.437500 -0.937500 -7.045753 -v 0.483253 -0.937500 -7.000000 -v 0.500000 -0.937500 -6.937500 -v 0.483253 -0.937500 -6.875000 -v 0.437500 -0.937500 -6.829247 -v 0.375000 -0.937500 -6.812500 -v 0.312500 -0.937500 -6.829247 -v 0.266747 -0.937500 -6.875000 -v 0.250000 -0.937500 -6.937500 -v 0.266747 -0.937500 -7.000000 -v 0.312500 -0.937500 -7.045753 -v 0.437500 -2.937500 -7.045753 -v 0.483253 -2.937500 -7.000000 -v 0.500000 -2.937500 -6.937500 -v 0.483253 -2.937500 -6.875000 -v 0.437500 -2.937500 -6.829247 -v 0.375000 -2.937500 -6.812500 -v 0.312500 -2.937500 -6.829247 -v 0.266747 -2.937500 -6.875000 -v 0.250000 -2.937500 -6.937500 -v 0.266747 -2.937500 -7.000000 -v 0.312500 -2.937500 -7.045753 -v 0.324759 -3.125000 -7.062500 -v 0.378886 -3.156250 -7.045753 -v 0.418509 -3.179127 -7.000000 -v 0.433012 -3.187500 -6.937500 -v 0.418509 -3.179127 -6.875000 -v 0.378886 -3.156250 -6.829247 -v 0.324759 -3.125000 -6.812500 -v 0.270633 -3.093750 -6.829247 -v 0.231009 -3.070873 -6.875000 -v 0.216506 -3.062500 -6.937500 -v 0.231009 -3.070873 -7.000000 -v 0.270633 -3.093750 -7.045753 -v 0.187500 -3.262259 -7.062500 -v 0.218750 -3.316386 -7.045753 -v 0.241627 -3.356009 -7.000000 -v 0.250000 -3.370513 -6.937500 -v 0.241627 -3.356009 -6.875000 -v 0.218750 -3.316386 -6.829247 -v 0.187500 -3.262259 -6.812500 -v 0.156250 -3.208133 -6.829247 -v 0.133373 -3.168509 -6.875000 -v 0.125000 -3.154006 -6.937500 -v 0.133373 -3.168509 -7.000000 -v 0.156250 -3.208133 -7.045753 -v -0.375000 -0.437500 1.187500 -v -0.437500 -0.454247 1.187500 -v -0.483253 -0.500000 1.187500 -v -0.500000 -0.562500 1.187500 -v -0.483253 -0.625000 1.187500 -v -0.437500 -0.670753 1.187500 -v -0.375000 -0.687500 1.187500 -v -0.312500 -0.670753 1.187500 -v -0.266747 -0.625000 1.187500 -v -0.250000 -0.562500 1.187500 -v -0.266747 -0.500000 1.187500 -v -0.312500 -0.454247 1.187500 -v 0.375000 -0.437500 1.187500 -v 0.437500 -0.454247 1.187500 -v 0.483253 -0.500000 1.187500 -v 0.500000 -0.562500 1.187500 -v 0.483253 -0.625000 1.187500 -v 0.437500 -0.670753 1.187500 -v 0.375000 -0.687500 1.187500 -v 0.312500 -0.670753 1.187500 -v 0.266747 -0.625000 1.187500 -v 0.250000 -0.562500 1.187500 -v 0.266747 -0.500000 1.187500 -v 0.312500 -0.454247 1.187500 -v 0.000000 -0.293931 1.531675 -v -0.078125 -0.313602 1.538834 -v -0.135317 -0.367344 1.558395 -v -0.156250 -0.440758 1.585115 -v -0.135317 -0.514171 1.611836 -v -0.078125 -0.567913 1.631396 -v 0.000000 -0.587584 1.638556 -v 0.078125 -0.567914 1.631396 -v 0.135316 -0.514171 1.611836 -v 0.156250 -0.440758 1.585115 -v 0.135316 -0.367344 1.558395 -v 0.078125 -0.313602 1.538834 -v 0.000000 -0.122921 2.001521 -v -0.078125 -0.142592 2.008681 -v -0.135317 -0.196334 2.028241 -v -0.156250 -0.269747 2.054962 -v -0.135317 -0.343161 2.081682 -v -0.078125 -0.396903 2.101243 -v 0.000000 -0.416574 2.108402 -v 0.078125 -0.396903 2.101243 -v 0.135316 -0.343161 2.081682 -v 0.156250 -0.269747 2.054962 -v 0.135316 -0.196334 2.028241 -v 0.078125 -0.142592 2.008681 -v 0.000000 -0.095498 2.191073 -v -0.058594 -0.110252 2.196443 -v -0.101488 -0.150559 2.211114 -v -0.117188 -0.205619 2.231154 -v -0.101488 -0.260679 2.251194 -v -0.058594 -0.300986 2.265865 -v 0.000000 -0.315739 2.271235 -v 0.058594 -0.300986 2.265865 -v 0.101487 -0.260679 2.251194 -v 0.117188 -0.205619 2.231154 -v 0.101487 -0.150559 2.211114 -v 0.058594 -0.110252 2.196443 -v 0.000000 -0.147536 2.276525 -v -0.019531 -0.152454 2.278315 -v -0.033830 -0.165889 2.283205 -v -0.039062 -0.184243 2.289885 -v -0.033830 -0.202596 2.296565 -v -0.019531 -0.216031 2.301455 -v 0.000000 -0.220949 2.303245 -v 0.019531 -0.216032 2.301455 -v 0.033829 -0.202596 2.296565 -v 0.039062 -0.184243 2.289885 -v 0.033829 -0.165889 2.283205 -v 0.019531 -0.152454 2.278315 -v 0.125000 -0.187500 1.375000 -v -0.125000 -0.187500 1.375000 -v 0.062500 -0.187500 1.875000 -v -0.062500 -0.187500 1.875000 -v -0.062500 -0.187500 1.375000 -v -0.125000 -0.187500 1.875000 -v 0.062500 -0.187500 1.375000 -v 0.125000 -0.187500 1.875000 -v 0.187500 -0.312500 1.875000 -v -0.187500 -0.312500 1.875000 -v 0.062500 -0.312500 1.875000 -v -0.062500 -0.312500 1.875000 -v 0.062500 -0.312500 1.375000 -v -0.062500 -0.312500 1.375000 v 0.031250 0.875000 2.500000 v 0.031250 0.875000 2.875000 v -0.031250 0.875000 2.500000 @@ -1138,9 +2659,6 @@ vt -0.000000 0.444444 vt 0.002976 0.444444 vt -0.000000 0.416667 vt 0.002976 0.416667 -vt 0.779762 0.041667 -vt 0.779762 0.750000 -vt 0.755952 0.750000 vt 0.681548 0.069444 vt 0.672619 0.048611 vt 0.681548 0.000000 @@ -1153,15 +2671,6 @@ vt 0.601190 0.263889 vt 0.681548 0.263889 vt 0.732143 0.069444 vt 0.732143 0.263889 -vt 0.797619 0.041667 -vt 0.845238 0.041667 -vt 0.845238 0.750000 -vt 0.821429 0.750000 -vt 0.732143 0.041667 -vt 0.779762 -0.000000 -vt 0.863095 0.041667 -vt 0.845238 0.750000 -vt 0.845238 0.750000 vt 0.651786 0.069444 vt 0.660714 0.069444 vt 0.651786 0.263889 @@ -1197,30 +2706,9 @@ vt 0.461310 0.006944 vt 0.571429 0.131944 vt 0.568452 0.118056 vt 0.571429 0.118056 -vt 0.431548 0.597222 -vt 0.532738 0.590278 -vt 0.431548 0.590278 -vt 0.449405 0.520833 -vt 0.431548 0.513889 -vt 0.431548 0.520833 -vt 0.449405 0.486111 -vt 0.514881 0.493056 -vt 0.514881 0.486111 -vt 0.529762 0.513889 -vt 0.532738 0.541667 -vt 0.532738 0.513889 vt 0.532738 0.430556 vt 0.529762 0.458333 vt 0.532738 0.458333 -vt 0.529762 0.569444 -vt 0.532738 0.597222 -vt 0.532738 0.569444 -vt 0.529762 0.541667 -vt 0.431548 0.541667 -vt 0.434524 0.513889 -vt 0.434524 0.569444 -vt 0.431548 0.569444 -vt 0.434524 0.541667 vt 0.529762 0.402778 vt 0.529762 0.430556 vt 0.532738 0.486111 @@ -1247,12 +2735,6 @@ vt 0.514881 0.486111 vt 0.514881 0.513889 vt 0.446429 0.513889 vt 0.449405 0.513889 -vt 0.449405 0.513889 -vt 0.452381 0.486111 -vt 0.511905 0.513889 -vt 0.514881 0.513889 -vt 0.514881 0.520833 -vt 0.532738 0.520833 vt 0.110119 0.708333 vt 0.175595 0.763889 vt 0.110119 0.763889 @@ -1353,31 +2835,6 @@ vt 0.538690 0.708333 vt 0.538690 0.791667 vt 0.544643 0.833333 vt 0.526786 0.833333 -vt 0.717262 0.500032 -vt 0.727560 0.513905 -vt 0.727560 0.541651 -vt 0.668008 0.736165 -vt 0.668008 0.763835 -vt 0.647468 0.763835 -vt 0.647468 0.680609 -vt 0.657738 0.666774 -vt 0.668008 0.680609 -vt 0.577381 0.722222 -vt 0.571429 0.708333 -vt 0.577381 0.708333 -vt 0.636905 0.722222 -vt 0.625000 0.708333 -vt 0.636905 0.708333 -vt 0.636905 0.680556 -vt 0.625000 0.666667 -vt 0.636905 0.666667 -vt 0.625000 0.722222 -vt 0.577381 0.680556 -vt 0.577381 0.666667 -vt 0.571429 0.666667 -vt 0.711309 0.694407 -vt 0.706168 0.687481 -vt 0.706168 0.673629 vt 0.533983 0.531184 vt 0.541666 0.500130 vt 0.549350 0.531185 @@ -1390,38 +2847,6 @@ vt 0.403030 0.649371 vt 0.403031 0.628407 vt 0.410715 0.597353 vt 0.418398 0.628407 -vt 0.518695 0.923665 -vt 0.528925 0.923665 -vt 0.523810 0.944337 -vt 0.518695 0.937446 -vt 0.523810 0.916775 -vt 0.528925 0.937446 -vt 0.676595 0.272573 -vt 0.683036 0.263897 -vt 0.689476 0.289927 -vt 0.797619 0.805556 -vt 0.800595 0.861111 -vt 0.797619 0.861111 -vt 0.806548 0.861111 -vt 0.800595 0.805556 -vt 0.806548 0.805556 -vt 0.776786 0.805556 -vt 0.779762 0.861111 -vt 0.776786 0.861111 -vt 0.770833 0.805556 -vt 0.770833 0.861111 -vt 0.797619 0.875000 -vt 0.803571 0.875000 -vt 0.779762 0.875000 -vt 0.773810 0.875000 -vt 0.797619 0.750000 -vt 0.791667 0.805556 -vt 0.785714 0.805556 -vt 0.791667 0.861111 -vt 0.785714 0.861111 -vt 0.779762 0.805556 -vt 0.779762 0.791667 -vt 0.797619 0.791667 vt 0.708333 0.347222 vt 0.711310 0.305556 vt 0.711310 0.347222 @@ -1553,12 +2978,9 @@ vt -0.000000 0.333333 vt -0.000000 0.277778 vt -0.000000 0.666667 vt -0.000000 0.472222 -vt 0.732143 0.750000 vt 0.672619 0.020833 vt 0.732143 0.000000 vt 0.571429 0.069444 -vt 0.732143 0.000000 -vt 0.863095 0.750000 vt 0.443298 0.305555 vt 0.441600 0.315121 vt 0.433400 0.315121 @@ -1579,14 +3001,9 @@ vt 0.449405 0.006944 vt 0.449405 -0.000000 vt 0.544643 -0.000000 vt 0.568452 0.131944 -vt 0.449405 0.493056 -vt 0.529762 0.597222 -vt 0.434524 0.597222 vt 0.434524 0.430556 vt 0.517857 0.486111 vt 0.446429 0.486111 -vt 0.452381 0.513889 -vt 0.511905 0.486111 vt 0.324405 0.708333 vt 0.175595 0.916667 vt 0.324405 0.833333 @@ -1625,45 +3042,6 @@ vt 0.401786 0.902778 vt 0.431548 0.812500 vt 0.401786 0.861111 vt 0.520833 0.736111 -vt 0.706964 0.541651 -vt 0.705371 0.527778 -vt 0.706964 0.513905 -vt 0.711316 0.503749 -vt 0.723207 0.503749 -vt 0.729153 0.527778 -vt 0.723207 0.551806 -vt 0.717262 0.555524 -vt 0.711316 0.551806 -vt 0.645879 0.750000 -vt 0.647468 0.736165 -vt 0.651809 0.726037 -vt 0.657738 0.722330 -vt 0.663667 0.726037 -vt 0.669597 0.750000 -vt 0.663667 0.773963 -vt 0.657738 0.777671 -vt 0.651809 0.773963 -vt 0.669597 0.694444 -vt 0.668008 0.708280 -vt 0.663667 0.718408 -vt 0.657738 0.722115 -vt 0.651809 0.718408 -vt 0.647468 0.708280 -vt 0.645879 0.694444 -vt 0.651809 0.670481 -vt 0.663667 0.670481 -vt 0.571429 0.722222 -vt 0.625000 0.680556 -vt 0.571429 0.680556 -vt 0.708341 0.668559 -vt 0.711309 0.666703 -vt 0.714278 0.668559 -vt 0.716451 0.673629 -vt 0.717246 0.680555 -vt 0.716451 0.687481 -vt 0.714278 0.692551 -vt 0.708341 0.692552 -vt 0.705373 0.680555 vt 0.546103 0.538762 vt 0.541666 0.541536 vt 0.537230 0.538762 @@ -1700,37 +3078,6 @@ vt 0.406278 0.600127 vt 0.415151 0.600127 vt 0.418398 0.607704 vt 0.419587 0.618056 -vt 0.520857 0.942491 -vt 0.518695 0.937446 -vt 0.517904 0.930556 -vt 0.520857 0.918621 -vt 0.523810 0.916775 -vt 0.526763 0.918621 -vt 0.529716 0.930556 -vt 0.528925 0.937446 -vt 0.526763 0.942490 -vt 0.526763 0.942490 -vt 0.523810 0.944337 -vt 0.520857 0.942491 -vt 0.517904 0.930556 -vt 0.518695 0.923665 -vt 0.520857 0.918621 -vt 0.526763 0.918621 -vt 0.528925 0.923665 -vt 0.529716 0.930556 -vt 0.686754 0.296278 -vt 0.676595 0.289927 -vt 0.683036 0.298603 -vt 0.679317 0.296278 -vt 0.675599 0.281250 -vt 0.679317 0.266222 -vt 0.686754 0.266222 -vt 0.689476 0.272573 -vt 0.690473 0.281250 -vt 0.779762 0.805556 -vt 0.797619 0.805556 -vt 0.773810 0.791667 -vt 0.803571 0.791667 vt 0.714286 0.388889 vt 0.729167 0.305556 vt 0.708333 0.263889 @@ -2057,14 +3404,6 @@ vt 0.544643 0.284722 vt 0.544643 0.305556 vt 0.544643 0.326389 vt 0.544643 0.347222 -vt 0.532738 0.569444 -vt 0.431548 0.534722 -vt 0.532738 0.534722 -vt 0.449405 0.486111 -vt 0.514881 0.513889 -vt 0.449405 0.513889 -vt 0.532738 0.597222 -vt 0.431548 0.569444 vt 0.077381 0.326389 vt 0.077381 0.472222 vt 0.077381 0.451389 @@ -2131,83 +3470,6 @@ vt 0.401786 0.763889 vt 0.550595 0.736111 vt 0.568452 0.736111 vt 0.550595 0.763889 -vt 0.705357 0.611111 -vt 0.693452 0.597222 -vt 0.705357 0.597222 -vt 0.705357 0.513889 -vt 0.693452 0.500000 -vt 0.705357 0.500000 -vt 0.705357 0.652778 -vt 0.693452 0.638889 -vt 0.705357 0.638889 -vt 0.705357 0.555556 -vt 0.693452 0.541667 -vt 0.705357 0.541667 -vt 0.693452 0.583333 -vt 0.705357 0.583333 -vt 0.693452 0.625000 -vt 0.705357 0.625000 -vt 0.693452 0.527778 -vt 0.705357 0.527778 -vt 0.693452 0.569444 -vt 0.705357 0.569444 -vt 0.693452 0.611111 -vt 0.693452 0.513889 -vt 0.705357 0.666667 -vt 0.693452 0.652778 -vt 0.693452 0.555556 -vt 0.636905 0.805556 -vt 0.645833 0.791667 -vt 0.645833 0.805556 -vt 0.636905 0.708333 -vt 0.645833 0.694444 -vt 0.645833 0.708333 -vt 0.636905 0.750000 -vt 0.645833 0.736111 -vt 0.645833 0.750000 -vt 0.636905 0.791667 -vt 0.645833 0.777778 -vt 0.636905 0.694444 -vt 0.645833 0.680556 -vt 0.636905 0.833333 -vt 0.645833 0.819444 -vt 0.645833 0.833333 -vt 0.636905 0.736111 -vt 0.645833 0.722222 -vt 0.636905 0.777778 -vt 0.645833 0.763889 -vt 0.636905 0.680556 -vt 0.645833 0.666667 -vt 0.636905 0.819444 -vt 0.636905 0.722222 -vt 0.636905 0.763889 -vt 0.577381 0.750000 -vt 0.625000 0.750000 -vt 0.705357 0.708333 -vt 0.669643 0.715278 -vt 0.669643 0.708333 -vt 0.705357 0.687500 -vt 0.669643 0.694444 -vt 0.669643 0.687500 -vt 0.705357 0.736111 -vt 0.669643 0.743056 -vt 0.669643 0.736111 -vt 0.705357 0.666667 -vt 0.669643 0.673611 -vt 0.669643 0.666667 -vt 0.705357 0.715278 -vt 0.669643 0.722222 -vt 0.705357 0.694444 -vt 0.669643 0.701389 -vt 0.705357 0.743056 -vt 0.669643 0.750000 -vt 0.705357 0.673611 -vt 0.669643 0.680556 -vt 0.705357 0.722222 -vt 0.669643 0.729167 -vt 0.705357 0.701389 -vt 0.705357 0.680556 -vt 0.705357 0.729167 vt 0.550595 0.513889 vt 0.693452 0.527778 vt 0.550595 0.527778 @@ -2258,288 +3520,6 @@ vt 0.419643 0.652778 vt 0.520833 0.652778 vt 0.419643 0.708333 vt 0.419643 0.638889 -vt 0.369048 0.916667 -vt 0.377976 0.923611 -vt 0.369048 0.923611 -vt 0.369048 0.979167 -vt 0.377976 0.986111 -vt 0.369048 0.986111 -vt 0.369048 0.951389 -vt 0.377976 0.944444 -vt 0.377976 0.951389 -vt 0.369048 0.965278 -vt 0.377976 0.958333 -vt 0.377976 0.965278 -vt 0.369048 0.930556 -vt 0.377976 0.930556 -vt 0.369048 0.993056 -vt 0.377976 0.993056 -vt 0.369048 0.958333 -vt 0.369048 0.972222 -vt 0.377976 0.972222 -vt 0.377976 0.937500 -vt 0.369048 0.937500 -vt 0.369048 1.000000 -vt 0.377976 1.000000 -vt 0.377976 0.979167 -vt 0.369048 0.944444 -vt 0.386905 0.958333 -vt 0.386905 0.972222 -vt 0.386905 0.930556 -vt 0.386905 0.937500 -vt 0.386905 1.000000 -vt 0.386905 0.979167 -vt 0.386905 0.944444 -vt 0.377976 0.916667 -vt 0.386905 0.923611 -vt 0.386905 0.986111 -vt 0.386905 0.951389 -vt 0.386905 0.965278 -vt 0.386905 0.993056 -vt 0.395833 0.993056 -vt 0.395833 0.951389 -vt 0.395833 0.958333 -vt 0.395833 0.972222 -vt 0.395833 0.930556 -vt 0.395833 0.937500 -vt 0.395833 1.000000 -vt 0.395833 0.979167 -vt 0.395833 0.944444 -vt 0.386905 0.916667 -vt 0.395833 0.923611 -vt 0.395833 0.986111 -vt 0.395833 0.965278 -vt 0.491071 0.993056 -vt 0.491071 0.958333 -vt 0.491071 0.972222 -vt 0.491071 0.930556 -vt 0.491071 0.937500 -vt 0.491071 1.000000 -vt 0.491071 0.979167 -vt 0.491071 0.944444 -vt 0.395833 0.916667 -vt 0.491071 0.923611 -vt 0.491071 0.986111 -vt 0.491071 0.951389 -vt 0.491071 0.965278 -vt 0.500000 0.923611 -vt 0.500000 0.930556 -vt 0.500000 0.993056 -vt 0.500000 0.958333 -vt 0.500000 0.972222 -vt 0.500000 0.937500 -vt 0.500000 1.000000 -vt 0.500000 0.979167 -vt 0.500000 0.944444 -vt 0.491071 0.916667 -vt 0.500000 0.986111 -vt 0.500000 0.951389 -vt 0.500000 0.965278 -vt 0.508929 0.958333 -vt 0.508929 0.965278 -vt 0.508929 0.923611 -vt 0.508929 0.930556 -vt 0.508929 0.993056 -vt 0.508929 0.972222 -vt 0.508929 0.937500 -vt 0.508929 1.000000 -vt 0.508929 0.979167 -vt 0.508929 0.944444 -vt 0.500000 0.916667 -vt 0.508929 0.986111 -vt 0.508929 0.951389 -vt 0.517857 0.951389 -vt 0.517857 0.958333 -vt 0.517857 0.965278 -vt 0.517857 0.923611 -vt 0.517857 0.930556 -vt 0.517857 0.993056 -vt 0.517857 0.972222 -vt 0.517857 0.937500 -vt 0.517857 1.000000 -vt 0.517857 0.979167 -vt 0.517857 0.944444 -vt 0.508929 0.916667 -vt 0.517857 0.986111 -vt 0.377976 0.993056 -vt 0.369048 1.000000 -vt 0.369048 0.993056 -vt 0.377976 0.930556 -vt 0.369048 0.937500 -vt 0.369048 0.930556 -vt 0.369048 0.965278 -vt 0.377976 0.972222 -vt 0.369048 0.972222 -vt 0.369048 0.951389 -vt 0.377976 0.958333 -vt 0.369048 0.958333 -vt 0.377976 0.986111 -vt 0.369048 0.986111 -vt 0.377976 0.923611 -vt 0.369048 0.923611 -vt 0.377976 0.944444 -vt 0.369048 0.944444 -vt 0.369048 0.979167 -vt 0.369048 0.916667 -vt 0.377976 0.979167 -vt 0.386905 0.965278 -vt 0.377976 0.965278 -vt 0.386905 0.944444 -vt 0.377976 0.951389 -vt 0.386905 0.979167 -vt 0.377976 0.916667 -vt 0.386905 0.923611 -vt 0.377976 0.937500 -vt 0.386905 0.972222 -vt 0.386905 0.993056 -vt 0.377976 1.000000 -vt 0.386905 0.930556 -vt 0.386905 0.951389 -vt 0.395833 0.923611 -vt 0.395833 0.958333 -vt 0.386905 0.958333 -vt 0.395833 0.944444 -vt 0.395833 0.986111 -vt 0.386905 0.986111 -vt 0.386905 0.916667 -vt 0.395833 0.937500 -vt 0.386905 0.937500 -vt 0.395833 0.979167 -vt 0.395833 0.993056 -vt 0.386905 1.000000 -vt 0.395833 0.930556 -vt 0.395833 0.972222 -vt 0.491071 0.923611 -vt 0.491071 0.958333 -vt 0.395833 0.965278 -vt 0.491071 0.944444 -vt 0.395833 0.951389 -vt 0.491071 0.979167 -vt 0.395833 0.916667 -vt 0.491071 0.937500 -vt 0.491071 0.972222 -vt 0.491071 0.993056 -vt 0.395833 1.000000 -vt 0.491071 0.930556 -vt 0.491071 0.951389 -vt 0.491071 0.986111 -vt 0.500000 0.993056 -vt 0.500000 0.923611 -vt 0.500000 0.958333 -vt 0.491071 0.965278 -vt 0.500000 0.944444 -vt 0.500000 0.986111 -vt 0.491071 0.916667 -vt 0.500000 0.972222 -vt 0.491071 1.000000 -vt 0.500000 0.937500 -vt 0.500000 0.951389 -vt 0.508929 0.958333 -vt 0.508929 0.993056 -vt 0.508929 0.923611 -vt 0.500000 0.930556 -vt 0.500000 0.965278 -vt 0.508929 0.944444 -vt 0.508929 0.979167 -vt 0.500000 0.979167 -vt 0.508929 0.916667 -vt 0.500000 0.916667 -vt 0.500000 1.000000 -vt 0.508929 0.930556 -vt 0.508929 0.972222 -vt 0.517857 0.972222 -vt 0.508929 0.965278 -vt 0.517857 0.965278 -vt 0.517857 0.979167 -vt 0.508929 0.986111 -vt 0.517857 0.986111 -vt 0.517857 0.993056 -vt 0.517857 0.916667 -vt 0.517857 0.923611 -vt 0.517857 0.930556 -vt 0.508929 0.937500 -vt 0.517857 0.937500 -vt 0.517857 0.944444 -vt 0.508929 0.951389 -vt 0.517857 0.951389 -vt 0.000000 0.937500 -vt 0.000000 0.965278 -vt 0.000000 0.993056 -vt 0.000000 0.930556 -vt 0.000000 0.958333 -vt 0.000000 0.916667 -vt 0.000000 0.923611 -vt 0.000000 0.923611 -vt 0.000000 0.916667 -vt 0.000000 0.958333 -vt 0.000000 0.930556 -vt 0.000000 0.993056 -vt 0.000000 0.965278 -vt 0.000000 0.937500 -vt 0.000000 0.986111 -vt 0.000000 0.972222 -vt 0.000000 0.951389 -vt 0.000000 0.944444 -vt 0.000000 0.979167 -vt 0.000000 0.979167 -vt 0.000000 0.944444 -vt 0.000000 0.951389 -vt 0.000000 0.972222 -vt 0.000000 0.986111 -vt 0.636905 0.298611 -vt 0.660714 0.291667 -vt 0.660714 0.298611 -vt 0.636905 0.333333 -vt 0.660714 0.326389 -vt 0.660714 0.333333 -vt 0.636905 0.263889 -vt 0.660714 0.270833 -vt 0.636905 0.270833 -vt 0.636905 0.284722 -vt 0.636905 0.291667 -vt 0.636905 0.326389 -vt 0.660714 0.319444 -vt 0.636905 0.347222 -vt 0.660714 0.340278 -vt 0.660714 0.347222 -vt 0.636905 0.277778 -vt 0.660714 0.284722 -vt 0.636905 0.312500 -vt 0.636905 0.319444 -vt 0.636905 0.305556 -vt 0.660714 0.305556 -vt 0.636905 0.340278 -vt 0.660714 0.277778 -vt 0.660714 0.312500 -vt 0.669643 0.340278 -vt 0.669643 0.347222 -vt 0.669643 0.284722 -vt 0.669643 0.312500 -vt 0.669643 0.319444 -vt 0.669643 0.305556 -vt 0.669643 0.277778 -vt 0.669643 0.291667 -vt 0.669643 0.298611 -vt 0.669643 0.333333 -vt 0.660714 0.263889 -vt 0.669643 0.270833 -vt 0.669643 0.326389 -vt 0.675595 0.347222 -vt 0.675595 0.277778 -vt 0.675595 0.284722 -vt 0.675595 0.319444 -vt 0.675595 0.305556 -vt 0.675595 0.340278 -vt 0.675595 0.312500 -vt 0.675595 0.291667 -vt 0.675595 0.298611 -vt 0.675595 0.326389 -vt 0.675595 0.333333 -vt 0.675595 0.263889 -vt 0.675595 0.270833 -vt 0.676042 0.302196 -vt 0.681100 0.302196 -vt 0.678571 0.312365 vt 0.619048 0.416667 vt 0.616071 0.416667 vt 0.604167 0.416667 @@ -2631,10 +3611,6 @@ vt 0.038690 0.666667 vt 0.520833 0.291667 vt 0.425595 0.305556 vt 0.119048 0.555556 -vt 0.514881 0.486111 -vt 0.431548 0.597222 -vt 0.532738 0.513889 -vt 0.431548 0.513889 vt 0.077381 0.305556 vt 0.077381 0.347222 vt 0.077381 0.388889 @@ -2644,47 +3620,23 @@ vt 1.000000 0.097222 vt 0.952381 0.368056 vt 0.875000 0.368056 vt 0.568452 0.763889 -vt 0.693452 0.666667 -vt 0.636905 0.666667 -vt 0.636905 0.750000 -vt 0.571429 0.750000 -vt 0.705357 0.750000 vt 0.693452 0.500000 vt 0.419643 0.763889 -vt 0.508929 1.000000 -vt 0.000000 1.000000 -vt 0.000000 1.000000 -vt 0.669643 0.263889 -vt 0.677132 0.311457 -vt 0.676042 0.308915 -vt 0.675653 0.305556 -vt 0.677132 0.299654 -vt 0.678571 0.298746 -vt 0.680011 0.299654 -vt 0.681490 0.305556 -vt 0.681100 0.308915 -vt 0.680011 0.311457 vt 0.726190 0.388889 vt 0.693452 0.500000 vt 0.419643 0.763889 vn 0.0000 0.0000 1.0000 vn 0.0000 0.0000 -1.0000 -vn -1.0000 0.0000 0.0000 vn 0.0000 -1.0000 0.0000 vn 1.0000 0.0000 0.0000 vn 0.7071 0.0000 0.7071 vn -0.7071 0.0000 0.7071 +vn -1.0000 0.0000 0.0000 vn -0.9808 -0.1951 0.0000 vn -0.0000 1.0000 0.0000 -vn -0.9239 -0.3827 0.0000 vn -0.9239 0.3827 0.0000 vn 0.0000 -0.8480 0.5300 vn 0.0000 -0.8000 -0.6000 -vn 0.0000 0.8192 -0.5736 -vn 0.0000 -0.8192 0.5736 -vn 0.0000 -0.3420 -0.9397 -vn 0.8944 0.4472 0.0000 -vn -0.8944 0.4472 0.0000 vn 0.9965 0.0830 0.0000 vn -0.9965 0.0830 0.0000 vn 0.0000 0.9363 0.3511 @@ -2708,6 +3660,7 @@ vn -0.3827 -0.9239 -0.0000 vn -0.6479 -0.6479 0.4006 vn -0.7071 -0.7071 -0.0000 vn -0.8465 -0.3506 0.4006 +vn -0.9239 -0.3827 -0.0000 vn -0.9163 -0.0000 0.4006 vn -0.8465 0.3506 0.4006 vn -0.6479 0.6479 0.4006 @@ -2823,10 +3776,6 @@ vn 0.3583 -0.8651 -0.3511 vn 0.6621 -0.6621 -0.3511 vn 0.8651 -0.3583 -0.3511 vn 0.9363 -0.0000 -0.3511 -vn 0.9808 -0.1951 0.0000 -vn -0.4430 0.8965 -0.0000 -vn 0.4430 -0.8965 0.0000 -vn 0.1951 -0.9808 0.0000 vn 0.1951 0.9808 0.0000 vn 0.4430 0.8965 -0.0000 vn -0.8765 0.3630 -0.3162 @@ -2881,18 +3830,6 @@ vn 0.0000 0.9285 0.3714 vn 0.0000 -0.9285 -0.3714 vn 0.0000 -0.1602 0.9871 vn 0.0000 -0.3162 0.9487 -vn 0.0000 0.9962 -0.0872 -vn 0.0000 0.9063 0.4226 -vn 0.0000 -0.9063 -0.4226 -vn 0.0000 -0.5736 -0.8192 -vn 0.0000 -0.0872 -0.9962 -vn 0.0000 0.4226 -0.9063 -vn 0.0000 -0.4226 0.9063 -vn 0.0000 0.5736 0.8192 -vn 0.0000 -0.9962 0.0872 -vn 0.0000 0.0872 0.9962 -vn 0.9886 0.0865 0.1236 -vn -0.9886 -0.0865 -0.1236 vn -0.5000 -0.8660 0.0000 vn -0.8660 -0.5000 0.0000 vn 0.5000 0.8660 0.0000 @@ -2901,182 +3838,10 @@ vn -0.5000 0.8660 0.0000 vn 0.8660 -0.5000 0.0000 vn 0.8660 0.5000 0.0000 vn 0.5000 -0.8660 0.0000 -vn -0.0000 -0.9911 0.1334 -vn 0.5194 -0.7400 0.4273 -vn 0.5065 -0.8546 0.1144 -vn -0.9998 0.0215 -0.0058 -vn -0.8846 -0.4039 0.2332 -vn -0.8738 -0.4822 0.0628 -vn 0.4883 0.8653 -0.1129 -vn 0.8474 0.4598 -0.2654 -vn 0.4823 0.7586 -0.4380 -vn -0.4883 0.8653 -0.1129 -vn 0.0000 0.8660 -0.5000 -vn -0.4823 0.7586 -0.4380 -vn 0.8738 -0.4822 0.0628 -vn 0.8846 -0.4039 0.2332 -vn -0.5065 -0.8546 0.1144 -vn -0.5194 -0.7400 0.4273 -vn 0.0000 0.9918 -0.1278 -vn -0.8549 0.5140 -0.0698 -vn -0.8474 0.4598 -0.2654 -vn 0.9991 0.0373 -0.0215 -vn 0.9998 0.0215 -0.0058 -vn -0.0000 -0.8660 0.5000 -vn -0.9991 0.0373 -0.0215 -vn 0.8549 0.5140 -0.0698 -vn -0.0000 0.5000 -0.8660 -vn -0.8474 0.2655 -0.4598 -vn 0.8846 -0.2332 0.4039 -vn 0.9991 0.0215 -0.0373 -vn 0.0000 -0.5000 0.8660 -vn -0.9991 0.0215 -0.0373 -vn 0.8474 0.2655 -0.4598 -vn 0.5195 -0.4273 0.7400 -vn -0.8846 -0.2332 0.4039 -vn 0.4823 0.4380 -0.7586 -vn -0.4823 0.4380 -0.7586 -vn -0.5194 -0.4273 0.7400 -vn -0.5065 -0.1144 0.8546 -vn 0.4883 0.1129 -0.8653 -vn -0.0000 0.1278 -0.9918 -vn -0.8549 0.0698 -0.5140 -vn 0.8738 -0.0628 0.4822 -vn 0.9998 0.0058 -0.0215 -vn -0.0000 -0.1334 0.9911 -vn -0.9998 0.0058 -0.0215 -vn 0.8549 0.0698 -0.5140 -vn 0.5065 -0.1144 0.8546 -vn -0.8738 -0.0628 0.4822 -vn -0.4883 0.1129 -0.8653 -vn -0.5140 -0.0698 0.8549 -vn -0.0215 -0.0058 -0.9998 -vn -0.8653 -0.1129 -0.4883 -vn 0.8546 0.1144 0.5065 -vn 0.9911 0.1334 0.0000 -vn -0.0215 -0.0058 0.9998 -vn -0.9918 -0.1278 0.0000 -vn 0.8546 0.1144 -0.5065 -vn 0.4822 0.0628 0.8738 -vn -0.8653 -0.1129 0.4883 -vn 0.4822 0.0628 -0.8738 -vn -0.5140 -0.0698 -0.8549 -vn 0.4039 0.2332 0.8846 -vn 0.7400 0.4273 0.5195 -vn -0.4598 -0.2655 0.8474 -vn -0.0373 -0.0215 -0.9991 -vn -0.7586 -0.4380 -0.4823 -vn -0.0373 -0.0215 0.9991 -vn 0.7400 0.4273 -0.5195 -vn -0.7586 -0.4380 0.4823 -vn 0.4039 0.2332 -0.8846 -vn -0.4598 -0.2655 -0.8474 -vn -0.0215 -0.0373 -0.9991 -vn -0.2655 -0.4598 -0.8474 -vn 0.2332 0.4039 0.8846 -vn 0.4273 0.7400 0.5195 -vn -0.2655 -0.4598 0.8474 -vn -0.4380 -0.7586 -0.4823 -vn -0.0215 -0.0373 0.9991 -vn 0.4273 0.7400 -0.5194 -vn -0.4380 -0.7586 0.4823 -vn 0.2332 0.4039 -0.8846 -vn 0.0000 0.4664 -0.8846 -vn 0.0000 -0.0431 -0.9991 -vn 0.0000 -0.5309 -0.8474 -vn 0.0000 0.4664 0.8846 -vn 0.0000 0.8545 0.5195 -vn -0.0000 -0.5309 0.8474 -vn 0.0000 -0.8760 -0.4823 -vn 0.0000 -0.0431 0.9991 -vn 0.0000 0.8545 -0.5194 -vn 0.0000 -0.8760 0.4823 -vn -0.5194 -0.7400 0.4272 -vn 0.5195 -0.7400 0.4272 -vn 0.5194 -0.4273 0.7400 -vn 0.5140 -0.0698 0.8549 -vn 0.0215 -0.0058 -0.9998 -vn 0.8653 -0.1129 -0.4883 -vn -0.9911 0.1334 0.0000 -vn 0.9918 -0.1278 0.0000 -vn -0.8546 0.1144 -0.5065 -vn -0.4822 0.0628 0.8738 -vn 0.8653 -0.1129 0.4883 -vn 0.5140 -0.0698 -0.8549 -vn -0.8546 0.1144 0.5065 -vn -0.4039 0.2332 0.8846 -vn 0.4598 -0.2654 0.8474 -vn 0.0373 -0.0215 -0.9991 -vn -0.4822 0.0628 -0.8738 -vn 0.7586 -0.4380 -0.4823 -vn -0.7400 0.4272 0.5194 -vn 0.0215 -0.0058 0.9998 -vn -0.7400 0.4273 -0.5195 -vn 0.4598 -0.2654 -0.8474 -vn 0.0215 -0.0373 -0.9991 -vn -0.2332 0.4039 0.8846 -vn 0.2655 -0.4598 0.8474 -vn 0.7586 -0.4380 0.4823 -vn -0.4039 0.2332 -0.8846 -vn 0.4380 -0.7586 -0.4823 -vn 0.0215 -0.0373 0.9991 -vn 0.0373 -0.0215 0.9991 -vn 0.4380 -0.7586 0.4823 -vn -0.4273 0.7400 -0.5194 -vn -0.2332 0.4039 -0.8846 -vn -0.4273 0.7400 0.5194 -vn 0.2654 -0.4598 -0.8474 -vn -0.5000 0.8138 -0.2962 -vn -0.8616 0.5019 -0.0754 -vn -0.4975 0.8441 -0.1999 -vn 0.8660 -0.4698 0.1710 -vn 0.9949 0.0345 0.0948 -vn 0.8616 -0.4330 0.2649 -vn -0.0000 -0.9397 0.3420 -vn -0.4974 -0.7752 0.3894 -vn -0.5000 -0.8138 0.2962 -vn -0.8660 0.4698 -0.1710 -vn 0.8616 0.5019 -0.0754 -vn 0.4975 -0.7752 0.3894 -vn -0.0000 -0.9004 0.4350 -vn -0.8660 -0.4698 0.1710 -vn -0.9949 0.0345 0.0948 -vn 0.5000 0.8138 -0.2962 -vn 0.8660 0.4698 -0.1710 -vn 0.0000 0.9397 -0.3420 -vn -0.0000 0.9694 -0.2455 -vn 0.5000 -0.8138 0.2962 -vn -0.8616 -0.4330 0.2649 -vn 0.4975 0.8441 -0.1999 -vn 0.4331 -0.5339 0.7262 -vn 0.0000 -0.6430 0.7659 -vn -0.8661 0.1709 0.4697 -vn 0.4331 0.8758 0.2131 -vn 0.7501 0.5779 0.3215 -vn -0.0000 0.9848 0.1734 -vn -0.7501 -0.2360 0.6178 -vn -0.7501 0.5779 0.3215 -vn -0.4331 0.8758 0.2131 -vn 0.7501 -0.2360 0.6178 -vn -0.4331 -0.5339 0.7262 -vn 0.8661 0.1709 0.4697 -vn 0.0000 -0.0388 0.9992 -vn -0.3276 0.1389 0.9346 -vn -0.3782 0.3166 0.8699 -vn 0.3276 0.4943 0.8052 -vn 0.0000 0.6720 0.7405 -vn 0.1891 0.0088 0.9819 -vn 0.1891 0.6244 0.7579 -vn -0.3276 0.4943 0.8052 -vn -0.1891 0.6244 0.7579 -vn 0.3782 0.3166 0.8699 -vn 0.3276 0.1389 0.9346 -vn -0.1891 0.0088 0.9819 +vn 0.1951 -0.9808 0.0000 vn 0.6621 0.6621 -0.3511 vn -0.6621 0.6621 -0.3511 vn -0.0000 -0.9363 -0.3511 -vn -0.5556 0.8315 0.0000 -vn 0.5556 -0.8315 0.0000 vn -0.9487 0.0000 -0.3162 vn -0.6708 0.6708 -0.3162 vn 0.0000 0.9487 -0.3162 @@ -3084,1892 +3849,1176 @@ vn 0.6708 -0.6708 -0.3162 vn -0.9811 -0.0133 -0.1928 vn 0.9732 0.0000 0.2298 s off -f 30/1/1 36/2/1 35/3/1 -f 30/1/1 34/4/1 32/5/1 -f 32/5/1 33/6/1 2/7/1 -f 2/7/1 48/8/1 4/9/1 -f 4/9/1 47/10/1 6/11/1 -f 6/11/1 46/12/1 8/13/1 -f 8/13/1 45/14/1 10/15/1 -f 10/15/1 44/16/1 12/17/1 -f 12/17/1 43/18/1 14/19/1 -f 16/20/1 43/18/1 42/21/1 -f 18/22/1 42/21/1 41/23/1 -f 20/24/1 41/25/1 40/26/1 -f 22/27/1 40/26/1 39/28/1 -f 24/29/1 39/28/1 38/30/1 -f 26/31/1 38/30/1 37/32/1 -f 28/33/1 37/32/1 36/2/1 -f 129/34/2 121/35/2 122/36/2 -f 137/37/2 118/38/2 136/39/2 -f 122/36/2 144/40/2 129/34/2 -f 136/39/2 115/41/2 135/42/2 -f 119/43/2 143/44/2 144/40/2 -f 135/42/2 116/45/2 134/46/2 -f 143/44/2 113/47/2 142/48/2 -f 142/48/2 114/49/2 141/50/2 -f 134/46/2 128/51/2 133/52/2 -f 141/50/2 127/53/2 140/54/2 -f 133/52/2 126/55/2 132/56/2 -f 140/54/2 125/57/2 139/58/2 -f 132/56/2 124/59/2 131/60/2 -f 139/58/2 123/61/2 138/62/2 -f 131/60/2 121/35/2 130/63/2 -f 137/64/2 123/61/2 120/65/2 -f 195/66/2 109/67/2 110/68/2 -f 196/69/2 108/70/2 109/67/2 -f 108/70/2 198/71/2 107/72/2 -f 198/71/2 106/73/2 107/72/2 -f 106/73/2 200/74/2 105/75/2 -f 105/75/2 201/76/2 104/77/2 -f 104/78/2 202/79/2 103/80/2 -f 103/80/2 203/81/2 102/82/2 -f 102/82/2 204/83/2 101/84/2 -f 101/84/2 205/85/2 100/86/2 -f 205/85/2 99/87/2 100/86/2 -f 206/88/2 98/89/2 99/87/2 -f 207/90/2 97/91/2 98/89/2 -f 97/91/2 193/92/2 112/93/2 -f 112/93/2 194/94/2 111/95/2 -f 194/94/2 110/68/2 111/95/2 -f 234/96/3 229/97/3 877/98/3 -f 243/99/4 244/100/4 242/101/4 -f 238/102/1 244/103/1 239/104/1 -f 226/105/2 231/106/2 225/107/2 -f 240/108/5 232/109/5 226/110/5 -f 235/111/1 229/97/1 234/96/1 -f 236/112/5 227/113/5 876/114/5 -f 233/115/4 235/116/4 234/96/4 -f 233/117/2 881/118/2 880/119/2 -f 244/103/6 240/108/6 239/104/6 -f 238/102/7 242/120/7 241/121/7 -f 225/107/3 242/120/3 237/122/3 -f 253/123/2 259/124/2 257/125/2 -f 249/126/1 251/127/1 245/128/1 -f 269/129/2 272/130/2 262/131/2 -f 272/130/2 263/132/2 262/131/2 -f 273/133/2 264/134/2 263/132/2 -f 274/135/2 212/136/2 264/134/2 -f 270/137/1 310/138/1 306/139/1 -f 267/140/1 310/138/1 266/141/1 -f 268/142/1 309/143/1 267/140/1 -f 268/142/1 307/144/1 308/145/1 -f 311/146/8 287/147/8 269/148/8 -f 275/149/9 289/150/9 305/151/9 -f 59/152/2 318/153/2 58/154/2 -f 343/155/9 328/156/9 336/157/9 -f 375/158/10 340/159/10 339/160/10 -f 373/161/3 379/162/3 377/163/3 -f 331/164/2 334/165/2 333/166/2 -f 345/167/2 351/168/2 346/169/2 -f 329/170/2 332/171/2 335/172/2 -f 330/173/2 335/172/2 334/165/2 -f 341/174/1 339/175/1 340/159/1 -f 343/155/1 337/176/1 342/177/1 -f 342/177/1 338/178/1 341/174/1 -f 345/167/2 353/179/2 352/180/2 -f 347/181/2 349/182/2 348/183/2 -f 346/169/2 350/184/2 347/181/2 -f 361/185/1 354/186/1 355/187/1 -f 354/186/1 363/188/1 358/189/1 -f 360/190/1 356/191/1 357/192/1 -f 359/193/1 355/187/1 356/191/1 -f 368/194/11 367/195/11 370/196/11 -f 344/197/4 363/198/4 353/199/4 -f 366/200/1 364/201/1 365/202/1 -f 368/194/2 371/203/2 369/204/2 -f 372/205/1 374/206/1 373/161/1 -f 377/163/2 378/207/2 376/208/2 -f 333/166/10 378/209/10 331/210/10 -f 381/211/2 382/212/2 380/213/2 -f 383/214/4 384/215/4 382/212/4 -f 385/216/12 386/217/12 384/215/12 -f 387/218/4 388/219/4 386/217/4 -f 384/215/3 386/220/3 390/221/3 -f 391/222/5 389/223/5 387/224/5 -f 404/225/2 400/226/2 396/227/2 -f 60/228/2 317/229/2 59/230/2 -f 61/231/2 316/232/2 60/233/2 -f 62/234/2 315/235/2 61/236/2 -f 63/237/2 314/238/2 62/239/2 -f 64/240/2 313/241/2 63/242/2 -f 49/243/2 312/244/2 64/245/2 -f 50/246/2 327/247/2 49/248/2 -f 51/249/2 326/250/2 50/251/2 -f 51/252/2 324/253/2 325/254/2 -f 53/255/2 324/256/2 52/257/2 -f 53/258/2 322/259/2 323/260/2 -f 54/261/2 321/262/2 322/263/2 -f 55/264/2 320/265/2 321/266/2 -f 56/267/2 319/268/2 320/269/2 -f 57/270/2 318/271/2 319/272/2 -f 442/273/13 441/274/13 440/275/13 -f 444/276/4 443/277/4 442/273/4 -f 443/278/5 449/279/5 447/280/5 -f 448/281/3 444/282/3 442/283/3 -f 453/284/5 456/285/5 451/286/5 -f 450/287/3 455/288/3 452/289/3 -f 457/290/3 461/291/3 455/288/3 -f 460/292/5 456/285/5 454/293/5 -f 459/294/3 465/295/3 461/291/3 -f 460/292/5 462/296/5 458/297/5 -f 463/298/3 469/299/3 465/295/3 -f 462/296/5 468/300/5 466/301/5 -f 472/302/4 471/303/4 470/304/4 -f 479/305/5 477/306/5 475/307/5 -f 474/308/3 476/309/3 478/310/3 -f 502/311/3 500/312/3 498/313/3 -f 524/314/3 522/315/3 518/316/3 -f 512/317/5 514/318/5 504/319/5 -f 539/320/14 540/321/14 536/322/14 -f 531/323/14 532/324/14 530/325/14 -f 528/326/15 534/327/15 529/328/15 -f 535/329/14 536/322/14 532/324/14 -f 534/327/15 537/330/15 538/331/15 -f 537/330/15 542/332/15 538/331/15 -f 562/333/3 560/334/3 558/335/3 -f 578/336/2 574/337/2 570/338/2 -f 590/339/1 581/340/1 584/341/1 -f 602/342/1 592/343/1 596/344/1 -f 614/345/2 610/346/2 606/347/2 -f 800/348/1 804/349/1 796/350/1 -f 818/351/1 814/352/1 810/353/1 -f 828/354/16 826/355/16 822/356/16 -f 870/357/9 868/358/9 874/359/9 -f 227/360/17 875/361/17 876/362/17 -f 873/363/9 872/364/9 869/365/9 -f 877/366/18 869/365/18 230/367/18 -f 880/368/2 868/358/2 227/369/2 -f 869/365/2 881/370/2 230/371/2 -f 228/372/9 878/373/9 879/374/9 -f 870/357/3 880/375/3 878/373/3 -f 881/376/5 871/377/5 879/374/5 -f 879/374/9 880/375/9 881/376/9 -f 873/363/1 879/378/1 871/377/1 -f 878/379/1 875/361/1 870/357/1 -f 884/380/9 883/381/9 882/382/9 -f 882/382/2 889/383/2 884/380/2 -f 883/381/19 887/384/19 882/382/19 -f 885/385/1 886/386/1 883/381/1 -f 884/380/20 888/387/20 885/385/20 -f 899/388/2 912/389/2 900/390/2 -f 912/389/2 901/391/2 900/390/2 -f 901/391/2 902/392/2 890/393/2 -f 902/392/2 891/394/2 890/393/2 -f 891/394/2 904/395/2 892/396/2 -f 904/395/2 893/397/2 892/396/2 -f 893/397/2 906/398/2 894/399/2 -f 906/398/2 895/400/2 894/399/2 -f 895/400/2 908/401/2 896/402/2 -f 908/403/2 897/404/2 896/405/2 -f 897/404/2 910/406/2 898/407/2 -f 910/406/2 899/388/2 898/407/2 -f 923/408/1 936/409/1 935/410/1 -f 925/411/1 936/409/1 924/412/1 -f 925/411/1 927/413/1 937/414/1 -f 914/415/1 927/413/1 915/416/1 -f 914/415/1 928/417/1 926/418/1 -f 917/419/1 928/417/1 916/420/1 -f 917/419/1 930/421/1 929/422/1 -f 919/423/1 930/421/1 918/424/1 -f 919/423/1 932/425/1 931/426/1 -f 921/427/1 932/428/1 920/429/1 -f 921/427/1 934/430/1 933/431/1 -f 923/408/1 934/430/1 922/432/1 -f 945/433/21 956/434/21 942/435/21 -f 958/436/1 956/434/1 957/437/1 -f 948/438/2 940/439/2 947/440/2 -f 944/441/3 957/437/3 945/442/3 -f 948/438/3 951/443/3 949/444/3 -f 940/445/22 949/444/22 938/446/22 -f 943/447/5 956/434/5 959/448/5 -f 946/449/1 949/450/1 951/451/1 -f 952/452/5 955/453/5 953/454/5 -f 939/455/23 953/454/23 941/456/23 -f 962/457/3 965/458/3 963/459/3 -f 966/460/1 964/461/1 965/458/1 -f 963/462/21 964/461/21 960/463/21 -f 961/464/5 964/461/5 967/465/5 -f 980/466/1 982/467/1 976/468/1 -f 990/469/5 988/470/5 989/471/5 -f 987/472/4 990/469/4 985/473/4 -f 984/474/9 988/470/9 986/475/9 -f 986/476/2 991/477/2 987/478/2 -f 985/479/1 989/471/1 984/480/1 -f 304/481/1 289/482/1 992/483/1 -f 992/483/1 303/484/1 304/481/1 -f 993/485/1 302/486/1 303/484/1 -f 994/487/1 311/488/1 302/486/1 -f 300/489/1 288/490/1 301/491/1 -f 1005/492/2 1001/493/2 997/494/2 -f 1017/495/1 1008/496/1 1011/497/1 -f 1029/498/1 1019/499/1 1023/500/1 -f 1041/501/2 1037/502/2 1033/503/2 -f 30/1/1 28/33/1 36/2/1 -f 30/1/1 35/3/1 34/4/1 -f 32/5/1 34/4/1 33/6/1 -f 2/7/1 33/6/1 48/8/1 -f 4/9/1 48/8/1 47/10/1 -f 6/11/1 47/10/1 46/12/1 -f 8/13/1 46/12/1 45/14/1 -f 10/15/1 45/14/1 44/16/1 -f 12/17/1 44/16/1 43/18/1 -f 16/20/1 14/19/1 43/18/1 -f 18/22/1 16/20/1 42/21/1 -f 20/24/1 18/504/1 41/25/1 -f 22/27/1 20/24/1 40/26/1 -f 24/29/1 22/27/1 39/28/1 -f 26/31/1 24/29/1 38/30/1 -f 28/33/1 26/31/1 37/32/1 -f 129/34/2 130/63/2 121/35/2 -f 137/37/2 120/505/2 118/38/2 -f 122/36/2 119/43/2 144/40/2 -f 136/39/2 118/38/2 115/41/2 -f 119/43/2 117/506/2 143/44/2 -f 135/42/2 115/41/2 116/45/2 -f 143/44/2 117/506/2 113/47/2 -f 142/48/2 113/47/2 114/49/2 -f 134/46/2 116/45/2 128/51/2 -f 141/50/2 114/49/2 127/53/2 -f 133/52/2 128/51/2 126/55/2 -f 140/54/2 127/53/2 125/57/2 -f 132/56/2 126/55/2 124/59/2 -f 139/58/2 125/57/2 123/61/2 -f 131/60/2 124/59/2 121/35/2 -f 137/64/2 138/62/2 123/61/2 -f 195/66/2 196/69/2 109/67/2 -f 196/69/2 197/507/2 108/70/2 -f 108/70/2 197/507/2 198/71/2 -f 198/71/2 199/508/2 106/73/2 -f 106/73/2 199/508/2 200/74/2 -f 105/75/2 200/74/2 201/76/2 -f 104/78/2 201/509/2 202/79/2 -f 103/80/2 202/79/2 203/81/2 -f 102/82/2 203/81/2 204/83/2 -f 101/84/2 204/83/2 205/85/2 -f 205/85/2 206/88/2 99/87/2 -f 206/88/2 207/90/2 98/89/2 -f 207/90/2 208/510/2 97/91/2 -f 97/91/2 208/510/2 193/92/2 -f 112/93/2 193/92/2 194/94/2 -f 194/94/2 195/66/2 110/68/2 -f 230/511/3 233/115/3 877/98/3 -f 233/115/3 234/96/3 877/98/3 -f 244/100/4 241/512/4 242/101/4 -f 242/101/4 231/513/4 232/109/4 -f 232/109/4 243/99/4 242/101/4 -f 238/102/1 241/121/1 244/103/1 -f 226/105/2 232/514/2 231/106/2 -f 240/108/5 243/99/5 232/109/5 -f 235/111/1 228/372/1 229/97/1 -f 228/372/5 235/111/5 876/114/5 -f 235/111/5 236/112/5 876/114/5 -f 233/115/4 236/515/4 235/116/4 -f 227/113/2 236/112/2 880/119/2 -f 236/112/2 233/117/2 880/119/2 -f 233/117/2 230/516/2 881/118/2 -f 244/103/6 243/99/6 240/108/6 -f 238/102/7 237/122/7 242/120/7 -f 225/107/3 231/106/3 242/120/3 -f 255/517/2 254/518/2 253/123/2 -f 253/123/2 260/519/2 259/124/2 -f 259/124/2 258/520/2 257/125/2 -f 257/125/2 256/521/2 255/517/2 -f 255/517/2 253/123/2 257/125/2 -f 245/128/1 246/522/1 247/523/1 -f 247/523/1 248/524/1 249/126/1 -f 249/126/1 250/525/1 251/127/1 -f 251/127/1 252/526/1 245/128/1 -f 245/128/1 247/523/1 249/126/1 -f 269/129/2 287/527/2 272/130/2 -f 272/130/2 273/133/2 263/132/2 -f 273/133/2 274/135/2 264/134/2 -f 274/135/2 275/528/2 212/136/2 -f 270/137/1 266/141/1 310/138/1 -f 267/140/1 309/143/1 310/138/1 -f 268/142/1 308/145/1 309/143/1 -f 268/142/1 211/529/1 307/144/1 -f 269/148/8 270/530/8 311/146/8 -f 270/530/8 306/531/8 311/146/8 -f 311/146/8 301/532/8 287/147/8 -f 307/533/9 211/534/9 305/151/9 -f 211/534/9 212/535/9 305/151/9 -f 212/535/9 275/149/9 305/151/9 -f 59/152/2 317/536/2 318/153/2 -f 343/155/9 332/171/9 328/156/9 -f 375/158/10 372/205/10 340/159/10 -f 373/161/3 374/537/3 379/162/3 -f 331/164/2 330/173/2 334/165/2 -f 345/167/2 352/180/2 351/168/2 -f 329/170/2 328/538/2 332/171/2 -f 330/173/2 329/170/2 335/172/2 -f 341/174/1 338/178/1 339/175/1 -f 343/155/1 336/539/1 337/176/1 -f 342/177/1 337/176/1 338/178/1 -f 345/167/2 344/197/2 353/179/2 -f 347/181/2 350/184/2 349/182/2 -f 346/169/2 351/168/2 350/184/2 -f 361/185/1 362/540/1 354/186/1 -f 354/186/1 362/540/1 363/188/1 -f 360/190/1 359/193/1 356/191/1 -f 359/193/1 361/185/1 355/187/1 -f 368/194/11 364/201/11 367/195/11 -f 344/197/4 358/189/4 363/198/4 -f 366/200/1 367/541/1 364/201/1 -f 368/194/2 370/542/2 371/203/2 -f 372/205/1 375/543/1 374/206/1 -f 377/163/2 379/544/2 378/207/2 -f 333/166/10 376/208/10 378/209/10 -f 381/211/2 383/214/2 382/212/2 -f 383/214/4 385/216/4 384/215/4 -f 385/216/12 387/218/12 386/217/12 -f 387/218/4 389/545/4 388/219/4 -f 380/546/3 382/212/3 384/215/3 -f 386/220/3 388/547/3 390/221/3 -f 380/546/3 384/215/3 390/221/3 -f 383/214/5 381/548/5 385/216/5 -f 381/548/5 391/222/5 385/216/5 -f 385/216/5 391/222/5 387/224/5 -f 396/227/2 395/549/2 394/550/2 -f 394/550/2 409/551/2 396/227/2 -f 409/551/2 408/552/2 396/227/2 -f 408/552/2 407/553/2 406/554/2 -f 406/554/2 405/555/2 404/225/2 -f 404/225/2 403/556/2 402/557/2 -f 402/557/2 401/558/2 400/226/2 -f 400/226/2 399/559/2 398/560/2 -f 398/560/2 397/561/2 396/227/2 -f 408/552/2 406/554/2 404/225/2 -f 404/225/2 402/557/2 400/226/2 -f 400/226/2 398/560/2 396/227/2 -f 396/227/2 408/552/2 404/225/2 -f 60/228/2 316/562/2 317/229/2 -f 61/231/2 315/563/2 316/232/2 -f 62/234/2 314/564/2 315/235/2 -f 63/237/2 313/565/2 314/238/2 -f 64/240/2 312/566/2 313/241/2 -f 49/243/2 327/567/2 312/244/2 -f 50/246/2 326/568/2 327/247/2 -f 51/249/2 325/569/2 326/250/2 -f 51/252/2 52/570/2 324/253/2 -f 53/255/2 323/571/2 324/256/2 -f 53/258/2 54/572/2 322/259/2 -f 54/261/2 55/573/2 321/262/2 -f 55/264/2 56/574/2 320/265/2 -f 56/267/2 57/575/2 319/268/2 -f 57/270/2 58/576/2 318/271/2 -f 442/273/13 443/277/13 441/274/13 -f 444/276/4 445/577/4 443/277/4 -f 447/280/5 441/274/5 443/278/5 -f 443/278/5 445/578/5 449/279/5 -f 442/283/3 440/275/3 446/579/3 -f 446/579/3 448/281/3 442/283/3 -f 453/284/5 454/293/5 456/285/5 -f 450/287/3 457/290/3 455/288/3 -f 457/290/3 459/294/3 461/291/3 -f 460/292/5 458/297/5 456/285/5 -f 459/294/3 463/298/3 465/295/3 -f 460/292/5 464/580/5 462/296/5 -f 463/298/3 467/581/3 469/299/3 -f 462/296/5 464/580/5 468/300/5 -f 472/302/4 473/582/4 471/303/4 -f 475/307/5 471/303/5 473/582/5 -f 473/582/5 479/305/5 475/307/5 -f 478/310/3 472/302/3 474/308/3 -f 472/302/3 470/304/3 474/308/3 -f 494/583/3 493/584/3 492/585/3 -f 492/585/3 503/586/3 502/311/3 -f 502/311/3 501/587/3 500/312/3 -f 500/312/3 499/588/3 498/313/3 -f 498/313/3 497/589/3 494/583/3 -f 497/589/3 496/590/3 494/583/3 -f 496/590/3 495/591/3 494/583/3 -f 494/583/3 492/585/3 498/313/3 -f 492/585/3 502/311/3 498/313/3 -f 518/316/3 517/592/3 516/593/3 -f 516/593/3 527/594/3 526/595/3 -f 526/595/3 525/596/3 524/314/3 -f 524/314/3 523/597/3 522/315/3 -f 522/315/3 521/598/3 518/316/3 -f 521/598/3 520/599/3 518/316/3 -f 520/599/3 519/600/3 518/316/3 -f 518/316/3 516/593/3 526/595/3 -f 526/595/3 524/314/3 518/316/3 -f 504/319/5 505/601/5 506/602/5 -f 506/602/5 507/603/5 508/604/5 -f 508/604/5 509/605/5 512/317/5 -f 509/605/5 510/606/5 512/317/5 -f 510/606/5 511/607/5 512/317/5 -f 512/317/5 513/608/5 514/318/5 -f 514/318/5 515/609/5 504/319/5 -f 504/319/5 506/602/5 512/317/5 -f 506/602/5 508/604/5 512/317/5 -f 539/320/14 543/610/14 540/321/14 -f 531/323/14 535/329/14 532/324/14 -f 528/326/15 533/611/15 534/327/15 -f 535/329/14 539/320/14 536/322/14 -f 534/327/15 533/611/15 537/330/15 -f 537/330/15 541/612/15 542/332/15 -f 558/335/3 557/613/3 556/614/3 -f 556/614/3 567/615/3 558/335/3 -f 567/615/3 566/616/3 558/335/3 -f 566/616/3 565/617/3 564/618/3 -f 564/618/3 563/619/3 562/333/3 -f 562/333/3 561/620/3 560/334/3 -f 560/334/3 559/621/3 558/335/3 -f 566/616/3 564/618/3 558/335/3 -f 564/618/3 562/333/3 558/335/3 -f 570/338/2 569/622/2 578/336/2 -f 569/622/2 568/623/2 578/336/2 -f 568/623/2 579/624/2 578/336/2 -f 578/336/2 577/625/2 576/626/2 -f 576/626/2 575/627/2 574/337/2 -f 574/337/2 573/628/2 572/629/2 -f 572/629/2 571/630/2 574/337/2 -f 571/630/2 570/338/2 574/337/2 -f 578/336/2 576/626/2 574/337/2 -f 581/340/1 580/631/1 582/632/1 -f 582/632/1 583/633/1 581/340/1 -f 583/633/1 584/341/1 581/340/1 -f 584/341/1 585/634/1 588/635/1 -f 585/634/1 586/636/1 588/635/1 -f 586/636/1 587/637/1 588/635/1 -f 588/635/1 589/638/1 590/339/1 -f 590/339/1 591/639/1 581/340/1 -f 588/635/1 590/339/1 584/341/1 -f 592/343/1 593/640/1 594/641/1 -f 594/641/1 595/642/1 592/343/1 -f 595/642/1 596/344/1 592/343/1 -f 596/344/1 597/643/1 600/644/1 -f 597/643/1 598/645/1 600/644/1 -f 598/645/1 599/646/1 600/644/1 -f 600/644/1 601/647/1 602/342/1 -f 602/342/1 603/648/1 592/343/1 -f 600/644/1 602/342/1 596/344/1 -f 606/347/2 604/649/2 614/345/2 -f 604/649/2 605/650/2 614/345/2 -f 605/650/2 615/651/2 614/345/2 -f 614/345/2 613/652/2 612/653/2 -f 612/653/2 611/654/2 610/346/2 -f 610/346/2 609/655/2 608/656/2 -f 608/656/2 607/657/2 610/346/2 -f 607/657/2 606/347/2 610/346/2 -f 614/345/2 612/653/2 610/346/2 -f 796/350/1 797/658/1 798/659/1 -f 798/659/1 799/660/1 796/350/1 -f 799/660/1 800/348/1 796/350/1 -f 800/348/1 801/661/1 804/349/1 -f 801/661/1 802/662/1 804/349/1 -f 802/662/1 803/663/1 804/349/1 -f 804/349/1 805/664/1 806/665/1 -f 806/665/1 807/666/1 804/349/1 -f 807/666/1 796/350/1 804/349/1 -f 810/353/1 809/667/1 808/668/1 -f 808/668/1 819/669/1 810/353/1 -f 819/669/1 818/351/1 810/353/1 -f 818/351/1 817/670/1 816/671/1 -f 816/671/1 815/672/1 818/351/1 -f 815/672/1 814/352/1 818/351/1 -f 814/352/1 813/673/1 810/353/1 -f 813/673/1 812/674/1 810/353/1 -f 812/674/1 811/675/1 810/353/1 -f 822/356/16 821/676/16 830/677/16 -f 821/676/16 820/678/16 830/677/16 -f 820/678/16 831/679/16 830/677/16 -f 830/677/16 829/680/16 828/354/16 -f 828/354/16 827/681/16 826/355/16 -f 826/355/16 825/682/16 824/683/16 -f 824/683/16 823/684/16 826/355/16 -f 823/684/16 822/356/16 826/355/16 -f 830/677/16 828/354/16 822/356/16 -f 870/357/9 875/361/9 868/358/9 -f 227/360/17 868/358/17 875/361/17 -f 873/363/9 871/377/9 872/364/9 -f 877/366/18 873/363/18 869/365/18 -f 880/368/2 874/359/2 868/358/2 -f 869/365/2 872/364/2 881/370/2 -f 877/685/9 229/97/9 879/374/9 -f 229/97/9 228/372/9 879/374/9 -f 228/372/9 876/686/9 878/373/9 -f 870/357/3 874/359/3 880/375/3 -f 881/376/5 872/364/5 871/377/5 -f 879/374/9 878/373/9 880/375/9 -f 873/363/1 877/687/1 879/378/1 -f 878/379/1 876/688/1 875/361/1 -f 884/380/9 885/385/9 883/381/9 -f 882/382/2 887/689/2 889/383/2 -f 883/381/19 886/690/19 887/384/19 -f 885/385/1 888/691/1 886/386/1 -f 884/380/20 889/692/20 888/387/20 -f 899/388/2 911/693/2 912/389/2 -f 912/389/2 913/694/2 901/391/2 -f 901/391/2 913/694/2 902/392/2 -f 902/392/2 903/695/2 891/394/2 -f 891/394/2 903/695/2 904/395/2 -f 904/395/2 905/696/2 893/397/2 -f 893/397/2 905/696/2 906/398/2 -f 906/398/2 907/697/2 895/400/2 -f 895/400/2 907/697/2 908/401/2 -f 908/403/2 909/698/2 897/404/2 -f 897/404/2 909/698/2 910/406/2 -f 910/406/2 911/693/2 899/388/2 -f 923/408/1 924/412/1 936/409/1 -f 925/411/1 937/414/1 936/409/1 -f 925/411/1 915/416/1 927/413/1 -f 914/415/1 926/418/1 927/413/1 -f 914/415/1 916/420/1 928/417/1 -f 917/419/1 929/422/1 928/417/1 -f 917/419/1 918/424/1 930/421/1 -f 919/423/1 931/426/1 930/421/1 -f 919/423/1 920/699/1 932/425/1 -f 921/427/1 933/431/1 932/428/1 -f 921/427/1 922/432/1 934/430/1 -f 923/408/1 935/410/1 934/430/1 -f 945/433/21 957/437/21 956/434/21 -f 958/436/1 959/448/1 956/434/1 -f 947/440/2 941/700/2 953/701/2 -f 953/701/2 955/702/2 947/440/2 -f 955/702/2 950/703/2 947/440/2 -f 950/703/2 948/438/2 947/440/2 -f 944/441/3 958/436/3 957/437/3 -f 948/438/3 950/703/3 951/443/3 -f 940/445/22 948/438/22 949/444/22 -f 943/447/5 942/704/5 956/434/5 -f 951/451/1 954/705/1 946/449/1 -f 954/705/1 952/452/1 946/449/1 -f 952/452/1 939/706/1 946/449/1 -f 946/449/1 938/707/1 949/450/1 -f 952/452/5 954/705/5 955/453/5 -f 939/455/23 952/452/23 953/454/23 -f 962/457/3 966/460/3 965/458/3 -f 966/460/1 967/465/1 964/461/1 -f 963/462/21 965/458/21 964/461/21 -f 961/464/5 960/708/5 964/461/5 -f 976/468/1 977/709/1 978/710/1 -f 978/710/1 979/711/1 980/466/1 -f 980/466/1 981/712/1 982/467/1 -f 982/467/1 983/713/1 976/468/1 -f 976/468/1 978/710/1 980/466/1 -f 990/469/5 991/477/5 988/470/5 -f 987/472/4 991/477/4 990/469/4 -f 984/474/9 989/471/9 988/470/9 -f 986/476/2 988/470/2 991/477/2 -f 985/479/1 990/469/1 989/471/1 -f 304/481/1 305/714/1 289/482/1 -f 992/483/1 993/485/1 303/484/1 -f 993/485/1 994/487/1 302/486/1 -f 994/487/1 301/715/1 311/488/1 -f 301/491/1 994/716/1 993/717/1 -f 993/717/1 992/718/1 301/491/1 -f 992/718/1 289/719/1 301/491/1 -f 289/719/1 290/720/1 301/491/1 -f 290/720/1 291/721/1 301/491/1 -f 291/721/1 292/722/1 301/491/1 -f 292/722/1 293/723/1 301/491/1 -f 293/723/1 294/724/1 301/491/1 -f 294/724/1 295/725/1 301/491/1 -f 295/725/1 296/726/1 301/491/1 -f 296/726/1 297/727/1 301/491/1 -f 297/727/1 298/728/1 301/491/1 -f 298/728/1 299/729/1 301/491/1 -f 299/729/1 300/489/1 301/491/1 -f 997/494/2 996/730/2 1005/492/2 -f 996/730/2 995/731/2 1005/492/2 -f 995/731/2 1006/732/2 1005/492/2 -f 1005/492/2 1004/733/2 1003/734/2 -f 1003/734/2 1002/735/2 1001/493/2 -f 1001/493/2 1000/736/2 999/737/2 -f 999/737/2 998/738/2 1001/493/2 -f 998/738/2 997/494/2 1001/493/2 -f 1005/492/2 1003/734/2 1001/493/2 -f 1008/496/1 1007/739/1 1009/740/1 -f 1009/740/1 1010/741/1 1008/496/1 -f 1010/741/1 1011/497/1 1008/496/1 -f 1011/497/1 1012/742/1 1015/743/1 -f 1012/742/1 1013/744/1 1015/743/1 -f 1013/744/1 1014/745/1 1015/743/1 -f 1015/743/1 1016/746/1 1017/495/1 -f 1017/495/1 1018/747/1 1008/496/1 -f 1015/743/1 1017/495/1 1011/497/1 -f 1019/499/1 1020/748/1 1021/749/1 -f 1021/749/1 1022/750/1 1019/499/1 -f 1022/750/1 1023/500/1 1019/499/1 -f 1023/500/1 1024/751/1 1027/752/1 -f 1024/751/1 1025/753/1 1027/752/1 -f 1025/753/1 1026/754/1 1027/752/1 -f 1027/752/1 1028/755/1 1029/498/1 -f 1029/498/1 1030/756/1 1019/499/1 -f 1027/752/1 1029/498/1 1023/500/1 -f 1033/503/2 1031/757/2 1041/501/2 -f 1031/757/2 1032/758/2 1041/501/2 -f 1032/758/2 1042/759/2 1041/501/2 -f 1041/501/2 1040/760/2 1039/761/2 -f 1039/761/2 1038/762/2 1037/502/2 -f 1037/502/2 1036/763/2 1035/764/2 -f 1035/764/2 1034/765/2 1037/502/2 -f 1034/765/2 1033/503/2 1037/502/2 -f 1041/501/2 1039/761/2 1037/502/2 +f 416/564/229 422/565/229 421/566/229 +f 416/564/229 420/567/229 418/568/229 +f 418/568/229 419/569/229 388/570/229 +f 388/570/229 434/571/229 390/572/229 +f 390/572/229 433/573/229 392/574/229 +f 392/574/229 432/575/229 394/576/229 +f 394/576/229 431/577/229 396/578/229 +f 396/578/229 430/579/229 398/580/229 +f 398/580/229 429/581/229 400/582/229 +f 402/583/229 429/581/229 428/584/229 +f 404/585/229 428/584/229 427/586/229 +f 406/587/229 427/588/229 426/589/229 +f 408/590/229 426/589/229 425/591/229 +f 410/592/229 425/591/229 424/593/229 +f 412/594/229 424/593/229 423/595/229 +f 414/596/229 423/595/229 422/565/229 +f 515/597/230 507/598/230 508/599/230 +f 523/600/230 504/601/230 522/602/230 +f 508/599/230 530/603/230 515/597/230 +f 522/602/230 501/604/230 521/605/230 +f 505/606/230 529/607/230 530/603/230 +f 521/605/230 502/608/230 520/609/230 +f 529/607/230 499/610/230 528/611/230 +f 528/611/230 500/612/230 527/613/230 +f 520/609/230 514/614/230 519/615/230 +f 527/613/230 513/616/230 526/617/230 +f 519/615/230 512/618/230 518/619/230 +f 526/617/230 511/620/230 525/621/230 +f 518/619/230 510/622/230 517/623/230 +f 525/621/230 509/624/230 524/625/230 +f 517/623/230 507/598/230 516/626/230 +f 523/627/230 509/624/230 506/628/230 +f 581/629/230 495/630/230 496/631/230 +f 582/632/230 494/633/230 495/630/230 +f 494/633/230 584/634/230 493/635/230 +f 584/634/230 492/636/230 493/635/230 +f 492/636/230 586/637/230 491/638/230 +f 491/638/230 587/639/230 490/640/230 +f 490/641/230 588/642/230 489/643/230 +f 489/643/230 589/644/230 488/645/230 +f 488/645/230 590/646/230 487/647/230 +f 487/647/230 591/648/230 486/649/230 +f 591/648/230 485/650/230 486/649/230 +f 592/651/230 484/652/230 485/650/230 +f 593/653/230 483/654/230 484/652/230 +f 483/654/230 579/655/230 498/656/230 +f 498/656/230 580/657/230 497/658/230 +f 580/657/230 496/631/230 497/658/230 +f 621/659/231 622/660/231 620/661/231 +f 616/662/229 622/663/229 617/664/229 +f 612/665/230 613/666/230 611/667/230 +f 618/668/232 614/669/232 612/670/232 +f 622/663/233 618/668/233 617/664/233 +f 616/662/234 620/671/234 619/672/234 +f 611/667/235 620/671/235 615/673/235 +f 631/674/230 637/675/230 635/676/230 +f 627/677/229 629/678/229 623/679/229 +f 647/680/230 650/681/230 640/682/230 +f 650/681/230 641/683/230 640/682/230 +f 651/684/230 642/685/230 641/683/230 +f 652/686/230 598/687/230 642/685/230 +f 648/688/229 688/689/229 684/690/229 +f 645/691/229 688/689/229 644/692/229 +f 646/693/229 687/694/229 645/691/229 +f 646/693/229 685/695/229 686/696/229 +f 689/697/236 665/698/236 647/699/236 +f 653/700/237 667/701/237 683/702/237 +f 445/703/230 696/704/230 444/705/230 +f 707/706/230 713/707/230 708/708/230 +f 707/706/230 715/709/230 714/710/230 +f 709/711/230 711/712/230 710/713/230 +f 708/708/230 712/714/230 709/711/230 +f 723/715/229 716/716/229 717/717/229 +f 716/716/229 725/718/229 720/719/229 +f 722/720/229 718/721/229 719/722/229 +f 721/723/229 717/717/229 718/721/229 +f 730/724/238 729/725/238 732/726/238 +f 706/727/231 725/728/231 715/729/231 +f 728/730/229 726/731/229 727/732/229 +f 730/724/230 733/733/230 731/734/230 +f 735/735/230 736/736/230 734/737/230 +f 737/738/231 738/739/231 736/736/231 +f 739/740/239 740/741/239 738/739/239 +f 741/742/231 742/743/231 740/741/231 +f 738/739/235 740/744/235 744/745/235 +f 745/746/232 743/747/232 741/748/232 +f 758/749/230 754/750/230 750/751/230 +f 446/752/230 695/753/230 445/754/230 +f 447/755/230 694/756/230 446/757/230 +f 448/758/230 693/759/230 447/760/230 +f 449/761/230 692/762/230 448/763/230 +f 450/764/230 691/765/230 449/766/230 +f 435/767/230 690/768/230 450/769/230 +f 436/770/230 705/771/230 435/772/230 +f 437/773/230 704/774/230 436/775/230 +f 437/776/230 702/777/230 703/778/230 +f 439/779/230 702/780/230 438/781/230 +f 439/782/230 700/783/230 701/784/230 +f 440/785/230 699/786/230 700/787/230 +f 441/788/230 698/789/230 699/790/230 +f 442/791/230 697/792/230 698/793/230 +f 443/794/230 696/795/230 697/796/230 +f 796/797/240 795/798/240 794/799/240 +f 798/800/231 797/801/231 796/797/231 +f 797/802/232 803/803/232 801/804/232 +f 802/805/235 798/806/235 796/807/235 +f 807/808/232 810/809/232 805/810/232 +f 804/811/235 809/812/235 806/813/235 +f 811/814/235 815/815/235 809/812/235 +f 814/816/232 810/809/232 808/817/232 +f 813/818/235 819/819/235 815/815/235 +f 814/816/232 816/820/232 812/821/232 +f 817/822/235 823/823/235 819/819/235 +f 816/820/232 822/824/232 820/825/232 +f 826/826/231 825/827/231 824/828/231 +f 833/829/232 831/830/232 829/831/232 +f 828/832/235 830/833/235 832/834/235 +f 844/835/230 840/836/230 836/837/230 +f 856/838/229 847/839/229 850/840/229 +f 868/841/229 858/842/229 862/843/229 +f 880/844/230 876/845/230 872/846/230 +f 884/847/237 883/848/237 882/849/237 +f 882/849/230 889/850/230 884/847/230 +f 883/848/241 887/851/241 882/849/241 +f 885/852/229 886/853/229 883/848/229 +f 884/847/242 888/854/242 885/852/242 +f 899/855/230 912/856/230 900/857/230 +f 912/856/230 901/858/230 900/857/230 +f 901/858/230 902/859/230 890/860/230 +f 902/859/230 891/861/230 890/860/230 +f 891/861/230 904/862/230 892/863/230 +f 904/862/230 893/864/230 892/863/230 +f 893/864/230 906/865/230 894/866/230 +f 906/865/230 895/867/230 894/866/230 +f 895/867/230 908/868/230 896/869/230 +f 908/870/230 897/871/230 896/872/230 +f 897/871/230 910/873/230 898/874/230 +f 910/873/230 899/855/230 898/874/230 +f 923/875/229 936/876/229 935/877/229 +f 925/878/229 936/876/229 924/879/229 +f 925/878/229 927/880/229 937/881/229 +f 914/882/229 927/880/229 915/883/229 +f 914/882/229 928/884/229 926/885/229 +f 917/886/229 928/884/229 916/887/229 +f 917/886/229 930/888/229 929/889/229 +f 919/890/229 930/888/229 918/891/229 +f 919/890/229 932/892/229 931/893/229 +f 921/894/229 932/895/229 920/896/229 +f 921/894/229 934/897/229 933/898/229 +f 923/875/229 934/897/229 922/899/229 +f 945/900/243 956/901/243 942/902/243 +f 958/903/229 956/901/229 957/904/229 +f 948/905/230 940/906/230 947/907/230 +f 944/908/235 957/904/235 945/909/235 +f 948/905/235 951/910/235 949/911/235 +f 940/912/244 949/911/244 938/913/244 +f 943/914/232 956/901/232 959/915/232 +f 946/916/229 949/917/229 951/918/229 +f 952/919/232 955/920/232 953/921/232 +f 939/922/245 953/921/245 941/923/245 +f 962/924/235 965/925/235 963/926/235 +f 966/927/229 964/928/229 965/925/229 +f 963/929/243 964/928/243 960/930/243 +f 961/931/232 964/928/232 967/932/232 +f 980/933/229 982/934/229 976/935/229 +f 990/936/232 988/937/232 989/938/232 +f 987/939/231 990/936/231 985/940/231 +f 984/941/237 988/937/237 986/942/237 +f 986/943/230 991/944/230 987/945/230 +f 985/946/229 989/938/229 984/947/229 +f 682/948/229 667/949/229 992/950/229 +f 992/950/229 681/951/229 682/948/229 +f 993/952/229 680/953/229 681/951/229 +f 994/954/229 689/955/229 680/953/229 +f 678/956/229 666/957/229 679/958/229 +f 1005/959/230 1001/960/230 997/961/230 +f 1017/962/229 1008/963/229 1011/964/229 +f 1029/965/229 1019/966/229 1023/967/229 +f 1041/968/230 1037/969/230 1033/970/230 +f 416/564/229 414/596/229 422/565/229 +f 416/564/229 421/566/229 420/567/229 +f 418/568/229 420/567/229 419/569/229 +f 388/570/229 419/569/229 434/571/229 +f 390/572/229 434/571/229 433/573/229 +f 392/574/229 433/573/229 432/575/229 +f 394/576/229 432/575/229 431/577/229 +f 396/578/229 431/577/229 430/579/229 +f 398/580/229 430/579/229 429/581/229 +f 402/583/229 400/582/229 429/581/229 +f 404/585/229 402/583/229 428/584/229 +f 406/587/229 404/971/229 427/588/229 +f 408/590/229 406/587/229 426/589/229 +f 410/592/229 408/590/229 425/591/229 +f 412/594/229 410/592/229 424/593/229 +f 414/596/229 412/594/229 423/595/229 +f 515/597/230 516/626/230 507/598/230 +f 523/600/230 506/972/230 504/601/230 +f 508/599/230 505/606/230 530/603/230 +f 522/602/230 504/601/230 501/604/230 +f 505/606/230 503/973/230 529/607/230 +f 521/605/230 501/604/230 502/608/230 +f 529/607/230 503/973/230 499/610/230 +f 528/611/230 499/610/230 500/612/230 +f 520/609/230 502/608/230 514/614/230 +f 527/613/230 500/612/230 513/616/230 +f 519/615/230 514/614/230 512/618/230 +f 526/617/230 513/616/230 511/620/230 +f 518/619/230 512/618/230 510/622/230 +f 525/621/230 511/620/230 509/624/230 +f 517/623/230 510/622/230 507/598/230 +f 523/627/230 524/625/230 509/624/230 +f 581/629/230 582/632/230 495/630/230 +f 582/632/230 583/974/230 494/633/230 +f 494/633/230 583/974/230 584/634/230 +f 584/634/230 585/975/230 492/636/230 +f 492/636/230 585/975/230 586/637/230 +f 491/638/230 586/637/230 587/639/230 +f 490/641/230 587/976/230 588/642/230 +f 489/643/230 588/642/230 589/644/230 +f 488/645/230 589/644/230 590/646/230 +f 487/647/230 590/646/230 591/648/230 +f 591/648/230 592/651/230 485/650/230 +f 592/651/230 593/653/230 484/652/230 +f 593/653/230 594/977/230 483/654/230 +f 483/654/230 594/977/230 579/655/230 +f 498/656/230 579/655/230 580/657/230 +f 580/657/230 581/629/230 496/631/230 +f 622/660/231 619/978/231 620/661/231 +f 620/661/231 613/979/231 614/669/231 +f 614/669/231 621/659/231 620/661/231 +f 616/662/229 619/672/229 622/663/229 +f 612/665/230 614/980/230 613/666/230 +f 618/668/232 621/659/232 614/669/232 +f 622/663/233 621/659/233 618/668/233 +f 616/662/234 615/673/234 620/671/234 +f 611/667/235 613/666/235 620/671/235 +f 633/981/230 632/982/230 631/674/230 +f 631/674/230 638/983/230 637/675/230 +f 637/675/230 636/984/230 635/676/230 +f 635/676/230 634/985/230 633/981/230 +f 633/981/230 631/674/230 635/676/230 +f 623/679/229 624/986/229 625/987/229 +f 625/987/229 626/988/229 627/677/229 +f 627/677/229 628/989/229 629/678/229 +f 629/678/229 630/990/229 623/679/229 +f 623/679/229 625/987/229 627/677/229 +f 647/680/230 665/991/230 650/681/230 +f 650/681/230 651/684/230 641/683/230 +f 651/684/230 652/686/230 642/685/230 +f 652/686/230 653/992/230 598/687/230 +f 648/688/229 644/692/229 688/689/229 +f 645/691/229 687/694/229 688/689/229 +f 646/693/229 686/696/229 687/694/229 +f 646/693/229 597/993/229 685/695/229 +f 647/699/236 648/994/236 689/697/236 +f 648/994/236 684/995/236 689/697/236 +f 689/697/236 679/996/236 665/698/236 +f 685/997/237 597/998/237 683/702/237 +f 597/998/237 598/999/237 683/702/237 +f 598/999/237 653/700/237 683/702/237 +f 445/703/230 695/1000/230 696/704/230 +f 707/706/230 714/710/230 713/707/230 +f 707/706/230 706/727/230 715/709/230 +f 709/711/230 712/714/230 711/712/230 +f 708/708/230 713/707/230 712/714/230 +f 723/715/229 724/1001/229 716/716/229 +f 716/716/229 724/1001/229 725/718/229 +f 722/720/229 721/723/229 718/721/229 +f 721/723/229 723/715/229 717/717/229 +f 730/724/238 726/731/238 729/725/238 +f 706/727/231 720/719/231 725/728/231 +f 728/730/229 729/1002/229 726/731/229 +f 730/724/230 732/1003/230 733/733/230 +f 735/735/230 737/738/230 736/736/230 +f 737/738/231 739/740/231 738/739/231 +f 739/740/239 741/742/239 740/741/239 +f 741/742/231 743/1004/231 742/743/231 +f 734/1005/235 736/736/235 738/739/235 +f 740/744/235 742/1006/235 744/745/235 +f 734/1005/235 738/739/235 744/745/235 +f 737/738/232 735/1007/232 739/740/232 +f 735/1007/232 745/746/232 739/740/232 +f 739/740/232 745/746/232 741/748/232 +f 750/751/230 749/1008/230 748/1009/230 +f 748/1009/230 763/1010/230 750/751/230 +f 763/1010/230 762/1011/230 750/751/230 +f 762/1011/230 761/1012/230 760/1013/230 +f 760/1013/230 759/1014/230 758/749/230 +f 758/749/230 757/1015/230 756/1016/230 +f 756/1016/230 755/1017/230 754/750/230 +f 754/750/230 753/1018/230 752/1019/230 +f 752/1019/230 751/1020/230 750/751/230 +f 762/1011/230 760/1013/230 758/749/230 +f 758/749/230 756/1016/230 754/750/230 +f 754/750/230 752/1019/230 750/751/230 +f 750/751/230 762/1011/230 758/749/230 +f 446/752/230 694/1021/230 695/753/230 +f 447/755/230 693/1022/230 694/756/230 +f 448/758/230 692/1023/230 693/759/230 +f 449/761/230 691/1024/230 692/762/230 +f 450/764/230 690/1025/230 691/765/230 +f 435/767/230 705/1026/230 690/768/230 +f 436/770/230 704/1027/230 705/771/230 +f 437/773/230 703/1028/230 704/774/230 +f 437/776/230 438/1029/230 702/777/230 +f 439/779/230 701/1030/230 702/780/230 +f 439/782/230 440/1031/230 700/783/230 +f 440/785/230 441/1032/230 699/786/230 +f 441/788/230 442/1033/230 698/789/230 +f 442/791/230 443/1034/230 697/792/230 +f 443/794/230 444/1035/230 696/795/230 +f 796/797/240 797/801/240 795/798/240 +f 798/800/231 799/1036/231 797/801/231 +f 801/804/232 795/798/232 797/802/232 +f 797/802/232 799/1037/232 803/803/232 +f 796/807/235 794/799/235 800/1038/235 +f 800/1038/235 802/805/235 796/807/235 +f 807/808/232 808/817/232 810/809/232 +f 804/811/235 811/814/235 809/812/235 +f 811/814/235 813/818/235 815/815/235 +f 814/816/232 812/821/232 810/809/232 +f 813/818/235 817/822/235 819/819/235 +f 814/816/232 818/1039/232 816/820/232 +f 817/822/235 821/1040/235 823/823/235 +f 816/820/232 818/1039/232 822/824/232 +f 826/826/231 827/1041/231 825/827/231 +f 829/831/232 825/827/232 827/1041/232 +f 827/1041/232 833/829/232 829/831/232 +f 832/834/235 826/826/235 828/832/235 +f 826/826/235 824/828/235 828/832/235 +f 836/837/230 835/1042/230 844/835/230 +f 835/1042/230 834/1043/230 844/835/230 +f 834/1043/230 845/1044/230 844/835/230 +f 844/835/230 843/1045/230 842/1046/230 +f 842/1046/230 841/1047/230 840/836/230 +f 840/836/230 839/1048/230 838/1049/230 +f 838/1049/230 837/1050/230 840/836/230 +f 837/1050/230 836/837/230 840/836/230 +f 844/835/230 842/1046/230 840/836/230 +f 847/839/229 846/1051/229 848/1052/229 +f 848/1052/229 849/1053/229 847/839/229 +f 849/1053/229 850/840/229 847/839/229 +f 850/840/229 851/1054/229 854/1055/229 +f 851/1054/229 852/1056/229 854/1055/229 +f 852/1056/229 853/1057/229 854/1055/229 +f 854/1055/229 855/1058/229 856/838/229 +f 856/838/229 857/1059/229 847/839/229 +f 854/1055/229 856/838/229 850/840/229 +f 858/842/229 859/1060/229 860/1061/229 +f 860/1061/229 861/1062/229 858/842/229 +f 861/1062/229 862/843/229 858/842/229 +f 862/843/229 863/1063/229 866/1064/229 +f 863/1063/229 864/1065/229 866/1064/229 +f 864/1065/229 865/1066/229 866/1064/229 +f 866/1064/229 867/1067/229 868/841/229 +f 868/841/229 869/1068/229 858/842/229 +f 866/1064/229 868/841/229 862/843/229 +f 872/846/230 870/1069/230 880/844/230 +f 870/1069/230 871/1070/230 880/844/230 +f 871/1070/230 881/1071/230 880/844/230 +f 880/844/230 879/1072/230 878/1073/230 +f 878/1073/230 877/1074/230 876/845/230 +f 876/845/230 875/1075/230 874/1076/230 +f 874/1076/230 873/1077/230 876/845/230 +f 873/1077/230 872/846/230 876/845/230 +f 880/844/230 878/1073/230 876/845/230 +f 884/847/237 885/852/237 883/848/237 +f 882/849/230 887/1078/230 889/850/230 +f 883/848/241 886/1079/241 887/851/241 +f 885/852/229 888/1080/229 886/853/229 +f 884/847/242 889/1081/242 888/854/242 +f 899/855/230 911/1082/230 912/856/230 +f 912/856/230 913/1083/230 901/858/230 +f 901/858/230 913/1083/230 902/859/230 +f 902/859/230 903/1084/230 891/861/230 +f 891/861/230 903/1084/230 904/862/230 +f 904/862/230 905/1085/230 893/864/230 +f 893/864/230 905/1085/230 906/865/230 +f 906/865/230 907/1086/230 895/867/230 +f 895/867/230 907/1086/230 908/868/230 +f 908/870/230 909/1087/230 897/871/230 +f 897/871/230 909/1087/230 910/873/230 +f 910/873/230 911/1082/230 899/855/230 +f 923/875/229 924/879/229 936/876/229 +f 925/878/229 937/881/229 936/876/229 +f 925/878/229 915/883/229 927/880/229 +f 914/882/229 926/885/229 927/880/229 +f 914/882/229 916/887/229 928/884/229 +f 917/886/229 929/889/229 928/884/229 +f 917/886/229 918/891/229 930/888/229 +f 919/890/229 931/893/229 930/888/229 +f 919/890/229 920/1088/229 932/892/229 +f 921/894/229 933/898/229 932/895/229 +f 921/894/229 922/899/229 934/897/229 +f 923/875/229 935/877/229 934/897/229 +f 945/900/243 957/904/243 956/901/243 +f 958/903/229 959/915/229 956/901/229 +f 947/907/230 941/1089/230 953/1090/230 +f 953/1090/230 955/1091/230 947/907/230 +f 955/1091/230 950/1092/230 947/907/230 +f 950/1092/230 948/905/230 947/907/230 +f 944/908/235 958/903/235 957/904/235 +f 948/905/235 950/1092/235 951/910/235 +f 940/912/244 948/905/244 949/911/244 +f 943/914/232 942/1093/232 956/901/232 +f 951/918/229 954/1094/229 946/916/229 +f 954/1094/229 952/919/229 946/916/229 +f 952/919/229 939/1095/229 946/916/229 +f 946/916/229 938/1096/229 949/917/229 +f 952/919/232 954/1094/232 955/920/232 +f 939/922/245 952/919/245 953/921/245 +f 962/924/235 966/927/235 965/925/235 +f 966/927/229 967/932/229 964/928/229 +f 963/929/243 965/925/243 964/928/243 +f 961/931/232 960/1097/232 964/928/232 +f 976/935/229 977/1098/229 978/1099/229 +f 978/1099/229 979/1100/229 980/933/229 +f 980/933/229 981/1101/229 982/934/229 +f 982/934/229 983/1102/229 976/935/229 +f 976/935/229 978/1099/229 980/933/229 +f 990/936/232 991/944/232 988/937/232 +f 987/939/231 991/944/231 990/936/231 +f 984/941/237 989/938/237 988/937/237 +f 986/943/230 988/937/230 991/944/230 +f 985/946/229 990/936/229 989/938/229 +f 682/948/229 683/1103/229 667/949/229 +f 992/950/229 993/952/229 681/951/229 +f 993/952/229 994/954/229 680/953/229 +f 994/954/229 679/1104/229 689/955/229 +f 679/958/229 994/1105/229 993/1106/229 +f 993/1106/229 992/1107/229 679/958/229 +f 992/1107/229 667/1108/229 679/958/229 +f 667/1108/229 668/1109/229 679/958/229 +f 668/1109/229 669/1110/229 679/958/229 +f 669/1110/229 670/1111/229 679/958/229 +f 670/1111/229 671/1112/229 679/958/229 +f 671/1112/229 672/1113/229 679/958/229 +f 672/1113/229 673/1114/229 679/958/229 +f 673/1114/229 674/1115/229 679/958/229 +f 674/1115/229 675/1116/229 679/958/229 +f 675/1116/229 676/1117/229 679/958/229 +f 676/1117/229 677/1118/229 679/958/229 +f 677/1118/229 678/956/229 679/958/229 +f 997/961/230 996/1119/230 1005/959/230 +f 996/1119/230 995/1120/230 1005/959/230 +f 995/1120/230 1006/1121/230 1005/959/230 +f 1005/959/230 1004/1122/230 1003/1123/230 +f 1003/1123/230 1002/1124/230 1001/960/230 +f 1001/960/230 1000/1125/230 999/1126/230 +f 999/1126/230 998/1127/230 1001/960/230 +f 998/1127/230 997/961/230 1001/960/230 +f 1005/959/230 1003/1123/230 1001/960/230 +f 1008/963/229 1007/1128/229 1009/1129/229 +f 1009/1129/229 1010/1130/229 1008/963/229 +f 1010/1130/229 1011/964/229 1008/963/229 +f 1011/964/229 1012/1131/229 1015/1132/229 +f 1012/1131/229 1013/1133/229 1015/1132/229 +f 1013/1133/229 1014/1134/229 1015/1132/229 +f 1015/1132/229 1016/1135/229 1017/962/229 +f 1017/962/229 1018/1136/229 1008/963/229 +f 1015/1132/229 1017/962/229 1011/964/229 +f 1019/966/229 1020/1137/229 1021/1138/229 +f 1021/1138/229 1022/1139/229 1019/966/229 +f 1022/1139/229 1023/967/229 1019/966/229 +f 1023/967/229 1024/1140/229 1027/1141/229 +f 1024/1140/229 1025/1142/229 1027/1141/229 +f 1025/1142/229 1026/1143/229 1027/1141/229 +f 1027/1141/229 1028/1144/229 1029/965/229 +f 1029/965/229 1030/1145/229 1019/966/229 +f 1027/1141/229 1029/965/229 1023/967/229 +f 1033/970/230 1031/1146/230 1041/968/230 +f 1031/1146/230 1032/1147/230 1041/968/230 +f 1032/1147/230 1042/1148/230 1041/968/230 +f 1041/968/230 1040/1149/230 1039/1150/230 +f 1039/1150/230 1038/1151/230 1037/969/230 +f 1037/969/230 1036/1152/230 1035/1153/230 +f 1035/1153/230 1034/1154/230 1037/969/230 +f 1034/1154/230 1033/970/230 1037/969/230 +f 1041/968/230 1039/1150/230 1037/969/230 s 1 -f 2/7/9 3/766/24 1/767/25 -f 4/9/26 5/768/27 3/766/24 -f 6/11/23 7/769/28 5/768/27 -f 8/13/29 9/770/30 7/769/28 -f 10/15/5 11/771/31 9/770/30 -f 12/17/32 13/772/33 11/771/31 -f 13/772/33 16/20/34 15/773/35 -f 16/20/34 17/774/36 15/773/35 -f 18/504/4 19/775/37 17/776/36 -f 20/24/38 21/777/39 19/775/37 -f 22/27/40 23/778/41 21/777/39 -f 24/29/10 25/779/42 23/778/41 -f 26/31/3 27/780/43 25/779/42 -f 28/33/11 29/781/44 27/780/43 -f 30/1/22 31/782/45 29/781/44 -f 31/782/45 2/7/9 1/767/25 -f 43/18/22 58/783/46 42/21/46 -f 36/2/32 51/784/47 35/3/47 -f 44/16/11 59/785/22 43/18/22 -f 37/32/5 52/786/32 36/2/32 -f 45/14/3 60/787/11 44/16/11 -f 38/30/29 53/788/5 37/32/5 -f 46/12/10 61/789/3 45/14/3 -f 39/28/23 54/790/29 38/30/29 -f 47/10/40 62/791/10 46/12/10 -f 40/26/26 55/792/23 39/28/23 -f 48/8/38 63/793/40 47/10/40 -f 41/25/9 56/794/26 40/26/26 -f 34/4/34 49/795/4 33/6/4 -f 33/6/4 64/796/38 48/8/38 -f 42/21/46 57/797/9 41/23/9 -f 35/3/47 50/798/34 34/4/34 -f 66/799/48 81/800/49 65/801/50 -f 81/800/49 31/802/45 1/803/25 -f 80/804/51 81/805/49 96/806/52 -f 80/804/51 95/807/53 79/808/54 -f 79/808/54 94/809/55 78/810/56 -f 77/811/57 94/812/55 93/813/58 -f 76/814/59 93/815/58 92/816/60 -f 75/817/61 92/818/60 91/819/62 -f 74/820/63 91/821/62 90/822/64 -f 74/820/63 89/823/65 73/824/66 -f 72/825/67 89/826/65 88/827/68 -f 72/825/67 87/828/69 71/829/70 -f 71/829/70 86/830/71 70/831/72 -f 70/831/72 85/832/73 69/833/74 -f 68/834/75 85/835/73 84/836/76 -f 67/837/77 84/838/76 83/839/78 -f 67/837/77 82/840/79 66/799/48 -f 3/841/24 81/805/49 1/842/25 -f 5/843/27 96/844/52 3/845/24 -f 94/809/55 5/846/27 7/847/28 -f 93/813/58 7/848/28 9/849/30 -f 11/850/31 93/815/58 9/851/30 -f 13/852/33 92/818/60 11/853/31 -f 90/822/64 13/854/33 15/855/35 -f 89/823/65 15/856/35 17/857/36 -f 19/858/37 89/826/65 17/859/36 -f 21/860/39 88/861/68 19/862/37 -f 23/863/41 87/864/69 21/865/39 -f 85/832/73 23/866/41 25/867/42 -f 84/836/76 25/868/42 27/869/43 -f 83/839/78 27/870/43 29/871/44 -f 82/840/79 29/872/44 31/873/45 -f 129/34/9 111/95/46 130/63/46 -f 144/40/26 112/93/9 129/34/9 -f 137/64/4 103/80/34 138/62/34 -f 130/63/46 110/68/22 131/60/22 -f 138/62/34 102/82/47 139/58/47 -f 131/60/22 109/67/11 132/56/11 -f 139/58/47 101/84/32 140/54/32 -f 132/56/11 108/70/3 133/52/3 -f 140/54/32 100/86/5 141/50/5 -f 133/52/3 107/72/10 134/46/10 -f 141/50/5 99/87/29 142/48/29 -f 134/46/10 106/73/40 135/42/40 -f 142/48/29 98/89/23 143/44/23 -f 135/42/40 105/75/38 136/39/38 -f 143/44/23 97/91/26 144/40/26 -f 136/39/38 104/77/4 137/37/4 -f 154/874/9 119/43/26 122/36/9 -f 153/875/46 122/36/9 121/35/46 -f 156/876/22 121/35/46 124/59/22 -f 158/877/11 124/59/22 126/55/11 -f 160/878/3 126/55/11 128/51/3 -f 148/879/10 128/51/3 116/45/10 -f 147/880/40 116/45/10 115/41/40 -f 150/881/38 115/41/40 118/38/38 -f 152/882/4 118/38/38 120/505/4 -f 155/883/34 120/65/4 123/61/34 -f 157/884/47 123/61/34 125/57/47 -f 159/885/32 125/57/47 127/53/32 -f 146/886/5 127/53/32 114/49/5 -f 145/887/29 114/49/5 113/47/29 -f 149/888/23 113/47/29 117/506/23 -f 151/889/26 117/506/23 119/43/26 -f 192/890/80 153/875/81 191/891/81 -f 177/892/82 154/874/80 192/890/80 -f 178/893/83 151/889/82 177/892/82 -f 178/893/83 145/887/84 149/888/83 -f 179/894/84 146/886/6 145/887/84 -f 180/895/6 159/885/85 146/886/6 -f 181/896/85 157/884/86 159/885/85 -f 182/897/86 155/883/87 157/884/86 -f 184/898/88 155/883/87 183/899/87 -f 184/900/88 150/881/89 152/882/88 -f 185/901/89 147/880/90 150/881/89 -f 186/902/90 148/879/91 147/880/90 -f 188/903/7 148/879/91 187/904/91 -f 188/903/7 158/877/92 160/878/7 -f 189/905/92 156/876/93 158/877/92 -f 190/906/93 153/875/81 156/876/93 -f 172/907/94 191/891/95 190/906/94 -f 169/908/95 192/890/96 191/891/95 -f 170/909/96 177/892/97 192/890/96 -f 167/910/97 178/893/98 177/892/97 -f 178/893/98 161/911/99 179/894/99 -f 179/894/99 162/912/100 180/895/100 -f 180/895/100 175/913/101 181/896/101 -f 181/896/101 173/914/102 182/897/102 -f 173/914/102 183/899/103 182/897/102 -f 171/915/103 184/898/104 183/899/103 -f 184/900/104 166/916/105 185/901/105 -f 185/901/105 163/917/106 186/902/106 -f 186/902/106 164/918/107 187/904/107 -f 164/918/107 188/903/108 187/904/107 -f 188/903/108 174/919/109 189/905/109 -f 189/905/109 172/907/94 190/906/94 -f 66/799/46 172/907/22 67/837/22 -f 65/801/9 169/908/46 66/799/46 -f 80/804/26 170/909/9 65/801/9 -f 79/808/23 167/910/26 80/804/26 -f 78/810/29 165/920/23 79/808/23 -f 77/811/5 161/911/29 78/810/29 -f 76/814/32 162/912/5 77/811/5 -f 75/817/47 175/913/32 76/814/32 -f 74/820/34 173/914/47 75/817/47 -f 73/824/4 171/915/34 74/820/34 -f 72/825/38 168/921/4 73/922/4 -f 71/829/40 166/916/38 72/825/38 -f 70/831/10 163/917/40 71/829/40 -f 69/833/3 164/918/10 70/831/10 -f 68/834/11 176/923/3 69/833/3 -f 67/837/22 174/919/11 68/834/11 -f 198/924/10 215/925/110 199/926/40 -f 206/927/29 223/928/111 207/929/23 -f 199/926/40 216/930/112 200/931/38 -f 207/929/23 224/932/113 208/933/26 -f 200/931/38 217/934/114 201/935/4 -f 208/933/26 209/936/115 193/937/9 -f 201/938/4 218/939/116 202/940/34 -f 202/940/34 219/941/117 203/942/47 -f 203/942/47 220/943/118 204/944/32 -f 204/944/32 221/945/119 205/946/5 -f 270/947/120 193/937/9 209/936/115 -f 205/946/5 222/948/121 206/927/29 -f 245/949/9 254/950/22 246/951/22 -f 252/952/23 253/953/9 245/949/9 -f 250/954/47 259/955/5 251/956/5 -f 248/957/40 257/958/4 249/959/4 -f 246/951/22 255/960/3 247/961/3 -f 251/956/5 260/962/23 252/952/23 -f 249/963/4 258/964/47 250/954/47 -f 247/961/3 256/965/40 248/957/40 -f 269/966/120 194/967/46 193/937/9 -f 211/968/122 213/969/123 214/970/124 -f 264/971/11 197/972/3 196/973/11 -f 263/974/22 196/973/11 195/975/22 -f 262/976/46 195/975/22 194/967/46 -f 261/977/125 211/968/122 268/978/11 -f 265/979/126 268/978/11 267/980/22 -f 210/981/127 267/980/22 266/982/46 -f 210/981/127 270/947/120 209/936/115 -f 280/983/128 293/984/9 279/985/129 -f 281/986/130 294/987/46 280/983/128 -f 282/988/131 295/989/22 281/986/130 -f 283/990/132 296/991/11 282/988/131 -f 276/992/133 289/150/134 275/149/135 -f 284/993/136 297/994/3 283/990/132 -f 277/995/137 290/996/29 276/992/133 -f 285/997/138 298/998/10 284/993/136 -f 278/999/139 291/1000/23 277/995/137 -f 286/1001/140 299/1002/40 285/997/138 -f 279/985/129 292/1003/26 278/999/139 -f 287/147/141 288/1004/4 271/1005/142 -f 271/1005/142 300/1006/38 286/1001/140 -f 309/1007/22 304/481/11 303/484/22 -f 306/1008/120 302/486/46 311/488/120 -f 308/1009/11 305/714/143 304/481/11 -f 310/1010/46 303/484/22 302/486/46 -f 322/263/144 277/995/137 276/992/133 -f 277/995/137 320/265/145 278/999/139 -f 278/999/139 319/268/146 279/985/129 -f 319/272/146 280/983/128 279/985/129 -f 318/153/147 281/986/130 280/983/128 -f 281/986/130 316/562/148 282/988/131 -f 316/232/148 283/990/132 282/988/131 -f 315/235/149 284/993/136 283/990/132 -f 314/238/150 285/997/138 284/993/136 -f 312/244/151 271/1005/142 286/1001/140 -f 313/241/152 286/1001/140 285/997/138 -f 326/568/153 272/1011/153 287/147/141 -f 326/250/153 273/1012/154 272/1011/153 -f 325/254/154 274/1013/155 273/1012/154 -f 274/1013/155 323/571/156 275/1014/135 -f 323/260/156 276/992/133 275/149/135 -f 337/1015/11 330/1016/22 338/1017/22 -f 342/177/32 332/171/157 343/155/157 -f 379/1018/120 375/1019/158 378/1020/158 -f 336/1021/143 329/1022/11 337/1015/11 -f 341/174/47 335/172/32 342/177/32 -f 372/205/159 377/163/160 376/208/159 -f 346/169/23 354/186/29 345/167/29 -f 345/167/29 358/189/134 344/197/134 -f 365/202/161 347/181/26 348/183/161 -f 356/191/26 369/204/161 357/192/161 -f 364/201/162 368/194/162 355/187/23 -f 375/1019/158 330/1016/22 378/1020/158 -f 376/208/159 334/165/47 341/174/47 -f 397/1023/163 213/969/123 261/977/125 -f 220/943/118 406/1024/164 221/945/119 -f 221/945/119 407/1025/165 222/948/121 -f 407/1025/165 223/928/111 222/948/121 -f 215/925/110 401/1026/166 216/930/112 -f 214/970/124 400/1027/167 215/925/110 -f 408/1028/168 224/932/113 223/928/111 -f 265/979/126 397/1023/163 261/977/125 -f 409/1029/169 209/936/115 224/932/113 -f 217/1030/114 403/1031/170 218/939/116 -f 213/969/123 399/1032/171 214/970/124 -f 209/936/115 395/1033/172 210/981/127 -f 403/1031/170 219/941/117 218/939/116 -f 216/930/112 402/1034/173 217/934/114 -f 395/1033/172 265/979/126 210/981/127 -f 219/941/117 405/1035/174 220/943/118 -f 392/1036/175 432/1037/176 393/1038/177 -f 433/1039/178 413/1040/179 412/1041/180 -f 435/1042/181 426/1043/182 433/1039/178 -f 437/1044/183 428/1045/184 435/1042/181 -f 438/1046/185 429/1047/186 437/1044/183 -f 424/1048/187 439/1049/188 432/1037/176 -f 439/1049/188 430/1050/189 438/1046/185 -f 423/1051/190 418/1052/191 416/1053/192 -f 425/1054/193 417/1055/194 422/1056/195 -f 410/1057/196 392/1058/175 425/1054/193 -f 415/1059/197 413/1060/179 426/1061/182 -f 415/1059/197 428/1062/184 417/1055/194 -f 419/1063/198 428/1062/184 429/1064/186 -f 421/1065/199 429/1064/186 430/1066/189 -f 410/1057/196 431/1067/200 424/1068/187 -f 421/1065/199 431/1067/200 422/1056/195 -f 411/1069/201 393/1070/177 432/1071/176 -f 414/1072/202 412/1073/180 436/1074/203 -f 414/1072/202 435/1075/181 433/1076/178 -f 418/1052/191 435/1075/181 416/1053/192 -f 420/1077/204 437/1078/183 418/1052/191 -f 411/1069/201 439/1079/188 423/1051/190 -f 420/1077/204 439/1079/188 438/1080/185 -f 452/289/1 454/293/205 453/284/1 -f 451/286/2 457/1081/206 450/1082/2 -f 456/285/206 459/1083/207 457/1081/206 -f 455/288/205 460/292/208 454/293/205 -f 458/297/207 463/1084/209 459/1083/207 -f 461/291/208 464/580/210 460/292/208 -f 462/296/209 467/1085/211 463/1084/209 -f 465/295/210 468/300/212 464/580/210 -f 475/1086/213 470/304/1 471/303/1 -f 477/1087/214 474/1088/213 475/1086/213 -f 484/1089/215 497/1090/216 485/1091/216 -f 491/1092/217 492/1093/218 480/1094/218 -f 481/1095/219 494/1096/220 482/1097/220 -f 488/1098/221 501/1099/15 489/1100/15 -f 485/1091/216 498/1101/222 486/1102/222 -f 482/1097/220 495/1103/14 483/1104/14 -f 489/1100/15 502/1105/223 490/1106/223 -f 486/1102/222 499/1107/224 487/1108/224 -f 483/1104/14 496/1109/215 484/1089/215 -f 490/1106/223 503/1110/217 491/1092/217 -f 480/1111/218 493/1112/219 481/1095/219 -f 487/1108/224 500/1113/221 488/1098/221 -f 518/1114/220 507/1115/14 506/1116/220 -f 525/1117/15 514/1118/223 513/1119/15 -f 522/1120/222 511/1121/224 510/1122/222 -f 519/1123/14 508/1124/215 507/1115/14 -f 526/1125/223 515/1126/217 514/1118/223 -f 516/1127/218 505/1128/219 504/1129/218 -f 523/1130/224 512/1131/221 511/1121/224 -f 520/1132/215 509/1133/216 508/1124/215 -f 527/1134/217 504/1135/218 515/1126/217 -f 517/1136/219 506/1116/220 505/1128/219 -f 524/1137/221 513/1119/15 512/1131/221 -f 521/1138/216 510/1122/222 509/1133/216 -f 535/329/225 538/1139/225 539/320/225 -f 531/323/5 534/1140/225 535/329/225 -f 530/325/3 533/611/226 528/326/3 -f 532/324/226 537/330/226 533/611/226 -f 562/1141/222 551/1142/224 550/1143/222 -f 538/1139/225 543/610/5 539/320/225 -f 536/322/226 541/612/3 537/330/226 -f 559/1144/14 548/1145/215 547/1146/14 -f 566/1147/223 555/1148/217 554/1149/223 -f 556/1150/218 545/1151/219 544/1152/218 -f 563/1153/224 552/1154/221 551/1142/224 -f 560/1155/215 549/1156/216 548/1145/215 -f 567/1157/217 544/1158/218 555/1148/217 -f 557/1159/219 546/1160/220 545/1151/219 -f 564/1161/221 553/1162/15 552/1154/221 -f 561/1163/216 550/1143/222 549/1156/216 -f 558/1164/220 547/1146/14 546/1160/220 -f 565/1165/15 554/1149/223 553/1162/15 -f 573/1166/227 584/1167/228 572/1168/228 -f 568/1169/9 591/1170/229 579/1171/229 -f 570/1172/230 580/1173/231 569/1174/231 -f 577/1175/5 588/1176/232 576/1177/232 -f 574/1178/4 585/1179/227 573/1166/227 -f 571/1180/3 582/1181/230 570/1172/230 -f 578/1182/233 589/1183/5 577/1175/5 -f 575/1184/234 586/1185/4 574/1186/4 -f 572/1168/228 583/1187/3 571/1180/3 -f 579/1171/229 590/1188/233 578/1182/233 -f 569/1174/231 581/1189/9 568/1169/9 -f 576/1177/232 587/1190/234 575/1184/234 -f 602/1191/233 615/1192/229 603/1193/229 -f 595/1194/3 608/1195/228 596/1196/228 -f 603/1193/229 605/1197/9 592/1198/9 -f 596/1196/228 609/1199/227 597/1200/227 -f 597/1200/227 610/1201/4 598/1202/4 -f 598/1203/4 611/1204/234 599/1205/234 -f 599/1205/234 612/1206/232 600/1207/232 -f 592/1198/9 604/1208/231 593/1209/231 -f 600/1207/232 613/1210/5 601/1211/5 -f 593/1209/231 606/1212/230 594/1213/230 -f 601/1211/5 614/1214/233 602/1191/233 -f 594/1213/230 607/1215/3 595/1194/3 -f 622/1216/235 636/1217/236 623/1218/237 -f 619/1219/238 633/1220/239 620/1221/240 -f 627/1222/241 639/1223/242 640/1224/243 -f 617/1225/244 629/1226/245 630/1227/246 -f 624/1228/247 636/1217/236 637/1229/248 -f 621/1230/249 633/1220/239 634/1231/250 -f 627/1222/241 629/1226/245 616/1232/251 -f 618/1233/252 630/1227/246 631/1234/253 -f 624/1228/247 638/1235/254 625/1236/255 -f 622/1237/235 634/1231/250 635/1238/256 -f 618/1233/252 632/1239/257 619/1219/238 -f 625/1236/255 639/1223/242 626/1240/258 -f 640/1224/243 641/1241/259 629/1226/245 -f 630/1227/246 643/1242/260 631/1234/253 -f 638/1235/254 649/1243/261 650/1244/262 -f 634/1231/250 647/1245/263 635/1238/256 -f 631/1234/253 644/1246/264 632/1239/257 -f 638/1235/254 651/1247/265 639/1223/242 -f 635/1248/256 648/1249/266 636/1217/236 -f 632/1239/257 645/1250/267 633/1220/239 -f 640/1224/243 651/1247/265 652/1251/268 -f 630/1227/246 641/1241/259 642/1252/269 -f 637/1229/248 648/1249/266 649/1243/261 -f 633/1220/239 646/1253/270 634/1231/250 -f 645/1250/267 658/1254/271 646/1253/270 -f 641/1241/259 664/1255/272 653/1256/273 -f 642/1252/269 655/1257/274 643/1242/260 -f 650/1244/262 661/1258/275 662/1259/276 -f 647/1245/263 658/1254/271 659/1260/277 -f 643/1242/260 656/1261/278 644/1246/264 -f 651/1247/265 662/1259/276 663/1262/279 -f 647/1263/263 660/1264/280 648/1249/266 -f 644/1246/264 657/1265/281 645/1250/267 -f 652/1251/268 663/1262/279 664/1255/272 -f 642/1252/269 653/1256/273 654/1266/282 -f 649/1243/261 660/1264/280 661/1258/275 -f 657/1265/281 669/1267/283 658/1254/271 -f 664/1255/272 628/1268/284 653/1256/273 -f 654/1266/282 666/1269/285 655/1257/274 -f 662/1259/276 672/1270/286 673/1271/287 -f 658/1254/271 670/1272/288 659/1260/277 -f 655/1257/274 667/1273/289 656/1261/278 -f 662/1259/276 674/1274/290 663/1262/279 -f 659/1275/277 671/1276/291 660/1264/280 -f 656/1261/278 668/1277/292 657/1265/281 -f 663/1262/279 675/1278/293 664/1255/272 -f 654/1266/282 628/1268/284 665/1279/294 -f 661/1258/275 671/1276/291 672/1270/286 -f 672/1270/286 684/1280/295 685/1281/296 -f 668/1277/292 682/1282/297 669/1267/283 -f 675/1278/293 677/1283/298 628/1268/284 -f 665/1279/294 679/1284/299 666/1269/285 -f 673/1271/287 685/1281/296 686/1285/233 -f 670/1272/288 682/1282/297 683/1286/300 -f 667/1273/289 679/1284/299 680/1287/228 -f 673/1271/287 687/1288/301 674/1274/290 -f 670/1289/288 684/1280/295 671/1276/291 -f 668/1277/292 680/1287/228 681/1290/302 -f 675/1278/293 687/1288/301 688/1291/303 -f 665/1279/294 677/1283/298 678/1292/304 -f 678/1292/304 689/1293/305 690/1294/306 -f 685/1281/296 696/1295/307 697/1296/308 -f 681/1290/302 694/1297/309 682/1282/297 -f 688/1291/303 689/1293/305 677/1283/298 -f 679/1284/299 690/1294/306 691/1298/310 -f 685/1281/296 698/1299/229 686/1285/233 -f 683/1286/300 694/1297/309 695/1300/311 -f 680/1287/228 691/1298/310 692/1301/227 -f 687/1288/301 698/1299/229 699/1302/312 -f 683/1303/300 696/1295/307 684/1280/295 -f 680/1287/228 693/1304/313 681/1290/302 -f 688/1291/303 699/1302/312 700/1305/314 -f 699/1302/312 712/1306/315 700/1305/314 -f 690/1294/306 701/1307/316 702/1308/317 -f 697/1296/308 708/1309/318 709/1310/319 -f 693/1304/313 706/1311/320 694/1297/309 -f 700/1305/314 701/1307/316 689/1293/305 -f 690/1294/306 703/1312/321 691/1298/310 -f 698/1299/229 709/1310/319 710/1313/9 -f 695/1300/311 706/1311/320 707/1314/322 -f 692/1301/227 703/1312/321 704/1315/4 -f 699/1302/312 710/1313/9 711/1316/323 -f 695/1317/311 708/1309/318 696/1295/307 -f 692/1301/227 705/1318/324 693/1304/313 -f 732/1319/325 718/1320/235 719/1321/249 -f 729/1322/248 715/1323/255 716/1324/247 -f 723/1325/244 735/1326/253 722/1327/252 -f 713/1328/241 725/1329/245 676/1330/251 -f 733/1331/239 719/1321/249 720/1332/240 -f 730/1333/326 716/1324/247 717/1334/237 -f 725/1329/245 723/1325/244 676/1330/251 -f 727/1335/242 713/1328/241 714/1336/258 -f 721/1337/238 733/1331/239 720/1332/240 -f 718/1338/235 730/1333/326 717/1334/237 -f 715/1323/255 727/1335/242 714/1336/258 -f 722/1327/252 734/1339/257 721/1337/238 -f 725/1329/245 748/1340/269 736/1341/246 -f 739/1342/265 726/1343/243 727/1335/242 -f 746/1344/264 733/1331/239 734/1339/257 -f 731/1345/256 742/1346/327 730/1333/326 -f 728/1347/254 739/1342/265 727/1335/242 -f 747/1348/260 734/1339/257 735/1326/253 -f 744/1349/270 731/1350/256 732/1319/325 -f 741/1351/261 728/1347/254 729/1322/248 -f 736/1341/246 747/1348/260 735/1326/253 -f 738/1352/268 725/1329/245 726/1343/243 -f 733/1331/239 744/1349/270 732/1319/325 -f 742/1346/327 729/1322/248 730/1333/326 -f 754/1353/280 741/1351/261 742/1346/327 -f 749/1354/273 748/1340/269 737/1355/259 -f 751/1356/279 738/1352/268 739/1342/265 -f 746/1344/264 757/1357/281 745/1358/267 -f 743/1359/263 754/1353/280 742/1346/327 -f 752/1360/276 739/1342/265 740/1361/262 -f 747/1348/260 758/1362/278 746/1344/264 -f 756/1363/271 743/1364/263 744/1349/270 -f 753/1365/275 740/1361/262 741/1351/261 -f 748/1340/269 759/1366/274 747/1348/260 -f 738/1352/268 749/1354/273 737/1355/259 -f 745/1358/267 756/1363/271 744/1349/270 -f 765/1367/328 753/1365/275 754/1353/280 -f 724/1368/329 760/1369/282 749/1354/273 -f 762/1370/330 750/1371/272 751/1356/279 -f 769/1372/331 757/1357/281 758/1362/278 -f 755/1373/277 765/1367/328 754/1353/280 -f 763/1374/332 751/1356/279 752/1360/276 -f 770/1375/333 758/1362/278 759/1366/274 -f 767/1376/334 755/1377/277 756/1363/271 -f 764/1378/335 752/1360/276 753/1365/275 -f 760/1369/282 770/1375/333 759/1366/274 -f 761/1379/336 749/1354/273 750/1371/272 -f 757/1357/281 767/1376/334 756/1363/271 -f 768/1380/337 779/1381/338 767/1376/334 -f 777/1382/339 764/1378/335 765/1367/328 -f 772/1383/340 771/1384/341 724/1368/329 -f 774/1385/342 761/1379/336 762/1370/330 -f 769/1372/331 780/1386/343 768/1380/337 -f 766/1387/344 777/1382/339 765/1367/328 -f 763/1374/332 774/1385/342 762/1370/330 -f 782/1388/345 769/1372/331 770/1375/333 -f 779/1381/338 766/1389/344 767/1376/334 -f 764/1378/335 775/1390/232 763/1374/332 -f 771/1384/341 782/1388/345 770/1375/333 -f 761/1379/336 772/1383/340 724/1368/329 -f 773/1391/346 784/1392/347 772/1383/340 -f 780/1386/343 791/1393/348 779/1381/338 -f 789/1394/349 776/1395/350 777/1382/339 -f 784/1392/347 783/1396/351 772/1383/340 -f 786/1397/352 773/1391/346 774/1385/342 -f 793/1398/231 780/1386/343 781/1399/230 -f 790/1400/353 777/1382/339 778/1401/354 -f 775/1390/232 786/1397/352 774/1385/342 -f 782/1388/345 793/1398/231 781/1399/230 -f 791/1393/348 778/1402/354 779/1381/338 -f 788/1403/355 775/1390/232 776/1395/350 -f 783/1396/351 794/1404/356 782/1388/345 -f 711/1405/323 795/1406/357 712/1407/315 -f 710/1408/9 794/1404/356 711/1405/323 -f 792/1409/358 710/1408/9 709/1410/319 -f 791/1393/348 709/1410/319 708/1411/318 -f 707/1314/322 791/1393/348 708/1411/318 -f 789/1394/349 707/1412/322 706/1413/320 -f 705/1414/324 789/1394/349 706/1413/320 -f 787/1415/234 705/1414/324 704/1416/4 -f 703/1417/321 787/1415/234 704/1416/4 -f 785/1418/359 703/1417/321 702/1419/317 -f 701/1307/316 785/1418/359 702/1419/317 -f 795/1406/357 701/1307/316 712/1407/315 -f 714/1336/258 811/1420/5 715/1323/255 -f 722/1327/252 819/1421/231 723/1325/244 -f 622/1237/235 801/1422/227 621/1230/249 -f 715/1323/255 812/1423/232 716/1324/247 -f 723/1325/244 808/1424/9 676/1330/251 -f 623/1218/237 802/1425/4 622/1216/235 -f 716/1324/247 813/1426/234 717/1334/237 -f 624/1228/247 803/1427/234 623/1218/237 -f 717/1334/237 814/1428/4 718/1338/235 -f 617/1225/244 796/1429/9 616/1232/251 -f 625/1236/255 804/1430/232 624/1228/247 -f 718/1320/235 815/1431/227 719/1321/249 -f 618/1233/252 797/1432/231 617/1225/244 -f 626/1240/258 805/1433/5 625/1236/255 -f 719/1321/249 816/1434/228 720/1332/240 -f 619/1219/238 798/1435/230 618/1233/252 -f 676/1330/251 809/1436/229 713/1328/241 -f 627/1222/241 806/1437/233 626/1240/258 -f 720/1332/240 817/1438/3 721/1337/238 -f 620/1221/240 799/1439/3 619/1219/238 -f 713/1328/241 810/1440/233 714/1336/258 -f 616/1232/251 807/1441/229 627/1222/241 -f 721/1337/238 818/1442/230 722/1327/252 -f 621/1230/249 800/1443/228 620/1221/240 -f 821/1444/360 834/1445/361 833/1446/362 -f 828/1447/363 841/1448/364 840/1449/365 -f 826/1450/366 837/1451/367 825/1452/368 -f 823/1453/3 834/1445/361 822/1454/369 -f 829/1455/5 842/1456/370 841/1448/364 -f 826/1457/366 839/1458/371 838/1459/372 -f 824/1460/373 835/1461/374 823/1453/3 -f 831/1462/375 842/1456/370 830/1463/376 -f 820/1464/377 833/1446/362 832/1465/378 -f 828/1447/363 839/1458/371 827/1466/379 -f 824/1460/373 837/1451/367 836/1467/380 -f 820/1464/377 843/1468/381 831/1462/375 -f 838/1459/372 851/1469/382 850/1470/383 -f 836/1467/380 847/1471/384 835/1461/374 -f 842/1456/370 855/1472/385 854/1473/386 -f 833/1446/362 844/1474/387 832/1465/378 -f 840/1449/365 851/1469/382 839/1458/371 -f 837/1451/367 848/1475/388 836/1467/380 -f 843/1468/381 844/1474/387 855/1472/385 -f 833/1446/362 846/1476/389 845/1477/390 -f 841/1448/364 852/1478/391 840/1449/365 -f 838/1479/372 849/1480/392 837/1451/367 -f 835/1461/374 846/1476/389 834/1445/361 -f 841/1448/364 854/1473/386 853/1481/393 -f 851/1469/382 862/1482/394 850/1470/383 -f 847/1471/384 860/1483/395 859/1484/396 -f 855/1472/385 866/1485/397 854/1473/386 -f 845/1477/390 856/1486/398 844/1474/387 -f 852/1478/391 863/1487/399 851/1469/382 -f 849/1480/392 860/1483/395 848/1475/388 -f 855/1472/385 856/1486/398 867/1488/400 -f 845/1477/390 858/1489/401 857/1490/402 -f 852/1478/391 865/1491/403 864/1492/404 -f 849/1480/392 862/1493/394 861/1494/405 -f 847/1471/384 858/1489/401 846/1476/389 -f 854/1473/386 865/1491/403 853/1481/393 -f 860/1495/395 864/1496/404 856/1497/398 -f 896/402/4 919/423/227 895/400/227 -f 910/1498/230 935/410/3 911/1499/3 -f 903/1500/234 928/417/232 904/1501/232 -f 897/404/234 920/429/4 896/405/4 -f 911/1499/3 936/409/228 912/1502/228 -f 904/1501/232 929/422/5 905/1503/5 -f 898/407/232 921/427/234 897/404/234 -f 912/1502/228 937/414/227 913/1504/227 -f 891/394/231 915/416/9 890/393/9 -f 905/1503/5 930/421/233 906/1505/233 -f 899/388/5 922/432/232 898/407/232 -f 913/1504/227 927/413/4 902/1506/4 -f 892/396/230 914/415/231 891/394/231 -f 906/1505/233 931/426/229 907/1507/229 -f 900/390/233 923/408/5 899/388/5 -f 893/397/3 916/420/230 892/396/230 -f 907/1507/229 932/425/9 908/1508/9 -f 901/391/229 924/412/233 900/390/233 -f 894/399/228 917/419/3 893/397/3 -f 908/1509/9 933/431/231 909/1510/231 -f 890/393/9 925/411/229 901/391/229 -f 895/400/227 918/424/228 894/399/228 -f 909/1510/231 934/430/230 910/1498/230 -f 902/1506/4 926/418/234 903/1500/234 -f 970/1511/3 977/1512/22 969/1513/22 -f 975/1514/23 982/1515/5 974/1516/5 -f 973/1517/47 980/1518/4 972/1519/4 -f 971/1520/40 978/1521/3 970/1511/3 -f 969/1513/22 976/1522/9 968/1523/9 -f 968/1523/9 983/1524/23 975/1514/23 -f 974/1516/5 981/1525/47 973/1517/47 -f 972/1526/4 979/1527/40 971/1520/40 -f 1000/1528/227 1011/1529/228 999/1530/228 -f 995/1531/9 1018/1532/229 1006/1533/229 -f 997/1534/230 1007/1535/231 996/1536/231 -f 1004/1537/5 1015/1538/232 1003/1539/232 -f 1001/1540/4 1012/1541/227 1000/1528/227 -f 998/1542/3 1009/1543/230 997/1534/230 -f 1005/1544/233 1016/1545/5 1004/1537/5 -f 1002/1546/234 1013/1547/4 1001/1548/4 -f 999/1530/228 1010/1549/3 998/1542/3 -f 1006/1533/229 1017/1550/233 1005/1544/233 -f 996/1536/231 1008/1551/9 995/1531/9 -f 1003/1539/232 1014/1552/234 1002/1546/234 -f 1029/1553/233 1042/1554/229 1030/1555/229 -f 1022/1556/3 1035/1557/228 1023/1558/228 -f 1030/1555/229 1032/1559/9 1019/1560/9 -f 1023/1558/228 1036/1561/227 1024/1562/227 -f 1024/1562/227 1037/1563/4 1025/1564/4 -f 1025/1565/4 1038/1566/234 1026/1567/234 -f 1026/1567/234 1039/1568/232 1027/1569/232 -f 1019/1560/9 1031/1570/231 1020/1571/231 -f 1027/1569/232 1040/1572/5 1028/1573/5 -f 1020/1571/231 1033/1574/230 1021/1575/230 -f 1028/1573/5 1041/1576/233 1029/1553/233 -f 1021/1575/230 1034/1577/3 1022/1556/3 -f 2/7/9 4/9/26 3/766/24 -f 4/9/26 6/11/23 5/768/27 -f 6/11/23 8/13/29 7/769/28 -f 8/13/29 10/15/5 9/770/30 -f 10/15/5 12/17/32 11/771/31 -f 12/17/32 14/19/47 13/772/33 -f 13/772/33 14/19/47 16/20/34 -f 16/20/34 18/22/4 17/774/36 -f 18/504/4 20/24/38 19/775/37 -f 20/24/38 22/27/40 21/777/39 -f 22/27/40 24/29/10 23/778/41 -f 24/29/10 26/31/3 25/779/42 -f 26/31/3 28/33/11 27/780/43 -f 28/33/11 30/1/22 29/781/44 -f 30/1/22 32/5/46 31/782/45 -f 31/782/45 32/5/46 2/7/9 -f 43/18/22 59/785/22 58/783/46 -f 36/2/32 52/786/32 51/784/47 -f 44/16/11 60/787/11 59/785/22 -f 37/32/5 53/788/5 52/786/32 -f 45/14/3 61/789/3 60/787/11 -f 38/30/29 54/790/29 53/788/5 -f 46/12/10 62/791/10 61/789/3 -f 39/28/23 55/792/23 54/790/29 -f 47/10/40 63/793/40 62/791/10 -f 40/26/26 56/794/26 55/792/23 -f 48/8/38 64/796/38 63/793/40 -f 41/25/9 57/1578/9 56/794/26 -f 34/4/34 50/798/34 49/795/4 -f 33/6/4 49/795/4 64/796/38 -f 42/21/46 58/783/46 57/797/9 -f 35/3/47 51/784/47 50/798/34 -f 66/799/48 82/1579/79 81/800/49 -f 81/800/49 82/1579/79 31/802/45 -f 80/804/51 65/801/50 81/805/49 -f 80/804/51 96/844/52 95/807/53 -f 79/808/54 95/1580/53 94/809/55 -f 77/811/57 78/810/56 94/812/55 -f 76/814/59 77/811/57 93/815/58 -f 75/817/61 76/814/59 92/818/60 -f 74/820/63 75/817/61 91/821/62 -f 74/820/63 90/1581/64 89/823/65 -f 72/825/67 73/922/66 89/826/65 -f 72/825/67 88/861/68 87/828/69 -f 71/829/70 87/864/69 86/830/71 -f 70/831/72 86/1582/71 85/832/73 -f 68/834/75 69/833/74 85/835/73 -f 67/837/77 68/834/75 84/838/76 -f 67/837/77 83/1583/78 82/840/79 -f 3/841/24 96/806/52 81/805/49 -f 5/843/27 95/807/53 96/844/52 -f 94/809/55 95/1580/53 5/846/27 -f 93/813/58 94/812/55 7/848/28 -f 11/850/31 92/816/60 93/815/58 -f 13/852/33 91/819/62 92/818/60 -f 90/822/64 91/821/62 13/854/33 -f 89/823/65 90/1581/64 15/856/35 -f 19/858/37 88/827/68 89/826/65 -f 21/860/39 87/828/69 88/861/68 -f 23/863/41 86/830/71 87/864/69 -f 85/832/73 86/1582/71 23/866/41 -f 84/836/76 85/835/73 25/868/42 -f 83/839/78 84/838/76 27/870/43 -f 82/840/79 83/1583/78 29/872/44 -f 129/34/9 112/93/9 111/95/46 -f 144/40/26 97/91/26 112/93/9 -f 137/64/4 104/78/4 103/80/34 -f 130/63/46 111/95/46 110/68/22 -f 138/62/34 103/80/34 102/82/47 -f 131/60/22 110/68/22 109/67/11 -f 139/58/47 102/82/47 101/84/32 -f 132/56/11 109/67/11 108/70/3 -f 140/54/32 101/84/32 100/86/5 -f 133/52/3 108/70/3 107/72/10 -f 141/50/5 100/86/5 99/87/29 -f 134/46/10 107/72/10 106/73/40 -f 142/48/29 99/87/29 98/89/23 -f 135/42/40 106/73/40 105/75/38 -f 143/44/23 98/89/23 97/91/26 -f 136/39/38 105/75/38 104/77/4 -f 154/874/9 151/889/26 119/43/26 -f 153/875/46 154/874/9 122/36/9 -f 156/876/22 153/875/46 121/35/46 -f 158/877/11 156/876/22 124/59/22 -f 160/878/3 158/877/11 126/55/11 -f 148/879/10 160/878/3 128/51/3 -f 147/880/40 148/879/10 116/45/10 -f 150/881/38 147/880/40 115/41/40 -f 152/882/4 150/881/38 118/38/38 -f 155/883/34 152/1584/4 120/65/4 -f 157/884/47 155/883/34 123/61/34 -f 159/885/32 157/884/47 125/57/47 -f 146/886/5 159/885/32 127/53/32 -f 145/887/29 146/886/5 114/49/5 -f 149/888/23 145/887/29 113/47/29 -f 151/889/26 149/888/23 117/506/23 -f 192/890/80 154/874/80 153/875/81 -f 177/892/82 151/889/82 154/874/80 -f 178/893/83 149/888/83 151/889/82 -f 178/893/83 179/894/84 145/887/84 -f 179/894/84 180/895/6 146/886/6 -f 180/895/6 181/896/85 159/885/85 -f 181/896/85 182/897/86 157/884/86 -f 182/897/86 183/899/87 155/883/87 -f 184/898/88 152/1584/88 155/883/87 -f 184/900/88 185/901/89 150/881/89 -f 185/901/89 186/902/90 147/880/90 -f 186/902/90 187/904/91 148/879/91 -f 188/903/7 160/878/7 148/879/91 -f 188/903/7 189/905/92 158/877/92 -f 189/905/92 190/906/93 156/876/93 -f 190/906/93 191/891/81 153/875/81 -f 172/907/94 169/908/95 191/891/95 -f 169/908/95 170/909/96 192/890/96 -f 170/909/96 167/910/97 177/892/97 -f 167/910/97 165/920/98 178/893/98 -f 178/893/98 165/920/98 161/911/99 -f 179/894/99 161/911/99 162/912/100 -f 180/895/100 162/912/100 175/913/101 -f 181/896/101 175/913/101 173/914/102 -f 173/914/102 171/915/103 183/899/103 -f 171/915/103 168/1585/104 184/898/104 -f 184/900/104 168/921/104 166/916/105 -f 185/901/105 166/916/105 163/917/106 -f 186/902/106 163/917/106 164/918/107 -f 164/918/107 176/923/108 188/903/108 -f 188/903/108 176/923/108 174/919/109 -f 189/905/109 174/919/109 172/907/94 -f 66/799/46 169/908/46 172/907/22 -f 65/801/9 170/909/9 169/908/46 -f 80/804/26 167/910/26 170/909/9 -f 79/808/23 165/920/23 167/910/26 -f 78/810/29 161/911/29 165/920/23 -f 77/811/5 162/912/5 161/911/29 -f 76/814/32 175/913/32 162/912/5 -f 75/817/47 173/914/47 175/913/32 -f 74/820/34 171/915/34 173/914/47 -f 73/824/4 168/1585/4 171/915/34 -f 72/825/38 166/916/38 168/921/4 -f 71/829/40 163/917/40 166/916/38 -f 70/831/10 164/918/10 163/917/40 -f 69/833/3 176/923/3 164/918/10 -f 68/834/11 174/919/11 176/923/3 -f 67/837/22 172/907/22 174/919/11 -f 198/924/10 214/970/124 215/925/110 -f 206/927/29 222/948/121 223/928/111 -f 199/926/40 215/925/110 216/930/112 -f 207/929/23 223/928/111 224/932/113 -f 200/931/38 216/930/112 217/934/114 -f 208/933/26 224/932/113 209/936/115 -f 201/938/4 217/1030/114 218/939/116 -f 202/940/34 218/939/116 219/941/117 -f 203/942/47 219/941/117 220/943/118 -f 204/944/32 220/943/118 221/945/119 -f 270/947/120 269/966/120 193/937/9 -f 205/946/5 221/945/119 222/948/121 -f 245/949/9 253/953/9 254/950/22 -f 252/952/23 260/962/23 253/953/9 -f 250/954/47 258/964/47 259/955/5 -f 248/957/40 256/965/40 257/958/4 -f 246/951/22 254/950/22 255/960/3 -f 251/956/5 259/955/5 260/962/23 -f 249/963/4 257/1586/4 258/964/47 -f 247/961/3 255/960/3 256/965/40 -f 269/966/120 262/976/46 194/967/46 -f 214/970/124 198/924/10 211/968/122 -f 198/924/10 197/972/3 212/1587/122 -f 212/1587/122 211/968/122 198/924/10 -f 264/971/11 212/1587/122 197/972/3 -f 263/974/22 264/971/11 196/973/11 -f 262/976/46 263/974/22 195/975/22 -f 261/977/125 213/969/123 211/968/122 -f 265/979/126 261/977/125 268/978/11 -f 210/981/127 265/979/126 267/980/22 -f 210/981/127 266/982/46 270/947/120 -f 280/983/128 294/987/46 293/984/9 -f 281/986/130 295/989/22 294/987/46 -f 282/988/131 296/991/11 295/989/22 -f 283/990/132 297/994/3 296/991/11 -f 276/992/133 290/996/29 289/150/134 -f 284/993/136 298/998/10 297/994/3 -f 277/995/137 291/1000/23 290/996/29 -f 285/997/138 299/1002/40 298/998/10 -f 278/999/139 292/1003/26 291/1000/23 -f 286/1001/140 300/1006/38 299/1002/40 -f 279/985/129 293/984/9 292/1003/26 -f 287/147/141 301/532/160 288/1004/4 -f 271/1005/142 288/1004/4 300/1006/38 -f 309/1007/22 308/1009/11 304/481/11 -f 306/1008/120 310/1010/46 302/486/46 -f 308/1009/11 307/1588/143 305/714/143 -f 310/1010/46 309/1007/22 303/484/22 -f 322/263/144 321/262/406 277/995/137 -f 277/995/137 321/266/406 320/265/145 -f 278/999/139 320/269/145 319/268/146 -f 319/272/146 318/271/147 280/983/128 -f 318/153/147 317/536/407 281/986/130 -f 281/986/130 317/229/407 316/562/148 -f 316/232/148 315/563/149 283/990/132 -f 315/235/149 314/564/150 284/993/136 -f 314/238/150 313/565/152 285/997/138 -f 312/244/151 327/567/408 271/1005/142 -f 313/241/152 312/566/151 286/1001/140 -f 287/147/141 271/1005/142 327/247/408 -f 327/247/408 326/568/153 287/147/141 -f 326/250/153 325/569/154 273/1012/154 -f 325/254/154 324/253/155 274/1013/155 -f 274/1013/155 324/256/155 323/571/156 -f 323/260/156 322/259/144 276/992/133 -f 337/1015/11 329/1022/11 330/1016/22 -f 342/177/32 335/172/32 332/171/157 -f 379/1018/120 374/1589/120 375/1019/158 -f 336/1021/143 328/1590/143 329/1022/11 -f 341/174/47 334/165/47 335/172/32 -f 372/205/159 373/161/160 377/163/160 -f 346/169/23 355/187/23 354/186/29 -f 345/167/29 354/186/29 358/189/134 -f 365/202/161 364/201/162 347/181/26 -f 356/191/26 368/194/162 369/204/161 -f 346/169/23 347/181/26 364/201/162 -f 368/194/162 356/191/26 355/187/23 -f 346/169/23 364/201/162 355/187/23 -f 375/1019/158 339/1591/409 338/1017/22 -f 338/1017/22 330/1016/22 375/1019/158 -f 330/1016/22 331/1592/409 378/1020/158 -f 341/174/47 340/159/410 372/205/159 -f 376/208/159 333/166/410 334/165/47 -f 341/174/47 372/205/159 376/208/159 -f 397/1023/163 398/1593/411 213/969/123 -f 220/943/118 405/1035/174 406/1024/164 -f 221/945/119 406/1024/164 407/1025/165 -f 407/1025/165 408/1028/168 223/928/111 -f 215/925/110 400/1027/167 401/1026/166 -f 214/970/124 399/1032/171 400/1027/167 -f 408/1028/168 409/1029/169 224/932/113 -f 265/979/126 396/1594/412 397/1023/163 -f 409/1029/169 394/1595/413 209/936/115 -f 217/1030/114 402/1596/173 403/1031/170 -f 213/969/123 398/1593/411 399/1032/171 -f 209/936/115 394/1595/413 395/1033/172 -f 403/1031/170 404/1597/414 219/941/117 -f 216/930/112 401/1026/166 402/1034/173 -f 395/1033/172 396/1594/412 265/979/126 -f 219/941/117 404/1597/414 405/1035/174 -f 392/1036/175 424/1048/187 432/1037/176 -f 433/1039/178 426/1043/182 413/1040/179 -f 435/1042/181 428/1045/184 426/1043/182 -f 437/1044/183 429/1047/186 428/1045/184 -f 438/1046/185 430/1050/189 429/1047/186 -f 424/1048/187 431/1598/200 439/1049/188 -f 439/1049/188 431/1598/200 430/1050/189 -f 436/1074/203 434/1599/415 416/1053/192 -f 434/1599/415 411/1069/201 423/1051/190 -f 423/1051/190 420/1077/204 418/1052/191 -f 434/1599/415 423/1051/190 416/1053/192 -f 416/1053/192 414/1072/202 436/1074/203 -f 422/1056/195 410/1057/196 425/1054/193 -f 425/1054/193 427/1600/416 417/1055/194 -f 427/1600/416 415/1059/197 417/1055/194 -f 417/1055/194 419/1063/198 422/1056/195 -f 419/1063/198 421/1065/199 422/1056/195 -f 410/1057/196 424/1068/187 392/1058/175 -f 415/1059/197 427/1600/416 413/1060/179 -f 415/1059/197 426/1061/182 428/1062/184 -f 419/1063/198 417/1055/194 428/1062/184 -f 421/1065/199 419/1063/198 429/1064/186 -f 410/1057/196 422/1056/195 431/1067/200 -f 421/1065/199 430/1066/189 431/1067/200 -f 411/1069/201 434/1599/415 393/1070/177 -f 414/1072/202 433/1076/178 412/1073/180 -f 414/1072/202 416/1053/192 435/1075/181 -f 418/1052/191 437/1078/183 435/1075/181 -f 420/1077/204 438/1080/185 437/1078/183 -f 411/1069/201 432/1071/176 439/1079/188 -f 420/1077/204 423/1051/190 439/1079/188 -f 452/289/1 455/288/205 454/293/205 -f 451/286/2 456/285/206 457/1081/206 -f 456/285/206 458/297/207 459/1083/207 -f 455/288/205 461/291/208 460/292/208 -f 458/297/207 462/296/209 463/1084/209 -f 461/291/208 465/295/210 464/580/210 -f 462/296/209 466/301/211 467/1085/211 -f 465/295/210 469/299/212 468/300/212 -f 475/1086/213 474/1088/213 470/304/1 -f 477/1087/214 476/1601/214 474/1088/213 -f 484/1089/215 496/1109/215 497/1090/216 -f 491/1092/217 503/1110/217 492/1093/218 -f 481/1095/219 493/1112/219 494/1096/220 -f 488/1098/221 500/1113/221 501/1099/15 -f 485/1091/216 497/1090/216 498/1101/222 -f 482/1097/220 494/1096/220 495/1103/14 -f 489/1100/15 501/1099/15 502/1105/223 -f 486/1102/222 498/1101/222 499/1107/224 -f 483/1104/14 495/1103/14 496/1109/215 -f 490/1106/223 502/1105/223 503/1110/217 -f 480/1111/218 492/1602/218 493/1112/219 -f 487/1108/224 499/1107/224 500/1113/221 -f 518/1114/220 519/1123/14 507/1115/14 -f 525/1117/15 526/1125/223 514/1118/223 -f 522/1120/222 523/1130/224 511/1121/224 -f 519/1123/14 520/1132/215 508/1124/215 -f 526/1125/223 527/1134/217 515/1126/217 -f 516/1127/218 517/1136/219 505/1128/219 -f 523/1130/224 524/1137/221 512/1131/221 -f 520/1132/215 521/1138/216 509/1133/216 -f 527/1134/217 516/1603/218 504/1135/218 -f 517/1136/219 518/1114/220 506/1116/220 -f 524/1137/221 525/1117/15 513/1119/15 -f 521/1138/216 522/1120/222 510/1122/222 -f 535/329/225 534/1140/225 538/1139/225 -f 531/323/5 529/1604/5 534/1140/225 -f 530/325/3 532/324/226 533/611/226 -f 532/324/226 536/322/226 537/330/226 -f 562/1141/222 563/1153/224 551/1142/224 -f 538/1139/225 542/1605/5 543/610/5 -f 536/322/226 540/321/3 541/612/3 -f 559/1144/14 560/1155/215 548/1145/215 -f 566/1147/223 567/1157/217 555/1148/217 -f 556/1150/218 557/1159/219 545/1151/219 -f 563/1153/224 564/1161/221 552/1154/221 -f 560/1155/215 561/1163/216 549/1156/216 -f 567/1157/217 556/1606/218 544/1158/218 -f 557/1159/219 558/1164/220 546/1160/220 -f 564/1161/221 565/1165/15 553/1162/15 -f 561/1163/216 562/1141/222 550/1143/222 -f 558/1164/220 559/1144/14 547/1146/14 -f 565/1165/15 566/1147/223 554/1149/223 -f 573/1166/227 585/1179/227 584/1167/228 -f 568/1169/9 581/1189/9 591/1170/229 -f 570/1172/230 582/1181/230 580/1173/231 -f 577/1175/5 589/1183/5 588/1176/232 -f 574/1178/4 586/1607/4 585/1179/227 -f 571/1180/3 583/1187/3 582/1181/230 -f 578/1182/233 590/1188/233 589/1183/5 -f 575/1184/234 587/1190/234 586/1185/4 -f 572/1168/228 584/1167/228 583/1187/3 -f 579/1171/229 591/1170/229 590/1188/233 -f 569/1174/231 580/1173/231 581/1189/9 -f 576/1177/232 588/1176/232 587/1190/234 -f 602/1191/233 614/1214/233 615/1192/229 -f 595/1194/3 607/1215/3 608/1195/228 -f 603/1193/229 615/1192/229 605/1197/9 -f 596/1196/228 608/1195/228 609/1199/227 -f 597/1200/227 609/1199/227 610/1201/4 -f 598/1203/4 610/1608/4 611/1204/234 -f 599/1205/234 611/1204/234 612/1206/232 -f 592/1198/9 605/1197/9 604/1208/231 -f 600/1207/232 612/1206/232 613/1210/5 -f 593/1209/231 604/1208/231 606/1212/230 -f 601/1211/5 613/1210/5 614/1214/233 -f 594/1213/230 606/1212/230 607/1215/3 -f 622/1216/235 635/1248/256 636/1217/236 -f 619/1219/238 632/1239/257 633/1220/239 -f 627/1222/241 626/1240/258 639/1223/242 -f 617/1225/244 616/1232/251 629/1226/245 -f 624/1228/247 623/1218/237 636/1217/236 -f 621/1230/249 620/1221/240 633/1220/239 -f 627/1222/241 640/1224/243 629/1226/245 -f 618/1233/252 617/1225/244 630/1227/246 -f 624/1228/247 637/1229/248 638/1235/254 -f 622/1237/235 621/1230/249 634/1231/250 -f 618/1233/252 631/1234/253 632/1239/257 -f 625/1236/255 638/1235/254 639/1223/242 -f 640/1224/243 652/1251/268 641/1241/259 -f 630/1227/246 642/1252/269 643/1242/260 -f 638/1235/254 637/1229/248 649/1243/261 -f 634/1231/250 646/1253/270 647/1245/263 -f 631/1234/253 643/1242/260 644/1246/264 -f 638/1235/254 650/1244/262 651/1247/265 -f 635/1248/256 647/1263/263 648/1249/266 -f 632/1239/257 644/1246/264 645/1250/267 -f 640/1224/243 639/1223/242 651/1247/265 -f 630/1227/246 629/1226/245 641/1241/259 -f 637/1229/248 636/1217/236 648/1249/266 -f 633/1220/239 645/1250/267 646/1253/270 -f 645/1250/267 657/1265/281 658/1254/271 -f 641/1241/259 652/1251/268 664/1255/272 -f 642/1252/269 654/1266/282 655/1257/274 -f 650/1244/262 649/1243/261 661/1258/275 -f 647/1245/263 646/1253/270 658/1254/271 -f 643/1242/260 655/1257/274 656/1261/278 -f 651/1247/265 650/1244/262 662/1259/276 -f 647/1263/263 659/1275/277 660/1264/280 -f 644/1246/264 656/1261/278 657/1265/281 -f 652/1251/268 651/1247/265 663/1262/279 -f 642/1252/269 641/1241/259 653/1256/273 -f 649/1243/261 648/1249/266 660/1264/280 -f 657/1265/281 668/1277/292 669/1267/283 -f 664/1255/272 675/1278/293 628/1268/284 -f 654/1266/282 665/1279/294 666/1269/285 -f 662/1259/276 661/1258/275 672/1270/286 -f 658/1254/271 669/1267/283 670/1272/288 -f 655/1257/274 666/1269/285 667/1273/289 -f 662/1259/276 673/1271/287 674/1274/290 -f 659/1275/277 670/1289/288 671/1276/291 -f 656/1261/278 667/1273/289 668/1277/292 -f 663/1262/279 674/1274/290 675/1278/293 -f 654/1266/282 653/1256/273 628/1268/284 -f 661/1258/275 660/1264/280 671/1276/291 -f 672/1270/286 671/1276/291 684/1280/295 -f 668/1277/292 681/1290/302 682/1282/297 -f 675/1278/293 688/1291/303 677/1283/298 -f 665/1279/294 678/1292/304 679/1284/299 -f 673/1271/287 672/1270/286 685/1281/296 -f 670/1272/288 669/1267/283 682/1282/297 -f 667/1273/289 666/1269/285 679/1284/299 -f 673/1271/287 686/1285/233 687/1288/301 -f 670/1289/288 683/1303/300 684/1280/295 -f 668/1277/292 667/1273/289 680/1287/228 -f 675/1278/293 674/1274/290 687/1288/301 -f 665/1279/294 628/1268/284 677/1283/298 -f 678/1292/304 677/1283/298 689/1293/305 -f 685/1281/296 684/1280/295 696/1295/307 -f 681/1290/302 693/1304/313 694/1297/309 -f 688/1291/303 700/1305/314 689/1293/305 -f 679/1284/299 678/1292/304 690/1294/306 -f 685/1281/296 697/1296/308 698/1299/229 -f 683/1286/300 682/1282/297 694/1297/309 -f 680/1287/228 679/1284/299 691/1298/310 -f 687/1288/301 686/1285/233 698/1299/229 -f 683/1303/300 695/1317/311 696/1295/307 -f 680/1287/228 692/1301/227 693/1304/313 -f 688/1291/303 687/1288/301 699/1302/312 -f 699/1302/312 711/1316/323 712/1306/315 -f 690/1294/306 689/1293/305 701/1307/316 -f 697/1296/308 696/1295/307 708/1309/318 -f 693/1304/313 705/1318/324 706/1311/320 -f 700/1305/314 712/1306/315 701/1307/316 -f 690/1294/306 702/1308/317 703/1312/321 -f 698/1299/229 697/1296/308 709/1310/319 -f 695/1300/311 694/1297/309 706/1311/320 -f 692/1301/227 691/1298/310 703/1312/321 -f 699/1302/312 698/1299/229 710/1313/9 -f 695/1317/311 707/1412/322 708/1309/318 -f 692/1301/227 704/1315/4 705/1318/324 -f 732/1319/325 731/1350/256 718/1320/235 -f 729/1322/248 728/1347/254 715/1323/255 -f 723/1325/244 736/1341/246 735/1326/253 -f 713/1328/241 726/1343/243 725/1329/245 -f 733/1331/239 732/1319/325 719/1321/249 -f 730/1333/326 729/1322/248 716/1324/247 -f 725/1329/245 736/1341/246 723/1325/244 -f 727/1335/242 726/1343/243 713/1328/241 -f 721/1337/238 734/1339/257 733/1331/239 -f 718/1338/235 731/1345/256 730/1333/326 -f 715/1323/255 728/1347/254 727/1335/242 -f 722/1327/252 735/1326/253 734/1339/257 -f 725/1329/245 737/1355/259 748/1340/269 -f 739/1342/265 738/1352/268 726/1343/243 -f 746/1344/264 745/1358/267 733/1331/239 -f 731/1345/256 743/1359/263 742/1346/327 -f 728/1347/254 740/1361/262 739/1342/265 -f 747/1348/260 746/1344/264 734/1339/257 -f 744/1349/270 743/1364/263 731/1350/256 -f 741/1351/261 740/1361/262 728/1347/254 -f 736/1341/246 748/1340/269 747/1348/260 -f 738/1352/268 737/1355/259 725/1329/245 -f 733/1331/239 745/1358/267 744/1349/270 -f 742/1346/327 741/1351/261 729/1322/248 -f 754/1353/280 753/1365/275 741/1351/261 -f 749/1354/273 760/1369/282 748/1340/269 -f 751/1356/279 750/1371/272 738/1352/268 -f 746/1344/264 758/1362/278 757/1357/281 -f 743/1359/263 755/1373/277 754/1353/280 -f 752/1360/276 751/1356/279 739/1342/265 -f 747/1348/260 759/1366/274 758/1362/278 -f 756/1363/271 755/1377/277 743/1364/263 -f 753/1365/275 752/1360/276 740/1361/262 -f 748/1340/269 760/1369/282 759/1366/274 -f 738/1352/268 750/1371/272 749/1354/273 -f 745/1358/267 757/1357/281 756/1363/271 -f 765/1367/328 764/1378/335 753/1365/275 -f 724/1368/329 771/1384/341 760/1369/282 -f 762/1370/330 761/1379/336 750/1371/272 -f 769/1372/331 768/1380/337 757/1357/281 -f 755/1373/277 766/1387/344 765/1367/328 -f 763/1374/332 762/1370/330 751/1356/279 -f 770/1375/333 769/1372/331 758/1362/278 -f 767/1376/334 766/1389/344 755/1377/277 -f 764/1378/335 763/1374/332 752/1360/276 -f 760/1369/282 771/1384/341 770/1375/333 -f 761/1379/336 724/1368/329 749/1354/273 -f 757/1357/281 768/1380/337 767/1376/334 -f 768/1380/337 780/1386/343 779/1381/338 -f 777/1382/339 776/1395/350 764/1378/335 -f 772/1383/340 783/1396/351 771/1384/341 -f 774/1385/342 773/1391/346 761/1379/336 -f 769/1372/331 781/1399/230 780/1386/343 -f 766/1387/344 778/1401/354 777/1382/339 -f 763/1374/332 775/1390/232 774/1385/342 -f 782/1388/345 781/1399/230 769/1372/331 -f 779/1381/338 778/1402/354 766/1389/344 -f 764/1378/335 776/1395/350 775/1390/232 -f 771/1384/341 783/1396/351 782/1388/345 -f 761/1379/336 773/1391/346 772/1383/340 -f 773/1391/346 785/1418/359 784/1392/347 -f 780/1386/343 792/1409/358 791/1393/348 -f 789/1394/349 788/1403/355 776/1395/350 -f 784/1392/347 795/1406/357 783/1396/351 -f 786/1397/352 785/1418/359 773/1391/346 -f 793/1398/231 792/1409/358 780/1386/343 -f 790/1400/353 789/1394/349 777/1382/339 -f 775/1390/232 787/1415/234 786/1397/352 -f 782/1388/345 794/1404/356 793/1398/231 -f 791/1393/348 790/1609/353 778/1402/354 -f 788/1403/355 787/1415/234 775/1390/232 -f 783/1396/351 795/1406/357 794/1404/356 -f 711/1405/323 794/1404/356 795/1406/357 -f 710/1408/9 793/1398/231 794/1404/356 -f 792/1409/358 793/1398/231 710/1408/9 -f 791/1393/348 792/1409/358 709/1410/319 -f 707/1314/322 790/1609/353 791/1393/348 -f 789/1394/349 790/1400/353 707/1412/322 -f 705/1414/324 788/1403/355 789/1394/349 -f 787/1415/234 788/1403/355 705/1414/324 -f 703/1417/321 786/1397/352 787/1415/234 -f 785/1418/359 786/1397/352 703/1417/321 -f 701/1307/316 784/1392/347 785/1418/359 -f 795/1406/357 784/1392/347 701/1307/316 -f 714/1336/258 810/1440/233 811/1420/5 -f 722/1327/252 818/1442/230 819/1421/231 -f 622/1237/235 802/1610/4 801/1422/227 -f 715/1323/255 811/1420/5 812/1423/232 -f 723/1325/244 819/1421/231 808/1424/9 -f 623/1218/237 803/1427/234 802/1425/4 -f 716/1324/247 812/1423/232 813/1426/234 -f 624/1228/247 804/1430/232 803/1427/234 -f 717/1334/237 813/1426/234 814/1428/4 -f 617/1225/244 797/1432/231 796/1429/9 -f 625/1236/255 805/1433/5 804/1430/232 -f 718/1320/235 814/1611/4 815/1431/227 -f 618/1233/252 798/1435/230 797/1432/231 -f 626/1240/258 806/1437/233 805/1433/5 -f 719/1321/249 815/1431/227 816/1434/228 -f 619/1219/238 799/1439/3 798/1435/230 -f 676/1330/251 808/1424/9 809/1436/229 -f 627/1222/241 807/1441/229 806/1437/233 -f 720/1332/240 816/1434/228 817/1438/3 -f 620/1221/240 800/1443/228 799/1439/3 -f 713/1328/241 809/1436/229 810/1440/233 -f 616/1232/251 796/1429/9 807/1441/229 -f 721/1337/238 817/1438/3 818/1442/230 -f 621/1230/249 801/1422/227 800/1443/228 -f 821/1444/360 822/1454/369 834/1445/361 -f 828/1447/363 829/1455/5 841/1448/364 -f 826/1450/366 838/1479/372 837/1451/367 -f 823/1453/3 835/1461/374 834/1445/361 -f 829/1455/5 830/1463/376 842/1456/370 -f 826/1457/366 827/1466/379 839/1458/371 -f 824/1460/373 836/1467/380 835/1461/374 -f 831/1462/375 843/1468/381 842/1456/370 -f 820/1464/377 821/1444/360 833/1446/362 -f 828/1447/363 840/1449/365 839/1458/371 -f 824/1460/373 825/1452/368 837/1451/367 -f 820/1464/377 832/1465/378 843/1468/381 -f 838/1459/372 839/1458/371 851/1469/382 -f 836/1467/380 848/1475/388 847/1471/384 -f 842/1456/370 843/1468/381 855/1472/385 -f 833/1446/362 845/1477/390 844/1474/387 -f 840/1449/365 852/1478/391 851/1469/382 -f 837/1451/367 849/1480/392 848/1475/388 -f 843/1468/381 832/1465/378 844/1474/387 -f 833/1446/362 834/1445/361 846/1476/389 -f 841/1448/364 853/1481/393 852/1478/391 -f 838/1479/372 850/1612/383 849/1480/392 -f 835/1461/374 847/1471/384 846/1476/389 -f 841/1448/364 842/1456/370 854/1473/386 -f 851/1469/382 863/1487/399 862/1482/394 -f 847/1471/384 848/1475/388 860/1483/395 -f 855/1472/385 867/1488/400 866/1485/397 -f 845/1477/390 857/1490/402 856/1486/398 -f 852/1478/391 864/1492/404 863/1487/399 -f 849/1480/392 861/1494/405 860/1483/395 -f 855/1472/385 844/1474/387 856/1486/398 -f 845/1477/390 846/1476/389 858/1489/401 -f 852/1478/391 853/1481/393 865/1491/403 -f 849/1480/392 850/1612/383 862/1493/394 -f 847/1471/384 859/1484/396 858/1489/401 -f 854/1473/386 866/1485/397 865/1491/403 -f 856/1497/398 857/1613/402 858/1614/401 -f 858/1614/401 859/1615/396 856/1497/398 -f 859/1615/396 860/1495/395 856/1497/398 -f 860/1495/395 861/1616/405 864/1496/404 -f 861/1616/405 862/1617/394 864/1496/404 -f 862/1617/394 863/1618/399 864/1496/404 -f 864/1496/404 865/1619/403 866/1620/397 -f 866/1620/397 867/1621/400 856/1497/398 -f 864/1496/404 866/1620/397 856/1497/398 -f 896/402/4 920/699/4 919/423/227 -f 910/1498/230 934/430/230 935/410/3 -f 903/1500/234 926/418/234 928/417/232 -f 897/404/234 921/427/234 920/429/4 -f 911/1499/3 935/410/3 936/409/228 -f 904/1501/232 928/417/232 929/422/5 -f 898/407/232 922/432/232 921/427/234 -f 912/1502/228 936/409/228 937/414/227 -f 891/394/231 914/415/231 915/416/9 -f 905/1503/5 929/422/5 930/421/233 -f 899/388/5 923/408/5 922/432/232 -f 913/1504/227 937/414/227 927/413/4 -f 892/396/230 916/420/230 914/415/231 -f 906/1505/233 930/421/233 931/426/229 -f 900/390/233 924/412/233 923/408/5 -f 893/397/3 917/419/3 916/420/230 -f 907/1507/229 931/426/229 932/425/9 -f 901/391/229 925/411/229 924/412/233 -f 894/399/228 918/424/228 917/419/3 -f 908/1509/9 932/428/9 933/431/231 -f 890/393/9 915/416/9 925/411/229 -f 895/400/227 919/423/227 918/424/228 -f 909/1510/231 933/431/231 934/430/230 -f 902/1506/4 927/413/4 926/418/234 -f 970/1511/3 978/1521/3 977/1512/22 -f 975/1514/23 983/1524/23 982/1515/5 -f 973/1517/47 981/1525/47 980/1518/4 -f 971/1520/40 979/1527/40 978/1521/3 -f 969/1513/22 977/1512/22 976/1522/9 -f 968/1523/9 976/1522/9 983/1524/23 -f 974/1516/5 982/1515/5 981/1525/47 -f 972/1526/4 980/1622/4 979/1527/40 -f 1000/1528/227 1012/1541/227 1011/1529/228 -f 995/1531/9 1008/1551/9 1018/1532/229 -f 997/1534/230 1009/1543/230 1007/1535/231 -f 1004/1537/5 1016/1545/5 1015/1538/232 -f 1001/1540/4 1013/1623/4 1012/1541/227 -f 998/1542/3 1010/1549/3 1009/1543/230 -f 1005/1544/233 1017/1550/233 1016/1545/5 -f 1002/1546/234 1014/1552/234 1013/1547/4 -f 999/1530/228 1011/1529/228 1010/1549/3 -f 1006/1533/229 1018/1532/229 1017/1550/233 -f 996/1536/231 1007/1535/231 1008/1551/9 -f 1003/1539/232 1015/1538/232 1014/1552/234 -f 1029/1553/233 1041/1576/233 1042/1554/229 -f 1022/1556/3 1034/1577/3 1035/1557/228 -f 1030/1555/229 1042/1554/229 1032/1559/9 -f 1023/1558/228 1035/1557/228 1036/1561/227 -f 1024/1562/227 1036/1561/227 1037/1563/4 -f 1025/1565/4 1037/1624/4 1038/1566/234 -f 1026/1567/234 1038/1566/234 1039/1568/232 -f 1019/1560/9 1032/1559/9 1031/1570/231 -f 1027/1569/232 1039/1568/232 1040/1572/5 -f 1020/1571/231 1031/1570/231 1033/1574/230 -f 1028/1573/5 1040/1572/5 1041/1576/233 -f 1021/1575/230 1033/1574/230 1034/1577/3 +f 388/570/237 389/1155/246 387/1156/247 +f 390/572/248 391/1157/249 389/1155/246 +f 392/574/245 393/1158/250 391/1157/249 +f 394/576/251 395/1159/252 393/1158/250 +f 396/578/232 397/1160/253 395/1159/252 +f 398/580/254 399/1161/255 397/1160/253 +f 399/1161/255 402/583/256 401/1162/257 +f 402/583/256 403/1163/258 401/1162/257 +f 404/971/231 405/1164/259 403/1165/258 +f 406/587/260 407/1166/261 405/1164/259 +f 408/590/262 409/1167/263 407/1166/261 +f 410/592/264 411/1168/265 409/1167/263 +f 412/594/235 413/1169/266 411/1168/265 +f 414/596/238 415/1170/267 413/1169/266 +f 416/564/244 417/1171/268 415/1170/267 +f 417/1171/268 388/570/237 387/1156/247 +f 429/581/244 444/1172/269 428/584/269 +f 422/565/254 437/1173/270 421/566/270 +f 430/579/238 445/1174/244 429/581/244 +f 423/595/232 438/1175/254 422/565/254 +f 431/577/235 446/1176/238 430/579/238 +f 424/593/251 439/1177/232 423/595/232 +f 432/575/264 447/1178/235 431/577/235 +f 425/591/245 440/1179/251 424/593/251 +f 433/573/262 448/1180/264 432/575/264 +f 426/589/248 441/1181/245 425/591/245 +f 434/571/260 449/1182/262 433/573/262 +f 427/588/237 442/1183/248 426/589/248 +f 420/567/256 435/1184/231 419/569/231 +f 419/569/231 450/1185/260 434/571/260 +f 428/584/269 443/1186/237 427/586/237 +f 421/566/270 436/1187/256 420/567/256 +f 452/1188/271 467/1189/272 451/1190/273 +f 467/1189/272 417/1191/268 387/1192/247 +f 466/1193/274 467/1194/272 482/1195/275 +f 466/1193/274 481/1196/276 465/1197/277 +f 465/1197/277 480/1198/278 464/1199/279 +f 463/1200/280 480/1201/278 479/1202/281 +f 462/1203/282 479/1204/281 478/1205/283 +f 461/1206/284 478/1207/283 477/1208/285 +f 460/1209/286 477/1210/285 476/1211/287 +f 460/1209/286 475/1212/288 459/1213/289 +f 458/1214/290 475/1215/288 474/1216/291 +f 458/1214/290 473/1217/292 457/1218/293 +f 457/1218/293 472/1219/294 456/1220/295 +f 456/1220/295 471/1221/296 455/1222/297 +f 454/1223/298 471/1224/296 470/1225/299 +f 453/1226/300 470/1227/299 469/1228/301 +f 453/1226/300 468/1229/302 452/1188/271 +f 389/1230/246 467/1194/272 387/1231/247 +f 391/1232/249 482/1233/275 389/1234/246 +f 480/1198/278 391/1235/249 393/1236/250 +f 479/1202/281 393/1237/250 395/1238/252 +f 397/1239/253 479/1204/281 395/1240/252 +f 399/1241/255 478/1207/283 397/1242/253 +f 476/1211/287 399/1243/255 401/1244/257 +f 475/1212/288 401/1245/257 403/1246/258 +f 405/1247/259 475/1215/288 403/1248/258 +f 407/1249/261 474/1250/291 405/1251/259 +f 409/1252/263 473/1253/292 407/1254/261 +f 471/1221/296 409/1255/263 411/1256/265 +f 470/1225/299 411/1257/265 413/1258/266 +f 469/1228/301 413/1259/266 415/1260/267 +f 468/1229/302 415/1261/267 417/1262/268 +f 515/597/237 497/658/269 516/626/269 +f 530/603/248 498/656/237 515/597/237 +f 523/627/231 489/643/256 524/625/256 +f 516/626/269 496/631/244 517/623/244 +f 524/625/256 488/645/270 525/621/270 +f 517/623/244 495/630/238 518/619/238 +f 525/621/270 487/647/254 526/617/254 +f 518/619/238 494/633/235 519/615/235 +f 526/617/254 486/649/232 527/613/232 +f 519/615/235 493/635/264 520/609/264 +f 527/613/232 485/650/251 528/611/251 +f 520/609/264 492/636/262 521/605/262 +f 528/611/251 484/652/245 529/607/245 +f 521/605/262 491/638/260 522/602/260 +f 529/607/245 483/654/248 530/603/248 +f 522/602/260 490/640/231 523/600/231 +f 540/1263/237 505/606/248 508/599/237 +f 539/1264/269 508/599/237 507/598/269 +f 542/1265/244 507/598/269 510/622/244 +f 544/1266/238 510/622/244 512/618/238 +f 546/1267/235 512/618/238 514/614/235 +f 534/1268/264 514/614/235 502/608/264 +f 533/1269/262 502/608/264 501/604/262 +f 536/1270/260 501/604/262 504/601/260 +f 538/1271/231 504/601/260 506/972/231 +f 541/1272/256 506/628/231 509/624/256 +f 543/1273/270 509/624/256 511/620/270 +f 545/1274/254 511/620/270 513/616/254 +f 532/1275/232 513/616/254 500/612/232 +f 531/1276/251 500/612/232 499/610/251 +f 535/1277/245 499/610/251 503/973/245 +f 537/1278/248 503/973/245 505/606/248 +f 578/1279/303 539/1264/304 577/1280/304 +f 563/1281/305 540/1263/303 578/1279/303 +f 564/1282/306 537/1278/305 563/1281/305 +f 564/1282/306 531/1276/307 535/1277/306 +f 565/1283/307 532/1275/233 531/1276/307 +f 566/1284/233 545/1274/308 532/1275/233 +f 567/1285/308 543/1273/309 545/1274/308 +f 568/1286/309 541/1272/310 543/1273/309 +f 570/1287/311 541/1272/310 569/1288/310 +f 570/1289/311 536/1270/312 538/1271/311 +f 571/1290/312 533/1269/313 536/1270/312 +f 572/1291/313 534/1268/314 533/1269/313 +f 574/1292/234 534/1268/314 573/1293/314 +f 574/1292/234 544/1266/315 546/1267/234 +f 575/1294/315 542/1265/316 544/1266/315 +f 576/1295/316 539/1264/304 542/1265/316 +f 558/1296/317 577/1280/318 576/1295/317 +f 555/1297/318 578/1279/319 577/1280/318 +f 556/1298/319 563/1281/320 578/1279/319 +f 553/1299/320 564/1282/321 563/1281/320 +f 564/1282/321 547/1300/322 565/1283/322 +f 565/1283/322 548/1301/323 566/1284/323 +f 566/1284/323 561/1302/324 567/1285/324 +f 567/1285/324 559/1303/325 568/1286/325 +f 559/1303/325 569/1288/326 568/1286/325 +f 557/1304/326 570/1287/327 569/1288/326 +f 570/1289/327 552/1305/328 571/1290/328 +f 571/1290/328 549/1306/329 572/1291/329 +f 572/1291/329 550/1307/330 573/1293/330 +f 550/1307/330 574/1292/331 573/1293/330 +f 574/1292/331 560/1308/332 575/1294/332 +f 575/1294/332 558/1296/317 576/1295/317 +f 452/1188/269 558/1296/244 453/1226/244 +f 451/1190/237 555/1297/269 452/1188/269 +f 466/1193/248 556/1298/237 451/1190/237 +f 465/1197/245 553/1299/248 466/1193/248 +f 464/1199/251 551/1309/245 465/1197/245 +f 463/1200/232 547/1300/251 464/1199/251 +f 462/1203/254 548/1301/232 463/1200/232 +f 461/1206/270 561/1302/254 462/1203/254 +f 460/1209/256 559/1303/270 461/1206/270 +f 459/1213/231 557/1304/256 460/1209/256 +f 458/1214/260 554/1310/231 459/1311/231 +f 457/1218/262 552/1305/260 458/1214/260 +f 456/1220/264 549/1306/262 457/1218/262 +f 455/1222/235 550/1307/264 456/1220/264 +f 454/1223/238 562/1312/235 455/1222/235 +f 453/1226/244 560/1308/238 454/1223/238 +f 584/1313/264 601/1314/333 585/1315/262 +f 592/1316/251 609/1317/334 593/1318/245 +f 585/1315/262 602/1319/335 586/1320/260 +f 593/1318/245 610/1321/336 594/1322/248 +f 586/1320/260 603/1323/337 587/1324/231 +f 594/1322/248 595/1325/338 579/1326/237 +f 587/1327/231 604/1328/339 588/1329/256 +f 588/1329/256 605/1330/340 589/1331/270 +f 589/1331/270 606/1332/341 590/1333/254 +f 590/1333/254 607/1334/342 591/1335/232 +f 648/1336/343 579/1326/237 595/1325/338 +f 591/1335/232 608/1337/344 592/1316/251 +f 623/1338/237 632/1339/244 624/1340/244 +f 630/1341/245 631/1342/237 623/1338/237 +f 628/1343/270 637/1344/232 629/1345/232 +f 626/1346/262 635/1347/231 627/1348/231 +f 624/1340/244 633/1349/235 625/1350/235 +f 629/1345/232 638/1351/245 630/1341/245 +f 627/1352/231 636/1353/270 628/1343/270 +f 625/1350/235 634/1354/262 626/1346/262 +f 647/1355/343 580/1356/269 579/1326/237 +f 597/1357/345 599/1358/346 600/1359/347 +f 642/1360/238 583/1361/235 582/1362/238 +f 641/1363/244 582/1362/238 581/1364/244 +f 640/1365/269 581/1364/244 580/1356/269 +f 639/1366/348 597/1357/345 646/1367/238 +f 643/1368/349 646/1367/238 645/1369/244 +f 596/1370/350 645/1369/244 644/1371/269 +f 596/1370/350 648/1336/343 595/1325/338 +f 658/1372/351 671/1373/237 657/1374/352 +f 659/1375/353 672/1376/269 658/1372/351 +f 660/1377/354 673/1378/244 659/1375/353 +f 661/1379/355 674/1380/238 660/1377/354 +f 654/1381/356 667/701/357 653/700/358 +f 662/1382/359 675/1383/235 661/1379/355 +f 655/1384/360 668/1385/251 654/1381/356 +f 663/1386/361 676/1387/264 662/1382/359 +f 656/1388/362 669/1389/245 655/1384/360 +f 664/1390/363 677/1391/262 663/1386/361 +f 657/1374/352 670/1392/248 656/1388/362 +f 665/698/364 666/1393/231 649/1394/365 +f 649/1394/365 678/1395/260 664/1390/363 +f 687/1396/244 682/948/238 681/951/244 +f 684/1397/343 680/953/269 689/955/343 +f 686/1398/238 683/1103/366 682/948/238 +f 688/1399/269 681/951/244 680/953/269 +f 700/787/367 655/1384/360 654/1381/356 +f 655/1384/360 698/789/368 656/1388/362 +f 656/1388/362 697/792/369 657/1374/352 +f 697/796/369 658/1372/351 657/1374/352 +f 696/704/370 659/1375/353 658/1372/351 +f 659/1375/353 694/1021/371 660/1377/354 +f 694/756/371 661/1379/355 660/1377/354 +f 693/759/372 662/1382/359 661/1379/355 +f 692/762/373 663/1386/361 662/1382/359 +f 690/768/374 649/1394/365 664/1390/363 +f 691/765/375 664/1390/363 663/1386/361 +f 704/1027/376 650/1400/376 665/698/364 +f 704/774/376 651/1401/377 650/1400/376 +f 703/778/377 652/1402/378 651/1401/377 +f 652/1402/378 701/1030/379 653/1403/358 +f 701/784/379 654/1381/356 653/700/358 +f 708/708/245 716/716/251 707/706/251 +f 707/706/251 720/719/357 706/727/357 +f 727/732/380 709/711/248 710/713/380 +f 718/721/248 731/734/380 719/722/380 +f 726/731/381 730/724/381 717/717/245 +f 751/1404/382 599/1358/346 639/1366/348 +f 606/1332/341 760/1405/383 607/1334/342 +f 607/1334/342 761/1406/384 608/1337/344 +f 761/1406/384 609/1317/334 608/1337/344 +f 601/1314/333 755/1407/385 602/1319/335 +f 600/1359/347 754/1408/386 601/1314/333 +f 762/1409/387 610/1321/336 609/1317/334 +f 643/1368/349 751/1404/382 639/1366/348 +f 763/1410/388 595/1325/338 610/1321/336 +f 603/1411/337 757/1412/389 604/1328/339 +f 599/1358/346 753/1413/390 600/1359/347 +f 595/1325/338 749/1414/391 596/1370/350 +f 757/1412/389 605/1330/340 604/1328/339 +f 602/1319/335 756/1415/392 603/1323/337 +f 749/1414/391 643/1368/349 596/1370/350 +f 605/1330/340 759/1416/393 606/1332/341 +f 746/1417/394 786/1418/395 747/1419/396 +f 787/1420/397 767/1421/398 766/1422/399 +f 789/1423/400 780/1424/401 787/1420/397 +f 791/1425/402 782/1426/403 789/1423/400 +f 792/1427/404 783/1428/405 791/1425/402 +f 778/1429/406 793/1430/407 786/1418/395 +f 793/1430/407 784/1431/408 792/1427/404 +f 777/1432/409 772/1433/410 770/1434/411 +f 779/1435/412 771/1436/413 776/1437/414 +f 764/1438/415 746/1439/394 779/1435/412 +f 769/1440/416 767/1441/398 780/1442/401 +f 769/1440/416 782/1443/403 771/1436/413 +f 773/1444/417 782/1443/403 783/1445/405 +f 775/1446/418 783/1445/405 784/1447/408 +f 764/1438/415 785/1448/419 778/1449/406 +f 775/1446/418 785/1448/419 776/1437/414 +f 765/1450/420 747/1451/396 786/1452/395 +f 768/1453/421 766/1454/399 790/1455/422 +f 768/1453/421 789/1456/400 787/1457/397 +f 772/1433/410 789/1456/400 770/1434/411 +f 774/1458/423 791/1459/402 772/1433/410 +f 765/1450/420 793/1460/407 777/1432/409 +f 774/1458/423 793/1460/407 792/1461/404 +f 806/813/229 808/817/424 807/808/229 +f 805/810/230 811/1462/425 804/1463/230 +f 810/809/425 813/1464/426 811/1462/425 +f 809/812/424 814/816/427 808/817/424 +f 812/821/426 817/1465/428 813/1464/426 +f 815/815/427 818/1039/429 814/816/427 +f 816/820/428 821/1466/430 817/1465/428 +f 819/819/429 822/824/431 818/1039/429 +f 829/1467/432 824/828/229 825/827/229 +f 831/1468/433 828/1469/432 829/1467/432 +f 839/1470/434 850/1471/435 838/1472/435 +f 834/1473/237 857/1474/436 845/1475/436 +f 836/1476/437 846/1477/438 835/1478/438 +f 843/1479/232 854/1480/439 842/1481/439 +f 840/1482/231 851/1483/434 839/1470/434 +f 837/1484/235 848/1485/437 836/1476/437 +f 844/1486/440 855/1487/232 843/1479/232 +f 841/1488/441 852/1489/231 840/1490/231 +f 838/1472/435 849/1491/235 837/1484/235 +f 845/1475/436 856/1492/440 844/1486/440 +f 835/1478/438 847/1493/237 834/1473/237 +f 842/1481/439 853/1494/441 841/1488/441 +f 868/1495/440 881/1496/436 869/1497/436 +f 861/1498/235 874/1499/435 862/1500/435 +f 869/1497/436 871/1501/237 858/1502/237 +f 862/1500/435 875/1503/434 863/1504/434 +f 863/1504/434 876/1505/231 864/1506/231 +f 864/1507/231 877/1508/441 865/1509/441 +f 865/1509/441 878/1510/439 866/1511/439 +f 858/1502/237 870/1512/438 859/1513/438 +f 866/1511/439 879/1514/232 867/1515/232 +f 859/1513/438 872/1516/437 860/1517/437 +f 867/1515/232 880/1518/440 868/1495/440 +f 860/1517/437 873/1519/235 861/1498/235 +f 896/869/231 919/890/434 895/867/434 +f 910/1520/437 935/877/235 911/1521/235 +f 903/1522/441 928/884/439 904/1523/439 +f 897/871/441 920/896/231 896/872/231 +f 911/1521/235 936/876/435 912/1524/435 +f 904/1523/439 929/889/232 905/1525/232 +f 898/874/439 921/894/441 897/871/441 +f 912/1524/435 937/881/434 913/1526/434 +f 891/861/438 915/883/237 890/860/237 +f 905/1525/232 930/888/440 906/1527/440 +f 899/855/232 922/899/439 898/874/439 +f 913/1526/434 927/880/231 902/1528/231 +f 892/863/437 914/882/438 891/861/438 +f 906/1527/440 931/893/436 907/1529/436 +f 900/857/440 923/875/232 899/855/232 +f 893/864/235 916/887/437 892/863/437 +f 907/1529/436 932/892/237 908/1530/237 +f 901/858/436 924/879/440 900/857/440 +f 894/866/435 917/886/235 893/864/235 +f 908/1531/237 933/898/438 909/1532/438 +f 890/860/237 925/878/436 901/858/436 +f 895/867/434 918/891/435 894/866/435 +f 909/1532/438 934/897/437 910/1520/437 +f 902/1528/231 926/885/441 903/1522/441 +f 970/1533/235 977/1534/244 969/1535/244 +f 975/1536/245 982/1537/232 974/1538/232 +f 973/1539/270 980/1540/231 972/1541/231 +f 971/1542/262 978/1543/235 970/1533/235 +f 969/1535/244 976/1544/237 968/1545/237 +f 968/1545/237 983/1546/245 975/1536/245 +f 974/1538/232 981/1547/270 973/1539/270 +f 972/1548/231 979/1549/262 971/1542/262 +f 1000/1550/434 1011/1551/435 999/1552/435 +f 995/1553/237 1018/1554/436 1006/1555/436 +f 997/1556/437 1007/1557/438 996/1558/438 +f 1004/1559/232 1015/1560/439 1003/1561/439 +f 1001/1562/231 1012/1563/434 1000/1550/434 +f 998/1564/235 1009/1565/437 997/1556/437 +f 1005/1566/440 1016/1567/232 1004/1559/232 +f 1002/1568/441 1013/1569/231 1001/1570/231 +f 999/1552/435 1010/1571/235 998/1564/235 +f 1006/1555/436 1017/1572/440 1005/1566/440 +f 996/1558/438 1008/1573/237 995/1553/237 +f 1003/1561/439 1014/1574/441 1002/1568/441 +f 1029/1575/440 1042/1576/436 1030/1577/436 +f 1022/1578/235 1035/1579/435 1023/1580/435 +f 1030/1577/436 1032/1581/237 1019/1582/237 +f 1023/1580/435 1036/1583/434 1024/1584/434 +f 1024/1584/434 1037/1585/231 1025/1586/231 +f 1025/1587/231 1038/1588/441 1026/1589/441 +f 1026/1589/441 1039/1590/439 1027/1591/439 +f 1019/1582/237 1031/1592/438 1020/1593/438 +f 1027/1591/439 1040/1594/232 1028/1595/232 +f 1020/1593/438 1033/1596/437 1021/1597/437 +f 1028/1595/232 1041/1598/440 1029/1575/440 +f 1021/1597/437 1034/1599/235 1022/1578/235 +f 388/570/237 390/572/248 389/1155/246 +f 390/572/248 392/574/245 391/1157/249 +f 392/574/245 394/576/251 393/1158/250 +f 394/576/251 396/578/232 395/1159/252 +f 396/578/232 398/580/254 397/1160/253 +f 398/580/254 400/582/270 399/1161/255 +f 399/1161/255 400/582/270 402/583/256 +f 402/583/256 404/585/231 403/1163/258 +f 404/971/231 406/587/260 405/1164/259 +f 406/587/260 408/590/262 407/1166/261 +f 408/590/262 410/592/264 409/1167/263 +f 410/592/264 412/594/235 411/1168/265 +f 412/594/235 414/596/238 413/1169/266 +f 414/596/238 416/564/244 415/1170/267 +f 416/564/244 418/568/269 417/1171/268 +f 417/1171/268 418/568/269 388/570/237 +f 429/581/244 445/1174/244 444/1172/269 +f 422/565/254 438/1175/254 437/1173/270 +f 430/579/238 446/1176/238 445/1174/244 +f 423/595/232 439/1177/232 438/1175/254 +f 431/577/235 447/1178/235 446/1176/238 +f 424/593/251 440/1179/251 439/1177/232 +f 432/575/264 448/1180/264 447/1178/235 +f 425/591/245 441/1181/245 440/1179/251 +f 433/573/262 449/1182/262 448/1180/264 +f 426/589/248 442/1183/248 441/1181/245 +f 434/571/260 450/1185/260 449/1182/262 +f 427/588/237 443/1600/237 442/1183/248 +f 420/567/256 436/1187/256 435/1184/231 +f 419/569/231 435/1184/231 450/1185/260 +f 428/584/269 444/1172/269 443/1186/237 +f 421/566/270 437/1173/270 436/1187/256 +f 452/1188/271 468/1601/302 467/1189/272 +f 467/1189/272 468/1601/302 417/1191/268 +f 466/1193/274 451/1190/273 467/1194/272 +f 466/1193/274 482/1233/275 481/1196/276 +f 465/1197/277 481/1602/276 480/1198/278 +f 463/1200/280 464/1199/279 480/1201/278 +f 462/1203/282 463/1200/280 479/1204/281 +f 461/1206/284 462/1203/282 478/1207/283 +f 460/1209/286 461/1206/284 477/1210/285 +f 460/1209/286 476/1603/287 475/1212/288 +f 458/1214/290 459/1311/289 475/1215/288 +f 458/1214/290 474/1250/291 473/1217/292 +f 457/1218/293 473/1253/292 472/1219/294 +f 456/1220/295 472/1604/294 471/1221/296 +f 454/1223/298 455/1222/297 471/1224/296 +f 453/1226/300 454/1223/298 470/1227/299 +f 453/1226/300 469/1605/301 468/1229/302 +f 389/1230/246 482/1195/275 467/1194/272 +f 391/1232/249 481/1196/276 482/1233/275 +f 480/1198/278 481/1602/276 391/1235/249 +f 479/1202/281 480/1201/278 393/1237/250 +f 397/1239/253 478/1205/283 479/1204/281 +f 399/1241/255 477/1208/285 478/1207/283 +f 476/1211/287 477/1210/285 399/1243/255 +f 475/1212/288 476/1603/287 401/1245/257 +f 405/1247/259 474/1216/291 475/1215/288 +f 407/1249/261 473/1217/292 474/1250/291 +f 409/1252/263 472/1219/294 473/1253/292 +f 471/1221/296 472/1604/294 409/1255/263 +f 470/1225/299 471/1224/296 411/1257/265 +f 469/1228/301 470/1227/299 413/1259/266 +f 468/1229/302 469/1605/301 415/1261/267 +f 515/597/237 498/656/237 497/658/269 +f 530/603/248 483/654/248 498/656/237 +f 523/627/231 490/641/231 489/643/256 +f 516/626/269 497/658/269 496/631/244 +f 524/625/256 489/643/256 488/645/270 +f 517/623/244 496/631/244 495/630/238 +f 525/621/270 488/645/270 487/647/254 +f 518/619/238 495/630/238 494/633/235 +f 526/617/254 487/647/254 486/649/232 +f 519/615/235 494/633/235 493/635/264 +f 527/613/232 486/649/232 485/650/251 +f 520/609/264 493/635/264 492/636/262 +f 528/611/251 485/650/251 484/652/245 +f 521/605/262 492/636/262 491/638/260 +f 529/607/245 484/652/245 483/654/248 +f 522/602/260 491/638/260 490/640/231 +f 540/1263/237 537/1278/248 505/606/248 +f 539/1264/269 540/1263/237 508/599/237 +f 542/1265/244 539/1264/269 507/598/269 +f 544/1266/238 542/1265/244 510/622/244 +f 546/1267/235 544/1266/238 512/618/238 +f 534/1268/264 546/1267/235 514/614/235 +f 533/1269/262 534/1268/264 502/608/264 +f 536/1270/260 533/1269/262 501/604/262 +f 538/1271/231 536/1270/260 504/601/260 +f 541/1272/256 538/1606/231 506/628/231 +f 543/1273/270 541/1272/256 509/624/256 +f 545/1274/254 543/1273/270 511/620/270 +f 532/1275/232 545/1274/254 513/616/254 +f 531/1276/251 532/1275/232 500/612/232 +f 535/1277/245 531/1276/251 499/610/251 +f 537/1278/248 535/1277/245 503/973/245 +f 578/1279/303 540/1263/303 539/1264/304 +f 563/1281/305 537/1278/305 540/1263/303 +f 564/1282/306 535/1277/306 537/1278/305 +f 564/1282/306 565/1283/307 531/1276/307 +f 565/1283/307 566/1284/233 532/1275/233 +f 566/1284/233 567/1285/308 545/1274/308 +f 567/1285/308 568/1286/309 543/1273/309 +f 568/1286/309 569/1288/310 541/1272/310 +f 570/1287/311 538/1606/311 541/1272/310 +f 570/1289/311 571/1290/312 536/1270/312 +f 571/1290/312 572/1291/313 533/1269/313 +f 572/1291/313 573/1293/314 534/1268/314 +f 574/1292/234 546/1267/234 534/1268/314 +f 574/1292/234 575/1294/315 544/1266/315 +f 575/1294/315 576/1295/316 542/1265/316 +f 576/1295/316 577/1280/304 539/1264/304 +f 558/1296/317 555/1297/318 577/1280/318 +f 555/1297/318 556/1298/319 578/1279/319 +f 556/1298/319 553/1299/320 563/1281/320 +f 553/1299/320 551/1309/321 564/1282/321 +f 564/1282/321 551/1309/321 547/1300/322 +f 565/1283/322 547/1300/322 548/1301/323 +f 566/1284/323 548/1301/323 561/1302/324 +f 567/1285/324 561/1302/324 559/1303/325 +f 559/1303/325 557/1304/326 569/1288/326 +f 557/1304/326 554/1607/327 570/1287/327 +f 570/1289/327 554/1310/327 552/1305/328 +f 571/1290/328 552/1305/328 549/1306/329 +f 572/1291/329 549/1306/329 550/1307/330 +f 550/1307/330 562/1312/331 574/1292/331 +f 574/1292/331 562/1312/331 560/1308/332 +f 575/1294/332 560/1308/332 558/1296/317 +f 452/1188/269 555/1297/269 558/1296/244 +f 451/1190/237 556/1298/237 555/1297/269 +f 466/1193/248 553/1299/248 556/1298/237 +f 465/1197/245 551/1309/245 553/1299/248 +f 464/1199/251 547/1300/251 551/1309/245 +f 463/1200/232 548/1301/232 547/1300/251 +f 462/1203/254 561/1302/254 548/1301/232 +f 461/1206/270 559/1303/270 561/1302/254 +f 460/1209/256 557/1304/256 559/1303/270 +f 459/1213/231 554/1607/231 557/1304/256 +f 458/1214/260 552/1305/260 554/1310/231 +f 457/1218/262 549/1306/262 552/1305/260 +f 456/1220/264 550/1307/264 549/1306/262 +f 455/1222/235 562/1312/235 550/1307/264 +f 454/1223/238 560/1308/238 562/1312/235 +f 453/1226/244 558/1296/244 560/1308/238 +f 584/1313/264 600/1359/347 601/1314/333 +f 592/1316/251 608/1337/344 609/1317/334 +f 585/1315/262 601/1314/333 602/1319/335 +f 593/1318/245 609/1317/334 610/1321/336 +f 586/1320/260 602/1319/335 603/1323/337 +f 594/1322/248 610/1321/336 595/1325/338 +f 587/1327/231 603/1411/337 604/1328/339 +f 588/1329/256 604/1328/339 605/1330/340 +f 589/1331/270 605/1330/340 606/1332/341 +f 590/1333/254 606/1332/341 607/1334/342 +f 648/1336/343 647/1355/343 579/1326/237 +f 591/1335/232 607/1334/342 608/1337/344 +f 623/1338/237 631/1342/237 632/1339/244 +f 630/1341/245 638/1351/245 631/1342/237 +f 628/1343/270 636/1353/270 637/1344/232 +f 626/1346/262 634/1354/262 635/1347/231 +f 624/1340/244 632/1339/244 633/1349/235 +f 629/1345/232 637/1344/232 638/1351/245 +f 627/1352/231 635/1608/231 636/1353/270 +f 625/1350/235 633/1349/235 634/1354/262 +f 647/1355/343 640/1365/269 580/1356/269 +f 600/1359/347 584/1313/264 597/1357/345 +f 584/1313/264 583/1361/235 598/1609/345 +f 598/1609/345 597/1357/345 584/1313/264 +f 642/1360/238 598/1609/345 583/1361/235 +f 641/1363/244 642/1360/238 582/1362/238 +f 640/1365/269 641/1363/244 581/1364/244 +f 639/1366/348 599/1358/346 597/1357/345 +f 643/1368/349 639/1366/348 646/1367/238 +f 596/1370/350 643/1368/349 645/1369/244 +f 596/1370/350 644/1371/269 648/1336/343 +f 658/1372/351 672/1376/269 671/1373/237 +f 659/1375/353 673/1378/244 672/1376/269 +f 660/1377/354 674/1380/238 673/1378/244 +f 661/1379/355 675/1383/235 674/1380/238 +f 654/1381/356 668/1385/251 667/701/357 +f 662/1382/359 676/1387/264 675/1383/235 +f 655/1384/360 669/1389/245 668/1385/251 +f 663/1386/361 677/1391/262 676/1387/264 +f 656/1388/362 670/1392/248 669/1389/245 +f 664/1390/363 678/1395/260 677/1391/262 +f 657/1374/352 671/1373/237 670/1392/248 +f 665/698/364 679/996/442 666/1393/231 +f 649/1394/365 666/1393/231 678/1395/260 +f 687/1396/244 686/1398/238 682/948/238 +f 684/1397/343 688/1399/269 680/953/269 +f 686/1398/238 685/1610/366 683/1103/366 +f 688/1399/269 687/1396/244 681/951/244 +f 700/787/367 699/786/443 655/1384/360 +f 655/1384/360 699/790/443 698/789/368 +f 656/1388/362 698/793/368 697/792/369 +f 697/796/369 696/795/370 658/1372/351 +f 696/704/370 695/1000/444 659/1375/353 +f 659/1375/353 695/753/444 694/1021/371 +f 694/756/371 693/1022/372 661/1379/355 +f 693/759/372 692/1023/373 662/1382/359 +f 692/762/373 691/1024/375 663/1386/361 +f 690/768/374 705/1026/445 649/1394/365 +f 691/765/375 690/1025/374 664/1390/363 +f 665/698/364 649/1394/365 705/771/445 +f 705/771/445 704/1027/376 665/698/364 +f 704/774/376 703/1028/377 651/1401/377 +f 703/778/377 702/777/378 652/1402/378 +f 652/1402/378 702/780/378 701/1030/379 +f 701/784/379 700/783/367 654/1381/356 +f 708/708/245 717/717/245 716/716/251 +f 707/706/251 716/716/251 720/719/357 +f 727/732/380 726/731/381 709/711/248 +f 718/721/248 730/724/381 731/734/380 +f 708/708/245 709/711/248 726/731/381 +f 730/724/381 718/721/248 717/717/245 +f 708/708/245 726/731/381 717/717/245 +f 751/1404/382 752/1611/446 599/1358/346 +f 606/1332/341 759/1416/393 760/1405/383 +f 607/1334/342 760/1405/383 761/1406/384 +f 761/1406/384 762/1409/387 609/1317/334 +f 601/1314/333 754/1408/386 755/1407/385 +f 600/1359/347 753/1413/390 754/1408/386 +f 762/1409/387 763/1410/388 610/1321/336 +f 643/1368/349 750/1612/447 751/1404/382 +f 763/1410/388 748/1613/448 595/1325/338 +f 603/1411/337 756/1614/392 757/1412/389 +f 599/1358/346 752/1611/446 753/1413/390 +f 595/1325/338 748/1613/448 749/1414/391 +f 757/1412/389 758/1615/449 605/1330/340 +f 602/1319/335 755/1407/385 756/1415/392 +f 749/1414/391 750/1612/447 643/1368/349 +f 605/1330/340 758/1615/449 759/1416/393 +f 746/1417/394 778/1429/406 786/1418/395 +f 787/1420/397 780/1424/401 767/1421/398 +f 789/1423/400 782/1426/403 780/1424/401 +f 791/1425/402 783/1428/405 782/1426/403 +f 792/1427/404 784/1431/408 783/1428/405 +f 778/1429/406 785/1616/419 793/1430/407 +f 793/1430/407 785/1616/419 784/1431/408 +f 790/1455/422 788/1617/450 770/1434/411 +f 788/1617/450 765/1450/420 777/1432/409 +f 777/1432/409 774/1458/423 772/1433/410 +f 788/1617/450 777/1432/409 770/1434/411 +f 770/1434/411 768/1453/421 790/1455/422 +f 776/1437/414 764/1438/415 779/1435/412 +f 779/1435/412 781/1618/451 771/1436/413 +f 781/1618/451 769/1440/416 771/1436/413 +f 771/1436/413 773/1444/417 776/1437/414 +f 773/1444/417 775/1446/418 776/1437/414 +f 764/1438/415 778/1449/406 746/1439/394 +f 769/1440/416 781/1618/451 767/1441/398 +f 769/1440/416 780/1442/401 782/1443/403 +f 773/1444/417 771/1436/413 782/1443/403 +f 775/1446/418 773/1444/417 783/1445/405 +f 764/1438/415 776/1437/414 785/1448/419 +f 775/1446/418 784/1447/408 785/1448/419 +f 765/1450/420 788/1617/450 747/1451/396 +f 768/1453/421 787/1457/397 766/1454/399 +f 768/1453/421 770/1434/411 789/1456/400 +f 772/1433/410 791/1459/402 789/1456/400 +f 774/1458/423 792/1461/404 791/1459/402 +f 765/1450/420 786/1452/395 793/1460/407 +f 774/1458/423 777/1432/409 793/1460/407 +f 806/813/229 809/812/424 808/817/424 +f 805/810/230 810/809/425 811/1462/425 +f 810/809/425 812/821/426 813/1464/426 +f 809/812/424 815/815/427 814/816/427 +f 812/821/426 816/820/428 817/1465/428 +f 815/815/427 819/819/429 818/1039/429 +f 816/820/428 820/825/430 821/1466/430 +f 819/819/429 823/823/431 822/824/431 +f 829/1467/432 828/1469/432 824/828/229 +f 831/1468/433 830/1619/433 828/1469/432 +f 839/1470/434 851/1483/434 850/1471/435 +f 834/1473/237 847/1493/237 857/1474/436 +f 836/1476/437 848/1485/437 846/1477/438 +f 843/1479/232 855/1487/232 854/1480/439 +f 840/1482/231 852/1620/231 851/1483/434 +f 837/1484/235 849/1491/235 848/1485/437 +f 844/1486/440 856/1492/440 855/1487/232 +f 841/1488/441 853/1494/441 852/1489/231 +f 838/1472/435 850/1471/435 849/1491/235 +f 845/1475/436 857/1474/436 856/1492/440 +f 835/1478/438 846/1477/438 847/1493/237 +f 842/1481/439 854/1480/439 853/1494/441 +f 868/1495/440 880/1518/440 881/1496/436 +f 861/1498/235 873/1519/235 874/1499/435 +f 869/1497/436 881/1496/436 871/1501/237 +f 862/1500/435 874/1499/435 875/1503/434 +f 863/1504/434 875/1503/434 876/1505/231 +f 864/1507/231 876/1621/231 877/1508/441 +f 865/1509/441 877/1508/441 878/1510/439 +f 858/1502/237 871/1501/237 870/1512/438 +f 866/1511/439 878/1510/439 879/1514/232 +f 859/1513/438 870/1512/438 872/1516/437 +f 867/1515/232 879/1514/232 880/1518/440 +f 860/1517/437 872/1516/437 873/1519/235 +f 896/869/231 920/1088/231 919/890/434 +f 910/1520/437 934/897/437 935/877/235 +f 903/1522/441 926/885/441 928/884/439 +f 897/871/441 921/894/441 920/896/231 +f 911/1521/235 935/877/235 936/876/435 +f 904/1523/439 928/884/439 929/889/232 +f 898/874/439 922/899/439 921/894/441 +f 912/1524/435 936/876/435 937/881/434 +f 891/861/438 914/882/438 915/883/237 +f 905/1525/232 929/889/232 930/888/440 +f 899/855/232 923/875/232 922/899/439 +f 913/1526/434 937/881/434 927/880/231 +f 892/863/437 916/887/437 914/882/438 +f 906/1527/440 930/888/440 931/893/436 +f 900/857/440 924/879/440 923/875/232 +f 893/864/235 917/886/235 916/887/437 +f 907/1529/436 931/893/436 932/892/237 +f 901/858/436 925/878/436 924/879/440 +f 894/866/435 918/891/435 917/886/235 +f 908/1531/237 932/895/237 933/898/438 +f 890/860/237 915/883/237 925/878/436 +f 895/867/434 919/890/434 918/891/435 +f 909/1532/438 933/898/438 934/897/437 +f 902/1528/231 927/880/231 926/885/441 +f 970/1533/235 978/1543/235 977/1534/244 +f 975/1536/245 983/1546/245 982/1537/232 +f 973/1539/270 981/1547/270 980/1540/231 +f 971/1542/262 979/1549/262 978/1543/235 +f 969/1535/244 977/1534/244 976/1544/237 +f 968/1545/237 976/1544/237 983/1546/245 +f 974/1538/232 982/1537/232 981/1547/270 +f 972/1548/231 980/1622/231 979/1549/262 +f 1000/1550/434 1012/1563/434 1011/1551/435 +f 995/1553/237 1008/1573/237 1018/1554/436 +f 997/1556/437 1009/1565/437 1007/1557/438 +f 1004/1559/232 1016/1567/232 1015/1560/439 +f 1001/1562/231 1013/1623/231 1012/1563/434 +f 998/1564/235 1010/1571/235 1009/1565/437 +f 1005/1566/440 1017/1572/440 1016/1567/232 +f 1002/1568/441 1014/1574/441 1013/1569/231 +f 999/1552/435 1011/1551/435 1010/1571/235 +f 1006/1555/436 1018/1554/436 1017/1572/440 +f 996/1558/438 1007/1557/438 1008/1573/237 +f 1003/1561/439 1015/1560/439 1014/1574/441 +f 1029/1575/440 1041/1598/440 1042/1576/436 +f 1022/1578/235 1034/1599/235 1035/1579/435 +f 1030/1577/436 1042/1576/436 1032/1581/237 +f 1023/1580/435 1035/1579/435 1036/1583/434 +f 1024/1584/434 1036/1583/434 1037/1585/231 +f 1025/1587/231 1037/1624/231 1038/1588/441 +f 1026/1589/441 1038/1588/441 1039/1590/439 +f 1019/1582/237 1032/1581/237 1031/1592/438 +f 1027/1591/439 1039/1590/439 1040/1594/232 +f 1020/1593/438 1031/1592/438 1033/1596/437 +f 1028/1595/232 1040/1594/232 1041/1598/440 +f 1021/1597/437 1033/1596/437 1034/1599/235 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..b736f2d6d3e0a89ddc1b878cd052cb4c8d8e61dd GIT binary patch literal 237 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf?_mQTm-$TmhwgcAxGp4hbn%YwLNQLZ=83a31pWvMDY)__6so*yWO?|0YSrRZ z7pslEc}%_@yL)pRZ$p%}LytoL=Crk<WWUP zE&^Y2@1OrK_u;$A&y3sCe#*5ibYz^^FQNQvA3H?R`B|H z?gPzsfr5MS1s1a16UDb&d$X%=vgngFC%+y$su||$#(Z!6r0!sQv6*WgJQ8tl{&gb5 n;oL62dtD)?E1x9)Ty4Y9xUpIJbX^+I$qWphu6{1-oD!M<7mH(I literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_jhp.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_jhp.png new file mode 100644 index 0000000000000000000000000000000000000000..0c8b0d9817bde4733b03c4febe30a0fdd9c17122 GIT binary patch literal 251 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf9x+U%Aqr0MkHP*q$r>7AJ4qgvyXl#7=qTZ>^AW=9c z;Q!GNkIvPyrE=D_o!+YRf8)x7Sq+c=78jg-A6J`tVME=C1lr*<{an^LB{Ts5m7{dU literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_sp.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.p9_sp.png new file mode 100644 index 0000000000000000000000000000000000000000..d3a773451935a7dd9166ff86e6f5630e0bd5f25e GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf^6MqPG%zsuqn^ScY<3XD zv#I<(wJ|=RH3_k0x5>ee?GmoZ!1`PnI~(W6br8-qg_?d|Li8+|MBZmfByf! z_wWDz_3Qutuk?9t@7eaIKjp{&lFl3d=N~U&o2fWGJM!Oun`NKt>s6RvLL~q1wauKh lQPOEsT8i_DYd*mY46_rOyI+1dTn2PHgQu&X%Q~loCIGwOXYK$1 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/henry.png b/src/main/resources/assets/hbm/textures/models/weapons/henry.png index d8cd0aa3a17a9d1596e13cc222ff668be5e27d91..d822e76658c33e5958a2f91dd5487344f49c9443 100644 GIT binary patch delta 7082 zcmV;b8&%}fJ>xx)Gy$5CH6aNl%9l1l0@tc!kzW^o89~v98^?)bTXqXX=oh%fvF2N-j+8?fYHQ=!h64VXnfZ~Y(OBTzrOWqH2;M;ADsyMBM#!QOi5fLX#ty49=lgthK~gfC8p~IARr`Ab_I)jy@%< z_cX3x2c_#0nmt3U#33MJNYxWkK$;2GR5S~ccdY5P__vcvk1g89gT=Q}UZCqI7IMJGD`;PbCL>)KfZ7|smJ*(hKY?_0DKQmH^; zD$x3tMigp>(h&_<>+uexf~6u|rBsLss#d&73{{xLz|>Z}^?2`DZ3SXrqb4*oR0d9e z_Z77cdcb=+Z)jZw+u$1LJPbPCevOr41W1TABr1x-o5Vfuewmk_dI`FV|IW2`_xrFi zUuYn{c*m~$UQT$sZLiy`9%ruc)O9^L4 zQt1&6dF6;RsP!~8;;SV!4O$bnG-%v^1mo}qW~O0d<1Ajlsh}bRJWyzTLDeIr$5j{x zA#252LkxklrX^Q{RKx1DVjT=B6jhE)GMfR4DqSO_P&geSsW5E@rftVe4deo1Xzsk7 zW9%-l{a|j@7TJC!i+Z)!lNWyZ{`%NkzIV?jyOlV-sRRpP!NJU~5`ZI;@YNE3s5BuW z7*aK$kxmodM!YK|1Amr<|Ml7?v*JJsxe=_dc!{)ShA$0=S3Ro}OJg&&RElw&jV)*M zgiqqaUE*wv{O`?*IFA^ma|YFjF9U7kz)rDND8_U0tddd!fmYHDyKfchR>5r- z-}dcWnOo1TR&={X-R*qtkG}DLJm3GuyIALc9w^KC+(Yi7M(@-=x|;Kxd?hnmnUXeo zPSG;$6K`k>RutzPs)|*GMzM{f#PRY;2T%duqAG;qxcyLJVl1{QYJ_IuFnxx}DjkX! zr4++Z8wIf2fivnR*@Q*#U8IMe`O60bx<&P6R}N0GL{qqUJF5gGg!~mXKdS| zny}Vh^F3aK?bh>3pSQ37=(g?KKVRv5?)%?(7k~7P=K*-nuryA%ks%P&~mvG9IXS0g_|tb$rZ!3vl4P`0e7HFE1j} z?N)c|IRLCEDHd9zbY#Gx){tfc>MYP9F=0DHLI^{}O@zi~tZlG=*%EaFq@!wJmJO~I z$`GLyhN=((AY?MLy28|EG%3XzJc6^(*i7RpVP;StNVyxY?;ThJQ3<&pt#I;8o0iTN zjCFJ}P_TG63beWN_G`M|@x@oK>GDPRA(Qkg=VAVcIklHJm(~@qLeN57RagOF^6=Wkst}-3q1}j1E|9AbSpV78=K? zps^RPZ@-N|Qq^RPXmZXU`_ncLaHHu0Ln!!49EzHt?=#1SqQ5xx>I{wBlFD}xD zAAY!Q`)n3jx4?NXYjpNapxdq2c8=Y52jBSQ^L+dF?S9FN1a{~V?t1Wn^EYs-NOwK% zGW^}oJ$Bu?Ctv-=ch^(1g2yoRm7n~~Z{HeWx?f#<*P};|?s?r_*%yKC^jO|bbLZ`R z`}etpgfu6A{UwiQF_3#A# z+CRUwg}T1JzUOs&WlsVP-?*#3{M1YP)`3LKGuv>sa>N+D_CoB!k|>ktgd2ygkd$8Tw| z!lixE%dNW>_9W07HG;7yFF*AXANXf);_F}9{oYt#!8*`F9~{P3CXL~%A9`mc72f)( zFD@*9nlJqPduoaTJ}@=H`kxC$BY$ztlaeLWp0=+f$#@Ux>?X;323oQTkH7!^nxdr_ z%g;S>{rbkYItR*&zZO1u_wVmGt~|G_$GC&dFAE95dNX>t*5cJLsH2-yzV=J+s;Yse zopR5=`od*J^Mzmd=~__0FvYPkQ;M;C*Q#ZIDoT<-YXt8>Y^J1&_z8n+iG3s~q*}pb zCIz1Oz=?XeGu-pBgY8)Dr}MKYuM2_h)c@TYA2dgvF#vz?PrtvWLBYUuVks&lV`+S5 z$dF6H*$%17GY`JIp6r#Nm7n?C1V*UN-{WO_+10-Y}z5ass;wX<&!}9H_BaZ=mlvmAWz2u9@PErK_8?l2Oeh z+wp30fT1;t%a!S50ve$-v{GqZWFxg?3T;hnrb@1k*OD5Es9`&@Kd0y zGUQ6}6HuXXmM{xE`GL1r6pnxT){X+~griwJYh=}m*yOy?}A^mu`lR?rj}OhXtF z2~WzERbQA&WLAWs2+7`txJ*cyWQ4Xx+NNPD;8G8M9D0mJI6W(146BW0h?ZCTO0gEH zhG{y>O4rbF8t;XKfhrISG&<&g0Z>UKLP+Pv;e}2dU;W@aYUd24D))T+%dZ=;&OQH~ zMwD(zfo>mvzLGHKVp|(a?$| zs3F)EOr>*zDT?hJQ>#!Nl!ia}$0sTRr#21ued=I4SJ%QVDNtBklv|lJkg_4SK=G_pWQszPT3e{x@U1@yYiduZTyblA>Rr!Cq%5Ao=HW4Onh0X+0X%Ls80C7y!OSz-up6C>Rix6r{G9FFJMs4YQ zW~Hh4Vwk0j1(1QE2)=13)o^AofQMLU9YBi>3A@$+nUW(Ifts+5QU=G7l@2shYUY^_ zy|czB*e39nPaF)#>RK7o^H1HgSoHtUBN%(9xl&@tPRtWMu9cIoOCh(^c32pN^@OW=w3y{&fM z^W(pM>kY4(=N@wPYDBYj%=;HU_d^RG_t~HSANy`Wuf{50&Vug5Xa4>>>ytALO93vE ze+?-!{f)glR{L#9uWLT&qQTq!vY>34zg-`^y&mI^`JC=u4}0z*2kgGjocI2_3t!$- z?|Vm++YMP*?1Z5dd=;#5kb9(NrU=dmH79V6!%anu^0g1%Uwswc^wHNYayYBLSUGd4 zf3bC+8|f_Vix5jnmWxGl#d2~{$2TdHd zk;7zKX+R7cX`IV`xDis!WCdyge=l^dAO`%jA*IoJwr+HOhM|l<04gaA1S}KZU`-d?J0DnR`p1nN z@^mL($(;P;^Sto`cP)I-+)4WE&(Hsu)rF3G`Kg!oB~9m2(5FdZg7$HjL$3AlUqPk4=!QHEYJpAy(_2|)~?3ef!!2##I z+siu;&pqVo2cCV?x#i#An+JF35%$yKjh*&8_w9W9!SP4NF2FPI|J(I+5t0t9*+ZPl znUFg?n;f!dX^W$1B@G7OfEWX|rKn=P(qhoOfh~ZvoEaP&$>6PWy0(Ahpd5CJluYLx zlmcbI8X>mAtU7$jsIyFos8u3s5Hr?IXuU<_jjK#@Ei7c@Prj1R_d8Dhg?zr>ay2w} zKCo|(_?tNzwFvk8=7lLFkN?AWSFlXWjLAgt)sal0SC}|UNd{>gB`O;=;f4k)ipqqU z7OXK?Gtl~mkP=5+#y5YKlnf#hCXJ$lKmhFwP4VCyMGT#{cm|SoWBoWP)+lE~<;Na= zZP%)H2ZewLL>dhdmy_KU5fUwavszfqj{)P+%;Klt$d^=x0su`(6Gdrygx zFhqh*Fiyxx$;P7uQi0+O0$2>K_jHVDgNlNg(b;A!a+VZDv8I0@MM+X28)l_Ji=`hT zw)2P@Hu6pX`W8kO-SN$z$1ED?zTU(aUp@a1MzJnDTzeDw(T{z_y!AJqFw@o{&M?b~ zO%-ASqX~;*yuo;n^_F5A)J_S;BV;-X)0)s6a4vJ$kEwz%!!~1_Hr5P`&R5h-9}JN~ zupI-Aln10N77u^kjq5$^IcH&k9#n2cq2BX}FPpo6{VV1zAODhxQQ6Ew#eflVg}x@v zhQgpNB^jp1(3!%tskBp1YYd$oga1e~2Kh}(W2UUwhGLYI1&kmQfvmJHQZ%q3s}#{| zYX3Y?eO7sRq+-}CnXDbNFr#2-+X+}mrX^ItG_TPm$6jR@*jpf-pGyv=mZlMI9y=zG8l z-E>0hJ*R)NurWYL8Ho{)aVT{kIC}Kxb+@Lk3xU4;)JvBnjcgZc_{Lqgj8IQ}>T&Z^ zpZjfd;*l?z&O}rb(YR4tDM8Fc28vZu38<+^449_Hw?ZlvRYNKk9}~s4l#uXt#+na& z+v@(_it8!T*UcmT1JAyRuRmBX34hH$AGAs+i*kSWZ(JzR^X!LCRO=I(%GmcbfuVNT z;INIQkChZ7UJ5hq2qLsTQ&M8m6l?`A4Tt2~ouut-f8_5MdlKk8ezujHS)1wDeRuHn z2X7ezxo7VF#F)?d)%X6b+WADPhQ?%0=KnAN z;@>4I}5*6-VZ~XXg{LY0@s|W6{lt^eh zR*7H*hoJ|^7HU6cKbgI`9_#Dt3uQ9R_t}4sywQCT=nwu%HqSlec1<`r#vPn|CBqf^ zf?Gx2{K#XM469!58p|ICoH&;Y@WlJxR?$LIp=&Ii6_QpIA>k-#b5G~L+BCZZBT!i2 zEga`_F?UZ&xyTZqdEk5raJV4Ool1buw=IPVZ~OEU=kL!mzx0m!ryB!n?HVO*pf!I} z@cieG9_DX;WHcPl@zO%c$WK50^hNs|J$kgRudkc!%X99%_ugyn`W+}Qeyb%ucHbSu z7hk=iIJd6bZpD{kg?oPW!i<0~{DXH??*~LY8~wh;La(d;ap2;hbFpm|+HT_9e(e0; z{J2{+ymUSIsek)LbK=v#Yfy)H$5(%T`S!8a>wS0Z$bC~$cjM7VAFWp#hT74B ze)F5(yyzr9{KG$dLx&7^>eF6rO4xR*dh(V1kNw@MocPRz>Br&k+;vU&XM1RAH`dqJ zuex7qwu|v{%td-5M`ZT9U-{p^cqc=z;0u`v8$%|<@r}Wbh&Kju#5WF)!8LzE>=Uz` zXsu&)+7jX>8v{%mi?@QYi5wc*ZoDmC5=9#V=iUTo22Kwar6F4(sbN5v*398fNkc|e z`L@ns8bclm*0va{*mFg0t@VVUoXt>jrS&a|8EXYh(}IoUDA=mFR?zBcoG^<68=>I+ zl$0|fN=b^=j$kZaEG>a)Q%Qfh@)Q5!&vy*hedCj(|L}AF^(b($^Rtscw|ep01-ZVy zeo0?;H{1&^ys+bj%Y_Oq_sE?80{2q&<8qw;RqxY$diR~*i}m1Zp(i31T9*h(n05wl z6pZIo=~$HnK{?b3hp-e8WuAdW$s=ZpG=V`AcJQD|sWarab&2680Q({_`1ZZm9tUs(}r1!lw>%qEvu75_+b-C z0oz)qW3F_=b|ljC9pXDIhM=`a+2_Qcg_0!D|KvN~)v+DMgyL z!P*vzp*lmT6>u?7AS+ZVjR<&0*ZHyTXBASN(3XHtGsG#@X2e=%0YV>;I-wL{V^&B& zDng$#LlI5}lW-X$Antwh2AWk;Hdq_c;uv%+4&kjMl^dIxxM*KgjvqgM{*$vAA_|TJ zgI3zsBN)yEliwLz0lAYq8XicWe%kERkDRZc?{|fBE%cqqR?|9P-f7+IgMrzsawaMP zSZxx{Hsf1_T_IV6t%cSb4zElJ(r~(W*rKEeB?a2X(KG-;3H98Qp&B^>Oq1IhFn{%a z!n*B`^X*>Q_RzqUoTO`UXnyH?UV`rd?!Iu&ldoLcIk&bi-3A-QP%^Zl<8)sW=&WNl zRBTbc>o$wGhNOxQ0r5hv6+dYpCR{1ZVx$%DST>TuQqih7BUtOP1*T1A(8^iuuqM!1 z3uZt~Az{yzaBRlDfku+)2-T6wCVwF-gKpxT<&ai7tN5x6A&pZzx`M9}FCEf4QVHas zgcwO$@XqjB9+OAJSf+k#qZCM?5DFBr;5AeD%{nu0@=ShNs-|6xP1=c1N&3_5p6trS( zq7)&KXr>*QOzs`8o=UV5&jpVJE5ezOL14AB3_-ytXNR!_PA+4D@s!G{Poye{RH#sl zLtpV~I(MKOWf06B; z{a$kUwsQ37(R#H(+Wp{MRA9%p->fz*S&a4d_0fypx?=19+n1LtxzT(}dGSkbJ-)@f z_$9X*=IGI*^$l-$1371M&ZLyiFE8>LF0M9mxz6&U887?IZezdq-hX@VvJZNISzlkj ze(82MOOQ)mUtE`j<(;x!ZkDsP+jW-?;KAm)TF@m+_Jivp&}Eov$$qgPkN6#(qV2-G znSIjB{YaMm z(~^;;7r*4dvcA5)FMk5v9t6MXb()sEepq_(OAa*Gtq-~s=92y3iaDM)GiP$QT+T&V z=6oJ}cKe=}BS}jRG)sXlInXQxy5vB!6zGxz&3P|=`*7fv*?Kp1yn4&zy&c;(=b*NK z$zohC>LYOB%iUTL;(8Y*y&C3i*($cJ?c1rX2dVu__Kw*q&VQ{Nwh7?Iw(1;Pe^on` z@mrLo1wGhYG0e2n#%ql~?k775Y$>{L4VF&Qk^_x{o!`)~Q@`(KFwcbA>m&YVw|~iE zT<-gH>+9?0+;Cvs?jX&#!HrMqo#$xI+ptxnTPmRJ>d@WH_AgnCE9K(OD=eQE>3qX> zi+VGYdbf&n>ms`C+qWOH_46_*`PSro9P}VLMLTh&_8s*0FWDPcOt-t4la?MS6t>+} U<7mucN_y7O^ delta 7044 zcmV-~8++vAJ<~mqGy#f{H6aNm%9l1l0@tc+kzW^o8bQ&A8^?)bTXqXX=ohZ z-qW~(9h9z1X!Z=X5{H0@AyrRE0cj>!Q_&n)n{+r4x>oR_U@}QtD2j+M%Z5Hzq-JPZ z2o>VMbhW`tVKWp~Y(%ZcW`i2V8iTme9tEv`w6>B$;Y}YsOMKx~UV8FHzW_5 zvMUK`r|nz$=nm^Y2Iiv+p6`M{pZLVxmz?OtgU`M0tZQctU^qJ{=c0gByl>G`NTmXW zsX*&n8d0bjN=Gzct;ai%3YLm=l~N%ls9NzRF;rm|15;b^*5kcrwH1hgjhfKVP#HLX z(^u3w=mGEPyrFd!Y=di{^DyXm`!!aI5g;Mfkf%) zgsc^74KW1HnU-7)QVpxqighrkP*gcG$!rEFs&tKzLg7q=q{6frn6@1=HINI4p*emh z$Jkw9`@!6*EwcS;7WG=MC(r-l{q@nee)pbFb~|xqQwbKpf`ge|B>+bx;j1NoP-#L$ zFr;cgBb_F^jd)i`2L3Dy|Le6)X2pRNawAw@@e*mv3||@!uXko5b4p4H1X@Wq?Y>p0TLrgW zeA~BgWo|vUTG8zmb+_}mKl=KAbA0a`?`ECUB;C61R*I)DoJ7F8h>$DM}?6JxPeQ6n@Hhv_p+R_Rc@ zD5V&N+K?266e!l=JMdKrvWnEeEcSS9`73L1sDpyRn}}^1lCh)^@LC9en!$ReK4aS! z)r7V7y6^EKY`30Q`@DVq$F^bKm>MyZNK9KL^0O{{1@u_&u+ zf;y!1cyH+31ZN7JS7sXnU1v!u3>j=AgyIPXlJP*r3y>UBuj6C>n}7r7#cvnqe0dR( zZnwHy&jDaXNwLrxr6U6lwT3hsP-lS-i3!^o5<(a%ZXz@`V{Li8SKxVT79 zojO&weKw1%Tj0D`G&=hx(CyZ1JIC(3i?4s`IllFKcE98$0z33DcR%>Rg&Vk4q`Mw> z1^({mAH8ASldt^zd+O;~!DE>E%8!5cH*b$H-7hb`>(Qe}_q=Ye?2ABmdMt0JIesVK z`aNzTAD@dEx^a>JoAy0wI2#YPQ3lI z|7lOcdF(^)sAq;u+ckI}`Qz6NIV<130!Jhut;be}Qb=0(#y|P-Is`*9!drjkvD;d# zaCx8fO6#tNJqh$?jbJRwOHaPY2mjfd_}Z6tzc96g|~hB zw-y$E%@=?6y){JvAD9|p{m+G>k-xa+Ny!pwPuo|LWW0xTZjP0`Ye z*dNX>t*5cJLsH2-yzWNLAuBw5i zopSHL`r;Ku^TnV0$y!jrFvYPkQ;M;C$Esz2DoT<-YXt8>Y^J1&_z8n+iG3s~q*}pb zCIue<;K_QpGu->}gY8)Dr}MKYuM2_h)c@TYA2dgvHUNL{PrtXOLBYUuVks&lV`+S5 z$dF6H*$%17(+|F>lk7hl3}Q0JoP(l&mnIBp)mz-1@Q)d z?F-@@7)RAavcjO?%{X@7H9}(@F%5j>!#`eE+-Tw7_$!NB^Vc)43xRHBCt=P>rDDY* zu9AX+t@z~FEEy{n#IYG57fUKi%1SVfFMi;iwbRT79+!K3*YawHB#x=IOxz~E2stEd z)3Vw%D2C0Uf?r`pDyb@36KW1)%`gssX=3rsIOcDQ#Y&HF9K$T|%tubvAth`zy!BVV zd?3WSpU%&sylw=#n=t20yoTNJ^6;HN-Y zWyqD{C!j*(EMXRS;)Cy~D4h7r?HvW!3%9*M7ZK*1Gn)pjna){K>G1+9t)M9|n1(PU z5}uSRtG+Om$gBuM5t6+FahZ@Z$p~$Yv`xcQz@;AiIP@5caAsD(7*-q05G}9vm0~SY z4byavm9C-V4BiU~163dvXmref1E7*fgpkgU!wa1_zVe}W*3KD9Rqp-7Z@+HDI`{l{ z8d16}1-gCw`D((PlS{$W!q8`$w&84mLn|<3L)Hy820@Fk+Ek`ZON(NC;7{WkzE)b4 zBR-SL3<^xe;-r8pSS+>~#ipg=yOvTTeNjLl4_NP6@s7?_ylY81W<802cv9J^Oszt7P#XT=AD^rUoZd9t_vwS}TwM>hr9feEQEp|@K+1-Y3sn`| z3a4iQXeo@TbKWJqbyy5NhNOm+l-4A?4Or`;CW4vZO2O8I7lXGEqyeCqDVlp?Qi6Ig zN-{7d(KQxKA;g48i?5Y`q#3aeEy8T*$1(IU;Fj;gpx;x@97V} ztF}$$hyV4Bjji53Ui_hlX^uZ|&Bq+O@7>p(eRDnB^KZs@;}h>YQ4xiD*QHW8|0BRI5iY|MIAS3KV}sq{lcs^zc)@d8CDB*a=Mg+H4$Od2H@ zMe&Rr5no z^@X}q6311KJ$@%VdHrMd$FAqNFFbeI`jZb|49GwJzIWF%8Im=Gm^o|{-zJ3|GZcsO z1!OCh(^c32pN^@OW^VMzrA+e z^P|6d`wg#}XCHF)T12yT%=_m){{ssj_qm__ANy`Wuf-}~$%5|0XaD}Y>XS1KO94KU ze+?-!`?bA0R{L#9Z)iT~qQTq!vY>34zg-`^vmWEF`JC=u4}10@2kgGjocH~^i(lT8 z?|)~L+YMP*?S!Eed=;#5kb9(NrU=dmH79V6!%anu^3@OBUwswc^s(12aX72KP&s?K zf3bC+o9Qg=ix|%@r>5B$%OB~9<*O}utzZ9jPH39npCk9+ie z@2!*E4`?(ak33S>*VnJQ-y*oTd;#;dpJd?#7FzI?I%ZS|zduF=O3?)>|~*yviik!$L;>m6!8{e#a|+Az$dXTno+d z2lnj|e=A3$7UAAszc_{Dv48lU3YKY^F_|d7I+7{$3KM53$smoRL}jBU+|Xb}QJFB) zf;9$f23p?`QsRiq_{M*dl0js`q)~Jb2%w#zDIT1oh@tZq&p^^{tRF|k8s%K5{K%=- zcCBi6P*_NyV>e*E&X?yPsf-xs3@2joo&V46~fr zR3RoXny@Iw8;ti@Zz;Ax?UZ0VLZ+iItqIKm=Q4-=m?{V}Y%|7bW6i+md_~Rl!4N3~ z+cDrsc|giy@!)^mxY5I&a~2lpLFIN7>b;-*ZFA4Be%ZYB6JIhhDw|oT7%)Pv(AUJd zP#CnOB*WAgI#ZZ7m3HcBjiIw+@E>W$Airs8%#;<|P>hnYfDvROkd@X&iUu}hl_Gjw z?VktgZ-z*3+jP6_%thK9zw^T5{~$m5=bZT5#jK;p-+zCydTZ!p98d4$EUjyq8bLjT zT!|vA*h(siU>Yc(&eOR{Du&IH$=WdsGYW>boq&a8T0#|Eo}o0?-R>>k{1uap_k-Ks zf^O$_w5W65{+Y+jeV_VGb1n<1dbBoUIdPM*rP7Mhh@gH2YJ+IN+f3&?$v}vKz6Y$( zO((S8b2@(u8v}%tkr)9Phf?=}qeqY4aBKRy5a>%!zIa*E$abNIuit&!2=(NrA2UDk z`QJ1rAO4c*Ohh#ijT^O<62weopjai9fSQWLfN5HME2L6UHKbzkF;Q$w2?=j!togvV ztnTlvxRD}#-8|wy_{^L5+Jp77@YnqFL92waDEEK-+Qkw*&wTh~wLYP#jD1fN7;1+N z4%=AzSV=MBr7+WuAVTXiB_$?J!B+6na7eD-N!rf#NB(}XCxOo6XIr_IwV96HcNbrK z@U}6Kd*+@`j`^HldEeivolm4{XiVlz9`HR_IuaAk&JxZ>S`o0&3aqU(q``tU%*u@^ zemj2`>74n<)106F>7Tyle(IhC+P?A9D$9Gxu-|VEdLh>RLWBKENljm~*9)JJaD_Te@bd9C6Leh#NBpfAe?&{`KhO#x@4cDM~~L^^>wp-dCr^P{O0TK`W+}Qeyb%ucHdpZ z7hb)pIJd6bZpD{kg?oSb;*5YV{)2Z`?*~LY8~wh;LT{-5ap2;hbFpm|+HT_9e(e0; z{J7gSymTY@iGTZB=HzF7*PssZjxT@z;+X;6f-htyYz&zY$2SH$BHkFt5#KmG2G@TGu}{o$ zqP33IX-kNkYz#1MEZz#nCUR(KyYaSoNfd1eoPQIX88|aol!k1Dq=o@uS~G_`B@G!> z!3O$#=XqhPDzT0yI)al$MPY=naM zQ&P@|C?zRcJA$!zv9tuHO(lQj%8&hvKi@H2_w`SW{=?7w*Q3Ct&d*K)-Ri|}7v%c- z`el9D-Ehx8|NM>{t`sV`(j#;J3*1Z9k1KKESG`a3>D{+~H`ar%g`S95Xk8*CVcHqI zQ81p`6rrX+39rec3)h0R*POlTX! z*#PJI0beT9uA?mjB#)RW(gX%g*ujG;rOuG^F9qzhkdkATm0|?%6zK8AppNlX;-y1< zCE+Ql(wa`Ab*zda&R|OcKP5$B)%Q%j#gU;Z)5c(qJblHgF>m<-=IGIzp9k#V z+TvDMv}XHY?SAg_KX89ptnGLH-k-<>vvkIwBXiLDS8R8UcGh!{X0HF^^oluIfF)Jh> z6`{|Wp$M-8lW-X$ApU*x2AWk;Hdq_c;uv%+4&kjMm7ANHxM*KgPMkP#;gho&A_|EE zgI3zsBN)yGliwLz0r`_V8XicVddlq7kDRZc?{}4RE%cqqR?|9P-f7+IgMrzsayBXf zSZxx{Hsf1_T_IV6t%cSb4zElJ(r~7C*rKEeB?a2X(KG-;3HAJwp&B^>Y?Ip>Fn^7H z!n*B`^X*>Q_Rzr9oTTe#~l`L4M`Or0^)^SD}K^IOt?~*#YijQv1}xRrJ_}FMzGdn3rw5Lpp|plVNIa3 z7R-Q}Lc*Re;n<9Q1C1op5vn7VO@BgG2HnIv%OS0FR`FFCLK>%bbOm1{UOJ?8q!P$M z2{Dqi;GN;MJSLBbu}uBgMk$a&ArvTL!FiHqW@jrK`P!#}T#q;x4NtifCr)tc)G1(m zoIn5k^PD(wf+wDM;*xc9uH>-nwJhSU>|>be81U$C2>$$=i<9$6fwf6RbAJLi1+7?{ zC`CvlnrR0nlY7UjrxUHj^T8v*if}e$5LoRjLr^fvxnV4UlgpT3Jf*Vg6R8R!6)F_t zkQmsYrKmx16l3Y5($)r0I+Tf&3t3666J~wGWYr&TmL6=+$>+9<`E`Qx_(G;vDOLpUi z2y}b4%aSE~<-jE@FIlpc8zRtUm}<#>u^-8sJ32+%g?TIcq*wZpEc?j^pPN2u?#*w0 z^G&-D%Fst?G;JcHL$F z_+YcXzP>L4-5vzLg z8h-^Ze*19X^*Sf}&DGj>(A&RcZwOrca<^85xY314uZ4MAwkCIMZQo99JxJ|evUki@ zac*oA$U{u}iAkDYI%}?r`=V;E`uvMg6DxmD@(A~=R zFIkMM<>JmOEME}me8YB&dMlH9w~BP@y6xMyAG7uIGAa4? Date: Sun, 6 Oct 2024 22:37:16 +0200 Subject: [PATCH 49/63] greasy joe, horse leg and :b:untsman --- changelog | 3 +- .../java/com/hbm/crafting/WeaponRecipes.java | 2 + .../java/com/hbm/inventory/material/Mats.java | 2 +- src/main/java/com/hbm/items/ModItems.java | 8 + .../com/hbm/items/weapon/sedna/GunConfig.java | 27 +- .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 34 +- .../com/hbm/items/weapon/sedna/Receiver.java | 20 +- .../weapon/sedna/WeaponUpgradeManager.java | 4 +- .../weapon/sedna/factory/GunFactory.java | 8 +- .../sedna/factory/GunFactoryClient.java | 103 +- .../weapon/sedna/factory/GunStateDecider.java | 13 +- .../hbm/items/weapon/sedna/factory/Lego.java | 51 +- .../weapon/sedna/factory/Orchestras.java | 158 +- .../weapon/sedna/factory/XFactory12ga.java | 90 + .../weapon/sedna/factory/XFactory357.java | 16 +- .../weapon/sedna/factory/XFactory40mm.java | 72 + .../weapon/sedna/factory/XFactory44.java | 56 +- .../weapon/sedna/factory/XFactory762mm.java | 92 + .../weapon/sedna/factory/XFactory9mm.java | 49 +- .../sedna/factory/XFactoryBlackPowder.java | 2 +- .../items/weapon/sedna/mags/IMagazine.java | 5 + .../sedna/mags/MagazineSingleTypeBase.java | 4 + .../java/com/hbm/main/ResourceManager.java | 7 + .../com/hbm/render/anim/HbmAnimations.java | 2 +- .../item/weapon/sedna/ItemRenderCarbine.java | 114 + .../item/weapon/sedna/ItemRenderFlaregun.java | 111 + .../weapon/sedna/ItemRenderGreasegun.java | 69 +- .../weapon/sedna/ItemRenderHeavyRevolver.java | 135 + .../item/weapon/sedna/ItemRenderMaresleg.java | 128 + .../machine/TileEntityPWRController.java | 2 +- .../network/TileEntityPipeBaseNT.java | 4 +- src/main/resources/assets/hbm/lang/en_NT.lang | 2018 ------ src/main/resources/assets/hbm/lang/ns_OC.lang | 2963 -------- src/main/resources/assets/hbm/lang/te_ST.lang | 1262 ---- .../assets/hbm/models/weapons/carbine.obj | 4039 +++++------ .../assets/hbm/models/weapons/flaregun.obj | 2850 ++++++++ .../assets/hbm/models/weapons/greasegun.obj | 3197 ++++----- .../assets/hbm/models/weapons/maresleg.obj | 6124 +++++++---------- .../playground/stainless_frame_thick.png | Bin 0 -> 332 bytes .../playground/stainless_frame_thin.png | Bin 0 -> 290 bytes .../blocks/playground/stainless_frameless.png | Bin 0 -> 215 bytes .../blocks/playground/stainless_kit.png | Bin 0 -> 849 bytes .../playground/stainless_kit_bright.png | Bin 0 -> 764 bytes .../assets/hbm/textures/items/agar.png | Bin 0 -> 292 bytes .../assets/hbm/textures/items/agar_base.png | Bin 0 -> 275 bytes .../assets/hbm/textures/items/ammo.png | Bin 11146 -> 11226 bytes .../hbm/textures/items/ammo_standard.g12.png | Bin 0 -> 289 bytes .../textures/items/ammo_standard.g12_bp.png | Bin 0 -> 166 bytes .../items/ammo_standard.g12_bp_magnum.png | Bin 0 -> 217 bytes .../items/ammo_standard.g12_bp_slug.png | Bin 0 -> 316 bytes .../hbm/textures/items/ammo_standard.g40.png | Bin 0 -> 364 bytes .../items/ammo_standard.g40_flare.png | Bin 0 -> 242 bytes .../textures/items/ammo_standard.r762_ap.png | Bin 0 -> 294 bytes .../textures/items/ammo_standard.r762_du.png | Bin 0 -> 322 bytes .../textures/items/ammo_standard.r762_fmj.png | Bin 0 -> 314 bytes .../textures/items/ammo_standard.r762_jhp.png | Bin 0 -> 269 bytes .../textures/items/ammo_standard.r762_sp.png | Bin 0 -> 315 bytes .../hbm/textures/models/weapons/flaregun.png | Bin 0 -> 3459 bytes .../hbm/textures/models/weapons/greasegun.png | Bin 3335 -> 4847 bytes .../models/weapons/heavy_revolver.png | Bin 0 -> 4462 bytes .../hbm/textures/models/weapons/huntsman.png | Bin 3378 -> 17694 bytes .../hbm/textures/models/weapons/maresleg.png | Bin 4117 -> 10499 bytes src/main/resources/pack.mcmeta | 18 - 63 files changed, 10134 insertions(+), 13728 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java delete mode 100644 src/main/resources/assets/hbm/lang/en_NT.lang delete mode 100644 src/main/resources/assets/hbm/lang/ns_OC.lang delete mode 100644 src/main/resources/assets/hbm/lang/te_ST.lang create mode 100644 src/main/resources/assets/hbm/models/weapons/flaregun.obj create mode 100644 src/main/resources/assets/hbm/textures/blocks/playground/stainless_frame_thick.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/playground/stainless_frame_thin.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/playground/stainless_frameless.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit.png create mode 100644 src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit_bright.png create mode 100644 src/main/resources/assets/hbm/textures/items/agar.png create mode 100644 src/main/resources/assets/hbm/textures/items/agar_base.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g12.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_magnum.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_slug.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g40.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.g40_flare.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.r762_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.r762_du.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.r762_fmj.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.r762_jhp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.r762_sp.png create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/flaregun.png create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/heavy_revolver.png delete mode 100644 src/main/resources/pack.mcmeta diff --git a/changelog b/changelog index bfb7a61da..f272bd3e8 100644 --- a/changelog +++ b/changelog @@ -16,4 +16,5 @@ * The conveyor grabber should no longer skip over items when used in long lines * Fixed a potential crash regarding crucibles * Fixed compatibility with EndlessIDs, biome changes should no longer crash the game -* Fixed GL state leak caused by fluid tanks, causing some tile entities to be rendered without face culling \ No newline at end of file +* Fixed GL state leak caused by fluid tanks, causing some tile entities to be rendered without face culling +* Fixed a bug where using too many PWR heatsinks would cause an overflow, making the heat capacity negative \ No newline at end of file diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 625c587fd..e463f87e7 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -37,6 +37,8 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_pepperbox, 1), new Object[] { "IIW", " C", 'I', IRON.ingot(), 'W', KEY_PLANKS, 'C', CU.ingot() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_atlas, 1), new Object[] { "BRM", " G", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_henry, 1), new Object[] { "BRP", "BMS", 'B', STEEL.lightBarrel(), 'R', GUNMETAL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'S', WOOD.stock(), 'P', GUNMETAL.plate() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_greasegun, 1), new Object[] { "BRS", "SMG", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'S', STEEL.bolt(), 'M', GUNMETAL.mechanism(), 'G', STEEL.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_maresleg, 1), new Object[] { "BRM", "BGS", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', STEEL.bolt(), 'S', WOOD.stock() }); //SEDNA Ammo CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE, 6), new Object[] { "C", "P", "G", 'C', KEY_COBBLESTONE, 'P', Items.paper, 'G', Items.gunpowder }); diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java index 4c696bf7f..c31cb105f 100644 --- a/src/main/java/com/hbm/inventory/material/Mats.java +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -133,7 +133,7 @@ public class Mats { public static final NTMMaterial MAT_OSMIRIDIUM = makeSmeltable(7699, OSMIRIDIUM, 0xDBE3EF, 0x7891BE, 0xACBDD9).setShapes(NUGGET, INGOT, CASTPLATE, WELDEDPLATE).m(); //Alloys - public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT, LIGHTBARREL, LIGHTRECEIVER).m(); + public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT, LIGHTBARREL, LIGHTRECEIVER, GRIP).m(); public static final NTMMaterial MAT_MINGRADE = makeSmeltable(_AS + 1, MINGRADE, 0xFFBA7D, 0xAF1700, 0xE44C0F).setShapes(WIRE, INGOT, DUST, BLOCK).m(); public static final NTMMaterial MAT_ALLOY = makeSmeltable(_AS + 2, ALLOY, 0xFF8330, 0x700000, 0xFF7318).setShapes(WIRE, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK).m(); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index d98aa51c9..88cbaca6f 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1627,6 +1627,10 @@ public class ModItems { public static Item gun_atlas; public static Item gun_henry; public static Item gun_greasegun; + public static Item gun_maresleg; + public static Item gun_flaregun; + public static Item gun_heavy_revolver; + public static Item gun_carbine; public static Item ammo_standard; @@ -7038,6 +7042,10 @@ public class ModItems { GameRegistry.registerItem(gun_atlas, gun_atlas.getUnlocalizedName()); GameRegistry.registerItem(gun_henry, gun_henry.getUnlocalizedName()); GameRegistry.registerItem(gun_greasegun, gun_greasegun.getUnlocalizedName()); + GameRegistry.registerItem(gun_maresleg, gun_maresleg.getUnlocalizedName()); + GameRegistry.registerItem(gun_flaregun, gun_flaregun.getUnlocalizedName()); + GameRegistry.registerItem(gun_heavy_revolver, gun_heavy_revolver.getUnlocalizedName()); + GameRegistry.registerItem(gun_carbine, gun_carbine.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index 0eb48eab2..8fa9ad686 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -26,8 +26,8 @@ public class GunConfig { public static final String I_INSPECTDURATION = "I_INSPECTDURATION"; public static final String I_JAMDURATION = "I_JAMDURATION"; public static final String O_CROSSHAIR = "O_CROSSHAIR"; - public static final String B_DOESSMOKE = "B_DOESSMOKE"; public static final String B_RELOADANIMATIONSEQUENTIAL = "B_RELOADANIMATIONSEQUENTIAL"; + public static final String CON_SMOKE = "CON_SMOKE"; public static final String CON_ORCHESTRA = "CON_ORCHESTRA"; public static final String CON_ONPRESSPRIMARY = "CON_ONPRESSPRIMARY"; public static final String CON_ONPRESSSECONDARY = "CON_ONPRESSSECONDARY"; @@ -50,8 +50,9 @@ public class GunConfig { protected int inspectDuration_DNA = 0; protected int jamDuration_DNA = 0; protected Crosshair crosshair_DNA; - protected boolean doesSmoke_DNA; protected boolean reloadAnimationsSequential_DNA; + /** Handles smoke clientside */ + protected BiConsumer smokeHandler_DNA; /** This piece only triggers during reloads, playing sounds depending on the reload's progress making reload sounds easier and synced to animations */ protected BiConsumer orchestra_DNA; /** Lambda functions for clicking shit */ @@ -72,15 +73,15 @@ public class GunConfig { /* GETTERS */ - public Receiver[] getReceivers(ItemStack stack) { return WeaponUpgradeManager.eval(receivers_DNA, stack, O_RECEIVERS, this); } - public float getDurability(ItemStack stack) { return WeaponUpgradeManager.eval(durability_DNA, stack, F_DURABILITY, this); } - public int getDrawDuration(ItemStack stack) { return WeaponUpgradeManager.eval(drawDuration_DNA, stack, I_DRAWDURATION, this); } - public int getInspectDuration(ItemStack stack) { return WeaponUpgradeManager.eval(inspectDuration_DNA, stack, I_INSPECTDURATION, this); } - public int getJamDuration(ItemStack stack) { return WeaponUpgradeManager.eval(jamDuration_DNA, stack, I_JAMDURATION, this); } - public Crosshair getCrosshair(ItemStack stack) { return WeaponUpgradeManager.eval(crosshair_DNA, stack, O_CROSSHAIR, this); } - public boolean getDoesSmoke(ItemStack stack) { return WeaponUpgradeManager.eval(doesSmoke_DNA, stack, B_DOESSMOKE, this); } - public boolean getReloadAnimSequential(ItemStack stack) { return WeaponUpgradeManager.eval(reloadAnimationsSequential_DNA, stack, B_RELOADANIMATIONSEQUENTIAL, this); } - public BiConsumer getOrchestra(ItemStack stack) { return WeaponUpgradeManager.eval(this.orchestra_DNA, stack, CON_ORCHESTRA, this); } + public Receiver[] getReceivers(ItemStack stack) { return WeaponUpgradeManager.eval(receivers_DNA, stack, O_RECEIVERS, this); } + public float getDurability(ItemStack stack) { return WeaponUpgradeManager.eval(durability_DNA, stack, F_DURABILITY, this); } + public int getDrawDuration(ItemStack stack) { return WeaponUpgradeManager.eval(drawDuration_DNA, stack, I_DRAWDURATION, this); } + public int getInspectDuration(ItemStack stack) { return WeaponUpgradeManager.eval(inspectDuration_DNA, stack, I_INSPECTDURATION, this); } + public int getJamDuration(ItemStack stack) { return WeaponUpgradeManager.eval(jamDuration_DNA, stack, I_JAMDURATION, this); } + public Crosshair getCrosshair(ItemStack stack) { return WeaponUpgradeManager.eval(crosshair_DNA, stack, O_CROSSHAIR, this); } + public boolean getReloadAnimSequential(ItemStack stack) { return WeaponUpgradeManager.eval(reloadAnimationsSequential_DNA, stack, B_RELOADANIMATIONSEQUENTIAL, this); } + public BiConsumer getSmokeHandler(ItemStack stack) { return WeaponUpgradeManager.eval(smokeHandler_DNA, stack, CON_SMOKE, this); } + public BiConsumer getOrchestra(ItemStack stack) { return WeaponUpgradeManager.eval(this.orchestra_DNA, stack, CON_ORCHESTRA, this); } public BiConsumer getPressPrimary(ItemStack stack) { return WeaponUpgradeManager.eval(this.onPressPrimary_DNA, stack, CON_ONPRESSPRIMARY, this); } public BiConsumer getPressSecondary(ItemStack stack) { return WeaponUpgradeManager.eval(this.onPressSecondary_DNA, stack, CON_ONPRESSSECONDARY, this); } @@ -105,9 +106,9 @@ public class GunConfig { public GunConfig inspect(int inspect) { this.inspectDuration_DNA = inspect; return this; } public GunConfig jam(int jam) { this.jamDuration_DNA = jam; return this; } public GunConfig crosshair(Crosshair crosshair) { this.crosshair_DNA = crosshair; return this; } - public GunConfig smoke(boolean doesSmoke) { this.doesSmoke_DNA = doesSmoke; return this; } public GunConfig reloadSequential(boolean flag) { this.reloadAnimationsSequential_DNA = flag; return this; } - + + public GunConfig smoke(BiConsumer smoke) { this.smokeHandler_DNA = smoke; return this; } public GunConfig orchestra(BiConsumer orchestra) { this.orchestra_DNA = orchestra; return this; } //press diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 123609630..36b3a9996 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -29,7 +29,6 @@ import net.minecraft.item.Item; import net.minecraft.item.ItemStack; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.MathHelper; -import net.minecraft.util.Vec3; import net.minecraft.world.World; import net.minecraftforge.client.event.RenderGameOverlayEvent.ElementType; import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; @@ -124,8 +123,9 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean isHeld) { if(!(entity instanceof EntityPlayer)) return; - EntityPlayer player = (EntityPlayer) entity; + EntityPlayer player = entity instanceof EntityPlayer ? (EntityPlayer) entity : null; GunConfig config = this.getConfig(stack); + LambdaContext ctx = new LambdaContext(config, player); if(world.isRemote) { @@ -146,32 +146,8 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei aimingProgress = MathHelper.clamp_float(aimingProgress, 0F, 1F); /// SMOKE NODES /// - if(config.getDoesSmoke(stack)) { - - boolean smoking = lastShot + 2000 > System.currentTimeMillis(); - if(!smoking && !smokeNodes.isEmpty()) smokeNodes.clear(); - - if(smoking) { - Vec3 prev = Vec3.createVectorHelper(-entity.motionX, -entity.motionY, -entity.motionZ); - prev.rotateAroundY((float) (entity.rotationYaw * Math.PI / 180D)); - double accel = 15D; - double side = (entity.rotationYaw - player.prevRotationYawHead) * 0.1D; - double waggle = 0.025D; - - for(SmokeNode node : smokeNodes) { - node.forward += -prev.zCoord * accel + world.rand.nextGaussian() * waggle; - node.lift += prev.yCoord + 1.5D; - node.side += prev.xCoord * accel + world.rand.nextGaussian() * waggle + side; - if(node.alpha > 0) node.alpha -= 0.025D; - node.width *= 1.15; - } - - double alpha = (System.currentTimeMillis() - lastShot) / 2000D; - alpha = (1 - alpha) * 0.5D; - - if(this.getState(stack) == GunState.RELOADING || smokeNodes.size() == 0) alpha = 0; - smokeNodes.add(new SmokeNode(alpha)); - } + if(config.getSmokeHandler(stack) != null) { + config.getSmokeHandler(stack).accept(stack, ctx); } } return; @@ -188,8 +164,6 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei return; } - LambdaContext ctx = new LambdaContext(config, player); - BiConsumer orchestra = config.getOrchestra(stack); if(orchestra != null) orchestra.accept(stack, ctx); diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index e4fee17ea..ff98105f3 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -20,6 +20,7 @@ public class Receiver { public static final String F_BASEDAMAGE = "F_BASEDAMAGE"; public static final String I_DELAYAFTERFIRE = "I_DELAYAFTERFIRE"; + public static final String I_DELAYAFTERDRYFIRE = "I_DELAYAFTERDRYFIRE"; public static final String I_ROUNDSPERCYCLE = "I_ROUNDSPERCYCLE"; public static final String F_SPREADMOD = "F_SPREADMOD"; public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; @@ -29,6 +30,7 @@ public class Receiver { public static final String I_RELOADBEGINDURATION = "I_RELOADBEGINDURATION"; public static final String I_RELOADCYCLEDURATION = "I_RELOADCYCLEDURATION"; public static final String I_RELOADENDDURATION = "I_RELOADENDDURATION"; + public static final String I_RELOADCOCKONEMPTY = "I_RELOADCOCKONEMPTY"; public static final String S_FIRESOUND = "S_FIRESOUND"; public static final String F_FIREVOLUME = "F_FIREVOLUME"; public static final String F_FIREPITCH = "F_FIREPITCH"; @@ -45,6 +47,7 @@ public class Receiver { protected int index; protected float baseDamage_DNA; protected int delayAfterFire_DNA; + protected int delayAfterDryFire_DNA; protected int roundsPerCycle_DNA = 1; protected float spreadModExtra_DNA = 0F; protected boolean refireOnHold_DNA = false; @@ -54,6 +57,7 @@ public class Receiver { protected int reloadBeginDuration_DNA; protected int reloadCycleDuration_DNA; protected int reloadEndDuration_DNA; + protected int reloadCockOnEmpty_DNA; protected String fireSound_DNA; protected float fireVolume_DNA = 1.0F; protected float firePitch_DNA = 1.0F; @@ -66,6 +70,7 @@ public class Receiver { /* GETTERS */ public float getBaseDamage(ItemStack stack) { return WeaponUpgradeManager.eval(this.baseDamage_DNA, stack, F_BASEDAMAGE, this); } public int getDelayAfterFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterFire_DNA, stack, I_DELAYAFTERFIRE, this); } + public int getDelayAfterDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.delayAfterDryFire_DNA, stack, I_DELAYAFTERDRYFIRE, this); } public int getRoundsPerCycle(ItemStack stack) { return WeaponUpgradeManager.eval(this.roundsPerCycle_DNA, stack, I_ROUNDSPERCYCLE, this); } public float getGunSpread(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } @@ -75,6 +80,7 @@ public class Receiver { public int getReloadBeginDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadBeginDuration_DNA, stack, I_RELOADBEGINDURATION, this); } public int getReloadCycleDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadCycleDuration_DNA, stack, I_RELOADCYCLEDURATION, this); } public int getReloadEndDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadEndDuration_DNA, stack, I_RELOADENDDURATION, this); } + public int getReloadCockOnEmpty(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadCockOnEmpty_DNA, stack, I_RELOADCOCKONEMPTY, this); } public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } @@ -87,7 +93,8 @@ public class Receiver { /* SETTERS */ public Receiver dmg(float dmg) { this.baseDamage_DNA = dmg; return this; } - public Receiver delay(int delay) { this.delayAfterFire_DNA = delay; return this; } + public Receiver delay(int delay) { this.delayAfterFire_DNA = this.delayAfterDryFire_DNA = delay; return this; } + public Receiver dry(int delay) { this.delayAfterDryFire_DNA = delay; return this; } public Receiver rounds(int rounds) { this.roundsPerCycle_DNA = rounds; return this; } public Receiver spread(float spread) { this.spreadModExtra_DNA = spread; return this; } public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } @@ -98,12 +105,13 @@ public class Receiver { public Receiver offset(double f, double u, double s) { this.projectileOffset_DNA = Vec3.createVectorHelper(f, u, s); return this; } public Receiver reload(int delay) { - return reload(delay, delay, 0); + return reload(delay, delay, 0, 0); } - public Receiver reload(int a, int b, int c) { - this.reloadBeginDuration_DNA = a; - this.reloadCycleDuration_DNA = b; - this.reloadEndDuration_DNA = c; + public Receiver reload(int begin, int cycle, int end, int cock) { + this.reloadBeginDuration_DNA = begin; + this.reloadCycleDuration_DNA = cycle; + this.reloadEndDuration_DNA = end; + this.reloadCockOnEmpty_DNA = cock; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java b/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java index c54dccb21..4f0602a0f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java +++ b/src/main/java/com/hbm/items/weapon/sedna/WeaponUpgradeManager.java @@ -18,8 +18,10 @@ public class WeaponUpgradeManager { } /** Scrapes all upgrades, iterates over them and evaluates the given value. The parent (i.e. holder of the base value) - * is passed for context (so upgrades can differentiate primary and secondary receivers for example) */ + * is passed for context (so upgrades can differentiate primary and secondary receivers for example). Passing a null + * stack causes the base value to be returned. */ public static T eval(T base, ItemStack stack, String key, Object parent) { + if(stack == null) return base; ItemStack[] upgrades = getUpgrades(stack); if(upgrades != null) for(ItemStack upgradeStack : upgrades) { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index 6654f7148..c0cd4d4cd 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -35,7 +35,7 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(true).orchestra(Orchestras.DEBUG_ORCHESTRA) + .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) @@ -51,6 +51,9 @@ public class GunFactory { XFactory357.init(); XFactory44.init(); XFactory9mm.init(); + XFactory12ga.init(); + XFactory40mm.init(); + XFactory762mm.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); @@ -61,5 +64,8 @@ public class GunFactory { M357_SP, M357_FMJ, M357_JHP, M357_AP, M357_EXPRESS, M44_SP, M44_FMJ, M44_JHP, M44_AP, M44_EXPRESS, P9_SP, P9_FMJ, P9_JHP, P9_AP, + G12_BP, G12_BP_MAGNUM, G12_BP_SLUG, G12, + R762_SP, R762_FMJ, R762_JHP, R762_AP, R762_DU, + G40_FLARE, G40, } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 4d88861cb..038c79bd5 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -1,8 +1,11 @@ package com.hbm.items.weapon.sedna.factory; import static com.hbm.items.weapon.sedna.factory.GunFactory.*; +import static com.hbm.items.weapon.sedna.factory.XFactory12ga.*; import static com.hbm.items.weapon.sedna.factory.XFactory357.*; +import static com.hbm.items.weapon.sedna.factory.XFactory40mm.*; import static com.hbm.items.weapon.sedna.factory.XFactory44.*; +import static com.hbm.items.weapon.sedna.factory.XFactory762mm.*; import static com.hbm.items.weapon.sedna.factory.XFactory9mm.*; import java.util.function.BiConsumer; @@ -12,13 +15,14 @@ import org.lwjgl.opengl.GL11; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.ItemGunBaseNT; -import com.hbm.render.item.weapon.sedna.ItemRenderAtlas; -import com.hbm.render.item.weapon.sedna.ItemRenderDebug; -import com.hbm.render.item.weapon.sedna.ItemRenderGreasegun; -import com.hbm.render.item.weapon.sedna.ItemRenderHenry; -import com.hbm.render.item.weapon.sedna.ItemRenderPepperbox; +import com.hbm.lib.RefStrings; +import com.hbm.render.item.weapon.sedna.*; +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.client.renderer.RenderHelper; import net.minecraft.client.renderer.Tessellator; +import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.MinecraftForgeClient; public class GunFactoryClient { @@ -30,29 +34,47 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_atlas, new ItemRenderAtlas()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_henry, new ItemRenderHenry()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_greasegun, new ItemRenderGreasegun()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_maresleg, new ItemRenderMaresleg()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_flaregun, new ItemRenderFlaregun()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_heavy_revolver, new ItemRenderHeavyRevolver()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_carbine, new ItemRenderCarbine()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); m357_sp.setRenderer(RENDER_STANDARD_BULLET); m357_fmj.setRenderer(RENDER_STANDARD_BULLET); m357_jhp.setRenderer(RENDER_STANDARD_BULLET); - m357_ap.setRenderer(RENDER_STANDARD_BULLET); + m357_ap.setRenderer(RENDER_AP_BULLET); m357_express.setRenderer(RENDER_EXPRESS_BULLET); m44_sp.setRenderer(RENDER_STANDARD_BULLET); m44_fmj.setRenderer(RENDER_STANDARD_BULLET); m44_jhp.setRenderer(RENDER_STANDARD_BULLET); - m44_ap.setRenderer(RENDER_STANDARD_BULLET); + m44_ap.setRenderer(RENDER_AP_BULLET); m44_express.setRenderer(RENDER_EXPRESS_BULLET); p9_sp.setRenderer(RENDER_STANDARD_BULLET); p9_fmj.setRenderer(RENDER_STANDARD_BULLET); p9_jhp.setRenderer(RENDER_STANDARD_BULLET); - p9_ap.setRenderer(RENDER_STANDARD_BULLET); + p9_ap.setRenderer(RENDER_AP_BULLET); + g12_bp.setRenderer(RENDER_STANDARD_BULLET); + g12_bp_magnum.setRenderer(RENDER_STANDARD_BULLET); + g12_bp_slug.setRenderer(RENDER_STANDARD_BULLET); + g12.setRenderer(RENDER_STANDARD_BULLET); + g40_flare.setRenderer(RENDER_FLARE); + r762_sp.setRenderer(RENDER_STANDARD_BULLET); + r762_fmj.setRenderer(RENDER_STANDARD_BULLET); + r762_jhp.setRenderer(RENDER_STANDARD_BULLET); + r762_ap.setRenderer(RENDER_AP_BULLET); + r762_du.setRenderer(RENDER_DU_BULLET); //HUDS ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_atlas).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_henry).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_greasegun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_maresleg).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_flaregun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_heavy_revolver).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_carbine).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { @@ -61,12 +83,24 @@ public class GunFactoryClient { renderBulletStandard(Tessellator.instance, 0xFFBF00, 0xFFFFFF, length, false); }; + public static BiConsumer RENDER_AP_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0xFF6A00, 0xFFE28D, length, false); + }; + public static BiConsumer RENDER_EXPRESS_BULLET = (bullet, interp) -> { double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; if(length <= 0) return; renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, false); }; + public static BiConsumer RENDER_DU_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0x5CCD41, 0xE9FF8D, length, false); + }; + public static BiConsumer RENDER_TRACER_BULLET = (bullet, interp) -> { double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; if(length <= 0) return; @@ -115,4 +149,57 @@ public class GunFactoryClient { GL11.glEnable(GL11.GL_CULL_FACE); GL11.glEnable(GL11.GL_TEXTURE_2D); } + + private static final ResourceLocation flare = new ResourceLocation(RefStrings.MODID + ":textures/particle/flare.png"); + public static BiConsumer RENDER_FLARE = (bullet, interp) -> { + + if(bullet.ticksExisted < 2) return; + + GL11.glPushMatrix(); + GL11.glEnable(GL11.GL_BLEND); + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); + GL11.glAlphaFunc(GL11.GL_GREATER, 0); + GL11.glDisable(GL11.GL_ALPHA_TEST); + GL11.glDepthMask(false); + RenderHelper.disableStandardItemLighting(); + + Minecraft.getMinecraft().getTextureManager().bindTexture(flare); + + Tessellator tess = Tessellator.instance; + tess.startDrawingQuads(); + + float f1 = ActiveRenderInfo.rotationX; + float f2 = ActiveRenderInfo.rotationZ; + float f3 = ActiveRenderInfo.rotationYZ; + float f4 = ActiveRenderInfo.rotationXY; + float f5 = ActiveRenderInfo.rotationXZ; + + double posX = 0; + double posY = 0; + double posZ = 0; + double scale = Math.min(5, (bullet.ticksExisted + interp - 2) * 0.5) * (0.8 + bullet.worldObj.rand.nextDouble() * 0.4); + + tess.setColorRGBA_F(1F, 0.5F, 0.5F, 0.5F); + tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); + tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); + tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); + tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); + + scale *= 0.5D; + + tess.setColorRGBA_F(1F, 1F, 1F, 0.75F); + tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); + tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); + tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); + tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); + + tess.draw(); + + GL11.glDepthMask(true); + GL11.glEnable(GL11.GL_ALPHA_TEST); + RenderHelper.enableStandardItemLighting(); + GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F); + GL11.glDisable(GL11.GL_BLEND); + GL11.glPopMatrix(); + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index ea6678947..2bc9c4325 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -6,6 +6,7 @@ import java.util.function.BooleanSupplier; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.render.anim.HbmAnimations.AnimType; @@ -56,11 +57,12 @@ public class GunStateDecider { EntityPlayer player = ctx.player; GunConfig cfg = ctx.config; Receiver rec = cfg.getReceivers(stack)[recIndex]; + IMagazine mag = rec.getMagazine(stack); - rec.getMagazine(stack).reloadAction(stack, player); + mag.reloadAction(stack, player); //if after reloading the gun can still reload, assume a tube mag and resume reloading - if(cfg.getReceivers(stack)[recIndex].getMagazine(stack).canReload(stack, player)) { + if(mag.canReload(stack, player)) { ItemGunBaseNT.setState(stack, GunState.RELOADING); ItemGunBaseNT.setTimer(stack, rec.getReloadCycleDuration(stack)); ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_CYCLE); @@ -73,7 +75,8 @@ public class GunStateDecider { ItemGunBaseNT.playAnimation(player, stack, AnimType.JAMMED); } else { ItemGunBaseNT.setState(stack, GunState.DRAWING); - ItemGunBaseNT.setTimer(stack, rec.getReloadEndDuration(stack)); + int duration = rec.getReloadEndDuration(stack) + (mag.getAmountBeforeReload(stack) <= 0 ? rec.getReloadCockOnEmpty(stack) : 0); + ItemGunBaseNT.setTimer(stack, duration); ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END); } } @@ -108,6 +111,10 @@ public class GunStateDecider { int remaining = rec.getRoundsPerCycle(stack) - 1; for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); //if not, revert to idle + } else if(rec.getDoesDryFire(stack)) { + ItemGunBaseNT.setState(stack, GunState.DRAWING); + ItemGunBaseNT.setTimer(stack, rec.getDelayAfterDryFire(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); } else { ItemGunBaseNT.setState(stack, GunState.IDLE); ItemGunBaseNT.setTimer(stack, 0); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index 7d842a69c..bc20ca951 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -1,5 +1,6 @@ package com.hbm.items.weapon.sedna.factory; +import java.util.List; import java.util.Random; import java.util.function.BiConsumer; import java.util.function.BiFunction; @@ -10,6 +11,7 @@ import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.ItemGunBaseNT.GunState; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.SmokeNode; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.render.anim.BusAnimation; @@ -43,9 +45,10 @@ public class Lego { IMagazine mag = rec.getMagazine(stack); if(mag.canReload(stack, ctx.player)) { + mag.setAmountBeforeReload(stack, mag.getAmount(stack)); ItemGunBaseNT.setState(stack, GunState.RELOADING); ItemGunBaseNT.setTimer(stack, rec.getReloadBeginDuration(stack)); - ItemGunBaseNT.playAnimation(player, stack, mag.getAmount(stack) == 0 ? AnimType.RELOAD_EMPTY : AnimType.RELOAD); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD); } else { ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT); } @@ -73,11 +76,11 @@ public class Lego { ItemGunBaseNT.setState(stack, GunState.COOLDOWN); ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); } else { - ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); if(rec.getDoesDryFire(stack)) { - ItemGunBaseNT.setState(stack, GunState.COOLDOWN); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); + ItemGunBaseNT.setState(stack, GunState.DRAWING); + ItemGunBaseNT.setTimer(stack, rec.getDelayAfterDryFire(stack)); } } } @@ -89,6 +92,42 @@ public class Lego { //ItemGunBaseNT.recoilHorizontal += ctx.player.getRNG().nextGaussian() * 1.5; }; + /** Default smoke. */ + public static BiConsumer LAMBDA_STANDARD_SMOKE = (stack, ctx) -> { + handleStandardSmoke(ctx.player, stack, 2000, 0.025D, 1.15D); + }; + + public static void handleStandardSmoke(EntityPlayer player, ItemStack stack, int smokeDuration, double alphaDecay, double widthGrowth) { + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + long lastShot = gun.lastShot; + List smokeNodes = gun.smokeNodes; + + boolean smoking = lastShot + smokeDuration > System.currentTimeMillis(); + if(!smoking && !smokeNodes.isEmpty()) smokeNodes.clear(); + + if(smoking) { + Vec3 prev = Vec3.createVectorHelper(-player.motionX, -player.motionY, -player.motionZ); + prev.rotateAroundY((float) (player.rotationYaw * Math.PI / 180D)); + double accel = 15D; + double side = (player.rotationYaw - player.prevRotationYawHead) * 0.1D; + double waggle = 0.025D; + + for(SmokeNode node : smokeNodes) { + node.forward += -prev.zCoord * accel + player.worldObj.rand.nextGaussian() * waggle; + node.lift += prev.yCoord + 1.5D; + node.side += prev.xCoord * accel + player.worldObj.rand.nextGaussian() * waggle + side; + if(node.alpha > 0) node.alpha -= alphaDecay; + node.width *= widthGrowth; + } + + double alpha = (System.currentTimeMillis() - lastShot) / (double) smokeDuration; + alpha = (1 - alpha) * 0.5D; + + if(gun.getState(stack) == GunState.RELOADING || smokeNodes.size() == 0) alpha = 0; + smokeNodes.add(new SmokeNode(alpha)); + } + } + /** Toggles isAiming. Used by keybinds. */ public static BiConsumer LAMBDA_TOGGLE_AIM = (stack, ctx) -> { ItemGunBaseNT.setIsAiming(stack, !ItemGunBaseNT.getIsAiming(stack)); }; @@ -116,6 +155,10 @@ public class Lego { double heightOffset = offset.yCoord; double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : offset.zCoord; + /*forwardOffset = 0.75; + heightOffset = -0.0625; + sideOffset = -0.1875D;*/ + int projectiles = config.projectilesMin; if(config.projectilesMax > config.projectilesMin) projectiles += player.getRNG().nextInt(config.projectilesMax - config.projectilesMin + 1); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 7b2b7f536..e623a2264 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -119,7 +119,7 @@ public class Orchestras { } if(type == AnimType.RELOAD_END) { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.9F); - if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); + if(timer == 12 && ctx.config.getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } if(type == AnimType.JAMMED) { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.9F); @@ -146,5 +146,161 @@ public class Orchestras { AnimType type = ItemGunBaseNT.getLastAnim(stack); int timer = ItemGunBaseNT.getAnimTimer(stack); boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.EQUIP) { + if(timer == 5) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.openLatch", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 2) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + CasingCreator.composeEffect(player.worldObj, player, 0.55, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.12, casing.getName()); + } + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 0.8F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + + } + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magRemove", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); + if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + if(type == AnimType.INSPECT) { + if(timer == 5) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.8F); + if(timer == 26) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1.25F); + } + if(type == AnimType.JAMMED) { + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + if(timer == 26) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + }; + + public static BiConsumer ORCHESTRA_MARESLEG = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.RELOAD) { + if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.8F); + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.shotgunReload", 1F, 1F); + } + if(type == AnimType.RELOAD_CYCLE) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.shotgunReload", 1F, 1F); + } + if(type == AnimType.RELOAD_END) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.7F); + } + if(type == AnimType.JAMMED) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.7F); + if(timer == 17) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); + if(timer == 29) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); + } + if(type == AnimType.CYCLE) { + if(timer == 14) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + casing.setupSmoke(1F, 0.5D, 60, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, -0.125, aiming ? -0.125 : -0.375D, 0, 0.18, -0.12, casing.getName()); + } + if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); + } + }; + + public static BiConsumer ORCHESTRA_FLAREGUN = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.RELOAD) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.8F); + if(timer == 4) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + casing.setupSmoke(1F, 0.5D, 60, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.125, aiming ? -0.125 : -0.375D, -0.12, 0.18, 0, casing.getName()); + } + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.insertCanister", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.JAMMED) { + if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.8F); + if(timer == 29) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + }; + + public static BiConsumer ORCHESTRA_NOPIP = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + + if(timer == 16) { + Receiver rec = ctx.config.getReceivers(stack)[0]; + IMagazine mag = rec.getMagazine(stack); + SpentCasing casing = mag.getCasing(stack); + for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, player.getRNG().nextGaussian() * 0.01 - 0.05, player.getRNG().nextGaussian() * 0.01, player.getRNG().nextGaussian() * 0.01, casing.getName()); + } + } + if(type == AnimType.CYCLE) { + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 11) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); + if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; + + public static BiConsumer ORCHESTRA_CARBIBE = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.CYCLE) { + if(timer == 2) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.06, casing.getName()); + } + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magRemove", 1F, 1F); + if(timer == 26) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); + } + if(type == AnimType.RELOAD_END) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + if(type == AnimType.JAMMED) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + if(timer == 31) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + if(type == AnimType.INSPECT) { + if(timer == 6) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + if(timer == 30) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); + } }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java new file mode 100644 index 000000000..7c4deea2c --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java @@ -0,0 +1,90 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineSingleReload; +import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory12ga { + + public static BulletConfig g12_bp; + public static BulletConfig g12_bp_magnum; + public static BulletConfig g12_bp_slug; + public static BulletConfig g12; + + public static void init() { + + g12_bp = new BulletConfig().setItem(EnumAmmo.G12_BP).setProjectiles(8, 8).setSpread(0.05F).setRicochetAngle(15).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS).setScale(1.5F).register("12GA_BP")); + g12_bp_magnum = new BulletConfig().setItem(EnumAmmo.G12_BP_MAGNUM).setProjectiles(4, 4).setSpread(0.05F).setRicochetAngle(25).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS).setScale(1.5F).register("12GA_BP_MAGNUM")); + g12_bp_slug = new BulletConfig().setItem(EnumAmmo.G12_BP_SLUG).setSpread(0.01F).setRicochetAngle(5).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS).setScale(1.5F).register("12GA_BP_SLUG")); + g12 = new BulletConfig().setItem(EnumAmmo.G12).setProjectiles(8, 8).setSpread(0.05F).setRicochetAngle(15).setCasing(new SpentCasing(CasingType.SHOTGUN).setColor(0xB52B2B, SpentCasing.COLOR_CASE_BRASS).setScale(0.75F).register("12GA")); + + ModItems.gun_maresleg = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(20).inspect(39).jam(45).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_MARESLEG) + .rec(new Receiver(0) + .dmg(12F).delay(20).reload(22, 10, 13, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 6).addConfigs(g12_bp, g12_bp_magnum, g12_bp_slug, g12)) + .offset(0.75, -0.0625, -0.1875D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_MARESLEG_ANIMS) + ).setUnlocalizedName("gun_maresleg").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_MARESLEG_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(0, 0, -3, 500, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -1, 50).addPos(0, 0, 0, 250)) + .addBus("SIGHT", new BusAnimationSequence().addPos(35, 0, 0, 100, IType.SIN_DOWN).addPos(0, 0, 0, 100, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-85, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); + case CYCLE_DRY: return new BusAnimation() + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); + case RELOAD: + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; + return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(30, 0, 0, 400, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 400).addPos(-85, 0, 0, 200)) + .addBus("SHELL", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0.25, -3, 0).addPos(0, empty ? 0.25 : 0.125, -1.5, 150, IType.SIN_UP).addPos(0, empty ? 0.25 : -0.25, 0, 150, IType.SIN_DOWN)) + .addBus("FLAG", new BusAnimationSequence().addPos(0, 0, 0, empty ? 900 : 0).addPos(1, 1, 1, 0)); + case RELOAD_CYCLE: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(30, 0, 0, 0)) + .addBus("LEVER", new BusAnimationSequence().addPos(-85, 0, 0, 0)) + .addBus("SHELL", new BusAnimationSequence().addPos(0, 0.25, -3, 0).addPos(0, 0.125, -1.5, 150, IType.SIN_UP).addPos(0, -0.125, 0, 150, IType.SIN_DOWN)) + .addBus("FLAG", new BusAnimationSequence().addPos(1, 1, 1, 0)); + case RELOAD_END: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(30, 0, 0, 0).addPos(30, 0, 0, 250).addPos(0, 0, 0, 400, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(-85, 0, 0, 0).addPos(0, 0, 0, 200)) + .addBus("FLAG", new BusAnimationSequence().addPos(1, 1, 1, 0)); + case JAMMED: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(30, 0, 0, 0).addPos(30, 0, 0, 250).addPos(0, 0, 0, 400, IType.SIN_FULL)) + .addBus("LEVER", new BusAnimationSequence().addPos(-85, 0, 0, 0).addPos(-15, 0, 0, 200).addPos(-15, 0, 0, 650).addPos(-85, 0, 0, 200).addPos(-15, 0, 0, 200).addPos(-15, 0, 0, 200).addPos(-85, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 850).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 45, 800).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("FLAG", new BusAnimationSequence().addPos(1, 1, 1, 0)); + case INSPECT: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-35, 0, 0, 300, IType.SIN_FULL).addPos(-35, 0, 0, 1150).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 450).addPos(0, 0, -90, 500, IType.SIN_FULL).addPos(0, 0, -90, 500).addPos(0, 0, 0, 500, IType.SIN_FULL)); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index ca3d174e8..460449451 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -30,11 +30,11 @@ public class XFactory357 { m357_sp = new BulletConfig().setItem(EnumAmmo.M357_SP); m357_fmj = new BulletConfig().setItem(EnumAmmo.M357_FMJ).setDamage(0.8F).setArmorPiercing(0.1F); m357_jhp = new BulletConfig().setItem(EnumAmmo.M357_JHP).setDamage(1.5F).setArmorPiercing(-0.25F); - m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F); + m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F); m357_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F); ModItems.gun_atlas = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_ATLAS) + .dura(300).draw(4).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_ATLAS) .rec(new Receiver(0) .dmg(10F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) @@ -47,14 +47,14 @@ public class XFactory357 { @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_ATLAS_ANIMS = (stack, type) -> { switch(type) { case EQUIP: return new BusAnimation() - .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, -3, 350, IType.SIN_DOWN)); + .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, 0, 350, IType.SIN_DOWN)); case CYCLE: return new BusAnimation() - .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) - .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) - .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); case CYCLE_DRY: return new BusAnimation() - .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) - .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 550).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 1, 200)); case RELOAD: return new BusAnimation() .addBus("LATCH", new BusAnimationSequence().addPos(0, 0, 90, 300).addPos(0, 0, 90, 2000).addPos(0, 0, 0, 150)) .addBus("FRONT", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(0, 0, 45, 150).addPos(0, 0, 45, 2000).addPos(0, 0, 0, 75)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java new file mode 100644 index 000000000..8578f30a6 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java @@ -0,0 +1,72 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiConsumer; +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineSingleReload; +import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory40mm { + + public static BulletConfig g40_flare; + public static BulletConfig g40; + + public static void init() { + + g40_flare = new BulletConfig().setItem(EnumAmmo.G40_FLARE).setVel(2F).setGrav(0.035D).setRenderRotations(false).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(0x9E1616).setScale(2F).register("G40Flare")); + g40 = new BulletConfig().setItem(EnumAmmo.G40).setVel(2F).setGrav(0.035D).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_40MM).setScale(2F).register("G40")); + + ModItems.gun_flaregun = new ItemGunBaseNT(new GunConfig() + .dura(100).draw(7).inspect(39).jam(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_FLAREGUN) + .rec(new Receiver(0) + .dmg(12F).delay(20).reload(28).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 1).addConfigs(g40_flare)) + .offset(0.75, -0.0625, -0.1875D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_FLAREGUN_ANIMS) + ).setUnlocalizedName("gun_flaregun").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { + Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.025D, 1.05D); + }; + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_FLAREGUN_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(-90, 0, 0, 0).addPos(0, 0, 0, 350, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(15, 0, 0, 50).addPos(15, 0, 0, 550).addPos(0, 0, 0, 100)); + case CYCLE_DRY: return new BusAnimation() + .addBus("HAMMER", new BusAnimationSequence().addPos(15, 0, 0, 50).addPos(15, 0, 0, 550).addPos(0, 0, 0, 100)); + case RELOAD: return new BusAnimation() + .addBus("OPEN", new BusAnimationSequence().addPos(45, 0, 0, 200, IType.SIN_FULL).addPos(45, 0, 0, 750).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("SHELL", new BusAnimationSequence().addPos(4, -8, -4, 0).addPos(4, -8, -4, 200).addPos(0, 0, -5, 500, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("FLIP", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(25, 0, 0, 200, IType.SIN_DOWN).addPos(25, 0, 0, 800).addPos(0, 0, 0, 200, IType.SIN_DOWN)); + case JAMMED: return new BusAnimation() + .addBus("OPEN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(45, 0, 0, 200, IType.SIN_FULL).addPos(45, 0, 0, 500).addPos(0, 0, 0, 200, IType.SIN_UP)) + .addBus("FLIP", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 200).addPos(25, 0, 0, 200, IType.SIN_DOWN).addPos(25, 0, 0, 550).addPos(0, 0, 0, 200, IType.SIN_DOWN)); + case INSPECT: return new BusAnimation() + .addBus("FLIP", new BusAnimationSequence().addPos(-360 * 3, 0, 0, 1500, IType.SIN_FULL)); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java index 70eb1606e..3c590c00c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java @@ -2,6 +2,7 @@ package com.hbm.items.weapon.sedna.factory; import java.util.function.BiFunction; +import com.hbm.handler.CasingEjector; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; @@ -9,6 +10,7 @@ import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.items.weapon.sedna.mags.MagazineSingleReload; import com.hbm.lib.RefStrings; import com.hbm.particle.SpentCasing; @@ -36,20 +38,33 @@ public class XFactory44 { .setCasing(casing44.clone().register("m44fmj")); m44_jhp = new BulletConfig().setItem(EnumAmmo.M44_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) .setCasing(casing44.clone().register("m44jhp")); - m44_ap = new BulletConfig().setItem(EnumAmmo.M44_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F) + m44_ap = new BulletConfig().setItem(EnumAmmo.M44_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F) .setCasing(casing44.clone().setColor(SpentCasing.COLOR_CASE_44).register("m44ap")); m44_express = new BulletConfig().setItem(EnumAmmo.M44_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F) .setCasing(casing44.clone().register("m44express")); ModItems.gun_henry = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(15).inspect(23).jam(45).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_HENRY) + .dura(300).draw(15).inspect(23).jam(45).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_HENRY) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(25, 11, 18).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(25, 11, 14, 8).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 14).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) - .offset(0.75, -0.0625, -0.3125D) + .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration().anim(LAMBDA_HENRY_ANIMS) ).setUnlocalizedName("gun_henry").setTextureName(RefStrings.MODID + ":gun_darter"); + + ModItems.gun_heavy_revolver = new ItemGunBaseNT(new GunConfig() + .dura(600F).draw(10).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_NOPIP) + .rec(new Receiver(0) + .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 6).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) + .ejector(new CasingEjector().setMotion(0, -0.1, 0).setAngleRange(0.01F, 0.025F)) + .offset(0.75, -0.0625, -0.3125D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) + .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) + .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) + .anim(LAMBDA_NOPIP_ANIMS) + ).setUnlocalizedName("gun_heavy_revolver").setTextureName(RefStrings.MODID + ":gun_darter"); } @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_HENRY_ANIMS = (stack, type) -> { @@ -75,11 +90,13 @@ public class XFactory44 { .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0)) .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0)) .addBus("BULLET", new BusAnimationSequence().addPos(3, 0, -6, 0).addPos(0, 0, 1, 300, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); - case RELOAD_END: return new BusAnimation() + case RELOAD_END: + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; + return new BusAnimation() .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(-60, 0, 0, 300).addPos(0, 0, 0, 400, IType.SIN_FULL)) .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0).addPos(0, 0, 0, 200, IType.SIN_FULL)) - .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(-90, 0, 0, 200).addPos(0, 0, 0, 200)) - .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)); + .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(empty ? -90 : 0, 0, 0, 200).addPos(0, 0, 0, 200)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 700).addPos(0, 0, empty ? 45 : 0, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)); case JAMMED: return new BusAnimation() .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(-60, 0, 0, 300).addPos(0, 0, 0, 400, IType.SIN_FULL)) .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0).addPos(0, 0, 0, 200, IType.SIN_FULL)) @@ -90,6 +107,31 @@ public class XFactory44 { .addBus("ROLL", new BusAnimationSequence().addPos(0, 0, 360, 400)); } + return null; + }; + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_NOPIP_ANIMS = (stack, type) -> { + switch(type) { + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 400).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 450).addPos(0, 0, 1, 200)); + case CYCLE_DRY: return new BusAnimation() + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 300 + 100).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 450).addPos(0, 0, 1, 200)); + case EQUIP: return new BusAnimation().addBus("ROTATE", new BusAnimationSequence().addPos(90, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_DOWN)); + case RELOAD: return new BusAnimation() + .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 1450).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) + .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 1700).addPos(0, 0, 0, 70)) + .addBus("RELOAD_LIFT", new BusAnimationSequence().addPos(0, 0, 0, 350).addPos(-45, 0, 0, 250).addPos(-45, 0, 0, 350).addPos(-15, 0, 0, 200).addPos(-15, 0, 0, 1050).addPos(0, 0, 0, 100)) + .addBus("RELOAD_JOLT", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(2, 0, 0, 50).addPos(0, 0, 0, 100)) + .addBus("RELOAD_BULLETS", new BusAnimationSequence().addPos(0, 0, 0, 650).addPos(10, 0, 0, 300).addPos(10, 0, 0, 200).addPos(0, 0, 0, 700)) + .addBus("RELOAD_BULLETS_CON", new BusAnimationSequence().addPos(1, 0, 0, 0).addPos(1, 0, 0, 950).addPos(0, 0, 0, 1 ) ); + case INSPECT: + case JAMMED: return new BusAnimation() + .addBus("RELAOD_TILT", new BusAnimationSequence().addPos(-15, 0, 0, 100).addPos(65, 0, 0, 100).addPos(45, 0, 0, 50).addPos(0, 0, 0, 200).addPos(0, 0, 0, 200).addPos(-80, 0, 0, 100).addPos(-80, 0, 0, 100).addPos(0, 0, 0, 200)) + .addBus("RELOAD_CYLINDER", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(90, 0, 0, 100).addPos(90, 0, 0, 450).addPos(0, 0, 0, 70)); + } + return null; }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java new file mode 100644 index 000000000..e15bf441a --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java @@ -0,0 +1,92 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiConsumer; +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory762mm { + + public static BulletConfig r762_sp; + public static BulletConfig r762_fmj; + public static BulletConfig r762_jhp; + public static BulletConfig r762_ap; + public static BulletConfig r762_du; + + public static void init() { + SpentCasing casing9 = new SpentCasing(CasingType.BOTTLENECK).setColor(SpentCasing.COLOR_CASE_BRASS); + r762_sp = new BulletConfig().setItem(EnumAmmo.R762_SP) + .setCasing(casing9.clone().register("r762")); + r762_fmj = new BulletConfig().setItem(EnumAmmo.R762_FMJ).setDamage(0.8F).setArmorPiercing(0.1F) + .setCasing(casing9.clone().register("r762fmj")); + r762_jhp = new BulletConfig().setItem(EnumAmmo.R762_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) + .setCasing(casing9.clone().register("r762jhp")); + r762_ap = new BulletConfig().setItem(EnumAmmo.R762_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F) + .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("r762ap")); + r762_du = new BulletConfig().setItem(EnumAmmo.R762_DU).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(2.5F).setArmorPiercing(0.25F) + .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("r762du")); + + ModItems.gun_carbine = new ItemGunBaseNT(new GunConfig() + .dura(3_000).draw(10).inspect(31).jam(60).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_CARBIBE) + .rec(new Receiver(0) + .dmg(5F).delay(5).dry(15).spread(0.0F).reload(30, 0, 15, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 14).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du)) + .offset(1, -0.0625 * 2.5, -0.25D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_CARBINE_ANIMS) + ).setUnlocalizedName("gun_carbine").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { + Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.075D, 1.1D); + }; + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_CARBINE_ANIMS = (stack, type) -> { + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(45, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_FULL)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, ItemGunBaseNT.getIsAiming(stack) ? -0.25 : -0.5, 50, IType.SIN_DOWN).addPos(0, 0, 0, 100, IType.SIN_FULL)) + .addBus("SLIDE", new BusAnimationSequence().addPos(0, 0, -1, 50, IType.SIN_DOWN).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus(empty ? "NULL" : "REL", new BusAnimationSequence().addPos(0, 0, 0.25, 50).addPos(0, 0.125, 1.25, 100, IType.SIN_UP)); + case CYCLE_DRY: return new BusAnimation() + .addBus("SLIDE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -1, 100, IType.SIN_DOWN).addPos(0, 0, -1, 50).addPos(0, 0, 0, 100, IType.SIN_UP)); + case RELOAD: return new BusAnimation() + .addBus("MAG", new BusAnimationSequence().addPos(0, -4, 0, 250, IType.SIN_UP).addPos(0, -4, 0, 750).addPos(0, 0, 0, 500, IType.SIN_DOWN)) + .addBus("LIFT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 1000)) + .addBus("BULLET", new BusAnimationSequence().addPos(empty ? 1 : 0, 0, 0, 0).addPos(0, 0, 0, 1000)); + case RELOAD_END: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-25, 0, 0, 0).addPos(-25, 0, 0, 750).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("SLIDE", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(0, 0, -1, 100, IType.SIN_DOWN).addPos(0, 0, -1, 50).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus("REL", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(0, 0, 0.25, 150).addPos(0, 0.125, 1.25, 100, IType.SIN_UP)); + case JAMMED: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-25, 0, 0, 0).addPos(-25, 0, 0, 750).addPos(0, 0, 0, 500, IType.SIN_FULL).addPos(0, 0, 0, 250).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 750).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("SLIDE", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(0, 0, -1, 100, IType.SIN_DOWN).addPos(0, 0, -1, 50).addPos(0, 0, -0.25, 100, IType.SIN_UP).addPos(0, 0, -0.25, 1250).addPos(0, 0, -1, 100, IType.SIN_DOWN).addPos(0, 0, -1, 50).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus("REL", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(0, 0, 0.25, 150).addPos(0, 0.125, 1, 100, IType.SIN_UP).addPos(0, 0.125, 1, 1250).addPos(0, 0.125, 0.25, 100, IType.SIN_DOWN).addPos(0, 0.125, 1, 100, IType.SIN_UP)); + case INSPECT: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 1500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("SLIDE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -0.75, 150, IType.SIN_DOWN).addPos(0, 0, -0.75, 1000).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus(empty ? "NULL" : "REL", new BusAnimationSequence().addPos(0, 0.125, 1.25, 0).addPos(0, 0.125, 1.25, 500).addPos(0, 0.125, 0.5, 150, IType.SIN_DOWN).addPos(0, 0.125, 0.5, 1000).addPos(0, 0.125, 1.25, 100, IType.SIN_UP)); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java index dee1efe44..e897b1e8a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java @@ -1,5 +1,6 @@ package com.hbm.items.weapon.sedna.factory; +import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.items.ModItems; @@ -8,12 +9,15 @@ import com.hbm.items.weapon.sedna.Crosshair; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.items.weapon.sedna.mags.MagazineFullReload; import com.hbm.lib.RefStrings; import com.hbm.particle.SpentCasing; import com.hbm.particle.SpentCasing.CasingType; import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.item.ItemStack; @@ -33,30 +37,51 @@ public class XFactory9mm { .setCasing(casing9.clone().register("p9fmj")); p9_jhp = new BulletConfig().setItem(EnumAmmo.P9_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) .setCasing(casing9.clone().register("p9jhp")); - p9_ap = new BulletConfig().setItem(EnumAmmo.P9_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F) + p9_ap = new BulletConfig().setItem(EnumAmmo.P9_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F) .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("p9ap")); ModItems.gun_greasegun = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(15).inspect(23).jam(45).crosshair(Crosshair.L_CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_GREASEGUN) + .dura(3_000).draw(15).inspect(31).jam(55).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_GREASEGUN) .rec(new Receiver(0) - .dmg(5F).delay(5).auto(true).spread(0.015F).reload(25, 11, 18).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(4).dry(40).auto(true).spread(0.015F).reload(60).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap)) - .offset(0.75, -0.0625, -0.3125D) + .offset(1, -0.0625 * 2.5, -0.25D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration().anim(LAMBDA_GREASEGUN_ANIMS) ).setUnlocalizedName("gun_greasegun").setTextureName(RefStrings.MODID + ":gun_darter"); } + + public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { + Lego.handleStandardSmoke(ctx.player, stack, 2000, 0.05D, 1.1D); + }; @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_GREASEGUN_ANIMS = (stack, type) -> { switch(type) { - case EQUIP: return new BusAnimation(); - case CYCLE: return new BusAnimation(); - case CYCLE_DRY: return new BusAnimation(); - case RELOAD: return new BusAnimation(); - case RELOAD_CYCLE: return new BusAnimation(); - case RELOAD_END: return new BusAnimation(); - case JAMMED: return new BusAnimation(); - case INSPECT: return new BusAnimation(); + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(80, 0, 0, 0).addPos(80, 0, 0, 500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("STOCK", new BusAnimationSequence().addPos(0, 0, -4, 0).addPos(0, 0, -4, 200).addPos(0, 0, 0, 300, IType.SIN_FULL)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, ItemGunBaseNT.getIsAiming(stack) ? -0.25 : -0.5, 50, IType.SIN_DOWN).addPos(0, 0, 0, 100, IType.SIN_FULL)) + .addBus("FLAP", new BusAnimationSequence().addPos(0, 0, 15, 100, IType.SIN_DOWN).addPos(0, 0, -5, 100, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_FULL)); + case CYCLE_DRY: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 750).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -45, 250, IType.SIN_FULL).addPos(0, 0, -45, 750).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("HANDLE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 250).addPos(-90, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); + case RELOAD: + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; + return new BusAnimation() + .addBus("MAG", new BusAnimationSequence().addPos(0, -8, 0, 250, IType.SIN_UP).addPos(0, -8, 0, 750).addPos(0, 0, 0, 500, IType.SIN_DOWN)) + .addBus("LIFT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 1750).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 1750).addPos(0, 0, -45, 250, IType.SIN_FULL).addPos(0, 0, -45, 500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("HANDLE", new BusAnimationSequence().addPos(0, 0, 0, 2000).addPos(-90, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("BULLET", new BusAnimationSequence().addPos(empty ? 1 : 0, 0, 0, 0).addPos(0, 0, 0, 1000)); + case JAMMED: return new BusAnimation() + .addBus("LIFT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 1500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -45, 250, IType.SIN_FULL).addPos(0, 0, -45, 1500).addPos(0, 0, 0, 500, IType.SIN_FULL)) + .addBus("HANDLE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 250).addPos(-90, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250).addPos(-90, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); + case INSPECT: return new BusAnimation() + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, -45, 150).addPos(0, 0, 45, 150).addPos(0, 0, 45, 50).addPos(0, 0, 0, 250).addPos(0, 0, 0, 500).addPos(0, 0, 45, 150).addPos(0, 0, -45, 150).addPos(0, 0, 0, 150)) + .addBus("FLAP", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, 0, 180, 150).addPos(0, 0, 180, 850).addPos(0, 0, 0, 150)); } return null; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 1427e224f..41740da41 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -28,7 +28,7 @@ public class XFactoryBlackPowder { BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).jam(58).crosshair(Crosshair.CIRCLE).smoke(true).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).jam(58).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) .rec(new Receiver(0) .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java index 4550b63b8..b2337387b 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java @@ -33,4 +33,9 @@ public interface IMagazine { public String reportAmmoStateForHUD(ItemStack stack); /** Casing config to use then ejecting */ public SpentCasing getCasing(ItemStack stack); + /** When reloading, remember the amount before reload is initiated */ + public void setAmountBeforeReload(ItemStack stack, int amount); + /** Amount of rouns before reload has started. Do note that the NBT stack sync likely arrives + * after the animation packets, so for RELOAD type anims, use the live ammo count instead! */ + public int getAmountBeforeReload(ItemStack stack); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java index e88b5337e..7e2f32edc 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java @@ -14,6 +14,7 @@ public abstract class MagazineSingleTypeBase implements IMagazine public static final String KEY_MAG_COUNT = "magcount"; public static final String KEY_MAG_TYPE = "magtype"; + public static final String KEY_MAG_PREV = "magprev"; protected List acceptedBullets = new ArrayList(); @@ -66,6 +67,9 @@ public abstract class MagazineSingleTypeBase implements IMagazine @Override public int getCapacity(ItemStack stack) { return capacity; } @Override public int getAmount(ItemStack stack) { return getMagCount(stack, index); } @Override public void setAmount(ItemStack stack, int amount) { setMagCount(stack, index, amount); } + + @Override public void setAmountBeforeReload(ItemStack stack, int amount) { ItemGunBaseNT.setValueInt(stack, KEY_MAG_PREV + index, amount); } + @Override public int getAmountBeforeReload(ItemStack stack) { return ItemGunBaseNT.getValueInt(stack, KEY_MAG_PREV + index); } // MAG TYPE // public static int getMagType(ItemStack stack, int index) { return ItemGunBaseNT.getValueInt(stack, KEY_MAG_TYPE + index); } //TODO: replace with named tags to avoid ID shifting diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index c6e8a2132..74b06f2d5 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -854,6 +854,9 @@ public class ResourceManager { public static final IModelCustom bio_revolver = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/bio_revolver.obj")).asVBO(); public static final IModelCustom henry = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/henry.obj")).asVBO(); public static final IModelCustom greasegun = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/greasegun.obj")).asVBO(); + public static final IModelCustom maresleg = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/maresleg.obj")).asVBO(); + public static final IModelCustom flaregun = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/flaregun.obj")).asVBO(); + public static final IModelCustom carbine = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/carbine.obj")).asVBO(); public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); @@ -968,6 +971,10 @@ public class ResourceManager { public static final ResourceLocation bio_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bio_revolver.png"); public static final ResourceLocation henry_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/henry.png"); public static final ResourceLocation greasegun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/greasegun.png"); + public static final ResourceLocation maresleg_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/maresleg.png"); + public static final ResourceLocation flaregun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/flaregun.png"); + public static final ResourceLocation heavy_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/heavy_revolver.png"); + public static final ResourceLocation carbine_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/huntsman.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/anim/HbmAnimations.java b/src/main/java/com/hbm/render/anim/HbmAnimations.java index 6dd55dd68..915eb43fc 100644 --- a/src/main/java/com/hbm/render/anim/HbmAnimations.java +++ b/src/main/java/com/hbm/render/anim/HbmAnimations.java @@ -19,7 +19,7 @@ public class HbmAnimations { public static enum AnimType { RELOAD, //either a full reload or start of a reload - RELOAD_EMPTY, //same as reload, but the mag is completely empty + @Deprecated RELOAD_EMPTY, //same as reload, but the mag is completely empty RELOAD_CYCLE, //animation that plays for every individual round (for shotguns and similar single round loading weapons) RELOAD_END, //animation for transitioning from our RELOAD_CYCLE to idle CYCLE, //animation for every firing cycle diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java new file mode 100644 index 000000000..90cc85656 --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java @@ -0,0 +1,114 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderCarbine extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.5F * offset, -1.5F * offset, 0.875F * offset, + 0, -6.25 / 8D, 0.25); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.carbine_tex); + double scale = 0.5D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] slide = HbmAnimations.getRelevantTransformation("SLIDE"); + double[] mag = HbmAnimations.getRelevantTransformation("MAG"); + double[] lift = HbmAnimations.getRelevantTransformation("LIFT"); + double[] bullet = HbmAnimations.getRelevantTransformation("BULLET"); + double[] rel = HbmAnimations.getRelevantTransformation("REL"); + + GL11.glTranslated(0, -1, -2); + GL11.glRotated(equip[0], 1, 0, 0); + GL11.glTranslated(0, 1, 2); + + GL11.glTranslated(0, 0, -2); + GL11.glRotated(lift[0], 1, 0, 0); + GL11.glTranslated(0, 0, 2); + + GL11.glTranslated(0, 0, recoil[2]); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + ResourceManager.carbine.renderPart("Gun"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, slide[2]); + ResourceManager.carbine.renderPart("Slide"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(mag[0], mag[1], mag[2]); + ResourceManager.carbine.renderPart("Magazine"); + GL11.glTranslated(rel[0], rel[1], rel[2]); + if(bullet[0] != 1) ResourceManager.carbine.renderPart("Bullet"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.25D); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + GL11.glScaled(0.5, 0.5, 0.5); + this.renderMuzzleFlash(gun.lastShot, 75, 7.5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + double scale = 1.375D; + GL11.glScaled(scale, scale, scale); + GL11.glTranslated(0, 0, 2); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.375D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 0, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.carbine_tex); + ResourceManager.carbine.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java new file mode 100644 index 000000000..9b646025c --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java @@ -0,0 +1,111 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderFlaregun extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.25F * offset, -1.5F * offset, 2F * offset, + 0, -5.5 / 8D, 1); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.flaregun_tex); + double scale = 0.125D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] hammer = HbmAnimations.getRelevantTransformation("HAMMER"); + double[] open = HbmAnimations.getRelevantTransformation("OPEN"); + double[] shell = HbmAnimations.getRelevantTransformation("SHELL"); + double[] flip = HbmAnimations.getRelevantTransformation("FLIP"); + + GL11.glTranslated(recoil[0], recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 10, 1, 0, 0); + GL11.glRotated(flip[0], 1, 0, 0); + + GL11.glTranslated(0, 0, -8); + GL11.glRotated(equip[0], -1, 0, 0); + GL11.glTranslated(0, 0, 8); + + GL11.glShadeModel(GL11.GL_SMOOTH); + ResourceManager.flaregun.renderPart("Gun"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.8125, -4); + GL11.glRotated(hammer[0] - 15, 1, 0, 0); + GL11.glTranslated(0, -1.8125, 4); + ResourceManager.flaregun.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 2.156, 1.78); + GL11.glRotated(open[0], 1, 0, 0); + GL11.glTranslated(0, -2.156, -1.78); + ResourceManager.flaregun.renderPart("Barrel"); + GL11.glTranslated(shell[0], shell[1], shell[2]); + ResourceManager.flaregun.renderPart("Flare"); + GL11.glPopMatrix(); + + double smokeScale = 0.5; + + GL11.glPushMatrix(); + GL11.glTranslated(0, 4, 9); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(smokeScale, smokeScale, smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 2.5D); + GL11.glTranslated(0, 0, 0.1); + this.renderSmokeNodes(gun.smokeNodes, 2D); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + double scale = 0.5D; + GL11.glScaled(scale, scale, scale); + GL11.glTranslated(0, 0.25, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 0, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.flaregun_tex); + ResourceManager.flaregun.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java index 2ef652d5c..4d1d48fec 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java @@ -20,7 +20,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { float offset = 0.8F; standardAimingTransform(stack, - -1.25F * offset, -1F * offset, 1.75F * offset, + -1.5F * offset, -1F * offset, 1.75F * offset, 0, -2.625 / 8D, 1.125); } @@ -33,10 +33,73 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { GL11.glScaled(scale, scale, scale); double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] stock = HbmAnimations.getRelevantTransformation("STOCK"); double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] flap = HbmAnimations.getRelevantTransformation("FLAP"); + double[] lift = HbmAnimations.getRelevantTransformation("LIFT"); + double[] handle = HbmAnimations.getRelevantTransformation("HANDLE"); + double[] mag = HbmAnimations.getRelevantTransformation("MAG"); + double[] turn = HbmAnimations.getRelevantTransformation("TURN"); + double[] bullet = HbmAnimations.getRelevantTransformation("BULLET"); + + GL11.glTranslated(0, -3, -3); + GL11.glRotated(equip[0], 1, 0, 0); + GL11.glTranslated(0, 3, 3); + + GL11.glTranslated(0, -3, -3); + GL11.glRotated(lift[0], 1, 0, 0); + GL11.glTranslated(0, 3, 3); + + GL11.glRotated(turn[2], 0, 0, 1); + + GL11.glTranslated(0, 0, recoil[2]); GL11.glShadeModel(GL11.GL_SMOOTH); - ResourceManager.greasegun.renderAll(); + ResourceManager.greasegun.renderPart("Gun"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, -4 - stock[2]); + ResourceManager.greasegun.renderPart("Stock"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(mag[0], mag[1], mag[2]); + ResourceManager.greasegun.renderPart("Magazine"); + if(bullet[0] != 1) ResourceManager.greasegun.renderPart("Bullet"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, -1.4375, -0.125); + GL11.glRotated(handle[0], 1, 0, 0); + GL11.glTranslated(0, 1.4375, 0.125); + ResourceManager.greasegun.renderPart("Handle"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.53125, 0); + GL11.glRotated(flap[2], 0, 0, 1); + GL11.glTranslated(0, -0.5125, 0); + ResourceManager.greasegun.renderPart("Flap"); + GL11.glPopMatrix(); + + double smokeScale = 0.25; + + GL11.glPushMatrix(); + GL11.glTranslated(-0.25, 0, 1.5); + GL11.glRotated(turn[2], 0, 0, -1); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(smokeScale, smokeScale, smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, 8); + GL11.glRotated(turn[2], 0, 0, -1); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(smokeScale, smokeScale, smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glPopMatrix(); + GL11.glShadeModel(GL11.GL_FLAT); GL11.glPushMatrix(); @@ -44,7 +107,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); GL11.glScaled(0.5, 0.5, 0.5); - this.renderMuzzleFlash(gun.lastShot, 75, 10); + this.renderMuzzleFlash(gun.lastShot, 75, 7.5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java new file mode 100644 index 000000000..55f61142a --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java @@ -0,0 +1,135 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 1); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.0F * offset, -0.75F * offset, 1F * offset, + 0, -3.875 / 8D, 0); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + + double scale = 0.125D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(90, 0, 1, 0); + + double[] equipSpin = HbmAnimations.getRelevantTransformation("ROTATE"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] reloadLift = HbmAnimations.getRelevantTransformation("RELOAD_LIFT"); + double[] reloadJolt = HbmAnimations.getRelevantTransformation("RELOAD_JOLT"); + double[] reloadTilt = HbmAnimations.getRelevantTransformation("RELAOD_TILT"); + double[] cylinderFlip = HbmAnimations.getRelevantTransformation("RELOAD_CYLINDER"); + double[] reloadBullets = HbmAnimations.getRelevantTransformation("RELOAD_BULLETS"); + + GL11.glTranslated(6, -3, 0); + GL11.glRotated(equipSpin[0], 0, 0, 1); + GL11.glTranslated(-6, 3, 0); + + standardAimingTransform(stack, 0, 0, recoil[2], -recoil[2], 0, 0); + GL11.glRotated(recoil[2] * 10, 0, 0, 1); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + GL11.glTranslated(-9, 2.5, 0); + GL11.glRotated(recoil[2] * -10, 0, 0, 1); + this.renderSmokeNodes(gun.smokeNodes, 0.5D); + GL11.glPopMatrix(); + + GL11.glRotated(reloadLift[0], 0, 0, 1); + GL11.glTranslated(reloadJolt[0], 0, 0); + GL11.glRotated(reloadTilt[0], 1, 0, 0); + + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.heavy_revolver_tex); + ResourceManager.lilmac.renderPart("Gun"); + + GL11.glPushMatrix(); + GL11.glRotated(cylinderFlip[0], 1, 0, 0); + ResourceManager.lilmac.renderPart("Pivot"); + GL11.glTranslated(0, 1.75, 0); + GL11.glRotated(HbmAnimations.getRelevantTransformation("DRUM")[2] * -60, 1, 0, 0); + GL11.glTranslated(0, -1.75, 0); + ResourceManager.lilmac.renderPart("Cylinder"); + GL11.glTranslated(reloadBullets[0], reloadBullets[1], reloadBullets[2]); + if(HbmAnimations.getRelevantTransformation("RELOAD_BULLETS_CON")[0] != 1) + ResourceManager.lilmac.renderPart("Bullets"); + ResourceManager.lilmac.renderPart("Casings"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); /// HAMMER /// + GL11.glTranslated(4, 1.25, 0); + GL11.glRotated(-30 + 30 * HbmAnimations.getRelevantTransformation("HAMMER")[2], 0, 0, 1); + GL11.glTranslated(-4, -1.25, 0); + ResourceManager.lilmac.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0.125, 2.5, 0); + this.renderGapFlash(gun.lastShot); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(-9.5, 2.5, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + //this.renderMuzzleFlash(gun.lastShot); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glScaled(0.75, 0.75, 0.75); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.25D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + + GL11.glRotated(90, 0, 1, 0); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glAlphaFunc(GL11.GL_GREATER, 0F); + GL11.glEnable(GL11.GL_ALPHA_TEST); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.heavy_revolver_tex); + ResourceManager.lilmac.renderPart("Gun"); + ResourceManager.lilmac.renderPart("Cylinder"); + ResourceManager.lilmac.renderPart("Bullets"); + ResourceManager.lilmac.renderPart("Casings"); + ResourceManager.lilmac.renderPart("Pivot"); + ResourceManager.lilmac.renderPart("Hammer"); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java new file mode 100644 index 000000000..f4b2c877a --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java @@ -0,0 +1,128 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderMaresleg extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.25F * offset, -1F * offset, 2F * offset, + 0, -3.875 / 8D, 1); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.maresleg_tex); + double scale = 0.375D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] lever = HbmAnimations.getRelevantTransformation("LEVER"); + double[] turn = HbmAnimations.getRelevantTransformation("TURN"); + double[] lift = HbmAnimations.getRelevantTransformation("LIFT"); + double[] shell = HbmAnimations.getRelevantTransformation("SHELL"); + double[] flag = HbmAnimations.getRelevantTransformation("FLAG"); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glTranslated(recoil[0] * 2, recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 5, 1, 0, 0); + GL11.glRotated(turn[2], 0, 0, 1); + + GL11.glTranslated(0, 0, -4); + GL11.glRotated(lift[0], 1, 0, 0); + GL11.glTranslated(0, 0, 4); + + GL11.glTranslated(0, 0, -4); + GL11.glRotated(equip[0], -1, 0, 0); + GL11.glTranslated(0, 0, 4); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(turn[2], 0, 0, -1); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.25D); + GL11.glPopMatrix(); + + ResourceManager.maresleg.renderPart("Gun"); + ResourceManager.maresleg.renderPart("Stock"); + ResourceManager.maresleg.renderPart("Barrel"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.125, -2.875); + GL11.glRotated(lever[0], 1, 0, 0); + GL11.glTranslated(0, -0.125, 2.875); + ResourceManager.maresleg.renderPart("Lever"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(shell[0], shell[1] - 0.75, shell[2]); + ResourceManager.maresleg.renderPart("Shell"); + GL11.glPopMatrix(); + + if(flag[0] != 0) { + GL11.glPushMatrix(); + GL11.glTranslated(0, -0.5, 0); + ResourceManager.maresleg.renderPart("Shell"); + GL11.glPopMatrix(); + } + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1, 8); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + this.renderMuzzleFlash(gun.lastShot, 75, 5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + double scale = 1.75D; + GL11.glScaled(scale, scale, scale); + GL11.glTranslated(0, 0.25, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.4375D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 0.5, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.maresleg_tex); + ResourceManager.maresleg.renderPart("Gun"); + ResourceManager.maresleg.renderPart("Stock"); + ResourceManager.maresleg.renderPart("Barrel"); + ResourceManager.maresleg.renderPart("Lever"); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java index d6d790a46..6512f40e0 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java @@ -149,7 +149,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG connections = connectionsDouble / 2; connectionsControlled = connectionsControlledDouble / 2; - this.coreHeatCapacity = this.coreHeatCapacityBase + this.heatsinkCount * this.coreHeatCapacityBase / 20; + this.coreHeatCapacity = this.coreHeatCapacityBase + this.heatsinkCount / 20 * this.coreHeatCapacityBase; } @Override diff --git a/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java b/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java index fff678bc1..340a47ab0 100644 --- a/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java +++ b/src/main/java/com/hbm/tileentity/network/TileEntityPipeBaseNT.java @@ -11,6 +11,8 @@ import api.hbm.fluid.IPipeNet; import api.hbm.fluid.PipeNet; import com.hbm.inventory.fluid.tank.FluidTank; import com.hbm.tileentity.IFluidCopiable; +import com.hbm.util.Compat; + import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.network.NetworkManager; @@ -74,7 +76,7 @@ public class TileEntityPipeBaseNT extends TileEntity implements IFluidConductor, for(ForgeDirection dir : ForgeDirection.VALID_DIRECTIONS) { - TileEntity te = worldObj.getTileEntity(xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ); + TileEntity te = Compat.getTileStandard(worldObj, xCoord + dir.offsetX, yCoord + dir.offsetY, zCoord + dir.offsetZ); if(te instanceof IFluidConductor) { diff --git a/src/main/resources/assets/hbm/lang/en_NT.lang b/src/main/resources/assets/hbm/lang/en_NT.lang deleted file mode 100644 index 8f694f8e2..000000000 --- a/src/main/resources/assets/hbm/lang/en_NT.lang +++ /dev/null @@ -1,2018 +0,0 @@ -itemGroup.tabTest=Nuclear Tech Mod Test Tab -itemGroup.tabParts=NTM Resources and Parts -itemGroup.tabControl=NTM Machine Items and Fuel -itemGroup.tabTemplate=NTM Templates -itemGroup.tabBlocks=NTM Ores and Blocks -itemGroup.tabMachine=NTM Machines -itemGroup.tabNuke=NTM Bombs -itemGroup.tabMissile=NTM Missiles and Satellites -itemGroup.tabWeapon=NTM Weapons and Turrets -itemGroup.tabConsumable=NTM Consumables and Gear - -achievement.sacrifice=Sororicide -achievement.sacrifice.desc=Face the fire and live. -achievement.impossible=Literally impossible -achievement.impossible.desc=You can't get this achievement. -achievement.tasteofblood=The Taste of Blood -achievement.tasteofblood.desc=is not part of any testing protocol. -achievement.freytag=Freytag -achievement.freytag.desc=Herold's life guards -achievement.selenium=XVIII The Moon -achievement.selenium.desc=Yeah. -achievement.potato=Rogue AI -achievement.potato.desc=You stabbed me! What is WRONG with yo-WOOOAAH -achievement.c44=Chapter 44 -achievement.c44.desc=Galvanized! I mean, zinc! -achievement.c20_5=Chapter [TWENTY POINT FIVE] -achievement.c20_5.desc=??? -achievement.space=The Final Front-ah forget it -achievement.space.desc=Fail in every way possible and waste funds worth 90 million dollars. -achievement.FOEQ=Pegasi and Missile Silos -achievement.FOEQ.desc=Send a relay into martian...I mean dunaian orbit. -achievement.fiend=Delinquent -achievement.fiend.desc=Be mean. -achievement.fiend2=Delinquent 2: Delinquent Harder -achievement.fiend2.desc=Be meaner. - -potion.hbm_taint=Tainted -potion.hbm_mutation=Tainted Heart -potion.hbm_radiation=Contaminated -potion.hbm_bang=! ! ! -potion.hbm_radx=Rad-X -potion.hbm_lead=Lead Poisoning - -hbmfluid.none=None -hbmfluid.water=Water -hbmfluid.steam=Steam -hbmfluid.hotsteam=Dense Steam -hbmfluid.superhotsteam=Super Dense Steam -hbmfluid.lava=Lava -hbmfluid.uf6=Uranium Hexafluoride -hbmfluid.puf6=Plutonium Hexafluoride -hbmfluid.deuterium=Deuterium -hbmfluid.tritium=Tritium -hbmfluid.oil=Crude Oil -hbmfluid.hotoil=Hot Crude Oil -hbmfluid.smear=Industrial Oil -hbmfluid.reclaimed=Reclaimed Industrial Oil -hbmfluid.petroil=Petroil -hbmfluid.lubricant=Engine Lubricant -hbmfluid.diesel=Diesel -hbmfluid.kerosene=Kerosene -hbmfluid.gas=Natural Gas -hbmfluid.coolant=Coolant -hbmfluid.amat=Antimatter -hbmfluid.aschrab=Antischrabidium -hbmfluid.heavyoil=Heavy Oil -hbmfluid.bitumen=Bitumen -hbmfluid.heatingoil=Heating Oil -hbmfluid.naphtha=Naphtha -hbmfluid.lightoil=Light Oil -hbmfluid.petroleum=Petroleum Gas -hbmfluid.peroxide=Hydrogen Peroxide -hbmfluid.watz=Poisonous Mud -hbmfluid.biogas=Biogas -hbmfluid.biofuel=Biofuel -hbmfluid.sas3=Schrabidium Trisulfide -hbmfluid.nitan=NITAN© 100 Octane Super Fuel -hbmfluid.cryogel=Cryogel -hbmfluid.lpg=LPG - -chem.TEST=Test -chem.FP_HEAVYOIL=Heavy Oil Processing -chem.FP_SMEAR=Industrial Oil Processing -chem.FP_NAPHTHA=Naphtha Processing -chem.FP_LIGHTOIL=Light Oil Processing -chem.FR_REOIL=Oil Reprocessing -chem.FR_PETROIL=Petroil Mixing -chem.OIL_SAND=Tar Sand Extraction -chem.FC_BITUMEN=Bitumen Cracking -chem.FC_I_NAPHTHA=Industrial Oil Cracking -chem.FC_GAS_PETROLEUM=Gas Cracking -chem.FC_DIESEL_KEROSENE=Diesel Cracking -chem.FC_KEROSENE_PETROLEUM=Kerosene Cracking -chem.CC_OIL=Coal Liquefaction -chem.CC_I=Enhanced Coal Liquefaction -chem.CC_HEATING=Advanced Coal Liquefaction -chem.CC_HEAVY=Basic Coal Liquefaction -chem.CC_NAPHTHA=Naphtha Coal Liquefaction -chem.ASPHALT=Asphalt Production -chem.COOLANT=Coolant Mixing -chem.CRYOGEL=Cryogel Mixing -chem.DESH=Desh Production -chem.PEROXIDE=Hydrogen Peroxide Production -chem.CIRCUIT_4=Overclocked Circuit Production -chem.CIRCUIT_5=High Performance Circuit Production -chem.SF_OIL=Crude Oil Solidification -chem.SF_HEAVYOIL=Heavy Oil Solidification -chem.SF_SMEAR=Industrial Oil Solidification -chem.SF_HEATINGOIL=Heating Oil Solidification -chem.SF_RECLAIMED=Reclaimed Oil Solidification -chem.SF_PETROIL=Petroil Solidification -chem.SF_LUBRICANT=Lubricant Solidification -chem.SF_NAPHTHA=Naphtha Solidification -chem.SF_DIESEL=Diesel Solidification -chem.SF_LIGHTOIL=Light Oil Solidification -chem.SF_KEROSENE=Kerosene Solidification -chem.SF_GAS=Natural Gas Solidification -chem.SF_PETROLEUM=Petroleum Gas Solidification -chem.SF_BIOGAS=Biogas Solidification -chem.SF_BIOFUEL=Biofuel Solidification -chem.POLYMER=Polymer Synthesis -chem.DEUTERIUM=Deuterium Extraction -chem.STEAM=Water Boiling -chem.YELLOWCAKE=Yellowcake Production -chem.UF6=Uranium Hexafluoride Production -chem.PUF6=Plutonium Hexafluoride Production -chem.BP_BIOGAS=Biogas Production -chem.BP_BIOFUEL=Biofuel Transesterification -chem.LPG=Petroleum Gas Liquefaction -chem.SAS3=Schrabidium Trisulfide Production -chem.NITAN=NITAN Super Fuel Mixing -chem.DYN_SCHRAB=Schrabidium Dynosynthesis -chem.DYN_EUPH=Euphemium Dynosynthesis -chem.DYN_DNT=Dineutronium Dynosynthesis -chem.CORDITE=Cordite Production -chem.KEVLAR=Kevlar Compound Production - -item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core -item.record.ss.desc=Valve - Sector Sweep -item.record.vc.desc=Valve - Vortal Combat - -death.attack.nuclearBlast=%1$s was blown away by a nuclear explosion. -death.attack.revolverBullet=%1$s was shot in the head by %2$s. -death.attack.mudPoisoning=%1$s died in poisonous mud. -death.attack.euthanized=%1$s was euthanized by %2$s. -death.attack.euthanizedSelf=%1$s euthanized himself, what a dork. -death.attack.euthanizedSelf2=%1$s wins the Darwin Award. -death.attack.tau=%1$s was riddeled by %2$s using negatively charged tauons. -death.attack.tauBlast=%1$s charged the XVL1456 for too long and was blown into pieces. -death.attack.chopperBullet=%1$s was rekt by %2$s. -death.attack.cmb=%1$s was fizzeled by %2$s. -death.attack.subAtomic=%1$s's atoms have been destroyed by %2$s. -death.attack.subAtomic2=%1$s was QPU-misaligned because %2$s tampered with his de facto speed. -death.attack.subAtomic3=%1$s's divergence dropped below 1 percent because of %2$s. -death.attack.subAtomic4=%1$s was divided by zero by %2$s. -death.attack.subAtomic5=%1$s was nullified by %2$s. -death.attack.radiation=%1$s died from radiation poisoning. -death.attack.acid=%1$s fell into acid. -death.attack.suicide=%1$s blew their head off. -death.attack.electrified=%1$s was electrified by %2$s. -death.attack.flamethrower=%1$s was cremated by %2$s. -death.attack.plasma=%1$s was immolated by %2$s. -death.attack.ice=%1$s was turned into a popsicle by %2$s. -death.attack.cheater=%1$s's intestines turned into oats. (???) -death.attack.laser=%1$s was turned into ash by %2$s. -death.attack.rubble=%1$s was squashed by debris. -death.attack.shrapnel=%1$s was ragged by a shrapnel. -death.attack.teleporter=%1$s was teleported into nothingness. -death.attack.blackhole=%1$s was spaghettified. -death.attack.blender=%1$s was chopped in small, bite-sized pieces. -death.attack.meteorite=%1$s was hit by a falling rock from outer space. -death.attack.boxcar=%1$s was smushed by a falling boxcar. Oh well. -death.attack.broadcast=%1$s got their brain melted. -death.attack.ams=%1$s was bathed in deadly particles that have yet to be named by human science. -death.attack.amsCore=%1$s was vaporized in the fire of a singularity. -death.attack.bang=%1$s was blasted into bite-sized pieces. -death.attack.pc=%1$s was reduced to a puddle in the pink cloud. -death.attack.cloud=%1$s melted like a popsicle in the sun. -death.attack.lead=%1$s died from lead poisoning. - -item.redstone_sword.name=Redstone Sword -item.big_sword.name=Great Sword -item.test_nuke_igniter.name=Igniter -item.test_nuke_propellant.name=Propellant -item.test_nuke_tier1_shielding.name=Neutron Reflector (Tier 1) -item.test_nuke_tier2_shielding.name=Neutron Reflector (Tier 2) -item.test_nuke_tier1_bullet.name=U235 Projectile (Tier 1) -item.test_nuke_tier2_bullet.name=MOX Projectile (Tier 2) -item.test_nuke_tier1_target.name=Subcritical U235 Target (Tier 1) -item.test_nuke_tier2_target.name=Subcritical MOX Target (Tier 2) - -item.gadget_explosive.name=Propellant -item.gadget_explosive8.name=Bundle of Propellant -item.gadget_wireing.name=Wiring -item.gadget_core.name=Plutonium Core - -item.boy_igniter.name=Bomb Igniter -item.boy_propellant.name=Propellant -item.boy_bullet.name=U235 Projectile -item.boy_target.name=Subcritical U235 Target -item.boy_shielding.name=Neutron Shielding - -item.man_explosive.name=Propellant -item.man_explosive8.name=Bundle of Propellant -item.man_igniter.name=Bomb Igniter -item.man_core.name=Plutonium Core - -item.mike_core.name=Uranium Coated Deuterium Tank -item.mike_deut.name=Deuterium Tank -item.mike_cooling_unit.name=Deuterium Cooling Unit - -item.tsar_core.name=Tsar Bomba Core - -item.fleija_igniter.name=Pulse Igniter -item.fleija_propellant.name=Schrabidium Propellant -item.fleija_core.name=F.L.E.I.J.A. Uranium 235 Charge - -item.solinium_igniter.name=SOL Pulse Igniter -item.solinium_propellant.name=SOL Compression Charge -item.solinium_core.name=Semi-Stable Solinium Core - -item.n2_charge.name=Large Explosive Charge - -item.custom_tnt.name=Custom Nuke Explosive Charge -item.custom_nuke.name=Custom Nuke Nuclear Rod -item.custom_hydro.name=Custom Nuke Hydrogen Rod -item.custom_amat.name=Custom Nuke Antimatter Rod -item.custom_dirty.name=Custom Nuke Dirty Rod -item.custom_schrab.name=Custom Nuke Schrabidium Rod -item.custom_fall.name=Custom Nuke Drop Upgrade - -container.nukeGadget=The Gadget -container.nukeBoy=Little Boy -container.nukeMan=Fat Man -container.nukeMike=Ivy Mike -container.nukeTsar=Tsar Bomba -container.nukeFleija=F.L.E.I.J.A. -container.nukePrototype=The Prototype -container.nukeCustom=Custom Nuke -container.nukeSolinium=The Blue Rinse -container.nukeN2=N² Mine -container.nukeN45=N45 Naval Mine - -container.bombMulti=Multi Purpose Bomb - -tile.nuke_gadget.name=The Gadget -tile.nuke_boy.name=Little Boy -tile.nuke_man.name=Fat Man -tile.nuke_mike.name=Ivy Mike -tile.nuke_tsar.name=Tsar Bomba -tile.nuke_fleija.name=F.L.E.I.J.A. -tile.nuke_prototype.name=The Prototype -tile.nuke_custom.name=Custom Nuke -tile.nuke_solinium.name=The Blue Rinse -tile.nuke_n2.name=N² Mine -tile.nuke_n45.name=N45 Naval Mine - -tile.bomb_multi.name=Multi Purpose Bomb -tile.rejuvinator.name=Rejuvination Device - -tile.flame_war.name=Flame War in a Box -tile.float_bomb.name=Levitation Bomb -tile.therm_endo.name=Endothermic Bomb -tile.therm_exo.name=Exothermic Bomb -tile.emp_bomb.name=EMP Device - -tile.crashed_bomb.name=Dud -tile.boxcar.name=Boxcar -tile.bomber.name=Crashed Bomber - -tile.turret_light.name=Light Machine Gun Turret -tile.turret_heavy.name=Heavy Machine Gun Turret -tile.turret_rocket.name=Rocket Turret -tile.turret_flamer.name=Flamethrower Turret -tile.turret_tau.name=Tauon Turret -tile.turret_spitfire.name=Turret I have no name for right now [WIP] -tile.turret_cwis.name=Phalanx Mk-15 CIWS -tile.turret_cheapo.name=Cheapo Gatling Sentry -tile.machine_radar.name=Radar -container.radar=Radar -tile.machine_forcefield.name=Forcefield Emitter -container.forceField=Forcefield Emitter -tile.machine_satlinker.name=Satellite ID Manager -container.satLinker=SatLink Device -tile.machine_telelinker.name=Turret Telemetry Linker -container.teleLinker=TelLink Device - -item.turret_control.name=Turret Controller -item.turret_chip.name=Turret AI-Chip -item.turret_biometry.name=Turret Telemetry Card - -item.key.name=Key -item.key_red.name=Red Key -item.key_kit.name=Key Imitation Kit -item.key_fake.name=Counterfeit Key -item.pin.name=Bobby Pin -item.padlock_rusty.name=Rusty Padlock -item.padlock.name=Padlock -item.padlock_reinforced.name=Reinforced Padlock -item.padlock_unbreakable.name=Unbreakable Padlock -tile.machine_keyforge.name=Locksmith Table -container.keyForge=Locksmith Table - -tile.mine_ap.name=Anti-Personell Mine -tile.mine_he.name=Anti-Tank Mine -tile.mine_shrap.name=Shrapnel Mine -tile.mine_fat.name=Fat Mine -item.defuser.name=High-Tech Bomb Defusing Device - -tile.crate.name=Supply Crate -tile.crate_weapon.name=Weapon Crate -tile.crate_lead.name=Hazmat Crate -tile.crate_metal.name=Machine Crate -tile.crate_red.name=Red Crate -tile.marker_structure.name=Multiblock Structure Marker - -tile.machine_difurnace_off.name=Alloy Furnace -tile.machine_difurnace_on.name=Alloy Furnace -container.diFurnace=Alloy Furnace -tile.machine_centrifuge.name=Centrifuge -container.centrifuge=Centrifuge -tile.machine_gascent.name=Gas Centrifuge -container.gasCentrifuge=Gas Centrifuge -tile.machine_uf6_tank.name=Uranium Hexafluoride Tank -container.uf6_tank=UF6 Tank -tile.machine_puf6_tank.name=Plutonium Hexafluoride Tank -container.puf6_tank=PuF6 Tank -tile.machine_reactor.name=Breeding Reactor -tile.machine_reactor_on.name=Breeding Reactor -container.reactor=Breeding Reactor -tile.machine_nuke_furnace_off.name=Nuclear Furnace -tile.machine_nuke_furnace_on.name=Nuclear Furnace -container.nukeFurnace=Nuclear Powered Furnace -tile.machine_rtg_furnace_off.name=RTG Furnace -tile.machine_rtg_furnace_on.name=RTG Furnace -container.rtgFurnace=RTG Furnace -tile.machine_electric_furnace_off.name=Electric Furnace -tile.machine_electric_furnace_on.name=Electric Furnace -container.electricFurnace=Electric Furnace -tile.machine_generator.name=Nuclear Reactor (Old) -container.generator=Nuclear Reactor -tile.red_wire_coated.name=Coated Red Copper Cable -tile.machine_deuterium.name=Deuterium Extractor -container.machine_deuterium=Deuterium Extractor -tile.machine_battery.name=Energy Storage Block -tile.machine_lithium_battery.name=Li-Ion Energy Storage Block -tile.machine_schrabidium_battery.name=Schrabidium Energy Storage Block -tile.machine_dineutronium_battery.name=Spark Energy Storage Block -container.battery=Energy Storage -tile.machine_coal_off.name=Combustion Generator -tile.machine_coal_on.name=Combustion Generator -container.machineCoal=Combustion Generator -tile.machine_boiler_off.name=Boiler -tile.machine_boiler_on.name=Boiler -container.machineBoiler=Boiler -tile.machine_boiler_electric_off.name=Electric Boiler -tile.machine_boiler_electric_on.name=Electric Boiler -container.machineElectricBoiler=Electric Boiler -tile.machine_turbine.name=Steam Turbine -container.machineTurbine=Steam Turbine -tile.launch_pad.name=Missile Launch Pad -container.launchPad=Missile Launch Pad -tile.sat_dock.name=Cargo Landing Pad -container.satDock=Cargo Landing Pad -tile.book_guide.name=Hbm's Nuclear Tech Mod Manual [LEGACY] -tile.machine_schrabidium_transmutator.name=Schrabidium Transmutation Device -container.machine_schrabidium_transmutator=Schrabidium Transmutation Device -tile.machine_diesel.name=Diesel Generator -container.machineDiesel=Diesel Generator -tile.machine_shredder.name=Shredder -container.machineShredder=Shredder -tile.machine_combine_factory.name=CMB Steel Furnace -container.machineCMB=CMB Steel Furnace -tile.machine_teleporter.name=Teleporter -container.teleporter=Teleporter -tile.machine_reix_mainframe.name=Rei-X Mainframe (WIP) -container.reix=Rei-X Mainframe -tile.machine_industrial_generator.name=Industrial Generator -container.iGenerator=Industrial Generator -tile.machine_cyclotron.name=Cyclotron -container.cyclotron=Cyclotron -tile.machine_well.name=Oil Derrick -tile.machine_pumpjack.name=Pumpjack -tile.oil_pipe.name=Crude Oil Extraction Pipe -container.oilWell=Oil Derrick -container.pumpjack=Pumpjack -tile.machine_refinery.name=Oil Refinery -container.machineRefinery=Oil Refinery -tile.oil_duct.name=Oil Pipe -tile.oil_duct_solid.name=Coated Oil Pipe -tile.machine_flare.name=Gas Flare -container.gasFlare=Gas Flare -tile.gas_duct.name=Gas Pipe -tile.gas_duct_solid.name=Coated Gas Pipe -tile.machine_drill.name=Automatic Mining Drill -container.miningDrill=Automatic Mining Drill -tile.drill_pipe.name=Drill Pipe -tile.machine_assembler.name=Assembly Machine -container.assembler=Assembly Machine -tile.machine_chemplant.name=Chemical Plant -container.chemplant=Chemical Plant -tile.fluid_duct.name=Universal Fluid Duct -tile.machine_fluidtank.name=Tank -item.fluid_duct.name=Fluid Duct: -container.fluidtank=Tank -tile.machine_turbofan.name=Turbofan -container.machineTurbofan=Turbofan -tile.crate_iron.name=Iron Crate -container.crateIron=Iron Crate -tile.crate_steel.name=Steel Crate -container.crateSteel=Steel Crate -tile.safe.name=Safe -container.safe=Safe -tile.machine_press.name=Burner Press -container.press=Burner Press -tile.machine_epress.name=Electric Press -container.epress=Electric Press -tile.machine_siren.name=Siren -container.siren=Siren -tile.machine_radgen.name=Radiation-Powered Engine -container.radGen=Radiation-Powered Engine -tile.machine_selenium.name=Radial Performance Engine -container.machineSelenium=Radial Performance Engine -tile.machine_reactor_small.name=Nuclear Reactor -container.reactorSmall=Nuclear Reactor -tile.machine_controller.name=Reactor Remote Control Block -container.reactorControl=Reactor Remote Control Block - -tile.broadcaster_pc.name=Corrupted Broadcaster - -tile.radiobox.name=Rosenberg Pest Control Box [WIP] -tile.radiorec.name=Broken FM Radio -container.radiobox=FM Transmitter -container.radiorec=FM Radio - -tile.red_pylon.name=Electricity Pole -item.wiring_red_copper.name=Cable Drum - -tile.rail_highspeed.name=High Speed Rail -tile.rail_booster.name=High Speed Booster Rail - -tile.factory_titanium_hull.name=Basic Factory Casing -tile.factory_titanium_furnace.name=Basic Factory Access Hatch -tile.factory_titanium_conductor.name=Basic Factory Electricity Port -tile.factory_titanium_core.name=Basic Factory Core Component -item.factory_core_titanium.name=Basic Factory Energy Cluster -container.factoryTitanium=Basic Factory -tile.factory_advanced_hull.name=Advanced Factory Casing -tile.factory_advanced_furnace.name=Advanced Factory Access Hatch -tile.factory_advanced_conductor.name=Advanced Factory Electricity Port -tile.factory_advanced_core.name=Advanced Factory Core Component -item.factory_core_advanced.name=Advanced Factory Energy Cluster -container.factoryAdvanced=Advanced Factory - -tile.reactor_element.name=Reactor Chamber -tile.reactor_control.name=Control Rods -tile.reactor_hatch.name=Reactor Access Hatch -tile.reactor_ejector.name=Reactor Waste Ejector -tile.reactor_inserter.name=Reactor Fuel Inserter -tile.reactor_conductor.name=Reactor Boiler -tile.reactor_computer.name=Reactor Control -container.reactorLarge=Big Nuclear Reactor - -tile.fusion_conductor.name=Superconducting Magnet -tile.fusion_center.name=Central Magnet Piece -tile.fusion_motor.name=Magnet Motor Piece -tile.fusion_heater.name=Plasma Heater -tile.fusion_hatch.name=Fusion Reactor Access Hatch -tile.fusion_core.name=Fusion Reactor Control -tile.plasma.name=Plasma -container.fusionMultiblock=Big Fusion Reactor - -tile.watz_element.name=Watz Reaction Chamber -tile.watz_control.name=Reinforced Control Rods -tile.watz_cooler.name=Watz Reactor Supercooler -tile.watz_end.name=Watz Reactor Stability Element -tile.watz_hatch.name=Watz Reactor Access Hatch -tile.watz_conductor.name=Watz Electricity Port -tile.watz_core.name=Watz Reactor Control -container.watzPowerplant=Watz Power Plant - -tile.fwatz_conductor.name=4000K Superconducting Magnet -tile.fwatz_cooler.name=Regenerative Coolant Fluid Tank Shell -tile.fwatz_tank.name=Regenerative Coolant Fluid Tank -tile.fwatz_scaffold.name=Fusionary Watz Plant Structural Support -tile.fwatz_hatch.name=Fusionary Watz Plant Access Hatch -tile.fwatz_computer.name=Fusionary Watz Reactor Calculation Matrix -tile.fwatz_core.name=Fusionary Watz Reactor Control -tile.fwatz_plasma.name=Destabilized Antischrabidium Plasma -container.fusionaryWatzPlant=Fusionary Watz Plant - -tile.machine_rtg_grey.name=RT Generator -container.rtg=RT Generator -tile.machine_rtg_red.name=Fulmination Generator -tile.machine_rtg_orange.name=Strong RT Generator -tile.machine_rtg_yellow.name=Australium Superfuel Reactor -tile.machine_rtg_green.name=Verticium Wealth Generator -tile.machine_rtg_cyan.name=Schrabidium Decay Generator (WIP) -tile.machine_rtg_blue.name=Convection Generator -tile.machine_rtg_purple.name=Antimatter Annihilation Generator - -tile.machine_waste_drum.name=Spent Fuel Pool Drum -container.wasteDrum=Spent Fuel Pool Drum - -tile.machine_spp_bottom.name=ZPE Potential Generator (Bottom) -tile.machine_spp_top.name=ZPE Potential Generator (Top) - -tile.ams_limiter.name=AMS Stabilizer [WIP] -container.amsLimiter=AMS Stabilizer [WIP] -tile.ams_emitter.name=AMS Emitter [WIP] -container.amsEmitter=AMS Emitter [WIP] -tile.ams_base.name=AMS Base [WIP] -container.amsBase=AMS Base [WIP] - -item.template_folder.name=Machine Template Folder -item.fluid_identifier.name=Fluid Identifier -item.assembly_template.name=Assembly Template: -item.chemistry_template.name=Chemistry Template: -item.siren_track.name=Siren Track - -item.fuse.name=Fuse - -tile.test_nuke.name=Test Nuke - -item.ingot_th232.name=Th232 Ingot -item.ingot_uranium.name=Uranium Ingot -item.ingot_u233.name=U233 Ingot -item.ingot_u235.name=U235 Ingot -item.ingot_u238.name=U238 Ingot -item.ingot_u238m2.name=Metastable U238-2 Ingot -item.ingot_plutonium.name=Plutonium Ingot -item.ingot_pu238.name=Pu238 Ingot -item.ingot_pu239.name=Pu239 Ingot -item.ingot_pu240.name=Pu240 Ingot -item.ingot_titanium.name=Titanium Ingot -item.sulfur.name=Sulfur - -item.niter.name=Niter -item.ingot_copper.name=Industrial Grade Copper -item.ingot_red_copper.name=Minecraft Grade Copper -item.ingot_tungsten.name=Tungsten Ingot -item.ingot_aluminium.name=Aluminium Ingot -item.fluorite.name=Fluorite -item.ingot_steel.name=Steel Ingot -item.plate_steel.name=Steel Plate -item.ingot_beryllium.name=Beryllium Ingot -item.plate_schrabidium.name=Schrabidium Plate -item.ingot_schrabidium.name=Schrabidium Ingot -item.nugget_schrabidium.name=Schrabidium Nugget -item.plate_copper.name=Copper Plate -item.board_copper.name=Copper Panel -item.ingot_advanced_alloy.name=Advanced Alloy Ingot -item.plate_advanced_alloy.name=Advanced Alloy Plate -item.wire_advanced_alloy.name=Super Conductor -item.coil_advanced_alloy.name=Super Conducting Coil -item.coil_advanced_torus.name=Super Conducting Ring Coil -item.coil_gold.name=Gold Coil -item.coil_gold_torus.name=Golden Ring Coil -item.lithium.name=Lithium Cube -item.ingot_magnetized_tungsten.name=Magnetized Tungsten Ingot -item.ingot_combine_steel.name=CMB Steel Ingot -item.plate_combine_steel.name=CMB Steel Plate -item.wire_magnetized_tungsten.name=4000K High Temperature Super Conductor -item.coil_magnetized_tungsten.name=4000K High Temperature Super Conducting Coil -item.plate_mixed.name=Mixed Plate -item.plate_paa.name=PaA Alloy Plate -item.ingot_dura_steel.name=High-Speed Steel Ingot -item.ingot_polymer.name=Polymer Ingot -item.bolt_dura_steel.name=High-Speed Steel Bolt -item.pipes_steel.name=Steel Pipes -item.drill_titanium.name=Titanium Drill -item.bolt_tungsten.name=Tungsten Bolt -item.bolt_compound.name=Reinforced Turbine Shaft -item.plate_polymer.name=Insulator -item.ingot_solinium.name=Solinium Ingot -item.nugget_solinium.name=Solinium Nugget -item.photo_panel.name=Photovoltaic Panel -item.sat_base.name=Satellite Base -item.thruster_nuclear.name=LV-N Nuclear Rocket Engine -item.sat_head_mapper.name=High-Gain Optical Camera -item.sat_head_scanner.name=M700 Survey Scanner -item.sat_head_radar.name=Radar Dish -item.sat_head_laser.name=Death Ray -item.sat_head_resonator.name=Xenium Resonator - -item.ingot_australium.name=Australium Ingot -item.ingot_weidanium.name=Weidanium Ingot -item.ingot_reiium.name=Reiium Ingot -item.ingot_unobtainium.name=Unobtainium Ingot -item.ingot_daffergon.name=Daffergon Ingot -item.ingot_verticium.name=Verticium Ingot -item.nugget_australium.name=Australium Nugget -item.nugget_weidanium.name=Weidanium Nugget -item.nugget_reiium.name=Reiium Nugget -item.nugget_unobtainium.name=Unobtainium Nugget -item.nugget_daffergon.name=Daffergon Nugget -item.nugget_verticium.name=Verticium Nugget - -item.ingot_desh.name=Desh Ingot -item.nugget_desh.name=Desh Nugget -item.powder_desh.name=Desh Powder -item.powder_desh_mix.name=Desh Blend -item.powder_nitan_mix.name=Nitanium Blend -item.powder_spark_mix.name=Spark Blend -item.ingot_dineutronium.name=Dineutronium Ingot -item.powder_dineutronium.name=Dineutronium Powder -item.nugget_dineutronium.name=Dineutronium Nugget -item.ingot_starmetal.name=Starmetal Ingot -item.ingot_saturnite.name=Saturnite Ingot -item.plate_saturnite.name=Saturnite Plate - -item.solid_fuel.name=Solid Fuel - -item.nugget_th232.name=Th232 Nugget -item.nugget_u233.name=U233 Nugget -item.nugget_u235.name=U235 Nugget -item.nugget_u238.name=U238 Nugget -item.nugget_pu238.name=Pu238 Nugget -item.nugget_pu239.name=Pu239 Nugget -item.nugget_pu240.name=Pu240 Nugget -item.plate_titanium.name=Titanium Plate -item.plate_aluminium.name=Aluminium Plate -item.wire_red_copper.name=Red Copper Wire -item.neutron_reflector.name=Neutron Reflector -item.nugget_beryllium.name=Beryllium Nugget - -item.wire_aluminium.name=Aluminium Wire -item.wire_copper.name=Copper Wire -item.wire_gold.name=Gold Wire -item.wire_schrabidium.name=Schrabidium Wire - -item.circuit_raw.name=Basic Circuit Assembly -item.circuit_aluminium.name=Basic Circuit -item.circuit_copper.name=Enhanced Circuit -item.circuit_red_copper.name=Advanced Circuit -item.circuit_gold.name=Overclocked Circuit -item.circuit_schrabidium.name=High Performance Circuit -item.circuit_targeting_tier1.name=Military Grade Circuit Board (Tier 1) -item.circuit_targeting_tier2.name=Military Grade Circuit Board (Tier 2) -item.circuit_targeting_tier3.name=Military Grade Circuit Board (Tier 3) -item.circuit_targeting_tier4.name=Military Grade Circuit Board (Tier 4) -item.circuit_targeting_tier5.name=Military Grade Circuit Board (Tier 5) -item.circuit_targeting_tier6.name=Military Grade Circuit Board (Tier 6) -item.mechanism_revolver_1.name=Revolver Mechanism -item.mechanism_revolver_2.name=Advanced Revolver Mechanism -item.mechanism_rifle_1.name=Rifle Mechanism -item.mechanism_rifle_2.name=Advanced Rifle Mechanism -item.mechanism_launcher_1.name=Launcher Mechanism -item.mechanism_launcher_2.name=Advanced Launcher Mechanism -item.mechanism_special.name=High-Tech Weapon Mechanism - -item.primer_357.name=.357 Magnum Primer (x16) -item.primer_44.name=.44 Magnum Primer (x16) -item.primer_9.name=Small Caliber Primer (x24) -item.primer_50.name=Large Caliber Primer (x8) -item.primer_buckshot.name=Buckshot Primer (x8) -item.casing_357.name=.357 Magnum Casing (x16) -item.casing_44.name=.44 Magnum Casing (x16) -item.casing_9.name=Small Caliber Casing (x24) -item.casing_50.name=Large Caliber Casing (x8) -item.casing_buckshot.name=Buckshot Casing (x8) -item.assembly_iron.name=Iron Bullet Assembly -item.assembly_steel.name=Lead Bullet Assembly -item.assembly_lead.name=Glass Bullet Assembly -item.assembly_gold.name=Gold Bullet Assembly -item.assembly_schrabidium.name=Schrabidium Bullet Assembly -item.assembly_nightmare.name=Nightmare Bullet Assembly -item.assembly_pip.name=Tainted Bullet Assembly -item.assembly_nopip.name=.44 Magnum Assembly -item.assembly_smg.name=9mm Assembly -item.assembly_uzi.name=.22 LR Assembly -item.assembly_calamity.name=.50 BMG Assembly -item.assembly_lacunae.name=.5mm Assembly - -item.piston_selenium.name=Radial Engine Piston - -tile.block_aluminium.name=Block of Aluminium -tile.block_copper.name=Block of Copper -tile.block_fluorite.name=Block of Fluorite -tile.block_niter.name=Block of Niter -tile.block_red_copper.name=Block of Red Copper -tile.block_steel.name=Block of Steel -tile.block_sulfur.name=Block of Sulfur -tile.block_titanium.name=Block of Titanium -tile.block_tungsten.name=Block of Tungsten -tile.block_uranium.name=Block of Uranium -tile.block_thorium.name=Block of Thorium -tile.block_trinitite.name=Block of Trinitite -tile.block_beryllium.name=Block of Beryllium -tile.block_waste.name=Block of Nuclear Waste -tile.block_scrap.name=Block of Scrap -tile.block_electrical_scrap.name=Block of Electrical Scrap -tile.block_advanced_alloy.name=Block of Advanced Alloy -tile.block_magnetized_tungsten.name=Block of Magnetized Tungsten -tile.block_combine_steel.name=Block of CMB Steel -tile.block_australium.name=Block of Australium -tile.block_weidanium.name=Block of Weidanium -tile.block_reiium.name=Block of Reiium -tile.block_unobtainium.name=Block of Unobtainium -tile.block_daffergon.name=Block of Daffergon -tile.block_verticium.name=Block of Verticium -tile.block_desh.name=Reinforced Block of Desh -tile.block_yellowcake.name=Block of Yellowcake - -tile.ore_aluminium.name=Aluminium Ore -tile.ore_copper.name=Copper Ore -tile.ore_fluorite.name=Fluorite Ore -tile.ore_niter.name=Niter Ore -tile.ore_sulfur.name=Sulfur Ore -tile.ore_titanium.name=Titanium Ore -tile.ore_tungsten.name=Tungsten Ore -tile.ore_uranium.name=Uranium Ore -tile.ore_thorium.name=Thorium Ore -tile.ore_schrabidium.name=Schrabidium Ore -tile.ore_beryllium.name=Beryllium Ore - -tile.ore_nether_uranium.name=Nether Uranium Ore -tile.ore_nether_plutonium.name=Nether Plutonium Ore -tile.ore_nether_tungsten.name=Nether Tungsten Ore -tile.ore_nether_sulfur.name=Nether Sulfur Ore -tile.ore_nether_fire.name=Fire Ore -tile.ore_nether_schrabidium.name=Nether Schrabidium Ore - -tile.ore_tikite.name=Trixite - -tile.ore_australium.name=Australian Ore -tile.ore_weidanium.name=Weidite -tile.ore_reiium.name=Reiite -tile.ore_unobtainium.name=Brightblende Ore -tile.ore_daffergon.name=Dellite -tile.ore_verticium.name=Dollar Green Mineral -tile.ore_rare.name=Rare Earth Ore - -tile.ore_oil.name=Oil Deposit -tile.ore_oil_empty.name=Empty Oil Deposit -tile.ore_oil_sand.name=Tar Sand - -tile.deco_titanium.name=Titanium Deco Block -tile.deco_red_copper.name=Red Copper Deco Block -tile.deco_tungsten.name=Tungsten Deco Block -tile.deco_aluminium.name=Aluminium Deco Block -tile.deco_steel.name=Steel Deco Block -tile.deco_lead.name=Lead Deco Block -tile.deco_beryllium.name=Beryllium Deco Block - -tile.hazmat.name=Hazmat Cloth Block - -tile.reinforced_brick.name=Reinforced Stone -tile.reinforced_glass.name=Reinforced Glass -tile.reinforced_sand.name=Reinforced Sandstone -tile.reinforced_light.name=Reinforced Glowstone -tile.reinforced_lamp_off.name=Reinforced Lamp -tile.reinforced_lamp_on.name=Reinforced Lamp - -tile.concrete.name=Concrete -tile.brick_concrete.name=Concrete Bricks -tile.brick_obsidian.name=Obsidian Bricks -tile.brick_light.name=Light Bricks -tile.asphalt.name=Asphalt - -tile.cmb_brick.name=CMB Steel Tile -tile.cmb_brick_reinforced.name=Reinforced CMB Bricks - -tile.gravel_obsidian.name=Crushed Obsidian - -tile.barbed_wire.name=Barbed Wire -tile.barbed_wire_fire.name=Flaming Barbed Wire -tile.barbed_wire_poison.name=Poisoned Barbed Wire -tile.barbed_wire_acid.name=Caustic Barbed Wire -tile.barbed_wire_wither.name=Withered Barbed Wire -tile.barbed_wire_ultradeath.name=Cloud Barbed Wire - -tile.seal_frame.name=Silo Hatch Frame -tile.seal_controller.name=Silo Hatch Opener -tile.seal_hatch.name=Silo Hatch - -tile.vault_door.name=Vault-Tec Blast Door -tile.blast_door.name=Sliding Blast Door - -item.nugget_uranium.name=Uranium Nugget -item.nugget_plutonium.name=Plutonium Nugget -item.nugget_neptunium.name=Neptunium Nugget -item.ingot_neptunium.name=Neptunium Ingot -item.nugget_lead.name=Lead Nugget -item.ingot_lead.name=Lead Ingot -tile.block_lead.name=Block of Lead -tile.ore_lead.name=Lead Ore - -item.powder_lead.name=Lead Powder -item.powder_neptunium.name=Neptunium Powder -item.powder_schrabidium.name=Schrabidium Powder -item.powder_iron.name=Iron Powder -item.powder_gold.name=Gold Powder -item.powder_aluminium.name=Aluminium Powder -item.powder_beryllium.name=Beryllium Powder -item.powder_copper.name=Copper Powder -item.powder_titanium.name=Titanium Powder -item.powder_tungsten.name=Tungsten Powder -item.powder_uranium.name=Uranium Powder -item.powder_plutonium.name=Plutonium Powder -item.dust.name=Dust -item.powder_coal.name=Coal Powder -item.powder_lapis.name=Lapis Lazuli Powder -item.powder_emerald.name=Emerald Powder -item.powder_diamond.name=Diamond Powder -item.powder_red_copper.name=Red Copper Powder -item.powder_steel.name=Steel Powder -item.powder_magnetized_tungsten.name=Magnetized Tungsten Powder -item.powder_combine_steel.name=CMB Steel Powder -item.powder_lithium.name=Lithium Powder -item.powder_advanced_alloy.name=Advanced Alloy Powder -item.powder_quartz.name=Quartz Powder -item.powder_power.name=Energy Powder -item.powder_iodine.name=Iodine Powder -item.powder_thorium.name=Thorium Powder -item.powder_neodymium.name=Neodymium Powder -item.powder_astatine.name=Astatine Powder -item.powder_caesium.name=Caesium Powder -item.powder_australium.name=Australium Powder -item.powder_weidanium.name=Weidanium Powder -item.powder_reiium.name=Reiium Powder -item.powder_unobtainium.name=Unobtainium Powder -item.powder_daffergon.name=Daffergon Powder -item.powder_verticium.name=Verticium Powder -item.powder_strontium.name=Strontium Powder -item.powder_cobalt.name=Cobalt Powder -item.powder_bromine.name=Bromine Powder -item.powder_niobium.name=Niobium Powder -item.powder_tennessine.name=Tennessine Powder -item.powder_cerium.name=Cerium Powder -item.powder_dura_steel.name=High-Speed Steel Powder -item.powder_polymer.name=Polymer Powder -item.powder_lanthanium.name=Lanthanium Powder -item.powder_actinium.name=Actinium Powder -item.powder_lithium_tiny.name=Tiny Pile of Lithium Powder -item.powder_cobalt_tiny.name=Tiny Pile of Cobalt Powder -item.powder_neodymium_tiny.name=Tiny Pile of Neodymium Powder -item.powder_niobium_tiny.name=Tiny Pile of Niobium Powder -item.powder_cerium_tiny.name=Tiny Pile of Cerium Powder -item.powder_lanthanium_tiny.name=Tiny Pile of Lanthanium Powder -item.powder_actinium_tiny.name=Tiny Pile of Actinium Powder -item.powder_euphemium.name=Euphemium Powder -item.powder_meteorite.name=Meteorite Powder -item.powder_meteorite_tiny.name=Tiny Pile of Meteorite Powder -item.powder_yellowcake.name=Yellowcake -item.powder_magic.name=Pulverized Enchantment -item.redstone_depleted.name=Desaturated Redstone Dust - -item.fragment_neodymium.name=Neodymium Fragment -item.fragment_cobalt.name=Cobalt Fragment -item.fragment_niobium.name=Niobium Fragment -item.fragment_cerium.name=Cerium Fragment -item.fragment_lanthanium.name=Lanthanium Fragment -item.fragment_actinium.name=Actinium Fragment -item.fragment_meteorite.name=Meteorite Fragment - -item.battery_generic.name=Battery -item.battery_advanced.name=Advanced Battery -item.battery_lithium.name=Lithium-Ion Battery -item.battery_schrabidium.name=Schrabidium Battery -item.battery_spark.name=Spark Battery -item.battery_creative.name=Infinite Battery - -item.battery_su.name=SU-Battery -item.battery_su_l.name=Large SU-Battery -item.battery_steam.name=Steam Powered Energy Storage Tank -item.battery_steam_large.name=Large Steam Powered Energy Storage Tank - -item.battery_potato.name=Potato Battery -item.battery_potatos.name=PotatOS - -item.battery_red_cell.name=Redstone Power Cell -item.battery_advanced_cell.name=Advanced Power Cell -item.battery_lithium_cell.name=Lithium-Ion Power Cell -item.battery_schrabidium_cell.name=Schrabidium Power Cell -item.battery_red_cell_6.name=Sixfold Redstone Power Cell -item.battery_advanced_cell_4.name=Quadruple Advanced Power Cell -item.battery_lithium_cell_3.name=Tripple Lithium-Ion Power Cell -item.battery_schrabidium_cell_2.name=Double Schrabidium Power Cell -item.battery_red_cell_24.name=24-Fold Redstone Power Cell -item.battery_advanced_cell_12.name=Twelvefold Advanced Power Cell -item.battery_lithium_cell_6.name=Sixfold Lithium-Ion Power Cell -item.battery_schrabidium_cell_4.name=Quadruple Schrabidium Power Cell -item.battery_spark_cell_6.name=Spark Power Cell -item.battery_spark_cell_25.name=Spark Arcane Car Battery -item.battery_spark_cell_100.name=Spark Arcane Energy Storage Array -item.battery_spark_cell_1000.name=Spark Arcane Mass-Energy Void -item.battery_spark_cell_2500.name=Spark Arcane Dirac Sea -item.battery_spark_cell_10000.name=Spark Solid Space-Time Crystal -item.battery_spark_cell_power.name=Spark Ludicrous Physics-Defying Energy Storage Unit - -item.upgrade_template.name=Machine Upgrade Piece Template -item.upgrade_speed_1.name=Red Machine Upgrade Mk.I -item.upgrade_speed_2.name=Red Machine Upgrade Mk.II -item.upgrade_speed_3.name=Red Machine Upgrade Mk.III -item.upgrade_effect_1.name=Green Machine Upgrade Mk.I -item.upgrade_effect_2.name=Green Machine Upgrade Mk.II -item.upgrade_effect_3.name=Green Machine Upgrade Mk.III -item.upgrade_power_1.name=Blue Machine Upgrade Mk.I -item.upgrade_power_2.name=Blue Machine Upgrade Mk.II -item.upgrade_power_3.name=Blue Machine Upgrade Mk.III -item.upgrade_fortune_1.name=Purple Machine Upgrade Mk.I -item.upgrade_fortune_2.name=Purple Machine Upgrade Mk.II -item.upgrade_fortune_3.name=Purple Machine Upgrade Mk.III -item.upgrade_afterburn_1.name=Pink Machine Upgrade Mk.I -item.upgrade_afterburn_2.name=Pink Machine Upgrade Mk.II -item.upgrade_afterburn_3.name=Pink Machine Upgrade Mk.III -item.upgrade_radius.name=Teal Emitter Upgrade -item.upgrade_health.name=Pink Emitter Upgrade - -item.fusion_core.name=Fusion Core -item.energy_core.name=Makeshift Energy Core -item.fusion_core_infinite.name=Infinite Fusion Core - -item.dynosphere_base.name=Blank Dynosphere -item.dynosphere_desh.name=Desh Dynosphere -item.dynosphere_desh_charged.name=Desh Dynosphere (Charged) -item.dynosphere_schrabidium.name=Schrabidium Dynosphere -item.dynosphere_schrabidium_charged.name=Schrabidium Dynosphere (Charged) -item.dynosphere_euphemium.name=Euphemium Dynosphere -item.dynosphere_euphemium_charged.name=Euphemium Dynosphere (Charged) -item.dynosphere_dineutronium.name=Dineutronium Dynosphere -item.dynosphere_dineutronium_charged.name=Dineutronium Dynosphere (Charged) - -item.plate_iron.name=Iron Plate -item.plate_lead.name=Lead Plate -item.coil_copper.name=Copper Coil -item.coil_copper_torus.name=Ring Coil -item.wire_tungsten.name=Tungsten Wire -item.coil_tungsten.name=Heating Coil -item.tank_steel.name=Steel Tank -item.motor.name=Motor -item.centrifuge_element.name=Centrifuge Element -item.centrifuge_tower.name=Centrifuge Tower -item.reactor_core.name=Breeding Reactor Core -item.pellet_rtg.name=Plutonium 238 Fuel Pellet -item.pellet_rtg_weak.name=Weak Uranium RTG Pellet -item.rtg_unit.name=RTG Unit -item.hazmat_cloth.name=Hazmat Cloth -item.hazmat_cloth_red.name=Advanced Hazmat Cloth -item.hazmat_cloth_grey.name=Lead-Reinforced Hazmat Cloth -item.asbestos_cloth.name=Fire Proximity Cloth -item.filter_coal.name=Activated Carbon Filter -item.tritium_deuterium_cake.name=Tritium-Deuterium-Cake -item.telepad.name=Telepad -item.entanglement_kit.name=Entanglement Kit -item.toothpicks.name=Toothpicks -item.ducttape.name=Duct Tape -item.magnet_dee.name=Dee Magnets -item.magnet_circular.name=Flat Magnet -item.cyclotron_tower.name=Cyclotron Tower -item.plate_dalekanium.name=Angry Metal -item.biomass.name=Biomass -item.biomass_compressed.name=Compressed Biomass -item.component_limiter.name=Stabilizer Component -item.component_emitter.name=Emitter Component -item.catalyst_clay.name=Clay Catalyst - -item.cell_empty.name=Empty Cell -item.cell_uf6.name=Uranium Hexafluorite Cell -item.cell_puf6.name=Plutonium Hexafluorite Cell -item.cell_antimatter.name=Antimatter Cell -item.cell_deuterium.name=Deuterium Cell -item.cell_tritium.name=Tritium Cell -item.cell_sas3.name=Schrabidium Trisulfide Cell -item.cell_anti_schrabidium.name=Antischrabidium Cell -item.singularity.name=Singularity -item.singularity_counter_resonant.name=Contained Counter-Resonant Singularity -item.singularity_super_heated.name=Superheated Resonating Singularity -item.singularity_spark.name=Spark Singularity -item.black_hole.name=Miniature Black Hole -item.crystal_xen.name=Artificial Xen Crystal -item.pellet_antimatter.name=Antimatter Cluster - -item.inf_water.name=Infinite Water Tank -item.inf_deuterium.name=Infinite Deuterium Tank -item.inf_tritium.name=Infinite Tritium Tank -item.inf_coolant.name=Infinite Coolant Tank -item.inf_sulfur.name=Infinite Sulfur Tank -item.inf_diesel.name=Infinite Diesel Tank -item.inf_antimatter.name=Infinite Antimatter Tank -item.inf_antischrabidium.name=Infinite Antischrabidium Tank - -item.oil_canola.name=Raw Canola Oil - -item.pellet_coal.name=Dense Coal Cluster - -item.canister_empty.name=Empty Canister -item.canister_smear.name=Industrial Oil Canister -item.canister_canola.name=Engine Lubricant -item.canister_oil.name=Crude Oil Canister -item.canister_fuel.name=Diesel Canister -item.canister_kerosene.name=Kerosene Canister -item.canister_reoil.name=Canister of Reclaimed Industrial Oil -item.canister_petroil.name=Petroil Canister -item.canister_napalm.name=Napalm B -item.canister_NITAN.name=NITAN© 100 Octane Super Fuel -item.canister_heavyoil.name=Heavy Oil Canister -item.canister_bitumen.name=Bitumen Canister -item.canister_heatingoil.name=Heating Oil Canister -item.canister_naphtha.name=Naphtha Canister -item.canister_lightoil.name=Light Oil Canister -item.canister_biofuel.name=Biofuel Canister -item.gas_empty.name=Empty Gas Tank -item.gas_full.name=Gas Tank -item.gas_petroleum.name=Petroleum Gas Tank -item.gas_biogas.name=Biogas Tank -item.gas_lpg.name=LPG Tank -item.fluid_tank_empty.name=Empty Universal Fluid Tank -item.fluid_tank_full.name=Universal Fluid Tank: -item.fluid_barrel_empty.name=Empty Fluid Barrel -item.fluid_barrel_full.name=Fluid Barrel: -item.fluid_barrel_infinite.name=Infinite Fluid Barrel - -item.rod_empty.name=Empty Rod -item.rod_th232.name=Th232 Rod -item.rod_uranium.name=Uranium Rod -item.rod_u233.name=U233 Rod -item.rod_u235.name=U235 Rod -item.rod_u238.name=U238 Rod -item.rod_plutonium.name=Plutonium Rod -item.rod_pu238.name=Pu238 Rod -item.rod_pu239.name=Pu239 Rod -item.rod_pu240.name=Pu240 Rod -item.rod_neptunium.name=Neptunium Rod -item.rod_lead.name=Lead Rod -item.rod_schrabidium.name=Sa326 Rod -item.rod_solinium.name=Sa327 Rod -item.rod_euphemium.name=Euphemium Rod -item.rod_australium.name=Australium Rod -item.rod_weidanium.name=Weidanium Rod -item.rod_reiium.name=Reiium Rod -item.rod_unobtainium.name=Unobtainium Rod -item.rod_daffergon.name=Daffergon Rod -item.rod_verticium.name=Verticium Rod - -item.rod_dual_empty.name=Empty Dual Rod -item.rod_dual_th232.name=Th232 Dual Rod -item.rod_dual_uranium.name=Uranium Dual Fuel Rod -item.rod_dual_u233.name=U233 Dual Rod -item.rod_dual_u235.name=U235 Dual Rod -item.rod_dual_u238.name=U238 Dual Rod -item.rod_dual_plutonium.name=Plutonium Dual Rod -item.rod_dual_pu238.name=Pu238 Dual Rod -item.rod_dual_pu239.name=Pu239 Dual Rod -item.rod_dual_pu240.name=Pu240 Dual Rod -item.rod_dual_neptunium.name=Neptunium Dual Rod -item.rod_dual_lead.name=Lead Dual Rod -item.rod_dual_schrabidium.name=Sa326 Dual Rod -item.rod_dual_solinium.name=Sa327 Dual Rod - -item.rod_quad_empty.name=Empty Quad Rod -item.rod_quad_th232.name=Th232 Quad Rod -item.rod_quad_uranium.name=Uranium Quad Rod -item.rod_quad_u233.name=U233 Quad Rod -item.rod_quad_u235.name=U235 Quad Rod -item.rod_quad_u238.name=U238 Quad Rod -item.rod_quad_plutonium.name=Plutonium Quad Rod -item.rod_quad_pu238.name=Pu238 Quad Rod -item.rod_quad_pu239.name=Pu239 Quad Rod -item.rod_quad_pu240.name=Pu240 Quad Rod -item.rod_quad_neptunium.name=Neptunium Quad Rod -item.rod_quad_lead.name=Lead Quad Rod -item.rod_quad_schrabidium.name=Sa326 Quad Rod -item.rod_quad_solinium.name=Sa327 Quad Rod - -item.rod_uranium_fuel_depleted.name=Depleted Uranium Fuel Rod -item.rod_dual_uranium_fuel_depleted.name=Depleted Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel_depleted.name=Depleted Uranium Quad Fuel Rod -item.rod_thorium_fuel_depleted.name=Depleted Thorium Fuel Rod -item.rod_dual_thorium_fuel_depleted.name=Depleted Thorium Dual Fuel Rod -item.rod_quad_thorium_fuel_depleted.name=Depleted Thorium Quad Fuel Rod -item.rod_plutonium_fuel_depleted.name=Depleted Plutonium Fuel Rod -item.rod_dual_plutonium_fuel_depleted.name=Depleted Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel_depleted.name=Depleted Plutonium Quad Fuel Rod -item.rod_mox_fuel_depleted.name=Depleted MOX Fuel Rod -item.rod_dual_mox_fuel_depleted.name=Depleted MOX Dual Fuel Rod -item.rod_quad_mox_fuel_depleted.name=Depleted MOX Quad Fuel Rod -item.rod_schrabidium_fuel_depleted.name=Depleted Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel_depleted.name=Depleted Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel_depleted.name=Depleted Schrabidium Quad Fuel Rod - -item.rod_waste.name=Nuclear Waste Rod -item.rod_dual_waste.name=Nuclear Waste Dual Rod -item.rod_quad_waste.name=Nuclear Waste Quad Rod - -item.gun_rpg.name=Carl Gustav Recoilless Rifle -item.gun_rpg_ammo.name=Rocket -item.gun_stinger.name=FIM-92 Stinger -item.gun_skystinger.name=The One Sky Stinger -item.gun_stinger_ammo.name=Stinger Rocket -item.gun_hk69.name=Grenade Pistol - -item.flame_pony.name=Painting of a Cartoon Pony -item.flame_conspiracy.name=Conspiracy Theory -item.flame_politics.name=Political Topic -item.flame_opinion.name=Own Opinion - -item.pellet_cluster.name=Explosive Pellets -item.pellet_buckshot.name=Lead Pellets -item.pellet_flechette.name=Flechettes -item.powder_fire.name=Flame Powder -item.powder_ice.name=Cryo Powder -item.powder_poison.name=Poison Powder -item.pellet_gas.name=Poison Gas Cartridge -item.magnetron.name=Magnetron -item.powder_thermite.name=Thermite - -item.nuke_starter_kit.name=Atomic Science Starter Kit -item.nuke_commercially_kit.name=Atomic Science Kit for Commercial Uses -item.nuke_advanced_kit.name=Atomic Science Advanced Kit -item.gadget_kit.name=The Gadget Kit -item.boy_kit.name=Little Boy Kit -item.man_kit.name=Fat Man Kit -item.mike_kit.name=Ivy Mike Kit -item.tsar_kit.name=Tsar Bomba Kit -item.fleija_kit.name=F.L.E.I.J.A. Kit -item.multi_kit.name=Multi Purpose Bomb Kit -item.custom_kit.name=Custom Nuke Kit -item.grenade_kit.name=Grenade Kit -item.nuke_electric_kit.name=Electronic Engineer's Kit -item.prototype_kit.name=Prototype Kit -item.missile_kit.name=Missile Kit -item.t45_kit.name=T45 Power Armor Kit -item.euphemium_kit.name=Euphemium Kit -item.solinium_kit.name=Solinium Kit -item.hazmat_kit.name=Hazmat Kit -item.hazmat_red_kit.name=Advanced Hazmat Kit -item.hazmat_grey_kit.name=High-Performance Hazmat Kit - -tile.waste_earth.name=Dead Grass -tile.waste_trinitite.name=Trinitite Ore -tile.waste_trinitite_red.name=Red Trinitite Ore -tile.waste_log.name=Charred Log -tile.waste_planks.name=Charred Wooden Planks - -item.trinitite.name=Trinitite -item.nuclear_waste.name=Nuclear Waste -item.nuclear_waste_tiny.name=Tiny Pile of Nuclear Waste -item.waste_uranium.name=Depleted Uranium Fuel -item.waste_thorium.name=Depleted Thorium Fuel -item.waste_plutonium.name=Depleted Plutonium Fuel -item.waste_mox.name=Depleted MOX Fuel -item.waste_schrabidium.name=Depleted Schrabidium Fuel -item.scrap.name=Scrap - -item.ingot_uranium_fuel.name=Ingot of Uranium Fuel -item.ingot_thorium_fuel.name=Ingot of Thorium Fuel -item.ingot_plutonium_fuel.name=Ingot of Plutonium Fuel -item.ingot_mox_fuel.name=Ingot of MOX Fuel -item.ingot_schrabidium_fuel.name=Ingot of Schrabidium Fuel - -item.nugget_uranium_fuel.name=Nugget of Uranium Fuel -item.nugget_thorium_fuel.name=Nugget of Thorium Fuel -item.nugget_plutonium_fuel.name=Nugget of Plutonium Fuel -item.nugget_mox_fuel.name=Nugget of MOX Fuel -item.nugget_schrabidium_fuel.name=Nugget of Schrabidium Fuel - -item.grenade_generic.name=Grenade -item.grenade_strong.name=Enhanced Grenade -item.grenade_frag.name=Frag Grenade -item.grenade_fire.name=Flame Frag Grenade -item.grenade_shrapnel.name=Shrapnel Grenade -item.grenade_cluster.name=Cluster Bomb -item.grenade_flare.name=Signal Flare -item.grenade_electric.name=Lightning Bomb -item.grenade_poison.name=Poison Grenade -item.grenade_gas.name=Gas Grenade -item.grenade_pulse.name=Impulse Grenade -item.grenade_plasma.name=Plasma Grenade -item.grenade_tau.name=Tau Grenade -item.grenade_schrabidium.name=Schrabidium Grenade -item.grenade_lemon.name=Combustible Lemon -item.grenade_gascan.name=Tossable Gas Can -item.grenade_mk2.name=Mk 2 Grenade "Ambassador Pineapple" -item.grenade_aschrab.name=Tossable Antischrabidium Cell -item.grenade_nuke.name=Mark VI Drill Grenade -item.grenade_nuclear.name=Nuka Grenade -item.grenade_zomg.name=Negative Energy Pair Annihilation Grenade -item.grenade_black_hole.name=Black Hole Grenade -item.grenade_cloud.name=Jar of Cloud -item.grenade_pink_cloud.name=Jar of Pink Cloud -item.ullapool_caber.name=Ullapool Caber -item.grenade_smart.name=Smart Grenade -item.grenade_mirv.name=MIRV Grenade -item.grenade_breach.name=Breaching Grenade -item.grenade_burst.name=Digger Grenade - -item.grenade_if_generic.name=IF - Grenade -item.grenade_if_he.name=IF - HE Grenade -item.grenade_if_bouncy.name=IF - Bouncy Grenade -item.grenade_if_sticky.name=IF - Sticky Grenade -item.grenade_if_impact.name=IF - Impact Grenade -item.grenade_if_incendiary.name=IF - Incendiary Grenade -item.grenade_if_toxic.name=IF - Toxic Grenade -item.grenade_if_concussion.name=IF - Concussion Grenade -item.grenade_if_brimstone.name=IF - Tossable Brimstone Mine -item.grenade_if_mystery.name=IF - M.-Grenade -item.grenade_if_spark.name=IF - S.-Grenade -item.grenade_if_hopwire.name=IF - Vortex Hopwire -item.grenade_if_null.name=IF - Null Grenade - -item.rod_uranium_fuel.name=Uranium Fuel Rod -item.rod_dual_uranium_fuel.name=Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel.name=Uranium Quad Fuel Rod -item.rod_thorium_fuel.name=Thorium Fuel Rod -item.rod_dual_thorium_fuel.name=Thorium Dual Fuel Rod -item.rod_quad_thorium_fuel.name=Thorium Quad Fuel Rod -item.rod_plutonium_fuel.name=Plutonium Fuel Rod -item.rod_dual_plutonium_fuel.name=Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel.name=Plutonium Quad Fuel Rod -item.rod_mox_fuel.name=MOX Fuel Rod -item.rod_dual_mox_fuel.name=MOX Dual Fuel Rod -item.rod_quad_mox_fuel.name=MOX Quad Fuel Rod -item.rod_schrabidium_fuel.name=Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel.name=Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel.name=Schrabidium Quad Fuel Rod - -item.rod_water.name=Water Cell -item.rod_dual_water.name=Dual Water Cell -item.rod_quad_water.name=Quad Water Cell - -item.rod_coolant.name=Coolant Cell -item.rod_dual_coolant.name=Dual Coolant Cell -item.rod_quad_coolant.name=Quad Coolant Cell - -item.rod_lithium.name=Lithium Rod -item.rod_dual_lithium.name=Dual Lithium Rod -item.rod_quad_lithium.name=Quad Lithium Rod - -item.rod_tritium.name=Tritium Cell -item.rod_dual_tritium.name=Dual Tritium Cell -item.rod_quad_tritium.name=Quad Tritium Cell - -item.levitation_unit.name=Gravity Manipulator -item.thermo_unit_empty.name=Thermic Distribution Unit -item.thermo_unit_endo.name=Coldness Distribution Unit -item.thermo_unit_exo.name=Heat Distribution Unit - -item.bomb_waffle.name=Waffle of Mass Destruction -item.schnitzel_vegan.name=Vegan Schnitzel -item.apple_schrabidium.name=Schrabidium Apple -item.cotton_candy.name=Radioactive Cotton Candy -item.tem_flakes.name=Tem Flakes -item.glowing_stew.name=Glowing Mushroom Stew -item.lemon.name="Lemon" -item.definitelyfood.name=TotallyNotDirt-Brand MRE -item.loops.name=Lööps -item.loop_stew.name=IT Breakfast -item.fooditem.name=food item - -tile.frozen_grass.name=Frozen Grass -tile.frozen_dirt.name=Frozen Dirt -tile.frozen_log.name=Frozen Log -tile.frozen_planks.name=Frozen Planks - -tile.tape_recorder.name=Tape Recorder -tile.steel_poles.name=Steel Pole -tile.pole_top.name=Antenna Top -tile.pole_satellite_receiver.name=Satellite Dish -tile.steel_wall.name=Steel Wall -tile.steel_corner.name=Steel Wall Corner -tile.steel_roof.name=Flat Steel Roof -tile.steel_beam.name=Steel Beam -tile.steel_scaffold.name=Steel Scaffold - -item.gun_revolver_iron.name=Simple Revolver -item.gun_revolver.name=Enhanced Revolver -item.gun_revolver_saturnite.name=Saturnite Shooter -item.gun_revolver_gold.name=Golden Revolver -item.gun_revolver_lead.name=Nuka Revolver -item.gun_revolver_schrabidium.name=Schrabidium Revolver -item.gun_revolver_cursed.name=Cursed Revolver -item.gun_revolver_nightmare.name=Nightmare Revolver (Original) -item.gun_revolver_nightmare2.name=Nightmare Revolver (Dark) -item.gun_revolver_pip.name=Lil' Pipsqueak -item.gun_revolver_nopip.name=Novac -item.gun_revolver_blackjack.name=Blackjack Five-Shooter -item.gun_revolver_red.name=Red Key Revolver -item.gun_calamity.name=Calamity -item.gun_calamity_dual.name=Saddle Gun -item.gun_minigun.name=CZ53 Personal Minigun -item.gun_avenger.name=CZ57 Avenger Minigun -item.gun_lacunae.name=CZ33 Abaddon -item.gun_fatman.name=M42 Nuclear Catapult "Fat Man" -item.gun_proto.name=M42 Nuclear Catapult "Proto MIRV" -item.gun_mirv.name=M42 Nuclear Catapult "Experimental MIRV" -item.gun_bf.name=M42_2 Nuclear Catapult "Antimatter Launcher" -item.gun_mp40.name=Submachine Gun -item.gun_uzi.name=IMI Uzi -item.gun_uzi_silencer.name=IMI Uzi with Silencer -item.gun_uzi_saturnite.name=Saturnite Uzi -item.gun_uzi_saturnite_silencer.name=Saturnite Uzi with Silencer -item.gun_uboinik.name=Uboinik -item.gun_lever_action.name=Mare's Leg (Original) -item.gun_bolt_action.name=Dream Bolt-Action Rifle (Original) -item.gun_lever_action_dark.name=Mare's Leg (Dark) -item.gun_bolt_action_green.name=Dream Bolt-Action Rifle (Green) -item.gun_bolt_action_saturnite.name=Saturnite Rifle -item.gun_lever_action_sonata.name=Flipped Mare's Leg -item.gun_lever_action_sonata_2.name=§cSonata's Microphone§r -item.gun_b92.name=§9B92 Energy Pistol§r -item.gun_b93.name=§cB93 Energy Mod§r -item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype -item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle -item.gun_immolator.name=The Immolator -item.gun_cryolator.name=The Cryolator -item.gun_mp.name=Pacifist's Machine Gun -item.gun_zomg.name=Singularity Powered Annihilation Ray "ZOMG Cannon" -item.gun_emp.name=EMP Ray -item.gun_super_shotgun.name=Super Shotgun -item.gun_moist_nugget.name=Mosin-Nagant -item.gun_revolver_inverted.name=Flipped Revolver -item.gun_jack.name=Jackhammer -item.gun_spark.name=Spark Plug -item.gun_hp.name=HPP Lazerjet -item.gun_euthanasia.name=Euthanasia -item.gun_defabricator.name=Defabricator -item.gun_dampfmaschine.name=Totally Not a Joke Weapon -item.gun_folly.name=Prototype Digamma "Folly" - -item.gun_revolver_iron_ammo.name=Bullet -item.gun_revolver_ammo.name=Lead Bullet -item.gun_revolver_gold_ammo.name=Golden Bullet -item.gun_revolver_lead_ammo.name=Glass Covered Nuclear Bullet -item.gun_revolver_schrabidium_ammo.name=Schrabidium Bullet -item.gun_revolver_cursed_ammo.name=Steel Bullet -item.gun_revolver_nightmare_ammo.name=Nightmare Bullet -item.gun_revolver_nightmare2_ammo.name=Laser Buckshot -item.gun_revolver_pip_ammo.name=Tainted Bullet -item.gun_revolver_nopip_ammo.name=.44 Magnum Bullet -item.gun_calamity_ammo.name=.50 BMG Round -item.gun_lacunae_ammo.name=5mm Round -item.gun_fatman_ammo.name=Mini Nuke -item.gun_mirv_ammo.name=Eightfold MIRV -item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F. -item.gun_mp40_ammo.name=Submachine Gun Round -item.gun_uzi_ammo.name=.22 LR Round -item.gun_uboinik_ammo.name=12x70 Buckshot -item.gun_lever_action_ammo.name=12x74 Buckshot -item.gun_bolt_action_ammo.name=12x74 Slug -item.gun_b92_ammo.name=§9B92 Energy Cell§r -item.gun_xvl1456_ammo.name=Depleted Uranium-235 Box -item.gun_osipr_ammo.name=Dark Energy Pulse Plug -item.gun_osipr_ammo2.name=Combine Ball -item.gun_immolator_ammo.name=Immolator Fuel -item.gun_cryolator_ammo.name=Cryo Cell -item.gun_mp_ammo.name=Small Propellantless Machine Gun Round -item.gun_emp_ammo.name=Energy Cell -item.gun_jack_ammo.name=Quadruple Shotgun Shell -item.gun_spark_ammo.name=Electromagnetic Cartridge -item.gun_hp_ammo.name=Ink Cartridge -item.gun_euthanasia_ammo.name=Syringe -item.gun_defabricator_ammo.name=Defabricator Energy Cell - -item.ammo_12gauge.name=12 Gauge Buckshot -item.ammo_12gauge_incendiary.name=12 Gauge Buckshot (Incendiary) -item.ammo_20gauge.name=20 Gauge Buckshot -item.ammo_20gauge_slug.name=20 Gauge Brenneke Slug -item.ammo_20gauge_flechette.name=20 Gauge Flechette Shell -item.ammo_20gauge_incendiary.name=20 Gauge Buckshot (Incendiary) -item.ammo_20gauge_shock.name=20 Gauge Buckshot (Shock) -item.ammo_20gauge_caustic.name=20 Gauge Buckshot (Caustic) -item.ammo_20gauge_explosive.name=20 Gauge Buckshot (Explosive) -item.ammo_20gauge_wither.name=20 Gauge Buckshot (Withering) -item.ammo_5mm.name=5mm Round -item.ammo_5mm_explosive.name=5mm Round (Explosive) -item.ammo_5mm_du.name=5mm Round (DU) -item.ammo_50bmg.name=.50 BMG Round -item.ammo_50bmg_incendiary.name=.50 BMG Round (Incendiary) -item.ammo_50bmg_explosive.name=.50 BMG Round (Explosive) -item.ammo_50bmg_du.name=.50 BMG Round (DU) -item.ammo_9mm.name=9mm Round -item.ammo_9mm_ap.name=9mm Round (Armor Piercing) -item.ammo_9mm_du.name=9mm Round (DU) -item.ammo_22lr.name=.22 LR Round -item.ammo_22lr_ap.name=.22 LR Round (Armor Piercing) -item.ammo_folly.name=Silver Bullet (Original) -item.ammo_folly_nuclear.name=Silver Bullet (Nuclear) -item.ammo_folly_du.name=Silver Bullet (DU, Non-Explosive) -item.ammo_44.name=.44 Magnum Bullet -item.ammo_44_ap.name=.44 Magnum Bullet (Armor Piercing) -item.ammo_44_du.name=.44 Magnum Bullet (DU) -item.ammo_44_pip.name=.44 Magnum Bullet (Boxcar) -item.ammo_44_bj.name=.44 Magnum Bullet (Boat) -item.ammo_rocket.name=84mm Rocket -item.ammo_rocket_he.name=84mm Rocket (HE) -item.ammo_rocket_incendiary.name=84mm Rocket (Incendiary) -item.ammo_rocket_shrapnel.name=84mm Rocket (Shrapnel) -item.ammo_rocket_emp.name=84mm Rocket (Pulse) -item.ammo_rocket_glare.name=84mm Rocket (Red Glare) -item.ammo_rocket_sleek.name=84mm Rocket (IF-R&D) -item.ammo_grenade.name=40mm Grenade -item.ammo_grenade_he.name=40mm Grenade (HE) -item.ammo_grenade_incendiary.name=40mm Grenade (Incendiary) -item.ammo_grenade_toxic.name=40mm Grenade (Chemical) -item.ammo_grenade_sleek.name=40mm Grenade (IF-R&D) - -item.folly_shell.name=Silver Bullet Casing -item.folly_bullet.name=12.8cm Starmetal High-Energy Shell -item.folly_bullet_nuclear.name=12.8cm Nuclear Shell -item.folly_bullet_du.name=12.8cm DU-Shell - -item.cordite.name=Cordite -item.plate_kevlar.name=Kevlar-Ceramic Compound - -item.weaponized_starblaster_cell.name=§cRigged Star Blaster Energy Cell§r - -item.turret_light_ammo.name=Light MG Turret Ammo Box -item.turret_heavy_ammo.name=Heavy MG Turret Ammunition -item.turret_rocket_ammo.name=Rocket Turret 2x4 Ammunition -item.turret_flamer_ammo.name=Flamer Turret Fuel Tanks -item.turret_tau_ammo.name=Tau Turret Uranium Ammo -item.turret_spitfire_ammo.name=AA-Shell -item.turret_cwis_ammo.name=CIWS 20mm Ammo Drum -item.turret_cheapo_ammo.name=6x24 Cheapo Turret Ammunition - -item.clip_revolver_iron.name=Box of Iron Rounds -item.clip_revolver.name=Box of .357 Rounds -item.clip_revolver_gold.name=Small Coffer of Golden Bullets -item.clip_revolver_schrabidium.name=Schrabidium Ammo Container -item.clip_rpg.name=Rocket Container -item.clip_xvl1456.name=Large Isotope Box -item.clip_osipr.name=AR2 Magazine -item.clip_immolator.name=Tank of Immolator Fuel -item.clip_cryolator.name=Tank of Cryolator Fuel -item.clip_revolver_lead.name=Box of Nuclear Bullets -item.clip_revolver_cursed.name=Britannia Military Standard Issue Pisol Magazine -item.clip_fatman.name=Six Pack of Mini Nukes -item.clip_mirv.name=Three-In-One Pack of Mini MIRVs -item.clip_bf.name=BF-Shell Double Pack -item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine -item.clip_mp40.name=9mm SMG Magazine -item.clip_uzi.name=32rnd .22 LR Magazine -item.clip_uboinik.name=Box of 12x70 Buckshot Rounds -item.clip_lever_action.name=Box of 12x74 Buckshot Rounds -item.clip_bolt_action.name=Box of 12x74 Slugs -item.clip_emp.name=Small Pack of Energy Cells -item.clip_revolver_nightmare.name=Bag of Bullets -item.clip_revolver_nightmare2.name=Belt with Laser Buckshot -item.clip_revolver_pip.name=Speedloader with Tainted Bullets -item.clip_revolver_nopip.name=Box of .44 Rounds -item.clip_stinger.name=Pack of Stinger Rockets -item.clip_jack.name=Box of Quadruple 12x70 Buckshot Rounds -item.clip_spark.name=Large Electromagnetic Cartridge -item.clip_hp.name=Ink Tanks -item.clip_euthanasia.name=Last Aid Kit -item.clip_defabricator.name=Belt with Defabricator Energy Cells - -item.ammo_container.name=Ammo Container - -tile.block_schrabidium.name=Block of Schrabidium -item.plate_gold.name=Gold Plate - -item.syringe_empty.name=Empty Syringe -item.syringe_antidote.name=Antidote -item.syringe_poison.name=Poisonous Injection -item.syringe_awesome.name=AWESOME -item.syringe_metal_empty.name=Metal Syringe -item.syringe_metal_stimpak.name=Stimpak -item.syringe_metal_medx.name=Med-X -item.syringe_metal_psycho.name=Psycho -item.syringe_metal_super.name=Super Stimpak -item.syringe_taint.name=Watery Taint Injection -item.med_bag.name=Doctor's Bag -item.radaway.name=RadAway -item.radaway_strong.name=Strong RadAway -item.radaway_flush.name=Elite RadAway -item.radx.name=Rad-X -item.pirfenidone.name=Pirfenidone -item.pill_iodine.name=Iodine Pill -item.plan_c.name=Plan C -item.med_ipecac.name=Ipecac Syrup -item.med_ptsd.name=PTSD Medication -item.med_schiziphrenia.name=Schizophrenia Medication -item.gas_mask_filter.name=Gas Mask Filter - -item.stealth_boy.name=Stealth Device - -entity.hbm.entity_bullet.name=Bullet -entity.hbm.entity_rocket.name=Rocket -entity.hbm.entity_schrabnel.name=Schrabnel -entity.entity_mob_nuclear_creeper.name=Nuclear Creeper -entity.entity_mob_tainted_creeper.name=Tainted Creeper -entity.entity_mob_hunter_chopper.name=Hunter Chopper -entity.entity_cyber_crab.name=Cyber Crab - -item.cap_aluminium.name=Aluminium Cap -item.hull_small_steel.name=Small Steel Shell -item.hull_small_aluminium.name=Small Aluminium Shell -item.hull_big_steel.name=Big Steel Shell -item.hull_big_aluminium.name=Big Aluminium Shell -item.hull_big_titanium.name=Big Titanium Shell -item.fins_flat.name=Flat Steel Casing -item.fins_small_steel.name=Small Steel Grid Fins -item.fins_big_steel.name=Big Steel Grid Fins -item.fins_tri_steel.name=Large Steel Fins -item.fins_quad_titanium.name=Small Titanium Fins -item.sphere_steel.name=Steel Sphere -item.pedestal_steel.name=Steel Pedestal -item.dysfunctional_reactor.name=Dysfunctional Nuclear Reactor - -item.rotor_steel.name=Large Steel Rotor -item.generator_steel.name=Generator Body -item.blade_titanium.name=Titanium Blade -item.turbine_titanium.name=Titanium Steam Turbine -item.generator_front.name=Generator Front -item.blade_tungsten.name=Tungsten Reinforced Blade -item.turbine_tungsten.name=Reinforced Turbofan Blades - -item.combine_scrap.name=CMB Scrap Metal -item.chopper_head.name=Hunter Chopper Cockpit -item.chopper_gun.name=Emplacement Gun -item.chopper_torso.name=Hunter Chopper Body -item.chopper_tail.name=Hunter Chopper Tail -item.chopper_wing.name=Hunter Chopper Wing -item.chopper_blades.name=Hunter Chopper Rotor Blades - -item.igniter.name=Igniter -item.watch.name=Broken Pocket Watch -item.apple_euphemium.name=Euphemium Apple -item.ingot_euphemium.name=Euphemium Ingot -item.nugget_euphemium.name=Euphemium Nugget -item.rod_quad_euphemium.name=Burned Out Quad Schrabidium Fuel Rod -item.plate_euphemium.name=Euphemium Compound Plate -item.plate_dineutronium.name=Dineutronium Compound Plate -item.plate_desh.name=Desh Compound Plate - -item.euphemium_helmet.name=Euphemium Helmet -item.euphemium_plate.name=Euphemium Chestplate -item.euphemium_legs.name=Euphemium Leggings -item.euphemium_boots.name=Euphemiums Boots - -item.schrabidium_helmet.name=Schrabidium Helmet -item.schrabidium_plate.name=Schrabidium Chestplate -item.schrabidium_legs.name=Schrabidium Leggings -item.schrabidium_boots.name=Schrabidium Boots -item.schrabidium_sword.name=Schrabidium Sword -item.schrabidium_pickaxe.name=Schrabidium Pickaxe -item.schrabidium_axe.name=Schrabidium Axe -item.schrabidium_shovel.name=Schrabidium Shovel -item.schrabidium_hoe.name=Schrabidium Hoe - -item.jetpack_boost.name=Boostpack -item.jetpack_fly.name=Jetpack -item.jetpack_break.name=Breakpack -item.jetpack_vector.name=Vectored Jetpack -item.jetpack_tank.name=Jetpack Reserve Fuel Tank - -item.gun_kit_1.name=Gun Oil -item.gun_kit_2.name=Gun Repair Kit - -item.chainsaw.name=Chainsaw -item.crowbar.name=Mk.V Crate Opening Device "Crowbar" - -item.wrench.name=Pipe Wrench -item.wrench_flipped.name=Blade on a Wrench -item.memespoon.name=§eMarket Gardener - -item.mask_of_infamy.name=Mask of Infamy - -tile.det_cord.name=Det Cord -tile.det_charge.name=Explosive Charge -tile.det_nuke.name=Nuclear Charge -tile.red_barrel.name=Explosive Barrel -tile.yellow_barrel.name=Radioactive Barrel - -item.designator.name=Short Range Target Designator -item.designator_range.name=Long Range Target Designator -item.designator_manual.name=Manual Target Designator -item.missile_assembly.name=Small Missile Assembly -item.missile_generic.name=High Explosive Missile -item.missile_anti_ballistic.name=Anti Ballistic Missile (WIP) -item.missile_incendiary.name=Incendiary Missile -item.missile_cluster.name=Cluster Missile -item.missile_buster.name=Bunker Buster -item.missile_strong.name=Strong HE Missile -item.missile_incendiary_strong.name=Strong Incendiary Missile -item.missile_cluster_strong.name=Strong Cluster Missile -item.missile_buster_strong.name=Enhanced Bunker Buster -item.missile_burst.name=Spare Missile -item.missile_inferno.name=Inferno Missile G.R.N. Mk.II -item.missile_rain.name=Bomblet Rain -item.missile_drill.name=The Concrete Cracker -item.missile_nuclear.name=Nuclear Missile -item.missile_nuclear_cluster.name=Thermonuclear Missile -item.missile_endo.name=Endothermic Missile -item.missile_exo.name=Exothermic Missile -item.missile_doomsday.name=Doomsday Missile -item.missile_taint.name=Taint-Tipped Missile -item.missile_micro.name=Micro-Nuclear Missile -item.missile_bhole.name=Black Hole Missile -item.missile_schrabidium.name=Schrabidium Missile -item.missile_emp.name=EMP Missile - -item.missile_carrier.name=HTR-01 Carrier Rocket -item.sat_mapper.name=Surface Mapping Satellite -item.sat_scanner.name=Satellite with Depth-Resource Scanning Module -item.sat_radar.name=Radar Survey Satellite -item.sat_laser.name=Orbital Death Ray -item.sat_foeq.name=PEAF - Mk.I FOEQ Duna Probe with experimental Nuclear Propulsion -item.sat_resonator.name=Xenium Resonator Satellite -item.sat_miner.name=Asteroid Mining Ship -item.sat_chip.name=Satellite ID-Chip -item.sat_interface.name=Satellite Control Interface -tile.sat_mapper.name=Surface Mapping Satellite (Deco Block) -tile.sat_scanner.name=Satellite with Depth-Resource Scanning Module (Deco Block) -tile.sat_radar.name=Radar Survey Satellite (Deco Block) -tile.sat_laser.name=Orbital Death Ray (Deco Block) -tile.sat_foeq.name=PEAF - Mk.I FOEQ Duna Probe with experimental Nuclear Propulsion (Deco Block) -tile.sat_resonator.name=Xenium Resonator Satellite (Deco Block) - -item.hazmat_helmet.name=Hazmat Helmet -item.hazmat_plate.name=Hazmat Chestplate -item.hazmat_legs.name=Hazmat Leggings -item.hazmat_boots.name=Hazmat Boots -item.hazmat_helmet_red.name=Advanced Hazmat Helmet -item.hazmat_plate_red.name=Advanced Hazmat Chestplate -item.hazmat_legs_red.name=Advanced Hazmat Leggings -item.hazmat_boots_red.name=Advanced Hazmat Boots -item.hazmat_helmet_grey.name=High-Performance Hazmat Helmet -item.hazmat_plate_grey.name=High-Performance Hazmat Chestplate -item.hazmat_legs_grey.name=High-Performance Hazmat Leggings -item.hazmat_boots_grey.name=High-Performance Hazmat Boots -item.hazmat_paa_helmet.name=PaA Battle Hazmat Suit Helmet -item.hazmat_paa_plate.name=PaA Battle Hazmat Suit Chestplate -item.hazmat_paa_legs.name=PaA Battle Hazmat Suit Leggings -item.hazmat_paa_boots.name=PaA Battle Hazmat Suit Boots -item.asbestos_helmet.name=Fire Proximity Helmet -item.asbestos_plate.name=Fire Proximity Chestplate -item.asbestos_legs.name=Fire Proximity Leggings -item.asbestos_boots.name=Fire Proximity Boots - -item.paa_plate.name=PaA Chest Protection Plate -item.paa_legs.name=PaA Leg Reinforcements -item.paa_boots.name=PaA "good ol' shoes" - -item.jackt.name=Damn Stylish Ballistic Jacket -item.jackt2.name=Damn Stylish Ballistic Jacket 2: Tokyo Drift - -item.goggles.name=Protection Goggles -item.gas_mask.name=Gas Mask -item.gas_mask_m65.name=M65-Z Gas Mask -item.oxy_mask.name=Oxygen Mask -item.t45_helmet.name=T45 Power Armor Helmet -item.t45_plate.name=T45 Power Armor Chestplate -item.t45_legs.name=T45 Power Armor Leggings -item.t45_boots.name=T45 Power Armor Boots - -tile.mush.name=Glowing Mushroom -tile.waste_mycelium.name=Glowing Mycelium - -tile.sellafield_slaked.name=Slaked Sellafite -tile.sellafield_0.name=Sellafite -tile.sellafield_1.name=Hot Sellafite -tile.sellafield_2.name=Boiling Sellafite -tile.sellafield_3.name=Blazing Sellafite -tile.sellafield_4.name=Infernal Sellafite -tile.sellafield_core.name=Sellafite-Corium - -item.warhead_generic_small.name=Small Warhead -item.warhead_generic_medium.name=Medium Warhead -item.warhead_generic_large.name=Large Warhead -item.warhead_incendiary_small.name=Small Incendiary Warhead -item.warhead_incendiary_medium.name=Medium Incendiary Warhead -item.warhead_incendiary_large.name=Large Incendiary Warhead -item.warhead_cluster_small.name=Small Cluster Warhead -item.warhead_cluster_medium.name=Medium Cluster Warhead -item.warhead_cluster_large.name=Large Cluster Warhead -item.warhead_buster_small.name=Small Bunker Buster Warhead -item.warhead_buster_medium.name=Medium Bunker Buster Warhead -item.warhead_buster_large.name=Large Bunker Buster Warhead -item.warhead_nuclear.name=Nuclear Warhead -item.warhead_mirvlet.name=MIRV -item.warhead_mirv.name=Thermonuclear Warhead -item.warhead_thermo_endo.name=Endothermic Warhead -item.warhead_thermo_exo.name=Exothermic Warhead -item.fuel_tank_small.name=Small Fuel Tank -item.fuel_tank_medium.name=Medium Fuel Tank -item.fuel_tank_large.name=Large Fuel Tank -item.thruster_small.name=Small Thruster -item.thruster_medium.name=Medium Thruster -item.thruster_large.name=Large Thruster - -item.wand_k.name=Construction Wand -item.wand_s.name=Structure Wand -item.wand_d.name=Debug Wand -item.analyzer.name=Analyzer - -item.screwdriver.name=Screwdriver -item.overfuse.name=Singularity Screwdriver - -item.steel_helmet.name=Steel Helmet -item.steel_plate.name=Steel Chestplate -item.steel_legs.name=Steel Leggings -item.steel_boots.name=Steel Boots -item.titanium_helmet.name=Titanium Helmet -item.titanium_plate.name=Titanium Chestplate -item.titanium_legs.name=Titanium Leggings -item.titanium_boots.name=Titanium Boots -item.alloy_helmet.name=Advanced Alloy Helmet -item.alloy_plate.name=Advanced Alloy Chestplate -item.alloy_legs.name=Advanced Alloy Leggings -item.alloy_boots.name=Advanced Alloy Boots -item.cmb_helmet.name=CMB Steel Helmet -item.cmb_plate.name=CMB Steel Chestplate -item.cmb_legs.name=CMB Steel Leggings -item.cmb_boots.name=CMB Steel Boots -item.security_helmet.name=Security Helmet -item.security_plate.name=Security Chestplate -item.security_legs.name=Security Leggings -item.security_boots.name=Security Boots - -item.steel_sword.name=Steel Sword -item.steel_pickaxe.name=Steel Pickaxe -item.steel_axe.name=Steel Axe -item.steel_shovel.name=Steel Shovel -item.steel_hoe.name=Steel Hoe -item.titanium_sword.name=Titanium Sword -item.titanium_pickaxe.name=Titanium Pickaxe -item.titanium_axe.name=Titanium Axe -item.titanium_shovel.name=Titanium Shovel -item.titanium_hoe.name=Titanium Hoe -item.alloy_sword.name=Advanced Alloy Sword -item.alloy_pickaxe.name=Advanced Alloy Pickaxe -item.alloy_axe.name=Advanced Alloy Axe -item.alloy_shovel.name=Advanced Alloy Shovel -item.alloy_hoe.name=Advanced Alloy Hoe -item.cmb_sword.name=CMB Steel Sword -item.cmb_pickaxe.name=CMB Steel Pickaxe -item.cmb_axe.name=CMB Steel Axe -item.cmb_shovel.name=CMB Steel Shovel -item.cmb_hoe.name=CMB Steel Hoe -item.elec_sword.name=Stunstick -item.elec_pickaxe.name=Impact Drill -item.elec_axe.name=Electric Chainsaw -item.elec_shovel.name=Spiral Drill -item.desh_sword.name=Worker's Alloy Sword -item.desh_pickaxe.name=Worker's Alloy Pickaxe -item.desh_axe.name=Worker's Alloy Axe -item.desh_shovel.name=Worker's Alloy Shovel -item.desh_hoe.name=Worker's Alloy Hoe - -tile.red_cable.name=Red Copper Cable - -tile.block_meteor.name=Meteorite Block -tile.block_meteor_broken.name=Broken Meteorite Block -tile.block_meteor_cobble.name=Meteorite Cobblestone -tile.block_meteor_molten.name=Hot Meteorite Cobblestone -tile.block_meteor_treasure.name=Meteorite Treasure Block - -item.cape_radiation.name=Cape (Radiation) -item.cape_gasmask.name=Cape (Gas Mask) -item.cape_schrabidium.name=Cape (Schrabidic) -item.cape_hbm.name=Hbm's Cape -item.cape_dafnik.name=Dafnik's Cape -item.cape_lpkukin.name=LPkukin's Cape -item.cape_vertice.name=Lord Vertice's Cape -item.cape_codered_.name=codered_'s Cape -item.cape_ayy.name=Ayy's Cape -item.cape_nostalgia.name=DrNostalgia's Cape - -tile.machine_converter_he_rf.name=HE to RF Converter -tile.machine_converter_rf_he.name=RF to HE Converter -tile.machine_transformer.name=10k-20Hz Transformer -tile.machine_transformer_dnt.name=DNT-20Hz Transformer -tile.machine_transformer_20.name=10k-1Hz Transformer -tile.machine_transformer_dnt_20.name=DNT-1Hz Transformer - -tile.vent_chlorine.name=Chlorine Vent -tile.vent_cloud.name=Cloud Vent -tile.vent_pink_cloud.name=Pink Cloud Vent - -tile.absorber.name=Radiation Absorber -tile.absorber_red.name=Enhanced Radiation Absorber -tile.absorber_green.name=Advanced Radiation Absorber -tile.absorber_pink.name=Elite Radiation Absorber -tile.decon.name=Player Decontaminator - -item.schrabidium_hammer.name=Schrabidium Hammer -item.shimmer_sledge.name=Shimmer Sledge -item.shimmer_axe.name=Shimmer Axe -item.euphemium_stopper.name=Stopper -item.matchstick.name=Matchstick -item.remote.name=Broken Remote - -item.shimmer_head.name=Heavy Hammer Head -item.shimmer_axe_head.name=Heavy Axe Head -item.shimmer_handle.name=Reinforced Polymer Handle - -item.redcoil_capacitor.name=Redcoil Capacitor -item.detonator.name=Detonator -item.detonator_multi.name=Multi Detonator -item.detonator_laser.name=Laser Detonator -item.detonator_deadman.name=Dead Man's Detonator -item.detonator_de.name=Dead Man's Explosive -item.crate_caller.name=Supply Drop Requester -item.bomb_caller.name=Airstrike Designator -item.meteor_remote.name=Meteorite Remote - -item.ingot_hes.name=Highly Enriched Schrabidium Fuel Ingot -item.ingot_les.name=Low Enriched Schrabidium Fuel Ingot -item.nugget_hes.name=Highly Enriched Schrabidium Fuel Nugget -item.nugget_les.name=Low Enriched Schrabidium Fuel Nugget - -item.pellet_schrabidium.name=Pure Schrabidium Watz Pellet -item.pellet_hes.name=HES Watz Pellet -item.pellet_mes.name=MES Watz Pellet -item.pellet_les.name=LES Watz Pellet -item.pellet_beryllium.name=Beryllium Moderator Pellet -item.pellet_neptunium.name=Neptunium Watz Pellet -item.pellet_lead.name=Lead Reflector Pellet -item.pellet_advanced.name=Advanced Watz Performance Improver - -item.titanium_filter.name=Titanium Filter - -tile.mud_block.name=Poisonous Mud -fluid.mud_fluid=Poisonous Mud -item.bucket_mud.name=Bucket of Poisonous Mud -tile.acid_block.name=Acid -fluid.acid_fluid=Acid -item.bucket_acid.name=Bucket of Acid -tile.toxic_block.name=Stereotypical Green Ooze -fluid.toxic_fluid=Stereotypical Green Ooze -item.bucket_toxic.name=Bucket of Stereotypical Green Ooze -item.tank_waste_0.name=Mud Container -item.tank_waste_1.name=Mud Container -item.tank_waste_2.name=Mud Container -item.tank_waste_3.name=Mud Container -item.tank_waste_4.name=Mud Container -item.tank_waste_5.name=Mud Container -item.tank_waste_6.name=Mud Container -item.tank_waste_7.name=Mud Container -item.tank_waste_8.name=Mud Container - -item.can_empty.name=Empty Can -item.can_smart.name='Smart' Energy Drink -item.can_creature.name='Creature' Energy Drink -item.can_redbomb.name='Red Bomb' Energy Drink -item.can_mrsugar.name='Dr. Sugar' Soft Drink -item.can_overcharge.name=Overcharge Delirium XT -item.can_luna.name=Black Mesa Luna - Dark Cola -item.bottle_empty.name=Empty Bomb-Shaped Bottle -item.bottle_nuka.name=Bottle of Nuka Cola -item.bottle_cherry.name=Bottle of Nuka Cherry -item.bottle_quantum.name=Bottle of Nuka Cola Quantum -item.bottle_sparkle.name=Bottle of S~Cola -item.bottle_rad.name=Bottle of S~Cola RAD -item.bottle2_empty.name=Empty Bottle -item.bottle2_korl.name=Korl -item.bottle2_fritz.name=Fritz Cola -item.bottle2_korl_special.name=The First Korl -item.bottle2_fritz_special.name=The First Fritz Cola -item.bottle2_sunset.name=Sunset Sarsaparilla -item.chocolate_milk.name=Chocolate Milk -item.cap_nuka.name=Nuka Cola Bottle Cap -item.cap_quantum.name=Nuka Cola Quantum Bottle Cap -item.cap_sparkle.name=S~Cola Bottle Cap -item.cap_rad.name=S~Cola RAD Bottle Cap -item.cap_korl.name=Korl Bottle Cap -item.cap_fritz.name=Fritz Cola Bottle Cap -item.cap_sunset.name=Sunset Sarsaparilla Bottle Cap -item.cap_star.name=Sunset Sarsaparilla Star Cap -item.ring_pull.name=Ring Pull - -item.canteen_13.name=Vault 13 Canteen -item.canteen_vodka.name=Stylish Flask - -item.bottle_opener.name=Hbm's Own Self-Made Bottle Opener - -item.blades_aluminium.name=Aluminium Shredder Blades -item.blades_gold.name=Golden Shredder Blades -item.blades_iron.name=Iron Shredder Blades -item.blades_steel.name=Steel Shredder Blades -item.blades_titanium.name=Titanium Shredder Blades -item.blades_advanced_alloy.name=Advanced Shredder Blades -item.blades_combine_steel.name=CMB Shredder Blades -item.blades_schrabidium.name=Schrabidium Shredder Blades - -item.stamp_stone_flat.name=Flat Stamp (Stone) -item.stamp_stone_plate.name=Plate Stamp (Stone) -item.stamp_stone_wire.name=Wire Stamp (Stone) -item.stamp_stone_circuit.name=Circuit Stamp (Stone) -item.stamp_iron_flat.name=Flat Stamp (Iron) -item.stamp_iron_plate.name=Plate Stamp (Iron) -item.stamp_iron_wire.name=Wire Stamp (Iron) -item.stamp_iron_circuit.name=Circuit Stamp (Iron) -item.stamp_steel_flat.name=Flat Stamp (Steel) -item.stamp_steel_plate.name=Plate Stamp (Steel) -item.stamp_steel_wire.name=Wire Stamp (Steel) -item.stamp_steel_circuit.name=Circuit Stamp (Steel) -item.stamp_titanium_flat.name=Flat Stamp (Titanium) -item.stamp_titanium_plate.name=Plate Stamp (Titanium) -item.stamp_titanium_wire.name=Wire Stamp (Titanium) -item.stamp_titanium_circuit.name=Circuit Stamp (Titanium) -item.stamp_obsidian_flat.name=Flat Stamp (Obsidian) -item.stamp_obsidian_plate.name=Plate Stamp (Obsidian) -item.stamp_obsidian_wire.name=Wire Stamp (Obsidian) -item.stamp_obsidian_circuit.name=Circuit Stamp (Obsidian) -item.stamp_schrabidium_flat.name=Flat Stamp (Schrabidium) -item.stamp_schrabidium_plate.name=Plate Stamp (Schrabidium) -item.stamp_schrabidium_wire.name=Wire Stamp (Schrabidium) -item.stamp_schrabidium_circuit.name=Circuit Stamp (Schrabidium) -item.stamp_357.name=.357 Magnum Stamp -item.stamp_44.name=.44 Magnum Stamp -item.stamp_9.name=Small Caliber Stamp -item.stamp_50.name=Large Caliber Stamp - -item.part_lithium.name=Box of Lithium Dust -item.part_beryllium.name=Box of Beryllium Dust -item.part_carbon.name=Box of Carbon Dust -item.part_copper.name=Box of Copper Dust -item.part_plutonium.name=Box of Plutonium Dust - -item.rune_blank.name=Blank Catalyst Matrix -item.rune_isa.name=Cool Catalyst Matrix -item.rune_dagaz.name=Balanced Catalyst Matrix -item.rune_hagalaz.name=Rough Catalyst Matrix -item.rune_jera.name=Multiplicative Catalyst Matrix -item.rune_thurisaz.name=Additive Catalyst Matrix - -item.ams_catalyst_blank.name=Blank Reaction Catalyst -item.ams_catalyst_aluminium.name=Aluminium Reaction Catalyst -item.ams_catalyst_beryllium.name=Beryllium Reaction Catalyst -item.ams_catalyst_caesium.name=Caeseium Reaction Catalyst -item.ams_catalyst_cerium.name=Cerium Reaction Catalyst -item.ams_catalyst_cobalt.name=Cobalt Reaction Catalyst -item.ams_catalyst_copper.name=Copper Reaction Catalyst -item.ams_catalyst_euphemium.name=Euphemium Reaction Catalyst -item.ams_catalyst_iron.name=Iron Reaction Catalyst -item.ams_catalyst_lithium.name=Lithium Reaction Catalyst -item.ams_catalyst_niobium.name=Niobium Reaction Catalyst -item.ams_catalyst_strontium.name=Strontium Reaction Catalyst -item.ams_catalyst_thorium.name=Thorium Reaction Catalyst -item.ams_catalyst_tungsten.name=Tungsten Reaction Catalyst -item.ams_catalyst_schrabidium.name=Schrabidium Reaction Catalyst -item.ams_catalyst_dineutronium.name=Dineutronium Reaction Catalyst - -item.ams_focus_blank.name=Blank Stabilizer Focus -item.ams_focus_limiter.name=Limiting Stabilizer Focus -item.ams_focus_booster.name=Boosting Stabilizer Focus - -item.ams_muzzle.name=Ray-Emission Muzzle - -item.ams_core_sing.name=Vibrant Singularity (AMS Core) -item.ams_core_wormhole.name=Tiny Wormhole (AMS Core) -item.ams_core_eyeofharmony.name=Eye of Harmony (AMS Core) -item.ams_core_thingy.name=Thingy (AMS Core) - -item.crystal_energy.name=Energy Crystal -item.pellet_coolant.name=Coolant Cluster - -item.linker.name=Telelinker -item.reactor_sensor.name=Reactor Remote Sensor -item.oil_detector.name=Oil Reservoir Detector -item.geiger_counter.name=Handheld Geiger Counter -tile.geiger.name=Geiger Counter -item.survey_scanner.name=Survey Scanner - -item.thermo_element.name=Thermoelectric Element -item.limiter.name=Generator Limiter - -item.multitool_dig.name=Power Fist (Digging Claw) -item.multitool_silk.name=Power Fist (Silk Touch Claw) -item.multitool_ext.name=Power Fist (Ore Extractor) -item.multitool_miner.name=Power Fist (Extracting Mining Laser) -item.multitool_hit.name=Power Fist (Fist) -item.multitool_beam.name=Power Fist (Zapper) -item.multitool_sky.name=Power Fist (Crack the Sky) -item.multitool_mega.name=Power Fist (Super Punch) -item.multitool_joule.name=Power Fist (Giga Joule) -item.multitool_decon.name=Power Fist (Decontaminator) - -item.australium_iii.name=Mark III Life Extender -item.australium_iv.name=Mark IV Life Extender -item.australium_v.name=Mark V Life Extender - -item.weapon_saw.name=Doctor Assisted Homicide -item.weapon_bat.name=Richard's Default -item.weapon_bat_nail.name=The Cliché -item.weapon_golf_club.name=Russian Mobster's Club -item.weapon_pipe_rusty.name=The Attitude Adjuster -item.weapon_pipe_lead.name=The Manual Override -item.reer_graar.name=The Reer Graar - -item.letter.name=Express Mail -item.polaroid.name=The Polaroid -item.glitch.name=Glitch -item.book_secret.name=3-596-50802-9 -item.book_of_.name=The Book of -item.burnt_bark.name=Burnt Bark - -item.crystal_horn.name=Crystal Horn -item.crystal_charred.name=Charred Crystal -item.ingot_lanthanium.name=Semi-Stable Lanthanium Ingot -item.ingot_actinium.name=Semi-Stable Actinium Ingot - -tile.dummy_block.name=Dummy Block -tile.dummy_port.name=Dummy Block (Electricity Port) - -item.chopper.name=Hunter Chopper - -item.nothing.name=Nothing - -tile.crystal_virus.name=Dark Crystal -tile.crystal_hardened.name=Hardened Dark Crystal -tile.crystal_pulsar.name=Pulsating Crystal - -tile.taint.name=Taint -tile.residue.name=Cloud Residue -item.powder_cloud.name=Cloud Residue - -tile.cheater_virus.name=Gelid Euphemium -tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block - -item.mysteryshovel.name=Brittle Spade -tile.ntm_dirt.name=Dirt -item.memory.name=item.null.name \ No newline at end of file diff --git a/src/main/resources/assets/hbm/lang/ns_OC.lang b/src/main/resources/assets/hbm/lang/ns_OC.lang deleted file mode 100644 index a54936873..000000000 --- a/src/main/resources/assets/hbm/lang/ns_OC.lang +++ /dev/null @@ -1,2963 +0,0 @@ -language.name=Newspeak -language.region=Oceania -language.code=ns_OC - -gui.done=Done -gui.cancel=Abort -gui.back=Back -gui.toMenu=Back to Selectfield -gui.up=Up -gui.down=Down -gui.yes=Yes -gui.no=No - -translation.test.none=Hello, world! -translation.test.complex=Prefix, %s%2$s again %s and %1$s lastly %s and also %1$s again! -translation.test.escape=%%s %%%s %%%%s %%%%%s -translation.test.invalid=hi % -translation.test.invalid2=hi % s -translation.test.args=%s %s -translation.test.world=world - -menu.game=Selectfield -menu.singleplayer=Loneplay -menu.multiplayer=Manyplay -menu.online=Gameland -menu.options=Settings -menu.quit=Leave Playings -menu.returnToMenu=Save and Return -menu.disconnect=Leave -menu.returnToGame=Back to Playings -menu.switchingLevel=Switching worlds -menu.generatingLevel=Building world -menu.loadingLevel=Loading world -menu.generatingTerrain=Building land -menu.convertingLevel=Newbuilding world -menu.simulating=Virtualplaying the world -menu.respawning=Reliving -menu.shareToLan=Open to nearby Players - -selectWorld.title=Select World -selectWorld.empty=empty -selectWorld.world=World -selectWorld.select=Play World -selectWorld.create=Build World -selectWorld.recreate=Newbuild -selectWorld.createDemo=Play Demoworld -selectWorld.delete=Destroy -selectWorld.rename=Newname -selectWorld.deleteQuestion=Are you of conscience to destroy world? -selectWorld.deleteWarning=will be vaporized for longtime! -selectWorld.deleteButton=Destroy -selectWorld.renameButton=Newname -selectWorld.renameTitle=Newname World -selectWorld.conversion=Mut be newbuilded! -selectWorld.newWorld=New World -selectWorld.newWorld.copyOf=Dupe of %s -selectWorld.enterName=World Name -selectWorld.resultFolder=Will be saved in: -selectWorld.enterSeed=Code for Worldbuilder -selectWorld.seedInfo=Keep empty for random code -selectWorld.cheats=Crimeplay -selectWorld.customizeType=Custommake - -createWorld.customize.presets=Presets -createWorld.customize.presets.title=Select Preset -createWorld.customize.presets.select=Use Preset -createWorld.customize.presets.share=Do you intend to sharegive present? Copy text of box! -createWorld.customize.presets.list=Here are worlds maked by the Party: -createWorld.customize.flat.title=Flatworld making -createWorld.customize.flat.tile=Layerstuff -createWorld.customize.flat.height=Height -createWorld.customize.flat.addLayer=Make Layer -createWorld.customize.flat.editLayer=Remake Layer -createWorld.customize.flat.removeLayer=Delete Layer -createWorld.customize.flat.layer.top=Top - %d -createWorld.customize.flat.layer=%d -createWorld.customize.flat.layer.bottom=Bottom - %d - -gameMode.survival=Livings Mode -gameMode.creative=Crimeplay Mode -gameMode.adventure=Pluslivings Mode -gameMode.hardcore=Doublepluslivings Mode -gameMode.changed=Your mode was set anew! - -selectWorld.gameMode=Playings Mode -selectWorld.gameMode.survival=Livings -selectWorld.gameMode.survival.line1=Look for groundstuffs, build worktools, -selectWorld.gameMode.survival.line2=prevent unliving. -selectWorld.gameMode.creative=Crimeplay -selectWorld.gameMode.creative.line1=Unlimited buildstuffs, flyability, -selectWorld.gameMode.creative.line2=delete blocks shorttimely -selectWorld.gameMode.hardcore=Doublepluslivings -selectWorld.gameMode.hardcore.line1=Doubleplusplayingshardness, -selectWorld.gameMode.hardcore.line2=longtime unliving -selectWorld.gameMode.adventure=Pluslivings -selectWorld.gameMode.adventure.line1=Buildstuffs unbuildwise, -selectWorld.gameMode.adventure.line2=undeletewise -selectWorld.moreWorldOptions=Plusworldsettings... -selectWorld.mapFeatures=Build Buildings: -selectWorld.mapFeatures.info=Cities, prisons, etc. -selectWorld.mapType=World Type: -selectWorld.mapType.normal=Normal -selectWorld.allowCommands=Allow Crimeplay: -selectWorld.allowCommands.info=Crimeplay to steal material, /give -selectWorld.hardcoreMode=Doublepluslivings: -selectWorld.hardcoreMode.info=World is deleted on unliving -selectWorld.bonusItems=Pluscrate: - -generator.default=Default -generator.flat=Flatworld -generator.largeBiomes=Doubleplus Setting -generator.amplified=Tripleplus Setting - -generator.amplified.info=For doubleplusgood caclulators only! - -selectServer.title=Select Multiplayings -selectServer.empty=empty -selectServer.select=Join Multiplayings -selectServer.direct=Instant Line -selectServer.edit=Newmake -selectServer.delete=Delete -selectServer.add=Make Multiplayings -selectServer.defaultName=Minecraft Multiplayings -selectServer.deleteQuestion=Are you of conscience to destroy multiplayings? -selectServer.deleteWarning=will be vaporized for longtime! -selectServer.deleteButton=Delete -selectServer.refresh=Renew -selectServer.hiddenAddress=(Unshowing) -addServer.title=Remake Multiplayings Info -addServer.enterName=Multiplayings Name -addServer.enterIp=Multiplayings Code -addServer.add=Done -addServer.hideAddress=Unshow Code -addServer.resourcePack=Multiplayings Lookpackage -addServer.resourcePack.enabled=Enabled -addServer.resourcePack.disabled=Disabled -addServer.resourcePack.prompt=Prompt -lanServer.title=Local Multiplayings -lanServer.scanning=Finding games in local space -lanServer.start=Make local nultiplayings -lanServer.otherPlayers=Settings for Players -mcoServer.title=Minecraft Internet Multiplayings - -multiplayer.title=Play Multiplayings -multiplayer.connect=Multiplay -multiplayer.info1=Minecraft Multiplayings unmade, -multiplayer.info2=testing progressing.... -multiplayer.ipinfo=Enter IP Code of Multiplayings to Multiplay -multiplayer.texturePrompt.line1=Multiplay orders you to playings with lookpackage -multiplayer.texturePrompt.line2=Are you of conscience to load lookpackage? -multiplayer.downloadingTerrain=Loadings land... -multiplayer.downloadingStats=Loading achievings... -multiplayer.stopSleeping=Unsleep -multiplayer.player.joined=%s joined multiplayings -multiplayer.player.joined.renamed=%s (unnamed %s) joined multiplayings -multiplayer.player.left=%s unjoined multiplayings - -chat.cannotSend=Unsending text -chat.type.text=<%s> %s -chat.type.emote=* %s %s -chat.type.announcement=[%s] %s -chat.type.admin=[%s: %s] -chat.type.achievement=%s maded achievings %s -chat.link.confirm=Are you of conscience to load internet page? -chat.link.warning=Unload untrusty internet pages! -chat.copy=Remaking to Copyboard -chat.link.confirmTrusted=Are you opening internet code or remaking to copyboard? -chat.link.open=Open in internet window - -chat.stream.text=(%s) <%s> %s -chat.stream.emote=(%s) * %s %s - -menu.playdemo=Play Demo World -menu.resetdemo=Remake Demo World - -demo.day.1=This demo will vaporize in five days! -demo.day.2=Day Two -demo.day.3=Day Three -demo.day.4=Day Four -demo.day.5=Day Five!! -demo.day.warning=Demo will vaporize soonwise! -demo.day.6=Demo ended! Make screenpicture with F2! -demo.reminder=Demo ended, buy full playing or vaporize this world! -demo.remainingTime=Remaining time: %s -demo.demoExpired=Demo time's up! -demo.help.movement=Use %1$s, %2$s, %3$s, %4$s and and mouse to move. -demo.help.movementShort=Move by pressing %1$s, %2$s, %3$s, %4$s -demo.help.movementMouse=Look around using mouse -demo.help.jump=Jump by pressing %1$s -demo.help.inventory=Use %1$s to open material storage! -demo.help.title=Minecraft Demo Mode -demo.help.fullWrapped=This demo will vaporize in 5 Minecraft days (~1 hour and 40 minutes) -demo.help.buy=Pay up! -demo.help.later=Keep playing! - -connect.connecting=Joining multiplayings... -connect.authorizing=Logging in... -connect.failed=Unjoined to this multiplaying! - -disconnect.genericReason=%s -disconnect.disconnected=Unjoined by Multiplaying -disconnect.lost=Unjoined -disconnect.kicked=Was vaporized from multiplayings -disconnect.timeout=Ran out of time -disconnect.closed=Joining deleted -disconnect.loginFailed=Unable joining -disconnect.loginFailedInfo=Unable joining: %s -disconnect.loginFailedInfo.serversUnavailable=Authjoinings unable due to internet rebuilding -disconnect.loginFailedInfo.invalidSession=Unsession (restart minecraft) -disconnect.quitting=Unplaying -disconnect.endOfStream=End of internet -disconnect.overflow=Buffer unliving -disconnect.spam=Vaporized for Thoughtcrimes - -soundCategory.master=Party Loundness -soundCategory.music=Music Louness -soundCategory.record=Note Loudness -soundCategory.weather=Weather Loudness -soundCategory.hostile=Enemy Loudness -soundCategory.neutral=Ally Loudness -soundCategory.player=Players Loudness -soundCategory.block=Buildstuffs Loudness -soundCategory.ambient=Ominous Loudness - -record.nowPlaying=Musicplays: %s - -options.off=OFF -options.on=ON -options.visible=Shown -options.hidden=Unshown -options.title=Settings -options.controls=Control... -options.video=Seeing Settings... -options.language=Speak... -options.stream=Sending Settings... -options.sounds=Loudness... -options.sounds.title=Loudness Settigns -options.languageWarning=Speakwork not 100% precise -options.videoTitle=Seeing Settings -options.music=Music -options.sound=Noise -options.invertMouse=Unmove Mouse -options.fov=FOV -options.fov.min=Normal -options.fov.max=Real Oceanian -options.saturation=Saturation -options.gamma=Brightness -options.gamma.min=Unright -options.gamma.max=Bright -options.sensitivity=Movespeed -options.sensitivity.min=Doubleplusunspeedwise -options.sensitivity.max=Doubleplusspeedwise -options.renderDistance=Seeing Distance -options.renderDistance.tiny=Plusunlarge -options.renderDistance.short=Unlarge -options.renderDistance.normal=Normal -options.renderDistance.far=Large -options.viewBobbing=Victory Gin -options.ao=Light Smoothness -options.ao.off=OFF -options.ao.min=Unsmooth -options.ao.max=Smooth -options.anaglyph=3D Anaglyph -options.framerateLimit=Max Speed -options.framerateLimit.max=Unlimited Speed -options.difficulty=Game Hardness -options.difficulty.peaceful=Armistice -options.difficulty.easy=Unhard -options.difficulty.normal=Hard -options.difficulty.hard=Plushard -options.difficulty.hardcore=Doubleplushard -options.graphics=Looking -options.graphics.fancy=Good -options.graphics.fast=Fast -options.guiScale=GUI Largeness -options.guiScale.auto=Auto -options.guiScale.small=Unlarge -options.guiScale.normal=Normal -options.guiScale.large=Large -options.advancedOpengl=Doubleplus OpenGL -options.fboEnable=Enable FBOs -options.postProcessEnable=Enable Post-Processing -options.aoDesc0=Enable faux ambient occlusion on blocks. -options.aoDesc1= -options.framerateLimitDesc0=Select maximum fastness: -options.framerateLimitDesc1=35fps, 120fps, or 200+fps. -options.viewBobbingDesc0=Enables drunkenness -options.viewBobbingDesc1= -options.renderCloudsDesc0=Enables drawing of skyclouds -options.renderCloudsDesc1= -options.graphicsDesc0='Fancy': Doubleplusgood looking -options.graphicsDesc1='Fast': For ungood calculators -options.renderDistanceDesc0=Maximum looking largeness. Unlarge -options.renderDistanceDesc1=numbers work better on ungood calculators -options.particlesDesc0=Sets plentifulness of looking pieces -options.particlesDesc1=Unmany looking pieces work better on ungood calculators - - - - - - - - -options.advancedOpenglDesc0=Enables occlusion queries. On AMD and Intel -options.advancedOpenglDesc1=hardware, this may decrease performance. -options.fboEnableDesc0=Enables the use of Framebuffer Objects. -options.fboEnableDesc1=Necessary for certain Minecraft features. -options.postProcessEnableDesc0=Enables post-processing. Disabling will -options.postProcessEnableDesc1=result in reduction in Awesome Levels. -options.renderClouds=Clouds -options.qualityButton=Video Quality Settings... -options.qualityVideoTitle=Video Quality Settings -options.performanceButton=Video Performance Settings... -options.performanceVideoTitle=Video Performance Settings -options.advancedButton=Advanced Video Settings... -options.advancedVideoTitle=Advanced Video Settings -options.postButton=Post-Processing Settings... -options.postVideoTitle=Post-Processing Settings -options.farWarning1=A 64 bit Java installation is recommended -options.farWarning2=for 'Far' render distance (you have 32 bit) -options.particles=Particles -options.particles.all=All -options.particles.decreased=Decreased -options.particles.minimal=Minimal -options.multiplayer.title=Multiplayer Settings... -options.chat.title=Chat Settings... -options.chat.visibility=Chat -options.chat.visibility.full=Shown -options.chat.visibility.system=Commands Only -options.chat.visibility.hidden=Hidden -options.chat.color=Colors -options.chat.opacity=Opacity -options.chat.links=Web Links -options.chat.links.prompt=Prompt on Links -options.chat.scale=Scale -options.chat.width=Width -options.chat.height.focused=Focused Height -options.chat.height.unfocused=Unfocused Height -options.showCape=Show Cape -options.snooper=Allow Snooper -options.snooper.view=Snooper Settings... -options.snooper.title=Machine Specs Collection -options.snooper.desc=We want to collect information about your machine to help improve Minecraft by knowing what we can support and where the biggest problems are. All of this information is completely anonymous and viewable below. We promise we won't do anything bad with this data, but if you want to opt out then feel free to toggle it off! -options.resourcepack=Resource Packs... -options.fullscreen=Fullscreen -options.vsync=Use VSync -options.touchscreen=Touchscreen Mode - -options.mipmapLevels=Mipmap Levels -options.anisotropicFiltering=Anisotropic Filtering -options.forceUnicodeFont=Force Unicode Font - -options.stream.title=Twitch Broadcast Settings -options.stream.bytesPerPixel=Quality -options.stream.micVolumne=Mic Volume -options.stream.micToggleBehavior=Push To -options.stream.mic_toggle.mute=Mute -options.stream.mic_toggle.talk=Talk -options.stream.systemVolume=System Volume -options.stream.kbps=Bandwidth -options.stream.fps=Framerate -options.stream.sendMetadata=Send Metadata -options.stream.compression=Compression -options.stream.compression.low=Low -options.stream.compression.medium=Medium -options.stream.compression.high=High -options.stream.estimation=Estimated resolution: %dx%d -options.stream.changes=You may need to restart your stream for these changes to take place. -options.stream.ingestSelection=Broadcast Server List -options.stream.ingest.title=Twitch Broadcast Servers -options.stream.ingest.reset=Reset Preference -options.stream.chat.title=Twitch Chat Settings -options.stream.chat.enabled=Enable -options.stream.chat.enabled.streaming=Whilst Streaming -options.stream.chat.enabled.always=Always -options.stream.chat.enabled.never=Never -options.stream.chat.userFilter=User Filter -options.stream.chat.userFilter.all=All Viewers -options.stream.chat.userFilter.subs=Subscribers -options.stream.chat.userFilter.mods=Moderators - -title.oldgl1=Old graphics card detected; this may prevent you from -title.oldgl2=playing in the future as OpenGL 2.0 will be required. - -controls.title=Controls -controls.reset=Reset -controls.resetAll=Reset Keys - -key.sprint=Sprint -key.forward=Walk Forwards -key.left=Strafe Left -key.back=Walk Backwards -key.right=Strafe Right -key.jump=Jump -key.inventory=Inventory -key.drop=Drop Item -key.chat=Open Chat -key.sneak=Sneak -key.playerlist=List Players -key.attack=Attack/Destroy -key.use=Use Item/Place Block -key.pickItem=Pick Block -key.mouseButton=Button %1$s -key.command=Open Command -key.screenshot=Take Screenshot -key.togglePerspective=Toggle Perspective -key.smoothCamera=Toggle Cinematic Camera -key.fullscreen=Toggle Fullscreen -key.hotbar.1=Hotbar Slot 1 -key.hotbar.2=Hotbar Slot 2 -key.hotbar.3=Hotbar Slot 3 -key.hotbar.4=Hotbar Slot 4 -key.hotbar.5=Hotbar Slot 5 -key.hotbar.6=Hotbar Slot 6 -key.hotbar.7=Hotbar Slot 7 -key.hotbar.8=Hotbar Slot 8 -key.hotbar.9=Hotbar Slot 9 -key.streamStartStop=Start/Stop Stream -key.streamPauseUnpause=Pause/Unpause Stream -key.streamCommercial=Show Stream Commercials -key.streamToggleMic=Push To Talk/Mute - -key.categories.movement=Movement -key.categories.misc=Miscellaneous -key.categories.multiplayer=Multiplayer -key.categories.gameplay=Gameplay -key.categories.ui=Game Interface -key.categories.inventory=Inventory -key.categories.stream=Streaming - -resourcePack.openFolder=Open resource pack folder -resourcePack.title=Select Resource Packs -resourcePack.available.title=Available Resource Packs -resourcePack.selected.title=Selected Resource Packs -resourcePack.folderInfo=(Place resource pack files here) - -sign.edit=Edit sign message - -book.pageIndicator=Page %1$s of %2$s -book.byAuthor=by %1$s -book.signButton=Sign -book.editTitle=Enter Book Title: -book.finalizeButton=Sign and Close -book.finalizeWarning=Note! When you sign the book, it will no longer be editable. - -tile.stone.name=Stone -tile.hayBlock.name=Hay Bale -tile.grass.name=Grass Block -tile.dirt.default.name=Dirt -tile.dirt.podzol.name=Podzol -tile.stonebrick.name=Cobblestone -tile.wood.name=Wooden Planks -tile.wood.oak.name=Oak Wood Planks -tile.wood.spruce.name=Spruce Wood Planks -tile.wood.birch.name=Birch Wood Planks -tile.wood.jungle.name=Jungle Wood Planks -tile.wood.acacia.name=Acacia Wood Planks -tile.wood.big_oak.name=Dark Oak Wood Planks -tile.sapling.oak.name=Oak Sapling -tile.sapling.spruce.name=Spruce Sapling -tile.sapling.birch.name=Birch Sapling -tile.sapling.jungle.name=Jungle Sapling -tile.sapling.acacia.name=Acacia Sapling -tile.sapling.roofed_oak.name=Dark Oak Sapling -tile.deadbush.name=Dead Bush -tile.bedrock.name=Bedrock -tile.water.name=Water -tile.lava.name=Lava -tile.sand.default.name=Sand -tile.sand.red.name=Red Sand -tile.sandStone.name=Sandstone -tile.sandStone.default.name=Sandstone -tile.sandStone.chiseled.name=Chiseled Sandstone -tile.sandStone.smooth.name=Smooth Sandstone -tile.gravel.name=Gravel -tile.oreGold.name=Gold Ore -tile.oreIron.name=Iron Ore -tile.oreCoal.name=Coal Ore -tile.log.name=Wood -tile.log.oak.name=Oak Wood -tile.log.spruce.name=Spruce Wood -tile.log.birch.name=Birch Wood -tile.log.jungle.name=Jungle Wood -tile.log.acacia.name=Acacia Wood -tile.log.big_oak.name=Dark Oak Wood -tile.leaves.name=Leaves -tile.leaves.oak.name=Oak Leaves -tile.leaves.spruce.name=Spruce Leaves -tile.leaves.birch.name=Birch Leaves -tile.leaves.jungle.name=Jungle Leaves -tile.leaves.acacia.name=Acacia Leaves -tile.leaves.big_oak.name=Dark Oak Leaves -tile.tallgrass.name=Grass -tile.tallgrass.shrub.name=Shrub -tile.tallgrass.grass.name=Grass -tile.tallgrass.fern.name=Fern -tile.sponge.name=Sponge -tile.glass.name=Glass -tile.stainedGlass.name=Stained Glass -tile.stainedGlass.black.name=Black Stained Glass -tile.stainedGlass.red.name=Red Stained Glass -tile.stainedGlass.green.name=Green Stained Glass -tile.stainedGlass.brown.name=Brown Stained Glass -tile.stainedGlass.blue.name=Blue Stained Glass -tile.stainedGlass.purple.name=Purple Stained Glass -tile.stainedGlass.cyan.name=Cyan Stained Glass -tile.stainedGlass.silver.name=Light Gray Stained Glass -tile.stainedGlass.gray.name=Gray Stained Glass -tile.stainedGlass.pink.name=Pink Stained Glass -tile.stainedGlass.lime.name=Lime Stained Glass -tile.stainedGlass.yellow.name=Yellow Stained Glass -tile.stainedGlass.lightBlue.name=Light Blue Stained Glass -tile.stainedGlass.magenta.name=Magenta Stained Glass -tile.stainedGlass.orange.name=Orange Stained Glass -tile.stainedGlass.white.name=White Stained Glass -tile.thinStainedGlass.name=Stained Glass Pane -tile.thinStainedGlass.black.name=Black Stained Glass Pane -tile.thinStainedGlass.red.name=Red Stained Glass Pane -tile.thinStainedGlass.green.name=Green Stained Glass Pane -tile.thinStainedGlass.brown.name=Brown Stained Glass Pane -tile.thinStainedGlass.blue.name=Blue Stained Glass Pane -tile.thinStainedGlass.purple.name=Purple Stained Glass Pane -tile.thinStainedGlass.cyan.name=Cyan Stained Glass Pane -tile.thinStainedGlass.silver.name=Light Gray Stained Glass Pane -tile.thinStainedGlass.gray.name=Gray Stained Glass Pane -tile.thinStainedGlass.pink.name=Pink Stained Glass Pane -tile.thinStainedGlass.lime.name=Lime Stained Glass Pane -tile.thinStainedGlass.yellow.name=Yellow Stained Glass Pane -tile.thinStainedGlass.lightBlue.name=Light Blue Stained Glass Pane -tile.thinStainedGlass.magenta.name=Magenta Stained Glass Pane -tile.thinStainedGlass.orange.name=Orange Stained Glass Pane -tile.thinStainedGlass.white.name=White Stained Glass Pane -tile.thinGlass.name=Glass Pane -tile.cloth.name=Wool -tile.flower1.dandelion.name=Dandelion -tile.flower2.poppy.name=Poppy -tile.flower2.blueOrchid.name=Blue Orchid -tile.flower2.allium.name=Allium -tile.flower2.houstonia.name=Azure Bluet -tile.flower2.tulipRed.name=Red Tulip -tile.flower2.tulipOrange.name=Orange Tulip -tile.flower2.tulipWhite.name=White Tulip -tile.flower2.tulipPink.name=Pink Tulip -tile.flower2.oxeyeDaisy.name=Oxeye Daisy -tile.doublePlant.sunflower.name=Sunflower -tile.doublePlant.syringa.name=Lilac -tile.doublePlant.grass.name=Double Tallgrass -tile.doublePlant.fern.name=Large Fern -tile.doublePlant.rose.name=Rose Bush -tile.doublePlant.paeonia.name=Peony -tile.mushroom.name=Mushroom -tile.blockGold.name=Block of Gold -tile.blockIron.name=Block of Iron -tile.stoneSlab.stone.name=Stone Slab -tile.stoneSlab.sand.name=Sandstone Slab -tile.stoneSlab.wood.name=Wooden Slab -tile.stoneSlab.cobble.name=Cobblestone Slab -tile.stoneSlab.brick.name=Bricks Slab -tile.stoneSlab.smoothStoneBrick.name=Stone Bricks Slab -tile.stoneSlab.netherBrick.name=Nether Brick Slab -tile.stoneSlab.quartz.name=Quartz Slab -tile.woodSlab.oak.name=Oak Wood Slab -tile.woodSlab.spruce.name=Spruce Wood Slab -tile.woodSlab.birch.name=Birch Wood Slab -tile.woodSlab.jungle.name=Jungle Wood Slab -tile.woodSlab.acacia.name=Acacia Wood Slab -tile.woodSlab.big_oak.name=Dark Oak Wood Slab -tile.brick.name=Bricks -tile.tnt.name=TNT -tile.bookshelf.name=Bookshelf -tile.stoneMoss.name=Moss Stone -tile.obsidian.name=Obsidian -tile.torch.name=Torch -tile.fire.name=Fire -tile.mobSpawner.name=Monster Spawner -tile.stairsWood.name=Oak Wood Stairs -tile.stairsWoodSpruce.name=Spruce Wood Stairs -tile.stairsWoodBirch.name=Birch Wood Stairs -tile.stairsWoodJungle.name=Jungle Wood Stairs -tile.stairsWoodAcacia.name=Acacia Wood Stairs -tile.stairsWoodDarkOak.name=Dark Oak Wood Stairs -tile.chest.name=Chest -tile.chestTrap.name=Trapped Chest -tile.redstoneDust.name=Redstone Dust -tile.oreDiamond.name=Diamond Ore -tile.blockCoal.name=Block of Coal -tile.blockDiamond.name=Block of Diamond -tile.workbench.name=Crafting Table -tile.crops.name=Crops -tile.farmland.name=Farmland -tile.furnace.name=Furnace -tile.sign.name=Sign -tile.doorWood.name=Wooden Door -tile.ladder.name=Ladder -tile.rail.name=Rail -tile.goldenRail.name=Powered Rail -tile.activatorRail.name=Activator Rail -tile.detectorRail.name=Detector Rail -tile.stairsStone.name=Stone Stairs -tile.stairsSandStone.name=Sandstone Stairs -tile.lever.name=Lever -tile.pressurePlate.name=Pressure Plate -tile.weightedPlate_light.name=Weighted Pressure Plate (Light) -tile.weightedPlate_heavy.name=Weighted Pressure Plate (Heavy) -tile.doorIron.name=Iron Door -tile.oreRedstone.name=Redstone Ore -tile.notGate.name=Redstone Torch -tile.button.name=Button -tile.snow.name=Snow -tile.woolCarpet.black.name=Black Carpet -tile.woolCarpet.red.name=Red Carpet -tile.woolCarpet.green.name=Green Carpet -tile.woolCarpet.brown.name=Brown Carpet -tile.woolCarpet.blue.name=Blue Carpet -tile.woolCarpet.purple.name=Purple Carpet -tile.woolCarpet.cyan.name=Cyan Carpet -tile.woolCarpet.silver.name=Light Gray Carpet -tile.woolCarpet.gray.name=Gray Carpet -tile.woolCarpet.pink.name=Pink Carpet -tile.woolCarpet.lime.name=Lime Carpet -tile.woolCarpet.yellow.name=Yellow Carpet -tile.woolCarpet.lightBlue.name=Light Blue Carpet -tile.woolCarpet.magenta.name=Magenta Carpet -tile.woolCarpet.orange.name=Orange Carpet -tile.woolCarpet.white.name=Carpet -tile.ice.name=Ice -tile.icePacked.name=Packed Ice -tile.cactus.name=Cactus -tile.clay.name=Clay -tile.clayHardenedStained.black.name=Black Stained Clay -tile.clayHardenedStained.red.name=Red Stained Clay -tile.clayHardenedStained.green.name=Green Stained Clay -tile.clayHardenedStained.brown.name=Brown Stained Clay -tile.clayHardenedStained.blue.name=Blue Stained Clay -tile.clayHardenedStained.purple.name=Purple Stained Clay -tile.clayHardenedStained.cyan.name=Cyan Stained Clay -tile.clayHardenedStained.silver.name=Light Gray Stained Clay -tile.clayHardenedStained.gray.name=Gray Stained Clay -tile.clayHardenedStained.pink.name=Pink Stained Clay -tile.clayHardenedStained.lime.name=Lime Stained Clay -tile.clayHardenedStained.yellow.name=Yellow Stained Clay -tile.clayHardenedStained.lightBlue.name=Light Blue Stained Clay -tile.clayHardenedStained.magenta.name=Magenta Stained Clay -tile.clayHardenedStained.orange.name=Orange Stained Clay -tile.clayHardenedStained.white.name=White Stained Clay -tile.clayHardened.name=Hardened Clay -tile.reeds.name=Sugar cane -tile.jukebox.name=Jukebox -tile.fence.name=Fence -tile.fenceGate.name=Fence Gate -tile.pumpkin.name=Pumpkin -tile.litpumpkin.name=Jack o'Lantern -tile.hellrock.name=Netherrack -tile.hellsand.name=Soul Sand -tile.lightgem.name=Glowstone -tile.portal.name=Portal -tile.cloth.black.name=Black Wool -tile.cloth.red.name=Red Wool -tile.cloth.green.name=Green Wool -tile.cloth.brown.name=Brown Wool -tile.cloth.blue.name=Blue Wool -tile.cloth.purple.name=Purple Wool -tile.cloth.cyan.name=Cyan Wool -tile.cloth.silver.name=Light Gray Wool -tile.cloth.gray.name=Gray Wool -tile.cloth.pink.name=Pink Wool -tile.cloth.lime.name=Lime Wool -tile.cloth.yellow.name=Yellow Wool -tile.cloth.lightBlue.name=Light Blue Wool -tile.cloth.magenta.name=Magenta Wool -tile.cloth.orange.name=Orange Wool -tile.cloth.white.name=Wool -tile.oreLapis.name=Lapis Lazuli Ore -tile.blockLapis.name=Lapis Lazuli Block -tile.dispenser.name=Dispenser -tile.dropper.name=Dropper -tile.musicBlock.name=Note Block -tile.cake.name=Cake -tile.bed.name=Bed -tile.bed.occupied=This bed is occupied -tile.bed.noSleep=You can only sleep at night -tile.bed.notSafe=You may not rest now, there are monsters nearby -tile.bed.notValid=Your home bed was missing or obstructed -tile.lockedchest.name=Locked chest -tile.trapdoor.name=Trapdoor -tile.web.name=Cobweb -tile.stonebricksmooth.name=Stone Bricks -tile.stonebricksmooth.default.name=Stone Bricks -tile.stonebricksmooth.mossy.name=Mossy Stone Bricks -tile.stonebricksmooth.cracked.name=Cracked Stone Bricks -tile.stonebricksmooth.chiseled.name=Chiseled Stone Bricks -tile.monsterStoneEgg.stone.name=Stone Monster Egg -tile.monsterStoneEgg.cobble.name=Cobblestone Monster Egg -tile.monsterStoneEgg.brick.name=Stone Brick Monster Egg -tile.monsterStoneEgg.mossybrick.name=Mossy Stone Brick Monster Egg -tile.monsterStoneEgg.crackedbrick.name=Cracked Stone Brick Monster Egg -tile.monsterStoneEgg.chiseledbrick.name=Chiseled Stone Brick Monster Egg -tile.pistonBase.name=Piston -tile.pistonStickyBase.name=Sticky Piston -tile.fenceIron.name=Iron Bars -tile.melon.name=Melon -tile.stairsBrick.name=Brick Stairs -tile.stairsStoneBrickSmooth.name=Stone Brick Stairs -tile.vine.name=Vines -tile.netherBrick.name=Nether Brick -tile.netherFence.name=Nether Brick Fence -tile.stairsNetherBrick.name=Nether Brick Stairs -tile.netherStalk.name=Nether Wart -tile.cauldron.name=Cauldron -tile.enchantmentTable.name=Enchantment Table -tile.anvil.name=Anvil -tile.anvil.intact.name=Anvil -tile.anvil.slightlyDamaged.name=Slightly Damaged Anvil -tile.anvil.veryDamaged.name=Very Damaged Anvil -tile.whiteStone.name=End Stone -tile.endPortalFrame.name=End Portal -tile.mycel.name=Mycelium -tile.waterlily.name=Lily Pad -tile.dragonEgg.name=Dragon Egg -tile.redstoneLight.name=Redstone Lamp -tile.cocoa.name=Cocoa -tile.enderChest.name=Ender Chest -tile.oreRuby.name=Ruby Ore -tile.oreEmerald.name=Emerald Ore -tile.blockEmerald.name=Block of Emerald -tile.blockRedstone.name=Block of Redstone -tile.tripWire.name=Tripwire -tile.tripWireSource.name=Tripwire Hook -tile.commandBlock.name=Command Block -tile.beacon.name=Beacon -tile.beacon.primary=Primary Power -tile.beacon.secondary=Secondary Power -tile.cobbleWall.normal.name=Cobblestone Wall -tile.cobbleWall.mossy.name=Mossy Cobblestone Wall -tile.carrots.name=Carrots -tile.potatoes.name=Potatoes -tile.daylightDetector.name=Daylight Sensor -tile.netherquartz.name=Nether Quartz Ore -tile.hopper.name=Hopper -tile.quartzBlock.default.name=Block of Quartz -tile.quartzBlock.chiseled.name=Chiseled Quartz Block -tile.quartzBlock.lines.name=Pillar Quartz Block -tile.stairsQuartz.name=Quartz Stairs - -item.nameTag.name=Name Tag -item.leash.name=Lead -item.shovelIron.name=Iron Shovel -item.pickaxeIron.name=Iron Pickaxe -item.hatchetIron.name=Iron Axe -item.flintAndSteel.name=Flint and Steel -item.apple.name=Apple -item.cookie.name=Cookie -item.bow.name=Bow -item.arrow.name=Arrow -item.coal.name=Coal -item.charcoal.name=Charcoal -item.diamond.name=Diamond -item.emerald.name=Emerald -item.ingotIron.name=Iron Ingot -item.ingotGold.name=Gold Ingot -item.swordIron.name=Iron Sword -item.swordWood.name=Wooden Sword -item.shovelWood.name=Wooden Shovel -item.pickaxeWood.name=Wooden Pickaxe -item.hatchetWood.name=Wooden Axe -item.swordStone.name=Stone Sword -item.shovelStone.name=Stone Shovel -item.pickaxeStone.name=Stone Pickaxe -item.hatchetStone.name=Stone Axe -item.swordDiamond.name=Diamond Sword -item.shovelDiamond.name=Diamond Shovel -item.pickaxeDiamond.name=Diamond Pickaxe -item.hatchetDiamond.name=Diamond Axe -item.stick.name=Stick -item.bowl.name=Bowl -item.mushroomStew.name=Mushroom Stew -item.swordGold.name=Golden Sword -item.shovelGold.name=Golden Shovel -item.pickaxeGold.name=Golden Pickaxe -item.hatchetGold.name=Golden Axe -item.string.name=String -item.feather.name=Feather -item.sulphur.name=Gunpowder -item.hoeWood.name=Wooden Hoe -item.hoeStone.name=Stone Hoe -item.hoeIron.name=Iron Hoe -item.hoeDiamond.name=Diamond Hoe -item.hoeGold.name=Golden Hoe -item.seeds.name=Seeds -item.seeds_pumpkin.name=Pumpkin Seeds -item.seeds_melon.name=Melon Seeds -item.melon.name=Melon -item.wheat.name=Wheat -item.bread.name=Bread -item.helmetCloth.name=Leather Cap -item.chestplateCloth.name=Leather Tunic -item.leggingsCloth.name=Leather Pants -item.bootsCloth.name=Leather Boots -item.helmetChain.name=Chain Helmet -item.chestplateChain.name=Chain Chestplate -item.leggingsChain.name=Chain Leggings -item.bootsChain.name=Chain Boots -item.helmetIron.name=Iron Helmet -item.chestplateIron.name=Iron Chestplate -item.leggingsIron.name=Iron Leggings -item.bootsIron.name=Iron Boots -item.helmetDiamond.name=Diamond Helmet -item.chestplateDiamond.name=Diamond Chestplate -item.leggingsDiamond.name=Diamond Leggings -item.bootsDiamond.name=Diamond Boots -item.helmetGold.name=Golden Helmet -item.chestplateGold.name=Golden Chestplate -item.leggingsGold.name=Golden Leggings -item.bootsGold.name=Golden Boots -item.flint.name=Flint -item.porkchopRaw.name=Raw Porkchop -item.porkchopCooked.name=Cooked Porkchop -item.chickenRaw.name=Raw Chicken -item.chickenCooked.name=Cooked Chicken -item.beefRaw.name=Raw Beef -item.beefCooked.name=Steak -item.painting.name=Painting -item.frame.name=Item Frame -item.appleGold.name=Golden Apple -item.sign.name=Sign -item.doorWood.name=Wooden Door -item.bucket.name=Bucket -item.bucketWater.name=Water Bucket -item.bucketLava.name=Lava Bucket -item.minecart.name=Minecart -item.saddle.name=Saddle -item.doorIron.name=Iron Door -item.redstone.name=Redstone -item.snowball.name=Snowball -item.boat.name=Boat -item.leather.name=Leather -item.milk.name=Milk -item.brick.name=Brick -item.clay.name=Clay -item.reeds.name=Sugar Canes -item.paper.name=Paper -item.book.name=Book -item.slimeball.name=Slimeball -item.minecartChest.name=Minecart with Chest -item.minecartFurnace.name=Minecart with Furnace -item.minecartTnt.name=Minecart with TNT -item.minecartHopper.name=Minecart with Hopper -item.minecartCommandBlock.name=Minecart with Command Block -item.egg.name=Egg -item.compass.name=Compass -item.fishingRod.name=Fishing Rod -item.clock.name=Clock -item.yellowDust.name=Glowstone Dust -item.fish.cod.raw.name=Raw Fish -item.fish.salmon.raw.name=Raw Salmon -item.fish.pufferfish.raw.name=Pufferfish -item.fish.clownfish.raw.name=Clownfish -item.fish.cod.cooked.name=Cooked Fish -item.fish.salmon.cooked.name=Cooked Salmon -item.record.name=Music Disc -item.record.13.desc=C418 - 13 -item.record.cat.desc=C418 - cat -item.record.blocks.desc=C418 - blocks -item.record.chirp.desc=C418 - chirp -item.record.far.desc=C418 - far -item.record.mall.desc=C418 - mall -item.record.mellohi.desc=C418 - mellohi -item.record.stal.desc=C418 - stal -item.record.strad.desc=C418 - strad -item.record.ward.desc=C418 - ward -item.record.11.desc=C418 - 11 -item.record.wait.desc=C418 - wait -item.bone.name=Bone -item.dyePowder.black.name=Ink Sac -item.dyePowder.red.name=Rose Red -item.dyePowder.green.name=Cactus Green -item.dyePowder.brown.name=Cocoa Beans -item.dyePowder.blue.name=Lapis Lazuli -item.dyePowder.purple.name=Purple Dye -item.dyePowder.cyan.name=Cyan Dye -item.dyePowder.silver.name=Light Gray Dye -item.dyePowder.gray.name=Gray Dye -item.dyePowder.pink.name=Pink Dye -item.dyePowder.lime.name=Lime Dye -item.dyePowder.yellow.name=Dandelion Yellow -item.dyePowder.lightBlue.name=Light Blue Dye -item.dyePowder.magenta.name=Magenta Dye -item.dyePowder.orange.name=Orange Dye -item.dyePowder.white.name=Bone Meal -item.sugar.name=Sugar -item.cake.name=Cake -item.bed.name=Bed -item.diode.name=Redstone Repeater -item.comparator.name=Redstone Comparator -item.map.name=Map -item.leaves.name=Leaves -item.shears.name=Shears -item.rottenFlesh.name=Rotten Flesh -item.enderPearl.name=Ender Pearl -item.blazeRod.name=Blaze Rod -item.ghastTear.name=Ghast Tear -item.netherStalkSeeds.name=Nether Wart -item.potion.name=Potion -item.emptyPotion.name=Water Bottle -item.goldNugget.name=Gold Nugget -item.glassBottle.name=Glass Bottle -item.spiderEye.name=Spider Eye -item.fermentedSpiderEye.name=Fermented Spider Eye -item.blazePowder.name=Blaze Powder -item.magmaCream.name=Magma Cream -item.cauldron.name=Cauldron -item.brewingStand.name=Brewing Stand -item.eyeOfEnder.name=Eye of Ender -item.speckledMelon.name=Glistering Melon -item.monsterPlacer.name=Spawn -item.expBottle.name=Bottle o' Enchanting -item.fireball.name=Fire Charge -item.writingBook.name=Book and Quill -item.writtenBook.name=Written Book -item.ruby.name=Ruby -item.flowerPot.name=Flower Pot -item.emptyMap.name=Empty Map -item.carrots.name=Carrot -item.carrotGolden.name=Golden Carrot -item.potato.name=Potato -item.potatoBaked.name=Baked Potato -item.potatoPoisonous.name=Poisonous Potato -item.skull.skeleton.name=Skeleton Skull -item.skull.wither.name=Wither Skeleton Skull -item.skull.zombie.name=Zombie Head -item.skull.char.name=Head -item.skull.player.name=%s's Head -item.skull.creeper.name=Creeper Head -item.carrotOnAStick.name=Carrot on a Stick -item.netherStar.name=Nether Star -item.pumpkinPie.name=Pumpkin Pie -item.enchantedBook.name=Enchanted Book -item.fireworks.name=Firework Rocket -item.fireworks.flight=Flight Duration: -item.fireworksCharge.name=Firework Star -item.fireworksCharge.black=Black -item.fireworksCharge.red=Red -item.fireworksCharge.green=Green -item.fireworksCharge.brown=Brown -item.fireworksCharge.blue=Blue -item.fireworksCharge.purple=Purple -item.fireworksCharge.cyan=Cyan -item.fireworksCharge.silver=Light Gray -item.fireworksCharge.gray=Gray -item.fireworksCharge.pink=Pink -item.fireworksCharge.lime=Lime -item.fireworksCharge.yellow=Yellow -item.fireworksCharge.lightBlue=Light Blue -item.fireworksCharge.magenta=Magenta -item.fireworksCharge.orange=Orange -item.fireworksCharge.white=White -item.fireworksCharge.customColor=Custom -item.fireworksCharge.fadeTo=Fade to -item.fireworksCharge.flicker=Twinkle -item.fireworksCharge.trail=Trail -item.fireworksCharge.type.0=Small Ball -item.fireworksCharge.type.1=Large Ball -item.fireworksCharge.type.2=Star-shaped -item.fireworksCharge.type.3=Creeper-shaped -item.fireworksCharge.type.4=Burst -item.fireworksCharge.type=Unknown Shape -item.netherbrick.name=Nether Brick -item.netherquartz.name=Nether Quartz -item.horsearmormetal.name=Iron Horse Armor -item.horsearmorgold.name=Gold Horse Armor -item.horsearmordiamond.name=Diamond Horse Armor - -container.inventory=Inventory -container.hopper=Item Hopper -container.crafting=Crafting -container.dispenser=Dispenser -container.dropper=Dropper -container.furnace=Furnace -container.enchant=Enchant -container.repair=Repair & Name -container.repair.cost=Enchantment Cost: %1$d -container.repair.expensive=Too Expensive! -container.creative=Item Selection -container.brewing=Brewing Stand -container.chest=Chest -container.chestDouble=Large Chest -container.minecart=Minecart -container.enderchest=Ender Chest - -item.dyed=Dyed -item.unbreakable=Unbreakable - -entity.Item.name=Item -entity.XPOrb.name=Experience Orb -entity.SmallFireball.name=Small Fireball -entity.Fireball.name=Fireball - -entity.Arrow.name=Arrow -entity.Snowball.name=Snowball -entity.Painting.name=Painting - -entity.Mob.name=Mob -entity.Monster.name=Monster - -entity.Creeper.name=Creeper -entity.Skeleton.name=Skeleton -entity.Spider.name=Spider -entity.Giant.name=Giant -entity.Zombie.name=Zombie -entity.Slime.name=Slime -entity.Ghast.name=Ghast -entity.PigZombie.name=Zombie Pigman -entity.Enderman.name=Enderman -entity.Silverfish.name=Silverfish -entity.CaveSpider.name=Cave Spider -entity.Blaze.name=Blaze -entity.LavaSlime.name=Magma Cube -entity.MushroomCow.name=Mooshroom -entity.Villager.name=Villager -entity.VillagerGolem.name=Iron Golem -entity.SnowMan.name=Snow Golem -entity.EnderDragon.name=Ender Dragon -entity.WitherBoss.name=Wither -entity.Witch.name=Witch - -entity.Pig.name=Pig -entity.Sheep.name=Sheep -entity.Cow.name=Cow -entity.Chicken.name=Chicken -entity.Squid.name=Squid -entity.Wolf.name=Wolf -entity.Ozelot.name=Ocelot -entity.Cat.name=Cat -entity.Bat.name=Bat -entity.EntityHorse.name=Horse -entity.horse.name=Horse -entity.donkey.name=Donkey -entity.mule.name=Mule -entity.skeletonhorse.name=Skeleton Horse -entity.zombiehorse.name=Zombie Horse - -entity.PrimedTnt.name=Block of TNT -entity.FallingSand.name=Falling Block - -entity.Minecart.name=Minecart -entity.Boat.name=Boat - -entity.Arrow.name=arrow -entity.generic.name=unknown - -death.fell.accident.ladder=%1$s fell off a ladder -death.fell.accident.vines=%1$s fell off some vines -death.fell.accident.water=%1$s fell out of the water -death.fell.accident.generic=%1$s fell from a high place -death.fell.killer=%1$s was doomed to fall -death.fell.assist=%1$s was doomed to fall by %2$s -death.fell.assist.item=%1$s was doomed to fall by %2$s using %3$s -death.fell.finish=%1$s fell too far and was finished by %2$s -death.fell.finish.item=%1$s fell too far and was finished by %2$s using %3$s - -death.attack.inFire=%1$s went up in flames -death.attack.inFire.player=%1$s walked into fire whilst fighting %2$s -death.attack.onFire=%1$s burned to death -death.attack.onFire.player=%1$s was burnt to a crisp whilst fighting %2$s -death.attack.lava=%1$s tried to swim in lava -death.attack.lava.player=%1$s tried to swim in lava to escape %2$s -death.attack.inWall=%1$s suffocated in a wall -death.attack.drown=%1$s drowned -death.attack.drown.player=%1$s drowned whilst trying to escape %2$s -death.attack.starve=%1$s starved to death -death.attack.cactus=%1$s was pricked to death -death.attack.cactus.player=%1$s walked into a cactus whilst trying to escape %2$s -death.attack.generic=%1$s died -death.attack.explosion=%1$s blew up -death.attack.explosion.player=%1$s was blown up by %2$s -death.attack.magic=%1$s was killed by magic -death.attack.wither=%1$s withered away -death.attack.anvil=%1$s was squashed by a falling anvil -death.attack.fallingBlock=%1$s was squashed by a falling block -death.attack.mob=%1$s was slain by %2$s -death.attack.player=%1$s was slain by %2$s -death.attack.player.item=%1$s was slain by %2$s using %3$s -death.attack.arrow=%1$s was shot by %2$s -death.attack.arrow.item=%1$s was shot by %2$s using %3$s -death.attack.fireball=%1$s was fireballed by %2$s -death.attack.fireball.item=%1$s was fireballed by %2$s using %3$s -death.attack.thrown=%1$s was pummeled by %2$s -death.attack.thrown.item=%1$s was pummeled by %2$s using %3$s -death.attack.indirectMagic=%1$s was killed by %2$s using magic -death.attack.indirectMagic.item=%1$s was killed by %2$s using %3$s -death.attack.thorns=%1$s was killed trying to hurt %2$s -death.attack.fall=%1$s hit the ground too hard -death.attack.outOfWorld=%1$s fell out of the world - -deathScreen.respawn=Respawn -deathScreen.deleteWorld=Delete world -deathScreen.titleScreen=Title screen -deathScreen.score=Score -deathScreen.title.hardcore=Game over! -deathScreen.hardcoreInfo=You cannot respawn in hardcore mode! -deathScreen.title=You died! -deathScreen.leaveServer=Leave server -deathScreen.quit.confirm=Are you sure you want to quit? - -potion.effects.whenDrank=When Applied: -potion.empty=No Effects -potion.moveSpeed=Speed -potion.moveSlowdown=Slowness -potion.digSpeed=Haste -potion.digSlowDown=Mining Fatigue -potion.damageBoost=Strength -potion.weakness=Weakness -potion.heal=Instant Health -potion.harm=Instant Damage -potion.jump=Jump Boost -potion.confusion=Nausea -potion.regeneration=Regeneration -potion.resistance=Resistance -potion.fireResistance=Fire Resistance -potion.waterBreathing=Water Breathing -potion.invisibility=Invisibility -potion.blindness=Blindness -potion.nightVision=Night Vision -potion.hunger=Hunger -potion.poison=Poison -potion.wither=Wither -potion.healthBoost=Health Boost -potion.absorption=Absorption -potion.saturation=Saturation - -potion.moveSpeed.postfix=Potion of Swiftness -potion.moveSlowdown.postfix=Potion of Slowness -potion.digSpeed.postfix=Potion of Haste -potion.digSlowDown.postfix=Potion of Dullness -potion.damageBoost.postfix=Potion of Strength -potion.weakness.postfix=Potion of Weakness -potion.heal.postfix=Potion of Healing -potion.harm.postfix=Potion of Harming -potion.jump.postfix=Potion of Leaping -potion.confusion.postfix=Potion of Nausea -potion.regeneration.postfix=Potion of Regeneration -potion.resistance.postfix=Potion of Resistance -potion.fireResistance.postfix=Potion of Fire Resistance -potion.waterBreathing.postfix=Potion of Water Breathing -potion.invisibility.postfix=Potion of Invisibility -potion.blindness.postfix=Potion of Blindness -potion.nightVision.postfix=Potion of Night Vision -potion.hunger.postfix=Potion of Hunger -potion.poison.postfix=Potion of Poison -potion.wither.postfix=Potion of Decay -potion.healthBoost.postfix=Potion of Health Boost -potion.absorption.postfix=Potion of Absorption -potion.saturation.postfix=Potion of Saturation - -potion.potency.0= -potion.potency.1=II -potion.potency.2=III -potion.potency.3=IV - -potion.prefix.grenade=Splash -potion.prefix.mundane=Mundane -potion.prefix.uninteresting=Uninteresting -potion.prefix.bland=Bland -potion.prefix.clear=Clear -potion.prefix.milky=Milky -potion.prefix.diffuse=Diffuse -potion.prefix.artless=Artless -potion.prefix.thin=Thin -potion.prefix.awkward=Awkward -potion.prefix.flat=Flat -potion.prefix.bulky=Bulky -potion.prefix.bungling=Bungling -potion.prefix.buttered=Buttered -potion.prefix.smooth=Smooth -potion.prefix.suave=Suave -potion.prefix.debonair=Debonair -potion.prefix.thick=Thick -potion.prefix.elegant=Elegant -potion.prefix.fancy=Fancy -potion.prefix.charming=Charming -potion.prefix.dashing=Dashing -potion.prefix.refined=Refined -potion.prefix.cordial=Cordial -potion.prefix.sparkling=Sparkling -potion.prefix.potent=Potent -potion.prefix.foul=Foul -potion.prefix.odorless=Odorless -potion.prefix.rank=Rank -potion.prefix.harsh=Harsh -potion.prefix.acrid=Acrid -potion.prefix.gross=Gross -potion.prefix.stinky=Stinky - -enchantment.damage.all=Sharpness -enchantment.damage.undead=Smite -enchantment.damage.arthropods=Bane of Arthropods -enchantment.knockback=Knockback -enchantment.fire=Fire Aspect -enchantment.protect.all=Protection -enchantment.protect.fire=Fire Protection -enchantment.protect.fall=Feather Falling -enchantment.protect.explosion=Blast Protection -enchantment.protect.projectile=Projectile Protection -enchantment.oxygen=Respiration -enchantment.waterWorker=Aqua Affinity -enchantment.digging=Efficiency -enchantment.untouching=Silk Touch -enchantment.durability=Unbreaking -enchantment.lootBonus=Looting -enchantment.lootBonusDigger=Fortune -enchantment.lootBonusFishing=Luck of the Sea -enchantment.fishingSpeed=Lure -enchantment.arrowDamage=Power -enchantment.arrowFire=Flame -enchantment.arrowKnockback=Punch -enchantment.arrowInfinite=Infinity -enchantment.thorns=Thorns - -enchantment.level.1=I -enchantment.level.2=II -enchantment.level.3=III -enchantment.level.4=IV -enchantment.level.5=V -enchantment.level.6=VI -enchantment.level.7=VII -enchantment.level.8=VIII -enchantment.level.9=IX -enchantment.level.10=X - -gui.achievements=Achievements -gui.stats=Statistics - -stats.tooltip.type.achievement=Achievement -stats.tooltip.type.statistic=Statistic -stat.generalButton=General -stat.blocksButton=Blocks -stat.itemsButton=Items -stat.mobsButton=Mobs - -stat.used=Times Used -stat.mined=Times Mined -stat.depleted=Times Depleted -stat.crafted=Times Crafted -stat.entityKills=You killed %d %s -stat.entityKilledBy=%s killed you %d time(s) -stat.entityKills.none=You have never killed %s -stat.entityKilledBy.none=You have never been killed by %s - -stat.startGame=Times played -stat.createWorld=Worlds created -stat.loadWorld=Saves loaded -stat.joinMultiplayer=Multiplayer joins -stat.leaveGame=Games quit - -stat.playOneMinute=Minutes Played - -stat.walkOneCm=Distance Walked -stat.fallOneCm=Distance Fallen -stat.swimOneCm=Distance Swum -stat.flyOneCm=Distance Flown -stat.climbOneCm=Distance Climbed -stat.diveOneCm=Distance Dove -stat.minecartOneCm=Distance by Minecart -stat.boatOneCm=Distance by Boat -stat.pigOneCm=Distance by Pig -stat.horseOneCm=Distance by Horse -stat.jump=Jumps -stat.drop=Items Dropped - -stat.damageDealt=Damage Dealt -stat.damageTaken=Damage Taken -stat.deaths=Number of Deaths -stat.mobKills=Mob Kills -stat.animalsBred=Animals Bred -stat.playerKills=Player Kills -stat.fishCaught=Fish Caught -stat.treasureFished=Treasure Fished -stat.junkFished=Junk Fished - -stat.mineBlock=%1$s Mined -stat.craftItem=%1$s Crafted -stat.useItem=%1$s Used -stat.breakItem=%1$s Depleted - -achievement.get=Achievement get! - -achievement.taken=Taken! -achievement.unknown=??? - -achievement.requires=Requires '%1$s' -achievement.openInventory=Taking Inventory -achievement.openInventory.desc=Press '%1$s' to open your inventory. -achievement.mineWood=Getting Wood -achievement.mineWood.desc=Attack a tree until a block of wood pops out -achievement.buildWorkBench=Benchmarking -achievement.buildWorkBench.desc=Craft a workbench with four blocks of planks -achievement.buildPickaxe=Time to Mine! -achievement.buildPickaxe.desc=Use planks and sticks to make a pickaxe -achievement.buildFurnace=Hot Topic -achievement.buildFurnace.desc=Construct a furnace out of eight stone blocks -achievement.acquireIron=Acquire Hardware -achievement.acquireIron.desc=Smelt an iron ingot -achievement.buildHoe=Time to Farm! -achievement.buildHoe.desc=Use planks and sticks to make a hoe -achievement.makeBread=Bake Bread -achievement.makeBread.desc=Turn wheat into bread -achievement.bakeCake=The Lie -achievement.bakeCake.desc=Wheat, sugar, milk and eggs! -achievement.buildBetterPickaxe=Getting an Upgrade -achievement.buildBetterPickaxe.desc=Construct a better pickaxe -achievement.cookFish=Delicious Fish -achievement.cookFish.desc=Catch and cook fish! -achievement.onARail=On A Rail -achievement.onARail.desc=Travel by minecart at least 1 km from where you started -achievement.buildSword=Time to Strike! -achievement.buildSword.desc=Use planks and sticks to make a sword -achievement.killEnemy=Monster Hunter -achievement.killEnemy.desc=Attack and destroy a monster -achievement.killCow=Cow Tipper -achievement.killCow.desc=Harvest some leather -achievement.breedCow=Repopulation -achievement.breedCow.desc=Breed two cows with wheat -achievement.flyPig=When Pigs Fly -achievement.flyPig.desc=Fly a pig off a cliff -achievement.snipeSkeleton=Sniper Duel -achievement.snipeSkeleton.desc=Kill a skeleton with an arrow from more than 50 meters -achievement.diamonds=DIAMONDS! -achievement.diamonds.desc=Acquire diamonds with your iron tools -achievement.diamondsToYou=Diamonds to you! -achievement.diamondsToYou.desc=Throw diamonds at another player. -achievement.portal=We Need to Go Deeper -achievement.portal.desc=Build a portal to the Nether -achievement.ghast=Return to Sender -achievement.ghast.desc=Destroy a Ghast with a fireball -achievement.blazeRod=Into Fire -achievement.blazeRod.desc=Relieve a Blaze of its rod -achievement.potion=Local Brewery -achievement.potion.desc=Brew a potion -achievement.theEnd=The End? -achievement.theEnd.desc=Locate the End -achievement.theEnd2=The End. -achievement.theEnd2.desc=Defeat the Ender Dragon -achievement.spawnWither=The Beginning? -achievement.spawnWither.desc=Spawn the Wither -achievement.killWither=The Beginning. -achievement.killWither.desc=Kill the Wither -achievement.fullBeacon=Beaconator -achievement.fullBeacon.desc=Create a full beacon -achievement.exploreAllBiomes=Adventuring Time -achievement.exploreAllBiomes.desc=Discover all biomes -achievement.enchantments=Enchanter -achievement.enchantments.desc=Use a book, obsidian and diamonds to construct an enchantment table -achievement.overkill=Overkill -achievement.overkill.desc=Deal eight hearts of damage in a single hit -achievement.bookcase=Librarian -achievement.bookcase.desc=Build some bookshelves to improve your enchantment table - -commands.generic.exception=An unknown error occurred while attempting to perform this command -commands.generic.permission=You do not have permission to use this command -commands.generic.syntax=Invalid command syntax -commands.generic.player.notFound=That player cannot be found -commands.generic.notFound=Unknown command. Try /help for a list of commands -commands.generic.num.invalid='%s' is not a valid number -commands.generic.boolean.invalid='%s' is not true or false -commands.generic.num.tooSmall=The number you have entered (%d) is too small, it must be at least %d -commands.generic.num.tooBig=The number you have entered (%d) is too big, it must be at most %d -commands.generic.double.tooSmall=The number you have entered (%.2f) is too small, it must be at least %.2f -commands.generic.double.tooBig=The number you have entered (%.2f) is too big, it must be at most %.2f -commands.generic.usage=Usage: %s -commands.generic.deprecatedId=Warning: Using numeric IDs will not be supported in the future. Please use names, such as '%s' - -commands.setidletimeout.usage=/setidletimeout -commands.setidletimeout.success=Successfully set the idle timeout to %d minutes. -commands.xp.failure.widthdrawXp=Cannot give player negative experience points -commands.xp.success=Given %d experience to %s -commands.xp.success.levels=Given %d levels to %s -commands.xp.success.negative.levels=Taken %d levels from %s -commands.xp.usage=/xp [player] OR /xp L [player] -commands.playsound.usage=/playsound [x] [y] [z] [volume] [pitch] [minimumVolume] -commands.playsound.success=Played sound '%s' to %s -commands.playsound.playerTooFar=Player %s is too far away to hear the sound -commands.give.usage=/give [amount] [data] [dataTag] -commands.give.notFound=There is no such item with ID %d -commands.give.success=Given %s * %d to %s -commands.give.tagError=Data tag parsing failed: %s -commands.summon.usage=/summon [x] [y] [z] [dataTag] -commands.summon.success=Object successfully summoned -commands.summon.failed=Unable to summon object -commands.summon.tagError=Data tag parsing failed: %s -commands.summon.outOfWorld=Cannot summon the object out of the world -commands.testforblock.usage=/testforblock [dataValue] [dataTag] -commands.testforblock.failed.tile=The block at %d,%d,%d is %s (expected: %s). -commands.testforblock.failed.data=The block at %d,%d,%d had the data value of %s (expected: %s). -commands.testforblock.failed.nbt=The block at %d,%d,%d did not have the required NBT keys. -commands.testforblock.failed.tileEntity=The block at %d,%d,%d is not a tile entity and cannot support tag matching. -commands.testforblock.success=Successfully found the block at %d,%d,%d. -commands.testforblock.outOfWorld=Cannot test for block outside of the world -commands.setblock.usage=/setblock [dataValue] [oldBlockHandling] [dataTag] -commands.setblock.success=Block placed -commands.setblock.failed=Unable to place block -commands.setblock.tagError=Data tag parsing failed: %s -commands.setblock.outOfWorld=Cannot place block outside of the world -commands.setblock.notFound=There is no such block with ID/name %s -commands.setblock.noChange=The block couldn't be placed -commands.effect.usage=/effect [seconds] [amplifier] -commands.effect.notFound=There is no such mob effect with ID %d -commands.effect.success=Given %1$s (ID %2$d) * %3$d to %4$s for %5$d seconds -commands.effect.success.removed=Took %1$s from %2$s -commands.effect.success.removed.all=Took all effects from %s -commands.effect.failure.notActive=Couldn't take %1$s from %2$s as they do not have the effect -commands.effect.failure.notActive.all=Couldn't take any effects from %s as they do not have any -commands.enchant.usage=/enchant [level] -commands.enchant.notFound=There is no such enchantment with ID %d -commands.enchant.noItem=The target doesn't hold an item -commands.enchant.cantEnchant=The selected enchantment can't be added to the target item -commands.enchant.cantCombine=%1$s can't be combined with %2$s -commands.enchant.success=Enchanting succeeded -commands.clear.usage=/clear [item] [data] -commands.clear.success=Cleared the inventory of %s, removing %d items -commands.clear.failure=Could not clear the inventory of %s, no items to remove -commands.downfall.usage=/toggledownfall -commands.downfall.success=Toggled downfall -commands.time.usage=/time -commands.time.added=Added %d to the time -commands.time.set=Set the time to %d -commands.players.usage=/list -commands.players.list=There are %d/%d players online: -commands.banlist.ips=There are %d total banned IP addresses: -commands.banlist.players=There are %d total banned players: -commands.banlist.usage=/banlist [ips|players] -commands.kill.usage=/kill -commands.kill.success=Ouch! That looked like it hurt -commands.kick.success=Kicked %s from the game -commands.kick.success.reason=Kicked %s from the game: '%s' -commands.kick.usage=/kick [reason ...] -commands.op.success=Opped %s -commands.op.failed=Could not op %s -commands.op.usage=/op -commands.deop.success=De-opped %s -commands.deop.failed=Could not de-op %s -commands.deop.usage=/deop -commands.say.usage=/say -commands.ban.success=Banned player %s -commands.ban.failed=Could not ban player %s -commands.ban.usage=/ban [reason ...] -commands.unban.success=Unbanned player %s -commands.unban.failed=Could not unban player %s -commands.unban.usage=/pardon -commands.banip.invalid=You have entered an invalid IP address or a player that is not online -commands.banip.success=Banned IP address %s -commands.banip.success.players=Banned IP address %s belonging to %s -commands.banip.usage=/ban-ip [reason ...] -commands.unbanip.invalid=You have entered an invalid IP address -commands.unbanip.success=Unbanned IP address %s -commands.unbanip.usage=/pardon-ip

-commands.save.usage=/save-all -commands.save-on.alreadyOn=Saving is already turned on. -commands.save-on.usage=/save-on -commands.save-off.alreadyOff=Saving is already turned off. -commands.save-off.usage=/save-off -commands.save.enabled=Turned on world auto-saving -commands.save.disabled=Turned off world auto-saving -commands.save.start=Saving... -commands.save.success=Saved the world -commands.save.failed=Saving failed: %s -commands.stop.usage=/stop -commands.stop.start=Stopping the server -commands.tp.success=Teleported %s to %s -commands.tp.success.coordinates=Teleported %s to %.2f,%.2f,%.2f -commands.tp.usage=/tp [target player] OR /tp [target player] -commands.tp.notSameDimension=Unable to teleport because players are not in the same dimension -commands.whitelist.list=There are %d (out of %d seen) whitelisted players: -commands.whitelist.enabled=Turned on the whitelist -commands.whitelist.disabled=Turned off the whitelist -commands.whitelist.reloaded=Reloaded the whitelist -commands.whitelist.add.success=Added %s to the whitelist -commands.whitelist.add.failed=Could not add %s to the whitelist -commands.whitelist.add.usage=/whitelist add -commands.whitelist.remove.success=Removed %s from the whitelist -commands.whitelist.remove.failed=Could not remove %s from the whitelist -commands.whitelist.remove.usage=/whitelist remove -commands.whitelist.usage=/whitelist -commands.scoreboard.usage=/scoreboard -commands.scoreboard.teamNotFound=No team was found by the name '%s' -commands.scoreboard.objectiveNotFound=No objective was found by the name '%s' -commands.scoreboard.objectiveReadOnly=The objective '%s' is read-only and cannot be set -commands.scoreboard.objectives.usage=/scoreboard objectives -commands.scoreboard.objectives.setdisplay.usage=/scoreboard objectives setdisplay [objective] -commands.scoreboard.objectives.setdisplay.invalidSlot=No such display slot '%s' -commands.scoreboard.objectives.setdisplay.successCleared=Cleared objective display slot '%s' -commands.scoreboard.objectives.setdisplay.successSet=Set the display objective in slot '%s' to '%s' -commands.scoreboard.objectives.add.usage=/scoreboard objectives add [display name ...] -commands.scoreboard.objectives.add.wrongType=Invalid objective criteria type '%s' -commands.scoreboard.objectives.add.alreadyExists=An objective with the name '%s' already exists -commands.scoreboard.objectives.add.tooLong=The name '%s' is too long for an objective, it can be at most %d characters long -commands.scoreboard.objectives.add.displayTooLong=The display name '%s' is too long for an objective, it can be at most %d characters long -commands.scoreboard.objectives.add.success=Added new objective '%s' successfully -commands.scoreboard.objectives.remove.usage=/scoreboard objectives remove -commands.scoreboard.objectives.remove.success=Removed objective '%s' successfully -commands.scoreboard.objectives.list.count=Showing %d objective(s) on scoreboard: -commands.scoreboard.objectives.list.entry=- %s: displays as '%s' and is type '%s' -commands.scoreboard.objectives.list.empty=There are no objectives on the scoreboard -commands.scoreboard.players.usage=/scoreboard players -commands.scoreboard.players.set.success=Set score of %s for player %s to %d -commands.scoreboard.players.set.usage=/scoreboard players set -commands.scoreboard.players.add.usage=/scoreboard players add -commands.scoreboard.players.remove.usage=/scoreboard players remove -commands.scoreboard.players.reset.usage=/scoreboard players reset -commands.scoreboard.players.reset.success=Reset all scores of player %s -commands.scoreboard.players.list.usage=/scoreboard players list [name] -commands.scoreboard.players.list.count=Showing %d tracked players on the scoreboard: -commands.scoreboard.players.list.empty=There are no tracked players on the scoreboard -commands.scoreboard.players.list.player.count=Showing %d tracked objective(s) for %s: -commands.scoreboard.players.list.player.entry=- %2$s: %1$d (%3$s) -commands.scoreboard.players.list.player.empty=Player %s has no scores recorded -commands.scoreboard.teams.usage=/scoreboard teams -commands.scoreboard.teams.add.usage=/scoreboard teams add [display name ...] -commands.scoreboard.teams.add.alreadyExists=A team with the name '%s' already exists -commands.scoreboard.teams.add.tooLong=The name '%s' is too long for a team, it can be at most %d characters long -commands.scoreboard.teams.add.displayTooLong=The display name '%s' is too long for a team, it can be at most %d characters long -commands.scoreboard.teams.add.success=Added new team '%s' successfully -commands.scoreboard.teams.list.usage=/scoreboard teams list [name] -commands.scoreboard.teams.list.count=Showing %d teams on the scoreboard: -commands.scoreboard.teams.list.entry=- %1$s: '%2$s' has %3$d players -commands.scoreboard.teams.list.empty=There are no teams registered on the scoreboard -commands.scoreboard.teams.list.player.count=Showing %d player(s) in team %s: -commands.scoreboard.teams.list.player.entry=- %2$s: %1$d (%3$s) -commands.scoreboard.teams.list.player.empty=Team %s has no players -commands.scoreboard.teams.empty.usage=/scoreboard teams empty -commands.scoreboard.teams.empty.alreadyEmpty=Team %s is already empty, cannot remove nonexistant players -commands.scoreboard.teams.empty.success=Removed all %d player(s) from team %s -commands.scoreboard.teams.remove.usage=/scoreboard teams remove -commands.scoreboard.teams.remove.success=Removed team %s -commands.scoreboard.teams.join.usage=/scoreboard teams join [player] -commands.scoreboard.teams.join.success=Added %d player(s) to team %s: %s -commands.scoreboard.teams.join.failure=Could not add %d player(s) to team %s: %s -commands.scoreboard.teams.leave.usage=/scoreboard teams leave [player] -commands.scoreboard.teams.leave.success=Removed %d player(s) from their teams: %s -commands.scoreboard.teams.leave.failure=Could not remove %d player(s) from their teams: %s -commands.scoreboard.teams.leave.noTeam=You are not in a team -commands.scoreboard.teams.option.usage=/scoreboard teams option -commands.scoreboard.teams.option.noValue=Valid values for option %s are: %s -commands.scoreboard.teams.option.success=Set option %s for team %s to %s -commands.gamemode.success.self=Set own game mode to %s -commands.gamemode.success.other=Set %s's game mode to %s -commands.gamemode.usage=/gamemode [player] -commands.defaultgamemode.usage=/defaultgamemode -commands.defaultgamemode.success=The world's default game mode is now %s -commands.me.usage=/me -commands.help.header=--- Showing help page %d of %d (/help ) --- -commands.help.footer=Tip: Use the key while typing a command to auto-complete the command or its arguments -commands.help.usage=/help [page|command name] -commands.publish.usage=/publish -commands.publish.started=Local game hosted on port %s -commands.publish.failed=Unable to host local game -commands.debug.start=Started debug profiling -commands.debug.stop=Stopped debug profiling after %.2f seconds (%d ticks) -commands.debug.notStarted=Can't stop profiling when we haven't started yet! -commands.debug.usage=/debug -commands.tellraw.usage=/tellraw -commands.tellraw.jsonException=Invalid json: %s -commands.message.usage=/tell -commands.message.sameTarget=You can't send a private message to yourself! -commands.message.display.outgoing=You whisper to %s: %s -commands.message.display.incoming=%s whispers to you: %s -commands.difficulty.usage=/difficulty -commands.difficulty.success=Set game difficulty to %s -commands.spawnpoint.usage=/spawnpoint OR /spawnpoint OR /spawnpoint -commands.spawnpoint.success=Set %s's spawn point to (%d, %d, %d) -commands.setworldspawn.usage=/setworldspawn OR /setworldspawn -commands.setworldspawn.success=Set the world spawn point to (%d, %d, %d) -commands.gamerule.usage=/gamerule OR /gamerule -commands.gamerule.success=Game rule has been updated -commands.gamerule.norule=No game rule called '%s' is available -commands.weather.usage=/weather [duration in seconds] -commands.weather.clear=Changing to clear weather -commands.weather.rain=Changing to rainy weather -commands.weather.thunder=Changing to rain and thunder -commands.testfor.usage=/testfor -commands.testfor.failed=/testfor is only usable by commandblocks with analog output -commands.seed.usage=/seed -commands.seed.success=Seed: %s -commands.spreadplayers.usage=/spreadplayers -commands.spreadplayers.spreading.teams=Spreading %s teams %s blocks around %s,%s (min %s blocks apart) -commands.spreadplayers.spreading.players=Spreading %s players %s blocks around %s,%s (min %s blocks apart) -commands.spreadplayers.success.teams=Successfully spread %s teams around %s,%s -commands.spreadplayers.success.players=Successfully spread %s players around %s,%s -commands.spreadplayers.info.teams=(Average distance between teams is %s blocks apart after %s iterations) -commands.spreadplayers.info.players=(Average distance between players is %s blocks apart after %s iterations) -commands.spreadplayers.failure.teams=Could not spread %s teams around %s,%s (too many players for space - try using spread of at most %s) -commands.spreadplayers.failure.players=Could not spread %s players around %s,%s (too many players for space - try using spread of at most %s) -commands.achievement.usage=/achievement give [player] -commands.achievement.unknownAchievement=Unknown achievement or statistic '%s' -commands.achievement.give.success.all=Successfully given all achievements to %s -commands.achievement.give.success.one=Successfully given %s the stat %s -commands.achievement.statTooLow=Player %s does not have the stat %s - -itemGroup.buildingBlocks=Building Blocks -itemGroup.decorations=Decoration Blocks -itemGroup.redstone=Redstone -itemGroup.transportation=Transportation -itemGroup.misc=Miscellaneous -itemGroup.search=Search Items -itemGroup.food=Foodstuffs -itemGroup.tools=Tools -itemGroup.combat=Combat -itemGroup.brewing=Brewing -itemGroup.materials=Materials -itemGroup.inventory=Survival Inventory - -inventory.binSlot=Destroy Item - -advMode.setCommand=Set Console Command for Block -advMode.setCommand.success=Command set: %s -advMode.command=Console Command -advMode.nearestPlayer=Use "@p" to target nearest player -advMode.randomPlayer=Use "@r" to target random player -advMode.allPlayers=Use "@a" to target all players -advMode.previousOutput=Previous Output - -advMode.notEnabled=Command blocks are not enabled on this server -advMode.notAllowed=Must be an opped player in creative mode - -mount.onboard=Press %1$s to dismount - -build.tooHigh=Height limit for building is %s blocks - -attribute.modifier.plus.0=+%d %s -attribute.modifier.plus.1=+%d%% %s -attribute.modifier.plus.2=+%d%% %s -attribute.modifier.take.0=-%d %s -attribute.modifier.take.1=-%d%% %s -attribute.modifier.take.2=-%d%% %s - -attribute.name.horse.jumpStrength=Horse Jump Strength -attribute.name.zombie.spawnReinforcements=Zombie Reinforcements -attribute.name.generic.maxHealth=Max Health -attribute.name.generic.followRange=Mob Follow Range -attribute.name.generic.knockbackResistance=Knockback Resistance -attribute.name.generic.movementSpeed=Speed -attribute.name.generic.attackDamage=Attack Damage - -screenshot.success=Saved screenshot as %s -screenshot.failure=Couldn't save screenshot: %s - -stream.user.mode.moderator=Moderator -stream.user.mode.moderator.self=Moderator on your channel -stream.user.mode.moderator.other=Moderator on %s's channel -stream.user.mode.broadcaster=Broadcaster -stream.user.mode.broadcaster.self=Broadcaster (You!) -stream.user.mode.broadcaster.other=Broadcaster -stream.user.mode.administrator=Twitch Administrator -stream.user.mode.staff=Twitch Staff -stream.user.mode.banned=Banned -stream.user.mode.banned.self=Banned on your channel -stream.user.mode.banned.other=Banned on %s's channel -stream.user.subscription.subscriber=Subscriber -stream.user.subscription.subscriber.self=Subscriber to your channel -stream.user.subscription.subscriber.other=Subscriber to %s's channel -stream.user.subscription.turbo=Twitch Turbo - -stream.unavailable.title=Twitch Broadcasting Unavailable -stream.unavailable.report_to_mojang=Report to Mojang - -stream.confirm_start=Are you sure you want to start broadcasting? - -stream.unavailable.account_not_bound=Before you can broadcast Minecraft through Twitch, you will need to link your Twitch account on mojang.com. Would you like to do that now? -stream.unavailable.account_not_bound.okay=Link Accounts -stream.unavailable.account_not_migrated=Before you can broadcast Minecraft through Twitch, you will need to migrate your Minecraft account to a Mojang account. Would you like to do that now? -stream.unavailable.account_not_migrated.okay=Migrate Account -stream.unavailable.failed_auth=Authentication to Twitch failed. Please go to mojang.com and rebind your Twitch account. -stream.unavailable.failed_auth.okay=Rebind Accounts -stream.unavailable.failed_auth_error=Unable to authenticate to Twitch. Please try again later. -stream.unavailable.initialization_failure=Unable to initialize the Twitch SDK. -stream.unavailable.initialization_failure.extra=(Reason: %s) -stream.unavailable.library_arch_mismatch=The custom java version used to launch Minecraft has a different architecture than the one used to run the launcher. Please make sure these are the same, either 32-bit or 64-bit for both. -stream.unavailable.library_failure=Unable to load the libraries needed for the integrated Twitch broadcasting service. -stream.unavailable.no_fbo=Your video card needs to support at least OpenGL version 3.0 or support Framebuffer Objects via an extension to use the integrated Twitch broadcasting. -stream.unavailable.no_fbo.version=You are currently using: %s -stream.unavailable.no_fbo.blend=Separate blending support via EXT is: %s -stream.unavailable.no_fbo.arb=Framebuffer object support via ARB is: %s -stream.unavailable.no_fbo.ext=Framebuffer object support via EXT is: %s -stream.unavailable.not_supported.windows=Unfortunately the integrated Twitch broadcasting requires a newer version of Windows than you are on. You must have at least Windows Vista or newer. -stream.unavailable.not_supported.mac=Unfortunately the integrated Twitch broadcasting on Mac requires a version of OSX newer than the one you are on. You must use 10.7 (Mac OS X Lion) or newer to be able to use this service. Would you like to visit apple.com to learn about upgrading? -stream.unavailable.not_supported.mac.okay=Upgrade -stream.unavailable.not_supported.other=Unfortunately the integrated Twitch broadcasting service requires Windows (Vista or newer) or Mac OS X (10.7/Lion or newer) -stream.unavailable.unknown=Unfortunately you cannot broadcast to Twitch at this time. And we don't know why :'( -stream.unavailable.unknown.chat=Could not start stream: %s - -stream.unavailable.soundflower.chat=Soundflower is required to be able to stream on Mac. %s -stream.unavailable.soundflower.chat.link=Please click here to install it. - -stream.userinfo.chatTooltip=Click to manage user -stream.userinfo.timeout=Timeout -stream.userinfo.ban=Ban -stream.userinfo.unban=Unban -stream.userinfo.mod=Promote to Moderator -stream.userinfo.unmod=Demote from Moderator - - -itemGroup.tabTest=Nuclear Tech Mod Test Tab -itemGroup.tabParts=NTM Resources and Parts -itemGroup.tabBlocks=NTM Blocks and Machines -itemGroup.tabNuke=NTM Bombs and Gear -itemGroup.tabMachine=NTM Templates - -hbmfluid.none=None -hbmfluid.water=Water -hbmfluid.lava=Lava -hbmfluid.uf6=Uranium Hexafluoride -hbmfluid.puf6=Plutonium Hexafluoride -hbmfluid.deuterium=Deuterium -hbmfluid.tritium=Tritium -hbmfluid.oil=Crude Oil -hbmfluid.smear=Industrial Oil -hbmfluid.reclaimed=Reclaimed Industrial Oil -hbmfluid.petroil=Petroil -hbmfluid.lubricant=Engine Lubricant -hbmfluid.diesel=Diesel -hbmfluid.kerosene=Kerosene -hbmfluid.gas=Natural Gas -hbmfluid.coolant=Coolant -hbmfluid.amat=Antimatter -hbmfluid.aschrab=Antischrabidium - -item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core -item.record.ss.desc=Valve - Sector Sweep -item.record.vc.desc=Valve - Vortal Combat - -death.attack.nuclearBlast=%1$s was blown away by a nuclear explosion. -death.attack.revolverBullet=%1$s was shot in the head by %2$s. -death.attack.mudPoisoning=%1$s died in poisonous mud. -death.attack.euthanized=%1$s was euthanized by %2$s. -death.attack.euthanizedSelf=%1$s euthanized himself, what a dork. -death.attack.euthanizedSelf2=%1$s wins the Darwin Award. -death.attack.tau=%1$s was riddeled by %2$s using negatively charged tauons. -death.attack.tauBlast=%1$s charged the XVL1456 for too long and was blown into pieces. -death.attack.chopperBullet=%1$s was rekt by %2$s. -death.attack.cmb=%1$s was fizzeled by %2$s. -death.attack.subAtomic=%1$s's atoms have been destroyed by %2$s. -death.attack.subAtomic2=%1$s was QPU-misaligned because %2$s tampered with his de facto speed. -death.attack.subAtomic3=%1$s's divergence dropped below 1 percent because of %2$s. -death.attack.subAtomic4=%1$s was divided by zero by %2$s. -death.attack.subAtomic5=%1$s was nullified by %2$s. -death.attack.radiation=%1$s died from radiation poisoning. -death.attack.acid=%1$s fell into acid. -death.attack.suicide=%1$s blew their head off. -death.attack.electrified=%1$s was electrified by %2$s. -death.attack.flamethrower=%1$s was cremated by %2$s. -death.attack.plasma=%1$s was immolated by %2$s. -death.attack.ice=%1$s was turned into a popsicle by %2$s. -death.attack.cheater=%1$s's intestines turned into oats. (???) -death.attack.laser=%1$s was turned into ash by %2$s. -death.attack.rubble=%1$s was squashed by debris. -death.attack.shrapnel=%1$s was ragged by a shrapnel. -death.attack.teleporter=%1$s was teleported into nothingness. -death.attack.blackhole=%1$s was spaghettified. - -item.redstone_sword.name=Redstone Sword -item.big_sword.name=Great Sword -item.test_nuke_igniter.name=Igniter -item.test_nuke_propellant.name=Propellant -item.test_nuke_tier1_shielding.name=Neutron Reflector (Tier 1) -item.test_nuke_tier2_shielding.name=Neutron Reflector (Tier 2) -item.test_nuke_tier1_bullet.name=U235 Projectile (Tier 1) -item.test_nuke_tier2_bullet.name=MOX Projectile (Tier 2) -item.test_nuke_tier1_target.name=Subcritical U235 Target (Tier 1) -item.test_nuke_tier2_target.name=Subcritical MOX Target (Tier 2) - -item.gadget_explosive.name=Propellant -item.gadget_explosive8.name=Bundle of Propellant -item.gadget_wireing.name=Wiring -item.gadget_core.name=Plutonium Core - -item.boy_igniter.name=Bomb Igniter -item.boy_propellant.name=Propellant -item.boy_bullet.name=U235 Projectile -item.boy_target.name=Subcritical U235 Target -item.boy_shielding.name=Neutron Shielding - -item.man_explosive.name=Propellant -item.man_explosive8.name=Bundle of Propellant -item.man_igniter.name=Bomb Igniter -item.man_core.name=Plutonium Core - -item.mike_core.name=Uranium Coated Deuterium Tank -item.mike_deut.name=Deuterium Tank -item.mike_cooling_unit.name=Deuterium Cooling Unit - -item.tsar_core.name=Tsar Bomba Core - -item.fleija_igniter.name=Pulse Igniter -item.fleija_propellant.name=Schrabidium Propellant -item.fleija_core.name=F.L.E.I.J.A. Uranium 235 Charge - -container.nukeGadget=The Gadget -container.nukeBoy=Little Boy -container.nukeMan=Fat Man -container.nukeMike=Ivy Mike -container.nukeTsar=Tsar Bomba -container.nukeFleija=F.L.E.I.J.A. -container.nukePrototype=The Prototype -container.nukeCustom=Custom Nuke - -container.bombMulti=Multi Purpose Bomb - -tile.nuke_gadget.name=The Gadget -tile.nuke_boy.name=Little Boy -tile.nuke_man.name=Fat Man -tile.nuke_mike.name=Ivy Mike -tile.nuke_tsar.name=Tsar Bomba -tile.nuke_fleija.name=F.L.E.I.J.A. -tile.nuke_prototype.name=The Prototype -tile.nuke_custom.name=Custom Nuke - -tile.bomb_multi.name=Multi Purpose Bomb - -tile.flame_war.name=Flame War in a Box -tile.float_bomb.name=Levitation Bomb -tile.therm_endo.name=Endothermic Bomb -tile.therm_exo.name=Exothermic Bomb - -tile.crashed_bomb.name=Dud - -tile.crate.name=Supply Crate -tile.marker_structure.name=Multiblock Structure Marker - -tile.machine_difurnace_off.name=Alloy Furnace -tile.machine_difurnace_on.name=Alloy Furnace -container.diFurnace=Alloy Furnace -tile.machine_centrifuge.name=Centrifuge -container.centrifuge=Centrifuge -tile.machine_uf6_tank.name=Uranium Hexafluoride Tank -container.uf6_tank=UF6 Tank -tile.machine_puf6_tank.name=Plutonium Hexafluoride Tank -container.puf6_tank=PuF6 Tank -tile.machine_reactor.name=Breeding Reactor -container.reactor=Breeding Reactor -tile.machine_nuke_furnace_off.name=Nuclear Powered Furnace -tile.machine_nuke_furnace_on.name=Nuclear Powered Furnace -container.nukeFurnace=Nuclear Powered Furnace -tile.machine_rtg_furnace_off.name=RTG Furnace -tile.machine_rtg_furnace_on.name=RTG Furnace -container.rtgFurnace=RTG Furnace -tile.machine_electric_furnace_off.name=Electric Furnace -tile.machine_electric_furnace_on.name=Electric Furnace -container.electricFurnace=Electric Furnace -tile.machine_generator.name=Nuclear Reactor -container.generator=Nuclear Reactor -tile.red_wire_coated.name=Coated Red Copper Cable -tile.machine_deuterium.name=Deuterium Extractor -container.machine_deuterium=Deuterium Extractor -tile.machine_battery.name=Energy Storage Block -container.battery=Energy Storage -tile.machine_coal_off.name=Coal Generator -tile.machine_coal_on.name=Coal Generator -container.machineCoal=Coal Generator -tile.launch_pad.name=Missile Launch Pad -container.launchPad=Missile Launch Pad -tile.book_guide.name=Hbm's Nuclear Tech Mod Manual -tile.machine_schrabidium_transmutator.name=Schrabidium Transmutation Device -container.machine_schrabidium_transmutator=Schrabidium Transmutation Device -tile.machine_diesel.name=Diesel Generator -container.machineDiesel=Diesel Generator -tile.machine_shredder.name=Shredder -container.machineShredder=Shredder -tile.machine_combine_factory.name=CMB Steel Furnace -container.machineCMB=CMB Steel Furnace -tile.machine_teleporter.name=Teleporter -container.teleporter=Teleporter -tile.machine_reix_mainframe.name=Rei-X Mainframe (WIP) -container.reix=Rei-X Mainframe -tile.machine_industrial_generator.name=Industrial Generator -container.iGenerator=Industrial Generator -tile.machine_cyclotron.name=Cyclotron -container.cyclotron=Cyclotron -tile.machine_well.name=Oil Derrick -tile.oil_pipe.name=Crude Oil Extraction Pipe -container.oilWell=Oil Derrick -tile.machine_refinery.name=Oil Refinery -container.machineRefinery=Oil Refinery -tile.oil_duct.name=Oil Pipe -tile.oil_duct_solid.name=Coated Oil Pipe -tile.machine_flare.name=Gas Flare -container.gasFlare=Gas Flare -tile.gas_duct.name=Gas Pipe -tile.gas_duct_solid.name=Coated Gas Pipe -tile.machine_drill.name=Automatic Mining Drill -container.miningDrill=Automatic Mining Drill -tile.machine_assembler.name=Assembly Machine -container.assembler=Assembly Machine -tile.machine_chemplant.name=Chemical Plant -container.chemplant=Chemical Plant - -tile.red_pylon.name=Electricity Pole -item.wiring_red_copper.name=Cable Drum - -tile.rail_highspeed.name=High Speed Rail -tile.rail_booster.name=High Speed Booster Rail - -tile.factory_titanium_hull.name=Basic Factory Casing -tile.factory_titanium_furnace.name=Basic Factory Access Hatch -tile.factory_titanium_conductor.name=Basic Factory Electricity Port -tile.factory_titanium_core.name=Basic Factory Core Component -item.factory_core_titanium.name=Basic Factory Energy Cluster -container.factoryTitanium=Basic Factory -tile.factory_advanced_hull.name=Advanced Factory Casing -tile.factory_advanced_furnace.name=Advanced Factory Access Hatch -tile.factory_advanced_conductor.name=Advanced Factory Electricity Port -tile.factory_advanced_core.name=Advanced Factory Core Component -item.factory_core_advanced.name=Advanced Factory Energy Cluster -container.factoryAdvanced=Advanced Factory - -tile.reactor_element.name=Reactor Chamber -tile.reactor_control.name=Control Rods -tile.reactor_hatch.name=Reactor Access Hatch -tile.reactor_conductor.name=Reactor Electricity Port -tile.reactor_computer.name=Reactor Control -container.reactorMultiblock=Big Nuclear Reactor - -tile.fusion_conductor.name=Superconducting Magnet -tile.fusion_center.name=Central Magnet Piece -tile.fusion_motor.name=Magnet Motor Piece -tile.fusion_heater.name=Plasma Heater -tile.fusion_hatch.name=Fusion Reactor Access Hatch -tile.fusion_core.name=Fusion Reactor Control -tile.plasma.name=Plasma -container.fusionMultiblock=Big Fusion Reactor - -tile.watz_element.name=Watz Reaction Chamber -tile.watz_control.name=Reinforced Control Rods -tile.watz_cooler.name=Watz Reactor Supercooler -tile.watz_end.name=Watz Reactor Stability Element -tile.watz_hatch.name=Watz Reactor Access Hatch -tile.watz_conductor.name=Watz Electricity Port -tile.watz_core.name=Watz Reactor Control -container.watzPowerplant=Watz Power Plant - -tile.fwatz_conductor.name=4000K Superconducting Magnet -tile.fwatz_cooler.name=Regenerative Coolant Fluid Tank Shell -tile.fwatz_tank.name=Regenerative Coolant Fluid Tank -tile.fwatz_scaffold.name=Fusionary Watz Plant Structural Support -tile.fwatz_hatch.name=Fusionary Watz Plant Access Hatch -tile.fwatz_computer.name=Fusionary Watz Reactor Calculation Matrix -tile.fwatz_core.name=Fusionary Watz Reactor Control -tile.fwatz_plasma.name=Destabilized Antischrabidium Plasma -container.fusionaryWatzPlant=Fusionary Watz Plant - -tile.machine_rtg_grey.name=RT Generator -container.rtg=RT Generator -tile.machine_rtg_red.name=Fulmination Generator -tile.machine_rtg_orange.name=Strong RT Generator -tile.machine_rtg_yellow.name=Australium Superfuel Reactor -tile.machine_rtg_green.name=Verticium Wealth Generator -tile.machine_rtg_cyan.name=Schrabidium Decay Generator (WIP) -tile.machine_rtg_blue.name=Convection Generator -tile.machine_rtg_purple.name=Antimatter Annihilation Generator - -item.assembly_template.TEST.name=Assembly Template: Test -item.assembly_template.MIXED_PLATE.name=Assembly Template: Mixed Plate -item.assembly_template.HAZMAT_CLOTH.name=Assembly Template: Hazmat Cloth -item.assembly_template.ASBESTOS_CLOTH.name=Assembly Template: Fire Proximity Cloth -item.assembly_template.COAL_FILTER.name=Assembly Template: Activated Carbon Filter -item.assembly_template.CENTRIFUGE_ELEMENT.name=Assembly Template: Centrifuge Element -item.assembly_template.CENTRIFUGE_TOWER.name=Assembly Template: Centrifuge Tower -item.assembly_template.DEE_MAGNET.name=Assembly Template: Dee Magnets -item.assembly_template.FLAT_MAGNET.name=Assembly Template: Flat Magnet -item.assembly_template.CYCLOTRON_TOWER.name=Assembly Template: Cyclotron Tower -item.assembly_template.REACTOR_CORE.name=Assembly Template: Breeding Reactor Core -item.assembly_template.RTG_UNIT.name=Assembly Template: RTG Unit -item.assembly_template.HEAT_UNIT.name=Assembly Template: Thermal Distribution Unit -item.assembly_template.GRAVITY_UNIT.name=Assembly Template: Gravity Manipulator -item.assembly_template.TITANIUM_DRILL.name=Assembly Template: Titanium Drill -item.assembly_template.TELEPAD.name=Assembly Template: Telepad -item.assembly_template.TELEKIT.name=Assembly Template: Entanglement Kit -item.assembly_template.GEASS_REACTOR.name=Assembly Template: Dysfunctional Nuclear Reactor -item.assembly_template.GENERATOR_FRONT.name=Assembly Template: Generator Front -item.assembly_template.WT1_GENERIC.name=Assembly Template: Small Warhead -item.assembly_template.WT2_GENERIC.name=Assembly Template: Medium Warhead -item.assembly_template.WT3_GENERIC.name=Assembly Template: Large Warhead -item.assembly_template.WT1_FIRE.name=Assembly Template: Small Incendiary Warhead -item.assembly_template.WT2_FIRE.name=Assembly Template: Medium Incendiary Warhead -item.assembly_template.WT3_FIRE.name=Assembly Template: Large Incendiary Warhead -item.assembly_template.WT1_CLUSTER.name=Assembly Template: Small Cluster Warhead -item.assembly_template.WT2_CLUSTER.name=Assembly Template: Medium Cluster Warhead -item.assembly_template.WT3_CLUSTER.name=Assembly Template: Large Cluster Warhead -item.assembly_template.WT1_BUSTER.name=Assembly Template: Small Bunker Buster Warhead -item.assembly_template.WT2_BUSTER.name=Assembly Template: Medium Bunker Buster Warhead -item.assembly_template.WT3_BUSTER.name=Assembly Template: Large Bunker Buster Warhead -item.assembly_template.W_NUCLEAR.name=Assembly Template: Nuclear Warhead -item.assembly_template.W_MIRVLET.name=Assembly Template: MIRV -item.assembly_template.W_MIRV.name=Assembly Template: Eightfold MIRV Warhead -item.assembly_template.W_ENDOTHERMIC.name=Assembly Template: Endothermic Warhead -item.assembly_template.W_EXOTHERMIC.name=Assembly Template: Exothermic Warhead -item.assembly_template.T1_TANK.name=Assembly Template: Small Fuel Tank -item.assembly_template.T2_TANK.name=Assembly Template: Medium Fuel Tank -item.assembly_template.T3_TANK.name=Assembly Template: Large Fuel Tank -item.assembly_template.T1_THRUSTER.name=Assembly Template: Small Thruster -item.assembly_template.T2_THRUSTER.name=Assembly Template: Medium Thruster -item.assembly_template.T3_THRUSTER.name=Assembly Template: Large Thruster -item.assembly_template.CHOPPER_HEAD.name=Assembly Template: Hunter Chopper Cockpit -item.assembly_template.CHOPPER_GUN.name=Assembly Template: Emplacement Gun -item.assembly_template.CHOPPER_BODY.name=Assembly Template: Hunter Chopper Body -item.assembly_template.CHOPPER_TAIL.name=Assembly Template: Hunter Chopper Tail -item.assembly_template.CHOPPER_WING.name=Assembly Template: Hunter Chopper Wing -item.assembly_template.CHOPPER_BLADES.name=Assembly Template: Hunter Chopper Rotor Blades -item.assembly_template.CIRCUIT_2.name=Assembly Template: Enhanced Circuit -item.assembly_template.CIRCUIT_3.name=Assembly Template: Advanced Circuit -item.assembly_template.RTG_PELLET.name=Assembly Template: Plutonium 238 Fuel Pellet -item.assembly_template.WEAK_PELLET.name=Assembly Template: Weak Uranium RTG Pellet -item.assembly_template.FUSION_PELLET.name=Assembly Template: Tritium-Deuterium-Cake -item.assembly_template.CLUSTER_PELLETS.name=Assembly Template: Explosive Pellets -item.assembly_template.GUN_PELLETS.name=Assembly Template: Lead Pellets - -item.fuse.name=Fuse - -tile.test_nuke.name=Test Nuke - -item.ingot_uranium.name=Uranium Ingot -item.ingot_u235.name=U235 Ingot -item.ingot_u238.name=U238 Ingot -item.ingot_plutonium.name=Plutonium Ingot -item.ingot_pu238.name=Pu238 Ingot -item.ingot_pu239.name=Pu239 Ingot -item.ingot_pu240.name=Pu240 Ingot -item.ingot_titanium.name=Titanium Ingot -item.sulfur.name=Sulfur - -item.niter.name=Niter -item.ingot_copper.name=Industrial Grade Copper -item.ingot_red_copper.name=Minecraft Grade Copper -item.ingot_tungsten.name=Tungsten Ingot -item.ingot_aluminium.name=Aluminium Ingot -item.fluorite.name=Fluorite -item.ingot_steel.name=Steel Ingot -item.plate_steel.name=Steel Plate -item.ingot_beryllium.name=Beryllium Ingot -item.plate_schrabidium.name=Schrabidium Plate -item.ingot_schrabidium.name=Schrabidium Ingot -item.nugget_schrabidium.name=Schrabidium Nugget -item.plate_copper.name=Copper Plate -item.board_copper.name=Copper Panel -item.ingot_advanced_alloy.name=Advanced Alloy Ingot -item.plate_advanced_alloy.name=Advanced Alloy Plate -item.wire_advanced_alloy.name=Super Conductor -item.coil_advanced_alloy.name=Super Conducting Coil -item.coil_advanced_torus.name=Super Conducting Ring Coil -item.coil_gold.name=Gold Coil -item.coil_gold_torus.name=Golden Ring Coil -item.lithium.name=Lithium Cube -item.ingot_magnetized_tungsten.name=Magnetized Tungsten Ingot -item.ingot_combine_steel.name=CMB Steel Ingot -item.plate_combine_steel.name=CMB Steel Plate -item.wire_magnetized_tungsten.name=4000K High Temperature Super Conductor -item.coil_magnetized_tungsten.name=4000K High Temperature Super Conducting Coil -item.plate_mixed.name=Mixed Plate -item.plate_paa.name=PaA Alloy Plate -item.ingot_dura_steel.name=High-Speed Steel Ingot -item.ingot_polymer.name=Polymer Ingot -item.bolt_dura_steel.name=High-Speed Steel Bolt -item.pipes_steel.name=Steel Pipes -item.drill_titanium.name=Titanium Drill - -item.ingot_australium.name=Australium Ingot -item.ingot_weidanium.name=Weidanium Ingot -item.ingot_reiium.name=Reiium Ingot -item.ingot_unobtainium.name=Unobtainium Ingot -item.ingot_daffergon.name=Daffergon Ingot -item.ingot_verticium.name=Verticium Ingot -item.nugget_australium.name=Australium Nugget -item.nugget_weidanium.name=Weidanium Nugget -item.nugget_reiium.name=Reiium Nugget -item.nugget_unobtainium.name=Unobtainium Nugget -item.nugget_daffergon.name=Daffergon Nugget -item.nugget_verticium.name=Verticium Nugget - -item.ingot_desh.name=Desh Ingot -item.nugget_desh.name=Desh Nugget -item.powder_desh.name=Desh Powder - -item.nugget_u235.name=U235 Nugget -item.nugget_u238.name=U238 Nugget -item.nugget_pu238.name=Pu238 Nugget -item.nugget_pu239.name=Pu239 Nugget -item.nugget_pu240.name=Pu240 Nugget -item.plate_titanium.name=Titanium Plate -item.plate_aluminium.name=Aluminium Plate -item.wire_red_copper.name=Red Copper Wire -item.neutron_reflector.name=Neutron Reflector -item.nugget_beryllium.name=Beryllium Nugget - -item.wire_aluminium.name=Aluminium Wire -item.wire_copper.name=Copper Wire -item.wire_gold.name=Gold Wire -item.wire_schrabidium.name=Schrabidium Wire - -item.circuit_aluminium.name=Basic Circuit -item.circuit_copper.name=Enhanced Circuit -item.circuit_red_copper.name=Advanved Circuit -item.circuit_gold.name=Overclocked Circuit -item.circuit_schrabidium.name=High Performance Circuit - -tile.block_aluminium.name=Block of Aluminium -tile.block_copper.name=Block of Copper -tile.block_fluorite.name=Block of Fluorite -tile.block_niter.name=Block of Niter -tile.block_red_copper.name=Block of Red Copper -tile.block_steel.name=Block of Steel -tile.block_sulfur.name=Block of Sulfur -tile.block_titanium.name=Block of Titanium -tile.block_tungsten.name=Block of Tungsten -tile.block_uranium.name=Block of Uranium -tile.block_trinitite.name=Block of Trinitite -tile.block_beryllium.name=Block of Beryllium -tile.block_waste.name=Block of Nuclear Waste -tile.block_scrap.name=Block of Scrap -tile.block_electrical_scrap.name=Block of Electrical Scrap -tile.block_advanced_alloy.name=Block of Advanced Alloy -tile.block_magnetized_tungsten.name=Block of Magnetized Tungsten -tile.block_combine_steel.name=Block of CMB Steel -tile.block_australium.name=Block of Australium -tile.block_weidanium.name=Block of Weidanium -tile.block_reiium.name=Block of Reiium -tile.block_unobtainium.name=Block of Unobtainium -tile.block_daffergon.name=Block of Daffergon -tile.block_verticium.name=Block of Verticium -tile.block_desh.name=Reinfoced Block of Desh - -tile.ore_aluminium.name=Aluminium Ore -tile.ore_copper.name=Copper Ore -tile.ore_fluorite.name=Fluorite Ore -tile.ore_niter.name=Niter Ore -tile.ore_sulfur.name=Sulfur Ore -tile.ore_titanium.name=Titanium Ore -tile.ore_tungsten.name=Tungsten Ore -tile.ore_uranium.name=Uranium Ore -tile.ore_schrabidium.name=Schrabidium Ore -tile.ore_beryllium.name=Beryllium Ore - -tile.ore_nether_uranium.name=Nether Uranium Ore -tile.ore_nether_plutonium.name=Nether Plutonium Ore -tile.ore_nether_tungsten.name=Nether Tungsten Ore -tile.ore_nether_sulfur.name=Nether Sulfur Ore -tile.ore_nether_fire.name=Fire Ore -tile.ore_nether_schrabidium.name=Nether Schrabidium Ore - -tile.ore_australium.name=Australian Ore -tile.ore_weidanium.name=Weidite -tile.ore_reiium.name=Reiite -tile.ore_unobtainium.name=Brightblende Ore -tile.ore_daffergon.name=Dellite -tile.ore_verticium.name=Dollar Green Mineral - -tile.ore_oil.name=Oil Deposit -tile.ore_oil_empty.name=Empty Oil Deposit - -tile.reinforced_brick.name=Reinforced Stone -tile.reinforced_glass.name=Reinforced Glass -tile.reinforced_sand.name=Reinforced Sandstone -tile.reinforced_light.name=Reinforced Glowstone -tile.reinforced_lamp_off.name=Reinforced Lamp -tile.reinforced_lamp_on.name=Reinforced Lamp - -tile.brick_concrete.name=Concrete Bricks -tile.brick_obsidian.name=Obsidian Bricks -tile.brick_light.name=Light Bricks -tile.asphalt.name=Asphalt - -tile.cmb_brick.name=CMB Steel Tile -tile.cmb_brick_reinforced.name=Reinforced CMB Bricks - -tile.gravel_obsidian.name=Crushed Obsidian - -tile.seal_frame.name=Silo Hatch Frame -tile.seal_controller.name=Silo Hatch Opener -tile.seal_hatch.name=Silo Hatch - -item.nugget_uranium.name=Uranium Nugget -item.nugget_plutonium.name=Plutonium Nugget -item.nugget_neptunium.name=Neptunium Nugget -item.ingot_neptunium.name=Neptunium Ingot -item.nugget_lead.name=Lead Nugget -item.ingot_lead.name=Lead Ingot -tile.block_lead.name=Block of Lead -tile.ore_lead.name=Lead Ore - -item.powder_lead.name=Lead Powder -item.powder_neptunium.name=Neptunium Powder -item.powder_schrabidium.name=Schrabidium Powder -item.powder_iron.name=Iron Powder -item.powder_gold.name=Gold Powder -item.powder_aluminium.name=Aluminium Powder -item.powder_beryllium.name=Beryllium Powder -item.powder_copper.name=Copper Powder -item.powder_titanium.name=Titanium Powder -item.powder_tungsten.name=Tungsten Powder -item.powder_uranium.name=Uranium Powder -item.powder_plutonium.name=Plutonium Powder -item.dust.name=Dust -item.powder_coal.name=Coal Powder -item.powder_lapis.name=Lapis Lazuli Powder -item.powder_emerald.name=Emerald Powder -item.powder_diamond.name=Diamond Powder -item.powder_red_copper.name=Red Copper Powder -item.powder_steel.name=Steel Powder -item.powder_magnetized_tungsten.name=Magnetized Tungsten Powder -item.powder_combine_steel.name=CMB Steel Powder -item.powder_lithium.name=Lithium Powder -item.powder_advanced_alloy.name=Advanced Alloy Powder -item.powder_quartz.name=Quartz Powder -item.powder_power.name=Energy Powder -item.powder_iodine.name=Iodine Powder -item.powder_thorium.name=Thorium Powder -item.powder_neodymium.name=Neodymium Powder -item.powder_astatine.name=Astatine Powder -item.powder_caesium.name=Caesium Powder -item.powder_australium.name=Australium Powder -item.powder_weidanium.name=Weidanium Powder -item.powder_reiium.name=Reiium Powder -item.powder_unobtainium.name=Unobtainium Powder -item.powder_daffergon.name=Daffergon Powder -item.powder_verticium.name=Verticium Powder -item.powder_strontium.name=Strontium Powder -item.powder_cobalt.name=Cobalt Powder -item.powder_bromine.name=Bromine Powder -item.powder_niobium.name=Niobium Powder -item.powder_tennessine.name=Tennessine Powder -item.powder_cerium.name=Cerium Powder -item.powder_dura_steel.name=High-Speed Steel Powder -item.powder_polymer.name=Polymer Powder -item.powder_lanthanium.name=Lanthanium Powder -item.powder_actinium.name=Actinium Powder -item.powder_lithium_tiny.name=Tiny Pile of Lithium Powder -item.powder_cobalt_tiny.name=Tiny Pile of Cobalt Powder - -item.battery_generic.name=Battery -item.battery_advanced.name=Advanced Battery -item.battery_lithium.name=Lithium-Ion Battery -item.battery_schrabidium.name=Schrabidium Battery -item.battery_creative.name=Infinite Battery - -item.battery_red_cell.name=Redstone Power Cell -item.battery_advanced_cell.name=Advanced Power Cell -item.battery_lithium_cell.name=Lithium-Ion Power Cell -item.battery_schrabidium_cell.name=Schrabidium Power Cell -item.battery_red_cell_6.name=Sixfold Redstone Power Cell -item.battery_advanced_cell_4.name=Quadruple Advanced Power Cell -item.battery_lithium_cell_3.name=Tripple Lithium-Ion Power Cell -item.battery_schrabidium_cell_2.name=Double Schrabidium Power Cell -item.battery_red_cell_24.name=24-Fold Redstone Power Cell -item.battery_advanced_cell_12.name=Twelvefold Advanced Power Cell -item.battery_lithium_cell_6.name=Sixfold Lithium-Ion Power Cell -item.battery_schrabidium_cell_4.name=Quadruple Schrabidium Power Cell - -item.upgrade_template.name=Machine Upgrade Piece Template -item.upgrade_speed_1.name=Red Machine Upgrade Mk.I -item.upgrade_speed_2.name=Red Machine Upgrade Mk.II -item.upgrade_speed_3.name=Red Machine Upgrade Mk.III -item.upgrade_effect_1.name=Green Machine Upgrade Mk.I -item.upgrade_effect_2.name=Green Machine Upgrade Mk.II -item.upgrade_effect_3.name=Green Machine Upgrade Mk.III -item.upgrade_power_1.name=Blue Machine Upgrade Mk.I -item.upgrade_power_2.name=Blue Machine Upgrade Mk.II -item.upgrade_power_3.name=Blue Machine Upgrade Mk.III -item.upgrade_fortune_1.name=Purple Machine Upgrade Mk.I -item.upgrade_fortune_2.name=Purple Machine Upgrade Mk.II -item.upgrade_fortune_3.name=Purple Machine Upgrade Mk.III - -item.fusion_core.name=Fusion Core -item.energy_core.name=Makeshift Energy Core - -item.plate_iron.name=Iron Plate -item.plate_lead.name=Lead Plate -item.coil_copper.name=Copper Coil -item.coil_copper_torus.name=Ring Coil -item.wire_tungsten.name=Tungsten Wire -item.coil_tungsten.name=Heating Coil -item.tank_steel.name=Steel Tank -item.motor.name=Motor -item.centrifuge_element.name=Centrifuge Element -item.centrifuge_tower.name=Centrifuge Tower -item.reactor_core.name=Breeding Reactor Core -item.pellet_rtg.name=Plutonium 238 Fuel Pellet -item.pellet_rtg_weak.name=Weak Uranium RTG Pellet -item.rtg_unit.name=RTG Unit -item.hazmat_cloth.name=Hazmat Cloth -item.asbestos_cloth.name=Fire Proximity Cloth -item.filter_coal.name=Activated Carbon Filter -item.tritium_deuterium_cake.name=Tritium-Deuterium-Cake -item.telepad.name=Telepad -item.entanglement_kit.name=Entanglement Kit -item.toothpicks.name=Toothpicks -item.ducttape.name=Duct Tape -item.magnet_dee.name=Dee Magnets -item.magnet_circular.name=Flat Magnet -item.cyclotron_tower.name=Cyclotron Tower -item.plate_dalekanium.name=Angry Metal - -item.cell_empty.name=Empty Cell -item.cell_uf6.name=Uranium Hexafluorite Cell -item.cell_puf6.name=Plutonium Hexafluorite Cell -item.cell_antimatter.name=Antimatter Cell -item.cell_deuterium.name=Deuterium Cell -item.cell_tritium.name=Tritium Cell -item.cell_sas3.name=Schrabidium Trisulfide Cell -item.cell_anti_schrabidium.name=Antischrabidium Cell -item.singularity.name=Singularity -item.singularity_counter_resonant.name=Contained Counter-Resonant Singularity -item.singularity_super_heated.name=Superheated Resonating Singularity -item.black_hole.name=Miniature Black Hole -item.crystal_xen.name=Artificial Xen Crystal - -item.inf_water.name=Infinite Water Tank -item.inf_deuterium.name=Infinite Deuterium Tank -item.inf_tritium.name=Infinite Tritium Tank -item.inf_coolant.name=Infinite Coolant Tank -item.inf_sulfur.name=Infinite Sulfur Tank -item.inf_diesel.name=Infinite Diesel Tank -item.inf_antimatter.name=Infinite Antimatter Tank -item.inf_antischrabidium.name=Infinite Antischrabidium Tank - -item.oil_canola.name=Raw Canola Oil - -item.canister_empty.name=Empty Canister -item.canister_smear.name=Industrial Oil Canister -item.canister_canola.name=Engine Lubricant -item.canister_oil.name=Crude Oil Canister -item.canister_fuel.name=Fuel Canister -item.canister_kerosene.name=Kerosene Canister -item.canister_reoil.name=Canister of Reclaimed Industrial Oil -item.canister_petroil.name=Petroil Canister -item.canister_napalm.name=Napalm B -item.canister_NITAN.name=NITAN© 100 Octane Super Fuel -item.gas_empty.name=Empty Gas Tank -item.gas_full.name=Gas Tank - -item.rod_empty.name=Emty Rod -item.rod_uranium.name=Uranium Rod -item.rod_u235.name=U235 Rod -item.rod_u238.name=U238 Rod -item.rod_plutonium.name=Plutonium Rod -item.rod_pu238.name=Pu238 Rod -item.rod_pu239.name=Pu239 Rod -item.rod_pu240.name=Pu240 Rod -item.rod_neptunium.name=Neptunium Rod -item.rod_lead.name=Lead Rod -item.rod_schrabidium.name=Schrabidium Rod -item.rod_astatine.name=Euphemium Rod -item.rod_australium.name=Australium Rod -item.rod_weidanium.name=Weidanium Rod -item.rod_reiium.name=Reiium Rod -item.rod_unobtainium.name=Unobtainium Rod -item.rod_daffergon.name=Daffergon Rod -item.rod_verticium.name=Verticium Rod - -item.rod_dual_empty.name=Emty Dual Rod -item.rod_dual_uranium.name=Uranium Dual Fl Rod -item.rod_dual_u235.name=U235 Dual Rod -item.rod_dual_u238.name=U238 Dual Rod -item.rod_dual_plutonium.name=Plutonium Dual Rod -item.rod_dual_pu238.name=Pu238 Dual Rod -item.rod_dual_pu239.name=Pu239 Dual Rod -item.rod_dual_pu240.name=Pu240 Dual Rod -item.rod_dual_neptunium.name=Neptunium Dual Rod -item.rod_dual_lead.name=Lead Dual Rod -item.rod_dual_schrabidium.name=Schrabidium Dual Rod - -item.rod_quad_empty.name=Emty Quad Rod -item.rod_quad_uranium.name=Uranium Quad Rod -item.rod_quad_u235.name=U235 Quad Rod -item.rod_quad_u238.name=U238 Quad Rod -item.rod_quad_plutonium.name=Plutonium Quad Rod -item.rod_quad_pu238.name=Pu238 Quad Rod -item.rod_quad_pu239.name=Pu239 Quad Rod -item.rod_quad_pu240.name=Pu240 Quad Rod -item.rod_quad_neptunium.name=Neptunium Quad Rod -item.rod_quad_lead.name=Lead Quad Rod -item.rod_quad_schrabidium.name=Schrabidium Quad Rod - -item.rod_uranium_fuel_depleted.name=Depleted Uranium Fuel Rod -item.rod_dual_uranium_fuel_depleted.name=Depleted Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel_depleted.name=Depleted Uranium Quad Fuel Rod -item.rod_plutonium_fuel_depleted.name=Depleted Plutonium Fuel Rod -item.rod_dual_plutonium_fuel_depleted.name=Depleted Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel_depleted.name=Depleted Plutonium Quad Fuel Rod -item.rod_mox_fuel_depleted.name=Depleted MOX Fuel Rod -item.rod_dual_mox_fuel_depleted.name=Depleted MOX Dual Fuel Rod -item.rod_quad_mox_fuel_depleted.name=Depleted MOX Quad Fuel Rod -item.rod_schrabidium_fuel_depleted.name=Depleted Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel_depleted.name=Depleted Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel_depleted.name=Depleted Schrabidium Quad Fuel Rod - -item.rod_waste.name=Nuclear Waste Rod -item.rod_dual_waste.name=Nuclear Waste Dual Rod -item.rod_quad_waste.name=Nuclear Waste Quad Rod - -item.gun_rpg.name=Rocket Launcher -item.gun_rpg_ammo.name=Rocket - -item.flame_pony.name=Painting of a Cartoon Pony -item.flame_conspiracy.name=Conspiracy Theory -item.flame_politics.name=Political Topic -item.flame_opinion.name=Own Opinion - -item.pellet_cluster.name=Explosive Pellets -item.pellet_buckshot.name=Lead Pellets -item.powder_fire.name=Flame Powder -item.powder_ice.name=Cryo Powder -item.powder_poison.name=Poison Powder -item.pellet_gas.name=Poison Gas Cartridge -item.magnetron.name=Magnetron -item.powder_thermite.name=Thermite - -item.nuke_starter_kit.name=Atomic Science Starter Kit -item.nuke_commercially_kit.name=Atomic Science Kit for Commercial Uses -item.nuke_advanced_kit.name=Atomic Science Advanced Kit -item.gadget_kit.name=The Gadget Kit -item.boy_kit.name=Little Boy Kit -item.man_kit.name=Fat Man Kit -item.mike_kit.name=Ivy Mike Kit -item.tsar_kit.name=Tsar Bomba Kit -item.fleija_kit.name=F.L.E.I.J.A. Kit -item.multi_kit.name=Multi Purpose Bomb Kit -item.grenade_kit.name=Grenade Kit -item.nuke_electric_kit.name=Electronic Engineer's Kit -item.prototype_kit.name=Prototype Kit -item.missile_kit.name=Missile Kit -item.t45_kit.name=T45 Power Armor Kit -item.euphemium_kit.name=Euphemium Kit - -tile.waste_earth.name=Dead Grass -tile.waste_trinitite.name=Trinitite Ore -tile.waste_trinitite_red.name=Red Trinitite Ore -tile.waste_log.name=Charred Log -tile.waste_planks.name=Charred Wooden Planks - -item.trinitite.name=Trinitite -item.nuclear_waste.name=Nuclear Waste -item.scrap.name=Scrap - -item.ingot_uranium_fuel.name=Ingot of Uranium Fuel -item.ingot_plutonium_fuel.name=Ingot of Plutonium Fuel -item.ingot_mox_fuel.name=Ingot of MOX Fuel -item.ingot_schrabidium_fuel.name=Ingot of Schrabidium Fuel - -item.nugget_uranium_fuel.name=Nugget of Uranium Fuel -item.nugget_plutonium_fuel.name=Nugget of Plutonium Fuel -item.nugget_mox_fuel.name=Nugget of MOX Fuel -item.nugget_schrabidium_fuel.name=Nugget of Schrabidium Fuel - -item.grenade_generic.name=Grenade -item.grenade_strong.name=Enhanced Grenade -item.grenade_frag.name=Frag Grenade -item.grenade_fire.name=Flame Frag Grenade -item.grenade_shrapnel.name=Shrapnel Grenade -item.grenade_cluster.name=Cluster Bomb -item.grenade_flare.name=Flare Grenade -item.grenade_electric.name=Lightning Bomb -item.grenade_poison.name=Poison Grenade -item.grenade_gas.name=Gas Grenade -item.grenade_pulse.name=Impulse Grenade -item.grenade_plasma.name=Plasma Grenade -item.grenade_tau.name=Tau Grenade -item.grenade_schrabidium.name=Schrabidium Grenade -item.grenade_lemon.name=Combustible Lemon -item.grenade_mk2.name=Mk 2 Grenade "Ambassador Pineapple" -item.grenade_aschrab.name=Tossable Antischrabidium Cell -item.grenade_nuke.name=Mark VI Drill Grenade -item.grenade_nuclear.name=Nuka Grenade -item.grenade_zomg.name=Negative Energy Pair Annihilation Grenade -item.grenade_black_hole.name=Black Hole Grenade -item.ullapool_caber.name=Ullapool Caber - -item.rod_uranium_fuel.name=Uranium Fuel Rod -item.rod_dual_uranium_fuel.name=Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel.name=Uranium Quad Fuel Rod -item.rod_plutonium_fuel.name=Plutonium Fuel Rod -item.rod_dual_plutonium_fuel.name=Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel.name=Plutonium Quad Fuel Rod -item.rod_mox_fuel.name=MOX Fuel Rod -item.rod_dual_mox_fuel.name=MOX Dual Fuel Rod -item.rod_quad_mox_fuel.name=MOX Quad Fuel Rod -item.rod_schrabidium_fuel.name=Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel.name=Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel.name=Schrabidium Quad Fuel Rod - -item.rod_water.name=Water Cell -item.rod_dual_water.name=Dual Water Cell -item.rod_quad_water.name=Quad Water Cell - -item.rod_coolant.name=Coolant Cell -item.rod_dual_coolant.name=Dual Coolant Cell -item.rod_quad_coolant.name=Quad Coolant Cell - -item.rod_lithium.name=Lithium Rod -item.rod_dual_lithium.name=Dual Lithium Rod -item.rod_quad_lithium.name=Quad Lithium Rod - -item.rod_tritium.name=Tritium Cell -item.rod_dual_tritium.name=Dual Tritium Cell -item.rod_quad_tritium.name=Quad Tritium Cell - -item.levitation_unit.name=Gravity Manipulator -item.thermo_unit_empty.name=Thermic Distribution Unit -item.thermo_unit_endo.name=Coldness Distribution Unit -item.thermo_unit_exo.name=Heat Distribution Unit - -item.bomb_waffle.name=Waffle of Mass Destruction -item.schnitzel_vegan.name=Vegan Schnitzel -item.apple_schrabidium.name=Schrabidium Apple -item.cotton_candy.name=Radioactive Cotton Candy -item.tem_flakes.name=Tem Flakes -item.glowing_stew.name=Glowing Mushroom Stew -item.lemon.name="Lemon" - -tile.frozen_grass.name=Frozen Grass -tile.frozen_dirt.name=Frozen Dirt -tile.frozen_log.name=Frozen Log -tile.frozen_planks.name=Frozen Planks - -tile.tape_recorder.name=Tape Recorder -tile.steel_poles.name=Steel Pole -tile.pole_top.name=Antenna Top -tile.pole_satellite_receiver.name=Satellite Receiver -tile.steel_wall.name=Steel Wall -tile.steel_corner.name=Steel Wall Corner -tile.steel_roof.name=Flat Steel Roof -tile.steel_beam.name=Steel Beam -tile.steel_scaffold.name=Steel Scaffold - -item.gun_revolver_iron.name=Simple Revolver -item.gun_revolver.name=Enhanced Revolver -item.gun_revolver_gold.name=Golden Revolver -item.gun_revolver_lead.name=Nuka Revolver -item.gun_revolver_schrabidium.name=Schrabidium Revolver -item.gun_revolver_cursed.name=Cursed Revolver -item.gun_revolver_nightmare.name=Nightmare Revolver (Original) -item.gun_revolver_nightmare2.name=Nightmare Revolver (Dark) -item.gun_fatman.name=M42 Nuclear Catapult "Fat Man" -item.gun_mirv.name=M42 Nuclear Catapult "Experimental MIRV" -item.gun_bf.name=M42_2 Nuclear Catapult "Antimatter Launcher" -item.gun_mp40.name=Submachine Gun -item.gun_uboinik.name=Uboinik -item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype -item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle -item.gun_immolator.name=The Immolator -item.gun_cryolator.name=The Cryolator -item.gun_mp.name=Pacifist's Machine Gun -item.gun_zomg.name=Singularity Powered Annihilation Ray "ZOMG Cannon" -item.gun_emp.name=EMP Ray -item.gun_super_shotgun.name=Super Shotgun -item.gun_moist_nugget.name=Mosin-Nagant -item.gun_revolver_inverted.name=Flipped Revolver -item.gun_jack.name=Jackhammer -item.gun_spark.name=Spark Plug -item.gun_hp.name=HPP Lazerjet -item.gun_euthanasia.name=Euthanasia -item.gun_defabricator.name=Defabricator - -item.gun_revolver_iron_ammo.name=Bullet -item.gun_revolver_ammo.name=Lead Bullet -item.gun_revolver_gold_ammo.name=Golden Bullet -item.gun_revolver_lead_ammo.name=Glass Covered Nuclear Bullet -item.gun_revolver_schrabidium_ammo.name=Schrabidium Bullet -item.gun_revolver_cursed_ammo.name=Steel Bullet -item.gun_revolver_nightmare_ammo.name=Nightmare Bullet -item.gun_revolver_nightmare2_ammo.name=Laser Buckshot -item.gun_fatman_ammo.name=Mini Nuke -item.gun_mirv_ammo.name=Eightfold MIRV -item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F. -item.gun_mp40_ammo.name=Submachine Gun Round -item.gun_uboinik_ammo.name=12x70 Buckshot -item.gun_xvl1456_ammo.name=Depleted Uranium-235 Box -item.gun_osipr_ammo.name=Dark Energy Pulse Plug -item.gun_osipr_ammo2.name=Combine Ball -item.gun_immolator_ammo.name=Immolator Fuel -item.gun_cryolator_ammo.name=Cryo Cell -item.gun_mp_ammo.name=Small Propellantless Machine Gun Round -item.gun_emp_ammo.name=Energy Cell -item.gun_jack_ammo.name=Quadruple Shotgun Shell -item.gun_spark_ammo.name=Electromagnetic Cartridge -item.gun_hp_ammo.name=Ink Cartridge -item.gun_euthanasia_ammo.name=Syringe -item.gun_defabricator_ammo.name=Defabricator Energy Cell - -item.clip_revolver_iron.name=Box of Iron Rounds -item.clip_revolver.name=Box of .357 Rounds -item.clip_revolver_gold.name=Small Coffer of Golden Bullets -item.clip_revolver_schrabidium.name=Schrabidium Ammo Container -item.clip_rpg.name=Rocket Container -item.clip_xvl1456.name=Large Isotope Box -item.clip_osipr.name=AR2 Magazine -item.clip_immolator.name=Tank of Immolator Fuel -item.clip_cryolator.name=Tank of Cryolator Fuel -item.clip_revolver_lead.name=Box of Nuclear Bullets -item.clip_revolver_cursed.name=Britannia Military Standard Issue Pisol Magazine -item.clip_fatman.name=Six Pack of Mini Nukes -item.clip_mirv.name=Three-In-One Pack of Mini MIRVs -item.clip_bf.name=BF-Shell Double Pack -item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine -item.clip_mp40.name=9mm SMG Magazine -item.clip_uboinik.name=Box of Buckshot Rounds -item.clip_emp.name=Small Pack of Energy Cells -item.clip_revolver_nightmare.name=Bag of Bullets -item.clip_revolver_nightmare2.name=Belt with Laser Buckshot - -tile.block_schrabidium.name=Block of Schrabidium -item.plate_gold.name=Gold Plate - -item.syringe_empty.name=Empty Syringe -item.syringe_antidote.name=Antidote -item.syringe_poison.name=Poisonous Injection -item.syringe_awesome.name=AWESOME -item.syringe_metal_empty.name=Metal Syringe -item.syringe_metal_stimpak.name=Stimpak -item.syringe_metal_medx.name=Med-X -item.syringe_metal_psycho.name=Psycho -item.pill_iodine.name=Iodine Pill -item.plan_c.name=Plan C - -item.stealth_boy.name=Stealth Device - -entity.hbm.entity_bullet.name=Bullet -entity.hbm.entity_rocket.name=Rocket -entity.hbm.entity_schrabnel.name=Schrabnel -entity.entity_mob_nuclear_creeper.name=Nuclear Creeper -entity.entity_mob_hunter_chopper.name=Hunter ChopperCreeper -entity.entity_cyber_crab.name=Cyber Crab - -item.cap_aluminium.name=Aluminium Cap -item.hull_small_steel.name=Small Steel Shell -item.hull_small_aluminium.name=Small Aluminium Shell -item.hull_big_steel.name=Big Steel Shell -item.hull_big_aluminium.name=Big Aluminium Shell -item.hull_big_titanium.name=Big Titanium Shell -item.fins_flat.name=Flat Steel Casing -item.fins_small_steel.name=Small Steel Grid Fins -item.fins_big_steel.name=Big Steel Grid Fins -item.fins_tri_steel.name=Large Steel Fins -item.fins_quad_titanium.name=Small Titanium Fins -item.sphere_steel.name=Steel Sphere -item.pedestal_steel.name=Steel Pedestal -item.dysfunctional_reactor.name=Dysfunctional Nuclear Reactor - -item.rotor_steel.name=Large Steel Rotor -item.generator_steel.name=Generator Body -item.blade_titanium.name=Titanium Blade -item.turbine_titanium.name=Titanium Steam Turbine -item.generator_front.name=Generator Front - -item.combine_scrap.name=CMB Scrap Metal -item.chopper_head.name=Hunter Chopper Cockpit -item.chopper_gun.name=Emplacement Gun -item.chopper_torso.name=Hunter Chopper Body -item.chopper_tail.name=Hunter Chopper Tail -item.chopper_wing.name=Hunter Chopper Wing -item.chopper_blades.name=Hunter Chopper Rotor Blades - -item.igniter.name=Igniter -item.watch.name=Broken Pocket Watch -item.apple_astatine.name=Euphemium Apple -item.ingot_astatine.name=Euphemium Ingot -item.nugget_astatine.name=Euphemium Nugget -item.rod_quad_astatine.name=Burned Out Quad Schrabidium Fuel Rod - -item.astatine_helmet.name=Euphemium Helemt -item.astatine_plate.name=Euphemium Chestplate -item.astatine_legs.name=Euphemium Leggings -item.astatine_boots.name=Euphemiums Boots - -item.schrabidium_helmet.name=Schrabidium Helmet -item.schrabidium_plate.name=Schrabidium Chestpate -item.schrabidium_legs.name=Schrabidium Leggings -item.schrabidium_boots.name=Schrabidium Boots -item.schrabidium_sword.name=Schrabidium Sword -item.schrabidium_pickaxe.name=Schrabidium Pickaxe -item.schrabidium_axe.name=Schrabidium Axe -item.schrabidium_shovel.name=Schrabidium Shovel -item.schrabidium_hoe.name=Schrabidium Hoe - -item.chainsaw.name=Chainsaw -item.crowbar.name=Mk.V Crate Opening Device "Crowbar" - -item.mask_of_infamy.name=Mask of Infamy - -tile.det_cord.name=Det Cord -tile.det_charge.name=Explosive Charge -tile.red_barrel.name=Explosive Barrel -tile.yellow_barrel.name=Radioactive Barrel - -item.designator.name=Short Range Target Designator -item.designator_range.name=Long Range Target Designator -item.missile_generic.name=High Explosive Missile -item.missile_anti_ballistic.name=Anti Ballistic Missile (WIP) -item.missile_incendiary.name=Incendiary Missile -item.missile_cluster.name=Cluster Missile -item.missile_buster.name=Bunker Buster -item.missile_strong.name=Strong HE Missile -item.missile_incendiary_strong.name=Strong Incendiary Missile -item.missile_cluster_strong.name=Strong Cluster Missile -item.missile_buster_strong.name=Enhanced Bunker Buster -item.missile_burst.name=Spare Missile -item.missile_inferno.name=Inferno Missile G.R.N. Mk.II -item.missile_rain.name=Bomblet Rain -item.missile_drill.name=The Concrete Cracker -item.missile_nuclear.name=Nuclear Missile -item.missile_nuclear_cluster.name=Nuclear MIRV Missile -item.missile_endo.name=Endothermic Missile -item.missile_exo.name=Exothermic Missile - -item.hazmat_helmet.name=Hazmat Helmet -item.hazmat_plate.name=Hazmat Chestplate -item.hazmat_legs.name=Hazmat Leggings -item.hazmat_boots.name=Hazmat Boots -item.hazmat_paa_helmet.name=PaA Battle Hazmat Suit Helmet -item.hazmat_paa_plate.name=PaA Battle Hazmat Suit Chestplate -item.hazmat_paa_legs.name=PaA Battle Hazmat Suit Leggings -item.hazmat_paa_boots.name=PaA Battle Hazmat Suit Boots -item.asbestos_helmet.name=Fire Proximity Helmet -item.asbestos_plate.name=Fire Proximity Chestplate -item.asbestos_legs.name=Fire Proximity Leggings -item.asbestos_boots.name=Fire Proximity Boots - -item.paa_plate.name=PaA Chest Protection Plate -item.paa_legs.name=PaA Leg Reinforcements -item.paa_boots.name=PaA "good ol' shoes" - -item.goggles.name=Protection Goggles -item.gas_mask.name=Gas Mask -item.oxy_mask.name=Oxygen Mask -item.t45_helmet.name=T45 Power Armor Helmet -item.t45_plate.name=T45 Power Armor Chestplate -item.t45_legs.name=T45 Power Armor Leggings -item.t45_boots.name=T45 Power Armor Boots - -tile.mush.name=Glowing Mushroom -tile.waste_mycelium.name=Glowing Mycelium - -item.warhead_generic_small.name=Small Warhead -item.warhead_generic_medium.name=Medium Warhead -item.warhead_generic_large.name=Large Warhead -item.warhead_incendiary_small.name=Small Incendiary Warhead -item.warhead_incendiary_medium.name=Medium Incendiary Warhead -item.warhead_incendiary_large.name=Large Incendiary Warhead -item.warhead_cluster_small.name=Small Cluster Warhead -item.warhead_cluster_medium.name=Medium Cluster Warhead -item.warhead_cluster_large.name=Large Cluster Warhead -item.warhead_buster_small.name=Small Bunker Buster Warhead -item.warhead_buster_medium.name=Medium Bunker Buster Warhead -item.warhead_buster_large.name=Large Bunker Buster Warhead -item.warhead_nuclear.name=Nuclear Warhead -item.warhead_mirvlet.name=MIRV -item.warhead_mirv.name=Eightfold MIRV Warhead -item.warhead_thermo_endo.name=Endothermic Warhead -item.warhead_thermo_exo.name=Exothermic Warhead -item.fuel_tank_small.name=Small Fuel Tank -item.fuel_tank_medium.name=Medium Fuel Tank -item.fuel_tank_large.name=Large Fuel Tank -item.thruster_small.name=Small Thruster -item.thruster_medium.name=Medium Thruster -item.thruster_large.name=Large Thruster - -item.wand_k.name=Construction Wand -item.wand_s.name=Structure Wand -item.wand_d.name=Debug Wand - -item.screwdriver.name=Screwdriver -item.overfuse.name=Singularity Screwdriver - -item.steel_helmet.name=Steel Helmet -item.steel_plate.name=Steel Chestplate -item.steel_legs.name=Steel Leggings -item.steel_boots.name=Steel Boots -item.titanium_helmet.name=Titanium Helmet -item.titanium_plate.name=Titanium Chestplate -item.titanium_legs.name=Titanium Leggings -item.titanium_boots.name=Titanium Boots -item.alloy_helmet.name=Advanced Alloy Helmet -item.alloy_plate.name=Advanced Alloy Chestplate -item.alloy_legs.name=Advanced Alloy Leggings -item.alloy_boots.name=Advanced Alloy Boots -item.cmb_helmet.name=CMB Steel Helmet -item.cmb_plate.name=CMB Steel Chestplate -item.cmb_legs.name=CMB Steel Leggings -item.cmb_boots.name=CMB Steel Boots - -item.steel_sword.name=Steel Sword -item.steel_pickaxe.name=Steel Pickaxe -item.steel_axe.name=Steel Axe -item.steel_shovel.name=Steel Shovel -item.steel_hoe.name=Steel Hoe -item.titanium_sword.name=Titanium Sword -item.titanium_pickaxe.name=Titanium Pickaxe -item.titanium_axe.name=Titanium Axe -item.titanium_shovel.name=Titanium Shovel -item.titanium_hoe.name=Titanium Hoe -item.alloy_sword.name=Advanced Alloy Sword -item.alloy_pickaxe.name=Advanced Alloy Pickaxe -item.alloy_axe.name=Advanced Alloy Axe -item.alloy_shovel.name=Advanced Alloy Shovel -item.alloy_hoe.name=Advanced Alloy Hoe -item.cmb_sword.name=CMB Steel Sword -item.cmb_pickaxe.name=CMB Steel Pickaxe -item.cmb_axe.name=CMB Steel Axe -item.cmb_shovel.name=CMB Steel Shovel -item.cmb_hoe.name=CMB Steel Hoe -item.elec_sword.name=Stunstick -item.elec_pickaxe.name=Impact Drill -item.elec_axe.name=Electric Chainsaw -item.elec_shovel.name=Spiral Drill - -tile.red_cable.name=Red Copper Cable -tile.block_meteor.name=Meteor Block - -item.cape_radiation.name=Cape (Radiation) -item.cape_gasmask.name=Cape (Gas Mask) -item.cape_schrabidium.name=Cape (Schrabidic) -item.cape_hbm.name=Hbm's Cape -item.cape_dafnik.name=Dafnik's Cape -item.cape_lpkukin.name=LPkukin's Cape -item.cape_vertice.name=Lord Vertice's Cape - -tile.machine_converter_he_rf.name=HE to RF Converter -tile.machine_converter_rf_he.name=RF to HE Converter - -item.schrabidium_hammer.name=Schrabidium Hammer -item.euphemium_stopper.name=Stopper -item.matchstick.name=Matchstick -item.remote.name=Broken Remote - -item.redcoil_capacitor.name=Redcoil Capacitor -item.detonator.name=Detonator -item.crate_caller.name=Supply Drop Requester - -item.ingot_hes.name=Highly Enriched Schrabidium Fuel Ingot -item.ingot_les.name=Low Enriched Schrabidium Fuel Ingot -item.nugget_hes.name=Highly Enriched Schrabidium Fuel Nugget -item.nugget_les.name=Low Enriched Schrabidium Fuel Nugget - -item.pellet_schrabidium.name=Pure Schrabidium Watz Pellet -item.pellet_hes.name=HES Watz Pellet -item.pellet_mes.name=MES Watz Pellet -item.pellet_les.name=LES Watz Pellet -item.pellet_beryllium.name=Beryllium Moderator Pellet -item.pellet_neptunium.name=Neptunium Watz Pellet -item.pellet_lead.name=Lead Reflector Pellet -item.pellet_advanced.name=Advanced Watz Performance Improver - -item.titanium_filter.name=Titanium Filter - -tile.mud_block.name=Poisonous Mud -fluid.mud_fluid=Poisonous Mud -item.bucket_mud.name=Bucket of Poisonous Mud -tile.acid_block.name=Acid -fluid.acid_fluid=Acid -item.bucket_acid.name=Bucket of Acid -tile.toxic_block.name=Stereotypical Green Ooze -fluid.toxic_fluid=Stereotypical Green Ooze -item.bucket_toxic.name=Bucket of Stereotypical Green Ooze -item.tank_waste_0.name=Mud Container -item.tank_waste_1.name=Mud Container -item.tank_waste_2.name=Mud Container -item.tank_waste_3.name=Mud Container -item.tank_waste_4.name=Mud Container -item.tank_waste_5.name=Mud Container -item.tank_waste_6.name=Mud Container -item.tank_waste_7.name=Mud Container -item.tank_waste_8.name=Mud Container - -item.can_empty.name=Empty Can -item.can_smart.name='Smart' Energy Drink -item.can_creature.name='Creature' Energy Drink -item.can_redbomb.name='Red Bomb' Energy Drink -item.can_mrsugar.name='Dr. Sugar' Soft Drink -item.can_overcharge.name=Overcharge Delirium XT -item.bottle_empty.name=Empty Bomb-Shaped Bottle -item.bottle_nuka.name=Bottle of Nuka Cola -item.bottle_cherry.name=Bottle of Nuka Cherry -item.bottle_quantum.name=Bottle of Nuka Cola Quantum -item.bottle2_empty.name=Empty Bottle -item.bottle2_korl.name=Korl -item.bottle2_fritz.name=Fritz Cola -item.bottle2_korl_special.name=The First Korl -item.bottle2_fritz_special.name=The First Fritz Cola -item.chocolate_milk.name=Chocolate Milk -item.cap_nuka.name=Nuka Cola Bottle Cap -item.cap_quantum.name=Nuka Cola Quantum Bottle Cap -item.cap_korl.name=Korl Bottle Cap -item.cap_fritz.name=Fritz Cola Bottle Cap -item.ring_pull.name=Ring Pull - -item.bottle_opener.name=Hbm's Own Self-Made Bottle Opener - -item.blades_aluminium.name=Aluminium Shredder Blades -item.blades_gold.name=Golden Shredder Blades -item.blades_iron.name=Iron Shredder Blades -item.blades_steel.name=Steel Shredder Blades -item.blades_titanium.name=Titanium Shredder Blades -item.blades_advanced_alloy.name=Advanced Shredder Blades -item.blades_combine_steel.name=CMB Shredder Blades -item.blades_schrabidium.name=Schrabidium Shredder Blades - -item.part_lithium.name=Box of Lithium Dust -item.part_beryllium.name=Box of Beryllium Dust -item.part_carbon.name=Box of Carbon Dust -item.part_copper.name=Box of Copper Dust -item.part_plutonium.name=Box of Plutonium Dust - -item.crystal_energy.name=Energy Crystal -item.pellet_coolant.name=Coolant Cluster - -item.linker.name=Telelinker -item.oil_detector.name=Oil Reservoir Detector - -item.thermo_element.name=Thermoelectric Element -item.limiter.name=Generator Limiter - -item.multitool_dig.name=Power Fist (Digging Claw) -item.multitool_silk.name=Power Fist (Silk Touch Claw) -item.multitool_ext.name=Power Fist (Ore Extracter) -item.multitool_miner.name=Power Fist (Extracting Mining Laser) -item.multitool_hit.name=Power Fist (Fist) -item.multitool_beam.name=Power Fist (Zapper) -item.multitool_sky.name=Power Fist (Crack the Sky) -item.multitool_mega.name=Power Fist (Super Punch) -item.multitool_joule.name=Power Fist (Giga Joule) -item.multitool_decon.name=Power Fist (Decontaminator) - -item.australium_iii.name=Mark III Life Extender -item.australium_iv.name=Mark IV Life Extender -item.australium_v.name=Mark V Life Extender - -item.weapon_saw.name=Doctor Assisted Homicide -item.weapon_bat.name=Richard's Default -item.weapon_bat_nail.name=The Cliché -item.weapon_golf_club.name=Russian Mobster's Club -item.weapon_pipe_rusty.name=The Attitude Adjuster -item.weapon_pipe_lead.name=The Manual Override -item.reer_graar.name=The Reer Graar - -item.letter.name=Express Mail -item.polaroid.name=The Polaroid -item.book_secret.name=3-596-50802-9 - -item.crystal_horn.name=Crystal Horn -item.crystal_charred.name=Charred Crystal -item.ingot_lanthanium.name=Semi-Stable Lanthanium Ingot -item.ingot_actinium.name=Semi-Stable Actinium Ingot - -tile.dummy_block.name=Dummy Block -tile.dummy_port.name=Dummy Block (Electricity Port) - -item.chopper.name=Hunter Chopper - -item.nothing.name=Nothing - -tile.crystal_virus.name=Dark Crystal -tile.crystal_hardened.name=Hardened Dark Crystal -tile.crystal_pulsar.name=Pulsating Crystal - -tile.cheater_virus.name=Gelid Euphemium -tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block diff --git a/src/main/resources/assets/hbm/lang/te_ST.lang b/src/main/resources/assets/hbm/lang/te_ST.lang deleted file mode 100644 index cc7f1b34b..000000000 --- a/src/main/resources/assets/hbm/lang/te_ST.lang +++ /dev/null @@ -1,1262 +0,0 @@ -itemGroup.tabTest=Nuclear Tech Mod Test Tab -itemGroup.tabParts=NTM Resources and Parts -itemGroup.tabBlocks=NTM Blocks and Machines -itemGroup.tabNuke=NTM Bombs and Gear -itemGroup.tabMachine=NTM Templates - -hbmfluid.none=None -hbmfluid.water=Water -hbmfluid.lava=Lava -hbmfluid.uf6=Uranium Hexafluoride -hbmfluid.puf6=Plutonium Hexafluoride -hbmfluid.deuterium=Deuterium -hbmfluid.tritium=Tritium -hbmfluid.oil=Crude Oil -hbmfluid.smear=Industrial Oil -hbmfluid.reclaimed=Reclaimed Industrial Oil -hbmfluid.petroil=Petroil -hbmfluid.lubricant=Engine Lubricant -hbmfluid.diesel=Diesel -hbmfluid.kerosene=Kerosene -hbmfluid.gas=Natural Gas -hbmfluid.coolant=Coolant -hbmfluid.amat=Antimatter -hbmfluid.aschrab=Antischrabidium - -item.record.lc.desc=Valve - Diabolic Adrenaline Guitar/Lambda Core -item.record.ss.desc=Valve - Sector Sweep -item.record.vc.desc=Valve - Vortal Combat - -death.attack.nuclearBlast=%1$s was blown away by a nuclear explosion. -death.attack.revolverBullet=%1$s was shot in the head by %2$s. -death.attack.mudPoisoning=%1$s died in poisonous mud. -death.attack.euthanized=%1$s was euthanized by %2$s. -death.attack.euthanizedSelf=%1$s euthanized himself, what a dork. -death.attack.euthanizedSelf2=%1$s wins the Darwin Award. -death.attack.tau=%1$s was riddeled by %2$s using negatively charged tauons. -death.attack.tauBlast=%1$s charged the XVL1456 for too long and was blown into pieces. -death.attack.chopperBullet=%1$s was rekt by %2$s. -death.attack.cmb=%1$s was fizzeled by %2$s. -death.attack.subAtomic=%1$s's atoms have been destroyed by %2$s. -death.attack.subAtomic2=%1$s was QPU-misaligned because %2$s tampered with his de facto speed. -death.attack.subAtomic3=%1$s's divergence dropped below 1 percent because of %2$s. -death.attack.subAtomic4=%1$s was divided by zero by %2$s. -death.attack.subAtomic5=%1$s was nullified by %2$s. -death.attack.radiation=%1$s died from radiation poisoning. -death.attack.acid=%1$s fell into acid. -death.attack.suicide=%1$s blew their head off. -death.attack.electrified=%1$s was electrified by %2$s. -death.attack.flamethrower=%1$s was cremated by %2$s. -death.attack.plasma=%1$s was immolated by %2$s. -death.attack.ice=%1$s was turned into a popsicle by %2$s. -death.attack.cheater=%1$s's intestines turned into oats. (???) -death.attack.laser=%1$s was turned into ash by %2$s. -death.attack.rubble=%1$s was squashed by debris. -death.attack.shrapnel=%1$s was ragged by a shrapnel. -death.attack.teleporter=%1$s was teleported into nothingness. -death.attack.blackhole=%1$s was spaghettified. - -item.redstone_sword.name=Redstone Sword -item.big_sword.name=Great Sword -item.test_nuke_igniter.name=Igniter -item.test_nuke_propellant.name=Propellant -item.test_nuke_tier1_shielding.name=Neutron Reflector (Tier 1) -item.test_nuke_tier2_shielding.name=Neutron Reflector (Tier 2) -item.test_nuke_tier1_bullet.name=U235 Projectile (Tier 1) -item.test_nuke_tier2_bullet.name=MOX Projectile (Tier 2) -item.test_nuke_tier1_target.name=Subcritical U235 Target (Tier 1) -item.test_nuke_tier2_target.name=Subcritical MOX Target (Tier 2) - -item.gadget_explosive.name=Propellant -item.gadget_explosive8.name=Bundle of Propellant -item.gadget_wireing.name=Wiring -item.gadget_core.name=Plutonium Core - -item.boy_igniter.name=Bomb Igniter -item.boy_propellant.name=Propellant -item.boy_bullet.name=U235 Projectile -item.boy_target.name=Subcritical U235 Target -item.boy_shielding.name=Neutron Shielding - -item.man_explosive.name=Beans -item.man_explosive8.name=Bundle of Propellant -item.man_igniter.name=Bomb Igniter -item.man_core.name=Plutonium Core - -item.mike_core.name=Uranium Coated Deuterium Tank -item.mike_deut.name=Deuterium Tank -item.mike_cooling_unit.name=Deuterium Cooling Unit - -item.tsar_core.name=Tsar Bomba Core - -item.fleija_igniter.name=Pulse Igniter -item.fleija_propellant.name=Schrabidium Propellant -item.fleija_core.name=F.L.E.I.J.A. Uranium 235 Charge - -container.nukeGadget=The Gadget -container.nukeBoy=Little Boy -container.nukeMan=Fat Man -container.nukeMike=Ivy Mike -container.nukeTsar=Tsar Bomba -container.nukeFleija=F.L.E.I.J.A. -container.nukePrototype=The Prototype -container.nukeCustom=Custom Nuke - -container.bombMulti=Multi Purpose Bomb - -tile.nuke_gadget.name=The Gadget -tile.nuke_boy.name=Little Boy -tile.nuke_man.name=Fat Man -tile.nuke_mike.name=Ivy Mike -tile.nuke_tsar.name=Tsar Bomba -tile.nuke_fleija.name=F.L.E.I.J.A. -tile.nuke_prototype.name=The Prototype -tile.nuke_custom.name=Custom Nuke - -tile.bomb_multi.name=Multi Purpose Bomb - -tile.flame_war.name=Flame War in a Box -tile.float_bomb.name=Levitation Bomb -tile.therm_endo.name=Endothermic Bomb -tile.therm_exo.name=Exothermic Bomb - -tile.crashed_bomb.name=Dud - -tile.crate.name=Supply Crate -tile.marker_structure.name=Multiblock Structure Marker - -tile.machine_difurnace_off.name=Alloy Furnace -tile.machine_difurnace_on.name=Alloy Furnace -container.diFurnace=Alloy Furnace -tile.machine_centrifuge.name=Centrifuge -container.centrifuge=Centrifuge -tile.machine_uf6_tank.name=Uranium Hexafluoride Tank -container.uf6_tank=UF6 Tank -tile.machine_puf6_tank.name=Plutonium Hexafluoride Tank -container.puf6_tank=PuF6 Tank -tile.machine_reactor.name=Breeding Reactor -container.reactor=Breeding Reactor -tile.machine_nuke_furnace_off.name=Nuclear Powered Furnace -tile.machine_nuke_furnace_on.name=Nuclear Powered Furnace -container.nukeFurnace=Nuclear Powered Furnace -tile.machine_rtg_furnace_off.name=RTG Furnace -tile.machine_rtg_furnace_on.name=RTG Furnace -container.rtgFurnace=RTG Furnace -tile.machine_electric_furnace_off.name=Electric Furnace -tile.machine_electric_furnace_on.name=Electric Furnace -container.electricFurnace=Electric Furnace -tile.machine_generator.name=Nuclear Reactor -container.generator=Nuclear Reactor -tile.red_wire_coated.name=Coated Red Copper Cable -tile.machine_deuterium.name=Deuterium Extractor -container.machine_deuterium=Deuterium Extractor -tile.machine_battery.name=Energy Storage Block -container.battery=Energy Storage -tile.machine_coal_off.name=Coal Generator -tile.machine_coal_on.name=Coal Generator -container.machineCoal=Coal Generator -tile.launch_pad.name=Missile Launch Pad -container.launchPad=Missile Launch Pad -tile.book_guide.name=Hbm's Nuclear Tech Mod Manual -tile.machine_schrabidium_transmutator.name=Schrabidium Transmutation Device -container.machine_schrabidium_transmutator=Schrabidium Transmutation Device -tile.machine_diesel.name=Diesel Generator -container.machineDiesel=Diesel Generator -tile.machine_shredder.name=Shredder -container.machineShredder=Shredder -tile.machine_combine_factory.name=CMB Steel Furnace -container.machineCMB=CMB Steel Furnace -tile.machine_teleporter.name=Teleporter -container.teleporter=Teleporter -tile.machine_reix_mainframe.name=Rei-X Mainframe (WIP) -container.reix=Rei-X Mainframe -tile.machine_industrial_generator.name=Industrial Generator -container.iGenerator=Industrial Generator -tile.machine_cyclotron.name=Cyclotron -container.cyclotron=Cyclotron -tile.machine_well.name=Oil Derrick -tile.oil_pipe.name=Crude Oil Extraction Pipe -container.oilWell=Oil Derrick -tile.machine_refinery.name=Oil Refinery -container.machineRefinery=Oil Refinery -tile.oil_duct.name=Oil Pipe -tile.oil_duct_solid.name=Coated Oil Pipe -tile.machine_flare.name=Gas Flare -container.gasFlare=Gas Flare -tile.gas_duct.name=Gas Pipe -tile.gas_duct_solid.name=Coated Gas Pipe -tile.machine_drill.name=Automatic Mining Drill -container.miningDrill=Automatic Mining Drill -tile.machine_assembler.name=Assembly Machine -container.assembler=Assembly Machine -tile.machine_chemplant.name=Chemical Plant -container.chemplant=Chemical Plant - -tile.red_pylon.name=Electricity Pole -item.wiring_red_copper.name=Cable Drum - -tile.rail_highspeed.name=High Speed Rail -tile.rail_booster.name=High Speed Booster Rail - -tile.factory_titanium_hull.name=Basic Factory Casing -tile.factory_titanium_furnace.name=Basic Factory Access Hatch -tile.factory_titanium_conductor.name=Basic Factory Electricity Port -tile.factory_titanium_core.name=Basic Factory Core Component -item.factory_core_titanium.name=Basic Factory Energy Cluster -container.factoryTitanium=Basic Factory -tile.factory_advanced_hull.name=Advanced Factory Casing -tile.factory_advanced_furnace.name=Advanced Factory Access Hatch -tile.factory_advanced_conductor.name=Advanced Factory Electricity Port -tile.factory_advanced_core.name=Advanced Factory Core Component -item.factory_core_advanced.name=Advanced Factory Energy Cluster -container.factoryAdvanced=Advanced Factory - -tile.reactor_element.name=Reactor Chamber -tile.reactor_control.name=Control Rods -tile.reactor_hatch.name=Reactor Access Hatch -tile.reactor_conductor.name=Reactor Electricity Port -tile.reactor_computer.name=Reactor Control -container.reactorMultiblock=Big Nuclear Reactor - -tile.fusion_conductor.name=Superconducting Magnet -tile.fusion_center.name=Central Magnet Piece -tile.fusion_motor.name=Magnet Motor Piece -tile.fusion_heater.name=Plasma Heater -tile.fusion_hatch.name=Fusion Reactor Access Hatch -tile.fusion_core.name=Fusion Reactor Control -tile.plasma.name=Plasma -container.fusionMultiblock=Big Fusion Reactor - -tile.watz_element.name=Watz Reaction Chamber -tile.watz_control.name=Reinforced Control Rods -tile.watz_cooler.name=Watz Reactor Supercooler -tile.watz_end.name=Watz Reactor Stability Element -tile.watz_hatch.name=Watz Reactor Access Hatch -tile.watz_conductor.name=Watz Electricity Port -tile.watz_core.name=Watz Reactor Control -container.watzPowerplant=Watz Power Plant - -tile.fwatz_conductor.name=4000K Superconducting Magnet -tile.fwatz_cooler.name=Regenerative Coolant Fluid Tank Shell -tile.fwatz_tank.name=Regenerative Coolant Fluid Tank -tile.fwatz_scaffold.name=Fusionary Watz Plant Structural Support -tile.fwatz_hatch.name=Fusionary Watz Plant Access Hatch -tile.fwatz_computer.name=Fusionary Watz Reactor Calculation Matrix -tile.fwatz_core.name=Fusionary Watz Reactor Control -tile.fwatz_plasma.name=Destabilized Antischrabidium Plasma -container.fusionaryWatzPlant=Fusionary Watz Plant - -tile.machine_rtg_grey.name=RT Generator -container.rtg=RT Generator -tile.machine_rtg_red.name=Fulmination Generator -tile.machine_rtg_orange.name=Strong RT Generator -tile.machine_rtg_yellow.name=Australium Superfuel Reactor -tile.machine_rtg_green.name=Verticium Wealth Generator -tile.machine_rtg_cyan.name=Schrabidium Decay Generator (WIP) -tile.machine_rtg_blue.name=Convection Generator -tile.machine_rtg_purple.name=Antimatter Annihilation Generator - -item.assembly_template.TEST.name=Assembly Template: Test -item.assembly_template.MIXED_PLATE.name=Assembly Template: Mixed Plate -item.assembly_template.HAZMAT_CLOTH.name=Assembly Template: Hazmat Cloth -item.assembly_template.ASBESTOS_CLOTH.name=Assembly Template: Fire Proximity Cloth -item.assembly_template.COAL_FILTER.name=Assembly Template: Activated Carbon Filter -item.assembly_template.CENTRIFUGE_ELEMENT.name=Assembly Template: Centrifuge Element -item.assembly_template.CENTRIFUGE_TOWER.name=Assembly Template: Centrifuge Tower -item.assembly_template.DEE_MAGNET.name=Assembly Template: Dee Magnets -item.assembly_template.FLAT_MAGNET.name=Assembly Template: Flat Magnet -item.assembly_template.CYCLOTRON_TOWER.name=Assembly Template: Cyclotron Tower -item.assembly_template.REACTOR_CORE.name=Assembly Template: Breeding Reactor Core -item.assembly_template.RTG_UNIT.name=Assembly Template: RTG Unit -item.assembly_template.HEAT_UNIT.name=Assembly Template: Thermal Distribution Unit -item.assembly_template.GRAVITY_UNIT.name=Assembly Template: Gravity Manipulator -item.assembly_template.TITANIUM_DRILL.name=Assembly Template: Titanium Drill -item.assembly_template.TELEPAD.name=Assembly Template: Telepad -item.assembly_template.TELEKIT.name=Assembly Template: Entanglement Kit -item.assembly_template.GEASS_REACTOR.name=Assembly Template: Dysfunctional Nuclear Reactor -item.assembly_template.GENERATOR_FRONT.name=Assembly Template: Generator Front -item.assembly_template.WT1_GENERIC.name=Assembly Template: Small Warhead -item.assembly_template.WT2_GENERIC.name=Assembly Template: Medium Warhead -item.assembly_template.WT3_GENERIC.name=Assembly Template: Large Warhead -item.assembly_template.WT1_FIRE.name=Assembly Template: Small Incendiary Warhead -item.assembly_template.WT2_FIRE.name=Assembly Template: Medium Incendiary Warhead -item.assembly_template.WT3_FIRE.name=Assembly Template: Large Incendiary Warhead -item.assembly_template.WT1_CLUSTER.name=Assembly Template: Small Cluster Warhead -item.assembly_template.WT2_CLUSTER.name=Assembly Template: Medium Cluster Warhead -item.assembly_template.WT3_CLUSTER.name=Assembly Template: Large Cluster Warhead -item.assembly_template.WT1_BUSTER.name=Assembly Template: Small Bunker Buster Warhead -item.assembly_template.WT2_BUSTER.name=Assembly Template: Medium Bunker Buster Warhead -item.assembly_template.WT3_BUSTER.name=Assembly Template: Large Bunker Buster Warhead -item.assembly_template.W_NUCLEAR.name=Assembly Template: Nuclear Warhead -item.assembly_template.W_MIRVLET.name=Assembly Template: MIRV -item.assembly_template.W_MIRV.name=Assembly Template: Eightfold MIRV Warhead -item.assembly_template.W_ENDOTHERMIC.name=Assembly Template: Endothermic Warhead -item.assembly_template.W_EXOTHERMIC.name=Assembly Template: Exothermic Warhead -item.assembly_template.T1_TANK.name=Assembly Template: Small Fuel Tank -item.assembly_template.T2_TANK.name=Assembly Template: Medium Fuel Tank -item.assembly_template.T3_TANK.name=Assembly Template: Large Fuel Tank -item.assembly_template.T1_THRUSTER.name=Assembly Template: Small Thruster -item.assembly_template.T2_THRUSTER.name=Assembly Template: Medium Thruster -item.assembly_template.T3_THRUSTER.name=Assembly Template: Large Thruster -item.assembly_template.CHOPPER_HEAD.name=Assembly Template: Hunter Chopper Cockpit -item.assembly_template.CHOPPER_GUN.name=Assembly Template: Emplacement Gun -item.assembly_template.CHOPPER_BODY.name=Assembly Template: Hunter Chopper Body -item.assembly_template.CHOPPER_TAIL.name=Assembly Template: Hunter Chopper Tail -item.assembly_template.CHOPPER_WING.name=Assembly Template: Hunter Chopper Wing -item.assembly_template.CHOPPER_BLADES.name=Assembly Template: Hunter Chopper Rotor Blades -item.assembly_template.CIRCUIT_2.name=Assembly Template: Enhanced Circuit -item.assembly_template.CIRCUIT_3.name=Assembly Template: Advanced Circuit -item.assembly_template.RTG_PELLET.name=Assembly Template: Plutonium 238 Fuel Pellet -item.assembly_template.WEAK_PELLET.name=Assembly Template: Weak Uranium RTG Pellet -item.assembly_template.FUSION_PELLET.name=Assembly Template: Tritium-Deuterium-Cake -item.assembly_template.CLUSTER_PELLETS.name=Assembly Template: Explosive Pellets -item.assembly_template.GUN_PELLETS.name=Assembly Template: Lead Pellets - -item.fuse.name=Fuse - -tile.test_nuke.name=Test Nuke - -item.ingot_uranium.name=Uranium Ingot -item.ingot_u235.name=U235 Ingot -item.ingot_u238.name=U238 Ingot -item.ingot_plutonium.name=Plutonium Ingot -item.ingot_pu238.name=Pu238 Ingot -item.ingot_pu239.name=Pu239 Ingot -item.ingot_pu240.name=Pu240 Ingot -item.ingot_titanium.name=Titanium Ingot -item.sulfur.name=Sulfur - -item.niter.name=Niter -item.ingot_copper.name=Industrial Grade Copper -item.ingot_red_copper.name=Minecraft Grade Copper -item.ingot_tungsten.name=Tungsten Ingot -item.ingot_aluminium.name=Aluminium Ingot -item.fluorite.name=Fluorite -item.ingot_steel.name=Steel Ingot -item.plate_steel.name=Steel Plate -item.ingot_beryllium.name=Beryllium Ingot -item.plate_schrabidium.name=Schrabidium Plate -item.ingot_schrabidium.name=Schrabidium Ingot -item.nugget_schrabidium.name=Schrabidium Nugget -item.plate_copper.name=Copper Plate -item.board_copper.name=Copper Panel -item.ingot_advanced_alloy.name=Advanced Alloy Ingot -item.plate_advanced_alloy.name=Advanced Alloy Plate -item.wire_advanced_alloy.name=Super Conductor -item.coil_advanced_alloy.name=Super Conducting Coil -item.coil_advanced_torus.name=Super Conducting Ring Coil -item.coil_gold.name=Gold Coil -item.coil_gold_torus.name=Golden Ring Coil -item.lithium.name=Lithium Cube -item.ingot_magnetized_tungsten.name=Magnetized Tungsten Ingot -item.ingot_combine_steel.name=CMB Steel Ingot -item.plate_combine_steel.name=CMB Steel Plate -item.wire_magnetized_tungsten.name=4000K High Temperature Super Conductor -item.coil_magnetized_tungsten.name=4000K High Temperature Super Conducting Coil -item.plate_mixed.name=Mixed Plate -item.plate_paa.name=PaA Alloy Plate -item.ingot_dura_steel.name=High-Speed Steel Ingot -item.ingot_polymer.name=Polymer Ingot -item.bolt_dura_steel.name=High-Speed Steel Bolt -item.pipes_steel.name=Steel Pipes -item.drill_titanium.name=Titanium Drill - -item.ingot_australium.name=Australium Ingot -item.ingot_weidanium.name=Weidanium Ingot -item.ingot_reiium.name=Reiium Ingot -item.ingot_unobtainium.name=Unobtainium Ingot -item.ingot_daffergon.name=Daffergon Ingot -item.ingot_verticium.name=Verticium Ingot -item.nugget_australium.name=Australium Nugget -item.nugget_weidanium.name=Weidanium Nugget -item.nugget_reiium.name=Reiium Nugget -item.nugget_unobtainium.name=Unobtainium Nugget -item.nugget_daffergon.name=Daffergon Nugget -item.nugget_verticium.name=Verticium Nugget - -item.ingot_desh.name=Desh Ingot -item.nugget_desh.name=Desh Nugget -item.powder_desh.name=Desh Powder - -item.nugget_u235.name=U235 Nugget -item.nugget_u238.name=U238 Nugget -item.nugget_pu238.name=Pu238 Nugget -item.nugget_pu239.name=Pu239 Nugget -item.nugget_pu240.name=Pu240 Nugget -item.plate_titanium.name=Titanium Plate -item.plate_aluminium.name=Aluminium Plate -item.wire_red_copper.name=Red Copper Wire -item.neutron_reflector.name=Neutron Reflector -item.nugget_beryllium.name=Beryllium Nugget - -item.wire_aluminium.name=Aluminium Wire -item.wire_copper.name=Copper Wire -item.wire_gold.name=Gold Wire -item.wire_schrabidium.name=Schrabidium Wire - -item.circuit_aluminium.name=Basic Circuit -item.circuit_copper.name=Enhanced Circuit -item.circuit_red_copper.name=Advanved Circuit -item.circuit_gold.name=Overclocked Circuit -item.circuit_schrabidium.name=High Performance Circuit - -tile.block_aluminium.name=Block of Aluminium -tile.block_copper.name=Block of Copper -tile.block_fluorite.name=Block of Fluorite -tile.block_niter.name=Block of Niter -tile.block_red_copper.name=Block of Red Copper -tile.block_steel.name=Block of Steel -tile.block_sulfur.name=Block of Sulfur -tile.block_titanium.name=Block of Titanium -tile.block_tungsten.name=Block of Tungsten -tile.block_uranium.name=Block of Uranium -tile.block_trinitite.name=Block of Trinitite -tile.block_beryllium.name=Block of Beryllium -tile.block_waste.name=Block of Nuclear Waste -tile.block_scrap.name=Block of Scrap -tile.block_electrical_scrap.name=Block of Electrical Scrap -tile.block_advanced_alloy.name=Block of Advanced Alloy -tile.block_magnetized_tungsten.name=Block of Magnetized Tungsten -tile.block_combine_steel.name=Block of CMB Steel -tile.block_australium.name=Block of Australium -tile.block_weidanium.name=Block of Weidanium -tile.block_reiium.name=Block of Reiium -tile.block_unobtainium.name=Block of Unobtainium -tile.block_daffergon.name=Block of Daffergon -tile.block_verticium.name=Block of Verticium -tile.block_desh.name=Reinfoced Block of Desh - -tile.ore_aluminium.name=Aluminium Ore -tile.ore_copper.name=Copper Ore -tile.ore_fluorite.name=Fluorite Ore -tile.ore_niter.name=Niter Ore -tile.ore_sulfur.name=Sulfur Ore -tile.ore_titanium.name=Titanium Ore -tile.ore_tungsten.name=Tungsten Ore -tile.ore_uranium.name=Uranium Ore -tile.ore_schrabidium.name=Schrabidium Ore -tile.ore_beryllium.name=Beryllium Ore - -tile.ore_nether_uranium.name=Nether Uranium Ore -tile.ore_nether_plutonium.name=Nether Plutonium Ore -tile.ore_nether_tungsten.name=Nether Tungsten Ore -tile.ore_nether_sulfur.name=Nether Sulfur Ore -tile.ore_nether_fire.name=Fire Ore -tile.ore_nether_schrabidium.name=Nether Schrabidium Ore - -tile.ore_australium.name=Australian Ore -tile.ore_weidanium.name=Weidite -tile.ore_reiium.name=Reiite -tile.ore_unobtainium.name=Brightblende Ore -tile.ore_daffergon.name=Dellite -tile.ore_verticium.name=Dollar Green Mineral - -tile.ore_oil.name=Oil Deposit -tile.ore_oil_empty.name=Empty Oil Deposit - -tile.reinforced_brick.name=Reinforced Stone -tile.reinforced_glass.name=Reinforced Glass -tile.reinforced_sand.name=Reinforced Sandstone -tile.reinforced_light.name=Reinforced Glowstone -tile.reinforced_lamp_off.name=Reinforced Lamp -tile.reinforced_lamp_on.name=Reinforced Lamp - -tile.brick_concrete.name=Concrete Bricks -tile.brick_obsidian.name=Obsidian Bricks -tile.brick_light.name=Light Bricks -tile.asphalt.name=Asphalt - -tile.cmb_brick.name=CMB Steel Tile -tile.cmb_brick_reinforced.name=Reinforced CMB Bricks - -tile.gravel_obsidian.name=Crushed Obsidian - -tile.seal_frame.name=Silo Hatch Frame -tile.seal_controller.name=Silo Hatch Opener -tile.seal_hatch.name=Silo Hatch - -item.nugget_uranium.name=Uranium Nugget -item.nugget_plutonium.name=Plutonium Nugget -item.nugget_neptunium.name=Neptunium Nugget -item.ingot_neptunium.name=Neptunium Ingot -item.nugget_lead.name=Lead Nugget -item.ingot_lead.name=Lead Ingot -tile.block_lead.name=Block of Lead -tile.ore_lead.name=Lead Ore - -item.powder_lead.name=Lead Powder -item.powder_neptunium.name=Neptunium Powder -item.powder_schrabidium.name=Schrabidium Powder -item.powder_iron.name=Iron Powder -item.powder_gold.name=Gold Powder -item.powder_aluminium.name=Aluminium Powder -item.powder_beryllium.name=Beryllium Powder -item.powder_copper.name=Copper Powder -item.powder_titanium.name=Titanium Powder -item.powder_tungsten.name=Tungsten Powder -item.powder_uranium.name=Uranium Powder -item.powder_plutonium.name=Plutonium Powder -item.dust.name=Dust -item.powder_coal.name=Coal Powder -item.powder_lapis.name=Lapis Lazuli Powder -item.powder_emerald.name=Emerald Powder -item.powder_diamond.name=Diamond Powder -item.powder_red_copper.name=Red Copper Powder -item.powder_steel.name=Steel Powder -item.powder_magnetized_tungsten.name=Magnetized Tungsten Powder -item.powder_combine_steel.name=CMB Steel Powder -item.powder_lithium.name=Lithium Powder -item.powder_advanced_alloy.name=Advanced Alloy Powder -item.powder_quartz.name=Quartz Powder -item.powder_power.name=Energy Powder -item.powder_iodine.name=Iodine Powder -item.powder_thorium.name=Thorium Powder -item.powder_neodymium.name=Neodymium Powder -item.powder_astatine.name=Astatine Powder -item.powder_caesium.name=Caesium Powder -item.powder_australium.name=Australium Powder -item.powder_weidanium.name=Weidanium Powder -item.powder_reiium.name=Reiium Powder -item.powder_unobtainium.name=Unobtainium Powder -item.powder_daffergon.name=Daffergon Powder -item.powder_verticium.name=Verticium Powder -item.powder_strontium.name=Strontium Powder -item.powder_cobalt.name=Cobalt Powder -item.powder_bromine.name=Bromine Powder -item.powder_niobium.name=Niobium Powder -item.powder_tennessine.name=Tennessine Powder -item.powder_cerium.name=Cerium Powder -item.powder_dura_steel.name=High-Speed Steel Powder -item.powder_polymer.name=Polymer Powder -item.powder_lanthanium.name=Lanthanium Powder -item.powder_actinium.name=Actinium Powder -item.powder_lithium_tiny.name=Tiny Pile of Lithium Powder -item.powder_cobalt_tiny.name=Tiny Pile of Cobalt Powder - -item.battery_generic.name=Battery -item.battery_advanced.name=Advanced Battery -item.battery_lithium.name=Lithium-Ion Battery -item.battery_schrabidium.name=Schrabidium Battery -item.battery_creative.name=Infinite Battery - -item.battery_red_cell.name=Redstone Power Cell -item.battery_advanced_cell.name=Advanced Power Cell -item.battery_lithium_cell.name=Lithium-Ion Power Cell -item.battery_schrabidium_cell.name=Schrabidium Power Cell -item.battery_red_cell_6.name=Sixfold Redstone Power Cell -item.battery_advanced_cell_4.name=Quadruple Advanced Power Cell -item.battery_lithium_cell_3.name=Tripple Lithium-Ion Power Cell -item.battery_schrabidium_cell_2.name=Double Schrabidium Power Cell -item.battery_red_cell_24.name=24-Fold Redstone Power Cell -item.battery_advanced_cell_12.name=Twelvefold Advanced Power Cell -item.battery_lithium_cell_6.name=Sixfold Lithium-Ion Power Cell -item.battery_schrabidium_cell_4.name=Quadruple Schrabidium Power Cell - -item.upgrade_template.name=Machine Upgrade Piece Template -item.upgrade_speed_1.name=Red Machine Upgrade Mk.I -item.upgrade_speed_2.name=Red Machine Upgrade Mk.II -item.upgrade_speed_3.name=Red Machine Upgrade Mk.III -item.upgrade_effect_1.name=Green Machine Upgrade Mk.I -item.upgrade_effect_2.name=Green Machine Upgrade Mk.II -item.upgrade_effect_3.name=Green Machine Upgrade Mk.III -item.upgrade_power_1.name=Blue Machine Upgrade Mk.I -item.upgrade_power_2.name=Blue Machine Upgrade Mk.II -item.upgrade_power_3.name=Blue Machine Upgrade Mk.III -item.upgrade_fortune_1.name=Purple Machine Upgrade Mk.I -item.upgrade_fortune_2.name=Purple Machine Upgrade Mk.II -item.upgrade_fortune_3.name=Purple Machine Upgrade Mk.III - -item.fusion_core.name=Fusion Core -item.energy_core.name=Makeshift Energy Core - -item.plate_iron.name=Iron Plate -item.plate_lead.name=Lead Plate -item.coil_copper.name=Copper Coil -item.coil_copper_torus.name=Ring Coil -item.wire_tungsten.name=Tungsten Wire -item.coil_tungsten.name=Heating Coil -item.tank_steel.name=Steel Tank -item.motor.name=Motor -item.centrifuge_element.name=Centrifuge Element -item.centrifuge_tower.name=Centrifuge Tower -item.reactor_core.name=Breeding Reactor Core -item.pellet_rtg.name=Plutonium 238 Fuel Pellet -item.pellet_rtg_weak.name=Weak Uranium RTG Pellet -item.rtg_unit.name=RTG Unit -item.hazmat_cloth.name=Hazmat Cloth -item.asbestos_cloth.name=Fire Proximity Cloth -item.filter_coal.name=Activated Carbon Filter -item.tritium_deuterium_cake.name=Tritium-Deuterium-Cake -item.telepad.name=Telepad -item.entanglement_kit.name=Entanglement Kit -item.toothpicks.name=Toothpicks -item.ducttape.name=Duct Tape -item.magnet_dee.name=Dee Magnets -item.magnet_circular.name=Flat Magnet -item.cyclotron_tower.name=Cyclotron Tower -item.plate_dalekanium.name=Angry Metal - -item.cell_empty.name=Empty Cell -item.cell_uf6.name=Uranium Hexafluorite Cell -item.cell_puf6.name=Plutonium Hexafluorite Cell -item.cell_antimatter.name=Antimatter Cell -item.cell_deuterium.name=Deuterium Cell -item.cell_tritium.name=Tritium Cell -item.cell_sas3.name=Schrabidium Trisulfide Cell -item.cell_anti_schrabidium.name=Antischrabidium Cell -item.singularity.name=Singularity -item.singularity_counter_resonant.name=Contained Counter-Resonant Singularity -item.singularity_super_heated.name=Superheated Resonating Singularity -item.black_hole.name=Miniature Black Hole -item.crystal_xen.name=Artificial Xen Crystal - -item.inf_water.name=Infinite Water Tank -item.inf_deuterium.name=Infinite Deuterium Tank -item.inf_tritium.name=Infinite Tritium Tank -item.inf_coolant.name=Infinite Coolant Tank -item.inf_sulfur.name=Infinite Sulfur Tank -item.inf_diesel.name=Infinite Diesel Tank -item.inf_antimatter.name=Infinite Antimatter Tank -item.inf_antischrabidium.name=Infinite Antischrabidium Tank - -item.oil_canola.name=Raw Canola Oil - -item.canister_empty.name=Empty Canister -item.canister_smear.name=Industrial Oil Canister -item.canister_canola.name=Engine Lubricant -item.canister_oil.name=Crude Oil Canister -item.canister_fuel.name=Fuel Canister -item.canister_kerosene.name=Kerosene Canister -item.canister_reoil.name=Canister of Reclaimed Industrial Oil -item.canister_petroil.name=Petroil Canister -item.canister_napalm.name=Napalm B -item.canister_NITAN.name=NITAN© 100 Octane Super Fuel -item.gas_empty.name=Empty Gas Tank -item.gas_full.name=Gas Tank - -item.rod_empty.name=Emty Rod -item.rod_uranium.name=Uranium Rod -item.rod_u235.name=U235 Rod -item.rod_u238.name=U238 Rod -item.rod_plutonium.name=Plutonium Rod -item.rod_pu238.name=Pu238 Rod -item.rod_pu239.name=Pu239 Rod -item.rod_pu240.name=Pu240 Rod -item.rod_neptunium.name=Neptunium Rod -item.rod_lead.name=Lead Rod -item.rod_schrabidium.name=Schrabidium Rod -item.rod_astatine.name=Euphemium Rod -item.rod_australium.name=Australium Rod -item.rod_weidanium.name=Weidanium Rod -item.rod_reiium.name=Reiium Rod -item.rod_unobtainium.name=Unobtainium Rod -item.rod_daffergon.name=Daffergon Rod -item.rod_verticium.name=Verticium Rod - -item.rod_dual_empty.name=Emty Dual Rod -item.rod_dual_uranium.name=Uranium Dual Fl Rod -item.rod_dual_u235.name=U235 Dual Rod -item.rod_dual_u238.name=U238 Dual Rod -item.rod_dual_plutonium.name=Plutonium Dual Rod -item.rod_dual_pu238.name=Pu238 Dual Rod -item.rod_dual_pu239.name=Pu239 Dual Rod -item.rod_dual_pu240.name=Pu240 Dual Rod -item.rod_dual_neptunium.name=Neptunium Dual Rod -item.rod_dual_lead.name=Lead Dual Rod -item.rod_dual_schrabidium.name=Schrabidium Dual Rod - -item.rod_quad_empty.name=Emty Quad Rod -item.rod_quad_uranium.name=Uranium Quad Rod -item.rod_quad_u235.name=U235 Quad Rod -item.rod_quad_u238.name=U238 Quad Rod -item.rod_quad_plutonium.name=Plutonium Quad Rod -item.rod_quad_pu238.name=Pu238 Quad Rod -item.rod_quad_pu239.name=Pu239 Quad Rod -item.rod_quad_pu240.name=Pu240 Quad Rod -item.rod_quad_neptunium.name=Neptunium Quad Rod -item.rod_quad_lead.name=Lead Quad Rod -item.rod_quad_schrabidium.name=Schrabidium Quad Rod - -item.rod_uranium_fuel_depleted.name=Depleted Uranium Fuel Rod -item.rod_dual_uranium_fuel_depleted.name=Depleted Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel_depleted.name=Depleted Uranium Quad Fuel Rod -item.rod_plutonium_fuel_depleted.name=Depleted Plutonium Fuel Rod -item.rod_dual_plutonium_fuel_depleted.name=Depleted Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel_depleted.name=Depleted Plutonium Quad Fuel Rod -item.rod_mox_fuel_depleted.name=Depleted MOX Fuel Rod -item.rod_dual_mox_fuel_depleted.name=Depleted MOX Dual Fuel Rod -item.rod_quad_mox_fuel_depleted.name=Depleted MOX Quad Fuel Rod -item.rod_schrabidium_fuel_depleted.name=Depleted Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel_depleted.name=Depleted Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel_depleted.name=Depleted Schrabidium Quad Fuel Rod - -item.rod_waste.name=Nuclear Waste Rod -item.rod_dual_waste.name=Nuclear Waste Dual Rod -item.rod_quad_waste.name=Nuclear Waste Quad Rod - -item.gun_rpg.name=Rocket Launcher -item.gun_rpg_ammo.name=Rocket - -item.flame_pony.name=Painting of a Cartoon Pony -item.flame_conspiracy.name=Conspiracy Theory -item.flame_politics.name=Political Topic -item.flame_opinion.name=Own Opinion - -item.pellet_cluster.name=Explosive Pellets -item.pellet_buckshot.name=Lead Pellets -item.powder_fire.name=Flame Powder -item.powder_ice.name=Cryo Powder -item.powder_poison.name=Poison Powder -item.pellet_gas.name=Poison Gas Cartridge -item.magnetron.name=Magnetron -item.powder_thermite.name=Thermite - -item.nuke_starter_kit.name=Atomic Science Starter Kit -item.nuke_commercially_kit.name=Atomic Science Kit for Commercial Uses -item.nuke_advanced_kit.name=Atomic Science Advanced Kit -item.gadget_kit.name=The Gadget Kit -item.boy_kit.name=Little Boy Kit -item.man_kit.name=Fat Man Kit -item.mike_kit.name=Ivy Mike Kit -item.tsar_kit.name=Tsar Bomba Kit -item.fleija_kit.name=F.L.E.I.J.A. Kit -item.multi_kit.name=Multi Purpose Bomb Kit -item.grenade_kit.name=Grenade Kit -item.nuke_electric_kit.name=Electronic Engineer's Kit -item.prototype_kit.name=Prototype Kit -item.missile_kit.name=Missile Kit -item.t45_kit.name=T45 Power Armor Kit -item.euphemium_kit.name=Euphemium Kit - -tile.waste_earth.name=Dead Grass -tile.waste_trinitite.name=Trinitite Ore -tile.waste_trinitite_red.name=Red Trinitite Ore -tile.waste_log.name=Charred Log -tile.waste_planks.name=Charred Wooden Planks - -item.trinitite.name=Trinitite -item.nuclear_waste.name=Nuclear Waste -item.scrap.name=Scrap - -item.ingot_uranium_fuel.name=Ingot of Uranium Fuel -item.ingot_plutonium_fuel.name=Ingot of Plutonium Fuel -item.ingot_mox_fuel.name=Ingot of MOX Fuel -item.ingot_schrabidium_fuel.name=Ingot of Schrabidium Fuel - -item.nugget_uranium_fuel.name=Nugget of Uranium Fuel -item.nugget_plutonium_fuel.name=Nugget of Plutonium Fuel -item.nugget_mox_fuel.name=Nugget of MOX Fuel -item.nugget_schrabidium_fuel.name=Nugget of Schrabidium Fuel - -item.grenade_generic.name=Grenade -item.grenade_strong.name=Enhanced Grenade -item.grenade_frag.name=Frag Grenade -item.grenade_fire.name=Flame Frag Grenade -item.grenade_shrapnel.name=Shrapnel Grenade -item.grenade_cluster.name=Cluster Bomb -item.grenade_flare.name=Flare Grenade -item.grenade_electric.name=Lightning Bomb -item.grenade_poison.name=Poison Grenade -item.grenade_gas.name=Gas Grenade -item.grenade_pulse.name=Impulse Grenade -item.grenade_plasma.name=Plasma Grenade -item.grenade_tau.name=Tau Grenade -item.grenade_schrabidium.name=Schrabidium Grenade -item.grenade_lemon.name=Combustible Lemon -item.grenade_mk2.name=Mk 2 Grenade "Ambassador Pineapple" -item.grenade_aschrab.name=Tossable Antischrabidium Cell -item.grenade_nuke.name=Mark VI Drill Grenade -item.grenade_nuclear.name=Nuka Grenade -item.grenade_zomg.name=Negative Energy Pair Annihilation Grenade -item.grenade_black_hole.name=Black Hole Grenade -item.ullapool_caber.name=Ullapool Caber - -item.rod_uranium_fuel.name=Uranium Fuel Rod -item.rod_dual_uranium_fuel.name=Uranium Dual Fuel Rod -item.rod_quad_uranium_fuel.name=Uranium Quad Fuel Rod -item.rod_plutonium_fuel.name=Plutonium Fuel Rod -item.rod_dual_plutonium_fuel.name=Plutonium Dual Fuel Rod -item.rod_quad_plutonium_fuel.name=Plutonium Quad Fuel Rod -item.rod_mox_fuel.name=MOX Fuel Rod -item.rod_dual_mox_fuel.name=MOX Dual Fuel Rod -item.rod_quad_mox_fuel.name=MOX Quad Fuel Rod -item.rod_schrabidium_fuel.name=Schrabidium Fuel Rod -item.rod_dual_schrabidium_fuel.name=Schrabidium Dual Fuel Rod -item.rod_quad_schrabidium_fuel.name=Schrabidium Quad Fuel Rod - -item.rod_water.name=Water Cell -item.rod_dual_water.name=Dual Water Cell -item.rod_quad_water.name=Quad Water Cell - -item.rod_coolant.name=Coolant Cell -item.rod_dual_coolant.name=Dual Coolant Cell -item.rod_quad_coolant.name=Quad Coolant Cell - -item.rod_lithium.name=Lithium Rod -item.rod_dual_lithium.name=Dual Lithium Rod -item.rod_quad_lithium.name=Quad Lithium Rod - -item.rod_tritium.name=Tritium Cell -item.rod_dual_tritium.name=Dual Tritium Cell -item.rod_quad_tritium.name=Quad Tritium Cell - -item.levitation_unit.name=Gravity Manipulator -item.thermo_unit_empty.name=Thermic Distribution Unit -item.thermo_unit_endo.name=Coldness Distribution Unit -item.thermo_unit_exo.name=Heat Distribution Unit - -item.bomb_waffle.name=Waffle of Mass Destruction -item.schnitzel_vegan.name=Vegan Schnitzel -item.apple_schrabidium.name=Schrabidium Apple -item.cotton_candy.name=Radioactive Cotton Candy -item.tem_flakes.name=Tem Flakes -item.glowing_stew.name=Glowing Mushroom Stew -item.lemon.name="Lemon" - -tile.frozen_grass.name=Frozen Grass -tile.frozen_dirt.name=Frozen Dirt -tile.frozen_log.name=Frozen Log -tile.frozen_planks.name=Frozen Planks - -tile.tape_recorder.name=Tape Recorder -tile.steel_poles.name=Steel Pole -tile.pole_top.name=Antenna Top -tile.pole_satellite_receiver.name=Satellite Receiver -tile.steel_wall.name=Steel Wall -tile.steel_corner.name=Steel Wall Corner -tile.steel_roof.name=Flat Steel Roof -tile.steel_beam.name=Steel Beam -tile.steel_scaffold.name=Steel Scaffold - -item.gun_revolver_iron.name=Simple Revolver -item.gun_revolver.name=Enhanced Revolver -item.gun_revolver_gold.name=Golden Revolver -item.gun_revolver_lead.name=Nuka Revolver -item.gun_revolver_schrabidium.name=Schrabidium Revolver -item.gun_revolver_cursed.name=Cursed Revolver -item.gun_revolver_nightmare.name=Nightmare Revolver (Original) -item.gun_revolver_nightmare2.name=Nightmare Revolver (Dark) -item.gun_fatman.name=M42 Nuclear Catapult "Fat Man" -item.gun_mirv.name=M42 Nuclear Catapult "Experimental MIRV" -item.gun_bf.name=M42_2 Nuclear Catapult "Antimatter Launcher" -item.gun_mp40.name=Submachine Gun -item.gun_uboinik.name=Uboinik -item.gun_xvl1456.name=XVL1456 Tau Cannon Prototype -item.gun_osipr.name=Overwatch Standard Issue Pulse Rifle -item.gun_immolator.name=The Immolator -item.gun_cryolator.name=The Cryolator -item.gun_mp.name=Pacifist's Machine Gun -item.gun_zomg.name=Singularity Powered Annihilation Ray "ZOMG Cannon" -item.gun_emp.name=EMP Ray -item.gun_super_shotgun.name=Super Shotgun -item.gun_moist_nugget.name=Mosin-Nagant -item.gun_revolver_inverted.name=Flipped Revolver -item.gun_jack.name=Jackhammer -item.gun_spark.name=Spark Plug -item.gun_hp.name=HPP Lazerjet -item.gun_euthanasia.name=Euthanasia -item.gun_defabricator.name=Defabricator - -item.gun_revolver_iron_ammo.name=Bullet -item.gun_revolver_ammo.name=Lead Bullet -item.gun_revolver_gold_ammo.name=Golden Bullet -item.gun_revolver_lead_ammo.name=Glass Covered Nuclear Bullet -item.gun_revolver_schrabidium_ammo.name=Schrabidium Bullet -item.gun_revolver_cursed_ammo.name=Steel Bullet -item.gun_revolver_nightmare_ammo.name=Nightmare Bullet -item.gun_revolver_nightmare2_ammo.name=Laser Buckshot -item.gun_fatman_ammo.name=Mini Nuke -item.gun_mirv_ammo.name=Eightfold MIRV -item.gun_bf_ammo.name=Mk.V Compact AMAT-Artillery Shell - Type B.F. -item.gun_mp40_ammo.name=Submachine Gun Round -item.gun_uboinik_ammo.name=12x70 Buckshot -item.gun_xvl1456_ammo.name=Depleted Uranium-235 Box -item.gun_osipr_ammo.name=Dark Energy Pulse Plug -item.gun_osipr_ammo2.name=Combine Ball -item.gun_immolator_ammo.name=Immolator Fuel -item.gun_cryolator_ammo.name=Cryo Cell -item.gun_mp_ammo.name=Small Propellantless Machine Gun Round -item.gun_emp_ammo.name=Energy Cell -item.gun_jack_ammo.name=Quadruple Shotgun Shell -item.gun_spark_ammo.name=Electromagnetic Cartridge -item.gun_hp_ammo.name=Ink Cartridge -item.gun_euthanasia_ammo.name=Syringe -item.gun_defabricator_ammo.name=Defabricator Energy Cell - -item.clip_revolver_iron.name=Box of Iron Rounds -item.clip_revolver.name=Box of .357 Rounds -item.clip_revolver_gold.name=Small Coffer of Golden Bullets -item.clip_revolver_schrabidium.name=Schrabidium Ammo Container -item.clip_rpg.name=Rocket Container -item.clip_xvl1456.name=Large Isotope Box -item.clip_osipr.name=AR2 Magazine -item.clip_immolator.name=Tank of Immolator Fuel -item.clip_cryolator.name=Tank of Cryolator Fuel -item.clip_revolver_lead.name=Box of Nuclear Bullets -item.clip_revolver_cursed.name=Britannia Military Standard Issue Pisol Magazine -item.clip_fatman.name=Six Pack of Mini Nukes -item.clip_mirv.name=Three-In-One Pack of Mini MIRVs -item.clip_bf.name=BF-Shell Double Pack -item.clip_mp.name=Britannia Military Standard Issue Assult Rifle Magazine -item.clip_mp40.name=9mm SMG Magazine -item.clip_uboinik.name=Box of Buckshot Rounds -item.clip_emp.name=Small Pack of Energy Cells -item.clip_revolver_nightmare.name=Bag of Bullets -item.clip_revolver_nightmare2.name=Belt with Laser Buckshot - -tile.block_schrabidium.name=Block of Schrabidium -item.plate_gold.name=Gold Plate - -item.syringe_empty.name=Empty Syringe -item.syringe_antidote.name=Antidote -item.syringe_poison.name=Poisonous Injection -item.syringe_awesome.name=AWESOME -item.syringe_metal_empty.name=Metal Syringe -item.syringe_metal_stimpak.name=Stimpak -item.syringe_metal_medx.name=Med-X -item.syringe_metal_psycho.name=Psycho -item.pill_iodine.name=Iodine Pill -item.plan_c.name=Plan C - -item.stealth_boy.name=Stealth Device - -entity.hbm.entity_bullet.name=Bullet -entity.hbm.entity_rocket.name=Rocket -entity.hbm.entity_schrabnel.name=Schrabnel -entity.entity_mob_nuclear_creeper.name=Nuclear Creeper -entity.entity_mob_hunter_chopper.name=Hunter ChopperCreeper -entity.entity_cyber_crab.name=Cyber Crab - -item.cap_aluminium.name=Aluminium Cap -item.hull_small_steel.name=Small Steel Shell -item.hull_small_aluminium.name=Small Aluminium Shell -item.hull_big_steel.name=Big Steel Shell -item.hull_big_aluminium.name=Big Aluminium Shell -item.hull_big_titanium.name=Big Titanium Shell -item.fins_flat.name=Flat Steel Casing -item.fins_small_steel.name=Small Steel Grid Fins -item.fins_big_steel.name=Big Steel Grid Fins -item.fins_tri_steel.name=Large Steel Fins -item.fins_quad_titanium.name=Small Titanium Fins -item.sphere_steel.name=Steel Sphere -item.pedestal_steel.name=Steel Pedestal -item.dysfunctional_reactor.name=Dysfunctional Nuclear Reactor - -item.rotor_steel.name=Large Steel Rotor -item.generator_steel.name=Generator Body -item.blade_titanium.name=Titanium Blade -item.turbine_titanium.name=Titanium Steam Turbine -item.generator_front.name=Generator Front - -item.combine_scrap.name=CMB Scrap Metal -item.chopper_head.name=Hunter Chopper Cockpit -item.chopper_gun.name=Emplacement Gun -item.chopper_torso.name=Hunter Chopper Body -item.chopper_tail.name=Hunter Chopper Tail -item.chopper_wing.name=Hunter Chopper Wing -item.chopper_blades.name=Hunter Chopper Rotor Blades - -item.igniter.name=Igniter -item.watch.name=Broken Pocket Watch -item.apple_astatine.name=Euphemium Apple -item.ingot_astatine.name=Euphemium Ingot -item.nugget_astatine.name=Euphemium Nugget -item.rod_quad_astatine.name=Burned Out Quad Schrabidium Fuel Rod - -item.astatine_helmet.name=Euphemium Helemt -item.astatine_plate.name=Euphemium Chestplate -item.astatine_legs.name=Euphemium Leggings -item.astatine_boots.name=Euphemiums Boots - -item.schrabidium_helmet.name=Schrabidium Helmet -item.schrabidium_plate.name=Schrabidium Chestpate -item.schrabidium_legs.name=Schrabidium Leggings -item.schrabidium_boots.name=Schrabidium Boots -item.schrabidium_sword.name=Schrabidium Sword -item.schrabidium_pickaxe.name=Schrabidium Pickaxe -item.schrabidium_axe.name=Schrabidium Axe -item.schrabidium_shovel.name=Schrabidium Shovel -item.schrabidium_hoe.name=Schrabidium Hoe - -item.chainsaw.name=Chainsaw -item.crowbar.name=Mk.V Crate Opening Device "Crowbar" - -item.mask_of_infamy.name=Mask of Infamy - -tile.det_cord.name=Det Cord -tile.det_charge.name=Explosive Charge -tile.red_barrel.name=Explosive Barrel -tile.yellow_barrel.name=Radioactive Barrel - -item.designator.name=Short Range Target Designator -item.designator_range.name=Long Range Target Designator -item.missile_generic.name=High Explosive Missile -item.missile_anti_ballistic.name=Anti Ballistic Missile (WIP) -item.missile_incendiary.name=Incendiary Missile -item.missile_cluster.name=Cluster Missile -item.missile_buster.name=Bunker Buster -item.missile_strong.name=Strong HE Missile -item.missile_incendiary_strong.name=Strong Incendiary Missile -item.missile_cluster_strong.name=Strong Cluster Missile -item.missile_buster_strong.name=Enhanced Bunker Buster -item.missile_burst.name=Spare Missile -item.missile_inferno.name=Inferno Missile G.R.N. Mk.II -item.missile_rain.name=Bomblet Rain -item.missile_drill.name=The Concrete Cracker -item.missile_nuclear.name=Nuclear Missile -item.missile_nuclear_cluster.name=Nuclear MIRV Missile -item.missile_endo.name=Endothermic Missile -item.missile_exo.name=Exothermic Missile - -item.hazmat_helmet.name=Hazmat Helmet -item.hazmat_plate.name=Hazmat Chestplate -item.hazmat_legs.name=Hazmat Leggings -item.hazmat_boots.name=Hazmat Boots -item.hazmat_paa_helmet.name=PaA Battle Hazmat Suit Helmet -item.hazmat_paa_plate.name=PaA Battle Hazmat Suit Chestplate -item.hazmat_paa_legs.name=PaA Battle Hazmat Suit Leggings -item.hazmat_paa_boots.name=PaA Battle Hazmat Suit Boots -item.asbestos_helmet.name=Fire Proximity Helmet -item.asbestos_plate.name=Fire Proximity Chestplate -item.asbestos_legs.name=Fire Proximity Leggings -item.asbestos_boots.name=Fire Proximity Boots - -item.paa_plate.name=PaA Chest Protection Plate -item.paa_legs.name=PaA Leg Reinforcements -item.paa_boots.name=PaA "good ol' shoes" - -item.goggles.name=Protection Goggles -item.gas_mask.name=Gas Mask -item.oxy_mask.name=Oxygen Mask -item.t45_helmet.name=T45 Power Armor Helmet -item.t45_plate.name=T45 Power Armor Chestplate -item.t45_legs.name=T45 Power Armor Leggings -item.t45_boots.name=T45 Power Armor Boots - -tile.mush.name=Glowing Mushroom -tile.waste_mycelium.name=Glowing Mycelium - -item.warhead_generic_small.name=Small Warhead -item.warhead_generic_medium.name=Medium Warhead -item.warhead_generic_large.name=Large Warhead -item.warhead_incendiary_small.name=Small Incendiary Warhead -item.warhead_incendiary_medium.name=Medium Incendiary Warhead -item.warhead_incendiary_large.name=Large Incendiary Warhead -item.warhead_cluster_small.name=Small Cluster Warhead -item.warhead_cluster_medium.name=Medium Cluster Warhead -item.warhead_cluster_large.name=Large Cluster Warhead -item.warhead_buster_small.name=Small Bunker Buster Warhead -item.warhead_buster_medium.name=Medium Bunker Buster Warhead -item.warhead_buster_large.name=Large Bunker Buster Warhead -item.warhead_nuclear.name=Nuclear Warhead -item.warhead_mirvlet.name=MIRV -item.warhead_mirv.name=Eightfold MIRV Warhead -item.warhead_thermo_endo.name=Endothermic Warhead -item.warhead_thermo_exo.name=Exothermic Warhead -item.fuel_tank_small.name=Small Fuel Tank -item.fuel_tank_medium.name=Medium Fuel Tank -item.fuel_tank_large.name=Large Fuel Tank -item.thruster_small.name=Small Thruster -item.thruster_medium.name=Medium Thruster -item.thruster_large.name=Large Thruster - -item.wand_k.name=Construction Wand -item.wand_s.name=Structure Wand -item.wand_d.name=Debug Wand - -item.screwdriver.name=Screwdriver -item.overfuse.name=Singularity Screwdriver - -item.steel_helmet.name=Steel Helmet -item.steel_plate.name=Steel Chestplate -item.steel_legs.name=Steel Leggings -item.steel_boots.name=Steel Boots -item.titanium_helmet.name=Titanium Helmet -item.titanium_plate.name=Titanium Chestplate -item.titanium_legs.name=Titanium Leggings -item.titanium_boots.name=Titanium Boots -item.alloy_helmet.name=Advanced Alloy Helmet -item.alloy_plate.name=Advanced Alloy Chestplate -item.alloy_legs.name=Advanced Alloy Leggings -item.alloy_boots.name=Advanced Alloy Boots -item.cmb_helmet.name=CMB Steel Helmet -item.cmb_plate.name=CMB Steel Chestplate -item.cmb_legs.name=CMB Steel Leggings -item.cmb_boots.name=CMB Steel Boots - -item.steel_sword.name=Steel Sword -item.steel_pickaxe.name=Steel Pickaxe -item.steel_axe.name=Steel Axe -item.steel_shovel.name=Steel Shovel -item.steel_hoe.name=Steel Hoe -item.titanium_sword.name=Titanium Sword -item.titanium_pickaxe.name=Titanium Pickaxe -item.titanium_axe.name=Titanium Axe -item.titanium_shovel.name=Titanium Shovel -item.titanium_hoe.name=Titanium Hoe -item.alloy_sword.name=Advanced Alloy Sword -item.alloy_pickaxe.name=Advanced Alloy Pickaxe -item.alloy_axe.name=Advanced Alloy Axe -item.alloy_shovel.name=Advanced Alloy Shovel -item.alloy_hoe.name=Advanced Alloy Hoe -item.cmb_sword.name=CMB Steel Sword -item.cmb_pickaxe.name=CMB Steel Pickaxe -item.cmb_axe.name=CMB Steel Axe -item.cmb_shovel.name=CMB Steel Shovel -item.cmb_hoe.name=CMB Steel Hoe -item.elec_sword.name=Stunstick -item.elec_pickaxe.name=Impact Drill -item.elec_axe.name=Electric Chainsaw -item.elec_shovel.name=Spiral Drill - -tile.red_cable.name=Red Copper Cable -tile.block_meteor.name=Meteor Block - -item.cape_radiation.name=Cape (Radiation) -item.cape_gasmask.name=Cape (Gas Mask) -item.cape_schrabidium.name=Cape (Schrabidic) -item.cape_hbm.name=Hbm's Cape -item.cape_dafnik.name=Dafnik's Cape -item.cape_lpkukin.name=LPkukin's Cape -item.cape_vertice.name=Lord Vertice's Cape - -tile.machine_converter_he_rf.name=HE to RF Converter -tile.machine_converter_rf_he.name=RF to HE Converter - -item.schrabidium_hammer.name=Schrabidium Hammer -item.euphemium_stopper.name=Stopper -item.matchstick.name=Matchstick -item.remote.name=Broken Remote - -item.redcoil_capacitor.name=Redcoil Capacitor -item.detonator.name=Detonator -item.crate_caller.name=Supply Drop Requester - -item.ingot_hes.name=Highly Enriched Schrabidium Fuel Ingot -item.ingot_les.name=Low Enriched Schrabidium Fuel Ingot -item.nugget_hes.name=Highly Enriched Schrabidium Fuel Nugget -item.nugget_les.name=Low Enriched Schrabidium Fuel Nugget - -item.pellet_schrabidium.name=Pure Schrabidium Watz Pellet -item.pellet_hes.name=HES Watz Pellet -item.pellet_mes.name=MES Watz Pellet -item.pellet_les.name=LES Watz Pellet -item.pellet_beryllium.name=Beryllium Moderator Pellet -item.pellet_neptunium.name=Neptunium Watz Pellet -item.pellet_lead.name=Lead Reflector Pellet -item.pellet_advanced.name=Advanced Watz Performance Improver - -item.titanium_filter.name=Titanium Filter - -tile.mud_block.name=Poisonous Mud -fluid.mud_fluid=Poisonous Mud -item.bucket_mud.name=Bucket of Poisonous Mud -tile.acid_block.name=Acid -fluid.acid_fluid=Acid -item.bucket_acid.name=Bucket of Acid -tile.toxic_block.name=Stereotypical Green Ooze -fluid.toxic_fluid=Stereotypical Green Ooze -item.bucket_toxic.name=Bucket of Stereotypical Green Ooze -item.tank_waste_0.name=Mud Container -item.tank_waste_1.name=Mud Container -item.tank_waste_2.name=Mud Container -item.tank_waste_3.name=Mud Container -item.tank_waste_4.name=Mud Container -item.tank_waste_5.name=Mud Container -item.tank_waste_6.name=Mud Container -item.tank_waste_7.name=Mud Container -item.tank_waste_8.name=Mud Container - -item.can_empty.name=Empty Can -item.can_smart.name='Smart' Energy Drink -item.can_creature.name='Creature' Energy Drink -item.can_redbomb.name='Red Bomb' Energy Drink -item.can_mrsugar.name='Dr. Sugar' Soft Drink -item.can_overcharge.name=Overcharge Delirium XT -item.bottle_empty.name=Empty Bomb-Shaped Bottle -item.bottle_nuka.name=Bottle of Nuka Cola -item.bottle_cherry.name=Bottle of Nuka Cherry -item.bottle_quantum.name=Bottle of Nuka Cola Quantum -item.bottle2_empty.name=Empty Bottle -item.bottle2_korl.name=Korl -item.bottle2_fritz.name=Fritz Cola -item.bottle2_korl_special.name=The First Korl -item.bottle2_fritz_special.name=The First Fritz Cola -item.chocolate_milk.name=Chocolate Milk -item.cap_nuka.name=Nuka Cola Bottle Cap -item.cap_quantum.name=Nuka Cola Quantum Bottle Cap -item.cap_korl.name=Korl Bottle Cap -item.cap_fritz.name=Fritz Cola Bottle Cap -item.ring_pull.name=Ring Pull - -item.bottle_opener.name=Hbm's Own Self-Made Bottle Opener - -item.blades_aluminium.name=Aluminium Shredder Blades -item.blades_gold.name=Golden Shredder Blades -item.blades_iron.name=Iron Shredder Blades -item.blades_steel.name=Steel Shredder Blades -item.blades_titanium.name=Titanium Shredder Blades -item.blades_advanced_alloy.name=Advanced Shredder Blades -item.blades_combine_steel.name=CMB Shredder Blades -item.blades_schrabidium.name=Schrabidium Shredder Blades - -item.part_lithium.name=Box of Lithium Dust -item.part_beryllium.name=Box of Beryllium Dust -item.part_carbon.name=Box of Carbon Dust -item.part_copper.name=Box of Copper Dust -item.part_plutonium.name=Box of Plutonium Dust - -item.crystal_energy.name=Energy Crystal -item.pellet_coolant.name=Coolant Cluster - -item.linker.name=Telelinker -item.oil_detector.name=Oil Reservoir Detector - -item.thermo_element.name=Thermoelectric Element -item.limiter.name=Generator Limiter - -item.multitool_dig.name=Power Fist (Digging Claw) -item.multitool_silk.name=Power Fist (Silk Touch Claw) -item.multitool_ext.name=Power Fist (Ore Extracter) -item.multitool_miner.name=Power Fist (Extracting Mining Laser) -item.multitool_hit.name=Power Fist (Fist) -item.multitool_beam.name=Power Fist (Zapper) -item.multitool_sky.name=Power Fist (Crack the Sky) -item.multitool_mega.name=Power Fist (Super Punch) -item.multitool_joule.name=Power Fist (Giga Joule) -item.multitool_decon.name=Power Fist (Decontaminator) - -item.australium_iii.name=Mark III Life Extender -item.australium_iv.name=Mark IV Life Extender -item.australium_v.name=Mark V Life Extender - -item.weapon_saw.name=Doctor Assisted Homicide -item.weapon_bat.name=Richard's Default -item.weapon_bat_nail.name=The Cliché -item.weapon_golf_club.name=Russian Mobster's Club -item.weapon_pipe_rusty.name=The Attitude Adjuster -item.weapon_pipe_lead.name=The Manual Override -item.reer_graar.name=The Reer Graar - -item.letter.name=Express Mail -item.polaroid.name=The Polaroid -item.book_secret.name=3-596-50802-9 - -item.crystal_horn.name=Crystal Horn -item.crystal_charred.name=Charred Crystal -item.ingot_lanthanium.name=Semi-Stable Lanthanium Ingot -item.ingot_actinium.name=Semi-Stable Actinium Ingot - -tile.dummy_block.name=Dummy Block -tile.dummy_port.name=Dummy Block (Electricity Port) - -item.chopper.name=Hunter Chopper - -item.nothing.name=Nothing - -tile.crystal_virus.name=Dark Crystal -tile.crystal_hardened.name=Hardened Dark Crystal -tile.crystal_pulsar.name=Pulsating Crystal - -tile.cheater_virus.name=Gelid Euphemium -tile.cheater_virus_seed.name=Unstable Euphemium Schrabide Block \ No newline at end of file diff --git a/src/main/resources/assets/hbm/models/weapons/carbine.obj b/src/main/resources/assets/hbm/models/weapons/carbine.obj index 5a5caf913..6b8176493 100644 --- a/src/main/resources/assets/hbm/models/weapons/carbine.obj +++ b/src/main/resources/assets/hbm/models/weapons/carbine.obj @@ -1,6 +1,847 @@ # Blender v2.79 (sub 0) OBJ File: 'carbine.blend' # www.blender.org -o Cylinder +o Bullet +v 0.000000 1.000000 0.187500 +v -0.062500 0.983253 0.187500 +v -0.108253 0.937500 0.187500 +v -0.125000 0.875000 0.187500 +v -0.108253 0.812500 0.187500 +v -0.062500 0.766747 0.187500 +v 0.000000 0.750000 0.187500 +v 0.062500 0.766747 0.187500 +v 0.108253 0.812500 0.187500 +v 0.125000 0.875000 0.187500 +v 0.108253 0.937500 0.187500 +v 0.062500 0.983253 0.187500 +v 0.000000 1.000000 0.812500 +v -0.062500 0.983253 0.812500 +v -0.108253 0.937500 0.812500 +v -0.125000 0.875000 0.812500 +v -0.108253 0.812500 0.812500 +v -0.062500 0.766747 0.812500 +v 0.000000 0.750000 0.812500 +v 0.062500 0.766747 0.812500 +v 0.108253 0.812500 0.812500 +v 0.125000 0.875000 0.812500 +v 0.108253 0.937500 0.812500 +v 0.062500 0.983253 0.812500 +v 0.000000 0.968750 1.000000 +v -0.046875 0.956190 1.000000 +v -0.081190 0.921875 1.000000 +v -0.093750 0.875000 1.000000 +v -0.081190 0.828125 1.000000 +v -0.046875 0.793810 1.000000 +v 0.000000 0.781250 1.000000 +v 0.046875 0.793810 1.000000 +v 0.081190 0.828125 1.000000 +v 0.093750 0.875000 1.000000 +v 0.081190 0.921875 1.000000 +v 0.046875 0.956190 1.000000 +v 0.000000 0.906250 1.062500 +v -0.015625 0.902063 1.062500 +v -0.027063 0.890625 1.062500 +v -0.031250 0.875000 1.062500 +v -0.027063 0.859375 1.062500 +v -0.015625 0.847937 1.062500 +v 0.000000 0.843750 1.062500 +v 0.015625 0.847937 1.062500 +v 0.027063 0.859375 1.062500 +v 0.031250 0.875000 1.062500 +v 0.027063 0.890625 1.062500 +v 0.015625 0.902063 1.062500 +vt 0.107288 0.837093 +vt 0.113553 0.826359 +vt 0.119818 0.858560 +vt 0.117170 0.866417 +vt 0.107288 0.858560 +vt 0.113553 0.869293 +vt 0.109936 0.866417 +vt 0.106319 0.847826 +vt 0.109936 0.829235 +vt 0.117170 0.829235 +vt 0.119818 0.837092 +vt 0.120788 0.847826 +vt 0.106227 0.836957 +vt 0.069597 0.826087 +vt 0.106227 0.826087 +vt 0.106227 0.934783 +vt 0.069597 0.923913 +vt 0.106227 0.923913 +vt 0.106227 0.880435 +vt 0.069597 0.869565 +vt 0.106227 0.869565 +vt 0.106227 0.902174 +vt 0.069597 0.891304 +vt 0.106227 0.891304 +vt 0.106227 0.847826 +vt 0.069597 0.836957 +vt 0.106227 0.945652 +vt 0.069597 0.934783 +vt 0.069597 0.880435 +vt 0.106227 0.913043 +vt 0.069597 0.902174 +vt 0.106227 0.858696 +vt 0.069597 0.847826 +vt 0.106227 0.956522 +vt 0.069597 0.945652 +vt 0.069597 0.913043 +vt 0.069597 0.858696 +vt 0.058608 0.945652 +vt 0.058608 0.934783 +vt 0.058608 0.891304 +vt 0.058608 0.880435 +vt 0.058608 0.913043 +vt 0.058608 0.902174 +vt 0.058608 0.858696 +vt 0.058608 0.847826 +vt 0.069597 0.956522 +vt 0.058608 0.923913 +vt 0.058608 0.836957 +vt 0.058608 0.826087 +vt 0.058608 0.869565 +vt 0.054945 0.945652 +vt 0.054945 0.934783 +vt 0.054945 0.891304 +vt 0.054945 0.880435 +vt 0.054945 0.913043 +vt 0.054945 0.902174 +vt 0.054945 0.847826 +vt 0.058608 0.956522 +vt 0.054945 0.869565 +vt 0.054945 0.858696 +vt 0.054945 0.836957 +vt 0.054945 0.826087 +vt 0.054945 0.923913 +vt 0.053164 0.826561 +vt 0.054593 0.829009 +vt 0.053164 0.836354 +vt 0.054945 0.956522 +vt 0.052339 0.835698 +vt 0.051735 0.829009 +vt 0.051735 0.833906 +vt 0.051514 0.831457 +vt 0.052339 0.827217 +vt 0.053989 0.827217 +vt 0.054814 0.831457 +vt 0.054593 0.833906 +vt 0.053989 0.835698 +vn 0.0000 0.0000 -1.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -0.9967 0.0814 +vn 0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.9967 0.0000 0.0814 +vn -1.0000 -0.0000 0.0000 +vn 0.5000 0.8660 0.0000 +vn 0.8632 0.4983 0.0814 +vn 0.8660 0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 0.9967 0.0814 +vn -0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.4983 -0.8632 0.0814 +vn -0.5000 -0.8660 0.0000 +vn -0.8632 -0.4983 0.0814 +vn 0.4983 0.8632 0.0814 +vn -0.8660 0.5000 0.0000 +vn -0.4983 0.8632 0.0814 +vn 1.0000 -0.0000 0.0000 +vn 0.8632 -0.4983 0.0814 +vn -0.4983 -0.8632 0.0814 +vn -0.8632 0.4983 0.0814 +vn 0.9967 -0.0000 0.0814 +vn -0.4494 -0.7784 0.4382 +vn -0.7784 -0.4494 0.4382 +vn 0.0000 0.8989 0.4382 +vn 0.4494 0.7784 0.4382 +vn -0.7784 0.4494 0.4382 +vn -0.4494 0.7784 0.4382 +vn 0.8989 -0.0000 0.4382 +vn 0.7784 -0.4494 0.4382 +vn -0.8989 0.0000 0.4382 +vn 0.4494 -0.7784 0.4382 +vn 0.0000 -0.8989 0.4382 +vn 0.7784 0.4494 0.4382 +vn -0.2172 -0.3762 0.9007 +vn -0.3762 -0.2172 0.9007 +vn 0.0000 0.4344 0.9007 +vn 0.2172 0.3762 0.9007 +vn -0.3762 0.2172 0.9007 +vn -0.2172 0.3762 0.9007 +vn 0.3762 -0.2172 0.9007 +vn 0.3762 0.2172 0.9007 +vn 0.4344 0.0000 0.9007 +vn 0.2172 -0.3762 0.9007 +vn 0.0000 -0.4344 0.9007 +vn -0.4344 0.0000 0.9007 +s off +f 9/1/1 7/2/1 3/3/1 +f 3/3/1 2/4/1 11/5/1 +f 2/4/1 1/6/1 11/5/1 +f 1/6/1 12/7/1 11/5/1 +f 11/5/1 10/8/1 9/1/1 +f 9/1/1 8/9/1 7/2/1 +f 7/2/1 6/10/1 5/11/1 +f 5/11/1 4/12/1 7/2/1 +f 4/12/1 3/3/1 7/2/1 +f 11/5/1 9/1/1 3/3/1 +s 1 +f 8/13/2 19/14/3 7/15/4 +f 5/16/5 16/17/6 4/18/7 +f 12/19/8 23/20/9 11/21/10 +f 2/22/11 13/23/12 1/24/13 +f 9/25/14 20/26/15 8/13/2 +f 6/27/16 17/28/17 5/16/5 +f 1/24/13 24/29/18 12/19/8 +f 3/30/19 14/31/20 2/22/11 +f 10/32/21 21/33/22 9/25/14 +f 7/34/4 18/35/23 6/27/16 +f 4/18/7 15/36/24 3/30/19 +f 11/21/10 22/37/25 10/32/21 +f 17/28/17 30/38/26 29/39/27 +f 24/29/18 25/40/28 36/41/29 +f 14/31/20 27/42/30 26/43/31 +f 21/33/22 34/44/32 33/45/33 +f 19/46/3 30/38/26 18/35/23 +f 15/36/24 28/47/34 27/42/30 +f 23/20/9 34/44/32 22/37/25 +f 19/14/3 32/48/35 31/49/36 +f 17/28/17 28/47/34 16/17/6 +f 24/29/18 35/50/37 23/20/9 +f 14/31/20 25/40/28 13/23/12 +f 21/33/22 32/48/35 20/26/15 +f 29/39/27 42/51/38 41/52/39 +f 36/41/29 37/53/40 48/54/41 +f 26/43/31 39/55/42 38/56/43 +f 34/44/32 45/57/44 33/45/33 +f 31/58/36 42/51/38 30/38/26 +f 28/47/34 39/55/42 27/42/30 +f 34/44/32 47/59/45 46/60/46 +f 31/49/36 44/61/47 43/62/48 +f 28/47/34 41/52/39 40/63/49 +f 36/41/29 47/59/45 35/50/37 +f 26/43/31 37/53/40 25/40/28 +f 33/45/33 44/61/47 32/48/35 +f 43/64/48 45/65/44 37/66/40 +f 8/13/2 20/26/15 19/14/3 +f 5/16/5 17/28/17 16/17/6 +f 12/19/8 24/29/18 23/20/9 +f 2/22/11 14/31/20 13/23/12 +f 9/25/14 21/33/22 20/26/15 +f 6/27/16 18/35/23 17/28/17 +f 1/24/13 13/23/12 24/29/18 +f 3/30/19 15/36/24 14/31/20 +f 10/32/21 22/37/25 21/33/22 +f 7/34/4 19/46/3 18/35/23 +f 4/18/7 16/17/6 15/36/24 +f 11/21/10 23/20/9 22/37/25 +f 17/28/17 18/35/23 30/38/26 +f 24/29/18 13/23/12 25/40/28 +f 14/31/20 15/36/24 27/42/30 +f 21/33/22 22/37/25 34/44/32 +f 19/46/3 31/58/36 30/38/26 +f 15/36/24 16/17/6 28/47/34 +f 23/20/9 35/50/37 34/44/32 +f 19/14/3 20/26/15 32/48/35 +f 17/28/17 29/39/27 28/47/34 +f 24/29/18 36/41/29 35/50/37 +f 14/31/20 26/43/31 25/40/28 +f 21/33/22 33/45/33 32/48/35 +f 29/39/27 30/38/26 42/51/38 +f 36/41/29 25/40/28 37/53/40 +f 26/43/31 27/42/30 39/55/42 +f 34/44/32 46/60/46 45/57/44 +f 31/58/36 43/67/48 42/51/38 +f 28/47/34 40/63/49 39/55/42 +f 34/44/32 35/50/37 47/59/45 +f 31/49/36 32/48/35 44/61/47 +f 28/47/34 29/39/27 41/52/39 +f 36/41/29 48/54/41 47/59/45 +f 26/43/31 38/56/43 37/53/40 +f 33/45/33 45/57/44 44/61/47 +f 37/66/40 38/68/43 41/69/39 +f 38/68/43 39/70/42 41/69/39 +f 39/70/42 40/71/49 41/69/39 +f 41/69/39 42/72/38 43/64/48 +f 43/64/48 44/73/47 45/65/44 +f 45/65/44 46/74/46 47/75/45 +f 47/75/45 48/76/41 45/65/44 +f 48/76/41 37/66/40 45/65/44 +f 41/69/39 43/64/48 37/66/40 +o Magazine +v 0.187500 0.875000 1.125000 +v -0.187500 0.875000 1.125000 +v 0.187500 0.875000 0.125000 +v -0.187500 0.875000 0.125000 +v -0.187500 -1.375000 1.125000 +v 0.187500 -1.375000 1.125000 +v -0.187500 -1.375000 0.125000 +v 0.187500 -1.375000 0.125000 +v -0.125000 0.875000 1.125000 +v -0.062500 0.750000 1.125000 +v 0.062500 0.750000 1.125000 +v 0.125000 0.875000 1.125000 +v -0.125000 0.875000 0.125000 +v -0.062500 0.750000 0.125000 +v 0.062500 0.750000 0.125000 +v 0.125000 0.875000 0.125000 +vt 0.450549 0.989130 +vt 0.391941 1.000000 +vt 0.391941 0.989130 +vt 0.391941 0.456522 +vt 0.450549 0.521739 +vt 0.391941 0.521739 +vt 0.391941 0.913043 +vt 0.450549 0.913043 +vt 0.384615 0.891304 +vt 0.377289 0.891304 +vt 0.472527 0.913043 +vt 0.531136 0.521739 +vt 0.531136 0.913043 +vt 0.472527 0.521739 +vt 0.465201 0.891304 +vt 0.457875 0.891304 +vt 0.391941 0.923913 +vt 0.450549 0.923913 +vt 0.391941 0.945652 +vt 0.450549 0.967391 +vt 0.391941 0.967391 +vt 0.450549 0.945652 +vt 0.450549 1.000000 +vt 0.450549 0.456522 +vt 0.388278 0.913043 +vt 0.369963 0.913043 +vt 0.369963 0.521739 +vt 0.373626 0.913043 +vt 0.468864 0.913043 +vt 0.454212 0.913043 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.8944 0.4472 0.0000 +vn 0.8944 0.4472 0.0000 +s off +f 61/77/50 50/78/50 57/79/50 +f 53/80/51 56/81/51 54/82/51 +f 49/83/52 56/81/52 51/84/52 +f 54/82/53 59/85/53 58/86/53 +f 52/87/54 53/88/54 50/89/54 +f 55/90/55 62/91/55 63/92/55 +f 51/84/50 60/93/50 49/83/50 +f 64/94/56 59/95/56 60/93/56 +f 62/96/57 57/79/57 58/97/57 +f 63/98/50 58/97/50 59/95/50 +f 61/77/50 52/99/50 50/78/50 +f 53/80/51 55/100/51 56/81/51 +f 49/83/52 54/82/52 56/81/52 +f 54/82/53 49/83/53 59/85/53 +f 49/83/53 60/101/53 59/85/53 +f 50/102/53 53/103/53 58/86/53 +f 53/103/53 54/82/53 58/86/53 +f 58/86/53 57/104/53 50/102/53 +f 52/87/54 55/90/54 53/88/54 +f 55/90/55 52/87/55 62/91/55 +f 52/87/55 61/105/55 62/91/55 +f 51/84/55 56/81/55 63/92/55 +f 56/81/55 55/90/55 63/92/55 +f 63/92/55 64/106/55 51/84/55 +f 51/84/50 64/94/50 60/93/50 +f 64/94/56 63/98/56 59/95/56 +f 62/96/57 61/77/57 57/79/57 +f 63/98/50 62/96/50 58/97/50 +o Slide +v -0.093750 1.162380 1.125000 +v -0.162380 1.093750 1.125000 +v -0.187500 1.000000 1.125000 +v 0.187500 1.000000 1.125000 +v 0.162380 1.093750 1.125000 +v 0.093750 1.162380 1.125000 +v 0.000000 1.187500 1.125000 +v -0.093750 1.162380 0.125000 +v -0.162380 1.093750 0.125000 +v -0.187500 1.000000 0.125000 +v 0.187500 1.000000 0.125000 +v 0.162380 1.093750 0.125000 +v 0.093750 1.162380 0.125000 +v 0.000000 1.187500 0.125000 +v 0.093750 0.837620 1.375000 +v 0.000000 0.812500 1.375000 +v -0.093750 0.837620 1.375000 +v -0.162380 0.906250 1.375000 +v -0.187500 1.000000 1.375000 +v 0.162380 0.906250 1.375000 +v 0.187500 1.000000 1.375000 +v 0.000000 1.312500 1.375000 +v -0.156250 1.270633 1.375000 +v -0.270633 1.156250 1.375000 +v -0.312500 1.000000 1.375000 +v -0.093750 0.837620 1.125000 +v 0.000000 0.812500 1.125000 +v 0.093750 0.837620 1.125000 +v 0.162380 0.906250 1.125000 +v 0.187500 1.000000 1.125000 +v 0.312500 1.000000 1.375000 +v 0.270633 1.156250 1.375000 +v 0.156250 1.270633 1.375000 +v -0.162380 0.906250 1.125000 +v -0.187500 1.000000 1.125000 +v -0.156250 1.270633 1.125000 +v 0.000000 1.312500 1.125000 +v -0.270633 1.156250 1.125000 +v -0.312500 1.000000 1.125000 +v 0.312500 1.000000 1.125000 +v 0.270633 1.156250 1.125000 +v 0.156250 1.270633 1.125000 +v -0.093750 1.162380 1.437500 +v -0.162380 1.093750 1.437500 +v -0.187500 1.000000 1.437500 +v -0.162380 0.906250 1.437500 +v -0.093750 0.837620 1.437500 +v 0.000000 0.812500 1.437500 +v 0.093750 0.837620 1.437500 +v 0.162380 0.906250 1.437500 +v 0.187500 1.000000 1.437500 +v 0.162380 1.093750 1.437500 +v 0.093750 1.162380 1.437500 +v 0.000000 1.187500 1.437500 +v -0.093750 1.162380 1.375000 +v -0.162380 1.093750 1.375000 +v -0.187500 1.000000 1.375000 +v -0.162380 0.906250 1.375000 +v -0.093750 0.837620 1.375000 +v 0.000000 0.812500 1.375000 +v 0.093750 0.837620 1.375000 +v 0.162380 0.906250 1.375000 +v 0.187500 1.000000 1.375000 +v 0.162380 1.093750 1.375000 +v 0.093750 1.162380 1.375000 +v 0.000000 1.187500 1.375000 +v 0.125000 1.000000 1.125000 +v 0.500000 1.000000 1.125000 +v 0.125000 1.000000 1.000000 +v 0.500000 1.000000 1.000000 +v 0.125000 1.062500 1.125000 +v 0.500000 1.062500 1.125000 +v 0.125000 1.062500 1.000000 +v 0.500000 1.062500 1.000000 +v 0.500000 0.906250 1.125000 +v 0.500000 1.156250 1.125000 +v 0.500000 0.906250 1.000000 +v 0.500000 1.156250 1.000000 +v 0.750000 0.968750 1.125000 +v 0.750000 1.093750 1.125000 +v 0.750000 0.968750 1.000000 +v 0.750000 1.093750 1.000000 +v 0.625000 0.906250 1.000000 +v 0.625000 1.156250 1.000000 +v 0.625000 0.906250 1.125000 +v 0.625000 1.156250 1.125000 +v 0.250000 1.000000 3.500000 +v -0.250000 1.000000 3.500000 +v 0.250000 1.125000 3.500000 +v -0.250000 1.125000 3.500000 +v -0.187500 1.125000 3.500000 +v -0.187500 1.000000 3.500000 +v 0.187500 1.125000 3.500000 +v 0.187500 1.000000 3.500000 +v 0.250000 1.000000 1.375000 +v 0.250000 1.125000 1.375000 +v -0.250000 1.125000 1.375000 +v -0.250000 1.000000 1.375000 +v -0.187500 1.125000 1.375000 +v -0.187500 1.000000 1.375000 +v 0.187500 1.000000 1.375000 +v 0.187500 1.125000 1.375000 +v -0.125000 1.000000 1.125000 +v -0.500000 1.000000 1.125000 +v -0.125000 1.000000 1.000000 +v -0.500000 1.000000 1.000000 +v -0.125000 1.062500 1.125000 +v -0.500000 1.062500 1.125000 +v -0.125000 1.062500 1.000000 +v -0.500000 1.062500 1.000000 +v -0.500000 0.906250 1.125000 +v -0.500000 1.156250 1.125000 +v -0.500000 0.906250 1.000000 +v -0.500000 1.156250 1.000000 +v -0.750000 0.968750 1.125000 +v -0.750000 1.093750 1.125000 +v -0.750000 0.968750 1.000000 +v -0.750000 1.093750 1.000000 +v -0.625000 0.906250 1.000000 +v -0.625000 1.156250 1.000000 +v -0.625000 0.906250 1.125000 +v -0.625000 1.156250 1.125000 +vt 0.022092 0.858808 +vt 0.043842 0.858808 +vt 0.032967 0.912594 +vt 0.043736 0.945870 +vt 0.032967 0.999130 +vt 0.022198 0.945870 +vt 0.690786 0.755520 +vt 0.690786 0.787959 +vt 0.681319 0.804179 +vt 0.886447 0.673913 +vt 0.864469 0.695652 +vt 0.864469 0.673913 +vt 0.864469 0.706522 +vt 0.886447 0.728261 +vt 0.864469 0.728261 +vt 0.886447 0.706522 +vt 0.930403 0.750000 +vt 0.923077 0.706522 +vt 0.930403 0.706522 +vt 0.864469 0.739130 +vt 0.886447 0.739130 +vt 0.908425 0.739130 +vt 0.908425 0.717391 +vt 0.915751 0.706522 +vt 0.886447 0.750000 +vt 0.886447 0.706522 +vt 0.893773 0.706522 +vt 0.000000 0.815217 +vt 0.003663 0.793478 +vt 0.003663 0.815217 +vt 0.000000 0.728261 +vt 0.003663 0.706522 +vt 0.003663 0.728261 +vt 0.128205 0.728261 +vt 0.003663 0.695652 +vt 0.128205 0.706522 +vt 0.003663 0.739130 +vt 0.128205 0.760870 +vt 0.003663 0.760870 +vt 0.128205 0.826087 +vt 0.003663 0.826087 +vt 0.128205 0.815217 +vt 0.128205 0.739130 +vt 0.003663 0.782609 +vt 0.128205 0.793478 +vt 0.003663 0.760870 +vt 0.128205 0.782609 +vt 0.864469 0.695652 +vt 0.886447 0.673913 +vt 0.864469 0.673913 +vt 0.886447 0.728261 +vt 0.864469 0.706522 +vt 0.864469 0.728261 +vt 0.886447 0.706522 +vt 0.886447 0.695652 +vt 0.923077 0.706522 +vt 0.930403 0.750000 +vt 0.930403 0.706522 +vt 0.864469 0.739130 +vt 0.886447 0.739130 +vt 0.915751 0.750000 +vt 0.923077 0.750000 +vt 0.915751 0.706522 +vt 0.893773 0.750000 +vt 0.901099 0.739130 +vt 0.893773 0.706522 +vt 0.038405 0.830860 +vt 0.042385 0.842672 +vt 0.051093 0.858808 +vt 0.048664 0.885701 +vt 0.042030 0.905388 +vt 0.023904 0.905388 +vt 0.017270 0.885701 +vt 0.014841 0.858808 +vt 0.023549 0.842672 +vt 0.027529 0.830860 +vt 0.032967 0.826536 +vt 0.023641 0.929891 +vt 0.027582 0.918194 +vt 0.032967 0.913913 +vt 0.038352 0.918194 +vt 0.042293 0.929891 +vt 0.050916 0.945870 +vt 0.048511 0.972500 +vt 0.041941 0.991995 +vt 0.023993 0.991995 +vt 0.017423 0.972500 +vt 0.015018 0.945870 +vt 0.675853 0.799833 +vt 0.671852 0.787959 +vt 0.670387 0.771739 +vt 0.671852 0.755520 +vt 0.675853 0.743646 +vt 0.681319 0.739300 +vt 0.686785 0.743646 +vt 0.692251 0.771739 +vt 0.686785 0.799833 +vt 0.886447 0.695652 +vt 0.923077 0.750000 +vt 0.915751 0.750000 +vt 0.901099 0.717391 +vt 0.901099 0.739130 +vt 0.893773 0.750000 +vt -0.000000 0.793478 +vt 0.000000 0.706522 +vt 0.128205 0.695652 +vt 0.128205 0.760870 +vt 0.908425 0.717391 +vt 0.908425 0.739130 +vt 0.901099 0.717391 +vt 0.886447 0.706522 +vt 0.886447 0.750000 +vt 0.263736 0.804348 +vt 0.205128 0.826087 +vt 0.205128 0.804348 +vt 0.263736 0.695652 +vt 0.205128 0.717391 +vt 0.205128 0.695652 +vt 0.263736 0.717391 +vt 0.205128 0.739130 +vt 0.263736 0.760870 +vt 0.205128 0.782609 +vt 0.205128 0.760870 +vt 0.263736 0.739130 +vt 0.263736 0.782609 +vt -0.000000 0.913043 +vt 0.014652 0.934783 +vt -0.000000 0.934783 +vt -0.000000 0.826087 +vt 0.014652 0.847826 +vt -0.000000 0.847826 +vt 0.014652 0.956522 +vt -0.000000 0.956522 +vt 0.014652 0.869565 +vt -0.000000 0.869565 +vt 0.014652 0.891304 +vt -0.000000 0.891304 +vt 0.014652 0.913043 +vt 0.670330 0.934783 +vt 0.666667 0.956522 +vt 0.666667 0.934783 +vt 0.670330 0.826087 +vt 0.666667 0.847826 +vt 0.666667 0.826087 +vt 0.670330 0.869565 +vt 0.666667 0.891304 +vt 0.666667 0.869565 +vt 0.670330 0.760870 +vt 0.666667 0.782609 +vt 0.666667 0.760870 +vt 0.670330 0.956522 +vt 0.666667 0.978261 +vt 0.670330 0.847826 +vt 0.670330 0.891304 +vt 0.666667 0.913043 +vt 0.670330 0.782609 +vt 0.666667 0.804348 +vt 0.670330 0.978261 +vt 0.666667 1.000000 +vt 0.670330 0.913043 +vt 0.670330 0.804348 +vt 0.670330 0.739130 +vt 0.666667 0.739130 +vt 0.901099 0.695652 +vt 0.908425 0.695652 +vt 0.908425 0.782609 +vt 0.901099 0.760870 +vt 0.908425 0.760870 +vt 0.901099 0.673913 +vt 0.908425 0.673913 +vt 0.901099 0.695652 +vt 0.908425 0.695652 +vt 0.901099 0.760870 +vt 0.908425 0.782609 +vt 0.908425 0.760870 +vt 0.901099 0.673913 +vt 0.908425 0.673913 +vt 0.263736 0.826087 +vt 0.014652 0.826087 +vt 0.670330 1.000000 +vt 0.901099 0.782609 +vt 0.901099 0.782609 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.9659 0.2588 0.0000 +vn 0.9659 0.2588 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.8507 0.5257 0.0000 +vn 0.8507 -0.5257 0.0000 +vn 0.2298 -0.9732 0.0000 +vn 0.2298 0.9732 0.0000 +vn -0.8507 -0.5257 0.0000 +vn -0.8507 0.5257 0.0000 +vn -0.2298 -0.9732 0.0000 +vn -0.2298 0.9732 0.0000 +s off +f 83/107/58 85/108/58 86/109/58 +f 99/110/59 101/111/59 94/112/59 +f 114/113/58 116/114/58 118/115/58 +f 131/116/60 134/117/60 132/118/60 +f 138/119/61 135/120/61 136/121/61 +f 134/117/59 137/122/59 138/119/59 +f 140/123/62 141/124/62 139/125/62 +f 132/126/58 135/120/58 131/127/58 +f 146/128/59 145/129/59 147/130/59 +f 140/131/58 139/132/58 149/133/58 +f 156/134/58 154/135/58 152/136/58 +f 157/137/58 151/138/58 153/139/58 +f 151/138/63 160/140/63 153/139/63 +f 158/141/60 159/142/60 151/138/60 +f 157/143/62 165/144/62 158/145/62 +f 152/136/60 164/146/60 156/147/60 +f 154/135/62 162/148/62 152/136/62 +f 153/139/61 166/149/61 157/143/61 +f 155/150/61 161/151/61 154/135/61 +f 156/152/63 163/153/63 155/150/63 +f 170/154/60 167/155/60 168/156/60 +f 171/157/61 174/158/61 172/159/61 +f 170/154/59 173/160/59 169/161/59 +f 177/162/63 176/163/63 175/164/63 +f 171/157/58 168/165/58 167/166/58 +f 184/167/59 178/168/59 183/169/59 +f 186/170/58 180/171/58 185/172/58 +f 79/173/58 84/174/58 85/108/58 +f 85/108/58 95/175/58 96/176/58 +f 96/176/58 97/177/58 85/108/58 +f 97/177/58 86/109/58 85/108/58 +f 86/109/58 87/178/58 83/107/58 +f 87/178/58 88/179/58 83/107/58 +f 88/179/58 89/180/58 83/107/58 +f 83/107/58 82/181/58 81/182/58 +f 81/182/58 80/183/58 79/173/58 +f 79/173/58 85/108/58 81/182/58 +f 81/182/58 85/108/58 83/107/58 +f 94/112/59 93/184/59 92/185/59 +f 92/185/59 91/186/59 94/112/59 +f 91/186/59 90/187/59 94/112/59 +f 90/187/59 98/188/59 99/110/59 +f 99/110/59 103/189/59 102/190/59 +f 102/190/59 100/191/59 99/110/59 +f 100/191/59 101/111/59 99/110/59 +f 101/111/59 106/192/59 94/112/59 +f 106/192/59 105/193/59 94/112/59 +f 105/193/59 104/194/59 94/112/59 +f 90/187/59 99/110/59 94/112/59 +f 118/115/58 107/195/58 108/196/58 +f 108/196/58 109/197/58 110/198/58 +f 110/198/58 111/199/58 112/200/58 +f 112/200/58 113/201/58 110/198/58 +f 113/201/58 114/113/58 110/198/58 +f 114/113/58 115/202/58 116/114/58 +f 116/114/58 117/203/58 118/115/58 +f 118/115/58 108/196/58 114/113/58 +f 108/196/58 110/198/58 114/113/58 +f 131/116/60 133/204/60 134/117/60 +f 138/119/61 137/122/61 135/120/61 +f 134/117/59 133/204/59 137/122/59 +f 140/123/62 142/205/62 141/124/62 +f 132/126/58 136/121/58 135/120/58 +f 147/130/59 141/124/59 142/205/59 +f 142/205/59 148/206/59 147/130/59 +f 148/206/59 146/128/59 147/130/59 +f 149/133/58 143/207/58 144/208/58 +f 144/208/58 150/209/58 149/133/58 +f 150/209/58 140/131/58 149/133/58 +f 156/134/58 155/210/58 154/135/58 +f 157/137/58 158/211/58 151/138/58 +f 151/138/63 159/142/63 160/140/63 +f 158/141/60 165/212/60 159/142/60 +f 157/143/62 166/149/62 165/144/62 +f 152/136/60 162/148/60 164/146/60 +f 154/135/62 161/151/62 162/148/62 +f 153/139/61 160/140/61 166/149/61 +f 155/150/61 163/153/61 161/151/61 +f 156/152/63 164/213/63 163/153/63 +f 170/154/60 169/161/60 167/155/60 +f 171/157/61 173/160/61 174/158/61 +f 170/154/59 174/158/59 173/160/59 +f 177/162/63 178/168/63 176/163/63 +f 171/157/58 172/159/58 168/165/58 +f 178/168/59 177/162/59 183/169/59 +f 183/169/59 181/214/59 182/215/59 +f 182/215/59 184/167/59 183/169/59 +f 180/171/58 179/216/58 185/172/58 +f 185/172/58 175/217/58 176/218/58 +f 176/218/58 186/170/58 185/172/58 +s 1 +f 73/219/64 67/220/65 66/221/64 +f 75/222/66 69/223/67 68/224/66 +f 76/225/67 70/226/68 69/223/67 +f 78/227/61 65/228/69 71/229/61 +f 77/230/68 71/229/61 70/226/68 +f 72/231/69 66/221/64 65/228/69 +f 87/232/69 102/233/64 88/234/64 +f 95/235/66 105/236/67 96/237/67 +f 88/234/64 103/238/65 89/239/65 +f 96/237/67 106/240/68 97/241/68 +f 97/241/68 101/242/61 86/243/61 +f 86/243/61 100/244/69 87/232/69 +f 121/245/62 110/246/70 109/247/62 +f 128/248/67 117/249/68 116/250/67 +f 130/251/61 107/252/69 118/253/61 +f 125/254/71 114/255/72 113/256/71 +f 122/257/70 111/258/73 110/246/70 +f 129/259/68 118/253/61 117/249/68 +f 119/260/69 108/261/64 107/252/69 +f 126/262/72 115/263/63 114/255/72 +f 123/264/73 112/265/60 111/258/73 +f 120/266/64 109/247/62 108/261/64 +f 127/267/63 116/250/67 115/263/63 +f 124/268/60 113/256/71 112/269/60 +f 146/128/74 143/207/75 145/129/75 +f 145/129/75 149/270/76 147/271/76 +f 142/272/61 150/273/77 148/274/77 +f 148/274/77 144/208/74 146/128/74 +f 147/271/76 139/275/60 141/276/60 +f 179/216/78 182/215/79 181/214/78 +f 185/277/80 181/214/78 183/278/80 +f 186/279/81 178/280/61 184/281/81 +f 180/171/79 184/281/81 182/215/79 +f 175/282/60 183/278/80 177/283/60 +f 73/219/64 74/284/65 67/220/65 +f 75/222/66 76/225/67 69/223/67 +f 76/225/67 77/230/68 70/226/68 +f 78/227/61 72/231/69 65/228/69 +f 77/230/68 78/227/61 71/229/61 +f 72/231/69 73/219/64 66/221/64 +f 87/232/69 100/244/69 102/233/64 +f 95/235/66 104/285/66 105/236/67 +f 88/234/64 102/233/64 103/238/65 +f 96/237/67 105/236/67 106/240/68 +f 97/241/68 106/240/68 101/242/61 +f 86/243/61 101/242/61 100/244/69 +f 121/245/62 122/257/70 110/246/70 +f 128/248/67 129/259/68 117/249/68 +f 130/251/61 119/260/69 107/252/69 +f 125/254/71 126/262/72 114/255/72 +f 122/257/70 123/264/73 111/258/73 +f 129/259/68 130/251/61 118/253/61 +f 119/260/69 120/266/64 108/261/64 +f 126/262/72 127/267/63 115/263/63 +f 123/264/73 124/286/60 112/265/60 +f 120/266/64 121/245/62 109/247/62 +f 127/267/63 128/248/67 116/250/67 +f 124/268/60 125/254/71 113/256/71 +f 146/128/74 144/208/74 143/207/75 +f 145/129/75 143/207/75 149/270/76 +f 142/272/61 140/287/61 150/273/77 +f 148/274/77 150/273/77 144/208/74 +f 147/271/76 149/270/76 139/275/60 +f 179/216/78 180/171/79 182/215/79 +f 185/277/80 179/216/78 181/214/78 +f 186/279/81 176/288/61 178/280/61 +f 180/171/79 186/279/81 184/281/81 +f 175/282/60 185/277/80 183/278/80 +o Gun v 0.000000 1.187500 4.375000 v 0.000000 1.187500 8.000000 v 0.093750 1.162380 4.375000 @@ -213,20 +1054,6 @@ v -0.250000 0.875000 1.625000 v -0.250000 1.000000 1.625000 v 0.125000 0.312500 1.375000 v -0.125000 0.312500 1.375000 -v -0.093750 1.162380 1.125000 -v -0.162380 1.093750 1.125000 -v -0.187500 1.000000 1.125000 -v 0.187500 1.000000 1.125000 -v 0.162380 1.093750 1.125000 -v 0.093750 1.162380 1.125000 -v 0.000000 1.187500 1.125000 -v -0.093750 1.162380 0.125000 -v -0.162380 1.093750 0.125000 -v -0.187500 1.000000 0.125000 -v 0.187500 1.000000 0.125000 -v 0.162380 1.093750 0.125000 -v 0.093750 1.162380 0.125000 -v 0.000000 1.187500 0.125000 v 0.187500 1.000000 1.625000 v -0.187500 1.000000 1.625000 v 0.187500 1.000000 0.125000 @@ -247,61 +1074,9 @@ v -0.125000 1.216506 -0.125000 v 0.000000 1.250000 -0.125000 v -0.216506 1.125000 -0.125000 v -0.250000 1.000000 -0.125000 -v 0.093750 0.837620 1.375000 -v 0.000000 0.812500 1.375000 -v -0.093750 0.837620 1.375000 -v -0.162380 0.906250 1.375000 -v -0.187500 1.000000 1.375000 v 0.250000 1.000000 -0.125000 v 0.216506 1.125000 -0.125000 v 0.125000 1.216506 -0.125000 -v 0.162380 0.906250 1.375000 -v 0.187500 1.000000 1.375000 -v 0.000000 1.312500 1.375000 -v -0.156250 1.270633 1.375000 -v -0.270633 1.156250 1.375000 -v -0.312500 1.000000 1.375000 -v -0.093750 0.837620 1.125000 -v 0.000000 0.812500 1.125000 -v 0.093750 0.837620 1.125000 -v 0.162380 0.906250 1.125000 -v 0.187500 1.000000 1.125000 -v 0.312500 1.000000 1.375000 -v 0.270633 1.156250 1.375000 -v 0.156250 1.270633 1.375000 -v -0.162380 0.906250 1.125000 -v -0.187500 1.000000 1.125000 -v -0.156250 1.270633 1.125000 -v 0.000000 1.312500 1.125000 -v -0.270633 1.156250 1.125000 -v -0.312500 1.000000 1.125000 -v 0.312500 1.000000 1.125000 -v 0.270633 1.156250 1.125000 -v 0.156250 1.270633 1.125000 -v -0.093750 1.162380 1.437500 -v -0.162380 1.093750 1.437500 -v -0.187500 1.000000 1.437500 -v -0.162380 0.906250 1.437500 -v -0.093750 0.837620 1.437500 -v 0.000000 0.812500 1.437500 -v 0.093750 0.837620 1.437500 -v 0.162380 0.906250 1.437500 -v 0.187500 1.000000 1.437500 -v 0.162380 1.093750 1.437500 -v 0.093750 1.162380 1.437500 -v 0.000000 1.187500 1.437500 -v -0.093750 1.162380 1.375000 -v -0.162380 1.093750 1.375000 -v -0.187500 1.000000 1.375000 -v -0.162380 0.906250 1.375000 -v -0.093750 0.837620 1.375000 -v 0.000000 0.812500 1.375000 -v 0.093750 0.837620 1.375000 -v 0.162380 0.906250 1.375000 -v 0.187500 1.000000 1.375000 -v 0.162380 1.093750 1.375000 -v 0.093750 1.162380 1.375000 -v 0.000000 1.187500 1.375000 v -0.187500 1.000000 1.437500 v -0.162380 0.906250 1.437500 v -0.093750 0.837620 1.437500 @@ -496,14 +1271,6 @@ v 0.250000 0.156350 4.656250 v 0.250000 0.218850 4.656250 v 0.250000 0.156350 4.593750 v 0.250000 0.218850 4.593750 -v 0.125000 1.000000 1.125000 -v 0.500000 1.000000 1.125000 -v 0.125000 1.000000 1.000000 -v 0.500000 1.000000 1.000000 -v 0.125000 1.062500 1.125000 -v 0.500000 1.062500 1.125000 -v 0.125000 1.062500 1.000000 -v 0.500000 1.062500 1.000000 v 0.312500 1.000000 1.250000 v 0.312500 0.875000 1.250000 v 0.312500 1.000000 -0.875000 @@ -512,18 +1279,6 @@ v 0.437500 0.875000 1.250000 v 0.437500 1.000000 1.250000 v 0.437500 0.875000 0.000000 v 0.437500 1.000000 0.000000 -v 0.500000 0.906250 1.125000 -v 0.500000 1.156250 1.125000 -v 0.500000 0.906250 1.000000 -v 0.500000 1.156250 1.000000 -v 0.750000 0.968750 1.125000 -v 0.750000 1.093750 1.125000 -v 0.750000 0.968750 1.000000 -v 0.750000 1.093750 1.000000 -v 0.625000 0.906250 1.000000 -v 0.625000 1.156250 1.000000 -v 0.625000 0.906250 1.125000 -v 0.625000 1.156250 1.125000 v 0.687500 0.875000 0.000000 v 0.687500 1.000000 0.000000 v 0.562500 0.875000 -0.500000 @@ -602,22 +1357,6 @@ v -0.250000 0.562500 -8.000000 v -0.125000 0.562500 -8.125000 v 0.312500 0.875000 -1.000000 v -0.312500 0.875000 -1.000000 -v 0.250000 1.000000 3.500000 -v -0.250000 1.000000 3.500000 -v 0.250000 1.125000 3.500000 -v -0.250000 1.125000 3.500000 -v -0.187500 1.125000 3.500000 -v -0.187500 1.000000 3.500000 -v 0.187500 1.125000 3.500000 -v 0.187500 1.000000 3.500000 -v 0.250000 1.000000 1.375000 -v 0.250000 1.125000 1.375000 -v -0.250000 1.125000 1.375000 -v -0.250000 1.000000 1.375000 -v -0.187500 1.125000 1.375000 -v -0.187500 1.000000 1.375000 -v 0.187500 1.000000 1.375000 -v 0.187500 1.125000 1.375000 v 0.312500 1.000000 -1.000000 v -0.312500 1.000000 -1.000000 v 0.312500 1.000000 -0.125000 @@ -716,70 +1455,6 @@ v -0.250000 1.437500 -0.625000 v -0.250000 1.525888 -0.588388 v -0.250000 1.562500 -0.500000 v -0.250000 1.525888 -0.411612 -v 0.187500 0.875000 1.125000 -v -0.187500 0.875000 1.125000 -v 0.187500 0.875000 0.125000 -v -0.187500 0.875000 0.125000 -v -0.187500 -1.375000 1.125000 -v 0.187500 -1.375000 1.125000 -v -0.187500 -1.375000 0.125000 -v 0.187500 -1.375000 0.125000 -v 0.000000 1.000000 0.187500 -v -0.062500 0.983253 0.187500 -v -0.108253 0.937500 0.187500 -v -0.125000 0.875000 0.187500 -v -0.108253 0.812500 0.187500 -v -0.062500 0.766747 0.187500 -v 0.000000 0.750000 0.187500 -v 0.062500 0.766747 0.187500 -v 0.108253 0.812500 0.187500 -v 0.125000 0.875000 0.187500 -v 0.108253 0.937500 0.187500 -v 0.062500 0.983253 0.187500 -v 0.000000 1.000000 0.812500 -v -0.062500 0.983253 0.812500 -v -0.108253 0.937500 0.812500 -v -0.125000 0.875000 0.812500 -v -0.108253 0.812500 0.812500 -v -0.062500 0.766747 0.812500 -v 0.000000 0.750000 0.812500 -v 0.062500 0.766747 0.812500 -v 0.108253 0.812500 0.812500 -v 0.125000 0.875000 0.812500 -v 0.108253 0.937500 0.812500 -v 0.062500 0.983253 0.812500 -v 0.000000 0.968750 1.000000 -v -0.046875 0.956190 1.000000 -v -0.081190 0.921875 1.000000 -v -0.093750 0.875000 1.000000 -v -0.081190 0.828125 1.000000 -v -0.046875 0.793810 1.000000 -v 0.000000 0.781250 1.000000 -v 0.046875 0.793810 1.000000 -v 0.081190 0.828125 1.000000 -v 0.093750 0.875000 1.000000 -v 0.081190 0.921875 1.000000 -v 0.046875 0.956190 1.000000 -v 0.000000 0.906250 1.062500 -v -0.015625 0.902063 1.062500 -v -0.027063 0.890625 1.062500 -v -0.031250 0.875000 1.062500 -v -0.027063 0.859375 1.062500 -v -0.015625 0.847937 1.062500 -v 0.000000 0.843750 1.062500 -v 0.015625 0.847937 1.062500 -v 0.027063 0.859375 1.062500 -v 0.031250 0.875000 1.062500 -v 0.027063 0.890625 1.062500 -v 0.015625 0.902063 1.062500 -v -0.125000 0.875000 1.125000 -v -0.062500 0.750000 1.125000 -v 0.062500 0.750000 1.125000 -v 0.125000 0.875000 1.125000 -v -0.125000 0.875000 0.125000 -v -0.062500 0.750000 0.125000 -v 0.062500 0.750000 0.125000 -v 0.125000 0.875000 0.125000 v -0.125000 0.250000 0.000000 v 0.125000 0.250000 0.000000 v -0.125000 0.250000 -0.750000 @@ -924,26 +1599,6 @@ v -0.687500 0.875000 0.000000 v -0.687500 1.000000 0.000000 v -0.562500 0.875000 -0.500000 v -0.562500 1.000000 -0.500000 -v -0.125000 1.000000 1.125000 -v -0.500000 1.000000 1.125000 -v -0.125000 1.000000 1.000000 -v -0.500000 1.000000 1.000000 -v -0.125000 1.062500 1.125000 -v -0.500000 1.062500 1.125000 -v -0.125000 1.062500 1.000000 -v -0.500000 1.062500 1.000000 -v -0.500000 0.906250 1.125000 -v -0.500000 1.156250 1.125000 -v -0.500000 0.906250 1.000000 -v -0.500000 1.156250 1.000000 -v -0.750000 0.968750 1.125000 -v -0.750000 1.093750 1.125000 -v -0.750000 0.968750 1.000000 -v -0.750000 1.093750 1.000000 -v -0.625000 0.906250 1.000000 -v -0.625000 1.156250 1.000000 -v -0.625000 0.906250 1.125000 -v -0.625000 1.156250 1.125000 vt 0.062271 0.065217 vt 0.058608 0.043478 vt 0.062271 0.043478 @@ -1139,15 +1794,6 @@ vt 0.131868 0.543478 vt 0.723636 0.674017 vt 0.748892 0.674017 vt 0.736264 0.738921 -vt 0.022092 0.858808 -vt 0.043842 0.858808 -vt 0.032967 0.912594 -vt 0.043736 0.945870 -vt 0.032967 0.999130 -vt 0.022198 0.945870 -vt 0.690786 0.755520 -vt 0.690786 0.787959 -vt 0.681319 0.804179 vt 0.886447 0.858696 vt 0.879121 0.869565 vt 0.879121 0.858696 @@ -1231,7 +1877,7 @@ vt 0.267399 0.880435 vt 0.267399 0.847826 vt 0.285714 0.913043 vt 0.285714 0.902174 -vt 0.293040 0.902174 +vt 0.289377 0.902174 vt 0.271062 0.902174 vt 0.311355 0.880435 vt 0.300366 0.902174 @@ -1353,18 +1999,6 @@ vt 0.307692 0.815217 vt 0.278388 0.847826 vt 0.307692 0.826087 vt 0.197802 0.434783 -vt 0.886447 0.673913 -vt 0.864469 0.695652 -vt 0.864469 0.673913 -vt 0.864469 0.706522 -vt 0.886447 0.728261 -vt 0.864469 0.728261 -vt 0.886447 0.706522 -vt 0.930403 0.750000 -vt 0.923077 0.706522 -vt 0.930403 0.706522 -vt 0.864469 0.739130 -vt 0.886447 0.739130 vt 0.842491 0.630435 vt 0.915751 0.652174 vt 0.842491 0.652174 @@ -1377,12 +2011,6 @@ vt 0.842491 0.652174 vt 0.901099 0.586957 vt 0.915751 0.608696 vt 0.901099 0.608696 -vt 0.908425 0.739130 -vt 0.908425 0.717391 -vt 0.915751 0.706522 -vt 0.886447 0.750000 -vt 0.886447 0.706522 -vt 0.893773 0.706522 vt 0.945055 0.630435 vt 0.967033 0.673913 vt 0.945055 0.630435 @@ -1410,26 +2038,6 @@ vt 0.864469 0.673913 vt 0.864469 0.684783 vt 0.864469 0.695652 vt 0.183150 0.630435 -vt 0.000000 0.815217 -vt 0.003663 0.793478 -vt 0.003663 0.815217 -vt 0.000000 0.728261 -vt 0.003663 0.706522 -vt 0.003663 0.728261 -vt 0.128205 0.728261 -vt 0.003663 0.695652 -vt 0.128205 0.706522 -vt 0.003663 0.739130 -vt 0.128205 0.760870 -vt 0.003663 0.760870 -vt 0.128205 0.826087 -vt 0.003663 0.826087 -vt 0.128205 0.815217 -vt 0.128205 0.739130 -vt 0.003663 0.782609 -vt 0.128205 0.793478 -vt 0.003663 0.760870 -vt 0.128205 0.782609 vt 0.216117 0.282609 vt 0.260073 0.304348 vt 0.216117 0.304348 @@ -1520,31 +2128,6 @@ vt 0.832911 0.593645 vt 0.832911 0.637123 vt 0.832911 0.667225 vt 0.822767 0.667225 -vt 0.450549 0.989130 -vt 0.391941 1.000000 -vt 0.391941 0.989130 -vt 0.391941 0.456522 -vt 0.450549 0.521739 -vt 0.391941 0.521739 -vt 0.391941 0.913043 -vt 0.450549 0.913043 -vt 0.369963 0.913043 -vt 0.369963 0.913043 -vt 0.472527 0.913043 -vt 0.531136 0.521739 -vt 0.531136 0.913043 -vt 0.472527 0.521739 -vt 0.450549 0.913043 -vt 0.450549 0.913043 -vt 0.107288 0.837093 -vt 0.113553 0.826359 -vt 0.119818 0.858560 -vt 0.391941 0.923913 -vt 0.450549 0.923913 -vt 0.391941 0.945652 -vt 0.450549 0.967391 -vt 0.391941 0.967391 -vt 0.450549 0.945652 vt 0.670330 0.652174 vt 0.626374 0.695652 vt 0.626374 0.652174 @@ -1686,25 +2269,6 @@ vt 0.901099 0.586957 vt 0.901099 0.608696 vt 0.945055 0.630435 vt 0.945055 0.630435 -vt 0.864469 0.695652 -vt 0.886447 0.673913 -vt 0.864469 0.673913 -vt 0.886447 0.728261 -vt 0.864469 0.706522 -vt 0.864469 0.728261 -vt 0.886447 0.706522 -vt 0.886447 0.695652 -vt 0.923077 0.706522 -vt 0.930403 0.750000 -vt 0.930403 0.706522 -vt 0.864469 0.739130 -vt 0.886447 0.739130 -vt 0.915751 0.750000 -vt 0.923077 0.750000 -vt 0.915751 0.706522 -vt 0.893773 0.750000 -vt 0.901099 0.739130 -vt 0.893773 0.706522 vt 0.058608 0.054348 vt 0.058608 0.097826 vt 0.058608 0.141304 @@ -1758,37 +2322,6 @@ vt 0.743554 0.658180 vt 0.750845 0.695652 vt 0.748892 0.717287 vt 0.743554 0.733124 -vt 0.038405 0.830860 -vt 0.042385 0.842672 -vt 0.051093 0.858808 -vt 0.048664 0.885701 -vt 0.042030 0.905388 -vt 0.023904 0.905388 -vt 0.017270 0.885701 -vt 0.014841 0.858808 -vt 0.023549 0.842672 -vt 0.027529 0.830860 -vt 0.032967 0.826536 -vt 0.023641 0.929891 -vt 0.027582 0.918194 -vt 0.032967 0.913913 -vt 0.038352 0.918194 -vt 0.042293 0.929891 -vt 0.050916 0.945870 -vt 0.048511 0.972500 -vt 0.041941 0.991995 -vt 0.023993 0.991995 -vt 0.017423 0.972500 -vt 0.015018 0.945870 -vt 0.675853 0.799833 -vt 0.671852 0.787959 -vt 0.670387 0.771739 -vt 0.671852 0.755520 -vt 0.675853 0.743646 -vt 0.681319 0.739300 -vt 0.686785 0.743646 -vt 0.692251 0.771739 -vt 0.686785 0.799833 vt 0.923077 0.858696 vt 0.901099 0.782609 vt 0.267399 0.934783 @@ -1799,7 +2332,7 @@ vt 0.930403 0.771739 vt 0.996337 0.858696 vt 0.945055 0.880435 vt 0.278388 0.913043 -vt 0.296703 0.902174 +vt 0.293040 0.902174 vt 0.274725 0.902174 vt 0.307692 0.902174 vt 0.608059 0.826087 @@ -1822,24 +2355,14 @@ vt 0.307692 0.728261 vt 0.274725 0.815217 vt 0.307692 0.847826 vt 0.043956 0.434783 -vt 0.886447 0.695652 -vt 0.923077 0.750000 vt 0.915751 0.630435 vt 0.835165 0.652174 vt 0.915751 0.586957 -vt 0.915751 0.750000 -vt 0.901099 0.717391 -vt 0.901099 0.739130 -vt 0.893773 0.750000 vt 0.915751 0.608696 vt 0.842491 0.695652 vt 0.043956 0.586957 vt 0.197802 0.586957 vt 0.043956 0.543478 -vt -0.000000 0.793478 -vt 0.000000 0.706522 -vt 0.128205 0.695652 -vt 0.128205 0.760870 vt 0.208791 0.282609 vt 0.208791 0.391304 vt 0.772894 0.771739 @@ -1877,23 +2400,6 @@ vt 0.822767 0.637123 vt 0.827839 0.630889 vt 0.835012 0.652174 vt 0.827839 0.673459 -vt 0.450549 1.000000 -vt 0.450549 0.456522 -vt 0.369963 0.913043 -vt 0.369963 0.913043 -vt 0.369963 0.521739 -vt 0.369963 0.913043 -vt 0.450549 0.913043 -vt 0.450549 0.913043 -vt 0.117170 0.866417 -vt 0.107288 0.858560 -vt 0.113553 0.869293 -vt 0.109936 0.866417 -vt 0.106319 0.847826 -vt 0.109936 0.829235 -vt 0.117170 0.829235 -vt 0.119818 0.837092 -vt 0.120788 0.847826 vt 0.772894 0.586957 vt 0.750916 0.630435 vt 0.728938 0.586957 @@ -1922,11 +2428,6 @@ vt 0.835165 0.652174 vt 0.842491 0.652174 vt 0.915751 0.586957 vt 0.915751 0.608696 -vt 0.908425 0.717391 -vt 0.908425 0.739130 -vt 0.901099 0.717391 -vt 0.886447 0.706522 -vt 0.886447 0.750000 vt 0.274725 0.108696 vt 0.274725 0.130435 vt 0.274725 0.086957 @@ -1998,19 +2499,6 @@ vt 0.611722 0.782609 vt 0.611722 0.978261 vt 0.611722 0.913043 vt 0.611722 0.804348 -vt 0.263736 0.804348 -vt 0.205128 0.826087 -vt 0.205128 0.804348 -vt 0.263736 0.695652 -vt 0.205128 0.717391 -vt 0.205128 0.695652 -vt 0.263736 0.717391 -vt 0.205128 0.739130 -vt 0.263736 0.760870 -vt 0.205128 0.782609 -vt 0.205128 0.760870 -vt 0.263736 0.739130 -vt 0.263736 0.782609 vt 0.706960 0.760870 vt 0.721612 0.782609 vt 0.706960 0.782609 @@ -2024,44 +2512,6 @@ vt 0.721612 0.739130 vt 0.706960 0.739130 vt 0.721612 0.717391 vt 0.721612 0.760870 -vt -0.000000 0.913043 -vt 0.014652 0.934783 -vt -0.000000 0.934783 -vt -0.000000 0.826087 -vt 0.014652 0.847826 -vt -0.000000 0.847826 -vt 0.014652 0.956522 -vt -0.000000 0.956522 -vt 0.014652 0.869565 -vt -0.000000 0.869565 -vt 0.014652 0.891304 -vt -0.000000 0.891304 -vt 0.014652 0.913043 -vt 0.670330 0.934783 -vt 0.666667 0.956522 -vt 0.666667 0.934783 -vt 0.670330 0.826087 -vt 0.666667 0.847826 -vt 0.666667 0.826087 -vt 0.670330 0.869565 -vt 0.666667 0.891304 -vt 0.666667 0.869565 -vt 0.670330 0.760870 -vt 0.666667 0.782609 -vt 0.666667 0.760870 -vt 0.670330 0.956522 -vt 0.666667 0.978261 -vt 0.670330 0.847826 -vt 0.670330 0.891304 -vt 0.666667 0.913043 -vt 0.670330 0.782609 -vt 0.666667 0.804348 -vt 0.670330 0.978261 -vt 0.666667 1.000000 -vt 0.670330 0.913043 -vt 0.670330 0.804348 -vt 0.670330 0.739130 -vt 0.666667 0.739130 vt 0.128205 0.739130 vt 0.205128 0.760870 vt 0.128205 0.760870 @@ -2090,13 +2540,6 @@ vt 0.608059 0.804348 vt 0.611722 0.782609 vt 0.611722 0.804348 vt 0.611722 0.673913 -vt 0.901099 0.695652 -vt 0.908425 0.695652 -vt 0.908425 0.782609 -vt 0.901099 0.760870 -vt 0.908425 0.760870 -vt 0.901099 0.673913 -vt 0.908425 0.673913 vt 0.945055 0.608696 vt 0.945055 0.586957 vt 0.967033 0.608696 @@ -2247,60 +2690,6 @@ vt 0.820513 0.760870 vt 0.816850 0.739130 vt 0.820513 0.739130 vt 0.816850 0.717391 -vt 0.106227 0.836957 -vt 0.069597 0.826087 -vt 0.106227 0.826087 -vt 0.106227 0.934783 -vt 0.069597 0.923913 -vt 0.106227 0.923913 -vt 0.106227 0.880435 -vt 0.069597 0.869565 -vt 0.106227 0.869565 -vt 0.106227 0.902174 -vt 0.069597 0.891304 -vt 0.106227 0.891304 -vt 0.106227 0.847826 -vt 0.069597 0.836957 -vt 0.106227 0.945652 -vt 0.069597 0.934783 -vt 0.069597 0.880435 -vt 0.106227 0.913043 -vt 0.069597 0.902174 -vt 0.106227 0.858696 -vt 0.069597 0.847826 -vt 0.106227 0.956522 -vt 0.069597 0.945652 -vt 0.069597 0.913043 -vt 0.069597 0.858696 -vt 0.058608 0.945652 -vt 0.058608 0.934783 -vt 0.058608 0.891304 -vt 0.058608 0.880435 -vt 0.058608 0.913043 -vt 0.058608 0.902174 -vt 0.058608 0.858696 -vt 0.058608 0.847826 -vt 0.069597 0.956522 -vt 0.058608 0.923913 -vt 0.058608 0.836957 -vt 0.058608 0.826087 -vt 0.058608 0.869565 -vt 0.054945 0.945652 -vt 0.054945 0.934783 -vt 0.054945 0.891304 -vt 0.054945 0.880435 -vt 0.054945 0.913043 -vt 0.054945 0.902174 -vt 0.054945 0.847826 -vt 0.058608 0.956522 -vt 0.054945 0.869565 -vt 0.054945 0.858696 -vt 0.054945 0.836957 -vt 0.054945 0.826087 -vt 0.054945 0.923913 -vt 0.053164 0.826561 -vt 0.054593 0.829009 -vt 0.053164 0.836354 vt 0.750916 0.652174 vt 0.692308 0.652174 vt 0.688645 0.652174 @@ -2367,13 +2756,6 @@ vt 0.318681 0.358696 vt 0.945055 0.608696 vt 0.967033 0.608696 vt 0.945055 0.586957 -vt 0.901099 0.695652 -vt 0.908425 0.695652 -vt 0.901099 0.760870 -vt 0.908425 0.782609 -vt 0.908425 0.760870 -vt 0.901099 0.673913 -vt 0.908425 0.673913 vt -0.000000 0.206522 vt 0.000000 0.097826 vt -0.000000 0.141304 @@ -2402,13 +2784,9 @@ vt 0.652015 0.869565 vt 0.652015 0.760870 vt 0.652015 0.956522 vt 0.611722 1.000000 -vt 0.263736 0.826087 vt 0.706960 0.652174 -vt 0.014652 0.826087 -vt 0.670330 1.000000 vt 0.205128 0.695652 vt 0.608059 0.782609 -vt 0.901099 0.782609 vt 0.967033 0.586957 vt 0.663004 0.521739 vt 0.663004 0.500000 @@ -2420,16 +2798,6 @@ vt 0.963370 0.086957 vt 0.824176 0.673913 vt 0.816850 0.760870 vt 0.816850 0.760870 -vt 0.054945 0.956522 -vt 0.052339 0.835698 -vt 0.051735 0.829009 -vt 0.051735 0.833906 -vt 0.051514 0.831457 -vt 0.052339 0.827217 -vt 0.053989 0.827217 -vt 0.054814 0.831457 -vt 0.054593 0.833906 -vt 0.053989 0.835698 vt 0.772894 0.652174 vt 0.728938 0.652174 vt 0.677656 0.652174 @@ -2443,7 +2811,6 @@ vt 0.523810 0.358696 vt 0.531136 0.423913 vt 0.531136 0.456522 vt 0.967033 0.586957 -vt 0.901099 0.782609 vn 0.0000 0.0000 1.0000 vn 0.0000 0.0000 -1.0000 vn -1.0000 0.0000 0.0000 @@ -2526,10 +2893,6 @@ vn 0.3535 -0.6124 -0.7071 vn -0.3057 -0.7078 -0.6369 vn -0.0407 -0.7592 -0.6496 vn 0.7768 0.6297 0.0000 -vn 0.8507 0.5257 0.0000 -vn 0.8507 -0.5257 0.0000 -vn 0.2298 -0.9732 0.0000 -vn 0.2298 0.9732 0.0000 vn 0.9701 0.0000 -0.2425 vn 0.9145 0.0000 -0.4046 vn 0.8321 0.0000 -0.5547 @@ -2595,42 +2958,6 @@ vn -0.8727 0.2257 -0.4330 vn -0.9808 0.1951 0.0000 vn 0.9808 0.1951 0.0000 vn 0.0000 0.7071 0.7071 -vn -0.0000 -0.9967 0.0814 -vn -0.9967 0.0000 0.0814 -vn 0.8632 0.4983 0.0814 -vn 0.0000 0.9967 0.0814 -vn 0.4983 -0.8632 0.0814 -vn -0.8632 -0.4983 0.0814 -vn 0.4983 0.8632 0.0814 -vn -0.4983 0.8632 0.0814 -vn 0.8632 -0.4983 0.0814 -vn -0.4983 -0.8632 0.0814 -vn -0.8632 0.4983 0.0814 -vn 0.9967 -0.0000 0.0814 -vn -0.4494 -0.7784 0.4382 -vn -0.7784 -0.4494 0.4382 -vn 0.0000 0.8989 0.4382 -vn 0.4494 0.7784 0.4382 -vn -0.7784 0.4494 0.4382 -vn -0.4494 0.7784 0.4382 -vn 0.8989 -0.0000 0.4382 -vn 0.7784 -0.4494 0.4382 -vn -0.8989 0.0000 0.4382 -vn 0.4494 -0.7784 0.4382 -vn 0.0000 -0.8989 0.4382 -vn 0.7784 0.4494 0.4382 -vn -0.2172 -0.3762 0.9007 -vn -0.3762 -0.2172 0.9007 -vn 0.0000 0.4344 0.9007 -vn 0.2172 0.3762 0.9007 -vn -0.3762 0.2172 0.9007 -vn -0.2172 0.3762 0.9007 -vn 0.3762 -0.2172 0.9007 -vn 0.3762 0.2172 0.9007 -vn 0.4344 0.0000 0.9007 -vn 0.2172 -0.3762 0.9007 -vn 0.0000 -0.4344 0.9007 -vn -0.4344 0.0000 0.9007 vn 0.0000 -0.3827 -0.9239 vn 0.0000 -0.9239 -0.3827 vn 0.0000 -0.9239 0.3827 @@ -2661,1489 +2988,1207 @@ vn -0.9761 -0.2175 0.0000 vn -0.9145 0.0000 -0.4046 vn -0.9701 0.0000 -0.2425 vn -0.8321 0.0000 -0.5547 -vn -0.8507 -0.5257 0.0000 -vn -0.8507 0.5257 0.0000 -vn -0.2298 -0.9732 0.0000 -vn -0.2298 0.9732 0.0000 vn -0.3536 -0.6124 -0.7071 vn -0.4000 -0.6928 -0.6000 vn -0.8727 -0.4330 -0.2257 vn 0.9732 0.2298 0.0000 s off -f 8/1/1 33/2/1 10/3/1 -f 8/1/1 35/4/1 34/5/1 -f 4/6/1 35/7/1 6/8/1 -f 4/6/1 25/9/1 36/10/1 -f 24/11/1 25/12/1 2/13/1 -f 24/11/1 27/14/1 26/15/1 -f 22/16/1 28/17/1 27/18/1 -f 20/19/1 29/20/1 28/21/1 -f 18/22/1 30/23/1 29/24/1 -f 14/25/1 30/26/1 16/27/1 -f 14/28/1 32/29/1 31/30/1 -f 10/3/1 32/31/1 12/32/1 -f 43/33/1 45/34/1 38/35/1 -f 60/36/1 55/37/1 181/38/1 -f 53/39/1 72/40/1 184/41/1 -f 52/42/1 55/43/1 50/44/1 -f 79/45/2 69/46/2 78/47/2 -f 51/48/2 81/49/2 70/50/2 -f 56/51/2 58/52/2 77/53/2 -f 104/54/2 92/55/2 95/56/2 -f 49/57/2 54/58/2 51/48/2 -f 183/59/1 71/60/1 68/61/1 -f 83/62/1 65/63/1 67/64/1 -f 61/65/2 74/66/2 73/67/2 -f 183/68/1 66/69/1 82/70/1 -f 58/52/2 76/71/2 77/72/2 -f 57/73/2 75/74/2 76/71/2 -f 184/75/1 71/60/1 182/76/1 -f 83/77/1 59/78/1 84/79/1 -f 62/80/2 79/81/2 74/66/2 -f 181/82/1 59/78/1 60/36/1 -f 85/83/1 102/84/1 87/85/1 -f 91/86/1 108/87/1 93/88/1 -f 86/89/1 107/90/1 91/86/1 -f 112/91/2 99/92/2 100/93/2 -f 98/94/2 112/91/2 100/93/2 -f 90/95/1 108/87/1 106/96/1 -f 111/97/2 94/98/2 99/92/2 -f 115/99/2 97/100/2 96/101/2 -f 89/102/1 113/103/1 88/104/1 -f 116/105/2 98/106/2 97/100/2 -f 90/107/1 114/108/1 89/102/1 -f 94/109/2 104/54/2 95/56/2 -f 86/110/1 102/84/1 105/111/1 -f 884/112/1 881/113/1 886/114/1 -f 143/115/2 155/116/2 154/117/2 -f 133/118/2 155/116/2 144/119/2 -f 133/120/2 145/121/2 156/122/2 -f 135/123/2 145/121/2 134/124/2 -f 136/125/2 146/126/2 135/127/2 -f 137/128/2 147/129/2 136/130/2 -f 138/131/2 148/132/2 137/133/2 -f 138/134/2 150/135/2 149/136/2 -f 140/137/2 150/138/2 139/139/2 -f 140/140/2 152/141/2 151/142/2 -f 141/143/2 153/144/2 152/141/2 -f 143/145/2 153/144/2 142/146/2 -f 69/46/2 81/147/2 78/47/2 -f 82/70/1 65/63/1 80/148/1 -f 75/149/2 61/65/2 73/67/2 -f 167/150/2 163/151/2 159/152/2 -f 193/153/3 201/154/3 192/155/3 -f 191/156/4 199/157/4 190/158/4 -f 189/159/5 197/160/5 188/161/5 -f 192/155/6 200/162/6 191/163/6 -f 190/158/7 198/164/7 189/159/7 -f 202/165/2 197/166/2 199/167/2 -f 197/166/8 601/168/8 600/169/8 -f 600/169/2 196/170/2 186/171/2 -f 188/172/1 206/173/1 189/174/1 -f 187/175/9 205/176/9 188/172/9 -f 185/177/1 204/178/1 187/175/1 -f 194/179/1 210/180/1 195/181/1 -f 193/182/9 209/183/9 194/179/9 -f 193/182/1 207/184/1 208/185/1 -f 190/186/1 212/187/1 191/188/1 -f 212/187/1 192/189/1 191/188/1 -f 189/174/1 211/190/1 190/186/1 -f 185/177/10 186/171/10 229/191/10 -f 186/171/10 230/192/10 229/191/10 -f 235/193/1 239/194/1 231/195/1 -f 251/196/1 256/197/1 257/198/1 -f 270/199/2 272/200/2 265/201/2 -f 285/202/1 287/203/1 289/204/1 -f 340/205/2 360/206/2 341/207/2 -f 339/208/2 361/209/2 340/205/2 -f 338/210/2 362/211/2 339/208/2 -f 338/210/2 364/212/2 363/213/2 -f 337/214/2 365/215/2 364/212/2 -f 336/216/2 366/217/2 365/215/2 -f 317/218/1 359/219/1 316/220/1 -f 318/221/1 358/222/1 317/218/1 -f 319/223/1 357/224/1 318/221/1 -f 355/225/1 319/223/1 320/226/1 -f 354/227/1 320/226/1 321/228/1 -f 353/229/1 321/228/1 322/230/1 -f 353/229/1 349/231/1 347/232/1 -f 347/233/11 378/234/11 346/235/11 -f 350/236/2 360/206/2 346/237/2 -f 351/238/12 374/239/12 352/240/12 -f 366/217/2 352/240/2 345/241/2 -f 351/238/1 359/219/1 348/242/1 -f 391/243/1 382/244/1 389/245/1 -f 377/246/10 375/247/10 376/248/10 -f 379/249/10 373/250/10 380/251/10 -f 350/236/2 378/252/2 377/246/2 -f 348/253/13 379/249/13 380/251/13 -f 350/236/14 376/248/14 349/231/14 -f 351/238/15 380/254/15 373/250/15 -f 352/240/16 379/255/16 345/241/16 -f 349/231/1 375/256/1 347/232/1 -f 389/257/3 384/258/3 390/259/3 -f 392/260/10 389/245/10 390/261/10 -f 389/262/1 382/263/1 353/229/1 -f 384/258/10 347/233/10 346/235/10 -f 390/264/2 384/265/2 346/237/2 -f 387/266/2 390/261/2 381/267/2 -f 391/268/1 385/269/1 348/242/1 -f 391/270/5 388/271/5 385/272/5 -f 392/273/2 387/274/2 366/217/2 -f 385/272/10 345/275/10 348/253/10 -f 397/276/17 404/277/17 400/278/17 -f 395/279/3 398/280/3 396/281/3 -f 394/282/5 400/278/5 393/283/5 -f 396/281/2 397/276/2 394/282/2 -f 393/283/1 399/284/1 395/285/1 -f 402/286/10 404/277/10 401/287/10 -f 398/280/18 401/288/18 397/276/18 -f 400/278/19 403/289/19 399/284/19 -f 399/290/20 402/291/20 398/280/20 -f 369/292/2 411/293/2 410/294/2 -f 368/295/2 410/294/2 409/296/2 -f 368/297/2 408/298/2 367/299/2 -f 367/299/2 407/300/2 344/301/2 -f 333/302/1 417/303/1 332/304/1 -f 415/305/1 333/302/1 334/306/1 -f 414/307/1 334/306/1 323/308/1 -f 324/309/1 414/307/1 323/308/1 -f 325/310/1 425/311/1 324/309/1 -f 326/312/1 424/313/1 325/310/1 -f 327/314/1 423/315/1 326/312/1 -f 328/316/1 422/317/1 327/314/1 -f 329/318/1 421/319/1 328/316/1 -f 419/320/1 329/321/1 330/322/1 -f 418/323/1 330/322/1 331/324/1 -f 417/303/1 331/324/1 332/304/1 -f 428/325/2 431/326/2 427/327/2 -f 427/327/2 432/328/2 426/329/2 -f 430/330/2 432/328/2 434/331/2 -f 429/332/2 434/331/2 435/333/2 -f 372/334/21 435/335/21 413/336/21 -f 405/337/22 428/325/22 342/338/22 -f 441/339/2 446/340/2 445/341/2 -f 441/339/2 444/342/2 442/343/2 -f 442/343/2 443/344/2 436/345/2 -f 437/346/2 443/344/2 449/347/2 -f 438/348/2 449/347/2 448/349/2 -f 439/350/2 448/349/2 447/351/2 -f 455/352/1 460/353/1 454/354/1 -f 457/355/1 455/352/1 456/356/1 -f 458/357/1 456/356/1 451/358/1 -f 450/359/1 458/357/1 451/358/1 -f 452/360/1 463/361/1 450/359/1 -f 453/362/1 462/363/1 452/360/1 -f 482/364/23 484/365/23 480/366/23 -f 470/367/23 472/368/23 468/369/23 -f 467/370/2 469/371/2 471/372/2 -f 464/373/5 469/371/5 465/374/5 -f 466/375/1 468/369/1 464/373/1 -f 467/370/3 470/376/3 466/377/3 -f 472/378/4 475/379/4 473/380/4 -f 471/372/3 474/381/3 470/376/3 -f 469/371/24 475/382/24 471/372/24 -f 468/369/5 473/380/5 469/371/5 -f 477/383/2 483/384/2 479/385/2 -f 476/386/5 481/387/5 477/383/5 -f 476/388/1 482/364/1 480/366/1 -f 479/385/3 482/364/3 478/389/3 -f 484/390/4 487/391/4 485/392/4 -f 483/384/3 486/393/3 482/364/3 -f 481/387/24 487/394/24 483/384/24 -f 480/395/5 485/396/5 481/387/5 -f 489/397/3 490/398/3 488/399/3 -f 491/400/2 494/401/2 490/402/2 -f 495/403/5 492/404/5 494/405/5 -f 493/406/1 488/399/1 492/404/1 -f 494/401/4 488/407/4 490/402/4 -f 491/400/10 493/406/10 495/408/10 -f 197/160/5 600/409/5 186/171/5 -f 496/410/4 499/411/4 497/412/4 -f 503/413/10 500/414/10 501/415/10 -f 499/411/2 502/416/2 503/413/2 -f 513/417/3 514/418/3 512/419/3 -f 497/420/1 500/414/1 496/421/1 -f 508/422/5 511/423/5 509/424/5 -f 504/425/10 511/423/10 506/426/10 -f 505/427/1 509/424/1 504/425/1 -f 505/428/4 510/429/4 508/430/4 -f 510/431/1 525/432/1 511/433/1 -f 519/434/2 518/435/2 520/436/2 -f 513/437/1 512/438/1 522/439/1 -f 526/440/4 510/429/4 507/441/4 -f 511/423/10 527/442/10 506/426/10 -f 528/443/1 531/444/1 529/445/1 -f 535/446/2 532/447/2 533/448/2 -f 531/444/3 533/449/3 529/450/3 -f 528/451/25 534/452/25 530/453/25 -f 531/444/10 534/452/10 535/446/10 -f 539/454/1 536/455/1 537/456/1 -f 540/457/2 543/458/2 541/459/2 -f 541/460/5 539/454/5 537/461/5 -f 542/462/26 536/463/26 538/464/26 -f 539/454/10 542/462/10 538/465/10 -f 193/153/3 196/170/3 202/466/3 -f 210/180/10 230/192/10 195/181/10 -f 607/467/1 605/468/1 603/469/1 -f 608/470/1 602/471/1 604/472/1 -f 602/471/5 611/473/5 604/472/5 -f 609/474/4 610/475/4 602/471/4 -f 608/476/3 616/477/3 609/478/3 -f 603/469/4 615/479/4 607/480/4 -f 605/468/3 613/481/3 603/469/3 -f 604/472/10 617/482/10 608/476/10 -f 606/483/10 612/484/10 605/468/10 -f 607/485/5 614/486/5 606/483/5 -f 624/487/27 626/488/27 628/489/27 -f 618/490/5 624/487/5 620/491/5 -f 633/492/4 630/493/4 631/494/4 -f 621/495/3 623/496/3 619/497/3 -f 619/498/2 622/499/2 618/500/2 -f 629/501/10 626/488/10 627/502/10 -f 625/503/28 627/502/28 623/496/28 -f 623/496/29 626/488/29 622/499/29 -f 621/504/1 620/505/1 628/489/1 -f 636/506/10 639/507/10 637/508/10 -f 632/509/5 634/510/5 630/493/5 -f 639/511/2 640/512/2 632/509/2 -f 636/506/1 635/513/1 631/494/1 -f 632/509/2 637/514/2 639/511/2 -f 635/515/3 633/492/3 631/494/3 -f 636/516/30 641/517/30 635/518/30 -f 637/508/5 642/519/5 636/506/5 -f 634/520/30 643/521/30 638/522/30 -f 639/507/3 638/523/3 643/524/3 -f 641/517/2 637/514/2 633/492/2 -f 649/525/1 658/526/1 657/527/1 -f 644/528/1 652/529/1 651/530/1 -f 644/531/1 658/526/1 650/532/1 -f 660/533/1 656/534/1 648/535/1 -f 659/536/1 654/537/1 646/538/1 -f 646/538/1 652/529/1 645/539/1 -f 671/540/2 664/541/2 675/542/2 -f 663/543/2 668/544/2 669/545/2 -f 673/546/2 664/541/2 672/547/2 -f 673/546/2 661/548/2 665/549/2 -f 661/550/2 667/551/2 662/552/2 -f 667/551/2 663/543/2 662/552/2 -f 689/553/3 684/554/3 686/555/3 -f 699/556/5 695/557/5 693/558/5 -f 683/559/31 677/560/31 681/561/31 -f 682/562/32 676/563/32 678/564/32 -f 682/565/33 679/566/33 683/567/33 -f 681/568/19 676/569/19 680/570/19 -f 700/571/5 704/572/5 706/573/5 -f 710/574/3 715/575/3 713/576/3 -f 776/577/10 717/578/10 772/579/10 -f 720/580/4 723/581/4 721/582/4 -f 716/583/5 723/581/5 718/584/5 -f 721/582/1 774/585/1 773/586/1 -f 719/587/3 720/588/3 717/589/3 -f 722/590/2 777/591/2 778/592/2 -f 732/593/2 730/594/2 726/595/2 -f 718/584/10 775/596/10 716/583/10 -f 779/597/31 774/598/31 775/596/31 -f 777/599/32 772/579/32 773/600/32 -f 778/601/10 773/600/10 774/598/10 -f 784/602/4 786/603/4 785/604/4 -f 781/605/5 787/606/5 783/607/5 -f 782/608/3 785/604/3 780/609/3 -f 783/610/2 784/602/2 782/611/2 -f 780/612/1 786/603/1 781/613/1 -f 802/614/3 788/615/3 790/616/3 -f 801/617/5 791/618/5 789/619/5 -f 806/620/3 792/621/3 794/622/3 -f 805/623/5 795/624/5 793/625/5 -f 804/626/3 790/616/3 792/621/3 -f 791/618/5 805/627/5 793/625/5 -f 810/628/3 796/629/3 798/630/3 -f 797/631/5 811/632/5 799/633/5 -f 808/634/3 794/622/3 796/629/3 -f 795/624/5 809/635/5 797/631/5 -f 819/636/5 813/637/5 815/638/5 -f 816/639/3 814/640/3 812/641/3 -f 820/642/3 818/643/3 816/639/3 -f 823/644/5 817/645/5 819/636/5 -f 821/646/5 823/644/5 825/647/5 -f 822/648/3 820/642/3 824/649/3 -f 827/650/1 844/651/1 826/652/1 -f 844/651/1 845/653/1 858/654/1 -f 865/655/2 847/656/2 849/657/2 -f 841/658/10 863/659/10 853/660/10 -f 863/659/3 857/661/3 860/662/3 -f 851/663/2 862/664/2 841/665/2 -f 848/666/4 857/661/4 851/667/4 -f 864/668/5 867/669/5 865/670/5 -f 850/671/4 865/670/4 849/672/4 -f 852/673/10 866/674/10 840/675/10 -f 840/676/2 864/668/2 850/677/2 -f 860/678/2 846/679/2 861/680/2 -f 865/655/2 868/681/2 869/682/2 -f 860/678/2 871/683/2 863/684/2 -f 870/685/2 861/680/2 859/686/2 -f 887/687/2 882/688/2 885/689/2 -f 883/690/1 101/691/1 85/692/1 -f 885/689/2 92/693/2 103/694/2 -f 886/695/1 88/696/1 113/103/1 -f 880/697/2 115/99/2 96/698/2 -f 893/699/10 888/700/10 890/701/10 -f 894/702/10 891/703/10 889/704/10 -f 906/705/1 900/706/1 902/707/1 -f 905/708/2 903/709/2 901/710/2 -f 910/711/2 893/699/2 890/712/2 -f 892/713/1 908/714/1 888/715/1 -f 895/716/2 911/717/2 891/718/2 -f 909/719/1 894/702/1 889/720/1 -f 903/709/2 911/721/2 899/722/2 -f 909/723/1 902/707/1 898/724/1 -f 910/725/2 901/710/2 897/726/2 -f 900/706/1 908/727/1 896/728/1 -f 919/729/3 916/730/3 917/731/3 -f 919/729/10 912/732/10 914/733/10 -f 917/731/1 913/734/1 912/732/1 -f 913/735/4 918/736/4 915/737/4 -f 921/738/1 918/739/1 919/740/1 -f 918/736/4 922/741/4 915/737/4 -f 919/729/10 923/742/10 921/738/10 -f 927/743/4 924/744/4 925/745/4 -f 928/746/10 931/747/10 929/748/10 -f 927/743/2 930/749/2 926/750/2 -f 934/751/5 933/752/5 932/753/5 -f 928/746/1 925/754/1 924/755/1 -f 941/756/2 935/757/2 940/758/2 -f 943/759/1 937/760/1 942/761/1 -f 8/1/1 34/762/1 33/2/1 -f 8/1/1 6/8/1 35/4/1 -f 4/6/1 36/763/1 35/7/1 -f 4/6/1 2/13/1 25/9/1 -f 24/11/1 26/764/1 25/12/1 -f 24/11/1 22/16/1 27/14/1 -f 22/16/1 20/19/1 28/17/1 -f 20/19/1 18/22/1 29/20/1 -f 18/22/1 16/27/1 30/23/1 -f 14/25/1 31/765/1 30/26/1 -f 14/28/1 12/32/1 32/29/1 -f 10/3/1 33/766/1 32/31/1 -f 38/35/1 37/767/1 41/768/1 -f 37/767/1 39/769/1 41/768/1 -f 39/769/1 40/770/1 41/768/1 -f 41/768/1 42/771/1 43/33/1 -f 43/33/1 44/772/1 45/34/1 -f 45/34/1 46/773/1 47/774/1 -f 47/774/1 48/775/1 45/34/1 -f 48/775/1 38/35/1 45/34/1 -f 41/768/1 43/33/1 38/35/1 -f 60/36/1 50/776/1 55/37/1 -f 53/39/1 52/42/1 72/40/1 -f 52/42/1 53/777/1 55/43/1 -f 79/45/2 64/778/2 69/46/2 -f 51/48/2 54/779/2 81/49/2 -f 56/51/2 49/780/2 58/52/2 -f 104/54/2 103/694/2 92/55/2 -f 49/57/2 56/781/2 54/58/2 -f 183/59/1 182/76/1 71/60/1 -f 83/62/1 80/148/1 65/63/1 -f 61/65/2 62/80/2 74/66/2 -f 183/68/1 68/61/1 66/69/1 -f 58/52/2 57/73/2 76/71/2 -f 57/73/2 63/782/2 75/74/2 -f 184/75/1 72/40/1 71/60/1 -f 83/77/1 67/64/1 59/78/1 -f 62/80/2 64/778/2 79/81/2 -f 181/82/1 84/79/1 59/78/1 -f 85/83/1 101/691/1 102/84/1 -f 91/86/1 107/90/1 108/87/1 -f 86/89/1 105/111/1 107/90/1 -f 112/91/2 111/97/2 99/92/2 -f 98/94/2 110/783/2 112/91/2 -f 90/95/1 93/88/1 108/87/1 -f 111/97/2 109/784/2 94/98/2 -f 115/99/2 116/105/2 97/100/2 -f 89/102/1 114/108/1 113/103/1 -f 116/105/2 110/783/2 98/106/2 -f 90/107/1 106/96/1 114/108/1 -f 94/109/2 109/784/2 104/54/2 -f 86/110/1 87/85/1 102/84/1 -f 884/112/1 883/785/1 881/113/1 -f 143/115/2 144/786/2 155/116/2 -f 133/118/2 156/122/2 155/116/2 -f 133/120/2 134/787/2 145/121/2 -f 135/123/2 146/126/2 145/121/2 -f 136/125/2 147/129/2 146/126/2 -f 137/128/2 148/132/2 147/129/2 -f 138/131/2 149/136/2 148/132/2 -f 138/134/2 139/788/2 150/135/2 -f 140/137/2 151/142/2 150/138/2 -f 140/140/2 141/789/2 152/141/2 -f 141/143/2 142/790/2 153/144/2 -f 143/145/2 154/117/2 153/144/2 -f 69/46/2 70/50/2 81/147/2 -f 82/70/1 66/69/1 65/63/1 -f 75/149/2 63/782/2 61/65/2 -f 159/152/2 158/791/2 157/792/2 -f 157/792/2 168/793/2 159/152/2 -f 168/793/2 167/150/2 159/152/2 -f 167/150/2 166/794/2 163/151/2 -f 166/794/2 165/795/2 163/151/2 -f 165/795/2 164/796/2 163/151/2 -f 163/151/2 162/797/2 161/798/2 -f 161/798/2 160/799/2 163/151/2 -f 160/799/2 159/152/2 163/151/2 -f 193/153/3 202/466/3 201/154/3 -f 191/156/4 200/800/4 199/157/4 -f 189/159/5 198/164/5 197/160/5 -f 192/155/6 201/154/6 200/162/6 -f 190/158/7 199/157/7 198/164/7 -f 197/166/2 198/801/2 199/167/2 -f 199/167/2 200/802/2 202/165/2 -f 200/802/2 201/803/2 202/165/2 -f 197/166/8 202/165/8 601/168/8 -f 600/169/2 601/168/2 196/170/2 -f 188/172/1 205/176/1 206/173/1 -f 187/175/9 204/178/9 205/176/9 -f 185/177/1 203/804/1 204/178/1 -f 194/179/1 209/183/1 210/180/1 -f 193/182/9 208/185/9 209/183/9 -f 193/182/1 192/189/1 207/184/1 -f 190/186/1 211/190/1 212/187/1 -f 212/187/1 207/184/1 192/189/1 -f 189/174/1 206/173/1 211/190/1 -f 227/805/10 203/804/10 229/191/10 -f 203/804/10 185/177/10 229/191/10 -f 186/171/10 196/170/10 230/192/10 -f 231/195/1 232/806/1 235/193/1 -f 232/806/1 233/807/1 235/193/1 -f 233/807/1 234/808/1 235/193/1 -f 235/193/1 236/809/1 237/810/1 -f 237/810/1 238/811/1 239/194/1 -f 239/194/1 240/812/1 241/813/1 -f 241/813/1 242/814/1 239/194/1 -f 242/814/1 231/195/1 239/194/1 -f 235/193/1 237/810/1 239/194/1 -f 247/815/1 255/816/1 256/197/1 -f 256/197/1 266/817/1 267/818/1 -f 267/818/1 268/819/1 256/197/1 -f 268/819/1 257/198/1 256/197/1 -f 257/198/1 258/820/1 251/196/1 -f 258/820/1 259/821/1 251/196/1 -f 259/821/1 260/822/1 251/196/1 -f 251/196/1 250/823/1 249/824/1 -f 249/824/1 248/825/1 247/815/1 -f 247/815/1 256/197/1 249/824/1 -f 249/824/1 256/197/1 251/196/1 -f 265/201/2 264/826/2 263/827/2 -f 263/827/2 262/828/2 265/201/2 -f 262/828/2 261/829/2 265/201/2 -f 261/829/2 269/830/2 270/199/2 -f 270/199/2 274/831/2 273/832/2 -f 273/832/2 271/833/2 270/199/2 -f 271/833/2 272/200/2 270/199/2 -f 272/200/2 277/834/2 265/201/2 -f 277/834/2 276/835/2 265/201/2 -f 276/835/2 275/836/2 265/201/2 -f 261/829/2 270/199/2 265/201/2 -f 289/204/1 278/837/1 279/838/1 -f 279/838/1 280/839/1 281/840/1 -f 281/840/1 282/841/1 283/842/1 -f 283/842/1 284/843/1 281/840/1 -f 284/843/1 285/202/1 281/840/1 -f 285/202/1 286/844/1 287/203/1 -f 287/203/1 288/845/1 289/204/1 -f 289/204/1 279/838/1 285/202/1 -f 279/838/1 281/840/1 285/202/1 -f 340/205/2 361/209/2 360/206/2 -f 339/208/2 362/211/2 361/209/2 -f 338/210/2 363/213/2 362/211/2 -f 338/210/2 337/214/2 364/212/2 -f 337/214/2 336/216/2 365/215/2 -f 336/216/2 335/846/2 366/217/2 -f 317/218/1 358/222/1 359/219/1 -f 318/221/1 357/224/1 358/222/1 -f 319/223/1 356/847/1 357/224/1 -f 355/225/1 356/847/1 319/223/1 -f 354/227/1 355/225/1 320/226/1 -f 353/229/1 354/227/1 321/228/1 -f 353/229/1 322/230/1 349/231/1 -f 347/233/11 375/247/11 378/234/11 -f 350/236/2 341/207/2 360/206/2 -f 351/238/12 373/250/12 374/239/12 -f 366/217/2 335/846/2 352/240/2 -f 351/238/1 316/220/1 359/219/1 -f 391/243/1 386/848/1 382/244/1 -f 377/246/10 378/234/10 375/247/10 -f 379/249/10 374/239/10 373/250/10 -f 350/236/2 346/237/2 378/252/2 -f 348/253/13 345/275/13 379/249/13 -f 350/236/14 377/246/14 376/248/14 -f 351/238/15 348/242/15 380/254/15 -f 352/240/16 374/239/16 379/255/16 -f 349/231/1 376/248/1 375/256/1 -f 389/257/3 383/849/3 384/258/3 -f 392/260/10 391/243/10 389/245/10 -f 353/229/1 347/232/1 389/262/1 -f 347/232/1 383/850/1 389/262/1 -f 384/258/10 383/849/10 347/233/10 -f 346/237/2 360/206/2 390/264/2 -f 360/206/2 381/851/2 390/264/2 -f 387/266/2 392/260/2 390/261/2 -f 348/242/1 359/219/1 391/268/1 -f 359/219/1 386/852/1 391/268/1 -f 391/270/5 392/853/5 388/271/5 -f 366/217/2 345/241/2 392/273/2 -f 345/241/2 388/854/2 392/273/2 -f 385/272/10 388/271/10 345/275/10 -f 397/276/17 401/287/17 404/277/17 -f 395/279/3 399/290/3 398/280/3 -f 394/282/5 397/276/5 400/278/5 -f 396/281/2 398/280/2 397/276/2 -f 393/283/1 400/278/1 399/284/1 -f 402/286/10 403/855/10 404/277/10 -f 398/280/18 402/856/18 401/288/18 -f 400/278/19 404/857/19 403/289/19 -f 399/290/20 403/858/20 402/291/20 -f 369/292/2 370/859/2 411/293/2 -f 368/295/2 369/292/2 410/294/2 -f 368/297/2 409/860/2 408/298/2 -f 367/299/2 408/298/2 407/300/2 -f 333/302/1 416/861/1 417/303/1 -f 415/305/1 416/861/1 333/302/1 -f 414/307/1 415/305/1 334/306/1 -f 324/309/1 425/311/1 414/307/1 -f 325/310/1 424/313/1 425/311/1 -f 326/312/1 423/315/1 424/313/1 -f 327/314/1 422/317/1 423/315/1 -f 328/316/1 421/319/1 422/317/1 -f 329/318/1 420/862/1 421/319/1 -f 419/320/1 420/863/1 329/321/1 -f 418/323/1 419/320/1 330/322/1 -f 417/303/1 418/323/1 331/324/1 -f 428/325/2 433/864/2 431/326/2 -f 427/327/2 431/326/2 432/328/2 -f 430/330/2 426/329/2 432/328/2 -f 429/332/2 430/330/2 434/331/2 -f 372/334/21 429/332/21 435/335/21 -f 405/337/22 433/865/22 428/325/22 -f 441/339/2 440/866/2 446/340/2 -f 441/339/2 445/341/2 444/342/2 -f 442/343/2 444/342/2 443/344/2 -f 437/346/2 436/345/2 443/344/2 -f 438/348/2 437/346/2 449/347/2 -f 439/350/2 438/348/2 448/349/2 -f 455/352/1 459/867/1 460/353/1 -f 457/355/1 459/867/1 455/352/1 -f 458/357/1 457/355/1 456/356/1 -f 450/359/1 463/361/1 458/357/1 -f 452/360/1 462/363/1 463/361/1 -f 453/362/1 461/868/1 462/363/1 -f 482/364/23 486/869/23 484/365/23 -f 470/367/23 474/870/23 472/368/23 -f 467/370/2 465/374/2 469/371/2 -f 464/373/5 468/369/5 469/371/5 -f 466/375/1 470/367/1 468/369/1 -f 467/370/3 471/372/3 470/376/3 -f 472/378/4 474/871/4 475/379/4 -f 471/372/3 475/872/3 474/381/3 -f 469/371/24 473/873/24 475/382/24 -f 468/369/5 472/378/5 473/380/5 -f 477/383/2 481/387/2 483/384/2 -f 476/386/5 480/395/5 481/387/5 -f 476/388/1 478/389/1 482/364/1 -f 479/385/3 483/384/3 482/364/3 -f 484/390/4 486/393/4 487/391/4 -f 483/384/3 487/391/3 486/393/3 -f 481/387/24 485/874/24 487/394/24 -f 480/395/5 484/875/5 485/396/5 -f 489/397/3 491/876/3 490/398/3 -f 491/400/2 495/408/2 494/401/2 -f 495/403/5 493/406/5 492/404/5 -f 493/406/1 489/397/1 488/399/1 -f 494/401/4 492/877/4 488/407/4 -f 491/400/10 489/397/10 493/406/10 -f 186/171/5 185/177/5 197/160/5 -f 185/177/5 187/878/5 188/161/5 -f 197/160/5 185/177/5 188/161/5 -f 496/410/4 498/879/4 499/411/4 -f 503/413/10 502/416/10 500/414/10 -f 499/411/2 498/879/2 502/416/2 -f 513/417/3 515/880/3 514/418/3 -f 497/420/1 501/415/1 500/414/1 -f 508/422/5 510/881/5 511/423/5 -f 504/425/10 509/424/10 511/423/10 -f 505/427/1 508/882/1 509/424/1 -f 505/428/4 507/441/4 510/429/4 -f 510/431/1 524/883/1 525/432/1 -f 520/436/2 514/418/2 515/880/2 -f 515/880/2 521/884/2 520/436/2 -f 521/884/2 519/434/2 520/436/2 -f 522/439/1 516/885/1 517/886/1 -f 517/886/1 523/887/1 522/439/1 -f 523/887/1 513/437/1 522/439/1 -f 526/440/4 524/888/4 510/429/4 -f 511/423/10 525/432/10 527/442/10 -f 528/443/1 530/889/1 531/444/1 -f 535/446/2 534/452/2 532/447/2 -f 531/444/3 535/446/3 533/449/3 -f 528/451/25 532/447/25 534/452/25 -f 531/444/10 530/889/10 534/452/10 -f 539/454/1 538/465/1 536/455/1 -f 540/457/2 542/462/2 543/458/2 -f 541/460/5 543/458/5 539/454/5 -f 542/462/26 540/457/26 536/463/26 -f 539/454/10 543/458/10 542/462/10 -f 193/153/3 194/890/3 195/181/3 -f 195/181/3 196/170/3 193/153/3 -f 196/170/3 601/891/3 202/466/3 -f 228/892/10 230/192/10 210/180/10 -f 230/192/10 196/170/10 195/181/10 -f 607/467/1 606/893/1 605/468/1 -f 608/470/1 609/894/1 602/471/1 -f 602/471/5 610/475/5 611/473/5 -f 609/474/4 616/895/4 610/475/4 -f 608/476/3 617/482/3 616/477/3 -f 603/469/4 613/481/4 615/479/4 -f 605/468/3 612/484/3 613/481/3 -f 604/472/10 611/473/10 617/482/10 -f 606/483/10 614/486/10 612/484/10 -f 607/485/5 615/896/5 614/486/5 -f 624/487/27 622/499/27 626/488/27 -f 618/490/5 622/499/5 624/487/5 -f 633/492/4 632/509/4 630/493/4 -f 621/495/3 625/503/3 623/496/3 -f 619/498/2 623/496/2 622/499/2 -f 629/501/10 628/489/10 626/488/10 -f 625/503/28 629/501/28 627/502/28 -f 623/496/29 627/502/29 626/488/29 -f 620/505/1 624/897/1 628/489/1 -f 628/489/1 629/501/1 621/504/1 -f 629/501/1 625/898/1 621/504/1 -f 636/506/10 638/523/10 639/507/10 -f 632/509/5 640/899/5 634/510/5 -f 639/511/2 643/521/2 640/512/2 -f 631/494/1 630/493/1 638/523/1 -f 630/493/1 634/900/1 638/523/1 -f 638/523/1 636/506/1 631/494/1 -f 632/509/2 633/492/2 637/514/2 -f 635/515/3 641/901/3 633/492/3 -f 636/516/30 642/902/30 641/517/30 -f 634/520/30 640/512/30 643/521/30 -f 641/517/2 642/902/2 637/514/2 -f 649/525/1 650/532/1 658/526/1 -f 644/528/1 645/539/1 652/529/1 -f 644/531/1 651/903/1 658/526/1 -f 660/533/1 649/525/1 656/534/1 -f 649/525/1 657/527/1 656/534/1 -f 656/534/1 655/904/1 648/535/1 -f 659/536/1 648/535/1 654/537/1 -f 648/535/1 655/904/1 654/537/1 -f 654/537/1 653/905/1 646/538/1 -f 646/538/1 653/905/1 652/529/1 -f 647/906/2 670/907/2 671/540/2 -f 671/540/2 672/547/2 664/541/2 -f 675/542/2 647/906/2 671/540/2 -f 670/907/2 647/906/2 669/545/2 -f 647/906/2 674/908/2 669/545/2 -f 674/908/2 663/543/2 669/545/2 -f 673/546/2 665/549/2 664/541/2 -f 673/546/2 666/909/2 661/548/2 -f 661/550/2 666/910/2 667/551/2 -f 667/551/2 668/544/2 663/543/2 -f 686/555/3 687/911/3 691/912/3 -f 691/912/3 690/913/3 689/553/3 -f 689/553/3 688/914/3 684/554/3 -f 684/554/3 685/915/3 686/555/3 -f 686/555/3 691/912/3 689/553/3 -f 693/558/5 692/916/5 698/917/5 -f 698/917/5 697/918/5 699/556/5 -f 699/556/5 696/919/5 695/557/5 -f 695/557/5 694/920/5 693/558/5 -f 693/558/5 698/917/5 699/556/5 -f 683/559/31 679/921/31 677/560/31 -f 682/562/32 680/922/32 676/563/32 -f 682/565/33 678/923/33 679/566/33 -f 681/568/19 677/560/19 676/569/19 -f 706/573/5 707/924/5 701/925/5 -f 701/925/5 702/926/5 700/571/5 -f 700/571/5 703/927/5 704/572/5 -f 704/572/5 705/928/5 706/573/5 -f 706/573/5 701/925/5 700/571/5 -f 713/576/3 712/929/3 708/930/3 -f 708/930/3 709/931/3 710/574/3 -f 710/574/3 711/932/3 715/575/3 -f 715/575/3 714/933/3 713/576/3 -f 713/576/3 708/930/3 710/574/3 -f 776/577/10 719/934/10 717/578/10 -f 720/580/4 722/935/4 723/581/4 -f 716/583/5 721/582/5 723/581/5 -f 721/582/1 716/583/1 774/585/1 -f 716/583/1 775/936/1 774/585/1 -f 717/937/1 720/938/1 773/586/1 -f 720/938/1 721/582/1 773/586/1 -f 773/586/1 772/939/1 717/937/1 -f 719/587/3 722/590/3 720/588/3 -f 722/590/2 719/587/2 777/591/2 -f 719/587/2 776/940/2 777/591/2 -f 718/584/2 723/581/2 778/592/2 -f 723/581/2 722/590/2 778/592/2 -f 778/592/2 779/941/2 718/584/2 -f 726/595/2 725/942/2 734/943/2 -f 725/942/2 724/944/2 734/943/2 -f 724/944/2 735/945/2 734/943/2 -f 734/943/2 733/946/2 732/593/2 -f 732/593/2 731/947/2 730/594/2 -f 730/594/2 729/948/2 728/949/2 -f 728/949/2 727/950/2 730/594/2 -f 727/950/2 726/595/2 730/594/2 -f 734/943/2 732/593/2 726/595/2 -f 718/584/10 779/597/10 775/596/10 -f 779/597/31 778/601/31 774/598/31 -f 777/599/32 776/577/32 772/579/32 -f 778/601/10 777/599/10 773/600/10 -f 784/602/4 787/606/4 786/603/4 -f 781/605/5 786/603/5 787/606/5 -f 782/608/3 784/602/3 785/604/3 -f 783/610/2 787/606/2 784/602/2 -f 780/612/1 785/604/1 786/603/1 -f 802/614/3 800/951/3 788/615/3 -f 801/617/5 803/952/5 791/618/5 -f 806/620/3 804/953/3 792/621/3 -f 805/623/5 807/954/5 795/624/5 -f 804/626/3 802/955/3 790/616/3 -f 791/618/5 803/956/5 805/627/5 -f 810/628/3 808/634/3 796/629/3 -f 797/631/5 809/635/5 811/632/5 -f 808/634/3 806/957/3 794/622/3 -f 795/624/5 807/958/5 809/635/5 -f 819/636/5 817/645/5 813/637/5 -f 816/639/3 818/643/3 814/640/3 -f 820/642/3 822/648/3 818/643/3 -f 823/644/5 821/646/5 817/645/5 -f 827/650/1 845/653/1 844/651/1 -f 845/653/1 829/959/1 856/960/1 -f 858/654/1 828/961/1 844/651/1 -f 845/653/1 856/960/1 858/654/1 -f 865/655/2 859/686/2 847/656/2 -f 841/658/10 862/664/10 863/659/10 -f 863/659/3 862/664/3 857/661/3 -f 851/663/2 857/661/2 862/664/2 -f 848/666/4 860/662/4 857/661/4 -f 864/668/5 866/674/5 867/669/5 -f 850/671/4 864/668/4 865/670/4 -f 852/673/10 867/669/10 866/674/10 -f 840/676/2 866/674/2 864/668/2 -f 860/678/2 848/962/2 846/679/2 -f 865/655/2 867/963/2 868/681/2 -f 860/678/2 870/685/2 871/683/2 -f 859/686/2 865/655/2 869/682/2 -f 870/685/2 860/678/2 861/680/2 -f 859/686/2 869/682/2 870/685/2 -f 887/687/2 880/964/2 882/688/2 -f 883/690/1 884/112/1 101/691/1 -f 885/689/2 882/965/2 92/693/2 -f 886/695/1 881/966/1 88/696/1 -f 880/697/2 887/967/2 115/99/2 -f 893/699/10 892/713/10 888/700/10 -f 894/702/10 895/716/10 891/703/10 -f 906/705/1 904/968/1 900/706/1 -f 905/708/2 907/969/2 903/709/2 -f 910/711/2 897/726/2 893/699/2 -f 892/713/1 896/728/1 908/714/1 -f 895/716/2 899/722/2 911/717/2 -f 909/719/1 898/724/1 894/702/1 -f 903/709/2 907/970/2 911/721/2 -f 909/723/1 906/971/1 902/707/1 -f 910/725/2 905/972/2 901/710/2 -f 900/706/1 904/973/1 908/727/1 -f 919/729/3 918/974/3 916/730/3 -f 919/729/10 917/731/10 912/732/10 -f 917/731/1 916/975/1 913/734/1 -f 913/735/4 916/976/4 918/736/4 -f 921/738/1 920/977/1 918/739/1 -f 918/736/4 920/978/4 922/741/4 -f 919/729/10 914/733/10 923/742/10 -f 927/743/4 926/750/4 924/744/4 -f 928/746/10 930/749/10 931/747/10 -f 927/743/2 931/747/2 930/749/2 -f 934/751/5 935/757/5 933/752/5 -f 928/746/1 929/748/1 925/754/1 -f 935/757/2 934/751/2 940/758/2 -f 940/758/2 938/979/2 939/980/2 -f 939/980/2 941/756/2 940/758/2 -f 937/760/1 936/981/1 942/761/1 -f 942/761/1 932/982/1 933/983/1 -f 933/983/1 943/759/1 942/761/1 +f 194/289/82 219/290/82 196/291/82 +f 194/289/82 221/292/82 220/293/82 +f 190/294/82 221/295/82 192/296/82 +f 190/294/82 211/297/82 222/298/82 +f 210/299/82 211/300/82 188/301/82 +f 210/299/82 213/302/82 212/303/82 +f 208/304/82 214/305/82 213/306/82 +f 206/307/82 215/308/82 214/309/82 +f 204/310/82 216/311/82 215/312/82 +f 200/313/82 216/314/82 202/315/82 +f 200/316/82 218/317/82 217/318/82 +f 196/291/82 218/319/82 198/320/82 +f 229/321/82 231/322/82 224/323/82 +f 246/324/82 241/325/82 367/326/82 +f 239/327/82 258/328/82 370/329/82 +f 238/330/82 241/331/82 236/332/82 +f 265/333/83 255/334/83 264/335/83 +f 237/336/83 267/337/83 256/338/83 +f 242/339/83 244/340/83 263/341/83 +f 290/342/83 278/343/83 281/344/83 +f 235/345/83 240/346/83 237/336/83 +f 369/347/82 257/348/82 254/349/82 +f 269/350/82 251/351/82 253/352/82 +f 247/353/83 260/354/83 259/355/83 +f 369/356/82 252/357/82 268/358/82 +f 244/340/83 262/359/83 263/360/83 +f 243/361/83 261/362/83 262/359/83 +f 370/363/82 257/348/82 368/364/82 +f 269/365/82 245/366/82 270/367/82 +f 248/368/83 265/369/83 260/354/83 +f 367/370/82 245/366/82 246/324/82 +f 271/371/82 288/372/82 273/373/82 +f 277/374/82 294/375/82 279/376/82 +f 272/377/82 293/378/82 277/374/82 +f 298/379/83 285/380/83 286/381/83 +f 284/382/83 298/379/83 286/381/83 +f 276/383/82 294/375/82 292/384/82 +f 297/385/83 280/386/83 285/380/83 +f 301/387/83 283/388/83 282/389/83 +f 275/390/82 299/391/82 274/392/82 +f 302/393/83 284/394/83 283/388/83 +f 276/395/82 300/396/82 275/390/82 +f 280/397/83 290/342/83 281/344/83 +f 272/398/82 288/372/82 291/399/82 +f 904/400/82 901/401/82 906/402/82 +f 329/403/83 341/404/83 340/405/83 +f 319/406/83 341/404/83 330/407/83 +f 319/408/83 331/409/83 342/410/83 +f 321/411/83 331/409/83 320/412/83 +f 322/413/83 332/414/83 321/415/83 +f 323/416/83 333/417/83 322/418/83 +f 324/419/83 334/420/83 323/421/83 +f 324/422/83 336/423/83 335/424/83 +f 326/425/83 336/426/83 325/427/83 +f 326/428/83 338/429/83 337/430/83 +f 327/431/83 339/432/83 338/429/83 +f 329/433/83 339/432/83 328/434/83 +f 255/334/83 267/435/83 264/335/83 +f 268/358/82 251/351/82 266/436/82 +f 261/437/83 247/353/83 259/355/83 +f 353/438/83 349/439/83 345/440/83 +f 379/441/84 387/442/84 378/443/84 +f 377/444/85 385/445/85 376/446/85 +f 375/447/86 383/448/86 374/449/86 +f 378/443/87 386/450/87 377/451/87 +f 376/446/88 384/452/88 375/447/88 +f 388/453/83 383/454/83 385/455/83 +f 383/454/89 701/456/89 700/457/89 +f 700/457/83 382/458/83 372/459/83 +f 374/460/82 392/461/82 375/462/82 +f 373/463/90 391/464/90 374/460/90 +f 371/465/82 390/466/82 373/463/82 +f 380/467/82 396/468/82 381/469/82 +f 379/470/90 395/471/90 380/467/90 +f 379/470/82 393/472/82 394/473/82 +f 376/474/82 398/475/82 377/476/82 +f 398/475/82 378/477/82 377/476/82 +f 375/462/82 397/478/82 376/474/82 +f 371/465/91 372/459/91 401/479/91 +f 372/459/91 402/480/91 401/479/91 +f 407/481/82 411/482/82 403/483/82 +f 460/484/83 480/485/83 461/486/83 +f 459/487/83 481/488/83 460/484/83 +f 458/489/83 482/490/83 459/487/83 +f 458/489/83 484/491/83 483/492/83 +f 457/493/83 485/494/83 484/491/83 +f 456/495/83 486/496/83 485/494/83 +f 437/497/82 479/498/82 436/499/82 +f 438/500/82 478/501/82 437/497/82 +f 439/502/82 477/503/82 438/500/82 +f 475/504/82 439/502/82 440/505/82 +f 474/506/82 440/505/82 441/507/82 +f 473/508/82 441/507/82 442/509/82 +f 473/508/82 469/510/82 467/511/82 +f 467/512/92 498/513/92 466/514/92 +f 470/515/83 480/485/83 466/516/83 +f 471/517/93 494/518/93 472/519/93 +f 486/496/83 472/519/83 465/520/83 +f 471/517/82 479/498/82 468/521/82 +f 511/522/82 502/523/82 509/524/82 +f 497/525/91 495/526/91 496/527/91 +f 499/528/91 493/529/91 500/530/91 +f 470/515/83 498/531/83 497/525/83 +f 468/532/94 499/528/94 500/530/94 +f 470/515/95 496/527/95 469/510/95 +f 471/517/96 500/533/96 493/529/96 +f 472/519/97 499/534/97 465/520/97 +f 469/510/82 495/535/82 467/511/82 +f 509/536/84 504/537/84 510/538/84 +f 512/539/91 509/524/91 510/540/91 +f 509/541/82 502/542/82 473/508/82 +f 504/537/91 467/512/91 466/514/91 +f 510/543/83 504/544/83 466/516/83 +f 507/545/83 510/540/83 501/546/83 +f 511/547/82 505/548/82 468/521/82 +f 511/549/86 508/550/86 505/551/86 +f 512/552/83 507/553/83 486/496/83 +f 505/551/91 465/554/91 468/532/91 +f 517/555/98 524/556/98 520/557/98 +f 515/558/84 518/559/84 516/560/84 +f 514/561/86 520/557/86 513/562/86 +f 516/560/83 517/555/83 514/561/83 +f 513/562/82 519/563/82 515/564/82 +f 522/565/91 524/556/91 521/566/91 +f 518/559/99 521/567/99 517/555/99 +f 520/557/100 523/568/100 519/563/100 +f 519/569/101 522/570/101 518/559/101 +f 489/571/83 531/572/83 530/573/83 +f 488/574/83 530/573/83 529/575/83 +f 488/576/83 528/577/83 487/578/83 +f 487/578/83 527/579/83 464/580/83 +f 453/581/82 537/582/82 452/583/82 +f 535/584/82 453/581/82 454/585/82 +f 534/586/82 454/585/82 443/587/82 +f 444/588/82 534/586/82 443/587/82 +f 445/589/82 545/590/82 444/588/82 +f 446/591/82 544/592/82 445/589/82 +f 447/593/82 543/594/82 446/591/82 +f 448/595/82 542/596/82 447/593/82 +f 449/597/82 541/598/82 448/595/82 +f 539/599/82 449/600/82 450/601/82 +f 538/602/82 450/601/82 451/603/82 +f 537/582/82 451/603/82 452/583/82 +f 548/604/83 551/605/83 547/606/83 +f 547/606/83 552/607/83 546/608/83 +f 550/609/83 552/607/83 554/610/83 +f 549/611/83 554/610/83 555/612/83 +f 492/613/102 555/614/102 533/615/102 +f 525/616/103 548/604/103 462/617/103 +f 561/618/83 566/619/83 565/620/83 +f 561/618/83 564/621/83 562/622/83 +f 562/622/83 563/623/83 556/624/83 +f 557/625/83 563/623/83 569/626/83 +f 558/627/83 569/626/83 568/628/83 +f 559/629/83 568/628/83 567/630/83 +f 575/631/82 580/632/82 574/633/82 +f 577/634/82 575/631/82 576/635/82 +f 578/636/82 576/635/82 571/637/82 +f 570/638/82 578/636/82 571/637/82 +f 572/639/82 583/640/82 570/638/82 +f 573/641/82 582/642/82 572/639/82 +f 602/643/104 604/644/104 600/645/104 +f 590/646/104 592/647/104 588/648/104 +f 587/649/83 589/650/83 591/651/83 +f 584/652/86 589/650/86 585/653/86 +f 586/654/82 588/648/82 584/652/82 +f 587/649/84 590/655/84 586/656/84 +f 592/657/85 595/658/85 593/659/85 +f 591/651/84 594/660/84 590/655/84 +f 589/650/105 595/661/105 591/651/105 +f 588/648/86 593/659/86 589/650/86 +f 597/662/83 603/663/83 599/664/83 +f 596/665/86 601/666/86 597/662/86 +f 596/667/82 602/643/82 600/645/82 +f 599/664/84 602/643/84 598/668/84 +f 604/669/85 607/670/85 605/671/85 +f 603/663/84 606/672/84 602/643/84 +f 601/666/105 607/673/105 603/663/105 +f 600/674/86 605/675/86 601/666/86 +f 609/676/84 610/677/84 608/678/84 +f 611/679/83 614/680/83 610/681/83 +f 615/682/86 612/683/86 614/684/86 +f 613/685/82 608/678/82 612/683/82 +f 614/680/85 608/686/85 610/681/85 +f 611/679/91 613/685/91 615/687/91 +f 383/448/86 700/688/86 372/459/86 +f 620/689/86 623/690/86 621/691/86 +f 616/692/91 623/690/91 618/693/91 +f 617/694/82 621/691/82 616/692/82 +f 617/695/85 622/696/85 620/697/85 +f 622/698/82 625/699/82 623/700/82 +f 626/701/85 622/696/85 619/702/85 +f 623/690/91 627/703/91 618/693/91 +f 628/704/82 631/705/82 629/706/82 +f 635/707/83 632/708/83 633/709/83 +f 631/705/84 633/710/84 629/711/84 +f 628/712/106 634/713/106 630/714/106 +f 631/705/91 634/713/91 635/707/91 +f 639/715/82 636/716/82 637/717/82 +f 640/718/83 643/719/83 641/720/83 +f 641/721/86 639/715/86 637/722/86 +f 642/723/107 636/724/107 638/725/107 +f 639/715/91 642/723/91 638/726/91 +f 379/441/84 382/458/84 388/727/84 +f 396/468/91 402/480/91 381/469/91 +f 708/728/108 710/729/108 712/730/108 +f 702/731/86 708/728/86 704/732/86 +f 717/733/85 714/734/85 715/735/85 +f 705/736/84 707/737/84 703/738/84 +f 703/739/83 706/740/83 702/741/83 +f 713/742/91 710/729/91 711/743/91 +f 709/744/109 711/743/109 707/737/109 +f 707/737/110 710/729/110 706/740/110 +f 705/745/82 704/746/82 712/730/82 +f 720/747/91 723/748/91 721/749/91 +f 716/750/86 718/751/86 714/734/86 +f 723/752/83 724/753/83 716/750/83 +f 720/747/82 719/754/82 715/735/82 +f 716/750/83 721/755/83 723/752/83 +f 719/756/84 717/733/84 715/735/84 +f 720/757/111 725/758/111 719/759/111 +f 721/749/86 726/760/86 720/747/86 +f 718/761/111 727/762/111 722/763/111 +f 723/748/84 722/764/84 727/765/84 +f 725/758/83 721/755/83 717/733/83 +f 733/766/82 742/767/82 741/768/82 +f 728/769/82 736/770/82 735/771/82 +f 728/772/82 742/767/82 734/773/82 +f 744/774/82 740/775/82 732/776/82 +f 743/777/82 738/778/82 730/779/82 +f 730/779/82 736/770/82 729/780/82 +f 755/781/83 748/782/83 759/783/83 +f 747/784/83 752/785/83 753/786/83 +f 757/787/83 748/782/83 756/788/83 +f 757/787/83 745/789/83 749/790/83 +f 745/791/83 751/792/83 746/793/83 +f 751/792/83 747/784/83 746/793/83 +f 773/794/84 768/795/84 770/796/84 +f 783/797/86 779/798/86 777/799/86 +f 767/800/112 761/801/112 765/802/112 +f 766/803/113 760/804/113 762/805/113 +f 766/806/114 763/807/114 767/808/114 +f 765/809/100 760/810/100 764/811/100 +f 784/812/86 788/813/86 790/814/86 +f 794/815/84 799/816/84 797/817/84 +f 804/818/85 806/819/85 805/820/85 +f 801/821/86 807/822/86 803/823/86 +f 802/824/84 805/820/84 800/825/84 +f 803/826/83 804/818/83 802/827/83 +f 800/828/82 806/819/82 801/829/82 +f 822/830/84 808/831/84 810/832/84 +f 821/833/86 811/834/86 809/835/86 +f 826/836/84 812/837/84 814/838/84 +f 825/839/86 815/840/86 813/841/86 +f 824/842/84 810/832/84 812/837/84 +f 811/834/86 825/843/86 813/841/86 +f 830/844/84 816/845/84 818/846/84 +f 817/847/86 831/848/86 819/849/86 +f 828/850/84 814/838/84 816/845/84 +f 815/840/86 829/851/86 817/847/86 +f 839/852/86 833/853/86 835/854/86 +f 836/855/84 834/856/84 832/857/84 +f 840/858/84 838/859/84 836/855/84 +f 843/860/86 837/861/86 839/852/86 +f 841/862/86 843/860/86 845/863/86 +f 842/864/84 840/858/84 844/865/84 +f 847/866/82 864/867/82 846/868/82 +f 864/867/82 865/869/82 878/870/82 +f 885/871/83 867/872/83 869/873/83 +f 861/874/91 883/875/91 873/876/91 +f 883/875/84 877/877/84 880/878/84 +f 871/879/83 882/880/83 861/881/83 +f 868/882/85 877/877/85 871/883/85 +f 884/884/86 887/885/86 885/886/86 +f 870/887/85 885/886/85 869/888/85 +f 872/889/91 886/890/91 860/891/91 +f 860/892/83 884/884/83 870/893/83 +f 880/894/83 866/895/83 881/896/83 +f 885/871/83 888/897/83 889/898/83 +f 880/894/83 891/899/83 883/900/83 +f 890/901/83 881/896/83 879/902/83 +f 907/903/83 902/904/83 905/905/83 +f 903/906/82 287/907/82 271/908/82 +f 905/905/83 278/909/83 289/910/83 +f 906/911/82 274/912/82 299/391/82 +f 900/913/83 301/387/83 282/914/83 +f 913/915/91 908/916/91 910/917/91 +f 914/918/91 911/919/91 909/920/91 +f 926/921/82 920/922/82 922/923/82 +f 925/924/83 923/925/83 921/926/83 +f 930/927/83 913/915/83 910/928/83 +f 912/929/82 928/930/82 908/931/82 +f 915/932/83 931/933/83 911/934/83 +f 929/935/82 914/918/82 909/936/82 +f 923/925/83 931/937/83 919/938/83 +f 929/939/82 922/923/82 918/940/82 +f 930/941/83 921/926/83 917/942/83 +f 920/922/82 928/943/82 916/944/82 +f 939/945/84 936/946/84 937/947/84 +f 939/945/91 932/948/91 934/949/91 +f 937/947/82 933/950/82 932/948/82 +f 933/951/85 938/952/85 935/953/85 +f 941/954/82 938/955/82 939/956/82 +f 938/952/85 942/957/85 935/953/85 +f 939/945/91 943/958/91 941/954/91 +f 194/289/82 220/959/82 219/290/82 +f 194/289/82 192/296/82 221/292/82 +f 190/294/82 222/960/82 221/295/82 +f 190/294/82 188/301/82 211/297/82 +f 210/299/82 212/961/82 211/300/82 +f 210/299/82 208/304/82 213/302/82 +f 208/304/82 206/307/82 214/305/82 +f 206/307/82 204/310/82 215/308/82 +f 204/310/82 202/315/82 216/311/82 +f 200/313/82 217/962/82 216/314/82 +f 200/316/82 198/320/82 218/317/82 +f 196/291/82 219/963/82 218/319/82 +f 224/323/82 223/964/82 227/965/82 +f 223/964/82 225/966/82 227/965/82 +f 225/966/82 226/967/82 227/965/82 +f 227/965/82 228/968/82 229/321/82 +f 229/321/82 230/969/82 231/322/82 +f 231/322/82 232/970/82 233/971/82 +f 233/971/82 234/972/82 231/322/82 +f 234/972/82 224/323/82 231/322/82 +f 227/965/82 229/321/82 224/323/82 +f 246/324/82 236/973/82 241/325/82 +f 239/327/82 238/330/82 258/328/82 +f 238/330/82 239/974/82 241/331/82 +f 265/333/83 250/975/83 255/334/83 +f 237/336/83 240/976/83 267/337/83 +f 242/339/83 235/977/83 244/340/83 +f 290/342/83 289/910/83 278/343/83 +f 235/345/83 242/978/83 240/346/83 +f 369/347/82 368/364/82 257/348/82 +f 269/350/82 266/436/82 251/351/82 +f 247/353/83 248/368/83 260/354/83 +f 369/356/82 254/349/82 252/357/82 +f 244/340/83 243/361/83 262/359/83 +f 243/361/83 249/979/83 261/362/83 +f 370/363/82 258/328/82 257/348/82 +f 269/365/82 253/352/82 245/366/82 +f 248/368/83 250/975/83 265/369/83 +f 367/370/82 270/367/82 245/366/82 +f 271/371/82 287/907/82 288/372/82 +f 277/374/82 293/378/82 294/375/82 +f 272/377/82 291/399/82 293/378/82 +f 298/379/83 297/385/83 285/380/83 +f 284/382/83 296/980/83 298/379/83 +f 276/383/82 279/376/82 294/375/82 +f 297/385/83 295/981/83 280/386/83 +f 301/387/83 302/393/83 283/388/83 +f 275/390/82 300/396/82 299/391/82 +f 302/393/83 296/980/83 284/394/83 +f 276/395/82 292/384/82 300/396/82 +f 280/397/83 295/981/83 290/342/83 +f 272/398/82 273/373/82 288/372/82 +f 904/400/82 903/982/82 901/401/82 +f 329/403/83 330/983/83 341/404/83 +f 319/406/83 342/410/83 341/404/83 +f 319/408/83 320/984/83 331/409/83 +f 321/411/83 332/414/83 331/409/83 +f 322/413/83 333/417/83 332/414/83 +f 323/416/83 334/420/83 333/417/83 +f 324/419/83 335/424/83 334/420/83 +f 324/422/83 325/985/83 336/423/83 +f 326/425/83 337/430/83 336/426/83 +f 326/428/83 327/986/83 338/429/83 +f 327/431/83 328/987/83 339/432/83 +f 329/433/83 340/405/83 339/432/83 +f 255/334/83 256/338/83 267/435/83 +f 268/358/82 252/357/82 251/351/82 +f 261/437/83 249/979/83 247/353/83 +f 345/440/83 344/988/83 343/989/83 +f 343/989/83 354/990/83 345/440/83 +f 354/990/83 353/438/83 345/440/83 +f 353/438/83 352/991/83 349/439/83 +f 352/991/83 351/992/83 349/439/83 +f 351/992/83 350/993/83 349/439/83 +f 349/439/83 348/994/83 347/995/83 +f 347/995/83 346/996/83 349/439/83 +f 346/996/83 345/440/83 349/439/83 +f 379/441/84 388/727/84 387/442/84 +f 377/444/85 386/997/85 385/445/85 +f 375/447/86 384/452/86 383/448/86 +f 378/443/87 387/442/87 386/450/87 +f 376/446/88 385/445/88 384/452/88 +f 383/454/83 384/998/83 385/455/83 +f 385/455/83 386/999/83 388/453/83 +f 386/999/83 387/1000/83 388/453/83 +f 383/454/89 388/453/89 701/456/89 +f 700/457/83 701/456/83 382/458/83 +f 374/460/82 391/464/82 392/461/82 +f 373/463/90 390/466/90 391/464/90 +f 371/465/82 389/1001/82 390/466/82 +f 380/467/82 395/471/82 396/468/82 +f 379/470/90 394/473/90 395/471/90 +f 379/470/82 378/477/82 393/472/82 +f 376/474/82 397/478/82 398/475/82 +f 398/475/82 393/472/82 378/477/82 +f 375/462/82 392/461/82 397/478/82 +f 399/1002/91 389/1001/91 401/479/91 +f 389/1001/91 371/465/91 401/479/91 +f 372/459/91 382/458/91 402/480/91 +f 403/483/82 404/1003/82 407/481/82 +f 404/1003/82 405/1004/82 407/481/82 +f 405/1004/82 406/1005/82 407/481/82 +f 407/481/82 408/1006/82 409/1007/82 +f 409/1007/82 410/1008/82 411/482/82 +f 411/482/82 412/1009/82 413/1010/82 +f 413/1010/82 414/1011/82 411/482/82 +f 414/1011/82 403/483/82 411/482/82 +f 407/481/82 409/1007/82 411/482/82 +f 460/484/83 481/488/83 480/485/83 +f 459/487/83 482/490/83 481/488/83 +f 458/489/83 483/492/83 482/490/83 +f 458/489/83 457/493/83 484/491/83 +f 457/493/83 456/495/83 485/494/83 +f 456/495/83 455/1012/83 486/496/83 +f 437/497/82 478/501/82 479/498/82 +f 438/500/82 477/503/82 478/501/82 +f 439/502/82 476/1013/82 477/503/82 +f 475/504/82 476/1013/82 439/502/82 +f 474/506/82 475/504/82 440/505/82 +f 473/508/82 474/506/82 441/507/82 +f 473/508/82 442/509/82 469/510/82 +f 467/512/92 495/526/92 498/513/92 +f 470/515/83 461/486/83 480/485/83 +f 471/517/93 493/529/93 494/518/93 +f 486/496/83 455/1012/83 472/519/83 +f 471/517/82 436/499/82 479/498/82 +f 511/522/82 506/1014/82 502/523/82 +f 497/525/91 498/513/91 495/526/91 +f 499/528/91 494/518/91 493/529/91 +f 470/515/83 466/516/83 498/531/83 +f 468/532/94 465/554/94 499/528/94 +f 470/515/95 497/525/95 496/527/95 +f 471/517/96 468/521/96 500/533/96 +f 472/519/97 494/518/97 499/534/97 +f 469/510/82 496/527/82 495/535/82 +f 509/536/84 503/1015/84 504/537/84 +f 512/539/91 511/522/91 509/524/91 +f 473/508/82 467/511/82 509/541/82 +f 467/511/82 503/1016/82 509/541/82 +f 504/537/91 503/1015/91 467/512/91 +f 466/516/83 480/485/83 510/543/83 +f 480/485/83 501/1017/83 510/543/83 +f 507/545/83 512/539/83 510/540/83 +f 468/521/82 479/498/82 511/547/82 +f 479/498/82 506/1018/82 511/547/82 +f 511/549/86 512/1019/86 508/550/86 +f 486/496/83 465/520/83 512/552/83 +f 465/520/83 508/1020/83 512/552/83 +f 505/551/91 508/550/91 465/554/91 +f 517/555/98 521/566/98 524/556/98 +f 515/558/84 519/569/84 518/559/84 +f 514/561/86 517/555/86 520/557/86 +f 516/560/83 518/559/83 517/555/83 +f 513/562/82 520/557/82 519/563/82 +f 522/565/91 523/1021/91 524/556/91 +f 518/559/99 522/1022/99 521/567/99 +f 520/557/100 524/1023/100 523/568/100 +f 519/569/101 523/1024/101 522/570/101 +f 489/571/83 490/1025/83 531/572/83 +f 488/574/83 489/571/83 530/573/83 +f 488/576/83 529/1026/83 528/577/83 +f 487/578/83 528/577/83 527/579/83 +f 453/581/82 536/1027/82 537/582/82 +f 535/584/82 536/1027/82 453/581/82 +f 534/586/82 535/584/82 454/585/82 +f 444/588/82 545/590/82 534/586/82 +f 445/589/82 544/592/82 545/590/82 +f 446/591/82 543/594/82 544/592/82 +f 447/593/82 542/596/82 543/594/82 +f 448/595/82 541/598/82 542/596/82 +f 449/597/82 540/1028/82 541/598/82 +f 539/599/82 540/1029/82 449/600/82 +f 538/602/82 539/599/82 450/601/82 +f 537/582/82 538/602/82 451/603/82 +f 548/604/83 553/1030/83 551/605/83 +f 547/606/83 551/605/83 552/607/83 +f 550/609/83 546/608/83 552/607/83 +f 549/611/83 550/609/83 554/610/83 +f 492/613/102 549/611/102 555/614/102 +f 525/616/103 553/1031/103 548/604/103 +f 561/618/83 560/1032/83 566/619/83 +f 561/618/83 565/620/83 564/621/83 +f 562/622/83 564/621/83 563/623/83 +f 557/625/83 556/624/83 563/623/83 +f 558/627/83 557/625/83 569/626/83 +f 559/629/83 558/627/83 568/628/83 +f 575/631/82 579/1033/82 580/632/82 +f 577/634/82 579/1033/82 575/631/82 +f 578/636/82 577/634/82 576/635/82 +f 570/638/82 583/640/82 578/636/82 +f 572/639/82 582/642/82 583/640/82 +f 573/641/82 581/1034/82 582/642/82 +f 602/643/104 606/1035/104 604/644/104 +f 590/646/104 594/1036/104 592/647/104 +f 587/649/83 585/653/83 589/650/83 +f 584/652/86 588/648/86 589/650/86 +f 586/654/82 590/646/82 588/648/82 +f 587/649/84 591/651/84 590/655/84 +f 592/657/85 594/1037/85 595/658/85 +f 591/651/84 595/1038/84 594/660/84 +f 589/650/105 593/1039/105 595/661/105 +f 588/648/86 592/657/86 593/659/86 +f 597/662/83 601/666/83 603/663/83 +f 596/665/86 600/674/86 601/666/86 +f 596/667/82 598/668/82 602/643/82 +f 599/664/84 603/663/84 602/643/84 +f 604/669/85 606/672/85 607/670/85 +f 603/663/84 607/670/84 606/672/84 +f 601/666/105 605/1040/105 607/673/105 +f 600/674/86 604/1041/86 605/675/86 +f 609/676/84 611/1042/84 610/677/84 +f 611/679/83 615/687/83 614/680/83 +f 615/682/86 613/685/86 612/683/86 +f 613/685/82 609/676/82 608/678/82 +f 614/680/85 612/1043/85 608/686/85 +f 611/679/91 609/676/91 613/685/91 +f 372/459/86 371/465/86 383/448/86 +f 371/465/86 373/1044/86 374/449/86 +f 383/448/86 371/465/86 374/449/86 +f 620/689/86 622/1045/86 623/690/86 +f 616/692/91 621/691/91 623/690/91 +f 617/694/82 620/1046/82 621/691/82 +f 617/695/85 619/702/85 622/696/85 +f 622/698/82 624/1047/82 625/699/82 +f 626/701/85 624/1048/85 622/696/85 +f 623/690/91 625/699/91 627/703/91 +f 628/704/82 630/1049/82 631/705/82 +f 635/707/83 634/713/83 632/708/83 +f 631/705/84 635/707/84 633/710/84 +f 628/712/106 632/708/106 634/713/106 +f 631/705/91 630/1049/91 634/713/91 +f 639/715/82 638/726/82 636/716/82 +f 640/718/83 642/723/83 643/719/83 +f 641/721/86 643/719/86 639/715/86 +f 642/723/107 640/718/107 636/724/107 +f 639/715/91 643/719/91 642/723/91 +f 379/441/84 380/1050/84 381/469/84 +f 381/469/84 382/458/84 379/441/84 +f 382/458/84 701/1051/84 388/727/84 +f 400/1052/91 402/480/91 396/468/91 +f 402/480/91 382/458/91 381/469/91 +f 708/728/108 706/740/108 710/729/108 +f 702/731/86 706/740/86 708/728/86 +f 717/733/85 716/750/85 714/734/85 +f 705/736/84 709/744/84 707/737/84 +f 703/739/83 707/737/83 706/740/83 +f 713/742/91 712/730/91 710/729/91 +f 709/744/109 713/742/109 711/743/109 +f 707/737/110 711/743/110 710/729/110 +f 704/746/82 708/1053/82 712/730/82 +f 712/730/82 713/742/82 705/745/82 +f 713/742/82 709/1054/82 705/745/82 +f 720/747/91 722/764/91 723/748/91 +f 716/750/86 724/1055/86 718/751/86 +f 723/752/83 727/762/83 724/753/83 +f 715/735/82 714/734/82 722/764/82 +f 714/734/82 718/1056/82 722/764/82 +f 722/764/82 720/747/82 715/735/82 +f 716/750/83 717/733/83 721/755/83 +f 719/756/84 725/1057/84 717/733/84 +f 720/757/111 726/1058/111 725/758/111 +f 718/761/111 724/753/111 727/762/111 +f 725/758/83 726/1058/83 721/755/83 +f 733/766/82 734/773/82 742/767/82 +f 728/769/82 729/780/82 736/770/82 +f 728/772/82 735/1059/82 742/767/82 +f 744/774/82 733/766/82 740/775/82 +f 733/766/82 741/768/82 740/775/82 +f 740/775/82 739/1060/82 732/776/82 +f 743/777/82 732/776/82 738/778/82 +f 732/776/82 739/1060/82 738/778/82 +f 738/778/82 737/1061/82 730/779/82 +f 730/779/82 737/1061/82 736/770/82 +f 731/1062/83 754/1063/83 755/781/83 +f 755/781/83 756/788/83 748/782/83 +f 759/783/83 731/1062/83 755/781/83 +f 754/1063/83 731/1062/83 753/786/83 +f 731/1062/83 758/1064/83 753/786/83 +f 758/1064/83 747/784/83 753/786/83 +f 757/787/83 749/790/83 748/782/83 +f 757/787/83 750/1065/83 745/789/83 +f 745/791/83 750/1066/83 751/792/83 +f 751/792/83 752/785/83 747/784/83 +f 770/796/84 771/1067/84 775/1068/84 +f 775/1068/84 774/1069/84 773/794/84 +f 773/794/84 772/1070/84 768/795/84 +f 768/795/84 769/1071/84 770/796/84 +f 770/796/84 775/1068/84 773/794/84 +f 777/799/86 776/1072/86 782/1073/86 +f 782/1073/86 781/1074/86 783/797/86 +f 783/797/86 780/1075/86 779/798/86 +f 779/798/86 778/1076/86 777/799/86 +f 777/799/86 782/1073/86 783/797/86 +f 767/800/112 763/1077/112 761/801/112 +f 766/803/113 764/1078/113 760/804/113 +f 766/806/114 762/1079/114 763/807/114 +f 765/809/100 761/801/100 760/810/100 +f 790/814/86 791/1080/86 785/1081/86 +f 785/1081/86 786/1082/86 784/812/86 +f 784/812/86 787/1083/86 788/813/86 +f 788/813/86 789/1084/86 790/814/86 +f 790/814/86 785/1081/86 784/812/86 +f 797/817/84 796/1085/84 792/1086/84 +f 792/1086/84 793/1087/84 794/815/84 +f 794/815/84 795/1088/84 799/816/84 +f 799/816/84 798/1089/84 797/817/84 +f 797/817/84 792/1086/84 794/815/84 +f 804/818/85 807/822/85 806/819/85 +f 801/821/86 806/819/86 807/822/86 +f 802/824/84 804/818/84 805/820/84 +f 803/826/83 807/822/83 804/818/83 +f 800/828/82 805/820/82 806/819/82 +f 822/830/84 820/1090/84 808/831/84 +f 821/833/86 823/1091/86 811/834/86 +f 826/836/84 824/1092/84 812/837/84 +f 825/839/86 827/1093/86 815/840/86 +f 824/842/84 822/1094/84 810/832/84 +f 811/834/86 823/1095/86 825/843/86 +f 830/844/84 828/850/84 816/845/84 +f 817/847/86 829/851/86 831/848/86 +f 828/850/84 826/1096/84 814/838/84 +f 815/840/86 827/1097/86 829/851/86 +f 839/852/86 837/861/86 833/853/86 +f 836/855/84 838/859/84 834/856/84 +f 840/858/84 842/864/84 838/859/84 +f 843/860/86 841/862/86 837/861/86 +f 847/866/82 865/869/82 864/867/82 +f 865/869/82 849/1098/82 876/1099/82 +f 878/870/82 848/1100/82 864/867/82 +f 865/869/82 876/1099/82 878/870/82 +f 885/871/83 879/902/83 867/872/83 +f 861/874/91 882/880/91 883/875/91 +f 883/875/84 882/880/84 877/877/84 +f 871/879/83 877/877/83 882/880/83 +f 868/882/85 880/878/85 877/877/85 +f 884/884/86 886/890/86 887/885/86 +f 870/887/85 884/884/85 885/886/85 +f 872/889/91 887/885/91 886/890/91 +f 860/892/83 886/890/83 884/884/83 +f 880/894/83 868/1101/83 866/895/83 +f 885/871/83 887/1102/83 888/897/83 +f 880/894/83 890/901/83 891/899/83 +f 879/902/83 885/871/83 889/898/83 +f 890/901/83 880/894/83 881/896/83 +f 879/902/83 889/898/83 890/901/83 +f 907/903/83 900/1103/83 902/904/83 +f 903/906/82 904/400/82 287/907/82 +f 905/905/83 902/1104/83 278/909/83 +f 906/911/82 901/1105/82 274/912/82 +f 900/913/83 907/1106/83 301/387/83 +f 913/915/91 912/929/91 908/916/91 +f 914/918/91 915/932/91 911/919/91 +f 926/921/82 924/1107/82 920/922/82 +f 925/924/83 927/1108/83 923/925/83 +f 930/927/83 917/942/83 913/915/83 +f 912/929/82 916/944/82 928/930/82 +f 915/932/83 919/938/83 931/933/83 +f 929/935/82 918/940/82 914/918/82 +f 923/925/83 927/1109/83 931/937/83 +f 929/939/82 926/1110/82 922/923/82 +f 930/941/83 925/1111/83 921/926/83 +f 920/922/82 924/1112/82 928/943/82 +f 939/945/84 938/1113/84 936/946/84 +f 939/945/91 937/947/91 932/948/91 +f 937/947/82 936/1114/82 933/950/82 +f 933/951/85 936/1115/85 938/952/85 +f 941/954/82 940/1116/82 938/955/82 +f 938/952/85 940/1117/85 942/957/85 +f 939/945/91 934/949/91 943/958/91 s 1 -f 2/13/10 3/984/34 1/985/10 -f 4/6/34 5/986/35 3/984/34 -f 8/1/5 9/987/36 7/988/5 -f 10/3/36 11/989/22 9/987/36 -f 12/32/22 13/990/4 11/989/22 -f 14/25/4 15/991/21 13/992/4 -f 16/27/21 17/993/37 15/991/21 -f 18/22/37 19/994/3 17/993/37 -f 20/19/3 21/995/38 19/994/3 -f 22/16/38 23/996/39 21/995/38 -f 24/11/39 1/985/10 23/996/39 -f 29/20/35 40/997/5 28/21/5 -f 36/763/21 47/998/37 35/7/37 -f 26/764/22 38/999/4 25/12/4 -f 33/766/38 44/1000/39 32/31/39 -f 30/23/34 41/1001/35 29/24/35 -f 25/9/4 48/1002/21 36/10/21 -f 27/14/36 37/1003/22 26/15/22 -f 34/762/3 45/1004/38 33/2/38 -f 31/765/10 42/1005/34 30/26/34 -f 28/17/5 39/1006/36 27/18/36 -f 35/4/37 46/1007/3 34/5/3 -f 32/29/39 43/1008/10 31/30/10 -f 49/780/40 60/36/41 58/52/41 -f 59/78/42 58/52/41 60/36/41 -f 59/78/42 63/782/43 57/73/42 -f 65/63/44 63/782/27 67/64/27 -f 68/61/28 62/80/45 66/69/45 -f 72/40/46 69/46/47 71/60/47 -f 66/69/45 61/65/44 65/63/44 -f 52/42/48 49/57/40 51/48/48 -f 72/40/46 51/48/48 70/50/46 -f 854/1009/9 835/1010/9 855/1011/9 -f 101/691/46 104/54/47 102/84/47 -f 105/111/49 104/54/47 109/784/49 -f 105/111/28 111/97/45 107/90/45 -f 107/90/45 112/91/44 108/87/44 -f 108/87/44 110/783/27 106/96/27 -f 114/108/42 110/783/43 116/105/42 -f 114/108/42 115/99/41 113/103/41 -f 884/112/48 887/687/40 885/689/48 -f 122/1012/50 126/1013/51 117/1014/52 -f 124/1015/44 130/1016/53 121/1017/45 -f 123/1018/54 127/1019/55 132/1020/56 -f 126/1013/51 551/1021/57 548/1022/58 -f 128/1023/59 120/1024/60 119/1025/48 -f 124/1015/44 132/1020/56 131/1026/61 -f 126/1027/51 118/1028/40 117/1029/52 -f 130/1016/53 122/1030/50 121/1017/45 -f 118/1028/40 128/1023/59 119/1025/48 -f 68/61/49 69/46/47 64/778/49 -f 144/119/21 157/1031/4 133/118/4 -f 134/124/22 159/1032/36 135/123/36 -f 141/143/38 166/1033/3 142/790/3 -f 138/134/34 163/1034/10 139/788/10 -f 135/127/36 160/1035/5 136/125/5 -f 142/146/3 167/1036/37 143/145/37 -f 139/139/10 164/1037/39 140/137/39 -f 136/130/5 161/1038/35 137/128/35 -f 143/115/37 168/1039/21 144/786/21 -f 133/120/4 158/1040/22 134/787/22 -f 140/140/39 165/1041/38 141/789/38 -f 137/133/35 162/1042/34 138/131/34 -f 151/142/22 174/1043/4 150/138/4 -f 148/132/37 171/1044/3 147/129/3 -f 155/116/34 178/1045/35 154/117/35 -f 145/121/39 180/1046/10 156/122/10 -f 152/141/36 175/1047/22 151/142/22 -f 149/136/21 172/1048/37 148/132/37 -f 156/122/10 179/1049/34 155/116/34 -f 146/126/38 169/1050/39 145/121/39 -f 153/144/5 176/1051/36 152/141/36 -f 150/135/4 173/1052/21 149/136/21 -f 147/129/3 170/1053/38 146/126/38 -f 154/117/35 177/1054/5 153/144/5 -f 221/1055/38 215/1056/62 214/1057/38 -f 223/1058/63 217/1059/35 216/1060/63 -f 224/1061/35 218/1062/34 217/1059/35 -f 226/1063/10 213/1064/39 219/1065/10 -f 225/1066/34 219/1065/10 218/1062/34 -f 220/1067/39 214/1057/38 213/1064/39 -f 233/1068/38 246/1069/62 234/1070/62 -f 241/1071/35 252/1072/63 253/1073/35 -f 242/1074/34 253/1073/35 254/1075/34 -f 231/1076/10 243/1077/39 232/1078/39 -f 242/1074/34 244/1079/10 231/1076/10 -f 232/1078/39 245/1080/38 233/1068/38 -f 258/1081/39 273/1082/38 259/1083/38 -f 266/1084/63 276/1085/35 267/1086/35 -f 259/1083/38 274/1087/62 260/1088/62 -f 267/1086/35 277/1089/34 268/1090/34 -f 268/1090/34 272/1091/10 257/1092/10 -f 257/1092/10 271/1093/39 258/1081/39 -f 292/1094/3 281/1095/37 280/1096/3 -f 299/1097/35 288/1098/34 287/1099/35 -f 301/1100/10 278/1101/39 289/1102/10 -f 296/1103/22 285/1104/36 284/1105/22 -f 293/1106/37 282/1107/21 281/1095/37 -f 300/1108/34 289/1102/10 288/1098/34 -f 290/1109/39 279/1110/38 278/1101/39 -f 297/1111/36 286/1112/5 285/1104/36 -f 294/1113/21 283/1114/4 282/1107/21 -f 291/1115/38 280/1096/3 279/1110/38 -f 298/1116/5 287/1099/35 286/1112/5 -f 295/1117/4 284/1105/22 283/1118/4 -f 306/1119/39 312/1120/10 305/1121/10 -f 304/1122/34 310/1123/35 303/1124/35 -f 307/1125/38 313/1126/39 306/1119/39 -f 305/1121/10 311/1127/34 304/1122/34 -f 303/1124/35 309/1128/63 302/1129/63 -f 308/1130/62 314/1131/38 307/1125/38 -f 338/210/4 320/226/22 319/223/4 -f 339/208/22 321/228/36 320/226/22 -f 340/205/36 322/230/64 321/228/36 -f 335/846/65 317/218/37 316/220/65 -f 336/216/37 318/221/21 317/218/37 -f 337/214/21 319/223/4 318/221/21 -f 341/207/64 349/231/66 322/230/64 -f 368/1132/4 328/316/21 369/1133/21 -f 371/1134/67 325/310/38 372/334/68 -f 343/1135/69 333/302/35 332/304/5 -f 367/1136/22 329/321/4 368/1137/4 -f 370/1138/70 326/312/3 371/1134/67 -f 344/1139/71 330/322/22 367/1136/22 -f 369/1133/21 327/314/37 370/1138/70 -f 372/334/68 325/310/38 324/309/39 -f 426/329/10 324/309/39 323/308/10 -f 344/1139/71 332/304/5 331/324/36 -f 335/846/65 351/238/72 352/240/72 -f 343/1140/73 405/1141/74 342/1142/75 -f 371/1143/76 413/1144/77 412/1145/78 -f 371/1143/76 411/293/74 370/859/79 -f 344/301/80 406/1146/81 343/1140/73 -f 427/327/34 323/308/10 334/306/34 -f 437/346/39 451/358/10 436/345/10 -f 438/348/38 450/359/39 437/346/39 -f 441/339/35 454/354/63 440/866/63 -f 439/350/62 452/360/38 438/348/38 -f 442/343/34 455/352/35 441/339/35 -f 436/345/10 456/356/34 442/343/34 -f 334/306/34 333/302/35 342/338/82 -f 519/434/83 516/885/84 518/435/84 -f 518/435/84 522/1147/85 520/1148/85 -f 515/1149/10 523/1150/86 521/1151/86 -f 521/1151/86 517/886/83 519/434/83 -f 520/1148/85 512/1152/4 514/1153/4 -f 524/883/87 527/1154/88 525/432/87 -f 526/1155/88 506/1156/89 527/1154/88 -f 551/1157/57 558/1158/90 559/1159/91 -f 125/1160/92 548/1161/58 549/1162/93 -f 125/1160/92 544/1163/94 128/1023/59 -f 132/1020/56 547/1164/95 131/1026/61 -f 128/1023/59 545/1165/96 127/1166/55 -f 127/1019/55 546/1167/97 132/1020/56 -f 129/1168/98 550/1169/99 551/1157/57 -f 131/1026/61 550/1169/99 130/1016/53 -f 555/1170/100 562/1171/101 558/1172/102 -f 546/1173/97 555/1174/103 547/1164/95 -f 545/1175/96 554/1176/104 546/1167/97 -f 549/1162/93 552/1177/105 544/1163/94 -f 549/1162/93 556/1178/106 557/1179/107 -f 544/1163/94 553/1180/108 545/1165/96 -f 547/1164/95 558/1158/90 550/1169/99 -f 548/1022/58 559/1181/91 556/1182/106 -f 558/1172/102 563/1183/109 559/1184/91 -f 555/1170/100 560/1185/110 561/1186/111 -f 561/1186/111 566/1187/112 562/1171/101 -f 562/1171/101 567/1188/113 563/1183/109 -f 561/1186/111 564/1189/114 565/1190/115 -f 565/1190/115 570/1191/116 566/1187/112 -f 566/1187/112 571/1192/117 567/1188/113 -f 564/1189/114 569/1193/118 565/1190/115 -f 557/1179/107 572/1194/119 552/1177/105 -f 557/1179/107 574/1195/120 575/1196/121 -f 552/1177/105 573/1197/122 553/1180/108 -f 575/1198/123 576/1199/124 572/1200/125 -f 574/1201/120 579/1202/126 575/1198/123 -f 573/1203/122 576/1199/124 577/1204/127 -f 579/1202/126 580/1205/128 576/1199/124 -f 579/1202/126 582/1206/129 583/1207/130 -f 576/1199/124 581/1208/131 577/1204/127 -f 583/1207/130 584/1209/132 580/1205/128 -f 583/1207/130 586/1210/133 587/1211/134 -f 580/1205/128 585/1212/135 581/1208/131 -f 587/1211/134 588/1213/136 584/1209/132 -f 586/1210/133 591/1214/137 587/1211/134 -f 584/1209/132 589/1215/138 585/1212/135 -f 591/1216/137 592/1217/139 588/1218/136 -f 591/1216/137 594/1219/140 595/1220/141 -f 588/1218/136 593/1221/142 589/1222/138 -f 595/1220/141 596/1223/143 592/1217/139 -f 594/1224/140 599/1225/144 595/1220/141 -f 592/1217/139 597/1226/145 593/1227/142 -f 563/1228/109 578/1229/146 559/1181/91 -f 573/1230/122 554/1176/104 553/1231/108 -f 597/1232/145 569/1233/118 568/1234/147 -f 570/1235/116 598/1236/148 571/1237/117 -f 596/1223/143 570/1235/116 569/1233/118 -f 564/1189/114 593/1227/142 568/1238/147 -f 577/1239/127 560/1240/110 554/1176/104 -f 581/1241/131 585/1212/135 593/1227/142 -f 568/1238/147 593/1227/142 597/1226/145 -f 594/1242/140 571/1243/117 598/1244/148 -f 594/1242/140 567/1245/113 571/1243/117 -f 582/1246/129 594/1242/140 586/1247/133 -f 574/1248/120 559/1181/91 578/1229/146 -f 645/539/28 663/543/149 646/538/149 -f 653/1249/5 667/1250/7 652/1251/7 -f 646/538/149 674/908/3 659/536/3 -f 654/1252/27 668/1253/5 653/1249/5 -f 660/1254/5 664/541/150 649/1255/150 -f 655/1256/10 669/1257/27 654/1252/27 -f 656/1258/28 670/1259/10 655/1256/10 -f 657/1260/3 671/1261/28 656/1258/28 -f 649/1255/150 665/549/27 650/1262/27 -f 658/1263/6 672/1264/3 657/1260/3 -f 650/1262/27 661/548/10 644/1265/10 -f 644/528/10 662/552/28 645/539/28 -f 651/1266/4 673/1267/6 658/1263/6 -f 652/1251/7 666/1268/4 651/1269/4 -f 689/1270/9 696/1271/1 688/1272/1 -f 690/1273/4 695/1274/9 689/1270/9 -f 685/1275/10 698/1276/29 686/1277/29 -f 686/1277/29 692/1278/2 687/1279/2 -f 691/1280/8 694/1281/4 690/1282/4 -f 687/1279/2 693/1283/8 691/1280/8 -f 684/1284/151 697/1285/10 685/1275/10 -f 688/1272/1 699/1286/151 684/1284/151 -f 711/1287/1 700/1288/151 715/1289/151 -f 715/1289/151 702/1290/10 714/1291/10 -f 712/1292/2 706/1293/8 708/1294/8 -f 708/1294/8 705/1295/4 709/1296/4 -f 713/1297/29 707/1298/2 712/1292/2 -f 714/1291/10 701/1299/29 713/1297/29 -f 709/1300/4 704/1301/9 710/1302/9 -f 710/1302/9 703/1303/1 711/1287/1 -f 731/1304/22 742/1305/152 730/1306/4 -f 728/1307/37 739/1308/153 727/1309/3 -f 735/1310/34 746/1311/154 734/1312/35 -f 725/1313/39 736/1314/155 724/1315/10 -f 732/1316/36 743/1317/156 731/1304/22 -f 729/1318/21 740/1319/157 728/1307/37 -f 724/1315/10 747/1320/158 735/1310/34 -f 726/1321/38 737/1322/159 725/1313/39 -f 733/1323/5 744/1324/160 732/1316/36 -f 730/1325/4 741/1326/161 729/1318/21 -f 727/1309/3 738/1327/162 726/1321/38 -f 734/1312/35 745/1328/163 733/1323/5 -f 740/1319/157 753/1329/164 752/1330/165 -f 747/1320/158 748/1331/166 759/1332/167 -f 737/1322/159 750/1333/168 749/1334/169 -f 744/1324/160 757/1335/170 756/1336/171 -f 742/1337/152 753/1329/164 741/1326/161 -f 738/1327/162 751/1338/172 750/1333/168 -f 746/1311/154 757/1335/170 745/1328/163 -f 742/1305/152 755/1339/173 754/1340/174 -f 740/1319/157 751/1338/172 739/1308/153 -f 747/1320/158 758/1341/175 746/1311/154 -f 737/1322/159 748/1331/166 736/1314/155 -f 744/1324/160 755/1339/173 743/1317/156 -f 752/1330/165 765/1342/176 764/1343/177 -f 759/1332/167 760/1344/178 771/1345/179 -f 749/1334/169 762/1346/180 761/1347/181 -f 757/1335/170 768/1348/182 756/1336/171 -f 754/1349/174 765/1342/176 753/1329/164 -f 751/1338/172 762/1346/180 750/1333/168 -f 757/1335/170 770/1350/183 769/1351/184 -f 754/1340/174 767/1352/185 766/1353/186 -f 751/1338/172 764/1343/177 763/1354/187 -f 759/1332/167 770/1350/183 758/1341/175 -f 749/1334/169 760/1344/178 748/1331/166 -f 756/1336/171 767/1352/185 755/1339/173 -f 766/1355/186 768/1356/182 760/1357/178 -f 791/618/188 788/615/2 789/619/2 -f 793/625/189 790/616/188 791/618/188 -f 795/624/190 792/621/189 793/625/189 -f 797/631/191 794/622/190 795/624/190 -f 799/633/23 796/629/191 797/631/191 -f 801/617/1 802/1358/192 803/952/192 -f 805/623/193 806/1359/194 807/954/194 -f 806/1360/194 809/635/195 807/958/194 -f 809/635/195 810/1361/18 811/632/18 -f 804/1362/193 803/956/192 802/1363/192 -f 818/1364/196 815/1365/23 814/640/23 -f 813/637/24 816/1366/197 812/1367/24 -f 817/1368/197 820/1369/188 816/1366/197 -f 822/1370/198 819/1371/196 818/1364/196 -f 825/1372/199 822/1370/198 824/1373/199 -f 825/1374/199 820/1369/188 821/1375/188 -f 826/652/10 831/1376/193 827/650/10 -f 830/1377/193 833/1378/1 831/1376/193 -f 843/1379/48 875/1380/200 839/1381/201 -f 834/1382/202 837/1383/203 835/1384/204 -f 836/1385/205 839/1381/201 837/1383/203 -f 829/1386/28 859/1387/45 856/1388/45 -f 838/1389/206 843/1379/48 839/1381/201 -f 850/1390/207 849/1391/32 847/1392/32 -f 846/1393/31 848/1394/31 851/1395/208 -f 850/1390/207 827/1396/5 840/1397/5 -f 844/1398/209 841/1399/3 826/1400/3 -f 834/1382/202 872/1401/210 836/1385/205 -f 837/1383/203 875/1380/200 873/1402/211 -f 858/1403/44 846/1393/27 828/1404/27 -f 856/1388/45 861/1405/44 858/1403/44 -f 838/1389/206 876/1406/41 842/1407/40 -f 836/1385/205 874/1408/212 838/1389/206 -f 835/1384/204 873/1402/211 855/1409/213 -f 852/1410/5 840/1397/5 875/1380/200 -f 874/1411/212 872/1412/210 841/1399/3 -f 831/1413/5 833/1414/5 827/1396/5 -f 832/1415/1 855/1011/9 833/1378/1 -f 854/1416/214 826/1400/3 872/1412/210 -f 101/691/46 885/689/48 103/694/46 -f 887/967/40 113/103/41 115/99/41 -f 827/1396/5 855/1417/213 873/1418/211 -f 826/1400/3 832/1419/3 830/1420/3 -f 902/707/48 899/722/46 898/724/46 -f 898/724/46 895/716/5 894/702/5 -f 897/726/41 892/713/3 893/699/3 -f 901/710/40 896/728/41 897/726/41 -f 902/707/48 901/710/40 903/709/48 -f 6/8/35 7/988/5 5/986/35 -f 923/1421/215 920/977/216 921/738/216 -f 914/1422/217 922/1423/215 923/1421/215 -f 936/981/218 939/980/219 938/979/218 -f 942/1424/220 938/979/218 940/1425/220 -f 943/1426/221 935/1427/10 941/1428/221 -f 937/760/219 941/1428/221 939/980/219 -f 932/1429/4 940/1425/220 934/1430/4 -f 2/13/10 4/6/34 3/984/34 -f 4/6/34 6/8/35 5/986/35 -f 8/1/5 10/3/36 9/987/36 -f 10/3/36 12/32/22 11/989/22 -f 12/32/22 14/28/4 13/990/4 -f 14/25/4 16/27/21 15/991/21 -f 16/27/21 18/22/37 17/993/37 -f 18/22/37 20/19/3 19/994/3 -f 20/19/3 22/16/38 21/995/38 -f 22/16/38 24/11/39 23/996/39 -f 24/11/39 2/13/10 1/985/10 -f 29/20/35 41/1431/35 40/997/5 -f 36/763/21 48/1432/21 47/998/37 -f 26/764/22 37/1433/22 38/999/4 -f 33/766/38 45/1434/38 44/1000/39 -f 30/23/34 42/1435/34 41/1001/35 -f 25/9/4 38/1436/4 48/1002/21 -f 27/14/36 39/1437/36 37/1003/22 -f 34/762/3 46/1438/3 45/1004/38 -f 31/765/10 43/1439/10 42/1005/34 -f 28/17/5 40/1440/5 39/1006/36 -f 35/4/37 47/1441/37 46/1007/3 -f 32/29/39 44/1442/39 43/1008/10 -f 49/780/40 50/776/40 60/36/41 -f 59/78/42 57/73/42 58/52/41 -f 59/78/42 67/64/43 63/782/43 -f 65/63/44 61/65/44 63/782/27 -f 68/61/28 64/778/28 62/80/45 -f 72/40/46 70/50/46 69/46/47 -f 66/69/45 62/80/45 61/65/44 -f 52/42/48 50/44/40 49/57/40 -f 72/40/46 52/42/48 51/48/48 -f 854/1009/9 834/1443/9 835/1010/9 -f 101/691/46 103/694/46 104/54/47 -f 105/111/49 102/84/47 104/54/47 -f 105/111/28 109/784/28 111/97/45 -f 107/90/45 111/97/45 112/91/44 -f 108/87/44 112/91/44 110/783/27 -f 114/108/42 106/96/43 110/783/43 -f 114/108/42 116/105/42 115/99/41 -f 884/112/48 886/114/40 887/687/40 -f 122/1012/50 129/1444/98 126/1013/51 -f 124/1015/44 131/1026/61 130/1016/53 -f 123/1018/54 120/1445/60 127/1019/55 -f 126/1013/51 129/1444/98 551/1021/57 -f 128/1023/59 127/1166/55 120/1024/60 -f 124/1015/44 123/1018/54 132/1020/56 -f 126/1027/51 125/1160/92 118/1028/40 -f 130/1016/53 129/1168/98 122/1030/50 -f 118/1028/40 125/1160/92 128/1023/59 -f 68/61/49 71/60/47 69/46/47 -f 144/119/21 168/1446/21 157/1031/4 -f 134/124/22 158/1447/22 159/1032/36 -f 141/143/38 165/1448/38 166/1033/3 -f 138/134/34 162/1449/34 163/1034/10 -f 135/127/36 159/1450/36 160/1035/5 -f 142/146/3 166/1451/3 167/1036/37 -f 139/139/10 163/1452/10 164/1037/39 -f 136/130/5 160/1453/5 161/1038/35 -f 143/115/37 167/1454/37 168/1039/21 -f 133/120/4 157/1455/4 158/1040/22 -f 140/140/39 164/1456/39 165/1041/38 -f 137/133/35 161/1457/35 162/1042/34 -f 151/142/22 175/1047/22 174/1043/4 -f 148/132/37 172/1048/37 171/1044/3 -f 155/116/34 179/1049/34 178/1045/35 -f 145/121/39 169/1050/39 180/1046/10 -f 152/141/36 176/1051/36 175/1047/22 -f 149/136/21 173/1052/21 172/1048/37 -f 156/122/10 180/1046/10 179/1049/34 -f 146/126/38 170/1053/38 169/1050/39 -f 153/144/5 177/1054/5 176/1051/36 -f 150/135/4 174/1458/4 173/1052/21 -f 147/129/3 171/1044/3 170/1053/38 -f 154/117/35 178/1045/35 177/1054/5 -f 221/1055/38 222/1459/62 215/1056/62 -f 223/1058/63 224/1061/35 217/1059/35 -f 224/1061/35 225/1066/34 218/1062/34 -f 226/1063/10 220/1067/39 213/1064/39 -f 225/1066/34 226/1063/10 219/1065/10 -f 220/1067/39 221/1055/38 214/1057/38 -f 233/1068/38 245/1080/38 246/1069/62 -f 241/1071/35 240/1460/63 252/1072/63 -f 242/1074/34 241/1071/35 253/1073/35 -f 231/1076/10 244/1079/10 243/1077/39 -f 242/1074/34 254/1075/34 244/1079/10 -f 232/1078/39 243/1077/39 245/1080/38 -f 258/1081/39 271/1093/39 273/1082/38 -f 266/1084/63 275/1461/63 276/1085/35 -f 259/1083/38 273/1082/38 274/1087/62 -f 267/1086/35 276/1085/35 277/1089/34 -f 268/1090/34 277/1089/34 272/1091/10 -f 257/1092/10 272/1091/10 271/1093/39 -f 292/1094/3 293/1106/37 281/1095/37 -f 299/1097/35 300/1108/34 288/1098/34 -f 301/1100/10 290/1109/39 278/1101/39 -f 296/1103/22 297/1111/36 285/1104/36 -f 293/1106/37 294/1113/21 282/1107/21 -f 300/1108/34 301/1100/10 289/1102/10 -f 290/1109/39 291/1115/38 279/1110/38 -f 297/1111/36 298/1116/5 286/1112/5 -f 294/1113/21 295/1462/4 283/1114/4 -f 291/1115/38 292/1094/3 280/1096/3 -f 298/1116/5 299/1097/35 287/1099/35 -f 295/1117/4 296/1103/22 284/1105/22 -f 306/1119/39 313/1126/39 312/1120/10 -f 304/1122/34 311/1127/34 310/1123/35 -f 307/1125/38 314/1131/38 313/1126/39 -f 305/1121/10 312/1120/10 311/1127/34 -f 303/1124/35 310/1123/35 309/1128/63 -f 308/1130/62 315/1463/62 314/1131/38 -f 338/210/4 339/208/22 320/226/22 -f 339/208/22 340/205/36 321/228/36 -f 340/205/36 341/207/64 322/230/64 -f 335/846/65 336/216/37 317/218/37 -f 336/216/37 337/214/21 318/221/21 -f 337/214/21 338/210/4 319/223/4 -f 341/207/64 350/236/66 349/231/66 -f 368/1132/4 329/318/4 328/316/21 -f 371/1134/67 326/312/3 325/310/38 -f 343/1135/69 342/338/82 333/302/35 -f 367/1136/22 330/322/22 329/321/4 -f 370/1138/70 327/314/37 326/312/3 -f 344/1139/71 331/324/36 330/322/22 -f 369/1133/21 328/316/21 327/314/37 -f 324/309/39 430/330/39 372/334/68 -f 430/330/39 429/332/28 372/334/68 -f 426/329/10 430/330/39 324/309/39 -f 344/1139/71 343/1135/69 332/304/5 -f 335/846/65 316/220/65 351/238/72 -f 343/1140/73 406/1146/81 405/1141/74 -f 371/1143/76 372/1464/222 413/1144/77 -f 371/1143/76 412/1145/78 411/293/74 -f 344/301/80 407/300/223 406/1146/81 -f 427/327/34 426/329/10 323/308/10 -f 437/346/39 450/359/39 451/358/10 -f 438/348/38 452/360/38 450/359/39 -f 441/339/35 455/352/35 454/354/63 -f 439/350/62 453/362/62 452/360/38 -f 442/343/34 456/356/34 455/352/35 -f 436/345/10 451/358/10 456/356/34 -f 428/325/27 427/327/34 342/338/82 -f 427/327/34 334/306/34 342/338/82 -f 519/434/83 517/886/83 516/885/84 -f 518/435/84 516/885/84 522/1147/85 -f 515/1149/10 513/1465/10 523/1150/86 -f 521/1151/86 523/1150/86 517/886/83 -f 520/1148/85 522/1147/85 512/1152/4 -f 524/883/87 526/1155/88 527/1154/88 -f 526/1155/88 507/1466/89 506/1156/89 -f 551/1157/57 550/1169/99 558/1158/90 -f 125/1160/92 126/1027/51 548/1161/58 -f 125/1160/92 549/1162/93 544/1163/94 -f 132/1020/56 546/1173/97 547/1164/95 -f 128/1023/59 544/1163/94 545/1165/96 -f 127/1019/55 545/1175/96 546/1167/97 -f 129/1168/98 130/1016/53 550/1169/99 -f 131/1026/61 547/1164/95 550/1169/99 -f 555/1170/100 561/1186/111 562/1171/101 -f 546/1173/97 554/1467/104 555/1174/103 -f 545/1175/96 553/1231/108 554/1176/104 -f 549/1162/93 557/1179/107 552/1177/105 -f 549/1162/93 548/1161/58 556/1178/106 -f 544/1163/94 552/1177/105 553/1180/108 -f 547/1164/95 555/1174/103 558/1158/90 -f 548/1022/58 551/1021/57 559/1181/91 -f 558/1172/102 562/1171/101 563/1183/109 -f 555/1170/100 554/1468/104 560/1185/110 -f 561/1186/111 565/1190/115 566/1187/112 -f 562/1171/101 566/1187/112 567/1188/113 -f 561/1186/111 560/1185/110 564/1189/114 -f 565/1190/115 569/1193/118 570/1191/116 -f 566/1187/112 570/1191/116 571/1192/117 -f 564/1189/114 568/1238/147 569/1193/118 -f 557/1179/107 575/1196/121 572/1194/119 -f 557/1179/107 556/1178/106 574/1195/120 -f 552/1177/105 572/1194/119 573/1197/122 -f 575/1198/123 579/1202/126 576/1199/124 -f 574/1201/120 578/1469/146 579/1202/126 -f 573/1203/122 572/1200/125 576/1199/124 -f 579/1202/126 583/1207/130 580/1205/128 -f 579/1202/126 578/1469/146 582/1206/129 -f 576/1199/124 580/1205/128 581/1208/131 -f 583/1207/130 587/1211/134 584/1209/132 -f 583/1207/130 582/1206/129 586/1210/133 -f 580/1205/128 584/1209/132 585/1212/135 -f 587/1211/134 591/1214/137 588/1213/136 -f 586/1210/133 590/1470/224 591/1214/137 -f 584/1209/132 588/1213/136 589/1215/138 -f 591/1216/137 595/1220/141 592/1217/139 -f 591/1216/137 590/1471/224 594/1219/140 -f 588/1218/136 592/1217/139 593/1221/142 -f 595/1220/141 599/1225/144 596/1223/143 -f 594/1224/140 598/1472/148 599/1225/144 -f 592/1217/139 596/1223/143 597/1226/145 -f 563/1228/109 567/1245/113 578/1229/146 -f 573/1230/122 577/1239/127 554/1176/104 -f 597/1232/145 596/1223/143 569/1233/118 -f 570/1235/116 599/1225/144 598/1236/148 -f 596/1223/143 599/1225/144 570/1235/116 -f 577/1239/127 564/1189/114 560/1240/110 -f 589/1215/138 593/1227/142 585/1212/135 -f 593/1227/142 564/1189/114 581/1241/131 -f 564/1189/114 577/1239/127 581/1241/131 -f 582/1246/129 578/1229/146 567/1245/113 -f 567/1245/113 594/1242/140 582/1246/129 -f 594/1242/140 590/1473/224 586/1247/133 -f 574/1248/120 556/1182/106 559/1181/91 -f 645/539/28 662/552/28 663/543/149 -f 653/1249/5 668/1253/5 667/1250/7 -f 646/538/149 663/543/149 674/908/3 -f 654/1252/27 669/1257/27 668/1253/5 -f 660/1254/5 675/542/5 664/541/150 -f 655/1256/10 670/1259/10 669/1257/27 -f 656/1258/28 671/1261/28 670/1259/10 -f 657/1260/3 672/1264/3 671/1261/28 -f 649/1255/150 664/541/150 665/549/27 -f 658/1263/6 673/1267/6 672/1264/3 -f 650/1262/27 665/549/27 661/548/10 -f 644/528/10 661/550/10 662/552/28 -f 651/1266/4 666/1474/4 673/1267/6 -f 652/1251/7 667/1250/7 666/1268/4 -f 689/1270/9 695/1274/9 696/1271/1 -f 690/1273/4 694/1475/4 695/1274/9 -f 685/1275/10 697/1285/10 698/1276/29 -f 686/1277/29 698/1276/29 692/1278/2 -f 691/1280/8 693/1283/8 694/1281/4 -f 687/1279/2 692/1278/2 693/1283/8 -f 684/1284/151 699/1286/151 697/1285/10 -f 688/1272/1 696/1271/1 699/1286/151 -f 711/1287/1 703/1303/1 700/1288/151 -f 715/1289/151 700/1288/151 702/1290/10 -f 712/1292/2 707/1298/2 706/1293/8 -f 708/1294/8 706/1293/8 705/1295/4 -f 713/1297/29 701/1299/29 707/1298/2 -f 714/1291/10 702/1290/10 701/1299/29 -f 709/1300/4 705/1476/4 704/1301/9 -f 710/1302/9 704/1301/9 703/1303/1 -f 731/1304/22 743/1317/156 742/1305/152 -f 728/1307/37 740/1319/157 739/1308/153 -f 735/1310/34 747/1320/158 746/1311/154 -f 725/1313/39 737/1322/159 736/1314/155 -f 732/1316/36 744/1324/160 743/1317/156 -f 729/1318/21 741/1326/161 740/1319/157 -f 724/1315/10 736/1314/155 747/1320/158 -f 726/1321/38 738/1327/162 737/1322/159 -f 733/1323/5 745/1328/163 744/1324/160 -f 730/1325/4 742/1337/152 741/1326/161 -f 727/1309/3 739/1308/153 738/1327/162 -f 734/1312/35 746/1311/154 745/1328/163 -f 740/1319/157 741/1326/161 753/1329/164 -f 747/1320/158 736/1314/155 748/1331/166 -f 737/1322/159 738/1327/162 750/1333/168 -f 744/1324/160 745/1328/163 757/1335/170 -f 742/1337/152 754/1349/174 753/1329/164 -f 738/1327/162 739/1308/153 751/1338/172 -f 746/1311/154 758/1341/175 757/1335/170 -f 742/1305/152 743/1317/156 755/1339/173 -f 740/1319/157 752/1330/165 751/1338/172 -f 747/1320/158 759/1332/167 758/1341/175 -f 737/1322/159 749/1334/169 748/1331/166 -f 744/1324/160 756/1336/171 755/1339/173 -f 752/1330/165 753/1329/164 765/1342/176 -f 759/1332/167 748/1331/166 760/1344/178 -f 749/1334/169 750/1333/168 762/1346/180 -f 757/1335/170 769/1351/184 768/1348/182 -f 754/1349/174 766/1477/186 765/1342/176 -f 751/1338/172 763/1354/187 762/1346/180 -f 757/1335/170 758/1341/175 770/1350/183 -f 754/1340/174 755/1339/173 767/1352/185 -f 751/1338/172 752/1330/165 764/1343/177 -f 759/1332/167 771/1345/179 770/1350/183 -f 749/1334/169 761/1347/181 760/1344/178 -f 756/1336/171 768/1348/182 767/1352/185 -f 760/1357/178 761/1478/181 764/1479/177 -f 761/1478/181 762/1480/180 764/1479/177 -f 762/1480/180 763/1481/187 764/1479/177 -f 764/1479/177 765/1482/176 766/1355/186 -f 766/1355/186 767/1483/185 768/1356/182 -f 768/1356/182 769/1484/184 770/1485/183 -f 770/1485/183 771/1486/179 768/1356/182 -f 771/1486/179 760/1357/178 768/1356/182 -f 764/1479/177 766/1355/186 760/1357/178 -f 791/618/188 790/616/188 788/615/2 -f 793/625/189 792/621/189 790/616/188 -f 795/624/190 794/622/190 792/621/189 -f 797/631/191 796/629/191 794/622/190 -f 799/633/23 798/630/23 796/629/191 -f 801/617/1 800/1487/1 802/1358/192 -f 805/623/193 804/1488/193 806/1359/194 -f 806/1360/194 808/1489/195 809/635/195 -f 809/635/195 808/1489/195 810/1361/18 -f 804/1362/193 805/627/193 803/956/192 -f 818/1364/196 819/1371/196 815/1365/23 -f 813/637/24 817/1368/197 816/1366/197 -f 817/1368/197 821/1375/188 820/1369/188 -f 822/1370/198 823/1490/198 819/1371/196 -f 825/1372/199 823/1490/198 822/1370/198 -f 825/1374/199 824/1491/199 820/1369/188 -f 826/652/10 830/1377/193 831/1376/193 -f 830/1377/193 832/1415/1 833/1378/1 -f 843/1379/48 877/1492/46 875/1380/200 -f 834/1382/202 836/1385/205 837/1383/203 -f 836/1385/205 838/1389/206 839/1381/201 -f 829/1386/28 847/1392/28 859/1387/45 -f 838/1389/206 842/1407/40 843/1379/48 -f 847/1392/32 829/1386/32 850/1390/207 -f 829/1386/32 845/1493/225 850/1390/207 -f 851/1395/208 844/1398/209 828/1404/31 -f 828/1404/31 846/1393/31 851/1395/208 -f 850/1390/207 845/1493/225 827/1396/5 -f 844/1398/209 851/1395/208 841/1399/3 -f 834/1382/202 854/1494/214 872/1401/210 -f 837/1383/203 839/1381/201 875/1380/200 -f 858/1403/44 861/1405/44 846/1393/27 -f 856/1388/45 859/1387/45 861/1405/44 -f 838/1389/206 874/1408/212 876/1406/41 -f 836/1385/205 872/1401/210 874/1408/212 -f 835/1384/204 837/1383/203 873/1402/211 -f 840/1397/5 827/1396/5 873/1418/211 -f 873/1418/211 875/1380/200 840/1397/5 -f 875/1380/200 877/1492/46 852/1410/5 -f 877/1492/46 879/1495/5 852/1410/5 -f 872/1412/210 826/1400/3 841/1399/3 -f 841/1399/3 853/1496/3 874/1411/212 -f 853/1496/3 878/1497/3 876/1498/41 -f 874/1411/212 853/1496/3 876/1498/41 -f 832/1415/1 854/1009/9 855/1011/9 -f 854/1416/214 832/1419/3 826/1400/3 -f 101/691/46 884/112/48 885/689/48 -f 887/967/40 886/695/40 113/103/41 -f 827/1396/5 833/1414/5 855/1417/213 -f 902/707/48 903/709/48 899/722/46 -f 898/724/46 899/722/46 895/716/5 -f 897/726/41 896/728/41 892/713/3 -f 901/710/40 900/706/40 896/728/41 -f 902/707/48 900/706/40 901/710/40 -f 6/8/35 8/1/5 7/988/5 -f 923/1421/215 922/1423/215 920/977/216 -f 914/1422/217 915/1499/217 922/1423/215 -f 936/981/218 937/760/219 939/980/219 -f 942/1424/220 936/981/218 938/979/218 -f 943/1426/221 933/1500/10 935/1427/10 -f 937/760/219 943/1426/221 941/1428/221 -f 932/1429/4 942/1424/220 940/1425/220 +f 188/301/91 189/1118/115 187/1119/91 +f 190/294/115 191/1120/116 189/1118/115 +f 194/289/86 195/1121/117 193/1122/86 +f 196/291/117 197/1123/103 195/1121/117 +f 198/320/103 199/1124/85 197/1123/103 +f 200/313/85 201/1125/102 199/1126/85 +f 202/315/102 203/1127/118 201/1125/102 +f 204/310/118 205/1128/84 203/1127/118 +f 206/307/84 207/1129/119 205/1128/84 +f 208/304/119 209/1130/120 207/1129/119 +f 210/299/120 187/1119/91 209/1130/120 +f 215/308/116 226/1131/86 214/309/86 +f 222/960/102 233/1132/118 221/295/118 +f 212/961/103 224/1133/85 211/300/85 +f 219/963/119 230/1134/120 218/319/120 +f 216/311/115 227/1135/116 215/312/116 +f 211/297/85 234/1136/102 222/298/102 +f 213/302/117 223/1137/103 212/303/103 +f 220/959/84 231/1138/119 219/290/119 +f 217/962/91 228/1139/115 216/314/115 +f 214/305/86 225/1140/117 213/306/117 +f 221/292/118 232/1141/84 220/293/84 +f 218/317/120 229/1142/91 217/318/91 +f 235/977/121 246/324/122 244/340/122 +f 245/366/123 244/340/122 246/324/122 +f 245/366/123 249/979/124 243/361/123 +f 251/351/125 249/979/108 253/352/108 +f 254/349/109 248/368/126 252/357/126 +f 258/328/127 255/334/128 257/348/128 +f 252/357/126 247/353/125 251/351/125 +f 238/330/129 235/345/121 237/336/129 +f 258/328/127 237/336/129 256/338/127 +f 874/1143/90 855/1144/90 875/1145/90 +f 287/907/127 290/342/128 288/372/128 +f 291/399/130 290/342/128 295/981/130 +f 291/399/109 297/385/126 293/378/126 +f 293/378/126 298/379/125 294/375/125 +f 294/375/125 296/980/108 292/384/108 +f 300/396/123 296/980/124 302/393/123 +f 300/396/123 301/387/122 299/391/122 +f 904/400/129 907/903/121 905/905/129 +f 308/1146/131 312/1147/132 303/1148/133 +f 310/1149/125 316/1150/134 307/1151/126 +f 309/1152/135 313/1153/136 318/1154/137 +f 312/1147/132 651/1155/138 648/1156/139 +f 314/1157/140 306/1158/141 305/1159/129 +f 310/1149/125 318/1154/137 317/1160/142 +f 312/1161/132 304/1162/121 303/1163/133 +f 316/1150/134 308/1164/131 307/1151/126 +f 304/1162/121 314/1157/140 305/1159/129 +f 254/349/130 255/334/128 250/975/130 +f 330/407/102 343/1165/85 319/406/85 +f 320/412/103 345/1166/117 321/411/117 +f 327/431/119 352/1167/84 328/987/84 +f 324/422/115 349/1168/91 325/985/91 +f 321/415/117 346/1169/86 322/413/86 +f 328/434/84 353/1170/118 329/433/118 +f 325/427/91 350/1171/120 326/425/120 +f 322/418/86 347/1172/116 323/416/116 +f 329/403/118 354/1173/102 330/983/102 +f 319/408/85 344/1174/103 320/984/103 +f 326/428/120 351/1175/119 327/986/119 +f 323/421/116 348/1176/115 324/419/115 +f 337/430/103 360/1177/85 336/426/85 +f 334/420/118 357/1178/84 333/417/84 +f 341/404/115 364/1179/116 340/405/116 +f 331/409/120 366/1180/91 342/410/91 +f 338/429/117 361/1181/103 337/430/103 +f 335/424/102 358/1182/118 334/420/118 +f 342/410/91 365/1183/115 341/404/115 +f 332/414/119 355/1184/120 331/409/120 +f 339/432/86 362/1185/117 338/429/117 +f 336/423/85 359/1186/102 335/424/102 +f 333/417/84 356/1187/119 332/414/119 +f 340/405/116 363/1188/86 339/432/86 +f 405/1189/119 418/1190/143 406/1191/143 +f 413/1192/116 419/1193/144 420/1194/116 +f 414/1195/115 420/1194/116 421/1196/115 +f 403/1197/91 415/1198/120 404/1199/120 +f 414/1195/115 416/1200/91 403/1197/91 +f 404/1199/120 417/1201/119 405/1189/119 +f 426/1202/120 432/1203/91 425/1204/91 +f 424/1205/115 430/1206/116 423/1207/116 +f 427/1208/119 433/1209/120 426/1202/120 +f 425/1204/91 431/1210/115 424/1205/115 +f 423/1207/116 429/1211/144 422/1212/144 +f 428/1213/143 434/1214/119 427/1208/119 +f 458/489/85 440/505/103 439/502/85 +f 459/487/103 441/507/117 440/505/103 +f 460/484/117 442/509/145 441/507/117 +f 455/1012/146 437/497/118 436/499/146 +f 456/495/118 438/500/102 437/497/118 +f 457/493/102 439/502/85 438/500/102 +f 461/486/145 469/510/147 442/509/145 +f 488/1215/85 448/595/102 489/1216/102 +f 491/1217/148 445/589/119 492/613/149 +f 463/1218/150 453/581/116 452/583/86 +f 487/1219/103 449/600/85 488/1220/85 +f 490/1221/151 446/591/84 491/1217/148 +f 464/1222/152 450/601/103 487/1219/103 +f 489/1216/102 447/593/118 490/1221/151 +f 492/613/149 445/589/119 444/588/120 +f 546/608/91 444/588/120 443/587/91 +f 464/1222/152 452/583/86 451/603/117 +f 455/1012/146 471/517/153 472/519/153 +f 463/1223/154 525/1224/155 462/1225/156 +f 491/1226/157 533/1227/158 532/1228/159 +f 491/1226/157 531/572/155 490/1025/160 +f 464/580/161 526/1229/162 463/1223/154 +f 547/606/115 443/587/91 454/585/115 +f 557/625/120 571/637/91 556/624/91 +f 558/627/119 570/638/120 557/625/120 +f 561/618/116 574/633/144 560/1032/144 +f 559/629/143 572/639/119 558/627/119 +f 562/622/115 575/631/116 561/618/116 +f 556/624/91 576/635/115 562/622/115 +f 454/585/115 453/581/116 462/617/163 +f 624/1047/164 627/1230/165 625/699/164 +f 626/1231/165 618/1232/166 627/1230/165 +f 651/1233/138 658/1234/167 659/1235/168 +f 311/1236/169 648/1237/139 649/1238/170 +f 311/1236/169 644/1239/171 314/1157/140 +f 318/1154/137 647/1240/172 317/1160/142 +f 314/1157/140 645/1241/173 313/1242/136 +f 313/1153/136 646/1243/174 318/1154/137 +f 315/1244/175 650/1245/176 651/1233/138 +f 317/1160/142 650/1245/176 316/1150/134 +f 655/1246/177 662/1247/178 658/1248/179 +f 646/1249/174 655/1250/180 647/1240/172 +f 645/1251/173 654/1252/181 646/1243/174 +f 649/1238/170 652/1253/182 644/1239/171 +f 649/1238/170 656/1254/183 657/1255/184 +f 644/1239/171 653/1256/185 645/1241/173 +f 647/1240/172 658/1234/167 650/1245/176 +f 648/1156/139 659/1257/168 656/1258/183 +f 658/1248/179 663/1259/186 659/1260/168 +f 655/1246/177 660/1261/187 661/1262/188 +f 661/1262/188 666/1263/189 662/1247/178 +f 662/1247/178 667/1264/190 663/1259/186 +f 661/1262/188 664/1265/191 665/1266/192 +f 665/1266/192 670/1267/193 666/1263/189 +f 666/1263/189 671/1268/194 667/1264/190 +f 664/1265/191 669/1269/195 665/1266/192 +f 657/1255/184 672/1270/196 652/1253/182 +f 657/1255/184 674/1271/197 675/1272/198 +f 652/1253/182 673/1273/199 653/1256/185 +f 675/1274/200 676/1275/201 672/1276/202 +f 674/1277/197 679/1278/203 675/1274/200 +f 673/1279/199 676/1275/201 677/1280/204 +f 679/1278/203 680/1281/205 676/1275/201 +f 679/1278/203 682/1282/206 683/1283/207 +f 676/1275/201 681/1284/208 677/1280/204 +f 683/1283/207 684/1285/209 680/1281/205 +f 683/1283/207 686/1286/210 687/1287/211 +f 680/1281/205 685/1288/212 681/1284/208 +f 687/1287/211 688/1289/213 684/1285/209 +f 686/1286/210 691/1290/214 687/1287/211 +f 684/1285/209 689/1291/215 685/1288/212 +f 691/1292/214 692/1293/216 688/1294/213 +f 691/1292/214 694/1295/217 695/1296/218 +f 688/1294/213 693/1297/219 689/1298/215 +f 695/1296/218 696/1299/220 692/1293/216 +f 694/1300/217 699/1301/221 695/1296/218 +f 692/1293/216 697/1302/222 693/1303/219 +f 663/1304/186 678/1305/223 659/1257/168 +f 673/1306/199 654/1252/181 653/1307/185 +f 697/1308/222 669/1309/195 668/1310/224 +f 670/1311/193 698/1312/225 671/1313/194 +f 696/1299/220 670/1311/193 669/1309/195 +f 664/1265/191 693/1303/219 668/1314/224 +f 677/1315/204 660/1316/187 654/1252/181 +f 681/1317/208 685/1288/212 693/1303/219 +f 668/1314/224 693/1303/219 697/1302/222 +f 694/1318/217 671/1319/194 698/1320/225 +f 694/1318/217 667/1321/190 671/1319/194 +f 682/1322/206 694/1318/217 686/1323/210 +f 674/1324/197 659/1257/168 678/1305/223 +f 729/780/109 747/784/226 730/779/226 +f 737/1325/86 751/1326/88 736/1327/88 +f 730/779/226 758/1064/84 743/777/84 +f 738/1328/108 752/1329/86 737/1325/86 +f 744/1330/86 748/782/227 733/1331/227 +f 739/1332/91 753/1333/108 738/1328/108 +f 740/1334/109 754/1335/91 739/1332/91 +f 741/1336/84 755/1337/109 740/1334/109 +f 733/1331/227 749/790/108 734/1338/108 +f 742/1339/87 756/1340/84 741/1336/84 +f 734/1338/108 745/789/91 728/1341/91 +f 728/769/91 746/793/109 729/780/109 +f 735/1342/85 757/1343/87 742/1339/87 +f 736/1327/88 750/1344/85 735/1345/85 +f 773/1346/90 780/1347/82 772/1348/82 +f 774/1349/85 779/1350/90 773/1346/90 +f 769/1351/91 782/1352/110 770/1353/110 +f 770/1353/110 776/1354/83 771/1355/83 +f 775/1356/89 778/1357/85 774/1358/85 +f 771/1355/83 777/1359/89 775/1356/89 +f 768/1360/228 781/1361/91 769/1351/91 +f 772/1348/82 783/1362/228 768/1360/228 +f 795/1363/82 784/1364/228 799/1365/228 +f 799/1365/228 786/1366/91 798/1367/91 +f 796/1368/83 790/1369/89 792/1370/89 +f 792/1370/89 789/1371/85 793/1372/85 +f 797/1373/110 791/1374/83 796/1368/83 +f 798/1367/91 785/1375/110 797/1373/110 +f 793/1376/85 788/1377/90 794/1378/90 +f 794/1378/90 787/1379/82 795/1363/82 +f 811/834/229 808/831/83 809/835/83 +f 813/841/230 810/832/229 811/834/229 +f 815/840/231 812/837/230 813/841/230 +f 817/847/232 814/838/231 815/840/231 +f 819/849/104 816/845/232 817/847/232 +f 821/833/82 822/1380/233 823/1091/233 +f 825/839/234 826/1381/235 827/1093/235 +f 826/1382/235 829/851/236 827/1097/235 +f 829/851/236 830/1383/99 831/848/99 +f 824/1384/234 823/1095/233 822/1385/233 +f 838/1386/237 835/1387/104 834/856/104 +f 833/853/105 836/1388/238 832/1389/105 +f 837/1390/238 840/1391/229 836/1388/238 +f 842/1392/239 839/1393/237 838/1386/237 +f 845/1394/240 842/1392/239 844/1395/240 +f 845/1396/240 840/1391/229 841/1397/229 +f 846/868/91 851/1398/234 847/866/91 +f 850/1399/234 853/1400/82 851/1398/234 +f 863/1401/129 895/1402/241 859/1403/242 +f 854/1404/243 857/1405/244 855/1406/245 +f 856/1407/246 859/1403/242 857/1405/244 +f 849/1408/109 879/1409/126 876/1410/126 +f 858/1411/247 863/1401/129 859/1403/242 +f 870/1412/248 869/1413/113 867/1414/113 +f 866/1415/112 868/1416/112 871/1417/249 +f 870/1412/248 847/1418/86 860/1419/86 +f 864/1420/250 861/1421/84 846/1422/84 +f 854/1404/243 892/1423/251 856/1407/246 +f 857/1405/244 895/1402/241 893/1424/252 +f 878/1425/125 866/1415/108 848/1426/108 +f 876/1410/126 881/1427/125 878/1425/125 +f 858/1411/247 896/1428/122 862/1429/121 +f 856/1407/246 894/1430/253 858/1411/247 +f 855/1406/245 893/1424/252 875/1431/254 +f 872/1432/86 860/1419/86 895/1402/241 +f 894/1433/253 892/1434/251 861/1421/84 +f 851/1435/86 853/1436/86 847/1418/86 +f 852/1437/82 875/1145/90 853/1400/82 +f 874/1438/255 846/1422/84 892/1434/251 +f 287/907/127 905/905/129 289/910/127 +f 907/1106/121 299/391/122 301/387/122 +f 847/1418/86 875/1439/254 893/1440/252 +f 846/1422/84 852/1441/84 850/1442/84 +f 922/923/129 919/938/127 918/940/127 +f 918/940/127 915/932/86 914/918/86 +f 917/942/122 912/929/84 913/915/84 +f 921/926/121 916/944/122 917/942/122 +f 922/923/129 921/926/121 923/925/129 +f 192/296/116 193/1122/86 191/1120/116 +f 943/1443/256 940/1116/257 941/954/257 +f 934/1444/258 942/1445/256 943/1443/256 +f 188/301/91 190/294/115 189/1118/115 +f 190/294/115 192/296/116 191/1120/116 +f 194/289/86 196/291/117 195/1121/117 +f 196/291/117 198/320/103 197/1123/103 +f 198/320/103 200/316/85 199/1124/85 +f 200/313/85 202/315/102 201/1125/102 +f 202/315/102 204/310/118 203/1127/118 +f 204/310/118 206/307/84 205/1128/84 +f 206/307/84 208/304/119 207/1129/119 +f 208/304/119 210/299/120 209/1130/120 +f 210/299/120 188/301/91 187/1119/91 +f 215/308/116 227/1446/116 226/1131/86 +f 222/960/102 234/1447/102 233/1132/118 +f 212/961/103 223/1448/103 224/1133/85 +f 219/963/119 231/1449/119 230/1134/120 +f 216/311/115 228/1450/115 227/1135/116 +f 211/297/85 224/1451/85 234/1136/102 +f 213/302/117 225/1452/117 223/1137/103 +f 220/959/84 232/1453/84 231/1138/119 +f 217/962/91 229/1454/91 228/1139/115 +f 214/305/86 226/1455/86 225/1140/117 +f 221/292/118 233/1456/118 232/1141/84 +f 218/317/120 230/1457/120 229/1142/91 +f 235/977/121 236/973/121 246/324/122 +f 245/366/123 243/361/123 244/340/122 +f 245/366/123 253/352/124 249/979/124 +f 251/351/125 247/353/125 249/979/108 +f 254/349/109 250/975/109 248/368/126 +f 258/328/127 256/338/127 255/334/128 +f 252/357/126 248/368/126 247/353/125 +f 238/330/129 236/332/121 235/345/121 +f 258/328/127 238/330/129 237/336/129 +f 874/1143/90 854/1458/90 855/1144/90 +f 287/907/127 289/910/127 290/342/128 +f 291/399/130 288/372/128 290/342/128 +f 291/399/109 295/981/109 297/385/126 +f 293/378/126 297/385/126 298/379/125 +f 294/375/125 298/379/125 296/980/108 +f 300/396/123 292/384/124 296/980/124 +f 300/396/123 302/393/123 301/387/122 +f 904/400/129 906/402/121 907/903/121 +f 308/1146/131 315/1459/175 312/1147/132 +f 310/1149/125 317/1160/142 316/1150/134 +f 309/1152/135 306/1460/141 313/1153/136 +f 312/1147/132 315/1459/175 651/1155/138 +f 314/1157/140 313/1242/136 306/1158/141 +f 310/1149/125 309/1152/135 318/1154/137 +f 312/1161/132 311/1236/169 304/1162/121 +f 316/1150/134 315/1244/175 308/1164/131 +f 304/1162/121 311/1236/169 314/1157/140 +f 254/349/130 257/348/128 255/334/128 +f 330/407/102 354/1461/102 343/1165/85 +f 320/412/103 344/1462/103 345/1166/117 +f 327/431/119 351/1463/119 352/1167/84 +f 324/422/115 348/1464/115 349/1168/91 +f 321/415/117 345/1465/117 346/1169/86 +f 328/434/84 352/1466/84 353/1170/118 +f 325/427/91 349/1467/91 350/1171/120 +f 322/418/86 346/1468/86 347/1172/116 +f 329/403/118 353/1469/118 354/1173/102 +f 319/408/85 343/1470/85 344/1174/103 +f 326/428/120 350/1471/120 351/1175/119 +f 323/421/116 347/1472/116 348/1176/115 +f 337/430/103 361/1181/103 360/1177/85 +f 334/420/118 358/1182/118 357/1178/84 +f 341/404/115 365/1183/115 364/1179/116 +f 331/409/120 355/1184/120 366/1180/91 +f 338/429/117 362/1185/117 361/1181/103 +f 335/424/102 359/1186/102 358/1182/118 +f 342/410/91 366/1180/91 365/1183/115 +f 332/414/119 356/1187/119 355/1184/120 +f 339/432/86 363/1188/86 362/1185/117 +f 336/423/85 360/1473/85 359/1186/102 +f 333/417/84 357/1178/84 356/1187/119 +f 340/405/116 364/1179/116 363/1188/86 +f 405/1189/119 417/1201/119 418/1190/143 +f 413/1192/116 412/1474/144 419/1193/144 +f 414/1195/115 413/1192/116 420/1194/116 +f 403/1197/91 416/1200/91 415/1198/120 +f 414/1195/115 421/1196/115 416/1200/91 +f 404/1199/120 415/1198/120 417/1201/119 +f 426/1202/120 433/1209/120 432/1203/91 +f 424/1205/115 431/1210/115 430/1206/116 +f 427/1208/119 434/1214/119 433/1209/120 +f 425/1204/91 432/1203/91 431/1210/115 +f 423/1207/116 430/1206/116 429/1211/144 +f 428/1213/143 435/1475/143 434/1214/119 +f 458/489/85 459/487/103 440/505/103 +f 459/487/103 460/484/117 441/507/117 +f 460/484/117 461/486/145 442/509/145 +f 455/1012/146 456/495/118 437/497/118 +f 456/495/118 457/493/102 438/500/102 +f 457/493/102 458/489/85 439/502/85 +f 461/486/145 470/515/147 469/510/147 +f 488/1215/85 449/597/85 448/595/102 +f 491/1217/148 446/591/84 445/589/119 +f 463/1218/150 462/617/163 453/581/116 +f 487/1219/103 450/601/103 449/600/85 +f 490/1221/151 447/593/118 446/591/84 +f 464/1222/152 451/603/117 450/601/103 +f 489/1216/102 448/595/102 447/593/118 +f 444/588/120 550/609/120 492/613/149 +f 550/609/120 549/611/109 492/613/149 +f 546/608/91 550/609/120 444/588/120 +f 464/1222/152 463/1218/150 452/583/86 +f 455/1012/146 436/499/146 471/517/153 +f 463/1223/154 526/1229/162 525/1224/155 +f 491/1226/157 492/1476/259 533/1227/158 +f 491/1226/157 532/1228/159 531/572/155 +f 464/580/161 527/579/260 526/1229/162 +f 547/606/115 546/608/91 443/587/91 +f 557/625/120 570/638/120 571/637/91 +f 558/627/119 572/639/119 570/638/120 +f 561/618/116 575/631/116 574/633/144 +f 559/629/143 573/641/143 572/639/119 +f 562/622/115 576/635/115 575/631/116 +f 556/624/91 571/637/91 576/635/115 +f 548/604/108 547/606/115 462/617/163 +f 547/606/115 454/585/115 462/617/163 +f 624/1047/164 626/1231/165 627/1230/165 +f 626/1231/165 619/1477/166 618/1232/166 +f 651/1233/138 650/1245/176 658/1234/167 +f 311/1236/169 312/1161/132 648/1237/139 +f 311/1236/169 649/1238/170 644/1239/171 +f 318/1154/137 646/1249/174 647/1240/172 +f 314/1157/140 644/1239/171 645/1241/173 +f 313/1153/136 645/1251/173 646/1243/174 +f 315/1244/175 316/1150/134 650/1245/176 +f 317/1160/142 647/1240/172 650/1245/176 +f 655/1246/177 661/1262/188 662/1247/178 +f 646/1249/174 654/1478/181 655/1250/180 +f 645/1251/173 653/1307/185 654/1252/181 +f 649/1238/170 657/1255/184 652/1253/182 +f 649/1238/170 648/1237/139 656/1254/183 +f 644/1239/171 652/1253/182 653/1256/185 +f 647/1240/172 655/1250/180 658/1234/167 +f 648/1156/139 651/1155/138 659/1257/168 +f 658/1248/179 662/1247/178 663/1259/186 +f 655/1246/177 654/1479/181 660/1261/187 +f 661/1262/188 665/1266/192 666/1263/189 +f 662/1247/178 666/1263/189 667/1264/190 +f 661/1262/188 660/1261/187 664/1265/191 +f 665/1266/192 669/1269/195 670/1267/193 +f 666/1263/189 670/1267/193 671/1268/194 +f 664/1265/191 668/1314/224 669/1269/195 +f 657/1255/184 675/1272/198 672/1270/196 +f 657/1255/184 656/1254/183 674/1271/197 +f 652/1253/182 672/1270/196 673/1273/199 +f 675/1274/200 679/1278/203 676/1275/201 +f 674/1277/197 678/1480/223 679/1278/203 +f 673/1279/199 672/1276/202 676/1275/201 +f 679/1278/203 683/1283/207 680/1281/205 +f 679/1278/203 678/1480/223 682/1282/206 +f 676/1275/201 680/1281/205 681/1284/208 +f 683/1283/207 687/1287/211 684/1285/209 +f 683/1283/207 682/1282/206 686/1286/210 +f 680/1281/205 684/1285/209 685/1288/212 +f 687/1287/211 691/1290/214 688/1289/213 +f 686/1286/210 690/1481/261 691/1290/214 +f 684/1285/209 688/1289/213 689/1291/215 +f 691/1292/214 695/1296/218 692/1293/216 +f 691/1292/214 690/1482/261 694/1295/217 +f 688/1294/213 692/1293/216 693/1297/219 +f 695/1296/218 699/1301/221 696/1299/220 +f 694/1300/217 698/1483/225 699/1301/221 +f 692/1293/216 696/1299/220 697/1302/222 +f 663/1304/186 667/1321/190 678/1305/223 +f 673/1306/199 677/1315/204 654/1252/181 +f 697/1308/222 696/1299/220 669/1309/195 +f 670/1311/193 699/1301/221 698/1312/225 +f 696/1299/220 699/1301/221 670/1311/193 +f 677/1315/204 664/1265/191 660/1316/187 +f 689/1291/215 693/1303/219 685/1288/212 +f 693/1303/219 664/1265/191 681/1317/208 +f 664/1265/191 677/1315/204 681/1317/208 +f 682/1322/206 678/1305/223 667/1321/190 +f 667/1321/190 694/1318/217 682/1322/206 +f 694/1318/217 690/1484/261 686/1323/210 +f 674/1324/197 656/1258/183 659/1257/168 +f 729/780/109 746/793/109 747/784/226 +f 737/1325/86 752/1329/86 751/1326/88 +f 730/779/226 747/784/226 758/1064/84 +f 738/1328/108 753/1333/108 752/1329/86 +f 744/1330/86 759/783/86 748/782/227 +f 739/1332/91 754/1335/91 753/1333/108 +f 740/1334/109 755/1337/109 754/1335/91 +f 741/1336/84 756/1340/84 755/1337/109 +f 733/1331/227 748/782/227 749/790/108 +f 742/1339/87 757/1343/87 756/1340/84 +f 734/1338/108 749/790/108 745/789/91 +f 728/769/91 745/791/91 746/793/109 +f 735/1342/85 750/1485/85 757/1343/87 +f 736/1327/88 751/1326/88 750/1344/85 +f 773/1346/90 779/1350/90 780/1347/82 +f 774/1349/85 778/1486/85 779/1350/90 +f 769/1351/91 781/1361/91 782/1352/110 +f 770/1353/110 782/1352/110 776/1354/83 +f 775/1356/89 777/1359/89 778/1357/85 +f 771/1355/83 776/1354/83 777/1359/89 +f 768/1360/228 783/1362/228 781/1361/91 +f 772/1348/82 780/1347/82 783/1362/228 +f 795/1363/82 787/1379/82 784/1364/228 +f 799/1365/228 784/1364/228 786/1366/91 +f 796/1368/83 791/1374/83 790/1369/89 +f 792/1370/89 790/1369/89 789/1371/85 +f 797/1373/110 785/1375/110 791/1374/83 +f 798/1367/91 786/1366/91 785/1375/110 +f 793/1376/85 789/1487/85 788/1377/90 +f 794/1378/90 788/1377/90 787/1379/82 +f 811/834/229 810/832/229 808/831/83 +f 813/841/230 812/837/230 810/832/229 +f 815/840/231 814/838/231 812/837/230 +f 817/847/232 816/845/232 814/838/231 +f 819/849/104 818/846/104 816/845/232 +f 821/833/82 820/1488/82 822/1380/233 +f 825/839/234 824/1489/234 826/1381/235 +f 826/1382/235 828/1490/236 829/851/236 +f 829/851/236 828/1490/236 830/1383/99 +f 824/1384/234 825/843/234 823/1095/233 +f 838/1386/237 839/1393/237 835/1387/104 +f 833/853/105 837/1390/238 836/1388/238 +f 837/1390/238 841/1397/229 840/1391/229 +f 842/1392/239 843/1491/239 839/1393/237 +f 845/1394/240 843/1491/239 842/1392/239 +f 845/1396/240 844/1492/240 840/1391/229 +f 846/868/91 850/1399/234 851/1398/234 +f 850/1399/234 852/1437/82 853/1400/82 +f 863/1401/129 897/1493/127 895/1402/241 +f 854/1404/243 856/1407/246 857/1405/244 +f 856/1407/246 858/1411/247 859/1403/242 +f 849/1408/109 867/1414/109 879/1409/126 +f 858/1411/247 862/1429/121 863/1401/129 +f 867/1414/113 849/1408/113 870/1412/248 +f 849/1408/113 865/1494/262 870/1412/248 +f 871/1417/249 864/1420/250 848/1426/112 +f 848/1426/112 866/1415/112 871/1417/249 +f 870/1412/248 865/1494/262 847/1418/86 +f 864/1420/250 871/1417/249 861/1421/84 +f 854/1404/243 874/1495/255 892/1423/251 +f 857/1405/244 859/1403/242 895/1402/241 +f 878/1425/125 881/1427/125 866/1415/108 +f 876/1410/126 879/1409/126 881/1427/125 +f 858/1411/247 894/1430/253 896/1428/122 +f 856/1407/246 892/1423/251 894/1430/253 +f 855/1406/245 857/1405/244 893/1424/252 +f 860/1419/86 847/1418/86 893/1440/252 +f 893/1440/252 895/1402/241 860/1419/86 +f 895/1402/241 897/1493/127 872/1432/86 +f 897/1493/127 899/1496/86 872/1432/86 +f 892/1434/251 846/1422/84 861/1421/84 +f 861/1421/84 873/1497/84 894/1433/253 +f 873/1497/84 898/1498/84 896/1499/122 +f 894/1433/253 873/1497/84 896/1499/122 +f 852/1437/82 874/1143/90 875/1145/90 +f 874/1438/255 852/1441/84 846/1422/84 +f 287/907/127 904/400/129 905/905/129 +f 907/1106/121 906/911/121 299/391/122 +f 847/1418/86 853/1436/86 875/1439/254 +f 922/923/129 923/925/129 919/938/127 +f 918/940/127 919/938/127 915/932/86 +f 917/942/122 916/944/122 912/929/84 +f 921/926/121 920/922/121 916/944/122 +f 922/923/129 920/922/121 921/926/121 +f 192/296/116 194/289/86 193/1122/86 +f 943/1443/256 942/1445/256 940/1116/257 +f 934/1444/258 935/1500/258 942/1445/256 diff --git a/src/main/resources/assets/hbm/models/weapons/flaregun.obj b/src/main/resources/assets/hbm/models/weapons/flaregun.obj new file mode 100644 index 000000000..8d080c39a --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/flaregun.obj @@ -0,0 +1,2850 @@ +# Blender v2.79 (sub 0) OBJ File: 'flaregun.blend' +# www.blender.org +o Flare +v 0.882965 4.591380 -2.458135 +v 0.509780 4.964565 -2.458135 +v 0.000000 5.101160 -2.458135 +v -0.509780 4.964565 -2.458135 +v -0.882965 4.591380 -2.458135 +v -1.019560 4.081600 -2.458135 +v -0.882965 3.571820 -2.458135 +v -0.509780 3.198636 -2.458135 +v 0.000000 3.062041 -2.458135 +v 0.509780 3.198636 -2.458135 +v 1.019560 4.081600 -2.458135 +v 0.882964 3.571820 -2.458135 +v 0.882965 4.591380 -2.128838 +v 0.509780 4.964565 -2.128838 +v 0.000000 5.101160 -2.128838 +v -0.509780 4.964565 -2.128838 +v -0.882965 4.591380 -2.128838 +v -1.019560 4.081600 -2.128838 +v -0.882965 3.571820 -2.128838 +v -0.509780 3.198636 -2.128838 +v 0.000000 3.062041 -2.128838 +v 0.509780 3.198636 -2.128838 +v 1.019560 4.081600 -2.128838 +v 0.882964 3.571820 -2.128838 +v 0.767825 4.524904 -2.128838 +v 0.443304 4.849426 -2.128838 +v -0.000000 4.968208 -2.128838 +v -0.443304 4.849426 -2.128838 +v -0.767825 4.524904 -2.128838 +v -0.886608 4.081600 -2.128838 +v -0.767825 3.638296 -2.128838 +v -0.443304 3.313776 -2.128838 +v -0.000000 3.194993 -2.128838 +v 0.443304 3.313776 -2.128838 +v 0.886608 4.081600 -2.128838 +v 0.767824 3.638296 -2.128838 +v 0.767825 4.524904 2.191458 +v 0.443304 4.849426 2.191458 +v -0.000000 4.968208 2.191458 +v -0.443304 4.849426 2.191458 +v -0.767825 4.524904 2.191458 +v -0.886608 4.081600 2.191458 +v -0.767825 3.638296 2.191458 +v -0.443304 3.313776 2.191458 +v -0.000000 3.194993 2.191458 +v 0.443304 3.313776 2.191458 +v 0.886608 4.081600 2.191458 +v 0.767824 3.638296 2.191458 +vt 0.112500 0.250000 +vt 0.115000 0.236667 +vt 0.115000 0.250000 +vt 0.115000 0.223333 +vt 0.112500 0.210000 +vt 0.115000 0.210000 +vt 0.115000 0.183333 +vt 0.112500 0.196667 +vt 0.112500 0.183333 +vt 0.112500 0.263333 +vt 0.115000 0.263333 +vt 0.115000 0.196667 +vt 0.112500 0.290000 +vt 0.115000 0.276667 +vt 0.115000 0.290000 +vt 0.112500 0.316667 +vt 0.115000 0.303333 +vt 0.115000 0.316667 +vt 0.112500 0.223333 +vt 0.112500 0.276667 +vt 0.115000 0.170000 +vt 0.112500 0.170000 +vt 0.115000 0.156667 +vt 0.146256 0.253555 +vt 0.119988 0.233333 +vt 0.146256 0.213112 +vt 0.149838 0.160614 +vt 0.149838 0.206053 +vt 0.120324 0.183333 +vt 0.112500 0.236667 +vt 0.112500 0.303333 +vt 0.112500 0.156667 +vt 0.152666 0.221658 +vt 0.155012 0.233333 +vt 0.152666 0.245008 +vt 0.137500 0.256683 +vt 0.128744 0.253555 +vt 0.122334 0.245008 +vt 0.122334 0.221658 +vt 0.128744 0.213112 +vt 0.137500 0.209983 +vt 0.122960 0.170216 +vt 0.130162 0.160614 +vt 0.140000 0.157099 +vt 0.157039 0.170216 +vt 0.159675 0.183333 +vt 0.157039 0.196450 +vt 0.140000 0.209567 +vt 0.130162 0.206053 +vt 0.122960 0.196450 +vt 0.120000 0.290000 +vt 0.120000 0.303333 +vt 0.120000 0.263333 +vt 0.120000 0.276667 +vt 0.120000 0.170000 +vt 0.120000 0.183333 +vt 0.120000 0.156667 +vt 0.120000 0.236667 +vt 0.120000 0.250000 +vt 0.120000 0.210000 +vt 0.120000 0.223333 +vt 0.120000 0.196667 +vt 0.120000 0.316667 +vt 0.025000 0.250000 +vt 0.025000 0.223333 +vt 0.025000 0.183333 +vt 0.025000 0.263333 +vt 0.025000 0.196667 +vt 0.025000 0.290000 +vt 0.025000 0.316667 +vt 0.025000 0.236667 +vt 0.025000 0.303333 +vt 0.025000 0.276667 +vt 0.025000 0.170000 +vt 0.025000 0.210000 +vt 0.025000 0.156667 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.5000 0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +s off +f 28/1/1 15/2/1 16/3/1 +f 14/4/1 25/5/1 13/6/1 +f 24/7/1 35/8/1 36/9/1 +f 29/10/1 16/3/1 17/11/1 +f 23/12/1 25/5/1 35/8/1 +f 31/13/1 18/14/1 19/15/1 +f 33/16/1 20/17/1 21/18/1 +f 15/2/1 26/19/1 14/4/1 +f 20/17/1 31/13/1 19/15/1 +f 30/20/1 17/11/1 18/14/1 +f 36/9/1 22/21/1 24/7/1 +f 34/22/1 21/23/1 22/21/1 +f 38/24/1 42/25/1 46/26/1 +f 8/27/2 4/28/2 11/29/2 +f 28/1/1 27/30/1 15/2/1 +f 14/4/1 26/19/1 25/5/1 +f 24/7/1 23/12/1 35/8/1 +f 29/10/1 28/1/1 16/3/1 +f 23/12/1 13/6/1 25/5/1 +f 31/13/1 30/20/1 18/14/1 +f 33/16/1 32/31/1 20/17/1 +f 15/2/1 27/30/1 26/19/1 +f 20/17/1 32/31/1 31/13/1 +f 30/20/1 29/10/1 17/11/1 +f 36/9/1 34/22/1 22/21/1 +f 34/22/1 33/32/1 21/23/1 +f 46/26/1 48/33/1 47/34/1 +f 47/34/1 37/35/1 46/26/1 +f 37/35/1 38/24/1 46/26/1 +f 38/24/1 39/36/1 42/25/1 +f 39/36/1 40/37/1 42/25/1 +f 40/37/1 41/38/1 42/25/1 +f 42/25/1 43/39/1 44/40/1 +f 44/40/1 45/41/1 42/25/1 +f 45/41/1 46/26/1 42/25/1 +f 11/29/2 12/42/2 10/43/2 +f 10/43/2 9/44/2 11/29/2 +f 9/44/2 8/27/2 11/29/2 +f 8/27/2 7/45/2 6/46/2 +f 6/46/2 5/47/2 4/28/2 +f 4/28/2 3/48/2 11/29/2 +f 3/48/2 2/49/2 11/29/2 +f 2/49/2 1/50/2 11/29/2 +f 8/27/2 6/46/2 4/28/2 +s 1 +f 20/17/3 7/51/4 8/52/3 +f 18/14/5 5/53/6 6/54/5 +f 24/7/7 10/55/8 12/56/7 +f 22/21/8 9/57/9 10/55/8 +f 16/3/10 3/58/11 4/59/10 +f 14/4/12 1/60/13 2/61/12 +f 11/62/14 24/7/7 12/56/7 +f 17/11/6 4/59/10 5/53/6 +f 1/60/13 23/12/14 11/62/14 +f 19/15/4 6/54/5 7/51/4 +f 21/18/9 8/52/3 9/63/9 +f 15/2/11 2/61/12 3/58/11 +f 40/64/10 27/30/11 28/1/10 +f 38/65/12 25/5/13 26/19/12 +f 35/8/14 48/66/7 36/9/7 +f 41/67/6 28/1/10 29/10/6 +f 25/5/13 47/68/14 35/8/14 +f 43/69/4 30/20/5 31/13/4 +f 45/70/9 32/31/3 33/16/9 +f 39/71/11 26/19/12 27/30/11 +f 44/72/3 31/13/4 32/31/3 +f 42/73/5 29/10/6 30/20/5 +f 48/66/7 34/22/8 36/9/7 +f 46/74/8 33/32/9 34/22/8 +f 20/17/3 19/15/4 7/51/4 +f 18/14/5 17/11/6 5/53/6 +f 24/7/7 22/21/8 10/55/8 +f 22/21/8 21/23/9 9/57/9 +f 16/3/10 15/2/11 3/58/11 +f 14/4/12 13/6/13 1/60/13 +f 11/62/14 23/12/14 24/7/7 +f 17/11/6 16/3/10 4/59/10 +f 1/60/13 13/6/13 23/12/14 +f 19/15/4 18/14/5 6/54/5 +f 21/18/9 20/17/3 8/52/3 +f 15/2/11 14/4/12 2/61/12 +f 40/64/10 39/71/11 27/30/11 +f 38/65/12 37/75/13 25/5/13 +f 35/8/14 47/68/14 48/66/7 +f 41/67/6 40/64/10 28/1/10 +f 25/5/13 37/75/13 47/68/14 +f 43/69/4 42/73/5 30/20/5 +f 45/70/9 44/72/3 32/31/3 +f 39/71/11 38/65/12 26/19/12 +f 44/72/3 43/69/4 31/13/4 +f 42/73/5 41/67/6 29/10/6 +f 48/66/7 46/74/8 34/22/8 +f 46/74/8 45/76/9 33/32/9 +o Hammer +v 0.745252 1.700511 -4.104497 +v 0.745252 1.813547 -4.151319 +v 0.745252 1.926583 -4.104497 +v 0.745252 1.973404 -3.991461 +v 0.745252 1.926583 -3.878425 +v 0.745252 1.813547 -3.831604 +v 0.745252 1.700511 -3.878425 +v 0.745252 1.653689 -3.991461 +v -0.626225 1.813547 -4.184730 +v -0.626225 1.676885 -4.128123 +v -0.745252 1.700511 -4.104497 +v -0.745252 1.813547 -4.151319 +v 0.626225 1.676885 -4.128123 +v 0.626225 1.813547 -4.184730 +v -0.626225 1.620278 -3.991461 +v -0.745252 1.653689 -3.991461 +v 0.626225 1.620278 -3.991461 +v -0.626225 1.676885 -3.854800 +v -0.745252 1.700511 -3.878425 +v 0.626225 1.676885 -3.854800 +v -0.626225 1.813547 -3.798193 +v -0.745252 1.813547 -3.831604 +v 0.626225 1.813547 -3.798193 +v -0.626225 1.950208 -3.854800 +v -0.745252 1.926583 -3.878425 +v 0.626225 1.950208 -3.854800 +v -0.626225 2.006815 -3.991461 +v -0.745252 1.973404 -3.991461 +v 0.626225 2.006815 -3.991461 +v -0.626225 1.950208 -4.128123 +v -0.745252 1.926583 -4.104497 +v 0.626225 1.950208 -4.128123 +v -0.206205 4.430529 -5.327692 +v -0.206205 4.510303 -5.183657 +v 0.206205 4.510303 -5.183657 +v 0.206205 4.430529 -5.327692 +v 0.206205 4.421892 -4.871769 +v 0.206205 4.372530 -4.722456 +v 0.206205 4.399612 -4.484733 +v 0.206205 4.442521 -4.233756 +v 0.206205 4.459024 -4.063620 +v 0.206205 4.490410 -3.895228 +v 0.206205 4.474938 -3.775805 +v 0.206205 4.611975 -3.495304 +v 0.206205 4.409944 -3.251491 +v 0.206205 4.139801 -3.461582 +v 0.206205 4.039521 -3.813910 +v 0.206205 4.008822 -4.135539 +v 0.206205 3.934636 -4.626007 +v 0.206205 3.845099 -4.867631 +v 0.206205 3.740214 -5.107749 +v 0.206205 4.068292 -5.353975 +v 0.206205 4.292388 -5.408881 +v 0.206205 4.476391 -5.035797 +v -0.206205 4.611975 -3.495304 +v -0.206205 4.409944 -3.251491 +v -0.206205 4.139801 -3.461582 +v -0.206205 4.474938 -3.775805 +v -0.206205 4.399612 -4.484733 +v -0.206205 4.442521 -4.233756 +v -0.206205 3.845099 -4.867631 +v -0.206205 3.934636 -4.626007 +v -0.206205 4.459024 -4.063620 +v -0.206205 4.490410 -3.895228 +v -0.206205 4.008822 -4.135539 +v -0.206205 4.039521 -3.813910 +v -0.206205 3.740214 -5.107749 +v -0.206205 4.372530 -4.722456 +v -0.206205 4.476391 -5.035797 +v -0.206205 4.421892 -4.871769 +v -0.206205 4.292388 -5.408881 +v -0.206205 4.068292 -5.353975 +vt 0.589044 0.875414 +vt 0.591244 0.874200 +vt 0.591244 0.882498 +vt 0.599072 0.881280 +vt 0.599072 0.875472 +vt 0.603428 0.875472 +vt 0.609398 0.934618 +vt 0.605458 0.935216 +vt 0.607800 0.924944 +vt 0.572500 0.826666 +vt 0.565000 0.816666 +vt 0.572500 0.816666 +vt 0.592420 0.913470 +vt 0.587478 0.912434 +vt 0.587032 0.904256 +vt 0.593446 0.875414 +vt 0.594358 0.878348 +vt 0.593446 0.881284 +vt 0.589044 0.881284 +vt 0.588132 0.878348 +vt 0.598170 0.878376 +vt 0.601250 0.874268 +vt 0.604330 0.878376 +vt 0.603428 0.881280 +vt 0.601250 0.882482 +vt 0.601300 0.936164 +vt 0.599674 0.926582 +vt 0.598482 0.936528 +vt 0.595692 0.937222 +vt 0.594344 0.927260 +vt 0.593712 0.936880 +vt 0.589066 0.939906 +vt 0.588506 0.929476 +vt 0.585026 0.935444 +vt 0.611804 0.922966 +vt 0.615782 0.920648 +vt 0.619862 0.927896 +vt 0.611872 0.935708 +vt 0.620770 0.932846 +vt 0.619426 0.935898 +vt 0.617040 0.937660 +vt 0.614590 0.936912 +vt 0.565000 0.826666 +vt 0.613758 0.913438 +vt 0.611736 0.913788 +vt 0.613114 0.903606 +vt 0.608884 0.913078 +vt 0.606004 0.912706 +vt 0.607666 0.902912 +vt 0.601754 0.911736 +vt 0.622638 0.911970 +vt 0.618510 0.916532 +vt 0.619080 0.905870 +vt 0.597728 0.911126 +vt 0.599360 0.901238 +vt 0.591202 0.896848 +vt 0.595268 0.899216 +vt 0.595198 0.912240 +vt 0.586102 0.909316 +vt 0.589916 0.914236 +vt 0.597526 0.878376 +vt 0.595008 0.878348 +vt 0.593906 0.874802 +vt 0.601250 0.873410 +vt 0.598616 0.874864 +vt 0.591244 0.873332 +vt 0.603882 0.874864 +vt 0.588584 0.874802 +vt 0.604974 0.878376 +vt 0.587482 0.878348 +vt 0.603882 0.881886 +vt 0.588584 0.881896 +vt 0.601250 0.883340 +vt 0.591244 0.883366 +vt 0.593906 0.881896 +vt 0.598616 0.881886 +vt 0.565000 0.870000 +vt 0.572500 0.873334 +vt 0.565000 0.873334 +vt 0.572500 0.940000 +vt 0.565000 0.950000 +vt 0.565000 0.940000 +vt 0.565000 0.833334 +vt 0.572500 0.833334 +vt 0.565000 0.853334 +vt 0.572500 0.846666 +vt 0.572500 0.853334 +vt 0.565000 0.840000 +vt 0.572500 0.836666 +vt 0.572500 0.840000 +vt 0.565000 0.856666 +vt 0.572500 0.856666 +vt 0.565000 0.836666 +vt 0.565000 0.846666 +vt 0.565000 0.866666 +vt 0.572500 0.863334 +vt 0.572500 0.866666 +vt 0.572500 0.880000 +vt 0.565000 0.883334 +vt 0.565000 0.880000 +vt 0.565000 0.863334 +vt 0.572500 0.883334 +vt 0.565000 0.896666 +vt 0.572500 0.870000 +vt 0.572500 0.950000 +vt 0.572500 0.896666 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.7700 0.6380 +vn -0.2703 -0.0000 -0.9628 +vn -0.2703 -0.6808 -0.6808 +vn 0.2703 -0.0000 -0.9628 +vn 0.2703 -0.6808 -0.6808 +vn -0.2703 -0.9628 -0.0000 +vn 0.2703 -0.9628 -0.0000 +vn -0.2703 -0.6808 0.6808 +vn 0.2703 -0.6808 0.6808 +vn -0.2703 0.0000 0.9628 +vn 0.2703 0.0000 0.9628 +vn -0.2703 0.6808 0.6808 +vn 0.2703 0.6808 0.6808 +vn -0.2703 0.9628 0.0000 +vn 0.2703 0.9628 0.0000 +vn -0.2703 0.6808 -0.6808 +vn 0.2703 0.6808 -0.6808 +vn 0.0000 0.9902 -0.1397 +vn 0.0000 0.7161 -0.6980 +vn 0.0000 -0.6139 0.7894 +vn 0.0000 0.9868 -0.1621 +vn 0.0000 0.8985 -0.4390 +vn 0.0000 0.9900 -0.1409 +vn 0.0000 0.9912 -0.1326 +vn 0.0000 0.9901 -0.1400 +vn 0.0000 0.9996 -0.0277 +vn 0.0000 0.9947 0.1027 +vn 0.0000 0.9629 0.2697 +vn 0.0000 0.9492 0.3146 +vn 0.0000 0.1450 -0.9894 +vn 0.0000 -0.4278 -0.9039 +vn 0.0000 -0.6003 -0.7998 +s off +f 55/77/15 56/78/15 52/79/15 +f 79/80/16 59/81/16 67/82/16 +f 86/83/15 87/84/15 97/85/15 +f 92/86/17 104/87/17 93/88/17 +f 117/89/16 81/90/16 120/91/16 +f 56/78/15 49/92/15 52/79/15 +f 49/92/15 50/93/15 52/79/15 +f 50/93/15 51/94/15 52/79/15 +f 52/79/15 53/95/15 54/96/15 +f 54/96/15 55/77/15 52/79/15 +f 79/80/16 60/97/16 59/81/16 +f 59/81/16 64/98/16 67/82/16 +f 67/82/16 70/99/16 79/80/16 +f 70/99/16 73/100/16 79/80/16 +f 73/100/16 76/101/16 79/80/16 +f 87/84/15 88/102/15 96/103/15 +f 88/102/15 89/104/15 96/103/15 +f 89/104/15 90/105/15 95/106/15 +f 90/105/15 91/107/15 95/106/15 +f 91/107/15 92/108/15 94/109/15 +f 92/108/15 93/110/15 94/109/15 +f 94/109/15 95/106/15 91/107/15 +f 95/106/15 96/103/15 89/104/15 +f 96/103/15 97/85/15 87/84/15 +f 98/111/15 99/112/15 100/113/15 +f 97/85/15 98/111/15 86/83/15 +f 98/111/15 100/113/15 85/114/15 +f 86/83/15 98/111/15 85/114/15 +f 100/113/15 101/115/15 84/116/15 +f 84/116/15 83/117/15 102/118/15 +f 84/116/15 102/118/15 100/113/15 +f 102/118/15 85/114/15 100/113/15 +f 92/86/17 103/119/17 104/87/17 +f 106/120/16 112/121/16 114/122/16 +f 112/121/16 111/123/16 114/122/16 +f 111/123/16 108/124/16 113/125/16 +f 108/124/16 107/126/16 113/125/16 +f 104/127/16 103/128/16 105/129/16 +f 103/128/16 106/120/16 105/129/16 +f 114/122/16 105/129/16 106/120/16 +f 113/125/16 114/122/16 111/123/16 +f 107/126/16 116/130/16 110/131/16 +f 113/125/16 107/126/16 110/131/16 +f 120/91/16 115/132/16 109/133/16 +f 120/91/16 109/133/16 118/134/16 +f 109/133/16 110/131/16 116/130/16 +f 118/134/16 109/133/16 116/130/16 +f 81/90/16 119/135/16 120/91/16 +f 117/89/16 82/136/16 81/90/16 +f 118/134/16 117/89/16 120/91/16 +s 1 +f 57/137/18 59/81/19 60/97/18 +f 62/138/20 49/92/21 61/139/21 +f 63/140/22 59/81/19 58/141/19 +f 65/142/23 49/92/21 56/78/23 +f 66/143/24 64/98/22 63/140/22 +f 68/144/25 56/78/23 55/77/25 +f 69/145/26 67/82/24 66/143/24 +f 71/146/27 55/77/25 54/96/27 +f 72/147/28 70/99/26 69/145/26 +f 74/148/29 54/96/27 53/95/29 +f 75/149/30 73/100/28 72/147/28 +f 77/150/31 53/95/29 52/79/31 +f 75/149/30 79/80/32 76/101/30 +f 77/150/31 51/94/33 80/151/33 +f 78/152/32 60/97/18 79/80/32 +f 80/151/33 50/93/20 62/138/20 +f 82/153/34 84/154/35 81/155/35 +f 94/156/36 104/157/36 105/158/36 +f 106/159/37 92/86/38 91/160/37 +f 107/161/39 88/162/40 87/163/39 +f 111/164/41 90/165/42 89/166/41 +f 116/167/43 87/163/39 86/168/43 +f 112/169/42 91/160/37 90/165/42 +f 108/170/40 89/166/41 88/162/40 +f 117/171/44 85/172/45 102/173/44 +f 101/174/46 120/175/47 119/176/46 +f 118/177/45 86/168/43 85/172/45 +f 100/178/47 115/179/48 120/175/47 +f 84/154/35 119/176/46 81/155/35 +f 82/153/34 102/173/44 83/180/34 +f 57/137/18 58/141/19 59/81/19 +f 62/138/20 50/93/20 49/92/21 +f 63/140/22 64/98/22 59/81/19 +f 65/142/23 61/139/21 49/92/21 +f 66/143/24 67/82/24 64/98/22 +f 68/144/25 65/142/23 56/78/23 +f 69/145/26 70/99/26 67/82/24 +f 71/146/27 68/144/25 55/77/25 +f 72/147/28 73/100/28 70/99/26 +f 74/148/29 71/146/27 54/96/27 +f 75/149/30 76/101/30 73/100/28 +f 77/150/31 74/148/29 53/95/29 +f 75/149/30 78/152/32 79/80/32 +f 77/150/31 52/79/31 51/94/33 +f 78/152/32 57/137/18 60/97/18 +f 80/151/33 51/94/33 50/93/20 +f 82/153/34 83/180/34 84/154/35 +f 94/156/36 93/181/36 104/157/36 +f 106/159/37 103/119/38 92/86/38 +f 107/161/39 108/170/40 88/162/40 +f 111/164/41 112/169/42 90/165/42 +f 116/167/43 107/161/39 87/163/39 +f 112/169/42 106/159/37 91/160/37 +f 108/170/40 111/164/41 89/166/41 +f 117/171/44 118/177/45 85/172/45 +f 101/174/46 100/178/47 120/175/47 +f 118/177/45 116/167/43 86/168/43 +f 100/178/47 99/182/48 115/179/48 +f 84/154/35 101/174/46 119/176/46 +f 82/153/34 117/171/44 102/173/44 +o Barrel +v 0.731983 1.964559 1.588737 +v 0.731983 2.154102 1.510226 +v 0.731983 2.343645 1.588737 +v 0.731983 2.422156 1.778280 +v 0.731983 2.343645 1.967823 +v 0.731983 2.154102 2.046335 +v 0.731983 1.964559 1.967823 +v 0.731983 1.886048 1.778280 +v -0.634395 2.154102 1.465021 +v -0.634395 1.932595 1.556772 +v -0.731983 1.964559 1.588737 +v -0.731983 2.154102 1.510226 +v 0.634395 1.932594 1.556772 +v 0.634395 2.154102 1.465021 +v -0.634395 1.840843 1.778280 +v -0.731983 1.886048 1.778280 +v 0.634395 1.840843 1.778280 +v -0.634395 1.932595 1.999788 +v -0.731983 1.964559 1.967823 +v 0.634395 1.932594 1.999788 +v -0.634395 2.154102 2.091539 +v -0.731983 2.154102 2.046335 +v 0.634395 2.154102 2.091539 +v -0.634395 2.375610 1.999788 +v -0.731983 2.343645 1.967823 +v 0.634395 2.375610 1.999788 +v -0.634395 2.467361 1.778280 +v -0.731983 2.422156 1.778280 +v 0.634395 2.467361 1.778280 +v -0.634395 2.375610 1.556772 +v -0.731983 2.343645 1.588737 +v 0.634395 2.375610 1.556772 +v -0.480500 5.241631 -2.458135 +v -0.480500 5.241631 2.917163 +v 0.480500 5.241631 2.917163 +v 0.480500 5.241631 -2.458135 +v 1.160030 4.562099 2.917163 +v 1.160029 4.562099 -2.458135 +v 1.160030 3.601100 2.917163 +v 1.160030 3.601100 -2.458135 +v 0.480500 2.921570 2.917163 +v 0.480500 2.921571 -2.458135 +v -0.480500 2.921570 2.917163 +v -0.480500 2.921571 -2.458135 +v -1.160029 3.601100 2.917163 +v -1.160030 3.601100 -2.458135 +v -1.160029 4.562099 2.917163 +v -0.882965 3.571820 2.917163 +v -1.019560 4.081600 2.917163 +v -0.882965 4.591380 2.917163 +v -0.509780 4.964565 2.917163 +v 0.000000 5.101160 2.917163 +v 0.509780 4.964563 2.917163 +v 0.882965 4.591380 2.917163 +v -1.160030 4.562099 -2.458135 +v 0.882965 4.591380 -2.458135 +v 0.509780 4.964565 -2.458135 +v 0.000000 5.101160 -2.458135 +v -0.509780 4.964565 -2.458135 +v -0.882965 4.591380 -2.458135 +v -1.019560 4.081600 -2.458135 +v -0.882965 3.571820 -2.458135 +v 0.000000 5.224927 2.791627 +v 0.000000 5.224926 8.802454 +v 0.437532 5.137895 8.802454 +v 0.437532 5.137897 2.791627 +v 0.808454 4.890054 8.802454 +v 0.808454 4.890055 2.791627 +v 1.056296 4.519132 8.802454 +v 1.056296 4.519133 2.791627 +v 1.143327 4.081600 8.802454 +v 1.143327 4.081600 2.791627 +v 1.056296 3.644067 8.802454 +v 1.056296 3.644068 2.791627 +v 0.808454 3.273145 8.802454 +v 0.808454 3.273145 2.791627 +v 0.437532 3.025303 8.802454 +v 0.437532 3.025304 2.791627 +v 0.000000 2.938272 8.802454 +v 0.000000 2.938273 2.791627 +v -0.437532 3.025303 8.802454 +v -0.437532 3.025304 2.791627 +v -0.808454 3.273145 8.802454 +v -0.808454 3.273145 2.791627 +v -1.056296 3.644067 8.802454 +v -1.056296 3.644068 2.791627 +v -1.143327 4.081600 8.802454 +v -1.143327 4.081600 2.791627 +v -1.056296 4.519132 8.802454 +v -1.056296 4.519133 2.791627 +v -0.808454 4.890054 8.802454 +v -0.808454 4.890055 2.791627 +v -0.437532 5.137895 8.802454 +v -0.882965 3.571820 8.802454 +v -1.019560 4.081600 8.802454 +v -0.882965 4.591379 8.802453 +v -0.509780 4.964563 8.802455 +v 0.000000 5.101159 8.802455 +v 0.509780 4.964563 8.802455 +v 0.882965 4.591380 8.802454 +v -0.437532 5.137897 2.791627 +v -0.509780 3.198636 -2.458135 +v -0.509780 3.198635 2.917163 +v 0.000000 3.062040 2.917163 +v 0.000000 3.062041 -2.458135 +v -0.509780 3.198635 8.802456 +v 0.000000 3.062040 8.802452 +v 0.509780 3.198635 2.917163 +v 0.509780 3.198636 -2.458135 +v 0.509780 3.198635 8.802452 +v 1.019560 4.081600 -2.458135 +v 1.019560 4.081600 2.917163 +v 1.019560 4.081600 8.802454 +v 0.882964 3.571820 -2.458135 +v 0.882965 3.571820 2.917163 +v 0.882965 3.571820 8.802455 +v 0.380419 2.209798 2.878785 +v 0.380419 3.025099 2.869944 +v -0.380419 3.025099 2.869944 +v -0.380419 2.209798 2.878785 +v -0.380419 1.997613 2.520242 +v 0.380419 1.997613 2.520242 +v -0.380419 3.025099 1.369944 +v -0.380419 1.988772 1.369944 +v 0.380419 3.025099 1.369944 +v 0.380419 1.988772 1.369944 +vt 0.303068 0.499090 +vt 0.305662 0.507436 +vt 0.299402 0.510894 +vt 0.311900 0.502596 +vt 0.314444 0.499204 +vt 0.318042 0.510786 +vt 0.402500 0.900000 +vt 0.295000 0.926666 +vt 0.295000 0.900000 +vt 0.402500 0.926666 +vt 0.295000 0.953334 +vt 0.402500 0.740000 +vt 0.295000 0.766666 +vt 0.295000 0.740000 +vt 0.402500 0.766666 +vt 0.295000 0.793334 +vt 0.402500 0.793334 +vt 0.295000 0.820000 +vt 0.402500 0.820000 +vt 0.295000 0.846666 +vt 0.224086 0.536286 +vt 0.223498 0.528860 +vt 0.233744 0.532522 +vt 0.402500 0.846666 +vt 0.295000 0.873334 +vt 0.402500 0.873334 +vt 0.374172 0.391588 +vt 0.373584 0.384172 +vt 0.387224 0.402360 +vt 0.369048 0.457912 +vt 0.358566 0.456996 +vt 0.366964 0.453774 +vt 0.243990 0.481534 +vt 0.233744 0.477874 +vt 0.243402 0.474110 +vt 0.356002 0.509156 +vt 0.366484 0.510072 +vt 0.358086 0.513292 +vt 0.346214 0.428866 +vt 0.354292 0.446270 +vt 0.340652 0.428082 +vt 0.040000 0.806666 +vt 0.055000 0.786667 +vt 0.055000 0.806666 +vt 0.060000 0.806666 +vt 0.060000 0.786667 +vt 0.077500 0.920000 +vt 0.077500 0.893334 +vt 0.100000 0.893334 +vt 0.032500 0.920000 +vt 0.032500 0.900000 +vt 0.040000 0.893334 +vt 0.080000 0.806666 +vt 0.305662 0.502548 +vt 0.303068 0.510894 +vt 0.296808 0.507436 +vt 0.296808 0.502548 +vt 0.299402 0.499090 +vt 0.318042 0.499204 +vt 0.320586 0.502596 +vt 0.320586 0.507394 +vt 0.314444 0.510786 +vt 0.311900 0.507394 +vt 0.402500 0.953334 +vt 0.210428 0.518074 +vt 0.210428 0.492320 +vt 0.213252 0.505198 +vt 0.215996 0.491536 +vt 0.251490 0.518860 +vt 0.257060 0.518074 +vt 0.243402 0.536286 +vt 0.243990 0.528860 +vt 0.215996 0.518860 +vt 0.387224 0.428082 +vt 0.373584 0.446270 +vt 0.374172 0.438854 +vt 0.381662 0.428866 +vt 0.353704 0.391588 +vt 0.354292 0.384172 +vt 0.363938 0.387932 +vt 0.384404 0.415222 +vt 0.381662 0.401578 +vt 0.343604 0.466676 +vt 0.349882 0.458304 +vt 0.349144 0.463190 +vt 0.358086 0.453774 +vt 0.375168 0.458304 +vt 0.381446 0.466676 +vt 0.377782 0.465694 +vt 0.384844 0.477614 +vt 0.382428 0.478254 +vt 0.384844 0.489452 +vt 0.381742 0.492230 +vt 0.343308 0.474836 +vt 0.340206 0.477614 +vt 0.257060 0.492320 +vt 0.254236 0.505198 +vt 0.223498 0.481534 +vt 0.224086 0.474110 +vt 0.251490 0.491536 +vt 0.340206 0.489452 +vt 0.342622 0.488812 +vt 0.349882 0.508762 +vt 0.343604 0.500390 +vt 0.347268 0.501374 +vt 0.366964 0.513292 +vt 0.381446 0.500390 +vt 0.375168 0.508762 +vt 0.375906 0.503876 +vt 0.340652 0.402360 +vt 0.346214 0.401578 +vt 0.363938 0.442510 +vt 0.343472 0.415222 +vt 0.353704 0.438854 +vt 0.040000 0.786667 +vt 0.107500 0.900000 +vt 0.107500 0.920000 +vt 0.062500 0.893334 +vt 0.062500 0.920000 +vt 0.080000 0.786667 +vt 0.322118 0.501128 +vt 0.319144 0.497162 +vt 0.307558 0.507848 +vt 0.307558 0.502136 +vt 0.322448 0.507798 +vt 0.322448 0.502192 +vt 0.304192 0.497010 +vt 0.322118 0.508864 +vt 0.303378 0.496560 +vt 0.299092 0.496560 +vt 0.318346 0.513268 +vt 0.295248 0.501050 +vt 0.313342 0.512828 +vt 0.294912 0.502136 +vt 0.294912 0.507848 +vt 0.310038 0.502192 +vt 0.310038 0.507798 +vt 0.298278 0.512974 +vt 0.310368 0.501128 +vt 0.299092 0.513422 +vt 0.303378 0.513422 +vt 0.318346 0.496722 +vt 0.314140 0.496722 +vt 0.307222 0.508934 +vt 0.290000 0.913334 +vt 0.170000 0.926666 +vt 0.170000 0.913334 +vt 0.290000 0.926666 +vt 0.170000 0.940000 +vt 0.290000 0.940000 +vt 0.170000 0.953334 +vt 0.290000 0.740000 +vt 0.170000 0.753334 +vt 0.170000 0.740000 +vt 0.290000 0.753334 +vt 0.170000 0.766666 +vt 0.290000 0.766666 +vt 0.170000 0.780000 +vt 0.290000 0.780000 +vt 0.170000 0.793334 +vt 0.290000 0.793334 +vt 0.170000 0.806666 +vt 0.290000 0.806666 +vt 0.170000 0.820000 +vt 0.290000 0.820000 +vt 0.170000 0.833334 +vt 0.290000 0.833334 +vt 0.170000 0.846666 +vt 0.290000 0.846666 +vt 0.170000 0.860000 +vt 0.290000 0.860000 +vt 0.170000 0.873334 +vt 0.290000 0.873334 +vt 0.170000 0.886666 +vt 0.290000 0.886666 +vt 0.170000 0.900000 +vt 0.290000 0.900000 +vt 0.295000 0.610000 +vt 0.402500 0.596666 +vt 0.402500 0.610000 +vt 0.290000 0.610000 +vt 0.172500 0.596666 +vt 0.290000 0.596666 +vt 0.295000 0.596666 +vt 0.402500 0.583334 +vt 0.290000 0.583334 +vt 0.295000 0.556666 +vt 0.402500 0.543334 +vt 0.402500 0.556666 +vt 0.172500 0.556666 +vt 0.290000 0.543334 +vt 0.290000 0.556666 +vt 0.295000 0.623334 +vt 0.402500 0.623334 +vt 0.172500 0.623334 +vt 0.290000 0.623334 +vt 0.402500 0.570000 +vt 0.172500 0.570000 +vt 0.290000 0.570000 +vt 0.295000 0.636666 +vt 0.402500 0.636666 +vt 0.172500 0.636666 +vt 0.290000 0.636666 +vt 0.295000 0.650000 +vt 0.402500 0.650000 +vt 0.172500 0.650000 +vt 0.290000 0.650000 +vt 0.295000 0.663334 +vt 0.402500 0.663334 +vt 0.290000 0.663334 +vt 0.295000 0.690000 +vt 0.402500 0.676666 +vt 0.402500 0.690000 +vt 0.172500 0.690000 +vt 0.290000 0.676666 +vt 0.290000 0.690000 +vt 0.295000 0.676666 +vt 0.172500 0.676666 +vt 0.295000 0.703334 +vt 0.402500 0.703334 +vt 0.172500 0.703334 +vt 0.290000 0.703334 +vt 0.295000 0.583334 +vt 0.172500 0.583334 +vt 0.307222 0.501050 +vt 0.319144 0.512828 +vt 0.314140 0.513268 +vt 0.298278 0.497010 +vt 0.310368 0.508864 +vt 0.295248 0.508934 +vt 0.313342 0.497164 +vt 0.304192 0.512974 +vt 0.290000 0.953334 +vt 0.172500 0.610000 +vt 0.295000 0.543334 +vt 0.172500 0.543334 +vt 0.295000 0.570000 +vt 0.172500 0.663334 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.0000 -1.0000 -0.0000 +vn -0.7071 -0.7071 -0.0000 +vn -0.0000 0.0000 1.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.0108 0.9999 +vn 0.0000 -0.8606 0.5093 +vn 0.0000 -1.0000 0.0077 +vn -0.4203 -0.6416 -0.6416 +vn -0.4203 0.0000 -0.9074 +vn 0.4203 0.0000 -0.9074 +vn 0.4203 -0.6416 -0.6416 +vn -0.4203 -0.9074 0.0000 +vn 0.4203 -0.9074 0.0000 +vn -0.4203 -0.6416 0.6416 +vn 0.4203 -0.6416 0.6416 +vn -0.4203 0.0000 0.9074 +vn 0.4203 0.0000 0.9074 +vn -0.4203 0.6416 0.6416 +vn 0.4203 0.6416 0.6416 +vn -0.4203 0.9074 0.0000 +vn 0.4203 0.9074 0.0000 +vn -0.4203 0.6416 -0.6416 +vn 0.4203 0.6416 -0.6416 +vn 0.3827 0.9239 0.0000 +vn 0.9239 0.3827 0.0000 +vn 0.9239 -0.3827 -0.0000 +vn 0.3827 -0.9239 -0.0000 +vn -0.3827 -0.9239 -0.0000 +vn -0.9239 -0.3827 -0.0000 +vn -0.9239 0.3827 0.0000 +vn -0.3827 0.9239 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.5000 -0.8660 -0.0000 +s off +f 128/183/49 122/184/49 124/185/49 +f 148/186/50 151/187/50 139/188/50 +f 154/189/51 156/190/51 153/191/51 +f 155/192/52 158/193/52 156/190/52 +f 157/194/49 160/195/49 158/196/49 +f 159/197/53 162/198/53 160/195/53 +f 161/199/54 164/200/54 162/198/54 +f 163/201/55 166/202/55 164/200/55 +f 154/203/56 171/204/56 172/205/56 +f 165/206/50 175/207/50 166/202/50 +f 167/208/57 153/191/57 175/207/57 +f 180/209/58 175/210/58 153/211/58 +f 217/212/56 218/213/56 213/214/56 +f 228/215/56 224/216/56 161/217/56 +f 230/218/56 227/219/56 197/220/56 +f 229/221/58 160/222/58 162/223/58 +f 238/224/59 240/225/59 237/226/59 +f 242/227/60 240/225/60 241/228/60 +f 243/229/50 244/230/50 241/231/50 +f 238/232/49 237/233/49 242/234/49 +f 241/228/61 246/235/61 242/227/61 +f 128/183/49 121/236/49 122/184/49 +f 122/184/49 123/237/49 124/185/49 +f 124/185/49 125/238/49 128/183/49 +f 125/238/49 126/239/49 128/183/49 +f 126/239/49 127/240/49 128/183/49 +f 151/187/50 132/241/50 139/188/50 +f 132/241/50 131/242/50 139/188/50 +f 131/242/50 136/243/50 139/188/50 +f 139/188/50 142/244/50 145/245/50 +f 145/245/50 148/186/50 139/188/50 +f 154/189/51 155/192/51 156/190/51 +f 155/192/52 157/246/52 158/193/52 +f 157/194/49 159/197/49 160/195/49 +f 159/197/53 161/199/53 162/198/53 +f 161/199/54 163/201/54 164/200/54 +f 163/201/55 165/206/55 166/202/55 +f 167/247/56 165/248/56 169/249/56 +f 165/248/56 168/250/56 169/249/56 +f 174/251/56 157/252/56 155/253/56 +f 173/254/56 174/251/56 155/253/56 +f 167/247/56 169/249/56 170/255/56 +f 167/247/56 170/255/56 154/203/56 +f 170/255/56 171/204/56 154/203/56 +f 173/254/56 155/253/56 172/205/56 +f 155/253/56 154/203/56 172/205/56 +f 165/206/50 167/208/50 175/207/50 +f 167/208/57 154/189/57 153/191/57 +f 156/256/58 158/257/58 176/258/58 +f 156/256/58 176/258/58 177/259/58 +f 182/260/58 166/261/58 181/262/58 +f 166/261/58 175/210/58 181/262/58 +f 153/211/58 156/256/58 178/263/58 +f 156/256/58 177/259/58 178/263/58 +f 180/209/58 181/262/58 175/210/58 +f 153/211/58 178/263/58 179/264/58 +f 179/264/58 180/209/58 153/211/58 +f 187/265/56 185/266/56 219/267/56 +f 185/266/56 184/268/56 218/213/56 +f 219/267/56 185/266/56 218/213/56 +f 184/268/56 213/214/56 218/213/56 +f 213/214/56 211/269/56 217/212/56 +f 211/269/56 209/270/56 216/271/56 +f 209/270/56 207/272/56 215/273/56 +f 207/272/56 205/274/56 215/273/56 +f 205/274/56 214/275/56 215/273/56 +f 220/276/56 189/277/56 187/265/56 +f 219/267/56 220/276/56 187/265/56 +f 209/270/56 215/273/56 216/271/56 +f 211/269/56 216/271/56 217/212/56 +f 159/278/56 157/252/56 232/279/56 +f 157/252/56 174/251/56 232/279/56 +f 168/250/56 165/248/56 223/280/56 +f 165/248/56 163/281/56 223/280/56 +f 159/278/56 232/279/56 235/282/56 +f 159/278/56 235/282/56 228/215/56 +f 223/280/56 163/281/56 224/216/56 +f 163/281/56 161/217/56 224/216/56 +f 161/217/56 159/278/56 228/215/56 +f 191/283/56 189/277/56 233/284/56 +f 189/277/56 220/276/56 233/284/56 +f 195/285/56 193/286/56 236/287/56 +f 193/286/56 191/283/56 233/284/56 +f 199/288/56 197/220/56 227/219/56 +f 197/220/56 195/285/56 230/218/56 +f 203/289/56 201/290/56 226/291/56 +f 201/290/56 199/288/56 227/219/56 +f 226/291/56 201/290/56 227/219/56 +f 214/275/56 205/274/56 203/289/56 +f 226/291/56 214/275/56 203/289/56 +f 193/286/56 233/284/56 236/287/56 +f 195/285/56 236/287/56 230/218/56 +f 164/292/58 166/261/58 182/260/58 +f 164/292/58 182/260/58 222/293/58 +f 176/258/58 158/257/58 231/294/58 +f 158/257/58 160/222/58 231/294/58 +f 162/223/58 164/292/58 225/295/58 +f 164/292/58 222/293/58 225/295/58 +f 234/296/58 231/294/58 160/222/58 +f 162/223/58 225/295/58 229/221/58 +f 229/221/58 234/296/58 160/222/58 +f 238/224/59 239/297/59 240/225/59 +f 242/227/60 237/226/60 240/225/60 +f 240/298/50 239/299/50 241/231/50 +f 239/299/50 243/229/50 241/231/50 +f 246/300/49 245/301/49 242/234/49 +f 245/301/49 238/232/49 242/234/49 +f 241/228/61 244/302/61 246/235/61 +s 1 +f 130/303/62 132/241/63 129/304/63 +f 134/305/64 121/236/65 133/306/65 +f 135/307/66 131/242/62 130/308/62 +f 137/309/67 121/236/65 128/183/67 +f 135/310/66 139/188/68 136/243/66 +f 137/311/67 127/240/69 140/312/69 +f 138/313/68 142/244/70 139/188/68 +f 143/314/71 127/240/69 126/239/71 +f 141/315/70 145/245/72 142/244/70 +f 143/316/71 125/238/73 146/317/73 +f 147/318/74 145/245/72 144/319/72 +f 149/320/75 125/238/73 124/185/75 +f 147/321/74 151/187/76 148/186/74 +f 149/322/75 123/237/77 152/323/77 +f 129/324/63 151/187/76 150/325/76 +f 134/326/64 123/237/77 122/184/64 +f 184/327/51 186/328/78 183/329/51 +f 185/330/78 188/331/52 186/328/78 +f 187/332/52 190/333/79 188/331/52 +f 189/334/79 192/335/49 190/336/79 +f 191/337/49 194/338/80 192/335/49 +f 193/339/80 196/340/53 194/338/80 +f 195/341/53 198/342/81 196/340/53 +f 197/343/81 200/344/54 198/342/81 +f 199/345/54 202/346/82 200/344/54 +f 201/347/82 204/348/55 202/346/82 +f 203/349/55 206/350/83 204/348/55 +f 205/351/83 208/352/50 206/350/83 +f 207/353/50 210/354/84 208/352/50 +f 209/355/84 212/356/57 210/354/84 +f 211/357/57 221/358/85 212/356/57 +f 213/359/85 183/329/51 221/358/85 +f 223/360/86 225/361/51 222/362/86 +f 223/363/86 227/364/51 224/365/51 +f 224/366/51 229/367/87 225/361/51 +f 227/364/51 228/368/87 224/365/51 +f 232/369/50 176/370/88 231/371/50 +f 233/372/50 174/373/88 232/374/50 +f 168/375/89 222/362/86 182/376/89 +f 214/377/89 223/363/86 168/378/89 +f 234/379/90 232/369/50 231/371/50 +f 236/380/90 232/374/50 235/381/90 +f 169/382/49 182/376/89 181/383/49 +f 215/384/49 168/378/89 169/385/49 +f 170/386/91 181/383/49 180/387/91 +f 216/388/91 169/385/49 170/389/91 +f 171/390/92 180/387/91 179/391/92 +f 171/392/92 216/388/91 170/389/91 +f 173/393/93 178/394/54 177/395/93 +f 219/396/93 172/397/54 173/398/93 +f 172/399/54 179/391/92 178/394/54 +f 218/400/54 171/392/92 172/397/54 +f 174/401/88 177/395/93 176/402/88 +f 220/403/88 173/398/93 174/404/88 +f 228/405/87 234/379/90 229/367/87 +f 230/406/87 235/381/90 228/368/87 +f 130/303/62 131/242/62 132/241/63 +f 134/305/64 122/184/64 121/236/65 +f 135/307/66 136/243/66 131/242/62 +f 137/309/67 133/407/65 121/236/65 +f 135/310/66 138/408/68 139/188/68 +f 137/311/67 128/183/67 127/240/69 +f 138/313/68 141/409/70 142/244/70 +f 143/314/71 140/410/69 127/240/69 +f 141/315/70 144/411/72 145/245/72 +f 143/316/71 126/239/71 125/238/73 +f 147/318/74 148/186/74 145/245/72 +f 149/320/75 146/412/73 125/238/73 +f 147/321/74 150/413/76 151/187/76 +f 149/322/75 124/185/75 123/237/77 +f 129/324/63 132/241/63 151/187/76 +f 134/326/64 152/414/77 123/237/77 +f 184/327/51 185/330/78 186/328/78 +f 185/330/78 187/332/52 188/331/52 +f 187/332/52 189/415/79 190/333/79 +f 189/334/79 191/337/49 192/335/49 +f 191/337/49 193/339/80 194/338/80 +f 193/339/80 195/341/53 196/340/53 +f 195/341/53 197/343/81 198/342/81 +f 197/343/81 199/345/54 200/344/54 +f 199/345/54 201/347/82 202/346/82 +f 201/347/82 203/349/55 204/348/55 +f 203/349/55 205/351/83 206/350/83 +f 205/351/83 207/353/50 208/352/50 +f 207/353/50 209/355/84 210/354/84 +f 209/355/84 211/357/57 212/356/57 +f 211/357/57 213/359/85 221/358/85 +f 213/359/85 184/327/51 183/329/51 +f 223/360/86 224/366/51 225/361/51 +f 223/363/86 226/416/86 227/364/51 +f 224/366/51 228/405/87 229/367/87 +f 227/364/51 230/406/87 228/368/87 +f 232/369/50 174/417/88 176/370/88 +f 233/372/50 220/418/88 174/373/88 +f 168/375/89 223/360/86 222/362/86 +f 214/377/89 226/416/86 223/363/86 +f 234/379/90 235/419/90 232/369/50 +f 236/380/90 233/372/50 232/374/50 +f 169/382/49 168/375/89 182/376/89 +f 215/384/49 214/377/89 168/378/89 +f 170/386/91 169/382/49 181/383/49 +f 216/388/91 215/384/49 169/385/49 +f 171/390/92 170/386/91 180/387/91 +f 171/392/92 217/420/92 216/388/91 +f 173/393/93 172/399/54 178/394/54 +f 219/396/93 218/400/54 172/397/54 +f 172/399/54 171/390/92 179/391/92 +f 218/400/54 217/420/92 171/392/92 +f 174/401/88 173/393/93 177/395/93 +f 220/403/88 219/396/93 173/398/93 +f 228/405/87 235/419/90 234/379/90 +f 230/406/87 236/380/90 235/381/90 +o Gun +v 0.513393 3.167058 -2.968280 +v 0.000000 3.026850 -2.968280 +v 0.000000 3.026850 2.166241 +v 0.412401 3.137352 1.926816 +v 0.518167 3.171832 1.672396 +v -0.513393 3.167058 -2.968280 +v -0.518167 3.171832 1.672396 +v -0.412401 3.137352 1.926816 +v 0.648125 2.914532 2.325881 +v -0.648125 2.914532 2.325881 +v -0.648125 2.694242 2.477893 +v 0.648125 2.694242 2.477893 +v 0.648125 3.202249 -2.603896 +v 0.648125 3.207023 1.672396 +v 0.648125 3.172543 1.926816 +v 0.648125 3.087669 2.138505 +v 0.648125 1.827062 2.466587 +v 0.648125 1.827062 -3.371653 +v 0.648125 3.202249 -3.373368 +v -0.648125 3.202249 -3.373368 +v -0.648125 3.202249 -2.603896 +v -0.648125 3.482961 -2.583913 +v -0.648125 3.482961 -3.353385 +v 0.410225 1.557572 2.449717 +v -0.648125 1.827062 2.466587 +v -0.410225 1.557569 2.449717 +v -0.648125 3.087669 2.138505 +v -0.648125 3.172543 1.926816 +v -0.648125 3.207023 1.672396 +v 1.038337 -3.794194 -8.814981 +v 1.038337 -3.162951 -8.684003 +v 1.038337 -2.579798 -8.560258 +v 1.038337 -1.996350 -8.402351 +v 1.038337 -1.120453 -8.045218 +v 1.038337 -0.091451 -7.476527 +v 1.038337 0.441162 -7.089207 +v 1.038337 1.112446 -6.400294 +v 1.038337 1.220466 -6.142394 +v 1.038337 1.005753 -5.478510 +v 1.038337 0.750945 -5.306003 +v 1.038337 0.223651 -5.215686 +v 1.038337 -0.101480 -5.453102 +v 1.038337 -0.769097 -5.873155 +v 1.038337 -1.364660 -6.016363 +v 1.038337 -2.303804 -6.153728 +v 1.038337 -3.304539 -6.180392 +v 1.038337 -4.531919 -6.132348 +v 1.038337 -5.079535 -6.119195 +v 1.038337 -5.072083 -8.828292 +v 1.038337 -4.355278 -8.863739 +v 0.677363 -5.419761 -5.771656 +v 0.677363 -4.520823 -5.793253 +v -0.677363 -4.520823 -5.793253 +v -0.677363 -5.419761 -5.771656 +v -0.677363 -5.410460 -9.151239 +v -0.677363 -4.348941 -9.203733 +v 0.677363 -4.348941 -9.203733 +v 0.677363 -5.410460 -9.151239 +v 0.677363 -1.429002 -5.682898 +v 0.677363 -0.902601 -5.556320 +v -0.677363 -0.902601 -5.556320 +v -0.677363 -1.429002 -5.682898 +v -0.677363 -3.744874 -9.151239 +v -0.677363 -3.093311 -9.016046 +v 0.677363 -3.093311 -9.016046 +v 0.677363 -3.744874 -9.151239 +v 0.677363 -3.302420 -5.840949 +v 0.677363 -2.332974 -5.815118 +v -0.677363 -2.332974 -5.815118 +v -0.677363 -3.302420 -5.840949 +v 0.677363 -0.294467 -5.173693 +v -0.677363 -0.294467 -5.173693 +v 0.677363 0.173305 -4.878585 +v -0.677363 0.173305 -4.878585 +v -0.677363 -2.500212 -8.890191 +v 0.677363 -2.500212 -8.890191 +v -0.677363 -1.887578 -8.724384 +v 0.677363 -1.887578 -8.724384 +v -0.677363 -0.973846 -8.351825 +v -0.677363 0.091069 -7.763287 +v 0.677363 0.091069 -7.763287 +v 0.677363 -0.973846 -8.351825 +v -0.677363 0.664022 -7.346631 +v 0.677363 0.664022 -7.346631 +v -0.677363 1.400451 -6.590861 +v 0.677363 1.400451 -6.590861 +v -1.038337 -5.079535 -6.119195 +v -1.038337 -5.072083 -8.828292 +v -0.677363 0.881192 -4.984477 +v -0.677363 1.292630 -5.263024 +v -1.038337 1.005753 -5.478510 +v -1.038337 0.750945 -5.306003 +v -0.677363 1.581939 -6.157557 +v -1.038337 1.220466 -6.142394 +v -1.038337 -4.355278 -8.863739 +v 0.677363 1.581939 -6.157557 +v 0.677363 1.292630 -5.263024 +v -1.038337 -1.364660 -6.016363 +v -1.038337 -2.303804 -6.153728 +v -1.038337 -2.579798 -8.560258 +v -1.038337 -1.996350 -8.402351 +v -1.038337 -3.794194 -8.814981 +v -1.038337 -3.162951 -8.684003 +v -1.038337 -3.304539 -6.180392 +v -1.038337 -4.531919 -6.132348 +v -1.038337 -0.101480 -5.453102 +v -1.038337 -0.769097 -5.873155 +v -1.038337 -1.120453 -8.045218 +v -1.038337 -0.091451 -7.476527 +v -1.038337 0.223651 -5.215686 +v -1.038337 0.441162 -7.089207 +v -1.038337 1.112446 -6.400294 +v 0.677363 0.881192 -4.984477 +v -0.388087 0.378275 -0.541007 +v -0.388087 0.538445 -0.691282 +v 0.388087 0.538445 -0.691282 +v 0.388087 0.378275 -0.541007 +v 0.388087 0.263531 0.761497 +v 0.388087 0.549235 0.902510 +v -0.388087 0.549235 0.902510 +v -0.388087 0.263531 0.761497 +v -0.388087 -3.282760 -2.259867 +v 0.388087 -3.282760 -2.259867 +v 0.388087 -3.416696 -2.107284 +v -0.388087 -3.416696 -2.107284 +v 0.388087 -2.115547 -1.510431 +v 0.388087 -2.036536 -0.519215 +v -0.388087 -2.036536 -0.519215 +v -0.388087 -2.115547 -1.510431 +v -0.388087 -2.019589 -1.905299 +v -0.388087 -1.845016 -1.572362 +v 0.388087 -1.845016 -1.572362 +v 0.388087 -2.019589 -1.905299 +v -0.388087 -2.824581 -2.298897 +v -0.388087 -2.254520 -2.104208 +v 0.388087 -2.254520 -2.104208 +v 0.388087 -2.824581 -2.298897 +v 0.388087 -2.749647 -2.086469 +v 0.388087 -2.339508 -1.897398 +v -0.388087 -2.339508 -1.897398 +v -0.388087 -2.749647 -2.086469 +v 0.388087 -1.052225 0.501511 +v 0.388087 -0.560944 0.588307 +v -0.388087 -0.560944 0.588307 +v -0.388087 -1.052225 0.501511 +v -0.388087 -1.284873 0.069368 +v -0.388087 -0.821706 0.217083 +v 0.388087 -0.821706 0.217083 +v 0.388087 -1.284873 0.069368 +v -0.388087 -1.788417 -0.845057 +v 0.388087 -1.788417 -0.845057 +v 0.388087 -1.766717 0.022973 +v -0.388087 -1.766717 0.022973 +v 0.388087 -0.334531 0.625094 +v 0.388087 0.005006 0.677293 +v -0.388087 0.005006 0.677293 +v -0.388087 -0.334531 0.625094 +v -0.388087 -0.356680 0.194787 +v -0.388087 0.002437 0.021986 +v 0.388087 0.002437 0.021986 +v 0.388087 -0.356680 0.194787 +v -0.388087 -1.615613 -0.248490 +v -0.388087 -1.423407 0.304049 +v 0.388087 -1.615613 -0.248490 +v 0.388087 -1.423407 0.304049 +v -0.334293 -1.549449 -2.555341 +v -0.334293 -1.287187 -2.738739 +v -0.334293 -0.766452 -2.910610 +v -0.334293 -0.399781 -2.891256 +v -0.334293 -0.115175 -2.859514 +v -0.334293 0.168657 -2.706223 +v -0.334293 0.588200 -2.184493 +v -0.334293 0.282394 -3.889986 +v -0.334293 -0.106957 -3.400619 +v -0.334293 -0.356724 -3.225651 +v -0.334293 -0.736246 -3.153187 +v -0.334293 -1.159743 -2.994812 +v -0.334293 -1.539680 -2.799144 +v -0.334293 -1.754503 -2.595457 +v -0.334293 -1.929948 -2.254812 +v -0.339648 -2.024864 -1.896991 +v -0.339648 -1.896961 -1.579169 +v -0.334293 -1.813819 -2.175126 +v 0.334293 0.282394 -3.889986 +v 0.334293 -0.106957 -3.400619 +v 0.334293 0.168657 -2.706223 +v 0.334293 0.588200 -2.184493 +v 0.334293 -1.287187 -2.738739 +v 0.334293 -0.766452 -2.910610 +v 0.334293 -1.159743 -2.994812 +v 0.334293 -1.539680 -2.799144 +v 0.334293 -1.754503 -2.595457 +v 0.334293 -1.929948 -2.254812 +v 0.334293 -0.736246 -3.153187 +v 0.334293 -0.356724 -3.225651 +v 0.334293 -0.115175 -2.859514 +v 0.334293 -0.399781 -2.891256 +v 0.334293 -1.549449 -2.555341 +v 0.334293 -1.813819 -2.175126 +v 0.328939 -1.896961 -1.579169 +v 0.328939 -2.024864 -1.896991 +v -0.677363 4.127562 -4.010149 +v -0.677363 4.243626 -3.549657 +v 0.677363 4.243626 -3.549657 +v 0.677363 4.127562 -4.010149 +v -0.677363 4.582104 -3.283700 +v 0.677363 4.582104 -3.283700 +v -0.677363 2.640762 -6.548580 +v -0.677363 2.737251 -6.208553 +v 0.677363 2.737251 -6.208553 +v 0.677363 2.640762 -6.548580 +v -0.677363 2.014416 -6.783812 +v -0.677363 2.238806 -6.763745 +v 0.677363 2.238806 -6.763745 +v 0.677363 2.014416 -6.783812 +v -0.677363 3.424877 -5.697894 +v -0.677363 3.656194 -5.417248 +v 0.677363 3.656194 -5.417248 +v 0.677363 3.424877 -5.697894 +v -0.677363 3.870349 -5.088138 +v -0.677363 4.091084 -4.470795 +v 0.677363 4.091084 -4.470795 +v 0.677363 3.870349 -5.088138 +v -0.677363 2.497756 -6.693510 +v 0.677363 2.497756 -6.693510 +v -0.677363 0.283971 -3.279829 +v 0.677363 0.283971 -3.279829 +v -0.677363 1.474082 -6.850760 +v -0.677363 1.751935 -6.791059 +v 0.677363 1.751935 -6.791059 +v 0.677363 1.474082 -6.850760 +v -0.677363 1.300423 -6.918651 +v 0.677363 1.300423 -6.918651 +v 0.677363 0.288958 -4.369509 +v -0.677363 0.288958 -4.369509 +v 0.677363 0.183064 -4.636606 +v -0.677363 0.183064 -4.636606 +v 0.677363 -0.094873 -5.054910 +v 0.677363 0.938536 -7.024597 +v -0.677363 0.938536 -7.024597 +v -0.677363 -0.094873 -5.054910 +v -0.410225 1.557572 -3.367706 +v -0.410225 0.363872 -4.767666 +v -0.410225 0.088182 -3.011839 +v -0.410225 0.346088 -2.547045 +v -0.410225 0.370646 -2.111420 +v -0.410225 0.490531 -1.718697 +v -0.410225 0.536416 0.879805 +v -0.410225 1.060247 2.159820 +v -0.410225 1.224972 2.278783 +v 0.410225 1.224972 2.278783 +v 0.410225 0.370646 -2.111420 +v 0.410225 0.490531 -1.718697 +v 0.410225 0.088182 -3.011839 +v 0.410225 0.346088 -2.547045 +v 0.410225 0.363872 -4.767666 +v 0.410225 1.557572 -3.367706 +v 0.410225 1.060247 2.159820 +v 0.410225 0.536416 0.879805 +v 0.165776 0.293496 -1.893382 +v 0.165776 0.680617 -1.761686 +v -0.165974 0.680617 -1.761686 +v -0.165974 0.293496 -1.893382 +v -0.165974 -1.314300 -1.864868 +v 0.165776 -1.314300 -1.864868 +v 0.165776 -1.503054 -1.310113 +v -0.165974 -1.503054 -1.310113 +v 0.165776 -0.933038 -1.695922 +v 0.165776 -0.526778 -1.857364 +v -0.165974 -0.526778 -1.857364 +v -0.165974 -0.933038 -1.695922 +v -0.165974 -0.802843 -2.222122 +v -0.165974 -0.354921 -2.352316 +v 0.165776 -0.354921 -2.352316 +v 0.165776 -0.802843 -2.222122 +v 0.165776 -0.071044 -1.902498 +v -0.165974 -0.071044 -1.902498 +v -0.165974 0.129456 -2.466887 +v 0.165776 0.129456 -2.466887 +v -0.165974 0.697671 -2.080118 +v -0.165974 0.361592 -2.371173 +v 0.165776 0.361592 -2.371173 +v 0.165776 0.697671 -2.080118 +v -1.216637 4.585567 -2.907501 +v -1.216637 4.585567 -2.368979 +v -0.503948 5.298257 -2.368979 +v -0.503948 5.298257 -2.907501 +v 1.216637 4.585567 -2.907501 +v 1.216637 4.585567 -2.368979 +v 1.216637 3.577672 -2.368979 +v 1.216637 3.577672 -2.907501 +v 0.503948 2.864983 -2.368979 +v 0.503948 2.864983 -2.907501 +v -0.503947 2.864983 -2.907501 +v -0.503947 2.864983 -2.368979 +v -1.216637 3.577672 -2.368979 +v -1.216637 3.577672 -2.907501 +v 0.503947 5.298257 -2.368979 +v 0.503947 5.298257 -2.907501 +v 0.370304 4.975613 -3.279490 +v -0.370304 4.975613 -3.279490 +v 0.893993 4.451924 -3.279490 +v 0.893993 3.711316 -3.279490 +v 0.370304 3.187627 -3.279490 +v -0.893993 3.711316 -3.279490 +v -0.370304 3.187627 -3.279490 +v -0.893993 4.451924 -3.279490 +v 0.648125 3.482961 -3.353385 +v 0.648125 3.482961 -2.583913 +v -0.648125 1.827062 -3.371653 +vt 0.336992 0.270342 +vt 0.255266 0.273654 +vt 0.255266 0.270342 +vt 0.614566 0.346798 +vt 0.614596 0.379886 +vt 0.600710 0.379886 +vt 0.465000 0.643334 +vt 0.480000 0.636666 +vt 0.480000 0.643334 +vt 0.255266 0.300062 +vt 0.336992 0.303374 +vt 0.255266 0.303374 +vt 0.600214 0.487836 +vt 0.601098 0.500080 +vt 0.595040 0.491676 +vt 0.503148 0.512132 +vt 0.503584 0.524246 +vt 0.495896 0.518924 +vt 0.096596 0.379962 +vt 0.093018 0.386784 +vt 0.091840 0.380216 +vt 0.070000 0.743334 +vt 0.057500 0.726666 +vt 0.070000 0.726666 +vt 0.070000 0.700000 +vt 0.057500 0.683334 +vt 0.070000 0.683334 +vt 0.053524 0.411332 +vt 0.046216 0.417760 +vt 0.046848 0.410186 +vt 0.070000 0.676666 +vt 0.057500 0.663334 +vt 0.070000 0.663334 +vt 0.070000 0.716666 +vt 0.057500 0.710000 +vt 0.070000 0.710000 +vt 0.070000 0.646666 +vt 0.057500 0.646666 +vt 0.057500 0.676666 +vt 0.057500 0.700000 +vt 0.057500 0.716666 +vt 0.512500 0.690000 +vt 0.540000 0.800000 +vt 0.512500 0.800000 +vt 0.757830 0.629988 +vt 0.796914 0.668008 +vt 0.786324 0.691844 +vt 0.816062 0.674308 +vt 0.815928 0.668042 +vt 0.826376 0.691556 +vt 0.568242 0.229558 +vt 0.611622 0.230578 +vt 0.540712 0.253308 +vt 0.487500 0.780000 +vt 0.470000 0.793334 +vt 0.470000 0.780000 +vt 0.487500 0.756666 +vt 0.470000 0.770000 +vt 0.470000 0.756666 +vt 0.487500 0.710000 +vt 0.470000 0.710000 +vt 0.599684 0.311164 +vt 0.608072 0.304958 +vt 0.614494 0.340312 +vt 0.487500 0.770000 +vt 0.007500 0.690000 +vt 0.015000 0.700000 +vt 0.007500 0.700000 +vt 0.007500 0.770000 +vt 0.015000 0.753334 +vt 0.015000 0.770000 +vt 0.007500 0.723334 +vt 0.015000 0.736666 +vt 0.007500 0.736666 +vt 0.015000 0.800000 +vt 0.007500 0.786666 +vt 0.015000 0.786666 +vt 0.007500 0.710000 +vt 0.015000 0.723334 +vt 0.015000 0.813334 +vt 0.007500 0.800000 +vt 0.047414 0.461680 +vt 0.057378 0.458394 +vt 0.054322 0.468652 +vt 0.027954 0.468120 +vt 0.024942 0.458008 +vt 0.034762 0.461248 +vt 0.007500 0.753334 +vt 0.015000 0.710000 +vt 0.015000 0.820000 +vt 0.007500 0.813334 +vt 0.117500 0.613333 +vt 0.127500 0.583333 +vt 0.127500 0.613333 +vt 0.117500 0.523334 +vt 0.127500 0.493334 +vt 0.127500 0.523334 +vt 0.117500 0.493334 +vt 0.127500 0.463334 +vt 0.117500 0.673333 +vt 0.127500 0.643333 +vt 0.127500 0.673333 +vt 0.117500 0.643333 +vt 0.247500 0.426666 +vt 0.262500 0.406666 +vt 0.280000 0.406666 +vt 0.117500 0.553334 +vt 0.127500 0.553334 +vt 0.117500 0.583333 +vt 0.137500 0.580000 +vt 0.137500 0.550000 +vt 0.137500 0.496666 +vt 0.137500 0.520000 +vt 0.137500 0.490000 +vt 0.137500 0.670000 +vt 0.137500 0.640000 +vt 0.137500 0.610000 +vt 0.222500 0.433334 +vt 0.212500 0.466666 +vt 0.187500 0.453334 +vt 0.465000 0.626666 +vt 0.480000 0.633334 +vt 0.465000 0.633334 +vt 0.637500 0.253333 +vt 0.540000 0.260000 +vt 0.540000 0.253333 +vt 0.510000 0.340000 +vt 0.615000 0.346667 +vt 0.510000 0.346667 +vt 0.487500 0.793334 +vt 0.470000 0.860000 +vt 0.624854 0.290024 +vt 0.553464 0.289918 +vt 0.540646 0.259308 +vt 0.343956 0.273776 +vt 0.523542 0.380000 +vt 0.518950 0.379170 +vt 0.511750 0.372962 +vt 0.509210 0.346798 +vt 0.509006 0.367662 +vt 0.515130 0.377128 +vt 0.465000 0.636666 +vt 0.343956 0.299940 +vt 0.614288 0.539426 +vt 0.616976 0.546688 +vt 0.600194 0.532792 +vt 0.586600 0.546412 +vt 0.589464 0.542342 +vt 0.610988 0.518476 +vt 0.611690 0.524230 +vt 0.603488 0.523666 +vt 0.612684 0.532858 +vt 0.609334 0.505992 +vt 0.603912 0.511850 +vt 0.605570 0.496560 +vt 0.570988 0.478972 +vt 0.589880 0.480978 +vt 0.583670 0.487284 +vt 0.556706 0.449310 +vt 0.559614 0.445906 +vt 0.560010 0.462858 +vt 0.559672 0.475440 +vt 0.555962 0.460954 +vt 0.569808 0.485846 +vt 0.563464 0.481410 +vt 0.563614 0.473280 +vt 0.552306 0.459954 +vt 0.548502 0.474806 +vt 0.548156 0.461908 +vt 0.544616 0.480926 +vt 0.544462 0.472592 +vt 0.538112 0.485474 +vt 0.536902 0.478426 +vt 0.523902 0.486948 +vt 0.551544 0.448020 +vt 0.548562 0.444530 +vt 0.506942 0.487514 +vt 0.517534 0.480484 +vt 0.512246 0.491450 +vt 0.501450 0.496456 +vt 0.506034 0.500066 +vt 0.497592 0.506126 +vt 0.494158 0.533668 +vt 0.495178 0.524822 +vt 0.520896 0.547564 +vt 0.489756 0.547846 +vt 0.517960 0.543392 +vt 0.492512 0.540402 +vt 0.506960 0.533602 +vt 0.093652 0.424652 +vt 0.103830 0.435566 +vt 0.070558 0.427612 +vt 0.080106 0.417484 +vt 0.090662 0.417270 +vt 0.083518 0.410986 +vt 0.084932 0.401114 +vt 0.090042 0.409866 +vt 0.088022 0.390098 +vt 0.089664 0.400328 +vt 0.095814 0.374628 +vt 0.102458 0.370064 +vt 0.104014 0.373084 +vt 0.109440 0.367596 +vt 0.115640 0.370922 +vt 0.057500 0.743334 +vt 0.034146 0.369466 +vt 0.040944 0.374134 +vt 0.032556 0.372556 +vt 0.045010 0.379852 +vt 0.040144 0.379592 +vt 0.048916 0.389962 +vt 0.043804 0.386570 +vt 0.052076 0.401232 +vt 0.047236 0.400428 +vt 0.027004 0.366940 +vt 0.020660 0.370344 +vt 0.057016 0.417980 +vt 0.066782 0.428340 +vt 0.043156 0.425314 +vt 0.032742 0.436480 +vt 0.540000 0.690000 +vt 0.765968 0.719244 +vt 0.754758 0.724574 +vt 0.752980 0.632546 +vt 0.746394 0.725446 +vt 0.738034 0.728246 +vt 0.733200 0.736432 +vt 0.733200 0.632400 +vt 0.771946 0.714068 +vt 0.777044 0.708476 +vt 0.795132 0.686058 +vt 0.792498 0.689516 +vt 0.796410 0.679792 +vt 0.765428 0.623270 +vt 0.798002 0.661284 +vt 0.801168 0.648326 +vt 0.799238 0.657082 +vt 0.796778 0.674360 +vt 0.859270 0.633056 +vt 0.878786 0.632914 +vt 0.865768 0.724708 +vt 0.878786 0.735546 +vt 0.874018 0.727470 +vt 0.811732 0.648624 +vt 0.846990 0.623906 +vt 0.813636 0.657262 +vt 0.854486 0.630532 +vt 0.814854 0.661408 +vt 0.857518 0.723846 +vt 0.846460 0.718588 +vt 0.840562 0.713482 +vt 0.835532 0.707964 +vt 0.820284 0.689260 +vt 0.816424 0.679666 +vt 0.817686 0.685848 +vt 0.634976 0.245906 +vt 0.637830 0.253308 +vt 0.517340 0.226738 +vt 0.546654 0.220602 +vt 0.554412 0.226342 +vt 0.561686 0.226888 +vt 0.632990 0.242238 +vt 0.639758 0.311592 +vt 0.509514 0.340312 +vt 0.537844 0.315742 +vt 0.584736 0.314638 +vt 0.512600 0.332310 +vt 0.514746 0.328346 +vt 0.591824 0.311754 +vt 0.015000 0.690000 +vt 0.053638 0.489364 +vt 0.056132 0.499138 +vt 0.050102 0.499570 +vt 0.044590 0.491084 +vt 0.042778 0.485222 +vt 0.044948 0.472990 +vt 0.053466 0.480160 +vt 0.054178 0.448766 +vt 0.064684 0.444000 +vt 0.037192 0.472396 +vt 0.039332 0.484452 +vt 0.028796 0.479462 +vt 0.037544 0.490228 +vt 0.028626 0.488534 +vt 0.032112 0.498592 +vt 0.026168 0.498168 +vt 0.017740 0.443822 +vt 0.028094 0.448520 +vt 0.007500 0.820000 +vt 0.117500 0.463334 +vt 0.295000 0.426666 +vt 0.295000 0.450000 +vt 0.280000 0.470000 +vt 0.262500 0.470000 +vt 0.247500 0.450000 +vt 0.137500 0.556667 +vt 0.137500 0.526666 +vt 0.137500 0.466666 +vt 0.137500 0.646667 +vt 0.137500 0.616667 +vt 0.137500 0.586667 +vt 0.187500 0.433334 +vt 0.197500 0.420000 +vt 0.212500 0.420000 +vt 0.222500 0.453334 +vt 0.197500 0.466666 +vt 0.480000 0.626666 +vt 0.637500 0.260000 +vt 0.615000 0.340000 +vt 0.487500 0.860000 +vt 0.540618 0.289918 +vt 0.638112 0.259308 +vt 0.638300 0.278610 +vt 0.635762 0.283514 +vt 0.632634 0.287368 +vt 0.629100 0.289256 +vt 0.245828 0.286858 +vt 0.250404 0.276350 +vt 0.250404 0.297368 +vt 0.465000 0.950000 +vt 0.492500 0.943334 +vt 0.492500 0.950000 +vt 0.246358 0.270342 +vt 0.250404 0.270342 +vt 0.465000 0.920000 +vt 0.470000 0.913334 +vt 0.492500 0.920000 +vt 0.242776 0.303374 +vt 0.242776 0.270342 +vt 0.246358 0.303374 +vt 0.250404 0.303374 +vt 0.781120 0.480610 +vt 0.749548 0.462818 +vt 0.752368 0.447180 +vt 0.427500 0.650000 +vt 0.455000 0.673334 +vt 0.427500 0.673334 +vt 0.455000 0.793334 +vt 0.427500 0.763334 +vt 0.455000 0.763334 +vt 0.427500 0.553334 +vt 0.455000 0.570000 +vt 0.427500 0.570000 +vt 0.455000 0.826666 +vt 0.427500 0.806666 +vt 0.455000 0.806666 +vt 0.427500 0.593334 +vt 0.455000 0.620000 +vt 0.427500 0.620000 +vt 0.427500 0.536666 +vt 0.455000 0.553334 +vt 0.427500 0.520000 +vt 0.455000 0.536666 +vt 0.427500 0.793334 +vt 0.455000 0.650000 +vt 0.455000 0.840000 +vt 0.427500 0.826666 +vt 0.455000 0.856666 +vt 0.427500 0.840000 +vt 0.455000 0.916666 +vt 0.427500 0.883334 +vt 0.455000 0.883334 +vt 0.427500 0.856666 +vt 0.455000 0.933334 +vt 0.427500 0.916666 +vt 0.455000 0.963334 +vt 0.427500 0.933334 +vt 0.455000 0.593334 +vt 0.837092 0.341162 +vt 0.896614 0.349824 +vt 0.843432 0.350018 +vt 0.918888 0.505838 +vt 0.909190 0.509100 +vt 0.912576 0.502430 +vt 0.913420 0.516608 +vt 0.896158 0.514720 +vt 0.836062 0.368946 +vt 0.842736 0.368780 +vt 0.807740 0.349838 +vt 0.815134 0.368824 +vt 0.808438 0.368658 +vt 0.814100 0.340954 +vt 0.754392 0.349642 +vt 0.747548 0.340708 +vt 0.737532 0.516950 +vt 0.754850 0.515056 +vt 0.755148 0.524546 +vt 0.747974 0.364312 +vt 0.754652 0.364020 +vt 0.902582 0.421712 +vt 0.898632 0.447056 +vt 0.895936 0.422476 +vt 0.842218 0.417334 +vt 0.851794 0.430522 +vt 0.845472 0.433370 +vt 0.799352 0.430594 +vt 0.808960 0.417364 +vt 0.805694 0.433450 +vt 0.743308 0.459312 +vt 0.839746 0.401812 +vt 0.843694 0.383466 +vt 0.846266 0.399988 +vt 0.807478 0.383390 +vt 0.811438 0.401792 +vt 0.804898 0.399964 +vt 0.748404 0.421756 +vt 0.755598 0.396246 +vt 0.755072 0.422522 +vt 0.902076 0.396338 +vt 0.896356 0.364156 +vt 0.903012 0.364448 +vt 0.907662 0.459150 +vt 0.909688 0.480118 +vt 0.901444 0.462644 +vt 0.852786 0.457286 +vt 0.869968 0.480382 +vt 0.864338 0.485158 +vt 0.798358 0.457442 +vt 0.786768 0.485402 +vt 0.735774 0.475280 +vt 0.736600 0.488884 +vt 0.729962 0.487562 +vt 0.837092 0.384758 +vt 0.814100 0.384686 +vt 0.748914 0.396302 +vt 0.903436 0.340918 +vt 0.895412 0.396282 +vt 0.848694 0.415252 +vt 0.802462 0.415276 +vt 0.745800 0.445490 +vt 0.858804 0.453448 +vt 0.792320 0.453592 +vt 0.741276 0.480346 +vt 0.905178 0.445372 +vt 0.915174 0.475068 +vt 0.914350 0.488628 +vt 0.877572 0.494322 +vt 0.872518 0.500154 +vt 0.773494 0.494594 +vt 0.778564 0.500446 +vt 0.891096 0.511892 +vt 0.887354 0.519430 +vt 0.759928 0.512220 +vt 0.763680 0.519782 +vt 0.732048 0.506148 +vt 0.738378 0.502728 +vt 0.920966 0.487310 +vt 0.895860 0.524180 +vt 0.741776 0.509418 +vt 0.022500 0.536666 +vt 0.037500 0.543334 +vt 0.022500 0.543334 +vt 0.037500 0.853334 +vt 0.022500 0.846666 +vt 0.037500 0.846666 +vt 0.037500 0.693334 +vt 0.022500 0.700000 +vt 0.022500 0.693334 +vt 0.037500 0.770000 +vt 0.022500 0.743334 +vt 0.037500 0.743334 +vt 0.022500 0.646666 +vt 0.037500 0.656666 +vt 0.022500 0.656666 +vt 0.022500 0.666666 +vt 0.037500 0.683334 +vt 0.022500 0.683334 +vt 0.037500 0.730000 +vt 0.022500 0.716666 +vt 0.037500 0.716666 +vt 0.037500 0.823334 +vt 0.022500 0.810000 +vt 0.037500 0.810000 +vt 0.022500 0.583334 +vt 0.037500 0.596666 +vt 0.022500 0.596666 +vt 0.037500 0.700000 +vt 0.037500 0.666666 +vt 0.022500 0.730000 +vt 0.022500 0.626666 +vt 0.037500 0.646666 +vt 0.037500 0.786666 +vt 0.022500 0.770000 +vt 0.037500 0.840000 +vt 0.022500 0.830000 +vt 0.037500 0.830000 +vt 0.022500 0.560000 +vt 0.037500 0.573334 +vt 0.022500 0.573334 +vt 0.022500 0.840000 +vt 0.037500 0.560000 +vt 0.037500 0.583334 +vt 0.022500 0.823334 +vt 0.037500 0.610000 +vt 0.022500 0.610000 +vt 0.022500 0.796666 +vt 0.037500 0.796666 +vt 0.022500 0.786666 +vt 0.037500 0.626666 +vt 0.130000 0.806666 +vt 0.117500 0.790000 +vt 0.130000 0.790000 +vt 0.130000 0.760000 +vt 0.117500 0.750000 +vt 0.130000 0.750000 +vt 0.130000 0.743334 +vt 0.117500 0.733334 +vt 0.130000 0.733334 +vt 0.130000 0.783334 +vt 0.117500 0.773334 +vt 0.130000 0.773334 +vt 0.117500 0.723334 +vt 0.130000 0.723334 +vt 0.117500 0.743334 +vt 0.117500 0.760000 +vt 0.117500 0.783334 +vt 0.512500 0.813334 +vt 0.540000 0.823334 +vt 0.512500 0.823334 +vt 0.540000 0.813334 +vt 0.512500 0.896666 +vt 0.540000 0.903334 +vt 0.512500 0.903334 +vt 0.512500 0.916666 +vt 0.540000 0.923334 +vt 0.512500 0.923334 +vt 0.512500 0.863334 +vt 0.540000 0.873334 +vt 0.512500 0.873334 +vt 0.512500 0.836666 +vt 0.540000 0.853334 +vt 0.512500 0.853334 +vt 0.540000 0.896666 +vt 0.540000 0.910000 +vt 0.512500 0.910000 +vt 0.512500 0.930000 +vt 0.540000 0.936666 +vt 0.512500 0.936666 +vt 0.540000 0.836666 +vt 0.540000 0.863334 +vt 0.540000 0.916666 +vt 0.540000 0.930000 +vt 0.540000 0.943334 +vt 0.512500 0.943334 +vt 0.512500 0.660000 +vt 0.540000 0.660000 +vt 0.512500 0.653334 +vt 0.540000 0.653334 +vt 0.540000 0.953334 +vt 0.512500 0.953334 +vt 0.512500 0.640000 +vt 0.540000 0.640000 +vt 0.487500 0.903334 +vt 0.470000 0.903334 +vt 0.470000 0.896666 +vt 0.487500 0.896666 +vt 0.343956 0.286858 +vt 0.465000 0.943334 +vt 0.487500 0.913334 +vt 0.455000 0.520000 +vt 0.427500 0.963334 +vt 0.037500 0.536666 +vt 0.022500 0.853334 +vt 0.117500 0.806666 +vn -0.2614 0.9652 -0.0011 +vn -0.2578 0.9662 -0.0012 +vn 1.0000 0.0000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn 0.2583 0.9661 -0.0030 +vn 0.2614 0.9652 -0.0011 +vn 0.0000 -0.7793 0.6267 +vn 0.0000 0.3134 0.9496 +vn 0.0000 0.8210 0.5709 +vn 0.0000 -0.1108 0.9938 +vn 0.0000 0.9904 0.1382 +vn 0.0000 0.5731 0.8195 +vn 0.0000 -0.0527 0.9986 +vn 0.0000 -0.4752 0.8799 +vn 0.0000 0.0009 1.0000 +vn 0.0000 -0.9564 0.2920 +vn 0.0000 -0.8744 0.4852 +vn 0.0000 -0.9879 -0.1551 +vn 0.0000 -0.9984 0.0563 +vn 0.0000 -0.3221 0.9467 +vn 0.0000 -0.9467 -0.3221 +vn 0.0000 0.3693 0.9293 +vn 0.0000 -0.2791 -0.9603 +vn 0.0000 0.0986 0.9951 +vn 0.0000 -0.2302 -0.9731 +vn 0.0000 -0.5726 -0.8198 +vn 0.0000 0.5605 0.8281 +vn 0.0000 -0.0250 0.9997 +vn 0.0000 0.3812 -0.9245 +vn -0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -0.0000 0.0000 1.0000 +vn 0.7071 0.7071 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.7554 -0.6552 +vn 0.5342 0.5342 -0.6552 +vn 0.7554 0.0000 -0.6552 +vn 0.5342 -0.5342 -0.6552 +vn -0.5342 -0.5342 -0.6552 +vn -0.7554 0.0000 -0.6552 +vn -0.5342 0.5342 -0.6552 +vn 0.0000 0.0000 -1.0000 +vn -0.7497 -0.6618 -0.0000 +vn 0.7497 -0.6618 -0.0000 +vn 0.0000 -0.9998 0.0177 +vn -0.2508 0.9680 -0.0007 +vn -0.2457 0.9693 -0.0042 +vn -0.2507 0.9680 -0.0044 +vn 0.2508 0.9680 -0.0044 +vn 0.2457 0.9693 -0.0042 +vn 0.2508 0.9680 -0.0007 +vn -0.9999 0.0087 -0.0127 +vn -0.9998 0.0166 -0.0067 +vn 0.9999 -0.0087 0.0127 +vn 0.9998 -0.0166 0.0067 +vn -0.0000 1.0000 0.0070 +vn -0.2419 0.9698 0.0308 +vn -0.2652 0.9642 0.0010 +vn 0.2680 0.9634 0.0025 +vn 0.2419 0.9698 0.0308 +vn 0.0164 0.6644 0.7472 +vn 0.0000 0.2912 0.9567 +vn -0.0164 0.6644 0.7472 +vn -0.1115 0.9619 0.2498 +vn -0.0769 0.8571 0.5095 +vn -0.1619 0.9600 0.2284 +vn 0.0000 -0.0304 0.9995 +vn 0.0000 -0.2276 0.9738 +vn 0.0000 0.8427 0.5384 +vn -0.2117 0.9713 0.1081 +vn -0.2592 0.9571 0.1297 +vn 0.1115 0.9619 0.2498 +vn 0.0769 0.8571 0.5095 +vn 0.2094 0.9718 0.1082 +vn 0.1619 0.9600 0.2284 +vn 0.9123 0.2199 -0.3455 +vn 0.9336 -0.1391 0.3302 +vn 0.9221 -0.0733 0.3800 +vn 0.3677 0.0294 0.9295 +vn -0.2777 0.0231 0.9604 +vn 0.2777 0.0231 0.9604 +vn -0.3635 0.0174 -0.9314 +vn 0.2844 -0.0474 -0.9575 +vn -0.2844 -0.0474 -0.9575 +vn 0.3853 -0.3583 0.8504 +vn -0.3723 -0.1758 0.9113 +vn 0.3723 -0.1758 0.9113 +vn -0.3681 0.1909 -0.9100 +vn 0.3641 0.1352 -0.9215 +vn -0.3641 0.1352 -0.9215 +vn 0.3736 -0.0796 0.9242 +vn -0.3711 0.0058 0.9286 +vn 0.3711 0.0058 0.9286 +vn 0.3632 -0.5016 0.7852 +vn -0.3853 -0.3583 0.8504 +vn 0.4618 -0.3170 0.8284 +vn -0.3632 -0.5016 0.7852 +vn 0.2844 -0.9587 -0.0026 +vn -0.2777 -0.9607 -0.0026 +vn -0.2844 -0.9587 -0.0026 +vn 0.3635 0.0174 -0.9314 +vn -0.3677 0.0294 0.9295 +vn -0.3662 0.2182 -0.9046 +vn 0.3681 0.1909 -0.9100 +vn -0.3639 0.2981 -0.8825 +vn 0.3662 0.2182 -0.9046 +vn -0.3639 0.5001 -0.7858 +vn 0.3641 0.4018 -0.8403 +vn -0.3641 0.4018 -0.8403 +vn 0.3639 0.2981 -0.8825 +vn -0.3625 0.6100 -0.7046 +vn 0.3639 0.5001 -0.7858 +vn -0.4789 0.6904 -0.5422 +vn 0.3625 0.6100 -0.7046 +vn -0.3736 -0.0796 0.9242 +vn -0.8982 -0.3076 0.3142 +vn -0.8954 -0.3221 -0.3074 +vn -0.6900 0.2669 0.6728 +vn -0.8937 0.3587 0.2695 +vn -0.9005 0.1621 0.4035 +vn -0.7050 0.5671 0.4260 +vn -0.8927 0.4503 -0.0189 +vn -0.9118 0.0077 -0.4106 +vn 0.8954 -0.3221 -0.3074 +vn 0.9118 0.0077 -0.4106 +vn 0.8982 -0.3076 0.3142 +vn 0.2777 -0.9607 -0.0026 +vn 0.7050 0.5671 0.4260 +vn 0.8927 0.4503 -0.0189 +vn 0.7079 0.7057 -0.0296 +vn 0.9171 0.0126 0.3984 +vn -0.9221 -0.0733 0.3800 +vn -0.9234 -0.0329 0.3824 +vn -0.9123 0.1310 -0.3879 +vn 0.9123 0.1310 -0.3879 +vn -0.9126 0.0593 -0.4046 +vn -0.9176 0.0816 -0.3890 +vn 0.9126 0.0593 -0.4046 +vn 0.9176 0.0816 -0.3890 +vn 0.9209 0.0024 0.3898 +vn 0.9234 -0.0329 0.3824 +vn -0.9171 0.0126 0.3984 +vn -0.9211 -0.2186 0.3222 +vn -0.9336 -0.1391 0.3302 +vn -0.9123 0.2199 -0.3455 +vn 0.8848 -0.1072 0.4534 +vn -0.9209 0.0024 0.3898 +vn -0.9153 0.0944 -0.3915 +vn 0.9153 0.0944 -0.3915 +vn -0.9126 0.1764 -0.3689 +vn 0.9126 0.1764 -0.3689 +vn 0.9211 -0.2186 0.3222 +vn -0.8848 -0.1072 0.4534 +vn -0.9103 0.2709 -0.3129 +vn 0.9103 0.2709 -0.3129 +vn -0.9023 0.3595 -0.2379 +vn 0.9023 0.3595 -0.2379 +vn 0.4789 0.6904 -0.5422 +vn 0.6900 0.2669 0.6728 +vn 0.9005 0.1621 0.4035 +vn -0.4618 -0.3170 0.8284 +vn -0.7079 0.7057 -0.0296 +vn 0.8937 0.3587 0.2695 +vn 0.0000 -0.6842 -0.7293 +vn 0.0000 -0.7629 -0.6465 +vn 0.0000 -0.4426 0.8967 +vn 0.0000 -0.3771 0.9262 +vn 0.0000 -0.4508 -0.8926 +vn 0.0000 -0.7515 -0.6597 +vn 0.0000 -0.9636 0.2674 +vn 0.0000 -0.9547 0.2975 +vn 0.0000 0.9610 -0.2766 +vn 0.0000 0.7803 -0.6254 +vn 0.0000 0.4933 -0.8699 +vn 0.0000 0.1218 -0.9926 +vn 0.0000 -0.6736 0.7391 +vn 0.0000 -0.2295 0.9733 +vn 0.0000 -0.1672 0.9859 +vn 0.0000 -0.3258 0.9454 +vn 0.0000 0.1300 -0.9915 +vn 0.0000 0.5117 -0.8592 +vn 0.0000 -0.0312 0.9995 +vn 0.0000 0.9839 -0.1788 +vn 0.0000 -0.7818 0.6235 +vn 0.0000 -0.2316 0.9728 +vn 0.0000 -0.1562 0.9877 +vn 0.0000 -0.6559 -0.7549 +vn 0.0000 -0.2457 -0.9694 +vn 0.0000 0.8559 -0.5172 +vn 0.0000 -0.5543 0.8323 +vn 0.0000 -0.7825 -0.6226 +vn 0.0000 -0.6852 -0.7283 +vn 0.0000 -0.4048 -0.9144 +vn 0.0000 -0.5787 -0.8155 +vn 0.0000 -0.7998 -0.6002 +vn 0.0000 -0.9331 -0.3597 +vn 0.0000 -0.9334 -0.3588 +vn 0.0000 -0.3893 -0.9211 +vn 0.0000 -0.2699 -0.9629 +vn 0.0000 -0.9666 -0.2564 +vn 0.0000 0.8387 -0.5446 +vn 0.0000 0.9868 -0.1622 +vn 0.0000 0.6178 -0.7863 +vn 0.0000 0.8229 -0.5682 +vn 0.0000 0.8640 -0.5035 +vn 0.0000 0.1761 -0.9844 +vn 0.0000 0.0584 -0.9983 +vn 0.0000 0.8062 -0.5917 +vn 0.0000 0.6890 -0.7248 +vn 0.0000 0.9778 -0.2096 +vn 0.0000 0.8960 -0.4441 +vn 0.0000 0.5042 -0.8636 +vn 0.0000 0.1193 -0.9929 +vn 0.0000 0.2880 -0.9576 +vn 0.0000 0.3228 -0.9465 +vn 0.0000 -1.0000 -0.0046 +vn 0.0000 -0.9827 0.1854 +vn 0.0000 -0.8861 0.4635 +vn 0.0000 0.2810 -0.9597 +vn 0.0000 -0.8329 0.5534 +vn 0.0000 -0.5228 0.8525 +vn 0.0000 -0.9255 0.3787 +vn 0.0000 -0.7858 0.6185 +vn -0.2574 0.9663 0.0002 +vn 0.0000 1.0000 -0.0007 +vn 0.2574 0.9663 0.0002 +vn 0.2592 0.9571 0.1297 +s off +f 259/421/94 251/422/95 260/423/94 +f 264/424/96 265/425/96 259/426/96 +f 267/427/97 269/428/97 266/429/97 +f 253/430/98 267/431/99 275/432/99 +f 399/433/97 392/434/97 408/435/97 +f 394/436/96 407/437/96 389/438/96 +f 412/439/97 413/440/97 424/441/97 +f 433/442/100 417/443/100 432/444/100 +f 435/445/101 413/446/101 434/447/101 +f 441/448/96 442/449/96 443/450/96 +f 444/451/102 429/452/102 445/453/102 +f 442/454/103 415/455/103 443/456/103 +f 446/457/104 429/452/104 428/458/104 +f 434/447/105 412/459/105 444/451/105 +f 443/456/106 414/460/106 435/445/106 +f 432/444/107 416/461/107 442/454/107 +f 472/462/108 453/463/108 452/464/108 +f 482/465/96 476/466/96 456/467/96 +f 458/468/97 475/469/97 455/470/97 +f 493/471/97 494/472/97 488/473/97 +f 498/474/109 493/475/109 492/476/109 +f 500/477/110 491/478/110 490/479/110 +f 502/480/111 490/479/111 489/481/111 +f 501/482/96 500/483/96 503/484/96 +f 501/485/112 492/476/112 491/478/112 +f 507/486/113 509/487/113 506/488/113 +f 511/489/114 513/490/114 510/491/114 +f 515/492/115 517/493/115 514/494/115 +f 519/495/116 521/496/116 518/497/116 +f 522/498/117 516/499/117 515/492/117 +f 524/500/118 520/501/118 519/495/118 +f 518/502/97 517/503/97 516/504/97 +f 518/497/119 511/489/119 510/491/119 +f 515/505/96 514/506/96 521/507/96 +f 514/494/120 513/490/120 512/508/120 +f 506/488/121 523/509/121 522/498/121 +f 527/510/122 525/511/122 524/500/122 +f 531/512/123 533/513/123 530/514/123 +f 535/515/96 537/516/96 534/517/96 +f 536/518/124 539/519/124 537/516/124 +f 541/520/125 543/521/125 540/522/125 +f 542/523/97 530/514/97 543/521/97 +f 538/524/126 536/525/126 535/526/126 +f 544/527/127 534/517/127 545/528/127 +f 532/529/128 545/528/128 533/513/128 +f 545/528/129 547/530/129 533/513/129 +f 534/517/130 546/531/130 545/528/130 +f 534/517/131 549/532/131 548/533/131 +f 539/519/132 549/534/132 537/516/132 +f 543/521/133 552/535/133 540/522/133 +f 530/514/134 551/536/134 543/521/134 +f 533/513/135 553/537/135 530/514/135 +f 549/538/136 552/539/136 553/540/136 +f 259/541/96 554/542/96 555/543/96 +f 272/544/137 556/545/137 488/546/137 +f 270/547/138 264/548/138 263/549/138 +f 499/550/139 494/551/139 493/475/139 +f 275/552/97 267/553/97 556/554/97 +f 259/421/140 247/555/141 251/422/142 +f 259/426/96 260/556/96 264/424/96 +f 260/556/96 261/557/96 255/558/96 +f 263/559/96 260/556/96 258/560/96 +f 261/557/96 262/561/96 255/558/96 +f 255/558/96 258/560/96 260/556/96 +f 263/559/96 264/424/96 260/556/96 +f 267/427/97 268/562/97 269/428/97 +f 253/430/143 252/563/144 267/431/145 +f 367/564/97 366/565/97 405/566/97 +f 366/565/97 361/567/97 360/568/97 +f 360/568/97 405/566/97 366/565/97 +f 390/569/97 403/570/97 404/571/97 +f 403/570/97 402/572/97 404/571/97 +f 402/572/97 367/564/97 405/566/97 +f 402/572/97 405/566/97 404/571/97 +f 391/573/97 390/569/97 393/574/97 +f 393/574/97 390/569/97 404/571/97 +f 399/433/97 409/575/97 392/434/97 +f 409/575/97 391/573/97 392/434/97 +f 375/576/97 374/577/97 396/578/97 +f 374/577/97 399/433/97 408/435/97 +f 392/434/97 391/573/97 393/574/97 +f 368/579/97 371/580/97 387/581/97 +f 381/582/97 380/583/97 387/581/97 +f 380/583/97 368/579/97 387/581/97 +f 377/584/97 376/585/97 375/576/97 +f 376/585/97 381/582/97 386/586/97 +f 375/576/97 376/585/97 386/586/97 +f 396/578/97 377/584/97 375/576/97 +f 381/582/97 387/581/97 386/586/97 +f 408/435/97 396/578/97 374/577/97 +f 383/587/96 382/588/96 384/589/96 +f 382/588/96 379/590/96 385/591/96 +f 384/589/96 382/588/96 385/591/96 +f 379/590/96 378/592/96 372/593/96 +f 378/592/96 397/594/96 372/593/96 +f 369/595/96 383/587/96 384/589/96 +f 384/589/96 370/596/96 369/595/96 +f 398/597/96 373/598/96 410/599/96 +f 373/598/96 372/593/96 397/594/96 +f 410/599/96 373/598/96 397/594/96 +f 372/593/96 385/591/96 379/590/96 +f 411/600/96 398/597/96 395/601/96 +f 389/438/96 388/602/96 394/436/96 +f 388/602/96 411/600/96 395/601/96 +f 394/436/96 388/602/96 395/601/96 +f 401/603/96 400/604/96 407/437/96 +f 400/604/96 389/438/96 407/437/96 +f 362/605/96 365/606/96 363/607/96 +f 365/606/96 364/608/96 406/609/96 +f 363/607/96 365/606/96 406/609/96 +f 364/608/96 401/603/96 406/609/96 +f 398/597/96 410/599/96 395/601/96 +f 407/437/96 406/609/96 401/603/96 +f 417/610/97 418/611/97 419/612/97 +f 417/610/97 419/612/97 420/613/97 +f 416/614/97 417/610/97 420/613/97 +f 421/615/97 422/616/97 415/617/97 +f 422/616/97 423/618/97 414/619/97 +f 416/614/97 420/613/97 421/615/97 +f 415/617/97 416/614/97 421/615/97 +f 422/616/97 414/619/97 415/617/97 +f 423/618/97 424/441/97 413/440/97 +f 424/441/97 425/620/97 412/439/97 +f 425/620/97 426/621/97 429/622/97 +f 426/621/146 427/623/146 429/622/146 +f 427/623/147 428/624/147 429/622/147 +f 413/440/97 414/619/97 423/618/97 +f 425/620/97 429/622/97 412/439/97 +f 433/442/100 418/625/100 417/443/100 +f 435/445/101 414/460/101 413/446/101 +f 439/626/96 438/627/96 445/628/96 +f 438/627/96 437/629/96 444/630/96 +f 437/629/96 436/631/96 434/632/96 +f 436/631/96 440/633/96 435/634/96 +f 436/631/96 435/634/96 434/632/96 +f 440/633/96 441/448/96 443/450/96 +f 435/634/96 440/633/96 443/450/96 +f 447/635/148 439/626/148 445/628/148 +f 438/627/96 444/630/96 445/628/96 +f 445/628/149 446/636/149 447/635/149 +f 431/637/96 430/638/96 432/639/96 +f 430/638/96 433/640/96 432/639/96 +f 441/448/96 431/637/96 442/449/96 +f 431/637/96 432/639/96 442/449/96 +f 434/632/96 444/630/96 437/629/96 +f 444/451/102 412/459/102 429/452/102 +f 442/454/103 416/461/103 415/455/103 +f 446/457/104 445/453/104 429/452/104 +f 434/447/105 413/446/105 412/459/105 +f 443/456/106 415/455/106 414/460/106 +f 432/444/107 417/443/107 416/461/107 +f 472/462/108 473/641/108 453/463/108 +f 469/642/96 468/643/96 480/644/96 +f 468/643/96 451/645/96 480/644/96 +f 450/646/96 453/647/96 473/648/96 +f 464/649/96 469/642/96 480/644/96 +f 451/645/96 450/646/96 473/648/96 +f 451/645/96 473/648/96 480/644/96 +f 465/650/96 464/649/96 480/644/96 +f 471/651/96 457/652/96 460/653/96 +f 457/652/96 456/467/96 460/653/96 +f 456/467/96 465/650/96 480/644/96 +f 456/467/96 480/644/96 482/465/96 +f 482/465/96 484/654/96 477/655/96 +f 484/654/96 485/656/96 479/657/96 +f 477/655/96 484/654/96 479/657/96 +f 476/466/96 461/658/96 456/467/96 +f 461/658/96 460/653/96 456/467/96 +f 482/465/96 477/655/96 476/466/96 +f 481/659/97 472/660/97 448/661/97 +f 472/660/97 452/662/97 449/663/97 +f 472/660/97 449/663/97 448/661/97 +f 486/664/97 487/665/97 478/666/97 +f 487/665/97 483/667/97 474/668/97 +f 478/666/97 487/665/97 474/668/97 +f 483/667/97 481/659/97 455/470/97 +f 448/661/97 467/669/97 481/659/97 +f 467/669/97 466/670/97 481/659/97 +f 481/659/97 466/670/97 463/671/97 +f 462/672/97 481/659/97 463/671/97 +f 455/470/97 454/673/97 459/674/97 +f 454/673/97 470/675/97 459/674/97 +f 462/672/97 455/470/97 481/659/97 +f 474/668/97 483/667/97 475/469/97 +f 475/469/97 483/667/97 455/470/97 +f 459/674/97 458/468/97 455/470/97 +f 496/676/97 272/677/97 494/472/97 +f 272/677/97 488/473/97 494/472/97 +f 488/473/97 489/678/97 490/679/97 +f 491/680/97 492/681/97 488/473/97 +f 492/681/97 493/471/97 488/473/97 +f 488/473/97 490/679/97 491/680/97 +f 495/682/97 496/676/97 494/472/97 +f 498/474/109 499/550/109 493/475/109 +f 500/477/110 501/485/110 491/478/110 +f 502/480/111 500/477/111 490/479/111 +f 502/683/96 503/484/96 500/483/96 +f 503/484/96 270/684/96 505/685/96 +f 499/686/96 503/484/96 505/685/96 +f 270/684/96 497/687/96 505/685/96 +f 497/687/96 504/688/96 505/685/96 +f 499/686/96 498/689/96 503/484/96 +f 498/689/96 501/482/96 503/484/96 +f 501/485/112 498/474/112 492/476/112 +f 507/486/113 508/690/113 509/487/113 +f 511/489/114 512/508/114 513/490/114 +f 515/492/115 516/499/115 517/493/115 +f 519/495/116 520/501/116 521/496/116 +f 522/498/117 523/509/117 516/499/117 +f 524/500/118 525/511/118 520/501/118 +f 509/691/97 508/692/97 526/693/97 +f 526/693/97 527/694/97 509/691/97 +f 527/694/97 524/695/97 509/691/97 +f 524/695/97 519/696/97 523/697/97 +f 519/696/97 518/502/97 516/504/97 +f 518/502/97 510/698/97 517/503/97 +f 510/698/97 513/699/97 517/503/97 +f 519/696/97 516/504/97 523/697/97 +f 523/697/97 509/691/97 524/695/97 +f 518/497/119 521/496/119 511/489/119 +f 521/507/96 520/700/96 515/505/96 +f 520/700/96 525/701/96 522/702/96 +f 525/701/96 528/703/96 506/704/96 +f 528/703/96 529/705/96 506/704/96 +f 529/705/96 507/706/96 506/704/96 +f 506/704/96 522/702/96 525/701/96 +f 520/700/96 522/702/96 515/505/96 +f 512/707/96 511/708/96 514/506/96 +f 511/708/96 521/507/96 514/506/96 +f 514/494/120 517/493/120 513/490/120 +f 506/488/121 509/487/121 523/509/121 +f 527/510/122 528/709/122 525/511/122 +f 531/512/123 532/529/123 533/513/123 +f 535/515/96 536/518/96 537/516/96 +f 536/518/124 538/710/124 539/519/124 +f 541/520/125 542/523/125 543/521/125 +f 542/523/97 531/512/97 530/514/97 +f 535/526/126 544/711/126 532/712/126 +f 532/712/126 531/713/126 535/526/126 +f 531/713/126 542/714/126 535/526/126 +f 542/714/126 541/715/126 535/526/126 +f 541/715/126 538/524/126 535/526/126 +f 544/527/127 535/515/127 534/517/127 +f 532/529/128 544/527/128 545/528/128 +f 545/528/129 546/716/129 547/530/129 +f 534/517/130 548/717/130 546/531/130 +f 534/517/131 537/516/131 549/532/131 +f 539/519/132 550/718/132 549/534/132 +f 543/521/133 551/719/133 552/535/133 +f 530/514/134 553/720/134 551/536/134 +f 533/513/135 547/721/135 553/537/135 +f 553/540/136 547/722/136 546/723/136 +f 546/723/136 548/724/136 553/540/136 +f 548/724/136 549/538/136 553/540/136 +f 549/538/136 550/725/136 552/539/136 +f 552/539/136 551/726/136 553/540/136 +f 259/541/96 265/727/96 554/542/96 +f 272/544/137 271/728/137 556/545/137 +f 270/547/138 503/729/138 264/548/138 +f 499/550/139 505/730/139 494/551/139 +f 267/553/97 266/731/97 556/554/97 +f 556/554/97 271/732/97 275/552/97 +f 271/732/97 257/733/97 275/552/97 +f 275/552/97 257/733/97 256/734/97 +f 256/734/97 273/735/97 274/736/97 +f 275/552/97 256/734/97 274/736/97 +s 1 +f 249/737/150 250/738/151 251/422/152 +f 253/430/153 254/739/154 249/737/150 +f 256/740/155 258/741/156 255/742/157 +f 250/738/158 262/743/159 261/744/160 +f 271/745/161 272/746/162 263/747/161 +f 249/737/163 256/748/155 255/749/157 +f 251/422/164 261/744/160 260/423/165 +f 254/739/166 273/750/167 249/737/163 +f 253/430/168 274/751/169 254/739/166 +f 281/752/170 289/753/171 290/754/172 +f 298/755/173 300/756/174 297/757/175 +f 302/758/176 304/759/177 301/760/178 +f 306/761/179 308/762/180 305/763/181 +f 310/764/182 312/765/183 309/766/184 +f 314/767/185 316/768/186 313/769/187 +f 317/770/188 307/771/189 306/761/179 +f 319/772/190 318/773/191 317/770/188 +f 304/759/192 300/756/193 301/760/194 +f 309/766/184 303/774/195 302/758/176 +f 313/769/187 299/775/196 298/755/173 +f 321/776/197 311/777/198 310/764/182 +f 323/778/199 322/779/200 321/776/197 +f 326/780/201 328/781/202 325/782/203 +f 325/782/203 324/783/204 323/778/199 +f 329/784/205 327/785/206 326/780/201 +f 331/786/207 330/787/208 329/784/205 +f 305/763/181 315/788/209 314/767/185 +f 301/789/194 333/790/210 334/791/211 +f 335/792/212 337/793/213 338/794/214 +f 336/795/215 340/796/216 337/793/213 +f 302/797/176 334/791/211 341/798/217 +f 295/799/218 303/800/195 296/801/219 +f 304/802/192 294/803/220 297/804/221 +f 343/805/222 284/806/223 342/807/224 +f 298/808/173 294/803/220 293/809/225 +f 315/810/209 344/811/226 345/812/227 +f 321/813/197 347/814/228 323/815/199 +f 279/816/229 322/817/200 324/818/204 +f 306/819/179 290/754/172 289/753/171 +f 310/820/182 348/821/230 349/822/231 +f 276/823/232 311/824/198 277/825/233 +f 314/826/185 292/827/234 291/828/235 +f 316/829/186 351/830/236 299/831/196 +f 307/832/189 352/833/237 353/834/238 +f 325/835/203 355/836/239 326/837/201 +f 281/752/170 328/838/202 327/839/206 +f 317/840/188 287/841/240 319/842/190 +f 309/843/184 341/798/217 348/821/230 +f 296/801/219 312/844/183 276/823/232 +f 313/845/187 293/809/225 292/827/234 +f 299/831/196 333/790/210 300/846/174 +f 315/810/209 350/847/241 316/829/186 +f 310/820/182 346/848/242 321/813/197 +f 278/849/243 311/824/198 322/817/200 +f 314/826/185 290/754/172 305/850/181 +f 325/835/203 347/814/228 354/851/244 +f 279/816/229 328/838/202 280/852/245 +f 306/819/179 288/853/246 317/840/188 +f 307/832/189 344/811/226 308/854/180 +f 318/855/191 356/856/247 352/833/237 +f 326/837/201 357/857/248 329/858/205 +f 282/859/249 327/839/206 330/860/208 +f 329/858/205 358/861/250 331/862/207 +f 283/863/251 330/860/208 332/864/252 +f 359/865/253 287/841/240 286/866/254 +f 335/792/212 356/856/247 320/867/255 +f 331/862/207 340/796/216 339/868/256 +f 284/806/223 332/864/252 342/807/224 +f 359/865/253 285/869/257 343/805/222 +f 350/847/241 345/812/227 346/848/242 +f 361/870/258 363/871/259 360/872/259 +f 365/873/260 367/874/261 364/875/261 +f 369/876/262 371/877/263 368/878/262 +f 373/879/264 375/880/265 372/881/265 +f 377/882/266 379/883/267 376/884/267 +f 381/885/268 383/886/269 380/887/269 +f 385/888/270 387/889/271 384/890/271 +f 389/891/272 391/892/273 388/893/273 +f 393/894/274 395/895/275 392/896/275 +f 384/890/271 371/877/276 370/897/276 +f 380/887/269 369/876/262 368/878/262 +f 376/884/267 382/898/268 381/885/268 +f 372/881/265 386/899/270 385/888/270 +f 396/900/277 378/901/266 377/882/266 +f 398/902/278 374/903/264 373/879/264 +f 401/904/279 403/905/280 400/906/280 +f 405/907/281 407/908/282 404/909/282 +f 364/875/261 402/910/279 401/904/279 +f 360/872/259 406/911/281 405/907/281 +f 404/909/282 394/912/274 393/894/274 +f 400/906/280 390/913/272 389/891/272 +f 392/896/275 410/914/283 408/915/283 +f 388/893/273 409/916/284 411/917/284 +f 411/917/284 399/918/278 398/902/278 +f 408/915/283 397/919/277 396/900/277 +f 419/920/285 431/921/286 420/922/286 +f 423/923/287 437/924/288 424/925/288 +f 425/926/289 439/927/290 426/928/291 +f 421/929/292 440/930/293 422/931/293 +f 426/928/291 447/932/294 427/933/294 +f 424/925/288 438/934/289 425/926/289 +f 422/931/293 436/935/287 423/923/287 +f 420/922/286 441/936/292 421/929/292 +f 449/937/295 451/938/296 448/939/296 +f 449/937/295 453/463/297 450/940/295 +f 455/941/298 457/942/299 454/943/299 +f 459/944/300 461/945/301 458/946/301 +f 463/947/302 465/948/303 462/949/303 +f 467/950/304 469/951/305 466/952/305 +f 462/949/303 456/953/298 455/941/298 +f 454/943/299 471/954/306 470/955/306 +f 475/956/307 477/957/308 474/958/308 +f 448/939/296 468/959/304 467/950/304 +f 466/952/305 464/960/302 463/947/302 +f 470/955/306 460/961/300 459/944/300 +f 458/946/301 476/962/307 475/956/307 +f 474/958/308 479/963/309 478/964/309 +f 473/641/310 481/965/311 480/966/311 +f 480/966/311 483/967/312 482/968/312 +f 478/964/309 485/969/313 486/970/313 +f 482/968/312 487/971/314 484/972/314 +f 497/973/315 272/746/162 496/974/315 +f 505/730/316 495/975/317 494/551/316 +f 504/976/317 496/974/315 495/975/317 +f 251/422/152 247/555/318 248/977/319 +f 248/977/319 249/737/150 251/422/152 +f 249/737/150 248/977/319 253/430/153 +f 248/977/319 252/563/320 253/430/153 +f 256/740/155 257/978/156 258/741/156 +f 250/738/158 249/737/163 262/743/159 +f 272/746/162 270/979/162 263/747/161 +f 263/747/161 258/741/156 257/978/156 +f 257/978/156 271/745/161 263/747/161 +f 255/749/157 262/743/159 249/737/163 +f 249/737/163 273/750/167 256/748/155 +f 251/422/164 250/738/158 261/744/160 +f 254/739/166 274/751/169 273/750/167 +f 253/430/168 275/432/321 274/751/169 +f 296/801/219 276/823/232 293/809/225 +f 276/823/232 277/825/233 292/827/234 +f 277/825/233 278/849/243 292/827/234 +f 278/849/243 279/816/229 291/828/235 +f 292/827/234 278/849/243 291/828/235 +f 279/816/229 280/852/245 291/828/235 +f 280/852/245 281/752/170 290/754/172 +f 291/828/235 280/852/245 290/754/172 +f 281/752/170 282/859/249 289/753/171 +f 282/859/249 283/863/251 288/853/246 +f 283/863/251 284/806/223 285/869/257 +f 285/869/257 286/866/254 283/863/251 +f 286/866/254 287/841/240 288/853/246 +f 286/866/254 288/853/246 283/863/251 +f 282/859/249 288/853/246 289/753/171 +f 295/799/218 296/801/219 293/809/225 +f 276/823/232 292/827/234 293/809/225 +f 293/809/225 294/803/220 295/799/218 +f 298/755/173 299/775/196 300/756/174 +f 302/758/176 303/774/195 304/759/177 +f 306/761/179 307/771/189 308/762/180 +f 310/764/182 311/777/198 312/765/183 +f 314/767/185 315/788/209 316/768/186 +f 317/770/188 318/773/191 307/771/189 +f 319/772/190 320/980/255 318/773/191 +f 304/759/192 297/757/221 300/756/193 +f 309/766/184 312/765/183 303/774/195 +f 313/769/187 316/768/186 299/775/196 +f 321/776/197 322/779/200 311/777/198 +f 323/778/199 324/783/204 322/779/200 +f 326/780/201 327/785/206 328/781/202 +f 325/782/203 328/781/202 324/783/204 +f 329/784/205 330/787/208 327/785/206 +f 331/786/207 332/981/252 330/787/208 +f 305/763/181 308/762/180 315/788/209 +f 301/789/194 300/846/193 333/790/210 +f 335/792/212 336/795/215 337/793/213 +f 336/795/215 339/868/256 340/796/216 +f 302/797/176 301/789/178 334/791/211 +f 295/799/218 304/802/177 303/800/195 +f 304/802/192 295/799/218 294/803/220 +f 343/805/222 285/869/257 284/806/223 +f 298/808/173 297/804/175 294/803/220 +f 315/810/209 308/854/180 344/811/226 +f 321/813/197 346/848/242 347/814/228 +f 279/816/229 278/849/243 322/817/200 +f 306/819/179 305/850/181 290/754/172 +f 310/820/182 309/843/184 348/821/230 +f 276/823/232 312/844/183 311/824/198 +f 314/826/185 313/845/187 292/827/234 +f 316/829/186 350/847/241 351/830/236 +f 307/832/189 318/855/191 352/833/237 +f 325/835/203 354/851/244 355/836/239 +f 281/752/170 280/852/245 328/838/202 +f 317/840/188 288/853/246 287/841/240 +f 309/843/184 302/797/176 341/798/217 +f 296/801/219 303/800/195 312/844/183 +f 313/845/187 298/808/173 293/809/225 +f 299/831/196 351/830/236 333/790/210 +f 315/810/209 345/812/227 350/847/241 +f 310/820/182 349/822/231 346/848/242 +f 278/849/243 277/825/233 311/824/198 +f 314/826/185 291/828/235 290/754/172 +f 325/835/203 323/815/199 347/814/228 +f 279/816/229 324/818/204 328/838/202 +f 306/819/179 289/753/171 288/853/246 +f 307/832/189 353/834/238 344/811/226 +f 318/855/191 320/867/255 356/856/247 +f 326/837/201 355/836/239 357/857/248 +f 282/859/249 281/752/170 327/839/206 +f 329/858/205 357/857/248 358/861/250 +f 283/863/251 282/859/249 330/860/208 +f 359/865/253 319/842/190 287/841/240 +f 335/792/212 338/794/214 356/856/247 +f 331/862/207 358/861/250 340/796/216 +f 284/806/223 283/863/251 332/864/252 +f 359/865/253 286/866/254 285/869/257 +f 352/833/237 356/856/247 338/794/214 +f 338/794/214 337/793/213 358/861/250 +f 337/793/213 340/796/216 358/861/250 +f 358/861/250 357/857/248 352/833/237 +f 357/857/248 355/836/239 353/834/238 +f 355/836/239 354/851/244 344/811/226 +f 354/851/244 347/814/228 345/812/227 +f 347/814/228 346/848/242 345/812/227 +f 346/848/242 349/822/231 350/847/241 +f 349/822/231 348/821/230 350/847/241 +f 348/821/230 341/798/217 351/830/236 +f 341/798/217 334/791/211 351/830/236 +f 334/791/211 333/790/210 351/830/236 +f 351/830/236 350/847/241 348/821/230 +f 355/836/239 344/811/226 353/834/238 +f 344/811/226 354/851/244 345/812/227 +f 358/861/250 352/833/237 338/794/214 +f 353/834/238 352/833/237 357/857/248 +f 361/870/258 362/982/258 363/871/259 +f 365/873/260 366/983/260 367/874/261 +f 369/876/262 370/897/263 371/877/263 +f 373/879/264 374/903/264 375/880/265 +f 377/882/266 378/901/266 379/883/267 +f 381/885/268 382/898/268 383/886/269 +f 385/888/270 386/899/270 387/889/271 +f 389/891/272 390/913/272 391/892/273 +f 393/894/274 394/912/274 395/895/275 +f 384/890/271 387/889/271 371/877/276 +f 380/887/269 383/886/269 369/876/262 +f 376/884/267 379/883/267 382/898/268 +f 372/881/265 375/880/265 386/899/270 +f 396/900/277 397/919/277 378/901/266 +f 398/902/278 399/918/278 374/903/264 +f 401/904/279 402/910/279 403/905/280 +f 405/907/281 406/911/281 407/908/282 +f 364/875/261 367/874/261 402/910/279 +f 360/872/259 363/871/259 406/911/281 +f 404/909/282 407/908/282 394/912/274 +f 400/906/280 403/905/280 390/913/272 +f 392/896/275 395/895/275 410/914/283 +f 388/893/273 391/892/273 409/916/284 +f 411/917/284 409/916/284 399/918/278 +f 408/915/283 410/914/283 397/919/277 +f 419/920/285 430/984/285 431/921/286 +f 423/923/287 436/935/287 437/924/288 +f 425/926/289 438/934/289 439/927/290 +f 421/929/292 441/936/292 440/930/293 +f 426/928/291 439/927/290 447/932/294 +f 424/925/288 437/924/288 438/934/289 +f 422/931/293 440/930/293 436/935/287 +f 420/922/286 431/921/286 441/936/292 +f 449/937/295 450/940/295 451/938/296 +f 449/937/295 452/464/297 453/463/297 +f 455/941/298 456/953/298 457/942/299 +f 459/944/300 460/961/300 461/945/301 +f 463/947/302 464/960/302 465/948/303 +f 467/950/304 468/959/304 469/951/305 +f 462/949/303 465/948/303 456/953/298 +f 454/943/299 457/942/299 471/954/306 +f 475/956/307 476/962/307 477/957/308 +f 448/939/296 451/938/296 468/959/304 +f 466/952/305 469/951/305 464/960/302 +f 470/955/306 471/954/306 460/961/300 +f 458/946/301 461/945/301 476/962/307 +f 474/958/308 477/957/308 479/963/309 +f 473/641/310 472/462/310 481/965/311 +f 480/966/311 481/965/311 483/967/312 +f 478/964/309 479/963/309 485/969/313 +f 482/968/312 483/967/312 487/971/314 +f 497/973/315 270/979/162 272/746/162 +f 505/730/316 504/976/317 495/975/317 +f 504/976/317 497/973/315 496/974/315 diff --git a/src/main/resources/assets/hbm/models/weapons/greasegun.obj b/src/main/resources/assets/hbm/models/weapons/greasegun.obj index 9f056a7b8..666f8fc0e 100644 --- a/src/main/resources/assets/hbm/models/weapons/greasegun.obj +++ b/src/main/resources/assets/hbm/models/weapons/greasegun.obj @@ -690,8 +690,8 @@ vt 0.821429 0.750000 vt 0.732143 0.041667 vt 0.779762 -0.000000 vt 0.863095 0.041667 -vt 0.845238 0.750000 -vt 0.845238 0.750000 +vt 0.857143 0.750000 +vt 0.851190 0.750000 vt 0.797619 0.805556 vt 0.800595 0.861111 vt 0.797619 0.861111 @@ -1132,109 +1132,108 @@ vt 0.520857 0.918621 vt 0.526763 0.918621 vt 0.528925 0.923665 vt 0.529716 0.930556 -vt 0.369048 0.916667 -vt 0.377976 0.923611 -vt 0.369048 0.923611 -vt 0.369048 0.979167 -vt 0.377976 0.986111 vt 0.369048 0.986111 +vt 0.377976 0.993056 +vt 0.369048 0.993056 +vt 0.369048 0.965278 +vt 0.377976 0.972222 +vt 0.369048 0.972222 +vt 0.369048 0.937500 +vt 0.377976 0.930556 +vt 0.377976 0.937500 vt 0.369048 0.951389 vt 0.377976 0.944444 vt 0.377976 0.951389 -vt 0.369048 0.965278 -vt 0.377976 0.958333 -vt 0.377976 0.965278 -vt 0.369048 0.930556 -vt 0.377976 0.930556 -vt 0.369048 0.993056 -vt 0.377976 0.993056 -vt 0.369048 0.958333 -vt 0.369048 0.972222 -vt 0.377976 0.972222 -vt 0.377976 0.937500 -vt 0.369048 0.937500 vt 0.369048 1.000000 vt 0.377976 1.000000 +vt 0.369048 0.979167 vt 0.377976 0.979167 vt 0.369048 0.944444 -vt 0.386905 0.958333 -vt 0.386905 0.972222 -vt 0.386905 0.930556 -vt 0.386905 0.937500 -vt 0.386905 1.000000 -vt 0.386905 0.979167 +vt 0.369048 0.958333 +vt 0.377976 0.958333 +vt 0.369048 0.916667 +vt 0.377976 0.923611 +vt 0.369048 0.923611 +vt 0.377976 0.986111 +vt 0.377976 0.965278 +vt 0.369048 0.930556 vt 0.386905 0.944444 -vt 0.377976 0.916667 +vt 0.386905 0.958333 +vt 0.386905 0.916667 vt 0.386905 0.923611 vt 0.386905 0.986111 -vt 0.386905 0.951389 vt 0.386905 0.965278 +vt 0.386905 0.930556 vt 0.386905 0.993056 -vt 0.395833 0.993056 -vt 0.395833 0.951389 -vt 0.395833 0.958333 -vt 0.395833 0.972222 -vt 0.395833 0.930556 -vt 0.395833 0.937500 -vt 0.395833 1.000000 +vt 0.386905 0.972222 +vt 0.386905 0.937500 +vt 0.386905 0.951389 +vt 0.386905 1.000000 +vt 0.386905 0.979167 vt 0.395833 0.979167 +vt 0.395833 0.937500 vt 0.395833 0.944444 -vt 0.386905 0.916667 +vt 0.395833 0.958333 +vt 0.395833 0.916667 vt 0.395833 0.923611 vt 0.395833 0.986111 vt 0.395833 0.965278 -vt 0.491071 0.993056 -vt 0.491071 0.958333 -vt 0.491071 0.972222 -vt 0.491071 0.930556 -vt 0.491071 0.937500 -vt 0.491071 1.000000 +vt 0.395833 0.930556 +vt 0.395833 0.993056 +vt 0.395833 0.972222 +vt 0.395833 0.951389 +vt 0.395833 1.000000 vt 0.491071 0.979167 vt 0.491071 0.944444 -vt 0.395833 0.916667 +vt 0.491071 0.958333 +vt 0.491071 0.916667 vt 0.491071 0.923611 vt 0.491071 0.986111 -vt 0.491071 0.951389 vt 0.491071 0.965278 -vt 0.500000 0.923611 -vt 0.500000 0.930556 +vt 0.491071 0.930556 +vt 0.491071 0.993056 +vt 0.491071 0.972222 +vt 0.491071 0.937500 +vt 0.491071 0.951389 +vt 0.491071 1.000000 vt 0.500000 0.993056 -vt 0.500000 0.958333 -vt 0.500000 0.972222 -vt 0.500000 0.937500 vt 0.500000 1.000000 vt 0.500000 0.979167 vt 0.500000 0.944444 -vt 0.491071 0.916667 +vt 0.500000 0.958333 +vt 0.500000 0.916667 +vt 0.500000 0.923611 vt 0.500000 0.986111 -vt 0.500000 0.951389 vt 0.500000 0.965278 -vt 0.508929 0.958333 -vt 0.508929 0.965278 -vt 0.508929 0.923611 -vt 0.508929 0.930556 +vt 0.500000 0.930556 +vt 0.500000 0.972222 +vt 0.500000 0.937500 +vt 0.500000 0.951389 +vt 0.508929 0.944444 +vt 0.508929 0.951389 vt 0.508929 0.993056 -vt 0.508929 0.972222 -vt 0.508929 0.937500 vt 0.508929 1.000000 vt 0.508929 0.979167 -vt 0.508929 0.944444 -vt 0.500000 0.916667 +vt 0.508929 0.958333 +vt 0.508929 0.923611 vt 0.508929 0.986111 -vt 0.508929 0.951389 -vt 0.517857 0.951389 -vt 0.517857 0.958333 -vt 0.517857 0.965278 -vt 0.517857 0.923611 -vt 0.517857 0.930556 -vt 0.517857 0.993056 -vt 0.517857 0.972222 +vt 0.508929 0.965278 +vt 0.508929 0.930556 +vt 0.508929 0.972222 +vt 0.508929 0.937500 vt 0.517857 0.937500 +vt 0.517857 0.944444 +vt 0.517857 0.951389 +vt 0.517857 0.993056 vt 0.517857 1.000000 vt 0.517857 0.979167 -vt 0.517857 0.944444 -vt 0.508929 0.916667 +vt 0.517857 0.958333 +vt 0.517857 0.916667 +vt 0.517857 0.923611 vt 0.517857 0.986111 +vt 0.517857 0.965278 +vt 0.517857 0.930556 +vt 0.517857 0.972222 vt 0.377976 0.993056 vt 0.369048 1.000000 vt 0.369048 0.993056 @@ -1327,7 +1326,7 @@ vt 0.517857 0.965278 vt 0.517857 0.979167 vt 0.508929 0.986111 vt 0.517857 0.986111 -vt 0.517857 0.993056 +vt 0.517857 1.000000 vt 0.517857 0.916667 vt 0.517857 0.923611 vt 0.517857 0.930556 @@ -1335,33 +1334,35 @@ vt 0.508929 0.937500 vt 0.517857 0.937500 vt 0.517857 0.944444 vt 0.508929 0.951389 -vt 0.517857 0.951389 +vt 0.517857 0.958333 vt 0.000000 0.937500 vt 0.000000 0.965278 -vt 0.000000 0.993056 +vt 0.000000 0.979167 vt 0.000000 0.930556 vt 0.000000 0.958333 -vt 0.000000 0.916667 -vt 0.000000 0.923611 +vt -0.000000 0.986111 vt 0.000000 0.923611 +vt -0.000000 0.993056 +vt 0.000000 0.916667 +vt 0.000000 0.944444 vt 0.000000 0.916667 -vt 0.000000 0.958333 -vt 0.000000 0.930556 vt 0.000000 0.993056 +vt 0.000000 0.951389 +vt 0.000000 0.923611 +vt 0.000000 0.986111 +vt 0.000000 0.958333 +vt 0.000000 0.951389 +vt 0.000000 0.930556 +vt 0.000000 0.979167 vt 0.000000 0.965278 +vt 0.000000 0.944444 vt 0.000000 0.937500 -vt 0.000000 0.986111 vt 0.000000 0.972222 -vt 0.000000 0.951389 -vt 0.000000 0.944444 -vt 0.000000 0.979167 -vt 0.000000 0.979167 -vt 0.000000 0.944444 -vt 0.000000 0.951389 vt 0.000000 0.972222 -vt 0.000000 0.986111 +vt 0.377976 0.916667 +vt 0.508929 0.916667 vt 0.508929 1.000000 -vt 0.000000 1.000000 +vt -0.000000 1.000000 vt 0.000000 1.000000 vn 0.0000 0.0000 1.0000 vn -0.0000 -0.9911 0.1334 @@ -1531,191 +1532,191 @@ f 191/345/104 203/334/93 204/346/105 f 188/347/106 200/337/96 201/348/107 f 194/339/98 196/343/102 183/349/108 f 185/350/109 197/344/103 198/351/110 -f 191/345/104 205/352/111 192/353/112 -f 189/354/92 201/348/107 202/355/113 +f 191/352/104 205/353/111 192/354/112 +f 189/333/92 201/348/107 202/355/113 f 185/350/109 199/356/114 186/336/95 -f 192/353/112 206/340/99 193/357/115 +f 192/354/112 206/340/99 193/357/115 f 207/341/100 208/358/116 196/343/102 f 197/344/103 210/359/117 198/351/110 -f 205/352/111 216/360/118 217/361/119 +f 205/353/111 216/360/118 217/361/119 f 201/348/107 214/362/120 202/355/113 f 198/351/110 211/363/121 199/356/114 -f 205/352/111 218/364/122 206/340/99 -f 202/365/113 215/366/123 203/334/93 -f 199/356/114 212/367/124 200/337/96 -f 207/341/100 218/364/122 219/368/125 -f 197/344/103 208/358/116 209/369/126 -f 204/346/105 215/366/123 216/360/118 +f 205/353/111 218/364/122 206/340/99 +f 202/355/113 215/365/123 203/334/93 +f 199/356/114 212/366/124 200/337/96 +f 207/341/100 218/364/122 219/367/125 +f 197/344/103 208/358/116 209/368/126 +f 204/346/105 215/365/123 216/369/118 f 200/337/96 213/370/127 201/348/107 -f 212/367/124 225/371/128 213/370/127 +f 212/366/124 225/371/128 213/370/127 f 208/358/116 231/372/129 220/373/130 -f 209/369/126 222/374/131 210/359/117 +f 209/368/126 222/374/131 210/359/117 f 217/361/119 228/375/132 229/376/133 f 214/362/120 225/371/128 226/377/134 f 210/359/117 223/378/135 211/363/121 f 218/364/122 229/376/133 230/379/136 -f 214/380/120 227/381/137 215/366/123 -f 211/363/121 224/382/138 212/367/124 -f 219/368/125 230/379/136 231/372/129 -f 209/369/126 220/373/130 221/383/139 -f 216/360/118 227/381/137 228/375/132 -f 224/382/138 236/384/140 225/371/128 +f 214/362/120 227/380/137 215/365/123 +f 211/363/121 224/381/138 212/366/124 +f 219/367/125 230/379/136 231/372/129 +f 209/368/126 220/373/130 221/382/139 +f 216/369/118 227/380/137 228/383/132 +f 224/381/138 236/384/140 225/371/128 f 231/372/129 195/385/141 220/373/130 -f 221/383/139 233/386/142 222/374/131 +f 221/382/139 233/386/142 222/374/131 f 229/376/133 239/387/143 240/388/144 f 225/371/128 237/389/145 226/377/134 f 222/374/131 234/390/146 223/378/135 f 229/376/133 241/391/147 230/379/136 -f 226/392/134 238/393/148 227/381/137 -f 223/378/135 235/394/149 224/382/138 -f 230/379/136 242/395/150 231/372/129 -f 221/383/139 195/385/141 232/396/151 -f 228/375/132 238/393/148 239/387/143 -f 239/387/143 251/397/152 252/398/153 -f 235/394/149 249/399/154 236/384/140 -f 242/395/150 244/400/155 195/385/141 -f 232/396/151 246/401/156 233/386/142 -f 240/388/144 252/398/153 253/402/157 -f 237/389/145 249/399/154 250/403/158 -f 234/390/146 246/401/156 247/404/159 -f 240/388/144 254/405/160 241/391/147 -f 237/406/145 251/397/152 238/393/148 -f 235/394/149 247/404/159 248/407/161 -f 242/395/150 254/405/160 255/408/162 -f 232/396/151 244/400/155 245/409/163 +f 226/377/134 238/392/148 227/380/137 +f 223/378/135 235/393/149 224/381/138 +f 230/379/136 242/394/150 231/372/129 +f 221/382/139 195/385/141 232/395/151 +f 228/383/132 238/392/148 239/396/143 +f 239/396/143 251/397/152 252/398/153 +f 235/393/149 249/399/154 236/384/140 +f 242/394/150 244/400/155 195/385/141 +f 232/395/151 246/401/156 233/386/142 +f 240/388/144 252/402/153 253/403/157 +f 237/389/145 249/399/154 250/404/158 +f 234/390/146 246/401/156 247/405/159 +f 240/388/144 254/406/160 241/391/147 +f 237/389/145 251/397/152 238/392/148 +f 235/393/149 247/405/159 248/407/161 +f 242/394/150 254/406/160 255/408/162 +f 232/395/151 244/400/155 245/409/163 f 245/409/163 256/410/164 257/411/165 f 252/398/153 263/412/166 264/413/167 f 248/407/161 261/414/168 249/399/154 f 255/408/162 256/410/164 244/400/155 f 246/401/156 257/411/165 258/415/169 -f 252/398/153 265/416/170 253/402/157 -f 250/403/158 261/414/168 262/417/171 -f 247/404/159 258/415/169 259/418/172 -f 254/405/160 265/416/170 266/419/173 -f 250/420/158 263/412/166 251/397/152 -f 247/404/159 260/421/174 248/407/161 -f 255/408/162 266/419/173 267/422/175 -f 266/419/173 279/423/176 267/422/175 -f 257/411/165 268/424/177 269/425/178 -f 264/413/167 275/426/179 276/427/180 -f 260/421/174 273/428/181 261/414/168 -f 267/422/175 268/424/177 256/410/164 -f 257/411/165 270/429/182 258/415/169 -f 265/416/170 276/427/180 277/430/183 -f 262/417/171 273/428/181 274/431/184 -f 259/418/172 270/429/182 271/432/185 +f 252/402/153 265/416/170 253/403/157 +f 250/404/158 261/414/168 262/417/171 +f 247/405/159 258/415/169 259/418/172 +f 254/406/160 265/416/170 266/419/173 +f 250/404/158 263/412/166 251/397/152 +f 247/405/159 260/420/174 248/407/161 +f 255/408/162 266/419/173 267/421/175 +f 266/419/173 279/422/176 267/421/175 +f 257/411/165 268/423/177 269/424/178 +f 264/413/167 275/425/179 276/426/180 +f 260/420/174 273/427/181 261/414/168 +f 267/421/175 268/423/177 256/410/164 +f 257/411/165 270/428/182 258/415/169 +f 265/416/170 276/429/180 277/430/183 +f 262/417/171 273/427/181 274/431/184 +f 259/418/172 270/428/182 271/432/185 f 266/419/173 277/430/183 278/433/186 -f 262/434/171 275/426/179 263/412/166 -f 259/418/172 272/435/187 260/421/174 -f 299/436/188 285/437/92 286/438/106 -f 296/439/105 282/440/112 283/441/104 -f 290/442/101 302/443/110 289/444/109 -f 280/445/98 292/446/102 243/447/108 -f 300/448/96 286/438/106 287/449/97 -f 297/450/189 283/441/104 284/451/94 -f 292/446/102 290/442/101 243/447/108 -f 294/452/99 280/445/98 281/453/115 -f 288/454/95 300/448/96 287/449/97 -f 285/455/92 297/450/189 284/451/94 -f 282/440/112 294/452/99 281/453/115 -f 289/444/109 301/456/114 288/454/95 -f 292/446/102 315/457/126 303/458/103 -f 306/459/122 293/460/100 294/452/99 -f 313/461/121 300/448/96 301/456/114 -f 298/462/113 309/463/190 297/450/189 -f 295/464/111 306/459/122 294/452/99 -f 314/465/117 301/456/114 302/443/110 -f 311/466/127 298/467/113 299/436/188 -f 308/468/118 295/464/111 296/439/105 -f 303/458/103 314/465/117 302/443/110 -f 305/469/125 292/446/102 293/460/100 -f 300/448/96 311/466/127 299/436/188 -f 309/463/190 296/439/105 297/450/189 -f 321/470/137 308/468/118 309/463/190 -f 316/471/130 315/457/126 304/472/116 -f 318/473/136 305/469/125 306/459/122 -f 313/461/121 324/474/138 312/475/124 -f 310/476/120 321/470/137 309/463/190 -f 319/477/133 306/459/122 307/478/119 -f 314/465/117 325/479/135 313/461/121 -f 323/480/128 310/481/120 311/466/127 -f 320/482/132 307/478/119 308/468/118 -f 315/457/126 326/483/131 314/465/117 -f 305/469/125 316/471/130 304/472/116 -f 312/475/124 323/480/128 311/466/127 -f 332/484/191 320/482/132 321/470/137 -f 291/485/192 327/486/139 316/471/130 -f 329/487/193 317/488/129 318/473/136 -f 336/489/194 324/474/138 325/479/135 -f 322/490/134 332/484/191 321/470/137 -f 330/491/195 318/473/136 319/477/133 -f 337/492/196 325/479/135 326/483/131 -f 334/493/197 322/494/134 323/480/128 -f 331/495/198 319/477/133 320/482/132 -f 327/486/139 337/492/196 326/483/131 -f 328/496/199 316/471/130 317/488/129 -f 324/474/138 334/493/197 323/480/128 -f 335/497/200 346/498/201 334/493/197 -f 344/499/202 331/495/198 332/484/191 -f 339/500/203 338/501/204 291/485/192 -f 341/502/205 328/496/199 329/487/193 -f 336/489/194 347/503/206 335/497/200 -f 333/504/207 344/499/202 332/484/191 -f 330/491/195 341/502/205 329/487/193 -f 349/505/208 336/489/194 337/492/196 -f 346/498/201 333/506/207 334/493/197 -f 331/495/198 342/507/209 330/491/195 -f 338/501/204 349/505/208 337/492/196 -f 328/496/199 339/500/203 291/485/192 -f 340/508/210 351/509/211 339/500/203 -f 347/503/206 358/510/212 346/498/201 -f 356/511/213 343/512/214 344/499/202 -f 351/509/211 350/513/215 339/500/203 -f 353/514/216 340/508/210 341/502/205 -f 360/515/217 347/503/206 348/516/218 -f 357/517/219 344/499/202 345/518/220 -f 342/507/209 353/514/216 341/502/205 -f 349/505/208 360/515/217 348/516/218 -f 358/510/212 345/519/220 346/498/201 -f 355/520/221 342/507/209 343/512/214 -f 350/513/215 361/521/222 349/505/208 -f 278/522/186 362/523/223 279/524/176 -f 277/525/183 361/521/222 278/522/186 -f 359/526/224 277/525/183 276/527/180 -f 358/510/212 276/527/180 275/528/179 -f 274/431/184 358/510/212 275/528/179 -f 356/511/213 274/529/184 273/530/181 -f 272/531/187 356/511/213 273/530/181 -f 354/532/225 272/531/187 271/533/185 -f 270/534/182 354/532/225 271/533/185 -f 352/535/226 270/534/182 269/536/178 -f 268/424/177 352/535/226 269/536/178 -f 362/523/223 268/424/177 279/524/176 -f 281/453/115 378/537/227 282/440/112 -f 289/444/109 386/538/217 290/442/101 -f 189/354/92 368/539/172 188/347/106 -f 282/440/112 379/540/209 283/441/104 -f 290/442/101 375/541/183 243/447/108 -f 190/335/94 369/542/185 189/333/92 -f 283/441/104 380/543/225 284/451/94 -f 191/345/104 370/544/225 190/335/94 -f 284/451/94 381/545/185 285/455/92 -f 184/342/101 363/546/183 183/349/108 -f 192/353/112 371/547/209 191/345/104 -f 285/437/92 382/548/172 286/438/106 -f 185/350/109 364/549/217 184/342/101 -f 193/357/115 372/550/227 192/353/112 -f 286/438/106 383/551/159 287/449/97 -f 186/336/95 365/552/218 185/350/109 -f 243/447/108 376/553/170 280/445/98 -f 194/339/98 373/554/157 193/357/115 -f 287/449/97 384/555/228 288/454/95 -f 187/338/97 366/556/228 186/336/95 -f 280/445/98 377/557/157 281/453/115 -f 183/349/108 374/558/170 194/339/98 -f 288/454/95 385/559/218 289/444/109 -f 188/347/106 367/560/159 187/338/97 -f 189/333/92 202/365/113 203/334/93 +f 262/417/171 275/425/179 263/412/166 +f 259/418/172 272/434/187 260/420/174 +f 299/435/188 285/436/92 286/437/106 +f 296/438/105 282/439/112 283/440/104 +f 290/441/101 302/442/110 289/443/109 +f 280/444/98 292/445/102 243/446/108 +f 300/447/96 286/437/106 287/448/97 +f 297/449/189 283/440/104 284/450/94 +f 292/445/102 290/441/101 243/446/108 +f 294/451/99 280/444/98 281/452/115 +f 288/453/95 300/447/96 287/448/97 +f 285/454/92 297/449/189 284/450/94 +f 282/439/112 294/451/99 281/452/115 +f 289/443/109 301/455/114 288/453/95 +f 292/445/102 315/456/126 303/457/103 +f 306/458/122 293/459/100 294/451/99 +f 313/460/121 300/447/96 301/455/114 +f 298/461/113 309/462/190 297/449/189 +f 295/463/111 306/458/122 294/451/99 +f 314/464/117 301/455/114 302/442/110 +f 311/465/127 298/466/113 299/435/188 +f 308/467/118 295/463/111 296/438/105 +f 303/457/103 314/464/117 302/442/110 +f 305/468/125 292/445/102 293/459/100 +f 300/447/96 311/465/127 299/435/188 +f 309/462/190 296/438/105 297/449/189 +f 321/469/137 308/467/118 309/462/190 +f 316/470/130 315/456/126 304/471/116 +f 318/472/136 305/468/125 306/458/122 +f 313/460/121 324/473/138 312/474/124 +f 310/475/120 321/469/137 309/462/190 +f 319/476/133 306/458/122 307/477/119 +f 314/464/117 325/478/135 313/460/121 +f 323/479/128 310/480/120 311/465/127 +f 320/481/132 307/477/119 308/467/118 +f 315/456/126 326/482/131 314/464/117 +f 305/468/125 316/470/130 304/471/116 +f 312/474/124 323/479/128 311/465/127 +f 332/483/191 320/481/132 321/469/137 +f 291/484/192 327/485/139 316/470/130 +f 329/486/193 317/487/129 318/472/136 +f 336/488/194 324/473/138 325/478/135 +f 322/489/134 332/483/191 321/469/137 +f 330/490/195 318/472/136 319/476/133 +f 337/491/196 325/478/135 326/482/131 +f 334/492/197 322/493/134 323/479/128 +f 331/494/198 319/476/133 320/481/132 +f 327/485/139 337/491/196 326/482/131 +f 328/495/199 316/470/130 317/487/129 +f 324/473/138 334/492/197 323/479/128 +f 335/496/200 346/497/201 334/492/197 +f 344/498/202 331/494/198 332/483/191 +f 339/499/203 338/500/204 291/484/192 +f 341/501/205 328/495/199 329/486/193 +f 336/488/194 347/502/206 335/496/200 +f 333/503/207 344/498/202 332/483/191 +f 330/490/195 341/501/205 329/486/193 +f 349/504/208 336/488/194 337/491/196 +f 346/497/201 333/505/207 334/492/197 +f 331/494/198 342/506/209 330/490/195 +f 338/500/204 349/504/208 337/491/196 +f 328/495/199 339/499/203 291/484/192 +f 340/507/210 351/508/211 339/499/203 +f 347/502/206 358/509/212 346/497/201 +f 356/510/213 343/511/214 344/498/202 +f 351/508/211 350/512/215 339/499/203 +f 353/513/216 340/507/210 341/501/205 +f 360/514/217 347/502/206 348/515/218 +f 357/516/219 344/498/202 345/517/220 +f 342/506/209 353/513/216 341/501/205 +f 349/504/208 360/514/217 348/515/218 +f 358/509/212 345/518/220 346/497/201 +f 355/519/221 342/506/209 343/511/214 +f 350/512/215 361/520/222 349/504/208 +f 278/521/186 362/522/223 279/523/176 +f 277/524/183 361/520/222 278/521/186 +f 359/525/224 277/524/183 276/526/180 +f 358/509/212 276/526/180 275/425/179 +f 274/527/184 358/509/212 275/425/179 +f 356/510/213 274/528/184 273/529/181 +f 272/530/187 356/510/213 273/529/181 +f 354/531/225 272/530/187 271/532/185 +f 270/533/182 354/531/225 271/532/185 +f 352/534/226 270/533/182 269/424/178 +f 268/535/177 352/534/226 269/424/178 +f 362/522/223 268/535/177 279/523/176 +f 281/452/115 378/536/227 282/439/112 +f 289/443/109 386/537/217 290/441/101 +f 189/333/92 368/538/172 188/347/106 +f 282/439/112 379/539/209 283/440/104 +f 290/441/101 375/540/183 243/446/108 +f 190/335/94 369/541/185 189/333/92 +f 283/440/104 380/542/225 284/450/94 +f 191/345/104 370/543/225 190/335/94 +f 284/450/94 381/544/185 285/454/92 +f 184/342/101 363/545/183 183/349/108 +f 192/354/112 371/546/209 191/352/104 +f 285/436/92 382/547/172 286/437/106 +f 185/350/109 364/548/217 184/342/101 +f 193/357/115 372/549/227 192/354/112 +f 286/437/106 383/550/159 287/448/97 +f 186/336/95 365/551/218 185/350/109 +f 243/446/108 376/552/170 280/444/98 +f 194/339/98 373/553/157 193/357/115 +f 287/448/97 384/554/228 288/453/95 +f 187/338/97 366/555/228 186/336/95 +f 280/444/98 377/556/157 281/452/115 +f 183/349/108 374/557/170 194/339/98 +f 288/453/95 385/558/218 289/443/109 +f 188/347/106 367/559/159 187/338/97 +f 189/333/92 202/355/113 203/334/93 f 186/336/95 199/356/114 200/337/96 f 194/339/98 193/357/115 206/340/99 f 184/342/101 183/349/108 196/343/102 @@ -1723,190 +1724,190 @@ f 191/345/104 190/335/94 203/334/93 f 188/347/106 187/338/97 200/337/96 f 194/339/98 207/341/100 196/343/102 f 185/350/109 184/342/101 197/344/103 -f 191/345/104 204/346/105 205/352/111 -f 189/354/92 188/347/106 201/348/107 +f 191/352/104 204/560/105 205/353/111 +f 189/333/92 188/347/106 201/348/107 f 185/350/109 198/351/110 199/356/114 -f 192/353/112 205/352/111 206/340/99 -f 207/341/100 219/368/125 208/358/116 -f 197/344/103 209/369/126 210/359/117 -f 205/352/111 204/346/105 216/360/118 +f 192/354/112 205/353/111 206/340/99 +f 207/341/100 219/367/125 208/358/116 +f 197/344/103 209/368/126 210/359/117 +f 205/353/111 204/560/105 216/360/118 f 201/348/107 213/370/127 214/362/120 f 198/351/110 210/359/117 211/363/121 -f 205/352/111 217/361/119 218/364/122 -f 202/365/113 214/380/120 215/366/123 -f 199/356/114 211/363/121 212/367/124 +f 205/353/111 217/361/119 218/364/122 +f 202/355/113 214/362/120 215/365/123 +f 199/356/114 211/363/121 212/366/124 f 207/341/100 206/340/99 218/364/122 f 197/344/103 196/343/102 208/358/116 -f 204/346/105 203/334/93 215/366/123 -f 200/337/96 212/367/124 213/370/127 -f 212/367/124 224/382/138 225/371/128 -f 208/358/116 219/368/125 231/372/129 -f 209/369/126 221/383/139 222/374/131 +f 204/346/105 203/334/93 215/365/123 +f 200/337/96 212/366/124 213/370/127 +f 212/366/124 224/381/138 225/371/128 +f 208/358/116 219/367/125 231/372/129 +f 209/368/126 221/382/139 222/374/131 f 217/361/119 216/360/118 228/375/132 f 214/362/120 213/370/127 225/371/128 f 210/359/117 222/374/131 223/378/135 f 218/364/122 217/361/119 229/376/133 -f 214/380/120 226/392/134 227/381/137 -f 211/363/121 223/378/135 224/382/138 -f 219/368/125 218/364/122 230/379/136 -f 209/369/126 208/358/116 220/373/130 -f 216/360/118 215/366/123 227/381/137 -f 224/382/138 235/394/149 236/384/140 -f 231/372/129 242/395/150 195/385/141 -f 221/383/139 232/396/151 233/386/142 +f 214/362/120 226/377/134 227/380/137 +f 211/363/121 223/378/135 224/381/138 +f 219/367/125 218/364/122 230/379/136 +f 209/368/126 208/358/116 220/373/130 +f 216/369/118 215/365/123 227/380/137 +f 224/381/138 235/393/149 236/384/140 +f 231/372/129 242/394/150 195/385/141 +f 221/382/139 232/395/151 233/386/142 f 229/376/133 228/375/132 239/387/143 f 225/371/128 236/384/140 237/389/145 f 222/374/131 233/386/142 234/390/146 f 229/376/133 240/388/144 241/391/147 -f 226/392/134 237/406/145 238/393/148 -f 223/378/135 234/390/146 235/394/149 -f 230/379/136 241/391/147 242/395/150 -f 221/383/139 220/373/130 195/385/141 -f 228/375/132 227/381/137 238/393/148 -f 239/387/143 238/393/148 251/397/152 -f 235/394/149 248/407/161 249/399/154 -f 242/395/150 255/408/162 244/400/155 -f 232/396/151 245/409/163 246/401/156 -f 240/388/144 239/387/143 252/398/153 +f 226/377/134 237/389/145 238/392/148 +f 223/378/135 234/390/146 235/393/149 +f 230/379/136 241/391/147 242/394/150 +f 221/382/139 220/373/130 195/385/141 +f 228/383/132 227/380/137 238/392/148 +f 239/396/143 238/392/148 251/397/152 +f 235/393/149 248/407/161 249/399/154 +f 242/394/150 255/408/162 244/400/155 +f 232/395/151 245/409/163 246/401/156 +f 240/388/144 239/387/143 252/402/153 f 237/389/145 236/384/140 249/399/154 f 234/390/146 233/386/142 246/401/156 -f 240/388/144 253/402/157 254/405/160 -f 237/406/145 250/420/158 251/397/152 -f 235/394/149 234/390/146 247/404/159 -f 242/395/150 241/391/147 254/405/160 -f 232/396/151 195/385/141 244/400/155 +f 240/388/144 253/403/157 254/406/160 +f 237/389/145 250/404/158 251/397/152 +f 235/393/149 234/390/146 247/405/159 +f 242/394/150 241/391/147 254/406/160 +f 232/395/151 195/385/141 244/400/155 f 245/409/163 244/400/155 256/410/164 f 252/398/153 251/397/152 263/412/166 -f 248/407/161 260/421/174 261/414/168 -f 255/408/162 267/422/175 256/410/164 +f 248/407/161 260/420/174 261/414/168 +f 255/408/162 267/421/175 256/410/164 f 246/401/156 245/409/163 257/411/165 -f 252/398/153 264/413/167 265/416/170 -f 250/403/158 249/399/154 261/414/168 -f 247/404/159 246/401/156 258/415/169 -f 254/405/160 253/402/157 265/416/170 -f 250/420/158 262/434/171 263/412/166 -f 247/404/159 259/418/172 260/421/174 -f 255/408/162 254/405/160 266/419/173 -f 266/419/173 278/433/186 279/423/176 -f 257/411/165 256/410/164 268/424/177 -f 264/413/167 263/412/166 275/426/179 -f 260/421/174 272/435/187 273/428/181 -f 267/422/175 279/423/176 268/424/177 -f 257/411/165 269/425/178 270/429/182 -f 265/416/170 264/413/167 276/427/180 -f 262/417/171 261/414/168 273/428/181 -f 259/418/172 258/415/169 270/429/182 +f 252/402/153 264/561/167 265/416/170 +f 250/404/158 249/399/154 261/414/168 +f 247/405/159 246/401/156 258/415/169 +f 254/406/160 253/403/157 265/416/170 +f 250/404/158 262/417/171 263/412/166 +f 247/405/159 259/418/172 260/420/174 +f 255/408/162 254/406/160 266/419/173 +f 266/419/173 278/433/186 279/422/176 +f 257/411/165 256/410/164 268/423/177 +f 264/413/167 263/412/166 275/425/179 +f 260/420/174 272/434/187 273/427/181 +f 267/421/175 279/422/176 268/423/177 +f 257/411/165 269/424/178 270/428/182 +f 265/416/170 264/561/167 276/429/180 +f 262/417/171 261/414/168 273/427/181 +f 259/418/172 258/415/169 270/428/182 f 266/419/173 265/416/170 277/430/183 -f 262/434/171 274/529/184 275/426/179 -f 259/418/172 271/432/185 272/435/187 -f 299/436/188 298/467/113 285/437/92 -f 296/439/105 295/464/111 282/440/112 -f 290/442/101 303/458/103 302/443/110 -f 280/445/98 293/460/100 292/446/102 -f 300/448/96 299/436/188 286/438/106 -f 297/450/189 296/439/105 283/441/104 -f 292/446/102 303/458/103 290/442/101 -f 294/452/99 293/460/100 280/445/98 -f 288/454/95 301/456/114 300/448/96 -f 285/455/92 298/462/113 297/450/189 -f 282/440/112 295/464/111 294/452/99 -f 289/444/109 302/443/110 301/456/114 -f 292/446/102 304/472/116 315/457/126 -f 306/459/122 305/469/125 293/460/100 -f 313/461/121 312/475/124 300/448/96 -f 298/462/113 310/476/120 309/463/190 -f 295/464/111 307/478/119 306/459/122 -f 314/465/117 313/461/121 301/456/114 -f 311/466/127 310/481/120 298/467/113 -f 308/468/118 307/478/119 295/464/111 -f 303/458/103 315/457/126 314/465/117 -f 305/469/125 304/472/116 292/446/102 -f 300/448/96 312/475/124 311/466/127 -f 309/463/190 308/468/118 296/439/105 -f 321/470/137 320/482/132 308/468/118 -f 316/471/130 327/486/139 315/457/126 -f 318/473/136 317/488/129 305/469/125 -f 313/461/121 325/479/135 324/474/138 -f 310/476/120 322/490/134 321/470/137 -f 319/477/133 318/473/136 306/459/122 -f 314/465/117 326/483/131 325/479/135 -f 323/480/128 322/494/134 310/481/120 -f 320/482/132 319/477/133 307/478/119 -f 315/457/126 327/486/139 326/483/131 -f 305/469/125 317/488/129 316/471/130 -f 312/475/124 324/474/138 323/480/128 -f 332/484/191 331/495/198 320/482/132 -f 291/485/192 338/501/204 327/486/139 -f 329/487/193 328/496/199 317/488/129 -f 336/489/194 335/497/200 324/474/138 -f 322/490/134 333/504/207 332/484/191 -f 330/491/195 329/487/193 318/473/136 -f 337/492/196 336/489/194 325/479/135 -f 334/493/197 333/506/207 322/494/134 -f 331/495/198 330/491/195 319/477/133 -f 327/486/139 338/501/204 337/492/196 -f 328/496/199 291/485/192 316/471/130 -f 324/474/138 335/497/200 334/493/197 -f 335/497/200 347/503/206 346/498/201 -f 344/499/202 343/512/214 331/495/198 -f 339/500/203 350/513/215 338/501/204 -f 341/502/205 340/508/210 328/496/199 -f 336/489/194 348/516/218 347/503/206 -f 333/504/207 345/518/220 344/499/202 -f 330/491/195 342/507/209 341/502/205 -f 349/505/208 348/516/218 336/489/194 -f 346/498/201 345/519/220 333/506/207 -f 331/495/198 343/512/214 342/507/209 -f 338/501/204 350/513/215 349/505/208 -f 328/496/199 340/508/210 339/500/203 -f 340/508/210 352/535/226 351/509/211 -f 347/503/206 359/526/224 358/510/212 -f 356/511/213 355/520/221 343/512/214 -f 351/509/211 362/523/223 350/513/215 -f 353/514/216 352/535/226 340/508/210 -f 360/515/217 359/526/224 347/503/206 -f 357/517/219 356/511/213 344/499/202 -f 342/507/209 354/532/225 353/514/216 -f 349/505/208 361/521/222 360/515/217 -f 358/510/212 357/561/219 345/519/220 -f 355/520/221 354/532/225 342/507/209 -f 350/513/215 362/523/223 361/521/222 -f 278/522/186 361/521/222 362/523/223 -f 277/525/183 360/515/217 361/521/222 -f 359/526/224 360/515/217 277/525/183 -f 358/510/212 359/526/224 276/527/180 -f 274/431/184 357/561/219 358/510/212 -f 356/511/213 357/517/219 274/529/184 -f 272/531/187 355/520/221 356/511/213 -f 354/532/225 355/520/221 272/531/187 -f 270/534/182 353/514/216 354/532/225 -f 352/535/226 353/514/216 270/534/182 -f 268/424/177 351/509/211 352/535/226 -f 362/523/223 351/509/211 268/424/177 -f 281/453/115 377/557/157 378/537/227 -f 289/444/109 385/559/218 386/538/217 -f 189/354/92 369/562/185 368/539/172 -f 282/440/112 378/537/227 379/540/209 -f 290/442/101 386/538/217 375/541/183 -f 190/335/94 370/544/225 369/542/185 -f 283/441/104 379/540/209 380/543/225 -f 191/345/104 371/547/209 370/544/225 -f 284/451/94 380/543/225 381/545/185 -f 184/342/101 364/549/217 363/546/183 -f 192/353/112 372/550/227 371/547/209 -f 285/437/92 381/563/185 382/548/172 -f 185/350/109 365/552/218 364/549/217 -f 193/357/115 373/554/157 372/550/227 -f 286/438/106 382/548/172 383/551/159 -f 186/336/95 366/556/228 365/552/218 -f 243/447/108 375/541/183 376/553/170 -f 194/339/98 374/558/170 373/554/157 -f 287/449/97 383/551/159 384/555/228 -f 187/338/97 367/560/159 366/556/228 -f 280/445/98 376/553/170 377/557/157 -f 183/349/108 363/546/183 374/558/170 -f 288/454/95 384/555/228 385/559/218 -f 188/347/106 368/539/172 367/560/159 +f 262/417/171 274/431/184 275/425/179 +f 259/418/172 271/432/185 272/434/187 +f 299/435/188 298/466/113 285/436/92 +f 296/438/105 295/463/111 282/439/112 +f 290/441/101 303/457/103 302/442/110 +f 280/444/98 293/459/100 292/445/102 +f 300/447/96 299/435/188 286/437/106 +f 297/449/189 296/438/105 283/440/104 +f 292/445/102 303/457/103 290/441/101 +f 294/451/99 293/459/100 280/444/98 +f 288/453/95 301/455/114 300/447/96 +f 285/454/92 298/461/113 297/449/189 +f 282/439/112 295/463/111 294/451/99 +f 289/443/109 302/442/110 301/455/114 +f 292/445/102 304/471/116 315/456/126 +f 306/458/122 305/468/125 293/459/100 +f 313/460/121 312/474/124 300/447/96 +f 298/461/113 310/475/120 309/462/190 +f 295/463/111 307/477/119 306/458/122 +f 314/464/117 313/460/121 301/455/114 +f 311/465/127 310/480/120 298/466/113 +f 308/467/118 307/477/119 295/463/111 +f 303/457/103 315/456/126 314/464/117 +f 305/468/125 304/471/116 292/445/102 +f 300/447/96 312/474/124 311/465/127 +f 309/462/190 308/467/118 296/438/105 +f 321/469/137 320/481/132 308/467/118 +f 316/470/130 327/485/139 315/456/126 +f 318/472/136 317/487/129 305/468/125 +f 313/460/121 325/478/135 324/473/138 +f 310/475/120 322/489/134 321/469/137 +f 319/476/133 318/472/136 306/458/122 +f 314/464/117 326/482/131 325/478/135 +f 323/479/128 322/493/134 310/480/120 +f 320/481/132 319/476/133 307/477/119 +f 315/456/126 327/485/139 326/482/131 +f 305/468/125 317/487/129 316/470/130 +f 312/474/124 324/473/138 323/479/128 +f 332/483/191 331/494/198 320/481/132 +f 291/484/192 338/500/204 327/485/139 +f 329/486/193 328/495/199 317/487/129 +f 336/488/194 335/496/200 324/473/138 +f 322/489/134 333/503/207 332/483/191 +f 330/490/195 329/486/193 318/472/136 +f 337/491/196 336/488/194 325/478/135 +f 334/492/197 333/505/207 322/493/134 +f 331/494/198 330/490/195 319/476/133 +f 327/485/139 338/500/204 337/491/196 +f 328/495/199 291/484/192 316/470/130 +f 324/473/138 335/496/200 334/492/197 +f 335/496/200 347/502/206 346/497/201 +f 344/498/202 343/511/214 331/494/198 +f 339/499/203 350/512/215 338/500/204 +f 341/501/205 340/507/210 328/495/199 +f 336/488/194 348/515/218 347/502/206 +f 333/503/207 345/517/220 344/498/202 +f 330/490/195 342/506/209 341/501/205 +f 349/504/208 348/515/218 336/488/194 +f 346/497/201 345/518/220 333/505/207 +f 331/494/198 343/511/214 342/506/209 +f 338/500/204 350/512/215 349/504/208 +f 328/495/199 340/507/210 339/499/203 +f 340/507/210 352/534/226 351/508/211 +f 347/502/206 359/525/224 358/509/212 +f 356/510/213 355/519/221 343/511/214 +f 351/508/211 362/522/223 350/512/215 +f 353/513/216 352/534/226 340/507/210 +f 360/514/217 359/525/224 347/502/206 +f 357/516/219 356/510/213 344/498/202 +f 342/506/209 354/531/225 353/513/216 +f 349/504/208 361/520/222 360/514/217 +f 358/509/212 357/562/219 345/518/220 +f 355/519/221 354/531/225 342/506/209 +f 350/512/215 362/522/223 361/520/222 +f 278/521/186 361/520/222 362/522/223 +f 277/524/183 360/514/217 361/520/222 +f 359/525/224 360/514/217 277/524/183 +f 358/509/212 359/525/224 276/526/180 +f 274/527/184 357/562/219 358/509/212 +f 356/510/213 357/516/219 274/528/184 +f 272/530/187 355/519/221 356/510/213 +f 354/531/225 355/519/221 272/530/187 +f 270/533/182 353/513/216 354/531/225 +f 352/534/226 353/513/216 270/533/182 +f 268/535/177 351/508/211 352/534/226 +f 362/522/223 351/508/211 268/535/177 +f 281/452/115 377/556/157 378/536/227 +f 289/443/109 385/558/218 386/537/217 +f 189/333/92 369/541/185 368/538/172 +f 282/439/112 378/536/227 379/539/209 +f 290/441/101 386/537/217 375/540/183 +f 190/335/94 370/543/225 369/541/185 +f 283/440/104 379/539/209 380/542/225 +f 191/345/104 371/563/209 370/543/225 +f 284/450/94 380/542/225 381/544/185 +f 184/342/101 364/548/217 363/545/183 +f 192/354/112 372/549/227 371/546/209 +f 285/436/92 381/564/185 382/547/172 +f 185/350/109 365/551/218 364/548/217 +f 193/357/115 373/553/157 372/549/227 +f 286/437/106 382/547/172 383/550/159 +f 186/336/95 366/555/228 365/551/218 +f 243/446/108 375/540/183 376/552/170 +f 194/339/98 374/557/170 373/553/157 +f 287/448/97 383/550/159 384/554/228 +f 187/338/97 367/559/159 366/555/228 +f 280/444/98 376/552/170 377/556/157 +f 183/349/108 363/545/183 374/557/170 +f 288/453/95 384/554/228 385/558/218 +f 188/347/106 368/538/172 367/559/159 o Gun v 0.000000 0.250000 3.750000 v 0.000000 0.250000 8.000000 @@ -2291,14 +2292,14 @@ v -0.250000 -0.312500 -2.875000 v 0.250000 -0.312500 -2.875000 v -0.375000 -0.600718 -3.125000 v 0.375000 -0.600718 -3.125000 -v -0.375000 -0.654728 -3.449057 -v 0.375000 -0.654728 -3.449057 +v -0.375000 -0.654727 -3.449057 +v 0.375000 -0.654727 -3.449057 v -0.375000 -3.311872 -4.173732 v 0.375000 -3.311872 -4.173732 v -0.375000 -3.085226 -4.929220 v 0.375000 -3.085226 -4.929220 -v 0.375000 -0.961348 -4.201034 -v -0.375000 -0.961348 -4.201034 +v 0.375000 -0.961349 -4.201034 +v -0.375000 -0.961349 -4.201034 v 0.250000 -0.812500 -4.875000 v 0.375000 -0.312500 -4.679806 v 0.250000 -0.812500 -2.875000 @@ -3432,19 +3433,19 @@ vt 1.000000 0.472222 vt 1.000000 0.055556 vt 0.976190 0.097222 vt 1.000000 0.333333 -vt 0.931548 0.298611 -vt 0.925595 0.027778 -vt 0.892857 0.312500 -vt 0.952381 0.368056 -vt 0.892857 0.312500 -vt 0.931548 0.298611 +vt 0.928571 0.291667 +vt 0.925595 0.034722 +vt 0.892857 0.326389 +vt 0.949405 0.368056 +vt 0.892857 0.326389 +vt 0.928571 0.291667 vt 0.949405 0.333333 vt 0.964286 0.368056 -vt 0.875000 0.333333 +vt 0.875000 0.347222 vt 0.863095 0.368056 vt 0.863095 0.312500 vt 0.880952 0.305556 -vt 0.925595 0.027778 +vt 0.925595 0.034722 vt 0.916667 0.000000 vt 0.961310 0.055556 vt 0.976190 0.041667 @@ -3453,7 +3454,7 @@ vt 0.958333 0.312500 vt 0.949405 0.333333 vt 0.964286 0.368056 vt 0.958333 0.312500 -vt 0.875000 0.333333 +vt 0.875000 0.347222 vt 0.863095 0.368056 vt 0.875000 0.368056 vt 0.880952 0.305556 @@ -3617,7 +3618,7 @@ vt 0.077381 0.388889 vt 0.077381 0.555556 vt 0.077381 0.513889 vt 1.000000 0.097222 -vt 0.952381 0.368056 +vt 0.949405 0.368056 vt 0.875000 0.368056 vt 0.568452 0.763889 vt 0.693452 0.500000 @@ -3849,1176 +3850,1176 @@ vn 0.6708 -0.6708 -0.3162 vn -0.9811 -0.0133 -0.1928 vn 0.9732 0.0000 0.2298 s off -f 416/564/229 422/565/229 421/566/229 -f 416/564/229 420/567/229 418/568/229 -f 418/568/229 419/569/229 388/570/229 -f 388/570/229 434/571/229 390/572/229 -f 390/572/229 433/573/229 392/574/229 -f 392/574/229 432/575/229 394/576/229 -f 394/576/229 431/577/229 396/578/229 -f 396/578/229 430/579/229 398/580/229 -f 398/580/229 429/581/229 400/582/229 -f 402/583/229 429/581/229 428/584/229 -f 404/585/229 428/584/229 427/586/229 -f 406/587/229 427/588/229 426/589/229 -f 408/590/229 426/589/229 425/591/229 -f 410/592/229 425/591/229 424/593/229 -f 412/594/229 424/593/229 423/595/229 -f 414/596/229 423/595/229 422/565/229 -f 515/597/230 507/598/230 508/599/230 -f 523/600/230 504/601/230 522/602/230 -f 508/599/230 530/603/230 515/597/230 -f 522/602/230 501/604/230 521/605/230 -f 505/606/230 529/607/230 530/603/230 -f 521/605/230 502/608/230 520/609/230 -f 529/607/230 499/610/230 528/611/230 -f 528/611/230 500/612/230 527/613/230 -f 520/609/230 514/614/230 519/615/230 -f 527/613/230 513/616/230 526/617/230 -f 519/615/230 512/618/230 518/619/230 -f 526/617/230 511/620/230 525/621/230 -f 518/619/230 510/622/230 517/623/230 -f 525/621/230 509/624/230 524/625/230 -f 517/623/230 507/598/230 516/626/230 -f 523/627/230 509/624/230 506/628/230 -f 581/629/230 495/630/230 496/631/230 -f 582/632/230 494/633/230 495/630/230 -f 494/633/230 584/634/230 493/635/230 -f 584/634/230 492/636/230 493/635/230 -f 492/636/230 586/637/230 491/638/230 -f 491/638/230 587/639/230 490/640/230 -f 490/641/230 588/642/230 489/643/230 -f 489/643/230 589/644/230 488/645/230 -f 488/645/230 590/646/230 487/647/230 -f 487/647/230 591/648/230 486/649/230 -f 591/648/230 485/650/230 486/649/230 -f 592/651/230 484/652/230 485/650/230 -f 593/653/230 483/654/230 484/652/230 -f 483/654/230 579/655/230 498/656/230 -f 498/656/230 580/657/230 497/658/230 -f 580/657/230 496/631/230 497/658/230 -f 621/659/231 622/660/231 620/661/231 -f 616/662/229 622/663/229 617/664/229 -f 612/665/230 613/666/230 611/667/230 -f 618/668/232 614/669/232 612/670/232 -f 622/663/233 618/668/233 617/664/233 -f 616/662/234 620/671/234 619/672/234 -f 611/667/235 620/671/235 615/673/235 -f 631/674/230 637/675/230 635/676/230 -f 627/677/229 629/678/229 623/679/229 -f 647/680/230 650/681/230 640/682/230 -f 650/681/230 641/683/230 640/682/230 -f 651/684/230 642/685/230 641/683/230 -f 652/686/230 598/687/230 642/685/230 -f 648/688/229 688/689/229 684/690/229 -f 645/691/229 688/689/229 644/692/229 -f 646/693/229 687/694/229 645/691/229 -f 646/693/229 685/695/229 686/696/229 -f 689/697/236 665/698/236 647/699/236 -f 653/700/237 667/701/237 683/702/237 -f 445/703/230 696/704/230 444/705/230 -f 707/706/230 713/707/230 708/708/230 -f 707/706/230 715/709/230 714/710/230 -f 709/711/230 711/712/230 710/713/230 -f 708/708/230 712/714/230 709/711/230 -f 723/715/229 716/716/229 717/717/229 -f 716/716/229 725/718/229 720/719/229 -f 722/720/229 718/721/229 719/722/229 -f 721/723/229 717/717/229 718/721/229 -f 730/724/238 729/725/238 732/726/238 -f 706/727/231 725/728/231 715/729/231 -f 728/730/229 726/731/229 727/732/229 -f 730/724/230 733/733/230 731/734/230 -f 735/735/230 736/736/230 734/737/230 -f 737/738/231 738/739/231 736/736/231 -f 739/740/239 740/741/239 738/739/239 -f 741/742/231 742/743/231 740/741/231 -f 738/739/235 740/744/235 744/745/235 -f 745/746/232 743/747/232 741/748/232 -f 758/749/230 754/750/230 750/751/230 -f 446/752/230 695/753/230 445/754/230 -f 447/755/230 694/756/230 446/757/230 -f 448/758/230 693/759/230 447/760/230 -f 449/761/230 692/762/230 448/763/230 -f 450/764/230 691/765/230 449/766/230 -f 435/767/230 690/768/230 450/769/230 -f 436/770/230 705/771/230 435/772/230 -f 437/773/230 704/774/230 436/775/230 -f 437/776/230 702/777/230 703/778/230 -f 439/779/230 702/780/230 438/781/230 -f 439/782/230 700/783/230 701/784/230 -f 440/785/230 699/786/230 700/787/230 -f 441/788/230 698/789/230 699/790/230 -f 442/791/230 697/792/230 698/793/230 -f 443/794/230 696/795/230 697/796/230 -f 796/797/240 795/798/240 794/799/240 -f 798/800/231 797/801/231 796/797/231 -f 797/802/232 803/803/232 801/804/232 -f 802/805/235 798/806/235 796/807/235 -f 807/808/232 810/809/232 805/810/232 -f 804/811/235 809/812/235 806/813/235 -f 811/814/235 815/815/235 809/812/235 -f 814/816/232 810/809/232 808/817/232 -f 813/818/235 819/819/235 815/815/235 -f 814/816/232 816/820/232 812/821/232 -f 817/822/235 823/823/235 819/819/235 -f 816/820/232 822/824/232 820/825/232 -f 826/826/231 825/827/231 824/828/231 -f 833/829/232 831/830/232 829/831/232 -f 828/832/235 830/833/235 832/834/235 -f 844/835/230 840/836/230 836/837/230 -f 856/838/229 847/839/229 850/840/229 -f 868/841/229 858/842/229 862/843/229 -f 880/844/230 876/845/230 872/846/230 -f 884/847/237 883/848/237 882/849/237 -f 882/849/230 889/850/230 884/847/230 -f 883/848/241 887/851/241 882/849/241 -f 885/852/229 886/853/229 883/848/229 -f 884/847/242 888/854/242 885/852/242 -f 899/855/230 912/856/230 900/857/230 -f 912/856/230 901/858/230 900/857/230 -f 901/858/230 902/859/230 890/860/230 -f 902/859/230 891/861/230 890/860/230 -f 891/861/230 904/862/230 892/863/230 -f 904/862/230 893/864/230 892/863/230 -f 893/864/230 906/865/230 894/866/230 -f 906/865/230 895/867/230 894/866/230 -f 895/867/230 908/868/230 896/869/230 -f 908/870/230 897/871/230 896/872/230 -f 897/871/230 910/873/230 898/874/230 -f 910/873/230 899/855/230 898/874/230 -f 923/875/229 936/876/229 935/877/229 -f 925/878/229 936/876/229 924/879/229 -f 925/878/229 927/880/229 937/881/229 -f 914/882/229 927/880/229 915/883/229 -f 914/882/229 928/884/229 926/885/229 -f 917/886/229 928/884/229 916/887/229 -f 917/886/229 930/888/229 929/889/229 -f 919/890/229 930/888/229 918/891/229 -f 919/890/229 932/892/229 931/893/229 -f 921/894/229 932/895/229 920/896/229 -f 921/894/229 934/897/229 933/898/229 -f 923/875/229 934/897/229 922/899/229 -f 945/900/243 956/901/243 942/902/243 -f 958/903/229 956/901/229 957/904/229 -f 948/905/230 940/906/230 947/907/230 -f 944/908/235 957/904/235 945/909/235 -f 948/905/235 951/910/235 949/911/235 -f 940/912/244 949/911/244 938/913/244 -f 943/914/232 956/901/232 959/915/232 -f 946/916/229 949/917/229 951/918/229 -f 952/919/232 955/920/232 953/921/232 -f 939/922/245 953/921/245 941/923/245 -f 962/924/235 965/925/235 963/926/235 -f 966/927/229 964/928/229 965/925/229 -f 963/929/243 964/928/243 960/930/243 -f 961/931/232 964/928/232 967/932/232 -f 980/933/229 982/934/229 976/935/229 -f 990/936/232 988/937/232 989/938/232 -f 987/939/231 990/936/231 985/940/231 -f 984/941/237 988/937/237 986/942/237 -f 986/943/230 991/944/230 987/945/230 -f 985/946/229 989/938/229 984/947/229 -f 682/948/229 667/949/229 992/950/229 -f 992/950/229 681/951/229 682/948/229 -f 993/952/229 680/953/229 681/951/229 -f 994/954/229 689/955/229 680/953/229 -f 678/956/229 666/957/229 679/958/229 -f 1005/959/230 1001/960/230 997/961/230 -f 1017/962/229 1008/963/229 1011/964/229 -f 1029/965/229 1019/966/229 1023/967/229 -f 1041/968/230 1037/969/230 1033/970/230 -f 416/564/229 414/596/229 422/565/229 -f 416/564/229 421/566/229 420/567/229 -f 418/568/229 420/567/229 419/569/229 -f 388/570/229 419/569/229 434/571/229 -f 390/572/229 434/571/229 433/573/229 -f 392/574/229 433/573/229 432/575/229 -f 394/576/229 432/575/229 431/577/229 -f 396/578/229 431/577/229 430/579/229 -f 398/580/229 430/579/229 429/581/229 -f 402/583/229 400/582/229 429/581/229 -f 404/585/229 402/583/229 428/584/229 -f 406/587/229 404/971/229 427/588/229 -f 408/590/229 406/587/229 426/589/229 -f 410/592/229 408/590/229 425/591/229 -f 412/594/229 410/592/229 424/593/229 -f 414/596/229 412/594/229 423/595/229 -f 515/597/230 516/626/230 507/598/230 -f 523/600/230 506/972/230 504/601/230 -f 508/599/230 505/606/230 530/603/230 -f 522/602/230 504/601/230 501/604/230 -f 505/606/230 503/973/230 529/607/230 -f 521/605/230 501/604/230 502/608/230 -f 529/607/230 503/973/230 499/610/230 -f 528/611/230 499/610/230 500/612/230 -f 520/609/230 502/608/230 514/614/230 -f 527/613/230 500/612/230 513/616/230 -f 519/615/230 514/614/230 512/618/230 -f 526/617/230 513/616/230 511/620/230 -f 518/619/230 512/618/230 510/622/230 -f 525/621/230 511/620/230 509/624/230 -f 517/623/230 510/622/230 507/598/230 -f 523/627/230 524/625/230 509/624/230 -f 581/629/230 582/632/230 495/630/230 -f 582/632/230 583/974/230 494/633/230 -f 494/633/230 583/974/230 584/634/230 -f 584/634/230 585/975/230 492/636/230 -f 492/636/230 585/975/230 586/637/230 -f 491/638/230 586/637/230 587/639/230 -f 490/641/230 587/976/230 588/642/230 -f 489/643/230 588/642/230 589/644/230 -f 488/645/230 589/644/230 590/646/230 -f 487/647/230 590/646/230 591/648/230 -f 591/648/230 592/651/230 485/650/230 -f 592/651/230 593/653/230 484/652/230 -f 593/653/230 594/977/230 483/654/230 -f 483/654/230 594/977/230 579/655/230 -f 498/656/230 579/655/230 580/657/230 -f 580/657/230 581/629/230 496/631/230 -f 622/660/231 619/978/231 620/661/231 -f 620/661/231 613/979/231 614/669/231 -f 614/669/231 621/659/231 620/661/231 -f 616/662/229 619/672/229 622/663/229 -f 612/665/230 614/980/230 613/666/230 -f 618/668/232 621/659/232 614/669/232 -f 622/663/233 621/659/233 618/668/233 -f 616/662/234 615/673/234 620/671/234 -f 611/667/235 613/666/235 620/671/235 -f 633/981/230 632/982/230 631/674/230 -f 631/674/230 638/983/230 637/675/230 -f 637/675/230 636/984/230 635/676/230 -f 635/676/230 634/985/230 633/981/230 -f 633/981/230 631/674/230 635/676/230 -f 623/679/229 624/986/229 625/987/229 -f 625/987/229 626/988/229 627/677/229 -f 627/677/229 628/989/229 629/678/229 -f 629/678/229 630/990/229 623/679/229 -f 623/679/229 625/987/229 627/677/229 -f 647/680/230 665/991/230 650/681/230 -f 650/681/230 651/684/230 641/683/230 -f 651/684/230 652/686/230 642/685/230 -f 652/686/230 653/992/230 598/687/230 -f 648/688/229 644/692/229 688/689/229 -f 645/691/229 687/694/229 688/689/229 -f 646/693/229 686/696/229 687/694/229 -f 646/693/229 597/993/229 685/695/229 -f 647/699/236 648/994/236 689/697/236 -f 648/994/236 684/995/236 689/697/236 -f 689/697/236 679/996/236 665/698/236 -f 685/997/237 597/998/237 683/702/237 -f 597/998/237 598/999/237 683/702/237 -f 598/999/237 653/700/237 683/702/237 -f 445/703/230 695/1000/230 696/704/230 -f 707/706/230 714/710/230 713/707/230 -f 707/706/230 706/727/230 715/709/230 -f 709/711/230 712/714/230 711/712/230 -f 708/708/230 713/707/230 712/714/230 -f 723/715/229 724/1001/229 716/716/229 -f 716/716/229 724/1001/229 725/718/229 -f 722/720/229 721/723/229 718/721/229 -f 721/723/229 723/715/229 717/717/229 -f 730/724/238 726/731/238 729/725/238 -f 706/727/231 720/719/231 725/728/231 -f 728/730/229 729/1002/229 726/731/229 -f 730/724/230 732/1003/230 733/733/230 -f 735/735/230 737/738/230 736/736/230 -f 737/738/231 739/740/231 738/739/231 -f 739/740/239 741/742/239 740/741/239 -f 741/742/231 743/1004/231 742/743/231 -f 734/1005/235 736/736/235 738/739/235 -f 740/744/235 742/1006/235 744/745/235 -f 734/1005/235 738/739/235 744/745/235 -f 737/738/232 735/1007/232 739/740/232 -f 735/1007/232 745/746/232 739/740/232 -f 739/740/232 745/746/232 741/748/232 -f 750/751/230 749/1008/230 748/1009/230 -f 748/1009/230 763/1010/230 750/751/230 -f 763/1010/230 762/1011/230 750/751/230 -f 762/1011/230 761/1012/230 760/1013/230 -f 760/1013/230 759/1014/230 758/749/230 -f 758/749/230 757/1015/230 756/1016/230 -f 756/1016/230 755/1017/230 754/750/230 -f 754/750/230 753/1018/230 752/1019/230 -f 752/1019/230 751/1020/230 750/751/230 -f 762/1011/230 760/1013/230 758/749/230 -f 758/749/230 756/1016/230 754/750/230 -f 754/750/230 752/1019/230 750/751/230 -f 750/751/230 762/1011/230 758/749/230 -f 446/752/230 694/1021/230 695/753/230 -f 447/755/230 693/1022/230 694/756/230 -f 448/758/230 692/1023/230 693/759/230 -f 449/761/230 691/1024/230 692/762/230 -f 450/764/230 690/1025/230 691/765/230 -f 435/767/230 705/1026/230 690/768/230 -f 436/770/230 704/1027/230 705/771/230 -f 437/773/230 703/1028/230 704/774/230 -f 437/776/230 438/1029/230 702/777/230 -f 439/779/230 701/1030/230 702/780/230 -f 439/782/230 440/1031/230 700/783/230 -f 440/785/230 441/1032/230 699/786/230 -f 441/788/230 442/1033/230 698/789/230 -f 442/791/230 443/1034/230 697/792/230 -f 443/794/230 444/1035/230 696/795/230 -f 796/797/240 797/801/240 795/798/240 -f 798/800/231 799/1036/231 797/801/231 -f 801/804/232 795/798/232 797/802/232 -f 797/802/232 799/1037/232 803/803/232 -f 796/807/235 794/799/235 800/1038/235 -f 800/1038/235 802/805/235 796/807/235 -f 807/808/232 808/817/232 810/809/232 -f 804/811/235 811/814/235 809/812/235 -f 811/814/235 813/818/235 815/815/235 -f 814/816/232 812/821/232 810/809/232 -f 813/818/235 817/822/235 819/819/235 -f 814/816/232 818/1039/232 816/820/232 -f 817/822/235 821/1040/235 823/823/235 -f 816/820/232 818/1039/232 822/824/232 -f 826/826/231 827/1041/231 825/827/231 -f 829/831/232 825/827/232 827/1041/232 -f 827/1041/232 833/829/232 829/831/232 -f 832/834/235 826/826/235 828/832/235 -f 826/826/235 824/828/235 828/832/235 -f 836/837/230 835/1042/230 844/835/230 -f 835/1042/230 834/1043/230 844/835/230 -f 834/1043/230 845/1044/230 844/835/230 -f 844/835/230 843/1045/230 842/1046/230 -f 842/1046/230 841/1047/230 840/836/230 -f 840/836/230 839/1048/230 838/1049/230 -f 838/1049/230 837/1050/230 840/836/230 -f 837/1050/230 836/837/230 840/836/230 -f 844/835/230 842/1046/230 840/836/230 -f 847/839/229 846/1051/229 848/1052/229 -f 848/1052/229 849/1053/229 847/839/229 -f 849/1053/229 850/840/229 847/839/229 -f 850/840/229 851/1054/229 854/1055/229 -f 851/1054/229 852/1056/229 854/1055/229 -f 852/1056/229 853/1057/229 854/1055/229 -f 854/1055/229 855/1058/229 856/838/229 -f 856/838/229 857/1059/229 847/839/229 -f 854/1055/229 856/838/229 850/840/229 -f 858/842/229 859/1060/229 860/1061/229 -f 860/1061/229 861/1062/229 858/842/229 -f 861/1062/229 862/843/229 858/842/229 -f 862/843/229 863/1063/229 866/1064/229 -f 863/1063/229 864/1065/229 866/1064/229 -f 864/1065/229 865/1066/229 866/1064/229 -f 866/1064/229 867/1067/229 868/841/229 -f 868/841/229 869/1068/229 858/842/229 -f 866/1064/229 868/841/229 862/843/229 -f 872/846/230 870/1069/230 880/844/230 -f 870/1069/230 871/1070/230 880/844/230 -f 871/1070/230 881/1071/230 880/844/230 -f 880/844/230 879/1072/230 878/1073/230 -f 878/1073/230 877/1074/230 876/845/230 -f 876/845/230 875/1075/230 874/1076/230 -f 874/1076/230 873/1077/230 876/845/230 -f 873/1077/230 872/846/230 876/845/230 -f 880/844/230 878/1073/230 876/845/230 -f 884/847/237 885/852/237 883/848/237 -f 882/849/230 887/1078/230 889/850/230 -f 883/848/241 886/1079/241 887/851/241 -f 885/852/229 888/1080/229 886/853/229 -f 884/847/242 889/1081/242 888/854/242 -f 899/855/230 911/1082/230 912/856/230 -f 912/856/230 913/1083/230 901/858/230 -f 901/858/230 913/1083/230 902/859/230 -f 902/859/230 903/1084/230 891/861/230 -f 891/861/230 903/1084/230 904/862/230 -f 904/862/230 905/1085/230 893/864/230 -f 893/864/230 905/1085/230 906/865/230 -f 906/865/230 907/1086/230 895/867/230 -f 895/867/230 907/1086/230 908/868/230 -f 908/870/230 909/1087/230 897/871/230 -f 897/871/230 909/1087/230 910/873/230 -f 910/873/230 911/1082/230 899/855/230 -f 923/875/229 924/879/229 936/876/229 -f 925/878/229 937/881/229 936/876/229 -f 925/878/229 915/883/229 927/880/229 -f 914/882/229 926/885/229 927/880/229 -f 914/882/229 916/887/229 928/884/229 -f 917/886/229 929/889/229 928/884/229 -f 917/886/229 918/891/229 930/888/229 -f 919/890/229 931/893/229 930/888/229 -f 919/890/229 920/1088/229 932/892/229 -f 921/894/229 933/898/229 932/895/229 -f 921/894/229 922/899/229 934/897/229 -f 923/875/229 935/877/229 934/897/229 -f 945/900/243 957/904/243 956/901/243 -f 958/903/229 959/915/229 956/901/229 -f 947/907/230 941/1089/230 953/1090/230 -f 953/1090/230 955/1091/230 947/907/230 -f 955/1091/230 950/1092/230 947/907/230 -f 950/1092/230 948/905/230 947/907/230 -f 944/908/235 958/903/235 957/904/235 -f 948/905/235 950/1092/235 951/910/235 -f 940/912/244 948/905/244 949/911/244 -f 943/914/232 942/1093/232 956/901/232 -f 951/918/229 954/1094/229 946/916/229 -f 954/1094/229 952/919/229 946/916/229 -f 952/919/229 939/1095/229 946/916/229 -f 946/916/229 938/1096/229 949/917/229 -f 952/919/232 954/1094/232 955/920/232 -f 939/922/245 952/919/245 953/921/245 -f 962/924/235 966/927/235 965/925/235 -f 966/927/229 967/932/229 964/928/229 -f 963/929/243 965/925/243 964/928/243 -f 961/931/232 960/1097/232 964/928/232 -f 976/935/229 977/1098/229 978/1099/229 -f 978/1099/229 979/1100/229 980/933/229 -f 980/933/229 981/1101/229 982/934/229 -f 982/934/229 983/1102/229 976/935/229 -f 976/935/229 978/1099/229 980/933/229 -f 990/936/232 991/944/232 988/937/232 -f 987/939/231 991/944/231 990/936/231 -f 984/941/237 989/938/237 988/937/237 -f 986/943/230 988/937/230 991/944/230 -f 985/946/229 990/936/229 989/938/229 -f 682/948/229 683/1103/229 667/949/229 -f 992/950/229 993/952/229 681/951/229 -f 993/952/229 994/954/229 680/953/229 -f 994/954/229 679/1104/229 689/955/229 -f 679/958/229 994/1105/229 993/1106/229 -f 993/1106/229 992/1107/229 679/958/229 -f 992/1107/229 667/1108/229 679/958/229 -f 667/1108/229 668/1109/229 679/958/229 -f 668/1109/229 669/1110/229 679/958/229 -f 669/1110/229 670/1111/229 679/958/229 -f 670/1111/229 671/1112/229 679/958/229 -f 671/1112/229 672/1113/229 679/958/229 -f 672/1113/229 673/1114/229 679/958/229 -f 673/1114/229 674/1115/229 679/958/229 -f 674/1115/229 675/1116/229 679/958/229 -f 675/1116/229 676/1117/229 679/958/229 -f 676/1117/229 677/1118/229 679/958/229 -f 677/1118/229 678/956/229 679/958/229 -f 997/961/230 996/1119/230 1005/959/230 -f 996/1119/230 995/1120/230 1005/959/230 -f 995/1120/230 1006/1121/230 1005/959/230 -f 1005/959/230 1004/1122/230 1003/1123/230 -f 1003/1123/230 1002/1124/230 1001/960/230 -f 1001/960/230 1000/1125/230 999/1126/230 -f 999/1126/230 998/1127/230 1001/960/230 -f 998/1127/230 997/961/230 1001/960/230 -f 1005/959/230 1003/1123/230 1001/960/230 -f 1008/963/229 1007/1128/229 1009/1129/229 -f 1009/1129/229 1010/1130/229 1008/963/229 -f 1010/1130/229 1011/964/229 1008/963/229 -f 1011/964/229 1012/1131/229 1015/1132/229 -f 1012/1131/229 1013/1133/229 1015/1132/229 -f 1013/1133/229 1014/1134/229 1015/1132/229 -f 1015/1132/229 1016/1135/229 1017/962/229 -f 1017/962/229 1018/1136/229 1008/963/229 -f 1015/1132/229 1017/962/229 1011/964/229 -f 1019/966/229 1020/1137/229 1021/1138/229 -f 1021/1138/229 1022/1139/229 1019/966/229 -f 1022/1139/229 1023/967/229 1019/966/229 -f 1023/967/229 1024/1140/229 1027/1141/229 -f 1024/1140/229 1025/1142/229 1027/1141/229 -f 1025/1142/229 1026/1143/229 1027/1141/229 -f 1027/1141/229 1028/1144/229 1029/965/229 -f 1029/965/229 1030/1145/229 1019/966/229 -f 1027/1141/229 1029/965/229 1023/967/229 -f 1033/970/230 1031/1146/230 1041/968/230 -f 1031/1146/230 1032/1147/230 1041/968/230 -f 1032/1147/230 1042/1148/230 1041/968/230 -f 1041/968/230 1040/1149/230 1039/1150/230 -f 1039/1150/230 1038/1151/230 1037/969/230 -f 1037/969/230 1036/1152/230 1035/1153/230 -f 1035/1153/230 1034/1154/230 1037/969/230 -f 1034/1154/230 1033/970/230 1037/969/230 -f 1041/968/230 1039/1150/230 1037/969/230 +f 416/565/229 422/566/229 421/567/229 +f 416/565/229 420/568/229 418/569/229 +f 418/569/229 419/570/229 388/571/229 +f 388/571/229 434/572/229 390/573/229 +f 390/573/229 433/574/229 392/575/229 +f 392/575/229 432/576/229 394/577/229 +f 394/577/229 431/578/229 396/579/229 +f 396/579/229 430/580/229 398/581/229 +f 398/581/229 429/582/229 400/583/229 +f 402/584/229 429/582/229 428/585/229 +f 404/586/229 428/585/229 427/587/229 +f 406/588/229 427/589/229 426/590/229 +f 408/591/229 426/590/229 425/592/229 +f 410/593/229 425/592/229 424/594/229 +f 412/595/229 424/594/229 423/596/229 +f 414/597/229 423/596/229 422/566/229 +f 515/598/230 507/599/230 508/600/230 +f 523/601/230 504/602/230 522/603/230 +f 508/600/230 530/604/230 515/598/230 +f 522/603/230 501/605/230 521/606/230 +f 505/607/230 529/608/230 530/604/230 +f 521/606/230 502/609/230 520/610/230 +f 529/608/230 499/611/230 528/612/230 +f 528/612/230 500/613/230 527/614/230 +f 520/610/230 514/615/230 519/616/230 +f 527/614/230 513/617/230 526/618/230 +f 519/616/230 512/619/230 518/620/230 +f 526/618/230 511/621/230 525/622/230 +f 518/620/230 510/623/230 517/624/230 +f 525/622/230 509/625/230 524/626/230 +f 517/624/230 507/599/230 516/627/230 +f 523/628/230 509/625/230 506/629/230 +f 581/630/230 495/631/230 496/632/230 +f 582/633/230 494/634/230 495/631/230 +f 494/634/230 584/635/230 493/636/230 +f 584/635/230 492/637/230 493/636/230 +f 492/637/230 586/638/230 491/639/230 +f 491/639/230 587/640/230 490/641/230 +f 490/642/230 588/643/230 489/644/230 +f 489/644/230 589/645/230 488/646/230 +f 488/646/230 590/647/230 487/648/230 +f 487/648/230 591/649/230 486/650/230 +f 591/649/230 485/651/230 486/650/230 +f 592/652/230 484/653/230 485/651/230 +f 593/654/230 483/655/230 484/653/230 +f 483/655/230 579/656/230 498/657/230 +f 498/657/230 580/658/230 497/659/230 +f 580/658/230 496/632/230 497/659/230 +f 621/660/231 622/661/231 620/662/231 +f 616/663/229 622/664/229 617/665/229 +f 612/666/230 613/667/230 611/668/230 +f 618/669/232 614/670/232 612/671/232 +f 622/664/233 618/669/233 617/665/233 +f 616/663/234 620/672/234 619/673/234 +f 611/668/235 620/672/235 615/674/235 +f 631/675/230 637/676/230 635/677/230 +f 627/678/229 629/679/229 623/680/229 +f 647/681/230 650/682/230 640/683/230 +f 650/682/230 641/684/230 640/683/230 +f 651/685/230 642/686/230 641/684/230 +f 652/687/230 598/688/230 642/686/230 +f 648/689/229 688/690/229 684/691/229 +f 645/692/229 688/690/229 644/693/229 +f 646/694/229 687/695/229 645/692/229 +f 646/694/229 685/696/229 686/697/229 +f 689/698/236 665/699/236 647/700/236 +f 653/701/237 667/702/237 683/703/237 +f 445/704/230 696/705/230 444/706/230 +f 707/707/230 713/708/230 708/709/230 +f 707/707/230 715/710/230 714/711/230 +f 709/712/230 711/713/230 710/714/230 +f 708/709/230 712/715/230 709/712/230 +f 723/716/229 716/717/229 717/718/229 +f 716/717/229 725/719/229 720/720/229 +f 722/721/229 718/722/229 719/723/229 +f 721/724/229 717/718/229 718/722/229 +f 730/725/238 729/726/238 732/727/238 +f 706/728/231 725/729/231 715/730/231 +f 728/731/229 726/732/229 727/733/229 +f 730/725/230 733/734/230 731/735/230 +f 735/736/230 736/737/230 734/738/230 +f 737/739/231 738/740/231 736/737/231 +f 739/741/239 740/742/239 738/740/239 +f 741/743/231 742/744/231 740/742/231 +f 738/740/235 740/745/235 744/746/235 +f 745/747/232 743/748/232 741/749/232 +f 758/750/230 754/751/230 750/752/230 +f 446/753/230 695/754/230 445/755/230 +f 447/756/230 694/757/230 446/758/230 +f 448/759/230 693/760/230 447/761/230 +f 449/762/230 692/763/230 448/764/230 +f 450/765/230 691/766/230 449/767/230 +f 435/768/230 690/769/230 450/770/230 +f 436/771/230 705/772/230 435/773/230 +f 437/774/230 704/775/230 436/776/230 +f 437/777/230 702/778/230 703/779/230 +f 439/780/230 702/781/230 438/782/230 +f 439/783/230 700/784/230 701/785/230 +f 440/786/230 699/787/230 700/788/230 +f 441/789/230 698/790/230 699/791/230 +f 442/792/230 697/793/230 698/794/230 +f 443/795/230 696/796/230 697/797/230 +f 796/798/240 795/799/240 794/800/240 +f 798/801/231 797/802/231 796/798/231 +f 797/803/232 803/804/232 801/805/232 +f 802/806/235 798/807/235 796/808/235 +f 807/809/232 810/810/232 805/811/232 +f 804/812/235 809/813/235 806/814/235 +f 811/815/235 815/816/235 809/813/235 +f 814/817/232 810/810/232 808/818/232 +f 813/819/235 819/820/235 815/816/235 +f 814/817/232 816/821/232 812/822/232 +f 817/823/235 823/824/235 819/820/235 +f 816/821/232 822/825/232 820/826/232 +f 826/827/231 825/828/231 824/829/231 +f 833/830/232 831/831/232 829/832/232 +f 828/833/235 830/834/235 832/835/235 +f 844/836/230 840/837/230 836/838/230 +f 856/839/229 847/840/229 850/841/229 +f 868/842/229 858/843/229 862/844/229 +f 880/845/230 876/846/230 872/847/230 +f 884/848/237 883/849/237 882/850/237 +f 882/850/230 889/851/230 884/848/230 +f 883/849/241 887/852/241 882/850/241 +f 885/853/229 886/854/229 883/849/229 +f 884/848/242 888/855/242 885/853/242 +f 899/856/230 912/857/230 900/858/230 +f 912/857/230 901/859/230 900/858/230 +f 901/859/230 902/860/230 890/861/230 +f 902/860/230 891/862/230 890/861/230 +f 891/862/230 904/863/230 892/864/230 +f 904/863/230 893/865/230 892/864/230 +f 893/865/230 906/866/230 894/867/230 +f 906/866/230 895/868/230 894/867/230 +f 895/868/230 908/869/230 896/870/230 +f 908/871/230 897/872/230 896/873/230 +f 897/872/230 910/874/230 898/875/230 +f 910/874/230 899/856/230 898/875/230 +f 923/876/229 936/877/229 935/878/229 +f 925/879/229 936/877/229 924/880/229 +f 925/879/229 927/881/229 937/882/229 +f 914/883/229 927/881/229 915/884/229 +f 914/883/229 928/885/229 926/886/229 +f 917/887/229 928/885/229 916/888/229 +f 917/887/229 930/889/229 929/890/229 +f 919/891/229 930/889/229 918/892/229 +f 919/891/229 932/893/229 931/894/229 +f 921/895/229 932/896/229 920/897/229 +f 921/895/229 934/898/229 933/899/229 +f 923/876/229 934/898/229 922/900/229 +f 945/901/243 956/902/243 942/903/243 +f 958/904/229 956/902/229 957/905/229 +f 948/906/230 940/907/230 947/908/230 +f 944/909/235 957/905/235 945/910/235 +f 948/906/235 951/911/235 949/912/235 +f 940/913/244 949/912/244 938/914/244 +f 943/915/232 956/902/232 959/916/232 +f 946/917/229 949/918/229 951/919/229 +f 952/920/232 955/921/232 953/922/232 +f 939/923/245 953/922/245 941/924/245 +f 962/925/235 965/926/235 963/927/235 +f 966/928/229 964/929/229 965/926/229 +f 963/930/243 964/929/243 960/931/243 +f 961/932/232 964/929/232 967/933/232 +f 980/934/229 982/935/229 976/936/229 +f 990/937/232 988/938/232 989/939/232 +f 987/940/231 990/937/231 985/941/231 +f 984/942/237 988/938/237 986/943/237 +f 986/944/230 991/945/230 987/946/230 +f 985/947/229 989/939/229 984/948/229 +f 682/949/229 667/950/229 992/951/229 +f 992/951/229 681/952/229 682/949/229 +f 993/953/229 680/954/229 681/952/229 +f 994/955/229 689/956/229 680/954/229 +f 678/957/229 666/958/229 679/959/229 +f 1005/960/230 1001/961/230 997/962/230 +f 1017/963/229 1008/964/229 1011/965/229 +f 1029/966/229 1019/967/229 1023/968/229 +f 1041/969/230 1037/970/230 1033/971/230 +f 416/565/229 414/597/229 422/566/229 +f 416/565/229 421/567/229 420/568/229 +f 418/569/229 420/568/229 419/570/229 +f 388/571/229 419/570/229 434/572/229 +f 390/573/229 434/572/229 433/574/229 +f 392/575/229 433/574/229 432/576/229 +f 394/577/229 432/576/229 431/578/229 +f 396/579/229 431/578/229 430/580/229 +f 398/581/229 430/580/229 429/582/229 +f 402/584/229 400/583/229 429/582/229 +f 404/586/229 402/584/229 428/585/229 +f 406/588/229 404/972/229 427/589/229 +f 408/591/229 406/588/229 426/590/229 +f 410/593/229 408/591/229 425/592/229 +f 412/595/229 410/593/229 424/594/229 +f 414/597/229 412/595/229 423/596/229 +f 515/598/230 516/627/230 507/599/230 +f 523/601/230 506/973/230 504/602/230 +f 508/600/230 505/607/230 530/604/230 +f 522/603/230 504/602/230 501/605/230 +f 505/607/230 503/974/230 529/608/230 +f 521/606/230 501/605/230 502/609/230 +f 529/608/230 503/974/230 499/611/230 +f 528/612/230 499/611/230 500/613/230 +f 520/610/230 502/609/230 514/615/230 +f 527/614/230 500/613/230 513/617/230 +f 519/616/230 514/615/230 512/619/230 +f 526/618/230 513/617/230 511/621/230 +f 518/620/230 512/619/230 510/623/230 +f 525/622/230 511/621/230 509/625/230 +f 517/624/230 510/623/230 507/599/230 +f 523/628/230 524/626/230 509/625/230 +f 581/630/230 582/633/230 495/631/230 +f 582/633/230 583/975/230 494/634/230 +f 494/634/230 583/975/230 584/635/230 +f 584/635/230 585/976/230 492/637/230 +f 492/637/230 585/976/230 586/638/230 +f 491/639/230 586/638/230 587/640/230 +f 490/642/230 587/977/230 588/643/230 +f 489/644/230 588/643/230 589/645/230 +f 488/646/230 589/645/230 590/647/230 +f 487/648/230 590/647/230 591/649/230 +f 591/649/230 592/652/230 485/651/230 +f 592/652/230 593/654/230 484/653/230 +f 593/654/230 594/978/230 483/655/230 +f 483/655/230 594/978/230 579/656/230 +f 498/657/230 579/656/230 580/658/230 +f 580/658/230 581/630/230 496/632/230 +f 622/661/231 619/979/231 620/662/231 +f 620/662/231 613/980/231 614/670/231 +f 614/670/231 621/660/231 620/662/231 +f 616/663/229 619/673/229 622/664/229 +f 612/666/230 614/981/230 613/667/230 +f 618/669/232 621/660/232 614/670/232 +f 622/664/233 621/660/233 618/669/233 +f 616/663/234 615/674/234 620/672/234 +f 611/668/235 613/667/235 620/672/235 +f 633/982/230 632/983/230 631/675/230 +f 631/675/230 638/984/230 637/676/230 +f 637/676/230 636/985/230 635/677/230 +f 635/677/230 634/986/230 633/982/230 +f 633/982/230 631/675/230 635/677/230 +f 623/680/229 624/987/229 625/988/229 +f 625/988/229 626/989/229 627/678/229 +f 627/678/229 628/990/229 629/679/229 +f 629/679/229 630/991/229 623/680/229 +f 623/680/229 625/988/229 627/678/229 +f 647/681/230 665/992/230 650/682/230 +f 650/682/230 651/685/230 641/684/230 +f 651/685/230 652/687/230 642/686/230 +f 652/687/230 653/993/230 598/688/230 +f 648/689/229 644/693/229 688/690/229 +f 645/692/229 687/695/229 688/690/229 +f 646/694/229 686/697/229 687/695/229 +f 646/694/229 597/994/229 685/696/229 +f 647/700/236 648/995/236 689/698/236 +f 648/995/236 684/996/236 689/698/236 +f 689/698/236 679/997/236 665/699/236 +f 685/998/237 597/999/237 683/703/237 +f 597/999/237 598/1000/237 683/703/237 +f 598/1000/237 653/701/237 683/703/237 +f 445/704/230 695/1001/230 696/705/230 +f 707/707/230 714/711/230 713/708/230 +f 707/707/230 706/728/230 715/710/230 +f 709/712/230 712/715/230 711/713/230 +f 708/709/230 713/708/230 712/715/230 +f 723/716/229 724/1002/229 716/717/229 +f 716/717/229 724/1002/229 725/719/229 +f 722/721/229 721/724/229 718/722/229 +f 721/724/229 723/716/229 717/718/229 +f 730/725/238 726/732/238 729/726/238 +f 706/728/231 720/720/231 725/729/231 +f 728/731/229 729/1003/229 726/732/229 +f 730/725/230 732/1004/230 733/734/230 +f 735/736/230 737/739/230 736/737/230 +f 737/739/231 739/741/231 738/740/231 +f 739/741/239 741/743/239 740/742/239 +f 741/743/231 743/1005/231 742/744/231 +f 734/1006/235 736/737/235 738/740/235 +f 740/745/235 742/1007/235 744/746/235 +f 734/1006/235 738/740/235 744/746/235 +f 737/739/232 735/1008/232 739/741/232 +f 735/1008/232 745/747/232 739/741/232 +f 739/741/232 745/747/232 741/749/232 +f 750/752/230 749/1009/230 748/1010/230 +f 748/1010/230 763/1011/230 750/752/230 +f 763/1011/230 762/1012/230 750/752/230 +f 762/1012/230 761/1013/230 760/1014/230 +f 760/1014/230 759/1015/230 758/750/230 +f 758/750/230 757/1016/230 756/1017/230 +f 756/1017/230 755/1018/230 754/751/230 +f 754/751/230 753/1019/230 752/1020/230 +f 752/1020/230 751/1021/230 750/752/230 +f 762/1012/230 760/1014/230 758/750/230 +f 758/750/230 756/1017/230 754/751/230 +f 754/751/230 752/1020/230 750/752/230 +f 750/752/230 762/1012/230 758/750/230 +f 446/753/230 694/1022/230 695/754/230 +f 447/756/230 693/1023/230 694/757/230 +f 448/759/230 692/1024/230 693/760/230 +f 449/762/230 691/1025/230 692/763/230 +f 450/765/230 690/1026/230 691/766/230 +f 435/768/230 705/1027/230 690/769/230 +f 436/771/230 704/1028/230 705/772/230 +f 437/774/230 703/1029/230 704/775/230 +f 437/777/230 438/1030/230 702/778/230 +f 439/780/230 701/1031/230 702/781/230 +f 439/783/230 440/1032/230 700/784/230 +f 440/786/230 441/1033/230 699/787/230 +f 441/789/230 442/1034/230 698/790/230 +f 442/792/230 443/1035/230 697/793/230 +f 443/795/230 444/1036/230 696/796/230 +f 796/798/240 797/802/240 795/799/240 +f 798/801/231 799/1037/231 797/802/231 +f 801/805/232 795/799/232 797/803/232 +f 797/803/232 799/1038/232 803/804/232 +f 796/808/235 794/800/235 800/1039/235 +f 800/1039/235 802/806/235 796/808/235 +f 807/809/232 808/818/232 810/810/232 +f 804/812/235 811/815/235 809/813/235 +f 811/815/235 813/819/235 815/816/235 +f 814/817/232 812/822/232 810/810/232 +f 813/819/235 817/823/235 819/820/235 +f 814/817/232 818/1040/232 816/821/232 +f 817/823/235 821/1041/235 823/824/235 +f 816/821/232 818/1040/232 822/825/232 +f 826/827/231 827/1042/231 825/828/231 +f 829/832/232 825/828/232 827/1042/232 +f 827/1042/232 833/830/232 829/832/232 +f 832/835/235 826/827/235 828/833/235 +f 826/827/235 824/829/235 828/833/235 +f 836/838/230 835/1043/230 844/836/230 +f 835/1043/230 834/1044/230 844/836/230 +f 834/1044/230 845/1045/230 844/836/230 +f 844/836/230 843/1046/230 842/1047/230 +f 842/1047/230 841/1048/230 840/837/230 +f 840/837/230 839/1049/230 838/1050/230 +f 838/1050/230 837/1051/230 840/837/230 +f 837/1051/230 836/838/230 840/837/230 +f 844/836/230 842/1047/230 840/837/230 +f 847/840/229 846/1052/229 848/1053/229 +f 848/1053/229 849/1054/229 847/840/229 +f 849/1054/229 850/841/229 847/840/229 +f 850/841/229 851/1055/229 854/1056/229 +f 851/1055/229 852/1057/229 854/1056/229 +f 852/1057/229 853/1058/229 854/1056/229 +f 854/1056/229 855/1059/229 856/839/229 +f 856/839/229 857/1060/229 847/840/229 +f 854/1056/229 856/839/229 850/841/229 +f 858/843/229 859/1061/229 860/1062/229 +f 860/1062/229 861/1063/229 858/843/229 +f 861/1063/229 862/844/229 858/843/229 +f 862/844/229 863/1064/229 866/1065/229 +f 863/1064/229 864/1066/229 866/1065/229 +f 864/1066/229 865/1067/229 866/1065/229 +f 866/1065/229 867/1068/229 868/842/229 +f 868/842/229 869/1069/229 858/843/229 +f 866/1065/229 868/842/229 862/844/229 +f 872/847/230 870/1070/230 880/845/230 +f 870/1070/230 871/1071/230 880/845/230 +f 871/1071/230 881/1072/230 880/845/230 +f 880/845/230 879/1073/230 878/1074/230 +f 878/1074/230 877/1075/230 876/846/230 +f 876/846/230 875/1076/230 874/1077/230 +f 874/1077/230 873/1078/230 876/846/230 +f 873/1078/230 872/847/230 876/846/230 +f 880/845/230 878/1074/230 876/846/230 +f 884/848/237 885/853/237 883/849/237 +f 882/850/230 887/1079/230 889/851/230 +f 883/849/241 886/1080/241 887/852/241 +f 885/853/229 888/1081/229 886/854/229 +f 884/848/242 889/1082/242 888/855/242 +f 899/856/230 911/1083/230 912/857/230 +f 912/857/230 913/1084/230 901/859/230 +f 901/859/230 913/1084/230 902/860/230 +f 902/860/230 903/1085/230 891/862/230 +f 891/862/230 903/1085/230 904/863/230 +f 904/863/230 905/1086/230 893/865/230 +f 893/865/230 905/1086/230 906/866/230 +f 906/866/230 907/1087/230 895/868/230 +f 895/868/230 907/1087/230 908/869/230 +f 908/871/230 909/1088/230 897/872/230 +f 897/872/230 909/1088/230 910/874/230 +f 910/874/230 911/1083/230 899/856/230 +f 923/876/229 924/880/229 936/877/229 +f 925/879/229 937/882/229 936/877/229 +f 925/879/229 915/884/229 927/881/229 +f 914/883/229 926/886/229 927/881/229 +f 914/883/229 916/888/229 928/885/229 +f 917/887/229 929/890/229 928/885/229 +f 917/887/229 918/892/229 930/889/229 +f 919/891/229 931/894/229 930/889/229 +f 919/891/229 920/1089/229 932/893/229 +f 921/895/229 933/899/229 932/896/229 +f 921/895/229 922/900/229 934/898/229 +f 923/876/229 935/878/229 934/898/229 +f 945/901/243 957/905/243 956/902/243 +f 958/904/229 959/916/229 956/902/229 +f 947/908/230 941/1090/230 953/1091/230 +f 953/1091/230 955/1092/230 947/908/230 +f 955/1092/230 950/1093/230 947/908/230 +f 950/1093/230 948/906/230 947/908/230 +f 944/909/235 958/904/235 957/905/235 +f 948/906/235 950/1093/235 951/911/235 +f 940/913/244 948/906/244 949/912/244 +f 943/915/232 942/1094/232 956/902/232 +f 951/919/229 954/1095/229 946/917/229 +f 954/1095/229 952/920/229 946/917/229 +f 952/920/229 939/1096/229 946/917/229 +f 946/917/229 938/1097/229 949/918/229 +f 952/920/232 954/1095/232 955/921/232 +f 939/923/245 952/920/245 953/922/245 +f 962/925/235 966/928/235 965/926/235 +f 966/928/229 967/933/229 964/929/229 +f 963/930/243 965/926/243 964/929/243 +f 961/932/232 960/1098/232 964/929/232 +f 976/936/229 977/1099/229 978/1100/229 +f 978/1100/229 979/1101/229 980/934/229 +f 980/934/229 981/1102/229 982/935/229 +f 982/935/229 983/1103/229 976/936/229 +f 976/936/229 978/1100/229 980/934/229 +f 990/937/232 991/945/232 988/938/232 +f 987/940/231 991/945/231 990/937/231 +f 984/942/237 989/939/237 988/938/237 +f 986/944/230 988/938/230 991/945/230 +f 985/947/229 990/937/229 989/939/229 +f 682/949/229 683/1104/229 667/950/229 +f 992/951/229 993/953/229 681/952/229 +f 993/953/229 994/955/229 680/954/229 +f 994/955/229 679/1105/229 689/956/229 +f 679/959/229 994/1106/229 993/1107/229 +f 993/1107/229 992/1108/229 679/959/229 +f 992/1108/229 667/1109/229 679/959/229 +f 667/1109/229 668/1110/229 679/959/229 +f 668/1110/229 669/1111/229 679/959/229 +f 669/1111/229 670/1112/229 679/959/229 +f 670/1112/229 671/1113/229 679/959/229 +f 671/1113/229 672/1114/229 679/959/229 +f 672/1114/229 673/1115/229 679/959/229 +f 673/1115/229 674/1116/229 679/959/229 +f 674/1116/229 675/1117/229 679/959/229 +f 675/1117/229 676/1118/229 679/959/229 +f 676/1118/229 677/1119/229 679/959/229 +f 677/1119/229 678/957/229 679/959/229 +f 997/962/230 996/1120/230 1005/960/230 +f 996/1120/230 995/1121/230 1005/960/230 +f 995/1121/230 1006/1122/230 1005/960/230 +f 1005/960/230 1004/1123/230 1003/1124/230 +f 1003/1124/230 1002/1125/230 1001/961/230 +f 1001/961/230 1000/1126/230 999/1127/230 +f 999/1127/230 998/1128/230 1001/961/230 +f 998/1128/230 997/962/230 1001/961/230 +f 1005/960/230 1003/1124/230 1001/961/230 +f 1008/964/229 1007/1129/229 1009/1130/229 +f 1009/1130/229 1010/1131/229 1008/964/229 +f 1010/1131/229 1011/965/229 1008/964/229 +f 1011/965/229 1012/1132/229 1015/1133/229 +f 1012/1132/229 1013/1134/229 1015/1133/229 +f 1013/1134/229 1014/1135/229 1015/1133/229 +f 1015/1133/229 1016/1136/229 1017/963/229 +f 1017/963/229 1018/1137/229 1008/964/229 +f 1015/1133/229 1017/963/229 1011/965/229 +f 1019/967/229 1020/1138/229 1021/1139/229 +f 1021/1139/229 1022/1140/229 1019/967/229 +f 1022/1140/229 1023/968/229 1019/967/229 +f 1023/968/229 1024/1141/229 1027/1142/229 +f 1024/1141/229 1025/1143/229 1027/1142/229 +f 1025/1143/229 1026/1144/229 1027/1142/229 +f 1027/1142/229 1028/1145/229 1029/966/229 +f 1029/966/229 1030/1146/229 1019/967/229 +f 1027/1142/229 1029/966/229 1023/968/229 +f 1033/971/230 1031/1147/230 1041/969/230 +f 1031/1147/230 1032/1148/230 1041/969/230 +f 1032/1148/230 1042/1149/230 1041/969/230 +f 1041/969/230 1040/1150/230 1039/1151/230 +f 1039/1151/230 1038/1152/230 1037/970/230 +f 1037/970/230 1036/1153/230 1035/1154/230 +f 1035/1154/230 1034/1155/230 1037/970/230 +f 1034/1155/230 1033/971/230 1037/970/230 +f 1041/969/230 1039/1151/230 1037/970/230 s 1 -f 388/570/237 389/1155/246 387/1156/247 -f 390/572/248 391/1157/249 389/1155/246 -f 392/574/245 393/1158/250 391/1157/249 -f 394/576/251 395/1159/252 393/1158/250 -f 396/578/232 397/1160/253 395/1159/252 -f 398/580/254 399/1161/255 397/1160/253 -f 399/1161/255 402/583/256 401/1162/257 -f 402/583/256 403/1163/258 401/1162/257 -f 404/971/231 405/1164/259 403/1165/258 -f 406/587/260 407/1166/261 405/1164/259 -f 408/590/262 409/1167/263 407/1166/261 -f 410/592/264 411/1168/265 409/1167/263 -f 412/594/235 413/1169/266 411/1168/265 -f 414/596/238 415/1170/267 413/1169/266 -f 416/564/244 417/1171/268 415/1170/267 -f 417/1171/268 388/570/237 387/1156/247 -f 429/581/244 444/1172/269 428/584/269 -f 422/565/254 437/1173/270 421/566/270 -f 430/579/238 445/1174/244 429/581/244 -f 423/595/232 438/1175/254 422/565/254 -f 431/577/235 446/1176/238 430/579/238 -f 424/593/251 439/1177/232 423/595/232 -f 432/575/264 447/1178/235 431/577/235 -f 425/591/245 440/1179/251 424/593/251 -f 433/573/262 448/1180/264 432/575/264 -f 426/589/248 441/1181/245 425/591/245 -f 434/571/260 449/1182/262 433/573/262 -f 427/588/237 442/1183/248 426/589/248 -f 420/567/256 435/1184/231 419/569/231 -f 419/569/231 450/1185/260 434/571/260 -f 428/584/269 443/1186/237 427/586/237 -f 421/566/270 436/1187/256 420/567/256 -f 452/1188/271 467/1189/272 451/1190/273 -f 467/1189/272 417/1191/268 387/1192/247 -f 466/1193/274 467/1194/272 482/1195/275 -f 466/1193/274 481/1196/276 465/1197/277 -f 465/1197/277 480/1198/278 464/1199/279 -f 463/1200/280 480/1201/278 479/1202/281 -f 462/1203/282 479/1204/281 478/1205/283 -f 461/1206/284 478/1207/283 477/1208/285 -f 460/1209/286 477/1210/285 476/1211/287 -f 460/1209/286 475/1212/288 459/1213/289 -f 458/1214/290 475/1215/288 474/1216/291 -f 458/1214/290 473/1217/292 457/1218/293 -f 457/1218/293 472/1219/294 456/1220/295 -f 456/1220/295 471/1221/296 455/1222/297 -f 454/1223/298 471/1224/296 470/1225/299 -f 453/1226/300 470/1227/299 469/1228/301 -f 453/1226/300 468/1229/302 452/1188/271 -f 389/1230/246 467/1194/272 387/1231/247 -f 391/1232/249 482/1233/275 389/1234/246 -f 480/1198/278 391/1235/249 393/1236/250 -f 479/1202/281 393/1237/250 395/1238/252 -f 397/1239/253 479/1204/281 395/1240/252 -f 399/1241/255 478/1207/283 397/1242/253 -f 476/1211/287 399/1243/255 401/1244/257 -f 475/1212/288 401/1245/257 403/1246/258 -f 405/1247/259 475/1215/288 403/1248/258 -f 407/1249/261 474/1250/291 405/1251/259 -f 409/1252/263 473/1253/292 407/1254/261 -f 471/1221/296 409/1255/263 411/1256/265 -f 470/1225/299 411/1257/265 413/1258/266 -f 469/1228/301 413/1259/266 415/1260/267 -f 468/1229/302 415/1261/267 417/1262/268 -f 515/597/237 497/658/269 516/626/269 -f 530/603/248 498/656/237 515/597/237 -f 523/627/231 489/643/256 524/625/256 -f 516/626/269 496/631/244 517/623/244 -f 524/625/256 488/645/270 525/621/270 -f 517/623/244 495/630/238 518/619/238 -f 525/621/270 487/647/254 526/617/254 -f 518/619/238 494/633/235 519/615/235 -f 526/617/254 486/649/232 527/613/232 -f 519/615/235 493/635/264 520/609/264 -f 527/613/232 485/650/251 528/611/251 -f 520/609/264 492/636/262 521/605/262 -f 528/611/251 484/652/245 529/607/245 -f 521/605/262 491/638/260 522/602/260 -f 529/607/245 483/654/248 530/603/248 -f 522/602/260 490/640/231 523/600/231 -f 540/1263/237 505/606/248 508/599/237 -f 539/1264/269 508/599/237 507/598/269 -f 542/1265/244 507/598/269 510/622/244 -f 544/1266/238 510/622/244 512/618/238 -f 546/1267/235 512/618/238 514/614/235 -f 534/1268/264 514/614/235 502/608/264 -f 533/1269/262 502/608/264 501/604/262 -f 536/1270/260 501/604/262 504/601/260 -f 538/1271/231 504/601/260 506/972/231 -f 541/1272/256 506/628/231 509/624/256 -f 543/1273/270 509/624/256 511/620/270 -f 545/1274/254 511/620/270 513/616/254 -f 532/1275/232 513/616/254 500/612/232 -f 531/1276/251 500/612/232 499/610/251 -f 535/1277/245 499/610/251 503/973/245 -f 537/1278/248 503/973/245 505/606/248 -f 578/1279/303 539/1264/304 577/1280/304 -f 563/1281/305 540/1263/303 578/1279/303 -f 564/1282/306 537/1278/305 563/1281/305 -f 564/1282/306 531/1276/307 535/1277/306 -f 565/1283/307 532/1275/233 531/1276/307 -f 566/1284/233 545/1274/308 532/1275/233 -f 567/1285/308 543/1273/309 545/1274/308 -f 568/1286/309 541/1272/310 543/1273/309 -f 570/1287/311 541/1272/310 569/1288/310 -f 570/1289/311 536/1270/312 538/1271/311 -f 571/1290/312 533/1269/313 536/1270/312 -f 572/1291/313 534/1268/314 533/1269/313 -f 574/1292/234 534/1268/314 573/1293/314 -f 574/1292/234 544/1266/315 546/1267/234 -f 575/1294/315 542/1265/316 544/1266/315 -f 576/1295/316 539/1264/304 542/1265/316 -f 558/1296/317 577/1280/318 576/1295/317 -f 555/1297/318 578/1279/319 577/1280/318 -f 556/1298/319 563/1281/320 578/1279/319 -f 553/1299/320 564/1282/321 563/1281/320 -f 564/1282/321 547/1300/322 565/1283/322 -f 565/1283/322 548/1301/323 566/1284/323 -f 566/1284/323 561/1302/324 567/1285/324 -f 567/1285/324 559/1303/325 568/1286/325 -f 559/1303/325 569/1288/326 568/1286/325 -f 557/1304/326 570/1287/327 569/1288/326 -f 570/1289/327 552/1305/328 571/1290/328 -f 571/1290/328 549/1306/329 572/1291/329 -f 572/1291/329 550/1307/330 573/1293/330 -f 550/1307/330 574/1292/331 573/1293/330 -f 574/1292/331 560/1308/332 575/1294/332 -f 575/1294/332 558/1296/317 576/1295/317 -f 452/1188/269 558/1296/244 453/1226/244 -f 451/1190/237 555/1297/269 452/1188/269 -f 466/1193/248 556/1298/237 451/1190/237 -f 465/1197/245 553/1299/248 466/1193/248 -f 464/1199/251 551/1309/245 465/1197/245 -f 463/1200/232 547/1300/251 464/1199/251 -f 462/1203/254 548/1301/232 463/1200/232 -f 461/1206/270 561/1302/254 462/1203/254 -f 460/1209/256 559/1303/270 461/1206/270 -f 459/1213/231 557/1304/256 460/1209/256 -f 458/1214/260 554/1310/231 459/1311/231 -f 457/1218/262 552/1305/260 458/1214/260 -f 456/1220/264 549/1306/262 457/1218/262 -f 455/1222/235 550/1307/264 456/1220/264 -f 454/1223/238 562/1312/235 455/1222/235 -f 453/1226/244 560/1308/238 454/1223/238 -f 584/1313/264 601/1314/333 585/1315/262 -f 592/1316/251 609/1317/334 593/1318/245 -f 585/1315/262 602/1319/335 586/1320/260 -f 593/1318/245 610/1321/336 594/1322/248 -f 586/1320/260 603/1323/337 587/1324/231 -f 594/1322/248 595/1325/338 579/1326/237 -f 587/1327/231 604/1328/339 588/1329/256 -f 588/1329/256 605/1330/340 589/1331/270 -f 589/1331/270 606/1332/341 590/1333/254 -f 590/1333/254 607/1334/342 591/1335/232 -f 648/1336/343 579/1326/237 595/1325/338 -f 591/1335/232 608/1337/344 592/1316/251 -f 623/1338/237 632/1339/244 624/1340/244 -f 630/1341/245 631/1342/237 623/1338/237 -f 628/1343/270 637/1344/232 629/1345/232 -f 626/1346/262 635/1347/231 627/1348/231 -f 624/1340/244 633/1349/235 625/1350/235 -f 629/1345/232 638/1351/245 630/1341/245 -f 627/1352/231 636/1353/270 628/1343/270 -f 625/1350/235 634/1354/262 626/1346/262 -f 647/1355/343 580/1356/269 579/1326/237 -f 597/1357/345 599/1358/346 600/1359/347 -f 642/1360/238 583/1361/235 582/1362/238 -f 641/1363/244 582/1362/238 581/1364/244 -f 640/1365/269 581/1364/244 580/1356/269 -f 639/1366/348 597/1357/345 646/1367/238 -f 643/1368/349 646/1367/238 645/1369/244 -f 596/1370/350 645/1369/244 644/1371/269 -f 596/1370/350 648/1336/343 595/1325/338 -f 658/1372/351 671/1373/237 657/1374/352 -f 659/1375/353 672/1376/269 658/1372/351 -f 660/1377/354 673/1378/244 659/1375/353 -f 661/1379/355 674/1380/238 660/1377/354 -f 654/1381/356 667/701/357 653/700/358 -f 662/1382/359 675/1383/235 661/1379/355 -f 655/1384/360 668/1385/251 654/1381/356 -f 663/1386/361 676/1387/264 662/1382/359 -f 656/1388/362 669/1389/245 655/1384/360 -f 664/1390/363 677/1391/262 663/1386/361 -f 657/1374/352 670/1392/248 656/1388/362 -f 665/698/364 666/1393/231 649/1394/365 -f 649/1394/365 678/1395/260 664/1390/363 -f 687/1396/244 682/948/238 681/951/244 -f 684/1397/343 680/953/269 689/955/343 -f 686/1398/238 683/1103/366 682/948/238 -f 688/1399/269 681/951/244 680/953/269 -f 700/787/367 655/1384/360 654/1381/356 -f 655/1384/360 698/789/368 656/1388/362 -f 656/1388/362 697/792/369 657/1374/352 -f 697/796/369 658/1372/351 657/1374/352 -f 696/704/370 659/1375/353 658/1372/351 -f 659/1375/353 694/1021/371 660/1377/354 -f 694/756/371 661/1379/355 660/1377/354 -f 693/759/372 662/1382/359 661/1379/355 -f 692/762/373 663/1386/361 662/1382/359 -f 690/768/374 649/1394/365 664/1390/363 -f 691/765/375 664/1390/363 663/1386/361 -f 704/1027/376 650/1400/376 665/698/364 -f 704/774/376 651/1401/377 650/1400/376 -f 703/778/377 652/1402/378 651/1401/377 -f 652/1402/378 701/1030/379 653/1403/358 -f 701/784/379 654/1381/356 653/700/358 -f 708/708/245 716/716/251 707/706/251 -f 707/706/251 720/719/357 706/727/357 -f 727/732/380 709/711/248 710/713/380 -f 718/721/248 731/734/380 719/722/380 -f 726/731/381 730/724/381 717/717/245 -f 751/1404/382 599/1358/346 639/1366/348 -f 606/1332/341 760/1405/383 607/1334/342 -f 607/1334/342 761/1406/384 608/1337/344 -f 761/1406/384 609/1317/334 608/1337/344 -f 601/1314/333 755/1407/385 602/1319/335 -f 600/1359/347 754/1408/386 601/1314/333 -f 762/1409/387 610/1321/336 609/1317/334 -f 643/1368/349 751/1404/382 639/1366/348 -f 763/1410/388 595/1325/338 610/1321/336 -f 603/1411/337 757/1412/389 604/1328/339 -f 599/1358/346 753/1413/390 600/1359/347 -f 595/1325/338 749/1414/391 596/1370/350 -f 757/1412/389 605/1330/340 604/1328/339 -f 602/1319/335 756/1415/392 603/1323/337 -f 749/1414/391 643/1368/349 596/1370/350 -f 605/1330/340 759/1416/393 606/1332/341 -f 746/1417/394 786/1418/395 747/1419/396 -f 787/1420/397 767/1421/398 766/1422/399 -f 789/1423/400 780/1424/401 787/1420/397 -f 791/1425/402 782/1426/403 789/1423/400 -f 792/1427/404 783/1428/405 791/1425/402 -f 778/1429/406 793/1430/407 786/1418/395 -f 793/1430/407 784/1431/408 792/1427/404 -f 777/1432/409 772/1433/410 770/1434/411 -f 779/1435/412 771/1436/413 776/1437/414 -f 764/1438/415 746/1439/394 779/1435/412 -f 769/1440/416 767/1441/398 780/1442/401 -f 769/1440/416 782/1443/403 771/1436/413 -f 773/1444/417 782/1443/403 783/1445/405 -f 775/1446/418 783/1445/405 784/1447/408 -f 764/1438/415 785/1448/419 778/1449/406 -f 775/1446/418 785/1448/419 776/1437/414 -f 765/1450/420 747/1451/396 786/1452/395 -f 768/1453/421 766/1454/399 790/1455/422 -f 768/1453/421 789/1456/400 787/1457/397 -f 772/1433/410 789/1456/400 770/1434/411 -f 774/1458/423 791/1459/402 772/1433/410 -f 765/1450/420 793/1460/407 777/1432/409 -f 774/1458/423 793/1460/407 792/1461/404 -f 806/813/229 808/817/424 807/808/229 -f 805/810/230 811/1462/425 804/1463/230 -f 810/809/425 813/1464/426 811/1462/425 -f 809/812/424 814/816/427 808/817/424 -f 812/821/426 817/1465/428 813/1464/426 -f 815/815/427 818/1039/429 814/816/427 -f 816/820/428 821/1466/430 817/1465/428 -f 819/819/429 822/824/431 818/1039/429 -f 829/1467/432 824/828/229 825/827/229 -f 831/1468/433 828/1469/432 829/1467/432 -f 839/1470/434 850/1471/435 838/1472/435 -f 834/1473/237 857/1474/436 845/1475/436 -f 836/1476/437 846/1477/438 835/1478/438 -f 843/1479/232 854/1480/439 842/1481/439 -f 840/1482/231 851/1483/434 839/1470/434 -f 837/1484/235 848/1485/437 836/1476/437 -f 844/1486/440 855/1487/232 843/1479/232 -f 841/1488/441 852/1489/231 840/1490/231 -f 838/1472/435 849/1491/235 837/1484/235 -f 845/1475/436 856/1492/440 844/1486/440 -f 835/1478/438 847/1493/237 834/1473/237 -f 842/1481/439 853/1494/441 841/1488/441 -f 868/1495/440 881/1496/436 869/1497/436 -f 861/1498/235 874/1499/435 862/1500/435 -f 869/1497/436 871/1501/237 858/1502/237 -f 862/1500/435 875/1503/434 863/1504/434 -f 863/1504/434 876/1505/231 864/1506/231 -f 864/1507/231 877/1508/441 865/1509/441 -f 865/1509/441 878/1510/439 866/1511/439 -f 858/1502/237 870/1512/438 859/1513/438 -f 866/1511/439 879/1514/232 867/1515/232 -f 859/1513/438 872/1516/437 860/1517/437 -f 867/1515/232 880/1518/440 868/1495/440 -f 860/1517/437 873/1519/235 861/1498/235 -f 896/869/231 919/890/434 895/867/434 -f 910/1520/437 935/877/235 911/1521/235 -f 903/1522/441 928/884/439 904/1523/439 -f 897/871/441 920/896/231 896/872/231 -f 911/1521/235 936/876/435 912/1524/435 -f 904/1523/439 929/889/232 905/1525/232 -f 898/874/439 921/894/441 897/871/441 -f 912/1524/435 937/881/434 913/1526/434 -f 891/861/438 915/883/237 890/860/237 -f 905/1525/232 930/888/440 906/1527/440 -f 899/855/232 922/899/439 898/874/439 -f 913/1526/434 927/880/231 902/1528/231 -f 892/863/437 914/882/438 891/861/438 -f 906/1527/440 931/893/436 907/1529/436 -f 900/857/440 923/875/232 899/855/232 -f 893/864/235 916/887/437 892/863/437 -f 907/1529/436 932/892/237 908/1530/237 -f 901/858/436 924/879/440 900/857/440 -f 894/866/435 917/886/235 893/864/235 -f 908/1531/237 933/898/438 909/1532/438 -f 890/860/237 925/878/436 901/858/436 -f 895/867/434 918/891/435 894/866/435 -f 909/1532/438 934/897/437 910/1520/437 -f 902/1528/231 926/885/441 903/1522/441 -f 970/1533/235 977/1534/244 969/1535/244 -f 975/1536/245 982/1537/232 974/1538/232 -f 973/1539/270 980/1540/231 972/1541/231 -f 971/1542/262 978/1543/235 970/1533/235 -f 969/1535/244 976/1544/237 968/1545/237 -f 968/1545/237 983/1546/245 975/1536/245 -f 974/1538/232 981/1547/270 973/1539/270 -f 972/1548/231 979/1549/262 971/1542/262 -f 1000/1550/434 1011/1551/435 999/1552/435 -f 995/1553/237 1018/1554/436 1006/1555/436 -f 997/1556/437 1007/1557/438 996/1558/438 -f 1004/1559/232 1015/1560/439 1003/1561/439 -f 1001/1562/231 1012/1563/434 1000/1550/434 -f 998/1564/235 1009/1565/437 997/1556/437 -f 1005/1566/440 1016/1567/232 1004/1559/232 -f 1002/1568/441 1013/1569/231 1001/1570/231 -f 999/1552/435 1010/1571/235 998/1564/235 -f 1006/1555/436 1017/1572/440 1005/1566/440 -f 996/1558/438 1008/1573/237 995/1553/237 -f 1003/1561/439 1014/1574/441 1002/1568/441 -f 1029/1575/440 1042/1576/436 1030/1577/436 -f 1022/1578/235 1035/1579/435 1023/1580/435 -f 1030/1577/436 1032/1581/237 1019/1582/237 -f 1023/1580/435 1036/1583/434 1024/1584/434 -f 1024/1584/434 1037/1585/231 1025/1586/231 -f 1025/1587/231 1038/1588/441 1026/1589/441 -f 1026/1589/441 1039/1590/439 1027/1591/439 -f 1019/1582/237 1031/1592/438 1020/1593/438 -f 1027/1591/439 1040/1594/232 1028/1595/232 -f 1020/1593/438 1033/1596/437 1021/1597/437 -f 1028/1595/232 1041/1598/440 1029/1575/440 -f 1021/1597/437 1034/1599/235 1022/1578/235 -f 388/570/237 390/572/248 389/1155/246 -f 390/572/248 392/574/245 391/1157/249 -f 392/574/245 394/576/251 393/1158/250 -f 394/576/251 396/578/232 395/1159/252 -f 396/578/232 398/580/254 397/1160/253 -f 398/580/254 400/582/270 399/1161/255 -f 399/1161/255 400/582/270 402/583/256 -f 402/583/256 404/585/231 403/1163/258 -f 404/971/231 406/587/260 405/1164/259 -f 406/587/260 408/590/262 407/1166/261 -f 408/590/262 410/592/264 409/1167/263 -f 410/592/264 412/594/235 411/1168/265 -f 412/594/235 414/596/238 413/1169/266 -f 414/596/238 416/564/244 415/1170/267 -f 416/564/244 418/568/269 417/1171/268 -f 417/1171/268 418/568/269 388/570/237 -f 429/581/244 445/1174/244 444/1172/269 -f 422/565/254 438/1175/254 437/1173/270 -f 430/579/238 446/1176/238 445/1174/244 -f 423/595/232 439/1177/232 438/1175/254 -f 431/577/235 447/1178/235 446/1176/238 -f 424/593/251 440/1179/251 439/1177/232 -f 432/575/264 448/1180/264 447/1178/235 -f 425/591/245 441/1181/245 440/1179/251 -f 433/573/262 449/1182/262 448/1180/264 -f 426/589/248 442/1183/248 441/1181/245 -f 434/571/260 450/1185/260 449/1182/262 -f 427/588/237 443/1600/237 442/1183/248 -f 420/567/256 436/1187/256 435/1184/231 -f 419/569/231 435/1184/231 450/1185/260 -f 428/584/269 444/1172/269 443/1186/237 -f 421/566/270 437/1173/270 436/1187/256 -f 452/1188/271 468/1601/302 467/1189/272 -f 467/1189/272 468/1601/302 417/1191/268 -f 466/1193/274 451/1190/273 467/1194/272 -f 466/1193/274 482/1233/275 481/1196/276 -f 465/1197/277 481/1602/276 480/1198/278 -f 463/1200/280 464/1199/279 480/1201/278 -f 462/1203/282 463/1200/280 479/1204/281 -f 461/1206/284 462/1203/282 478/1207/283 -f 460/1209/286 461/1206/284 477/1210/285 -f 460/1209/286 476/1603/287 475/1212/288 -f 458/1214/290 459/1311/289 475/1215/288 -f 458/1214/290 474/1250/291 473/1217/292 -f 457/1218/293 473/1253/292 472/1219/294 -f 456/1220/295 472/1604/294 471/1221/296 -f 454/1223/298 455/1222/297 471/1224/296 -f 453/1226/300 454/1223/298 470/1227/299 -f 453/1226/300 469/1605/301 468/1229/302 -f 389/1230/246 482/1195/275 467/1194/272 -f 391/1232/249 481/1196/276 482/1233/275 -f 480/1198/278 481/1602/276 391/1235/249 -f 479/1202/281 480/1201/278 393/1237/250 -f 397/1239/253 478/1205/283 479/1204/281 -f 399/1241/255 477/1208/285 478/1207/283 -f 476/1211/287 477/1210/285 399/1243/255 -f 475/1212/288 476/1603/287 401/1245/257 -f 405/1247/259 474/1216/291 475/1215/288 -f 407/1249/261 473/1217/292 474/1250/291 -f 409/1252/263 472/1219/294 473/1253/292 -f 471/1221/296 472/1604/294 409/1255/263 -f 470/1225/299 471/1224/296 411/1257/265 -f 469/1228/301 470/1227/299 413/1259/266 -f 468/1229/302 469/1605/301 415/1261/267 -f 515/597/237 498/656/237 497/658/269 -f 530/603/248 483/654/248 498/656/237 -f 523/627/231 490/641/231 489/643/256 -f 516/626/269 497/658/269 496/631/244 -f 524/625/256 489/643/256 488/645/270 -f 517/623/244 496/631/244 495/630/238 -f 525/621/270 488/645/270 487/647/254 -f 518/619/238 495/630/238 494/633/235 -f 526/617/254 487/647/254 486/649/232 -f 519/615/235 494/633/235 493/635/264 -f 527/613/232 486/649/232 485/650/251 -f 520/609/264 493/635/264 492/636/262 -f 528/611/251 485/650/251 484/652/245 -f 521/605/262 492/636/262 491/638/260 -f 529/607/245 484/652/245 483/654/248 -f 522/602/260 491/638/260 490/640/231 -f 540/1263/237 537/1278/248 505/606/248 -f 539/1264/269 540/1263/237 508/599/237 -f 542/1265/244 539/1264/269 507/598/269 -f 544/1266/238 542/1265/244 510/622/244 -f 546/1267/235 544/1266/238 512/618/238 -f 534/1268/264 546/1267/235 514/614/235 -f 533/1269/262 534/1268/264 502/608/264 -f 536/1270/260 533/1269/262 501/604/262 -f 538/1271/231 536/1270/260 504/601/260 -f 541/1272/256 538/1606/231 506/628/231 -f 543/1273/270 541/1272/256 509/624/256 -f 545/1274/254 543/1273/270 511/620/270 -f 532/1275/232 545/1274/254 513/616/254 -f 531/1276/251 532/1275/232 500/612/232 -f 535/1277/245 531/1276/251 499/610/251 -f 537/1278/248 535/1277/245 503/973/245 -f 578/1279/303 540/1263/303 539/1264/304 -f 563/1281/305 537/1278/305 540/1263/303 -f 564/1282/306 535/1277/306 537/1278/305 -f 564/1282/306 565/1283/307 531/1276/307 -f 565/1283/307 566/1284/233 532/1275/233 -f 566/1284/233 567/1285/308 545/1274/308 -f 567/1285/308 568/1286/309 543/1273/309 -f 568/1286/309 569/1288/310 541/1272/310 -f 570/1287/311 538/1606/311 541/1272/310 -f 570/1289/311 571/1290/312 536/1270/312 -f 571/1290/312 572/1291/313 533/1269/313 -f 572/1291/313 573/1293/314 534/1268/314 -f 574/1292/234 546/1267/234 534/1268/314 -f 574/1292/234 575/1294/315 544/1266/315 -f 575/1294/315 576/1295/316 542/1265/316 -f 576/1295/316 577/1280/304 539/1264/304 -f 558/1296/317 555/1297/318 577/1280/318 -f 555/1297/318 556/1298/319 578/1279/319 -f 556/1298/319 553/1299/320 563/1281/320 -f 553/1299/320 551/1309/321 564/1282/321 -f 564/1282/321 551/1309/321 547/1300/322 -f 565/1283/322 547/1300/322 548/1301/323 -f 566/1284/323 548/1301/323 561/1302/324 -f 567/1285/324 561/1302/324 559/1303/325 -f 559/1303/325 557/1304/326 569/1288/326 -f 557/1304/326 554/1607/327 570/1287/327 -f 570/1289/327 554/1310/327 552/1305/328 -f 571/1290/328 552/1305/328 549/1306/329 -f 572/1291/329 549/1306/329 550/1307/330 -f 550/1307/330 562/1312/331 574/1292/331 -f 574/1292/331 562/1312/331 560/1308/332 -f 575/1294/332 560/1308/332 558/1296/317 -f 452/1188/269 555/1297/269 558/1296/244 -f 451/1190/237 556/1298/237 555/1297/269 -f 466/1193/248 553/1299/248 556/1298/237 -f 465/1197/245 551/1309/245 553/1299/248 -f 464/1199/251 547/1300/251 551/1309/245 -f 463/1200/232 548/1301/232 547/1300/251 -f 462/1203/254 561/1302/254 548/1301/232 -f 461/1206/270 559/1303/270 561/1302/254 -f 460/1209/256 557/1304/256 559/1303/270 -f 459/1213/231 554/1607/231 557/1304/256 -f 458/1214/260 552/1305/260 554/1310/231 -f 457/1218/262 549/1306/262 552/1305/260 -f 456/1220/264 550/1307/264 549/1306/262 -f 455/1222/235 562/1312/235 550/1307/264 -f 454/1223/238 560/1308/238 562/1312/235 -f 453/1226/244 558/1296/244 560/1308/238 -f 584/1313/264 600/1359/347 601/1314/333 -f 592/1316/251 608/1337/344 609/1317/334 -f 585/1315/262 601/1314/333 602/1319/335 -f 593/1318/245 609/1317/334 610/1321/336 -f 586/1320/260 602/1319/335 603/1323/337 -f 594/1322/248 610/1321/336 595/1325/338 -f 587/1327/231 603/1411/337 604/1328/339 -f 588/1329/256 604/1328/339 605/1330/340 -f 589/1331/270 605/1330/340 606/1332/341 -f 590/1333/254 606/1332/341 607/1334/342 -f 648/1336/343 647/1355/343 579/1326/237 -f 591/1335/232 607/1334/342 608/1337/344 -f 623/1338/237 631/1342/237 632/1339/244 -f 630/1341/245 638/1351/245 631/1342/237 -f 628/1343/270 636/1353/270 637/1344/232 -f 626/1346/262 634/1354/262 635/1347/231 -f 624/1340/244 632/1339/244 633/1349/235 -f 629/1345/232 637/1344/232 638/1351/245 -f 627/1352/231 635/1608/231 636/1353/270 -f 625/1350/235 633/1349/235 634/1354/262 -f 647/1355/343 640/1365/269 580/1356/269 -f 600/1359/347 584/1313/264 597/1357/345 -f 584/1313/264 583/1361/235 598/1609/345 -f 598/1609/345 597/1357/345 584/1313/264 -f 642/1360/238 598/1609/345 583/1361/235 -f 641/1363/244 642/1360/238 582/1362/238 -f 640/1365/269 641/1363/244 581/1364/244 -f 639/1366/348 599/1358/346 597/1357/345 -f 643/1368/349 639/1366/348 646/1367/238 -f 596/1370/350 643/1368/349 645/1369/244 -f 596/1370/350 644/1371/269 648/1336/343 -f 658/1372/351 672/1376/269 671/1373/237 -f 659/1375/353 673/1378/244 672/1376/269 -f 660/1377/354 674/1380/238 673/1378/244 -f 661/1379/355 675/1383/235 674/1380/238 -f 654/1381/356 668/1385/251 667/701/357 -f 662/1382/359 676/1387/264 675/1383/235 -f 655/1384/360 669/1389/245 668/1385/251 -f 663/1386/361 677/1391/262 676/1387/264 -f 656/1388/362 670/1392/248 669/1389/245 -f 664/1390/363 678/1395/260 677/1391/262 -f 657/1374/352 671/1373/237 670/1392/248 -f 665/698/364 679/996/442 666/1393/231 -f 649/1394/365 666/1393/231 678/1395/260 -f 687/1396/244 686/1398/238 682/948/238 -f 684/1397/343 688/1399/269 680/953/269 -f 686/1398/238 685/1610/366 683/1103/366 -f 688/1399/269 687/1396/244 681/951/244 -f 700/787/367 699/786/443 655/1384/360 -f 655/1384/360 699/790/443 698/789/368 -f 656/1388/362 698/793/368 697/792/369 -f 697/796/369 696/795/370 658/1372/351 -f 696/704/370 695/1000/444 659/1375/353 -f 659/1375/353 695/753/444 694/1021/371 -f 694/756/371 693/1022/372 661/1379/355 -f 693/759/372 692/1023/373 662/1382/359 -f 692/762/373 691/1024/375 663/1386/361 -f 690/768/374 705/1026/445 649/1394/365 -f 691/765/375 690/1025/374 664/1390/363 -f 665/698/364 649/1394/365 705/771/445 -f 705/771/445 704/1027/376 665/698/364 -f 704/774/376 703/1028/377 651/1401/377 -f 703/778/377 702/777/378 652/1402/378 -f 652/1402/378 702/780/378 701/1030/379 -f 701/784/379 700/783/367 654/1381/356 -f 708/708/245 717/717/245 716/716/251 -f 707/706/251 716/716/251 720/719/357 -f 727/732/380 726/731/381 709/711/248 -f 718/721/248 730/724/381 731/734/380 -f 708/708/245 709/711/248 726/731/381 -f 730/724/381 718/721/248 717/717/245 -f 708/708/245 726/731/381 717/717/245 -f 751/1404/382 752/1611/446 599/1358/346 -f 606/1332/341 759/1416/393 760/1405/383 -f 607/1334/342 760/1405/383 761/1406/384 -f 761/1406/384 762/1409/387 609/1317/334 -f 601/1314/333 754/1408/386 755/1407/385 -f 600/1359/347 753/1413/390 754/1408/386 -f 762/1409/387 763/1410/388 610/1321/336 -f 643/1368/349 750/1612/447 751/1404/382 -f 763/1410/388 748/1613/448 595/1325/338 -f 603/1411/337 756/1614/392 757/1412/389 -f 599/1358/346 752/1611/446 753/1413/390 -f 595/1325/338 748/1613/448 749/1414/391 -f 757/1412/389 758/1615/449 605/1330/340 -f 602/1319/335 755/1407/385 756/1415/392 -f 749/1414/391 750/1612/447 643/1368/349 -f 605/1330/340 758/1615/449 759/1416/393 -f 746/1417/394 778/1429/406 786/1418/395 -f 787/1420/397 780/1424/401 767/1421/398 -f 789/1423/400 782/1426/403 780/1424/401 -f 791/1425/402 783/1428/405 782/1426/403 -f 792/1427/404 784/1431/408 783/1428/405 -f 778/1429/406 785/1616/419 793/1430/407 -f 793/1430/407 785/1616/419 784/1431/408 -f 790/1455/422 788/1617/450 770/1434/411 -f 788/1617/450 765/1450/420 777/1432/409 -f 777/1432/409 774/1458/423 772/1433/410 -f 788/1617/450 777/1432/409 770/1434/411 -f 770/1434/411 768/1453/421 790/1455/422 -f 776/1437/414 764/1438/415 779/1435/412 -f 779/1435/412 781/1618/451 771/1436/413 -f 781/1618/451 769/1440/416 771/1436/413 -f 771/1436/413 773/1444/417 776/1437/414 -f 773/1444/417 775/1446/418 776/1437/414 -f 764/1438/415 778/1449/406 746/1439/394 -f 769/1440/416 781/1618/451 767/1441/398 -f 769/1440/416 780/1442/401 782/1443/403 -f 773/1444/417 771/1436/413 782/1443/403 -f 775/1446/418 773/1444/417 783/1445/405 -f 764/1438/415 776/1437/414 785/1448/419 -f 775/1446/418 784/1447/408 785/1448/419 -f 765/1450/420 788/1617/450 747/1451/396 -f 768/1453/421 787/1457/397 766/1454/399 -f 768/1453/421 770/1434/411 789/1456/400 -f 772/1433/410 791/1459/402 789/1456/400 -f 774/1458/423 792/1461/404 791/1459/402 -f 765/1450/420 786/1452/395 793/1460/407 -f 774/1458/423 777/1432/409 793/1460/407 -f 806/813/229 809/812/424 808/817/424 -f 805/810/230 810/809/425 811/1462/425 -f 810/809/425 812/821/426 813/1464/426 -f 809/812/424 815/815/427 814/816/427 -f 812/821/426 816/820/428 817/1465/428 -f 815/815/427 819/819/429 818/1039/429 -f 816/820/428 820/825/430 821/1466/430 -f 819/819/429 823/823/431 822/824/431 -f 829/1467/432 828/1469/432 824/828/229 -f 831/1468/433 830/1619/433 828/1469/432 -f 839/1470/434 851/1483/434 850/1471/435 -f 834/1473/237 847/1493/237 857/1474/436 -f 836/1476/437 848/1485/437 846/1477/438 -f 843/1479/232 855/1487/232 854/1480/439 -f 840/1482/231 852/1620/231 851/1483/434 -f 837/1484/235 849/1491/235 848/1485/437 -f 844/1486/440 856/1492/440 855/1487/232 -f 841/1488/441 853/1494/441 852/1489/231 -f 838/1472/435 850/1471/435 849/1491/235 -f 845/1475/436 857/1474/436 856/1492/440 -f 835/1478/438 846/1477/438 847/1493/237 -f 842/1481/439 854/1480/439 853/1494/441 -f 868/1495/440 880/1518/440 881/1496/436 -f 861/1498/235 873/1519/235 874/1499/435 -f 869/1497/436 881/1496/436 871/1501/237 -f 862/1500/435 874/1499/435 875/1503/434 -f 863/1504/434 875/1503/434 876/1505/231 -f 864/1507/231 876/1621/231 877/1508/441 -f 865/1509/441 877/1508/441 878/1510/439 -f 858/1502/237 871/1501/237 870/1512/438 -f 866/1511/439 878/1510/439 879/1514/232 -f 859/1513/438 870/1512/438 872/1516/437 -f 867/1515/232 879/1514/232 880/1518/440 -f 860/1517/437 872/1516/437 873/1519/235 -f 896/869/231 920/1088/231 919/890/434 -f 910/1520/437 934/897/437 935/877/235 -f 903/1522/441 926/885/441 928/884/439 -f 897/871/441 921/894/441 920/896/231 -f 911/1521/235 935/877/235 936/876/435 -f 904/1523/439 928/884/439 929/889/232 -f 898/874/439 922/899/439 921/894/441 -f 912/1524/435 936/876/435 937/881/434 -f 891/861/438 914/882/438 915/883/237 -f 905/1525/232 929/889/232 930/888/440 -f 899/855/232 923/875/232 922/899/439 -f 913/1526/434 937/881/434 927/880/231 -f 892/863/437 916/887/437 914/882/438 -f 906/1527/440 930/888/440 931/893/436 -f 900/857/440 924/879/440 923/875/232 -f 893/864/235 917/886/235 916/887/437 -f 907/1529/436 931/893/436 932/892/237 -f 901/858/436 925/878/436 924/879/440 -f 894/866/435 918/891/435 917/886/235 -f 908/1531/237 932/895/237 933/898/438 -f 890/860/237 915/883/237 925/878/436 -f 895/867/434 919/890/434 918/891/435 -f 909/1532/438 933/898/438 934/897/437 -f 902/1528/231 927/880/231 926/885/441 -f 970/1533/235 978/1543/235 977/1534/244 -f 975/1536/245 983/1546/245 982/1537/232 -f 973/1539/270 981/1547/270 980/1540/231 -f 971/1542/262 979/1549/262 978/1543/235 -f 969/1535/244 977/1534/244 976/1544/237 -f 968/1545/237 976/1544/237 983/1546/245 -f 974/1538/232 982/1537/232 981/1547/270 -f 972/1548/231 980/1622/231 979/1549/262 -f 1000/1550/434 1012/1563/434 1011/1551/435 -f 995/1553/237 1008/1573/237 1018/1554/436 -f 997/1556/437 1009/1565/437 1007/1557/438 -f 1004/1559/232 1016/1567/232 1015/1560/439 -f 1001/1562/231 1013/1623/231 1012/1563/434 -f 998/1564/235 1010/1571/235 1009/1565/437 -f 1005/1566/440 1017/1572/440 1016/1567/232 -f 1002/1568/441 1014/1574/441 1013/1569/231 -f 999/1552/435 1011/1551/435 1010/1571/235 -f 1006/1555/436 1018/1554/436 1017/1572/440 -f 996/1558/438 1007/1557/438 1008/1573/237 -f 1003/1561/439 1015/1560/439 1014/1574/441 -f 1029/1575/440 1041/1598/440 1042/1576/436 -f 1022/1578/235 1034/1599/235 1035/1579/435 -f 1030/1577/436 1042/1576/436 1032/1581/237 -f 1023/1580/435 1035/1579/435 1036/1583/434 -f 1024/1584/434 1036/1583/434 1037/1585/231 -f 1025/1587/231 1037/1624/231 1038/1588/441 -f 1026/1589/441 1038/1588/441 1039/1590/439 -f 1019/1582/237 1032/1581/237 1031/1592/438 -f 1027/1591/439 1039/1590/439 1040/1594/232 -f 1020/1593/438 1031/1592/438 1033/1596/437 -f 1028/1595/232 1040/1594/232 1041/1598/440 -f 1021/1597/437 1033/1596/437 1034/1599/235 +f 388/571/237 389/1156/246 387/1157/247 +f 390/573/248 391/1158/249 389/1156/246 +f 392/575/245 393/1159/250 391/1158/249 +f 394/577/251 395/1160/252 393/1159/250 +f 396/579/232 397/1161/253 395/1160/252 +f 398/581/254 399/1162/255 397/1161/253 +f 399/1162/255 402/584/256 401/1163/257 +f 402/584/256 403/1164/258 401/1163/257 +f 404/972/231 405/1165/259 403/1166/258 +f 406/588/260 407/1167/261 405/1165/259 +f 408/591/262 409/1168/263 407/1167/261 +f 410/593/264 411/1169/265 409/1168/263 +f 412/595/235 413/1170/266 411/1169/265 +f 414/597/238 415/1171/267 413/1170/266 +f 416/565/244 417/1172/268 415/1171/267 +f 417/1172/268 388/571/237 387/1157/247 +f 429/582/244 444/1173/269 428/585/269 +f 422/566/254 437/1174/270 421/567/270 +f 430/580/238 445/1175/244 429/582/244 +f 423/596/232 438/1176/254 422/566/254 +f 431/578/235 446/1177/238 430/580/238 +f 424/594/251 439/1178/232 423/596/232 +f 432/576/264 447/1179/235 431/578/235 +f 425/592/245 440/1180/251 424/594/251 +f 433/574/262 448/1181/264 432/576/264 +f 426/590/248 441/1182/245 425/592/245 +f 434/572/260 449/1183/262 433/574/262 +f 427/589/237 442/1184/248 426/590/248 +f 420/568/256 435/1185/231 419/570/231 +f 419/570/231 450/1186/260 434/572/260 +f 428/585/269 443/1187/237 427/587/237 +f 421/567/270 436/1188/256 420/568/256 +f 452/1189/271 467/1190/272 451/1191/273 +f 467/1190/272 417/1192/268 387/1193/247 +f 466/1194/274 467/1195/272 482/1196/275 +f 466/1194/274 481/1197/276 465/1198/277 +f 465/1198/277 480/1199/278 464/1200/279 +f 463/1201/280 480/1202/278 479/1203/281 +f 462/1204/282 479/1205/281 478/1206/283 +f 461/1207/284 478/1208/283 477/1209/285 +f 460/1210/286 477/1211/285 476/1212/287 +f 460/1210/286 475/1213/288 459/1214/289 +f 458/1215/290 475/1216/288 474/1217/291 +f 458/1215/290 473/1218/292 457/1219/293 +f 457/1219/293 472/1220/294 456/1221/295 +f 456/1221/295 471/1222/296 455/1223/297 +f 454/1224/298 471/1225/296 470/1226/299 +f 453/1227/300 470/1228/299 469/1229/301 +f 453/1227/300 468/1230/302 452/1189/271 +f 389/1231/246 467/1195/272 387/1232/247 +f 391/1233/249 482/1234/275 389/1235/246 +f 480/1199/278 391/1236/249 393/1237/250 +f 479/1203/281 393/1238/250 395/1239/252 +f 397/1240/253 479/1205/281 395/1241/252 +f 399/1242/255 478/1208/283 397/1243/253 +f 476/1212/287 399/1244/255 401/1245/257 +f 475/1213/288 401/1246/257 403/1247/258 +f 405/1248/259 475/1216/288 403/1249/258 +f 407/1250/261 474/1251/291 405/1252/259 +f 409/1253/263 473/1254/292 407/1255/261 +f 471/1222/296 409/1256/263 411/1257/265 +f 470/1226/299 411/1258/265 413/1259/266 +f 469/1229/301 413/1260/266 415/1261/267 +f 468/1230/302 415/1262/267 417/1263/268 +f 515/598/237 497/659/269 516/627/269 +f 530/604/248 498/657/237 515/598/237 +f 523/628/231 489/644/256 524/626/256 +f 516/627/269 496/632/244 517/624/244 +f 524/626/256 488/646/270 525/622/270 +f 517/624/244 495/631/238 518/620/238 +f 525/622/270 487/648/254 526/618/254 +f 518/620/238 494/634/235 519/616/235 +f 526/618/254 486/650/232 527/614/232 +f 519/616/235 493/636/264 520/610/264 +f 527/614/232 485/651/251 528/612/251 +f 520/610/264 492/637/262 521/606/262 +f 528/612/251 484/653/245 529/608/245 +f 521/606/262 491/639/260 522/603/260 +f 529/608/245 483/655/248 530/604/248 +f 522/603/260 490/641/231 523/601/231 +f 540/1264/237 505/607/248 508/600/237 +f 539/1265/269 508/600/237 507/599/269 +f 542/1266/244 507/599/269 510/623/244 +f 544/1267/238 510/623/244 512/619/238 +f 546/1268/235 512/619/238 514/615/235 +f 534/1269/264 514/615/235 502/609/264 +f 533/1270/262 502/609/264 501/605/262 +f 536/1271/260 501/605/262 504/602/260 +f 538/1272/231 504/602/260 506/973/231 +f 541/1273/256 506/629/231 509/625/256 +f 543/1274/270 509/625/256 511/621/270 +f 545/1275/254 511/621/270 513/617/254 +f 532/1276/232 513/617/254 500/613/232 +f 531/1277/251 500/613/232 499/611/251 +f 535/1278/245 499/611/251 503/974/245 +f 537/1279/248 503/974/245 505/607/248 +f 578/1280/303 539/1265/304 577/1281/304 +f 563/1282/305 540/1264/303 578/1280/303 +f 564/1283/306 537/1279/305 563/1282/305 +f 564/1283/306 531/1277/307 535/1278/306 +f 565/1284/307 532/1276/233 531/1277/307 +f 566/1285/233 545/1275/308 532/1276/233 +f 567/1286/308 543/1274/309 545/1275/308 +f 568/1287/309 541/1273/310 543/1274/309 +f 570/1288/311 541/1273/310 569/1289/310 +f 570/1290/311 536/1271/312 538/1272/311 +f 571/1291/312 533/1270/313 536/1271/312 +f 572/1292/313 534/1269/314 533/1270/313 +f 574/1293/234 534/1269/314 573/1294/314 +f 574/1293/234 544/1267/315 546/1268/234 +f 575/1295/315 542/1266/316 544/1267/315 +f 576/1296/316 539/1265/304 542/1266/316 +f 558/1297/317 577/1281/318 576/1296/317 +f 555/1298/318 578/1280/319 577/1281/318 +f 556/1299/319 563/1282/320 578/1280/319 +f 553/1300/320 564/1283/321 563/1282/320 +f 564/1283/321 547/1301/322 565/1284/322 +f 565/1284/322 548/1302/323 566/1285/323 +f 566/1285/323 561/1303/324 567/1286/324 +f 567/1286/324 559/1304/325 568/1287/325 +f 559/1304/325 569/1289/326 568/1287/325 +f 557/1305/326 570/1288/327 569/1289/326 +f 570/1290/327 552/1306/328 571/1291/328 +f 571/1291/328 549/1307/329 572/1292/329 +f 572/1292/329 550/1308/330 573/1294/330 +f 550/1308/330 574/1293/331 573/1294/330 +f 574/1293/331 560/1309/332 575/1295/332 +f 575/1295/332 558/1297/317 576/1296/317 +f 452/1189/269 558/1297/244 453/1227/244 +f 451/1191/237 555/1298/269 452/1189/269 +f 466/1194/248 556/1299/237 451/1191/237 +f 465/1198/245 553/1300/248 466/1194/248 +f 464/1200/251 551/1310/245 465/1198/245 +f 463/1201/232 547/1301/251 464/1200/251 +f 462/1204/254 548/1302/232 463/1201/232 +f 461/1207/270 561/1303/254 462/1204/254 +f 460/1210/256 559/1304/270 461/1207/270 +f 459/1214/231 557/1305/256 460/1210/256 +f 458/1215/260 554/1311/231 459/1312/231 +f 457/1219/262 552/1306/260 458/1215/260 +f 456/1221/264 549/1307/262 457/1219/262 +f 455/1223/235 550/1308/264 456/1221/264 +f 454/1224/238 562/1313/235 455/1223/235 +f 453/1227/244 560/1309/238 454/1224/238 +f 584/1314/264 601/1315/333 585/1316/262 +f 592/1317/251 609/1318/334 593/1319/245 +f 585/1316/262 602/1320/335 586/1321/260 +f 593/1319/245 610/1322/336 594/1323/248 +f 586/1321/260 603/1324/337 587/1325/231 +f 594/1323/248 595/1326/338 579/1327/237 +f 587/1328/231 604/1329/339 588/1330/256 +f 588/1330/256 605/1331/340 589/1332/270 +f 589/1332/270 606/1333/341 590/1334/254 +f 590/1334/254 607/1335/342 591/1336/232 +f 648/1337/343 579/1327/237 595/1326/338 +f 591/1336/232 608/1338/344 592/1317/251 +f 623/1339/237 632/1340/244 624/1341/244 +f 630/1342/245 631/1343/237 623/1339/237 +f 628/1344/270 637/1345/232 629/1346/232 +f 626/1347/262 635/1348/231 627/1349/231 +f 624/1341/244 633/1350/235 625/1351/235 +f 629/1346/232 638/1352/245 630/1342/245 +f 627/1353/231 636/1354/270 628/1344/270 +f 625/1351/235 634/1355/262 626/1347/262 +f 647/1356/343 580/1357/269 579/1327/237 +f 597/1358/345 599/1359/346 600/1360/347 +f 642/1361/238 583/1362/235 582/1363/238 +f 641/1364/244 582/1363/238 581/1365/244 +f 640/1366/269 581/1365/244 580/1357/269 +f 639/1367/348 597/1358/345 646/1368/238 +f 643/1369/349 646/1368/238 645/1370/244 +f 596/1371/350 645/1370/244 644/1372/269 +f 596/1371/350 648/1337/343 595/1326/338 +f 658/1373/351 671/1374/237 657/1375/352 +f 659/1376/353 672/1377/269 658/1373/351 +f 660/1378/354 673/1379/244 659/1376/353 +f 661/1380/355 674/1381/238 660/1378/354 +f 654/1382/356 667/702/357 653/701/358 +f 662/1383/359 675/1384/235 661/1380/355 +f 655/1385/360 668/1386/251 654/1382/356 +f 663/1387/361 676/1388/264 662/1383/359 +f 656/1389/362 669/1390/245 655/1385/360 +f 664/1391/363 677/1392/262 663/1387/361 +f 657/1375/352 670/1393/248 656/1389/362 +f 665/699/364 666/1394/231 649/1395/365 +f 649/1395/365 678/1396/260 664/1391/363 +f 687/1397/244 682/949/238 681/952/244 +f 684/1398/343 680/954/269 689/956/343 +f 686/1399/238 683/1104/366 682/949/238 +f 688/1400/269 681/952/244 680/954/269 +f 700/788/367 655/1385/360 654/1382/356 +f 655/1385/360 698/790/368 656/1389/362 +f 656/1389/362 697/793/369 657/1375/352 +f 697/797/369 658/1373/351 657/1375/352 +f 696/705/370 659/1376/353 658/1373/351 +f 659/1376/353 694/1022/371 660/1378/354 +f 694/757/371 661/1380/355 660/1378/354 +f 693/760/372 662/1383/359 661/1380/355 +f 692/763/373 663/1387/361 662/1383/359 +f 690/769/374 649/1395/365 664/1391/363 +f 691/766/375 664/1391/363 663/1387/361 +f 704/1028/376 650/1401/376 665/699/364 +f 704/775/376 651/1402/377 650/1401/376 +f 703/779/377 652/1403/378 651/1402/377 +f 652/1403/378 701/1031/379 653/1404/358 +f 701/785/379 654/1382/356 653/701/358 +f 708/709/245 716/717/251 707/707/251 +f 707/707/251 720/720/357 706/728/357 +f 727/733/380 709/712/248 710/714/380 +f 718/722/248 731/735/380 719/723/380 +f 726/732/381 730/725/381 717/718/245 +f 751/1405/382 599/1359/346 639/1367/348 +f 606/1333/341 760/1406/383 607/1335/342 +f 607/1335/342 761/1407/384 608/1338/344 +f 761/1407/384 609/1318/334 608/1338/344 +f 601/1315/333 755/1408/385 602/1320/335 +f 600/1360/347 754/1409/386 601/1315/333 +f 762/1410/387 610/1322/336 609/1318/334 +f 643/1369/349 751/1405/382 639/1367/348 +f 763/1411/388 595/1326/338 610/1322/336 +f 603/1412/337 757/1413/389 604/1329/339 +f 599/1359/346 753/1414/390 600/1360/347 +f 595/1326/338 749/1415/391 596/1371/350 +f 757/1413/389 605/1331/340 604/1329/339 +f 602/1320/335 756/1416/392 603/1324/337 +f 749/1415/391 643/1369/349 596/1371/350 +f 605/1331/340 759/1417/393 606/1333/341 +f 746/1418/394 786/1419/395 747/1420/396 +f 787/1421/397 767/1422/398 766/1423/399 +f 789/1424/400 780/1425/401 787/1421/397 +f 791/1426/402 782/1427/403 789/1424/400 +f 792/1428/404 783/1429/405 791/1426/402 +f 778/1430/406 793/1431/407 786/1419/395 +f 793/1431/407 784/1432/408 792/1428/404 +f 777/1433/409 772/1434/410 770/1435/411 +f 779/1436/412 771/1437/413 776/1438/414 +f 764/1439/415 746/1440/394 779/1436/412 +f 769/1441/416 767/1442/398 780/1443/401 +f 769/1441/416 782/1444/403 771/1437/413 +f 773/1445/417 782/1444/403 783/1446/405 +f 775/1447/418 783/1446/405 784/1448/408 +f 764/1439/415 785/1449/419 778/1450/406 +f 775/1447/418 785/1449/419 776/1438/414 +f 765/1451/420 747/1452/396 786/1453/395 +f 768/1454/421 766/1455/399 790/1456/422 +f 768/1454/421 789/1457/400 787/1458/397 +f 772/1434/410 789/1457/400 770/1435/411 +f 774/1459/423 791/1460/402 772/1434/410 +f 765/1451/420 793/1461/407 777/1433/409 +f 774/1459/423 793/1461/407 792/1462/404 +f 806/814/229 808/818/424 807/809/229 +f 805/811/230 811/1463/425 804/1464/230 +f 810/810/425 813/1465/426 811/1463/425 +f 809/813/424 814/817/427 808/818/424 +f 812/822/426 817/1466/428 813/1465/426 +f 815/816/427 818/1040/429 814/817/427 +f 816/821/428 821/1467/430 817/1466/428 +f 819/820/429 822/825/431 818/1040/429 +f 829/1468/432 824/829/229 825/828/229 +f 831/1469/433 828/1470/432 829/1468/432 +f 839/1471/434 850/1472/435 838/1473/435 +f 834/1474/237 857/1475/436 845/1476/436 +f 836/1477/437 846/1478/438 835/1479/438 +f 843/1480/232 854/1481/439 842/1482/439 +f 840/1483/231 851/1484/434 839/1471/434 +f 837/1485/235 848/1486/437 836/1477/437 +f 844/1487/440 855/1488/232 843/1480/232 +f 841/1489/441 852/1490/231 840/1491/231 +f 838/1473/435 849/1492/235 837/1485/235 +f 845/1476/436 856/1493/440 844/1487/440 +f 835/1479/438 847/1494/237 834/1474/237 +f 842/1482/439 853/1495/441 841/1489/441 +f 868/1496/440 881/1497/436 869/1498/436 +f 861/1499/235 874/1500/435 862/1501/435 +f 869/1498/436 871/1502/237 858/1503/237 +f 862/1501/435 875/1504/434 863/1505/434 +f 863/1505/434 876/1506/231 864/1507/231 +f 864/1508/231 877/1509/441 865/1510/441 +f 865/1510/441 878/1511/439 866/1512/439 +f 858/1503/237 870/1513/438 859/1514/438 +f 866/1512/439 879/1515/232 867/1516/232 +f 859/1514/438 872/1517/437 860/1518/437 +f 867/1516/232 880/1519/440 868/1496/440 +f 860/1518/437 873/1520/235 861/1499/235 +f 896/870/231 919/891/434 895/868/434 +f 910/1521/437 935/878/235 911/1522/235 +f 903/1523/441 928/885/439 904/1524/439 +f 897/872/441 920/897/231 896/873/231 +f 911/1522/235 936/877/435 912/1525/435 +f 904/1524/439 929/890/232 905/1526/232 +f 898/875/439 921/895/441 897/872/441 +f 912/1525/435 937/882/434 913/1527/434 +f 891/862/438 915/884/237 890/861/237 +f 905/1526/232 930/889/440 906/1528/440 +f 899/856/232 922/900/439 898/875/439 +f 913/1527/434 927/881/231 902/1529/231 +f 892/864/437 914/883/438 891/862/438 +f 906/1528/440 931/894/436 907/1530/436 +f 900/858/440 923/876/232 899/856/232 +f 893/865/235 916/888/437 892/864/437 +f 907/1530/436 932/893/237 908/1531/237 +f 901/859/436 924/880/440 900/858/440 +f 894/867/435 917/887/235 893/865/235 +f 908/1532/237 933/899/438 909/1533/438 +f 890/861/237 925/879/436 901/859/436 +f 895/868/434 918/892/435 894/867/435 +f 909/1533/438 934/898/437 910/1521/437 +f 902/1529/231 926/886/441 903/1523/441 +f 970/1534/235 977/1535/244 969/1536/244 +f 975/1537/245 982/1538/232 974/1539/232 +f 973/1540/270 980/1541/231 972/1542/231 +f 971/1543/262 978/1544/235 970/1534/235 +f 969/1536/244 976/1545/237 968/1546/237 +f 968/1546/237 983/1547/245 975/1537/245 +f 974/1539/232 981/1548/270 973/1540/270 +f 972/1549/231 979/1550/262 971/1543/262 +f 1000/1551/434 1011/1552/435 999/1553/435 +f 995/1554/237 1018/1555/436 1006/1556/436 +f 997/1557/437 1007/1558/438 996/1559/438 +f 1004/1560/232 1015/1561/439 1003/1562/439 +f 1001/1563/231 1012/1564/434 1000/1551/434 +f 998/1565/235 1009/1566/437 997/1557/437 +f 1005/1567/440 1016/1568/232 1004/1560/232 +f 1002/1569/441 1013/1570/231 1001/1571/231 +f 999/1553/435 1010/1572/235 998/1565/235 +f 1006/1556/436 1017/1573/440 1005/1567/440 +f 996/1559/438 1008/1574/237 995/1554/237 +f 1003/1562/439 1014/1575/441 1002/1569/441 +f 1029/1576/440 1042/1577/436 1030/1578/436 +f 1022/1579/235 1035/1580/435 1023/1581/435 +f 1030/1578/436 1032/1582/237 1019/1583/237 +f 1023/1581/435 1036/1584/434 1024/1585/434 +f 1024/1585/434 1037/1586/231 1025/1587/231 +f 1025/1588/231 1038/1589/441 1026/1590/441 +f 1026/1590/441 1039/1591/439 1027/1592/439 +f 1019/1583/237 1031/1593/438 1020/1594/438 +f 1027/1592/439 1040/1595/232 1028/1596/232 +f 1020/1594/438 1033/1597/437 1021/1598/437 +f 1028/1596/232 1041/1599/440 1029/1576/440 +f 1021/1598/437 1034/1600/235 1022/1579/235 +f 388/571/237 390/573/248 389/1156/246 +f 390/573/248 392/575/245 391/1158/249 +f 392/575/245 394/577/251 393/1159/250 +f 394/577/251 396/579/232 395/1160/252 +f 396/579/232 398/581/254 397/1161/253 +f 398/581/254 400/583/270 399/1162/255 +f 399/1162/255 400/583/270 402/584/256 +f 402/584/256 404/586/231 403/1164/258 +f 404/972/231 406/588/260 405/1165/259 +f 406/588/260 408/591/262 407/1167/261 +f 408/591/262 410/593/264 409/1168/263 +f 410/593/264 412/595/235 411/1169/265 +f 412/595/235 414/597/238 413/1170/266 +f 414/597/238 416/565/244 415/1171/267 +f 416/565/244 418/569/269 417/1172/268 +f 417/1172/268 418/569/269 388/571/237 +f 429/582/244 445/1175/244 444/1173/269 +f 422/566/254 438/1176/254 437/1174/270 +f 430/580/238 446/1177/238 445/1175/244 +f 423/596/232 439/1178/232 438/1176/254 +f 431/578/235 447/1179/235 446/1177/238 +f 424/594/251 440/1180/251 439/1178/232 +f 432/576/264 448/1181/264 447/1179/235 +f 425/592/245 441/1182/245 440/1180/251 +f 433/574/262 449/1183/262 448/1181/264 +f 426/590/248 442/1184/248 441/1182/245 +f 434/572/260 450/1186/260 449/1183/262 +f 427/589/237 443/1601/237 442/1184/248 +f 420/568/256 436/1188/256 435/1185/231 +f 419/570/231 435/1185/231 450/1186/260 +f 428/585/269 444/1173/269 443/1187/237 +f 421/567/270 437/1174/270 436/1188/256 +f 452/1189/271 468/1602/302 467/1190/272 +f 467/1190/272 468/1602/302 417/1192/268 +f 466/1194/274 451/1191/273 467/1195/272 +f 466/1194/274 482/1234/275 481/1197/276 +f 465/1198/277 481/1603/276 480/1199/278 +f 463/1201/280 464/1200/279 480/1202/278 +f 462/1204/282 463/1201/280 479/1205/281 +f 461/1207/284 462/1204/282 478/1208/283 +f 460/1210/286 461/1207/284 477/1211/285 +f 460/1210/286 476/1604/287 475/1213/288 +f 458/1215/290 459/1312/289 475/1216/288 +f 458/1215/290 474/1251/291 473/1218/292 +f 457/1219/293 473/1254/292 472/1220/294 +f 456/1221/295 472/1605/294 471/1222/296 +f 454/1224/298 455/1223/297 471/1225/296 +f 453/1227/300 454/1224/298 470/1228/299 +f 453/1227/300 469/1606/301 468/1230/302 +f 389/1231/246 482/1196/275 467/1195/272 +f 391/1233/249 481/1197/276 482/1234/275 +f 480/1199/278 481/1603/276 391/1236/249 +f 479/1203/281 480/1202/278 393/1238/250 +f 397/1240/253 478/1206/283 479/1205/281 +f 399/1242/255 477/1209/285 478/1208/283 +f 476/1212/287 477/1211/285 399/1244/255 +f 475/1213/288 476/1604/287 401/1246/257 +f 405/1248/259 474/1217/291 475/1216/288 +f 407/1250/261 473/1218/292 474/1251/291 +f 409/1253/263 472/1220/294 473/1254/292 +f 471/1222/296 472/1605/294 409/1256/263 +f 470/1226/299 471/1225/296 411/1258/265 +f 469/1229/301 470/1228/299 413/1260/266 +f 468/1230/302 469/1606/301 415/1262/267 +f 515/598/237 498/657/237 497/659/269 +f 530/604/248 483/655/248 498/657/237 +f 523/628/231 490/642/231 489/644/256 +f 516/627/269 497/659/269 496/632/244 +f 524/626/256 489/644/256 488/646/270 +f 517/624/244 496/632/244 495/631/238 +f 525/622/270 488/646/270 487/648/254 +f 518/620/238 495/631/238 494/634/235 +f 526/618/254 487/648/254 486/650/232 +f 519/616/235 494/634/235 493/636/264 +f 527/614/232 486/650/232 485/651/251 +f 520/610/264 493/636/264 492/637/262 +f 528/612/251 485/651/251 484/653/245 +f 521/606/262 492/637/262 491/639/260 +f 529/608/245 484/653/245 483/655/248 +f 522/603/260 491/639/260 490/641/231 +f 540/1264/237 537/1279/248 505/607/248 +f 539/1265/269 540/1264/237 508/600/237 +f 542/1266/244 539/1265/269 507/599/269 +f 544/1267/238 542/1266/244 510/623/244 +f 546/1268/235 544/1267/238 512/619/238 +f 534/1269/264 546/1268/235 514/615/235 +f 533/1270/262 534/1269/264 502/609/264 +f 536/1271/260 533/1270/262 501/605/262 +f 538/1272/231 536/1271/260 504/602/260 +f 541/1273/256 538/1607/231 506/629/231 +f 543/1274/270 541/1273/256 509/625/256 +f 545/1275/254 543/1274/270 511/621/270 +f 532/1276/232 545/1275/254 513/617/254 +f 531/1277/251 532/1276/232 500/613/232 +f 535/1278/245 531/1277/251 499/611/251 +f 537/1279/248 535/1278/245 503/974/245 +f 578/1280/303 540/1264/303 539/1265/304 +f 563/1282/305 537/1279/305 540/1264/303 +f 564/1283/306 535/1278/306 537/1279/305 +f 564/1283/306 565/1284/307 531/1277/307 +f 565/1284/307 566/1285/233 532/1276/233 +f 566/1285/233 567/1286/308 545/1275/308 +f 567/1286/308 568/1287/309 543/1274/309 +f 568/1287/309 569/1289/310 541/1273/310 +f 570/1288/311 538/1607/311 541/1273/310 +f 570/1290/311 571/1291/312 536/1271/312 +f 571/1291/312 572/1292/313 533/1270/313 +f 572/1292/313 573/1294/314 534/1269/314 +f 574/1293/234 546/1268/234 534/1269/314 +f 574/1293/234 575/1295/315 544/1267/315 +f 575/1295/315 576/1296/316 542/1266/316 +f 576/1296/316 577/1281/304 539/1265/304 +f 558/1297/317 555/1298/318 577/1281/318 +f 555/1298/318 556/1299/319 578/1280/319 +f 556/1299/319 553/1300/320 563/1282/320 +f 553/1300/320 551/1310/321 564/1283/321 +f 564/1283/321 551/1310/321 547/1301/322 +f 565/1284/322 547/1301/322 548/1302/323 +f 566/1285/323 548/1302/323 561/1303/324 +f 567/1286/324 561/1303/324 559/1304/325 +f 559/1304/325 557/1305/326 569/1289/326 +f 557/1305/326 554/1608/327 570/1288/327 +f 570/1290/327 554/1311/327 552/1306/328 +f 571/1291/328 552/1306/328 549/1307/329 +f 572/1292/329 549/1307/329 550/1308/330 +f 550/1308/330 562/1313/331 574/1293/331 +f 574/1293/331 562/1313/331 560/1309/332 +f 575/1295/332 560/1309/332 558/1297/317 +f 452/1189/269 555/1298/269 558/1297/244 +f 451/1191/237 556/1299/237 555/1298/269 +f 466/1194/248 553/1300/248 556/1299/237 +f 465/1198/245 551/1310/245 553/1300/248 +f 464/1200/251 547/1301/251 551/1310/245 +f 463/1201/232 548/1302/232 547/1301/251 +f 462/1204/254 561/1303/254 548/1302/232 +f 461/1207/270 559/1304/270 561/1303/254 +f 460/1210/256 557/1305/256 559/1304/270 +f 459/1214/231 554/1608/231 557/1305/256 +f 458/1215/260 552/1306/260 554/1311/231 +f 457/1219/262 549/1307/262 552/1306/260 +f 456/1221/264 550/1308/264 549/1307/262 +f 455/1223/235 562/1313/235 550/1308/264 +f 454/1224/238 560/1309/238 562/1313/235 +f 453/1227/244 558/1297/244 560/1309/238 +f 584/1314/264 600/1360/347 601/1315/333 +f 592/1317/251 608/1338/344 609/1318/334 +f 585/1316/262 601/1315/333 602/1320/335 +f 593/1319/245 609/1318/334 610/1322/336 +f 586/1321/260 602/1320/335 603/1324/337 +f 594/1323/248 610/1322/336 595/1326/338 +f 587/1328/231 603/1412/337 604/1329/339 +f 588/1330/256 604/1329/339 605/1331/340 +f 589/1332/270 605/1331/340 606/1333/341 +f 590/1334/254 606/1333/341 607/1335/342 +f 648/1337/343 647/1356/343 579/1327/237 +f 591/1336/232 607/1335/342 608/1338/344 +f 623/1339/237 631/1343/237 632/1340/244 +f 630/1342/245 638/1352/245 631/1343/237 +f 628/1344/270 636/1354/270 637/1345/232 +f 626/1347/262 634/1355/262 635/1348/231 +f 624/1341/244 632/1340/244 633/1350/235 +f 629/1346/232 637/1345/232 638/1352/245 +f 627/1353/231 635/1609/231 636/1354/270 +f 625/1351/235 633/1350/235 634/1355/262 +f 647/1356/343 640/1366/269 580/1357/269 +f 600/1360/347 584/1314/264 597/1358/345 +f 584/1314/264 583/1362/235 598/1610/345 +f 598/1610/345 597/1358/345 584/1314/264 +f 642/1361/238 598/1610/345 583/1362/235 +f 641/1364/244 642/1361/238 582/1363/238 +f 640/1366/269 641/1364/244 581/1365/244 +f 639/1367/348 599/1359/346 597/1358/345 +f 643/1369/349 639/1367/348 646/1368/238 +f 596/1371/350 643/1369/349 645/1370/244 +f 596/1371/350 644/1372/269 648/1337/343 +f 658/1373/351 672/1377/269 671/1374/237 +f 659/1376/353 673/1379/244 672/1377/269 +f 660/1378/354 674/1381/238 673/1379/244 +f 661/1380/355 675/1384/235 674/1381/238 +f 654/1382/356 668/1386/251 667/702/357 +f 662/1383/359 676/1388/264 675/1384/235 +f 655/1385/360 669/1390/245 668/1386/251 +f 663/1387/361 677/1392/262 676/1388/264 +f 656/1389/362 670/1393/248 669/1390/245 +f 664/1391/363 678/1396/260 677/1392/262 +f 657/1375/352 671/1374/237 670/1393/248 +f 665/699/364 679/997/442 666/1394/231 +f 649/1395/365 666/1394/231 678/1396/260 +f 687/1397/244 686/1399/238 682/949/238 +f 684/1398/343 688/1400/269 680/954/269 +f 686/1399/238 685/1611/366 683/1104/366 +f 688/1400/269 687/1397/244 681/952/244 +f 700/788/367 699/787/443 655/1385/360 +f 655/1385/360 699/791/443 698/790/368 +f 656/1389/362 698/794/368 697/793/369 +f 697/797/369 696/796/370 658/1373/351 +f 696/705/370 695/1001/444 659/1376/353 +f 659/1376/353 695/754/444 694/1022/371 +f 694/757/371 693/1023/372 661/1380/355 +f 693/760/372 692/1024/373 662/1383/359 +f 692/763/373 691/1025/375 663/1387/361 +f 690/769/374 705/1027/445 649/1395/365 +f 691/766/375 690/1026/374 664/1391/363 +f 665/699/364 649/1395/365 705/772/445 +f 705/772/445 704/1028/376 665/699/364 +f 704/775/376 703/1029/377 651/1402/377 +f 703/779/377 702/778/378 652/1403/378 +f 652/1403/378 702/781/378 701/1031/379 +f 701/785/379 700/784/367 654/1382/356 +f 708/709/245 717/718/245 716/717/251 +f 707/707/251 716/717/251 720/720/357 +f 727/733/380 726/732/381 709/712/248 +f 718/722/248 730/725/381 731/735/380 +f 708/709/245 709/712/248 726/732/381 +f 730/725/381 718/722/248 717/718/245 +f 708/709/245 726/732/381 717/718/245 +f 751/1405/382 752/1612/446 599/1359/346 +f 606/1333/341 759/1417/393 760/1406/383 +f 607/1335/342 760/1406/383 761/1407/384 +f 761/1407/384 762/1410/387 609/1318/334 +f 601/1315/333 754/1409/386 755/1408/385 +f 600/1360/347 753/1414/390 754/1409/386 +f 762/1410/387 763/1411/388 610/1322/336 +f 643/1369/349 750/1613/447 751/1405/382 +f 763/1411/388 748/1614/448 595/1326/338 +f 603/1412/337 756/1615/392 757/1413/389 +f 599/1359/346 752/1612/446 753/1414/390 +f 595/1326/338 748/1614/448 749/1415/391 +f 757/1413/389 758/1616/449 605/1331/340 +f 602/1320/335 755/1408/385 756/1416/392 +f 749/1415/391 750/1613/447 643/1369/349 +f 605/1331/340 758/1616/449 759/1417/393 +f 746/1418/394 778/1430/406 786/1419/395 +f 787/1421/397 780/1425/401 767/1422/398 +f 789/1424/400 782/1427/403 780/1425/401 +f 791/1426/402 783/1429/405 782/1427/403 +f 792/1428/404 784/1432/408 783/1429/405 +f 778/1430/406 785/1617/419 793/1431/407 +f 793/1431/407 785/1617/419 784/1432/408 +f 790/1456/422 788/1618/450 770/1435/411 +f 788/1618/450 765/1451/420 777/1433/409 +f 777/1433/409 774/1459/423 772/1434/410 +f 788/1618/450 777/1433/409 770/1435/411 +f 770/1435/411 768/1454/421 790/1456/422 +f 776/1438/414 764/1439/415 779/1436/412 +f 779/1436/412 781/1619/451 771/1437/413 +f 781/1619/451 769/1441/416 771/1437/413 +f 771/1437/413 773/1445/417 776/1438/414 +f 773/1445/417 775/1447/418 776/1438/414 +f 764/1439/415 778/1450/406 746/1440/394 +f 769/1441/416 781/1619/451 767/1442/398 +f 769/1441/416 780/1443/401 782/1444/403 +f 773/1445/417 771/1437/413 782/1444/403 +f 775/1447/418 773/1445/417 783/1446/405 +f 764/1439/415 776/1438/414 785/1449/419 +f 775/1447/418 784/1448/408 785/1449/419 +f 765/1451/420 788/1618/450 747/1452/396 +f 768/1454/421 787/1458/397 766/1455/399 +f 768/1454/421 770/1435/411 789/1457/400 +f 772/1434/410 791/1460/402 789/1457/400 +f 774/1459/423 792/1462/404 791/1460/402 +f 765/1451/420 786/1453/395 793/1461/407 +f 774/1459/423 777/1433/409 793/1461/407 +f 806/814/229 809/813/424 808/818/424 +f 805/811/230 810/810/425 811/1463/425 +f 810/810/425 812/822/426 813/1465/426 +f 809/813/424 815/816/427 814/817/427 +f 812/822/426 816/821/428 817/1466/428 +f 815/816/427 819/820/429 818/1040/429 +f 816/821/428 820/826/430 821/1467/430 +f 819/820/429 823/824/431 822/825/431 +f 829/1468/432 828/1470/432 824/829/229 +f 831/1469/433 830/1620/433 828/1470/432 +f 839/1471/434 851/1484/434 850/1472/435 +f 834/1474/237 847/1494/237 857/1475/436 +f 836/1477/437 848/1486/437 846/1478/438 +f 843/1480/232 855/1488/232 854/1481/439 +f 840/1483/231 852/1621/231 851/1484/434 +f 837/1485/235 849/1492/235 848/1486/437 +f 844/1487/440 856/1493/440 855/1488/232 +f 841/1489/441 853/1495/441 852/1490/231 +f 838/1473/435 850/1472/435 849/1492/235 +f 845/1476/436 857/1475/436 856/1493/440 +f 835/1479/438 846/1478/438 847/1494/237 +f 842/1482/439 854/1481/439 853/1495/441 +f 868/1496/440 880/1519/440 881/1497/436 +f 861/1499/235 873/1520/235 874/1500/435 +f 869/1498/436 881/1497/436 871/1502/237 +f 862/1501/435 874/1500/435 875/1504/434 +f 863/1505/434 875/1504/434 876/1506/231 +f 864/1508/231 876/1622/231 877/1509/441 +f 865/1510/441 877/1509/441 878/1511/439 +f 858/1503/237 871/1502/237 870/1513/438 +f 866/1512/439 878/1511/439 879/1515/232 +f 859/1514/438 870/1513/438 872/1517/437 +f 867/1516/232 879/1515/232 880/1519/440 +f 860/1518/437 872/1517/437 873/1520/235 +f 896/870/231 920/1089/231 919/891/434 +f 910/1521/437 934/898/437 935/878/235 +f 903/1523/441 926/886/441 928/885/439 +f 897/872/441 921/895/441 920/897/231 +f 911/1522/235 935/878/235 936/877/435 +f 904/1524/439 928/885/439 929/890/232 +f 898/875/439 922/900/439 921/895/441 +f 912/1525/435 936/877/435 937/882/434 +f 891/862/438 914/883/438 915/884/237 +f 905/1526/232 929/890/232 930/889/440 +f 899/856/232 923/876/232 922/900/439 +f 913/1527/434 937/882/434 927/881/231 +f 892/864/437 916/888/437 914/883/438 +f 906/1528/440 930/889/440 931/894/436 +f 900/858/440 924/880/440 923/876/232 +f 893/865/235 917/887/235 916/888/437 +f 907/1530/436 931/894/436 932/893/237 +f 901/859/436 925/879/436 924/880/440 +f 894/867/435 918/892/435 917/887/235 +f 908/1532/237 932/896/237 933/899/438 +f 890/861/237 915/884/237 925/879/436 +f 895/868/434 919/891/434 918/892/435 +f 909/1533/438 933/899/438 934/898/437 +f 902/1529/231 927/881/231 926/886/441 +f 970/1534/235 978/1544/235 977/1535/244 +f 975/1537/245 983/1547/245 982/1538/232 +f 973/1540/270 981/1548/270 980/1541/231 +f 971/1543/262 979/1550/262 978/1544/235 +f 969/1536/244 977/1535/244 976/1545/237 +f 968/1546/237 976/1545/237 983/1547/245 +f 974/1539/232 982/1538/232 981/1548/270 +f 972/1549/231 980/1623/231 979/1550/262 +f 1000/1551/434 1012/1564/434 1011/1552/435 +f 995/1554/237 1008/1574/237 1018/1555/436 +f 997/1557/437 1009/1566/437 1007/1558/438 +f 1004/1560/232 1016/1568/232 1015/1561/439 +f 1001/1563/231 1013/1624/231 1012/1564/434 +f 998/1565/235 1010/1572/235 1009/1566/437 +f 1005/1567/440 1017/1573/440 1016/1568/232 +f 1002/1569/441 1014/1575/441 1013/1570/231 +f 999/1553/435 1011/1552/435 1010/1572/235 +f 1006/1556/436 1018/1555/436 1017/1573/440 +f 996/1559/438 1007/1558/438 1008/1574/237 +f 1003/1562/439 1015/1561/439 1014/1575/441 +f 1029/1576/440 1041/1599/440 1042/1577/436 +f 1022/1579/235 1034/1600/235 1035/1580/435 +f 1030/1578/436 1042/1577/436 1032/1582/237 +f 1023/1581/435 1035/1580/435 1036/1584/434 +f 1024/1585/434 1036/1584/434 1037/1586/231 +f 1025/1588/231 1037/1625/231 1038/1589/441 +f 1026/1590/441 1038/1589/441 1039/1591/439 +f 1019/1583/237 1032/1582/237 1031/1593/438 +f 1027/1592/439 1039/1591/439 1040/1595/232 +f 1020/1594/438 1031/1593/438 1033/1597/437 +f 1028/1596/232 1040/1595/232 1041/1599/440 +f 1021/1598/437 1033/1597/437 1034/1600/235 diff --git a/src/main/resources/assets/hbm/models/weapons/maresleg.obj b/src/main/resources/assets/hbm/models/weapons/maresleg.obj index 22d8e64fa..d6ae6b853 100644 --- a/src/main/resources/assets/hbm/models/weapons/maresleg.obj +++ b/src/main/resources/assets/hbm/models/weapons/maresleg.obj @@ -1,3783 +1,2369 @@ # Blender v2.79 (sub 0) OBJ File: 'maresleg.blend' # www.blender.org -o Grip -v 0.026200 -0.016789 0.733764 -v 0.026200 -0.103402 0.697888 -v 0.026200 0.060944 0.546101 -v 0.026200 -0.025670 0.510225 -v -0.036300 0.060944 0.546101 -v -0.036300 -0.025670 0.510225 -v -0.036300 -0.016789 0.733764 -v -0.036300 -0.103402 0.697888 -v 0.026219 -0.093905 0.743458 -v 0.026219 -0.187655 0.743458 -v 0.026219 -0.093905 0.680958 -v 0.026219 -0.187655 0.680958 -v -0.036281 -0.093905 0.680958 -v -0.036281 -0.187655 0.680958 -v -0.036281 -0.093905 0.743458 -v -0.036281 -0.187655 0.743458 -v 0.026225 -0.091559 0.708804 -v 0.026225 -0.163738 0.738701 -v 0.026225 -0.115477 0.651061 -v 0.026225 -0.187655 0.680958 -v -0.036275 -0.115477 0.651061 -v -0.036275 -0.187655 0.680958 -v -0.036275 -0.091559 0.708804 -v -0.036275 -0.163738 0.738701 -v 0.026231 0.002670 0.634943 -v 0.026231 -0.085718 0.723331 -v 0.026231 -0.052573 0.579700 -v 0.026231 -0.140961 0.668089 -v -0.036269 -0.052573 0.579700 -v -0.036269 -0.140961 0.668089 -v -0.036269 0.002670 0.634943 -v -0.036269 -0.085718 0.723331 -v 0.026187 -0.111974 0.762847 -v 0.026187 -0.169717 0.786765 -v 0.026187 -0.129913 0.719540 -v 0.026187 -0.187655 0.743458 -v -0.036312 -0.129913 0.719540 -v -0.036312 -0.187655 0.743458 -v -0.036312 -0.111974 0.762847 -v -0.036312 -0.169717 0.786765 -v 0.026214 -0.037134 0.720474 -v 0.026214 -0.136571 0.819911 -v 0.026214 -0.070280 0.687328 -v 0.026214 -0.169717 0.786765 -v -0.036286 -0.070280 0.687328 -v -0.036286 -0.169717 0.786765 -v -0.036286 -0.037134 0.720474 -v -0.036286 -0.136571 0.819911 -v 0.041839 0.117489 0.123705 -v 0.041839 0.039364 0.123705 -v 0.041839 0.117489 -0.380670 -v 0.041839 0.039364 -0.380670 -v -0.051911 0.117489 -0.380670 -v -0.051911 0.039364 -0.380670 -v -0.051911 0.117489 0.123705 -v -0.051911 0.039364 0.123705 -v 0.041839 0.039364 0.123705 -v 0.029880 0.010493 0.123705 -v 0.041839 0.039364 -0.380670 -v 0.029880 0.010493 -0.380670 -v 0.012967 0.051323 -0.380670 -v 0.001008 0.022452 -0.380670 -v 0.012967 0.051323 0.123705 -v 0.001008 0.022452 0.123705 -v 0.005962 0.068236 0.123705 -v 0.029880 0.010493 0.123705 -v 0.005962 0.068236 -0.380670 -v 0.029880 0.010493 -0.380670 -v -0.022909 0.056277 -0.380670 -v 0.001008 -0.001466 -0.380670 -v -0.022909 0.056277 0.123705 -v 0.001008 -0.001466 0.123705 -v -0.023040 0.051323 0.123705 -v -0.011081 0.022452 0.123705 -v -0.023040 0.051323 -0.380670 -v -0.011081 0.022452 -0.380670 -v -0.051911 0.039364 -0.380670 -v -0.039952 0.010493 -0.380670 -v -0.051911 0.039364 0.123705 -v -0.039952 0.010493 0.123705 -v 0.012836 0.056277 0.123705 -v -0.011081 -0.001466 0.123705 -v 0.012836 0.056277 -0.380670 -v -0.011081 -0.001466 -0.380670 -v -0.016035 0.068235 -0.380670 -v -0.039952 0.010493 -0.380670 -v -0.016035 0.068235 0.123705 -v -0.039952 0.010493 0.123705 -v 0.001419 0.061034 0.123705 -v 0.001419 -0.001466 0.123705 -v 0.001419 0.061034 -0.380670 -v 0.001419 -0.001466 -0.380670 -v -0.011081 0.061034 -0.380670 -v -0.011081 -0.001466 -0.380670 -v -0.011081 0.061034 0.123705 -v -0.011081 -0.001466 0.123705 -v 0.041839 0.117489 -0.380670 -v 0.041839 0.039364 -0.380670 -v 0.041839 0.117489 -0.416295 -v 0.041839 0.039364 -0.416295 -v -0.051911 0.117489 -0.416295 -v -0.051911 0.039364 -0.416295 -v -0.051911 0.117489 -0.380670 -v -0.051911 0.039364 -0.380670 -v -0.023040 0.051323 -0.380670 -v -0.011081 0.022452 -0.380670 -v -0.023040 0.051323 -0.416295 -v -0.011081 0.022452 -0.416295 -v -0.051911 0.039364 -0.416295 -v -0.039952 0.010493 -0.416295 -v -0.051911 0.039364 -0.380670 -v -0.039952 0.010493 -0.380670 -v 0.012836 0.056277 -0.380670 -v -0.011081 -0.001466 -0.380670 -v 0.012836 0.056277 -0.416295 -v -0.011081 -0.001466 -0.416295 -v -0.016035 0.068235 -0.416295 -v -0.039952 0.010493 -0.416295 -v -0.016035 0.068235 -0.380670 -v -0.039952 0.010493 -0.380670 -v 0.005962 0.068236 -0.380670 -v 0.029880 0.010493 -0.380670 -v 0.005962 0.068236 -0.416295 -v 0.029880 0.010493 -0.416295 -v -0.022909 0.056277 -0.416295 -v 0.001008 -0.001466 -0.416295 -v -0.022909 0.056277 -0.380670 -v 0.001008 -0.001466 -0.380670 -v 0.001419 0.045409 -0.380670 -v 0.001419 -0.001466 -0.380670 -v 0.001419 0.045409 -0.416295 -v 0.001419 -0.001466 -0.416295 -v -0.011081 0.045409 -0.416295 -v -0.011081 -0.001466 -0.416295 -v -0.011081 0.045409 -0.380670 -v -0.011081 -0.001466 -0.380670 -v 0.041839 0.039364 -0.380670 -v 0.029880 0.010493 -0.380670 -v 0.041839 0.039364 -0.416295 -v 0.029880 0.010493 -0.416295 -v 0.012967 0.051323 -0.416295 -v 0.001008 0.022452 -0.416295 -v 0.012967 0.051323 -0.380670 -v 0.001008 0.022452 -0.380670 -v 0.026206 -0.015446 0.733253 -v 0.026206 -0.119302 0.837110 -v 0.026206 -0.048591 0.700108 -v 0.026206 -0.152448 0.803964 -v -0.036294 -0.048591 0.700108 -v -0.036294 -0.152448 0.803964 -v -0.036294 -0.015446 0.733253 -v -0.036294 -0.119302 0.837110 -vt 0.875000 0.250000 -vt 0.875000 0.062500 -vt 0.468750 0.250000 -vt 0.468750 0.062500 -vt 0.906250 0.250000 -vt 0.906250 0.062500 -vt 0.468750 0.250000 -vt 0.468750 0.062500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.718750 0.250000 -vt 0.718750 0.125000 -vt 0.468750 0.250000 -vt 0.468750 0.125000 -vt 0.750000 0.250000 -vt 0.750000 0.125000 -vt 0.468750 0.250000 -vt 0.468750 0.125000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 1.000000 0.250000 -vt 1.000000 0.000000 -vt 0.468750 0.250000 -vt 0.468750 0.000000 -vt 0.843750 0.250000 -vt 0.843750 0.093750 -vt 0.468750 0.250000 -vt 0.468750 0.093750 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.812500 0.250000 -vt 0.812500 0.125000 -vt 0.468750 0.250000 -vt 0.468750 0.125000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.937500 0.250000 -vt 0.937500 0.062500 -vt 0.468750 0.250000 -vt 0.468750 0.062500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.843750 0.250000 -vt 0.843750 0.093750 -vt 0.468750 0.250000 -vt 0.468750 0.093750 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.906250 0.250000 -vt 0.906250 0.093750 -vt 0.468750 0.250000 -vt 0.468750 0.093750 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.875000 0.250000 -vt 0.875000 0.062500 -vt 0.468750 0.250000 -vt 0.468750 0.062500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.187500 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.468750 0.250000 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.500000 0.250000 -vt 0.500000 0.187500 -vt 0.468750 0.250000 -vt 0.468750 0.187500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vn 1.0000 0.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 0.0000 0.9239 0.3827 -vn 0.0000 -0.9239 -0.3827 -vn 0.0000 -0.3827 0.9239 -vn 0.0000 0.3827 -0.9239 -vn 0.0000 1.0000 0.0000 +o Lever +v -0.187500 0.769607 -3.582107 +v -0.187500 0.445183 -3.798880 +v 0.187500 1.187500 -2.375000 +v -0.187500 1.187500 -2.375000 +v 0.187500 0.437500 -2.375000 +v -0.187500 0.437500 -2.375000 +v -0.187500 0.437500 -2.875000 +v 0.187500 0.437500 -2.875000 +v -0.187500 1.187500 -2.500000 +v 0.187500 1.187500 -2.500000 +v -0.187500 -0.062500 -2.875000 +v 0.187500 -0.062500 -2.875000 +v -0.187500 0.062500 -3.875000 +v 0.187500 0.062500 -3.875000 +v 0.187500 0.445183 -3.798880 +v 0.187500 0.769607 -3.582107 +v 0.187500 0.986380 -3.257684 +v 0.187500 1.062500 -2.875000 +v -0.187500 0.986380 -3.257684 +v -0.187500 1.062500 -2.875000 +v 0.187500 -0.062500 -3.875000 +v -0.187500 -0.062500 -3.875000 +v -0.187500 1.062500 -2.625000 +v 0.187500 1.062500 -2.625000 +v 0.125000 -0.062500 -3.750000 +v -0.125000 -0.062500 -3.750000 +v -0.125000 -0.062500 -3.625000 +v 0.125000 -0.062500 -3.625000 +v 0.125000 -0.812500 -4.875000 +v -0.125000 -0.812500 -4.875000 +v 0.125000 -1.062500 -4.875000 +v -0.125000 -1.062500 -4.875000 +v 0.125000 -1.187500 -4.750000 +v -0.125000 -1.187500 -4.750000 +v 0.125000 -1.187500 -4.500000 +v -0.125000 -1.187500 -4.500000 +v 0.125000 -0.687500 -3.750000 +v -0.125000 -0.687500 -3.750000 +v 0.125000 -0.437500 -3.750000 +v -0.125000 -0.437500 -3.750000 +v 0.125000 -0.437500 -3.250000 +v -0.125000 -0.437500 -3.250000 +v 0.125000 -0.187500 -3.000000 +v -0.125000 -0.187500 -3.000000 +v 0.125000 -0.062500 -3.000000 +v -0.125000 -0.062500 -3.000000 +v 0.125000 -0.187500 -3.062500 +v -0.125000 -0.187500 -3.062500 +v 0.125000 -0.062500 -3.062500 +v -0.125000 -0.062500 -3.062500 +v 0.125000 -0.375000 -3.625000 +v -0.125000 -0.375000 -3.625000 +v 0.125000 -0.375000 -3.250000 +v -0.125000 -0.375000 -3.250000 +v 0.125000 -0.250000 -3.812500 +v -0.125000 -0.250000 -3.812500 +v 0.125000 -1.125000 -4.750000 +v -0.125000 -1.125000 -4.750000 +v 0.125000 -1.125000 -4.500000 +v -0.125000 -1.125000 -4.500000 +v 0.125000 -0.812500 -4.812500 +v -0.125000 -0.812500 -4.812500 +v 0.125000 -1.062500 -4.812500 +v -0.125000 -1.062500 -4.812500 +v 0.125000 -0.750000 -3.937500 +v -0.125000 -0.750000 -3.937500 +v 0.125000 -0.500000 -3.937500 +v -0.125000 -0.500000 -3.937500 +v 0.125000 -0.437500 -4.250000 +v -0.125000 -0.437500 -4.250000 +v 0.125000 -0.437500 -4.000000 +v -0.125000 -0.437500 -4.000000 +vt 0.975410 0.317757 +vt 0.909836 0.261682 +vt 0.975410 0.261682 +vt 0.852459 0.504673 +vt 0.877049 0.392523 +vt 0.877049 0.504673 +vt 0.975410 0.635514 +vt 1.000000 0.616822 +vt 1.000000 0.635514 +vt 0.975410 0.598131 +vt 1.000000 0.598131 +vt 0.852459 0.392523 +vt 0.877049 0.317757 +vt 0.885246 0.392523 +vt 0.909836 0.317757 +vt 0.909836 0.392523 +vt 0.893443 0.485981 +vt 0.909836 0.392523 +vt 0.877049 0.392523 +vt 0.893443 0.485981 +vt 0.885246 0.504673 +vt 0.934942 0.474589 +vt 0.956208 0.442187 +vt 0.970412 0.393687 +vt 0.336066 0.878505 +vt 0.344262 0.887850 +vt 0.336066 0.887850 +vt 0.344262 0.934579 +vt 0.336066 0.925234 +vt 0.344262 0.925234 +vt 0.368852 0.887850 +vt 0.393443 0.878505 +vt 0.401639 0.887850 +vt 0.393443 0.934579 +vt 0.368852 0.925234 +vt 0.401639 0.925234 +vt 0.364754 0.878505 +vt 0.364754 0.934579 +vt 0.241803 0.738318 +vt 0.258197 0.728972 +vt 0.241803 0.728972 +vt 0.258197 0.738318 +vt 0.241803 0.728972 +vt 0.258197 0.728972 +vt 0.262295 0.747664 +vt 0.266393 0.785047 +vt 0.266393 0.747664 +vt 0.262295 0.785047 +vt 0.266393 0.747664 +vt 0.266393 0.785047 +vt 0.262295 0.747664 +vt 0.204918 0.794393 +vt 0.192623 0.803738 +vt 0.204918 0.831776 +vt 0.204918 0.794393 +vt 0.192623 0.803738 +vt 0.204918 0.831776 +vt 0.192623 0.841121 +vt 0.196721 0.869159 +vt 0.209016 0.841121 +vt 0.209016 0.841121 +vt 0.196721 0.869159 +vt 0.225410 0.841121 +vt 0.192623 0.897196 +vt 0.225410 0.841121 +vt 0.975410 0.616822 +vt 0.852459 0.317757 +vt 0.885246 0.317757 +vt 0.877049 0.504673 +vt 0.885246 0.504673 +vt 0.909836 0.485981 +vt 0.909836 0.485981 +vt 0.970417 0.393693 +vt 0.975410 0.336449 +vt 0.909836 0.317757 +vt 0.975410 0.317757 +vt 0.975410 0.336449 +vt 0.956204 0.442175 +vt 0.934941 0.474575 +vt 0.344262 0.878505 +vt 0.336066 0.934579 +vt 0.368852 0.878505 +vt 0.368852 0.934579 +vt 0.348361 0.878505 +vt 0.348361 0.934579 +vt 0.258197 0.738318 +vt 0.241803 0.738318 +vt 0.262295 0.785047 +vt 0.192623 0.841121 +vt 0.184426 0.850467 +vt 0.184426 0.850467 +vt 0.192623 0.897196 +vt 0.184426 0.897196 +vt 0.184426 0.897196 +vt 1.000000 0.504673 +vt 0.975410 0.560748 +vt 0.975410 0.504673 +vt 1.000000 0.336449 +vt 0.975410 0.392523 +vt 1.000000 0.317757 +vt 1.000000 0.392523 +vt 0.975410 0.448598 +vt 1.000000 0.560748 +vt 1.000000 0.448598 +vt 0.147541 0.897196 +vt 0.057377 0.934579 +vt 0.057377 0.897196 +vt 0.163934 0.897196 +vt 0.147541 0.934579 +vt 0.176230 0.897196 +vt 0.163934 0.934579 +vt 0.192623 0.897196 +vt 0.176230 0.934579 +vt 0.250000 0.897196 +vt 0.192623 0.934579 +vt 0.266393 0.897196 +vt 0.250000 0.934579 +vt 0.336066 0.971963 +vt 0.348361 0.971963 +vt 0.364754 0.971963 +vt 0.368852 0.971963 +vt 0.409836 0.934579 +vt 0.393443 0.971963 +vt 0.409836 0.971963 +vt 0.426230 0.934579 +vt 0.426230 0.971963 +vt 0.077869 0.728972 +vt 0.061475 0.766355 +vt 0.061475 0.728972 +vt 0.077869 0.766355 +vt 0.086066 0.728972 +vt 0.086066 0.766355 +vt 0.102459 0.728972 +vt 0.020492 0.766355 +vt 0.168033 0.766355 +vt 0.184426 0.728972 +vt 0.184426 0.766355 +vt 0.143443 0.728972 +vt 0.102459 0.766355 +vt 0.159836 0.728972 +vt 0.143443 0.766355 +vt 0.159836 0.766355 +vt 0.168033 0.728972 +vt 0.266393 0.934579 +vt 0.344262 0.971963 +vt 0.020492 0.728972 vn 0.0000 -1.0000 0.0000 vn 0.0000 0.0000 1.0000 -vn 0.0000 0.0000 -1.0000 -vn 0.0000 0.9239 -0.3827 -vn 0.0000 -0.9239 0.3827 -vn 0.0000 0.3827 0.9239 -vn 0.0000 -0.3827 -0.9239 -vn 0.0000 0.7071 -0.7071 -vn 0.0000 -0.7071 0.7071 -vn 0.0000 0.7071 0.7071 -vn 0.0000 -0.7071 -0.7071 -vn 0.9239 -0.3827 -0.0000 -vn -0.9239 0.3827 0.0000 -vn 0.3827 0.9239 0.0000 -vn -0.3827 -0.9239 -0.0000 -vn 0.9239 0.3827 0.0000 -vn -0.9239 -0.3827 -0.0000 -vn -0.3827 0.9239 0.0000 -vn 0.3827 -0.9239 -0.0000 -s off -f 1/1/1 2/2/1 3/3/1 -f 2/2/1 4/4/1 3/3/1 -f 5/5/2 6/6/2 7/7/2 -f 6/6/2 8/8/2 7/7/2 -f 5/9/3 7/10/3 3/3/3 -f 7/10/3 1/11/3 3/3/3 -f 8/12/4 6/13/4 2/14/4 -f 6/13/4 4/15/4 2/14/4 -f 7/16/5 8/17/5 1/18/5 -f 8/17/5 2/19/5 1/18/5 -f 3/20/6 4/21/6 5/22/6 -f 4/21/6 6/23/6 5/22/6 -f 9/24/1 10/25/1 11/26/1 -f 10/25/1 12/27/1 11/26/1 -f 13/28/2 14/29/2 15/30/2 -f 14/29/2 16/31/2 15/30/2 -f 13/28/7 15/32/7 11/26/7 -f 15/32/7 9/33/7 11/26/7 -f 16/34/8 14/29/8 10/35/8 -f 14/29/8 12/27/8 10/35/8 -f 15/36/9 16/37/9 9/38/9 -f 16/37/9 10/39/9 9/38/9 -f 11/40/10 12/41/10 13/42/10 -f 12/41/10 14/43/10 13/42/10 -f 17/44/1 18/45/1 19/46/1 -f 18/45/1 20/47/1 19/46/1 -f 21/48/2 22/49/2 23/50/2 -f 22/49/2 24/51/2 23/50/2 -f 21/48/11 23/52/11 19/46/11 -f 23/52/11 17/53/11 19/46/11 -f 24/54/12 22/49/12 18/55/12 -f 22/49/12 20/47/12 18/55/12 -f 23/56/13 24/57/13 17/58/13 -f 24/57/13 18/59/13 17/58/13 -f 19/60/14 20/61/14 21/62/14 -f 20/61/14 22/63/14 21/62/14 -f 25/64/1 26/65/1 27/66/1 -f 26/65/1 28/67/1 27/66/1 -f 29/68/2 30/69/2 31/70/2 -f 30/69/2 32/71/2 31/70/2 -f 29/72/15 31/73/15 27/66/15 -f 31/73/15 25/74/15 27/66/15 -f 32/75/16 30/76/16 26/77/16 -f 30/76/16 28/78/16 26/77/16 -f 31/79/17 32/80/17 25/81/17 -f 32/80/17 26/82/17 25/81/17 -f 27/83/18 28/84/18 29/85/18 -f 28/84/18 30/86/18 29/85/18 -f 33/87/1 34/88/1 35/89/1 -f 34/88/1 36/90/1 35/89/1 -f 37/91/2 38/92/2 39/93/2 -f 38/92/2 40/94/2 39/93/2 -f 37/91/11 39/95/11 35/89/11 -f 39/95/11 33/96/11 35/89/11 -f 40/97/12 38/92/12 34/98/12 -f 38/92/12 36/90/12 34/98/12 -f 39/99/13 40/100/13 33/101/13 -f 40/100/13 34/102/13 33/101/13 -f 35/103/14 36/104/14 37/105/14 -f 36/104/14 38/106/14 37/105/14 -f 41/107/1 42/108/1 43/109/1 -f 42/108/1 44/110/1 43/109/1 -f 45/111/2 46/112/2 47/113/2 -f 46/112/2 48/114/2 47/113/2 -f 45/111/15 47/115/15 43/109/15 -f 47/115/15 41/116/15 43/109/15 -f 48/117/16 46/112/16 42/118/16 -f 46/112/16 44/110/16 42/118/16 -f 47/119/17 48/120/17 41/121/17 -f 48/120/17 42/122/17 41/121/17 -f 43/123/18 44/124/18 45/125/18 -f 44/124/18 46/126/18 45/125/18 -f 49/127/1 50/128/1 51/129/1 -f 50/128/1 52/130/1 51/129/1 -f 53/131/2 54/132/2 55/133/2 -f 54/132/2 56/134/2 55/133/2 -f 53/135/7 55/136/7 51/129/7 -f 55/136/7 49/137/7 51/129/7 -f 56/138/8 54/139/8 50/140/8 -f 54/139/8 52/141/8 50/140/8 -f 55/142/9 56/143/9 49/144/9 -f 56/143/9 50/145/9 49/144/9 -f 51/146/10 52/147/10 53/148/10 -f 52/147/10 54/149/10 53/148/10 -f 57/150/19 58/151/19 59/152/19 -f 58/151/19 60/153/19 59/152/19 -f 61/154/20 62/155/20 63/156/20 -f 62/155/20 64/157/20 63/156/20 -f 61/154/21 63/158/21 59/152/21 -f 63/158/21 57/159/21 59/152/21 -f 64/160/22 62/155/22 58/161/22 -f 62/155/22 60/162/22 58/161/22 -f 63/163/9 64/164/9 57/165/9 -f 64/164/9 58/166/9 57/165/9 -f 59/167/10 60/168/10 61/169/10 -f 60/168/10 62/170/10 61/169/10 -f 65/171/23 66/172/23 67/173/23 -f 66/172/23 68/174/23 67/173/23 -f 69/175/24 70/176/24 71/177/24 -f 70/176/24 72/178/24 71/177/24 -f 69/175/25 71/179/25 67/173/25 -f 71/179/25 65/180/25 67/173/25 -f 72/181/26 70/182/26 66/183/26 -f 70/182/26 68/184/26 66/183/26 -f 71/185/9 72/186/9 65/187/9 -f 72/186/9 66/188/9 65/187/9 -f 67/189/10 68/190/10 69/191/10 -f 68/190/10 70/192/10 69/191/10 -f 73/193/23 74/194/23 75/195/23 -f 74/194/23 76/196/23 75/195/23 -f 77/197/24 78/198/24 79/199/24 -f 78/198/24 80/200/24 79/199/24 -f 77/201/25 79/202/25 75/195/25 -f 79/202/25 73/203/25 75/195/25 -f 80/204/26 78/205/26 74/206/26 -f 78/205/26 76/196/26 74/206/26 -f 79/207/9 80/208/9 73/209/9 -f 80/208/9 74/210/9 73/209/9 -f 75/211/10 76/212/10 77/213/10 -f 76/212/10 78/214/10 77/213/10 -f 81/215/19 82/216/19 83/217/19 -f 82/216/19 84/218/19 83/217/19 -f 85/219/20 86/220/20 87/221/20 -f 86/220/20 88/222/20 87/221/20 -f 85/219/21 87/223/21 83/217/21 -f 87/223/21 81/224/21 83/217/21 -f 88/225/22 86/226/22 82/227/22 -f 86/226/22 84/228/22 82/227/22 -f 87/229/9 88/230/9 81/231/9 -f 88/230/9 82/232/9 81/231/9 -f 83/233/10 84/234/10 85/235/10 -f 84/234/10 86/236/10 85/235/10 -f 89/237/1 90/238/1 91/239/1 -f 90/238/1 92/240/1 91/239/1 -f 93/241/2 94/242/2 95/243/2 -f 94/242/2 96/244/2 95/243/2 -f 93/241/7 95/245/7 91/239/7 -f 95/245/7 89/246/7 91/239/7 -f 96/247/8 94/248/8 90/249/8 -f 94/248/8 92/250/8 90/249/8 -f 95/251/9 96/252/9 89/253/9 -f 96/252/9 90/254/9 89/253/9 -f 91/255/10 92/256/10 93/257/10 -f 92/256/10 94/258/10 93/257/10 -f 145/259/1 146/260/1 147/261/1 -f 146/260/1 148/262/1 147/261/1 -f 149/263/2 150/264/2 151/265/2 -f 150/264/2 152/266/2 151/265/2 -f 149/263/15 151/267/15 147/261/15 -f 151/267/15 145/268/15 147/261/15 -f 152/269/16 150/264/16 146/270/16 -f 150/264/16 148/262/16 146/270/16 -f 151/271/17 152/272/17 145/273/17 -f 152/272/17 146/274/17 145/273/17 -f 147/275/18 148/276/18 149/277/18 -f 148/276/18 150/278/18 149/277/18 -f 97/279/1 98/280/1 99/281/1 -f 98/280/1 100/282/1 99/281/1 -f 101/283/2 102/284/2 103/285/2 -f 102/284/2 104/286/2 103/285/2 -f 101/283/7 103/287/7 99/281/7 -f 103/287/7 97/288/7 99/281/7 -f 104/289/8 102/284/8 98/290/8 -f 102/284/8 100/282/8 98/290/8 -f 103/291/9 104/292/9 97/293/9 -f 104/292/9 98/294/9 97/293/9 -f 99/295/10 100/296/10 101/297/10 -f 100/296/10 102/298/10 101/297/10 -f 105/299/23 106/300/23 107/301/23 -f 106/300/23 108/302/23 107/301/23 -f 109/303/24 110/304/24 111/305/24 -f 110/304/24 112/306/24 111/305/24 -f 109/303/25 111/307/25 107/301/25 -f 111/307/25 105/308/25 107/301/25 -f 112/309/26 110/304/26 106/310/26 -f 110/304/26 108/302/26 106/310/26 -f 111/311/9 112/312/9 105/313/9 -f 112/312/9 106/314/9 105/313/9 -f 107/315/10 108/316/10 109/317/10 -f 108/316/10 110/318/10 109/317/10 -f 113/319/19 114/320/19 115/321/19 -f 114/320/19 116/322/19 115/321/19 -f 117/323/20 118/324/20 119/325/20 -f 118/324/20 120/326/20 119/325/20 -f 117/323/21 119/327/21 115/321/21 -f 119/327/21 113/328/21 115/321/21 -f 120/329/22 118/324/22 114/330/22 -f 118/324/22 116/322/22 114/330/22 -f 119/331/9 120/332/9 113/333/9 -f 120/332/9 114/334/9 113/333/9 -f 115/335/10 116/336/10 117/337/10 -f 116/336/10 118/338/10 117/337/10 -f 121/339/23 122/340/23 123/341/23 -f 122/340/23 124/342/23 123/341/23 -f 125/343/24 126/344/24 127/345/24 -f 126/344/24 128/346/24 127/345/24 -f 125/343/25 127/347/25 123/341/25 -f 127/347/25 121/348/25 123/341/25 -f 128/349/26 126/344/26 122/350/26 -f 126/344/26 124/342/26 122/350/26 -f 127/351/9 128/352/9 121/353/9 -f 128/352/9 122/354/9 121/353/9 -f 123/355/10 124/356/10 125/357/10 -f 124/356/10 126/358/10 125/357/10 -f 129/359/1 130/360/1 131/361/1 -f 130/360/1 132/362/1 131/361/1 -f 133/363/2 134/364/2 135/365/2 -f 134/364/2 136/366/2 135/365/2 -f 133/363/7 135/367/7 131/361/7 -f 135/367/7 129/368/7 131/361/7 -f 136/369/8 134/364/8 130/370/8 -f 134/364/8 132/362/8 130/370/8 -f 135/371/9 136/372/9 129/373/9 -f 136/372/9 130/374/9 129/373/9 -f 131/375/10 132/376/10 133/377/10 -f 132/376/10 134/378/10 133/377/10 -f 137/379/19 138/380/19 139/381/19 -f 138/380/19 140/382/19 139/381/19 -f 141/383/20 142/384/20 143/385/20 -f 142/384/20 144/386/20 143/385/20 -f 141/383/21 143/387/21 139/381/21 -f 143/387/21 137/388/21 139/381/21 -f 144/389/22 142/384/22 138/390/22 -f 142/384/22 140/382/22 138/390/22 -f 143/391/9 144/392/9 137/393/9 -f 144/392/9 138/394/9 137/393/9 -f 139/395/10 140/396/10 141/397/10 -f 140/396/10 142/398/10 141/397/10 -o Lever -v 0.019964 0.080214 0.281241 -v 0.019964 0.024971 0.336484 -v 0.019964 0.024971 0.225999 -v 0.019964 -0.030272 0.281241 -v -0.030036 0.024971 0.225999 -v -0.030036 -0.030272 0.281241 -v -0.030036 0.080214 0.281241 -v -0.030036 0.024971 0.336484 -v 0.019964 0.008853 0.262532 -v 0.019964 -0.020018 0.274490 -v 0.019964 0.002874 0.248096 -v 0.019964 -0.025998 0.260055 -v -0.030036 0.002874 0.248096 -v -0.030036 -0.025998 0.260055 -v -0.030036 0.008853 0.262532 -v -0.030036 -0.020018 0.274490 -v 0.019964 -0.014949 0.271104 -v 0.019964 -0.037046 0.293201 -v 0.019964 -0.025997 0.260055 -v 0.019964 -0.048094 0.282152 -v -0.030036 -0.025997 0.260055 -v -0.030036 -0.048094 0.282152 -v -0.030036 -0.014949 0.271104 -v -0.030036 -0.037046 0.293201 -v 0.019964 -0.022610 0.299180 -v 0.019964 -0.037046 0.293200 -v 0.019964 -0.010651 0.270308 -v 0.019964 -0.025087 0.264329 -v -0.030036 -0.010651 0.270308 -v -0.030036 -0.025087 0.264329 -v -0.030036 -0.022610 0.299180 -v -0.030036 -0.037046 0.293200 -v 0.019964 0.038612 0.362084 -v 0.019964 -0.027679 0.295793 -v 0.019964 0.049660 0.351036 -v 0.019964 -0.016631 0.284744 -v -0.030036 0.049660 0.351036 -v -0.030036 -0.016631 0.284744 -v -0.030036 0.038612 0.362084 -v -0.030036 -0.027679 0.295793 -v 0.007464 0.015470 0.337208 -v 0.007464 -0.031405 0.337208 -v 0.007464 0.015470 0.274708 -v 0.007464 -0.031405 0.274708 -v -0.017536 0.015470 0.274708 -v -0.017536 -0.031405 0.274708 -v -0.017536 0.015470 0.337208 -v -0.017536 -0.031405 0.337208 -v 0.007464 0.011902 0.355146 -v 0.007464 -0.031405 0.337208 -v 0.007464 0.035819 0.297404 -v 0.007464 -0.007487 0.279466 -v -0.017536 0.035819 0.297404 -v -0.017536 -0.007487 0.279466 -v -0.017536 0.011902 0.355146 -v -0.017536 -0.031405 0.337208 -v 0.007464 -0.016969 0.331229 -v 0.007464 -0.074712 0.355146 -v 0.007464 -0.022949 0.316793 -v 0.007464 -0.080691 0.340711 -v -0.017536 -0.022949 0.316793 -v -0.017536 -0.080691 0.340711 -v -0.017536 -0.016969 0.331229 -v -0.017536 -0.074712 0.355146 -v 0.007464 -0.084194 0.389997 -v 0.007464 -0.098629 0.384018 -v 0.007464 -0.066255 0.346690 -v 0.007464 -0.080691 0.340711 -v -0.017536 -0.066255 0.346690 -v -0.017536 -0.080691 0.340711 -v -0.017536 -0.084194 0.389997 -v -0.017536 -0.098629 0.384018 -v 0.007464 -0.083004 0.430892 -v 0.007464 -0.098629 0.430892 -v 0.007464 -0.083004 0.384017 -v 0.007464 -0.098629 0.384017 -v -0.017536 -0.083004 0.384017 -v -0.017536 -0.098629 0.384017 -v -0.017536 -0.083004 0.430892 -v -0.017536 -0.098629 0.430892 -v 0.007464 -0.054436 0.452989 -v 0.007464 -0.065484 0.464038 -v 0.007464 -0.087581 0.419844 -v 0.007464 -0.098630 0.430892 -v -0.017536 -0.087581 0.419844 -v -0.017536 -0.098630 0.430892 -v -0.017536 -0.054436 0.452989 -v -0.017536 -0.065484 0.464038 -v 0.007464 -0.182975 0.584708 -v 0.007464 -0.197410 0.578729 -v 0.007464 -0.165036 0.541401 -v 0.007464 -0.179472 0.535422 -v -0.017536 -0.165036 0.541401 -v -0.017536 -0.179472 0.535422 -v -0.017536 -0.182975 0.584708 -v -0.017536 -0.197410 0.578729 -v 0.007464 -0.171016 0.601620 -v 0.007464 -0.185451 0.607599 -v 0.007464 -0.182975 0.572749 -v 0.007464 -0.197410 0.578728 -v -0.017536 -0.182975 0.572749 -v -0.017536 -0.197410 0.578728 -v -0.017536 -0.171016 0.601620 -v -0.017536 -0.185451 0.607599 -v 0.007464 -0.156580 0.619558 -v 0.007464 -0.185451 0.607599 -v 0.007464 -0.150601 0.605123 -v 0.007464 -0.179472 0.593164 -v -0.017536 -0.150601 0.605123 -v -0.017536 -0.179472 0.593164 -v -0.017536 -0.156580 0.619558 -v -0.017536 -0.185451 0.607599 -v 0.007464 -0.113273 0.601620 -v 0.007464 -0.156580 0.619558 -v 0.007464 -0.119253 0.587184 -v 0.007464 -0.162560 0.605123 -v -0.017536 -0.119253 0.587184 -v -0.017536 -0.162560 0.605123 -v -0.017536 -0.113273 0.601620 -v -0.017536 -0.156580 0.619558 -v 0.007464 -0.069079 0.557426 -v 0.007464 -0.113273 0.601620 -v 0.007464 -0.080128 0.546377 -v 0.007464 -0.124322 0.590572 -v -0.017536 -0.080128 0.546377 -v -0.017536 -0.124322 0.590572 -v -0.017536 -0.069079 0.557426 -v -0.017536 -0.113273 0.601620 -v 0.007464 -0.069079 0.557426 -v 0.007464 -0.083515 0.551446 -v 0.007464 -0.033203 0.470812 -v 0.007464 -0.047638 0.464833 -v -0.017536 -0.033203 0.470812 -v -0.017536 -0.047638 0.464833 -v -0.017536 -0.069079 0.557426 -v -0.017536 -0.083515 0.551446 -v 0.007464 -0.102132 0.480179 -v 0.007464 -0.116568 0.474199 -v 0.007464 -0.084194 0.436872 -v 0.007464 -0.098629 0.430892 -v -0.017536 -0.084194 0.436872 -v -0.017536 -0.098629 0.430892 -v -0.017536 -0.102132 0.480179 -v -0.017536 -0.116568 0.474199 -v 0.007464 -0.168423 0.546470 -v 0.007464 -0.179472 0.535422 -v 0.007464 -0.102132 0.480179 -v 0.007464 -0.113181 0.469131 -v -0.017536 -0.102132 0.480179 -v -0.017536 -0.113181 0.469131 -v -0.017536 -0.168423 0.546470 -v -0.017536 -0.179472 0.535422 -v 0.007464 -0.022177 0.481976 -v 0.007464 -0.065484 0.464038 -v 0.007464 -0.016197 0.467541 -v 0.007464 -0.059504 0.449602 -v -0.017536 -0.016197 0.467541 -v -0.017536 -0.059504 0.449602 -v -0.017536 -0.022177 0.481976 -v -0.017536 -0.065484 0.464038 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vn 1.0000 0.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 0.0000 0.7071 -0.7071 -vn 0.0000 -0.7071 0.7071 -vn 0.0000 0.7071 0.7071 -vn 0.0000 -0.7071 -0.7071 -vn 0.0000 0.9239 -0.3827 -vn 0.0000 -0.9239 0.3827 -vn 0.0000 0.3827 0.9239 -vn 0.0000 -0.3827 -0.9239 -vn 0.0000 0.9239 0.3827 -vn 0.0000 -0.9239 -0.3827 -vn 0.0000 -0.3827 0.9239 -vn 0.0000 0.3827 -0.9239 vn 0.0000 1.0000 0.0000 -vn 0.0000 -1.0000 -0.0000 +vn 0.0000 0.7071 -0.7071 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.9239 -0.3827 +vn 0.0000 0.9952 -0.0980 +vn 0.0000 0.0980 -0.9952 +vn 0.0000 0.3827 -0.9239 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.4719 -0.8817 +vn 0.0000 0.8321 -0.5547 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 -0.9571 0.2898 +vn 0.0000 -0.4719 0.8817 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.9571 0.2898 +vn 0.0000 0.0985 0.9951 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.9239 0.3827 +vn 0.0000 0.9571 -0.2898 +vn 0.0000 0.3827 0.9239 +s off +f 21/1/1 11/2/1 22/3/1 +f 4/4/2 5/5/2 3/6/2 +f 3/7/3 9/8/3 4/9/3 +f 9/8/4 24/10/4 23/11/4 +f 6/12/1 8/13/1 5/5/1 +f 7/14/2 12/15/2 8/16/2 +f 23/17/5 7/18/5 6/19/5 +f 24/20/6 10/21/6 3/6/6 +f 19/22/5 1/23/5 7/18/5 +f 8/16/6 12/15/6 15/24/6 +f 50/25/5 44/26/5 46/27/5 +f 47/28/6 45/29/6 43/30/6 +f 42/31/5 52/32/5 40/33/5 +f 51/34/6 41/35/6 39/36/6 +f 44/26/5 54/37/5 42/31/5 +f 53/38/6 43/30/6 41/35/6 +f 60/39/5 34/40/5 36/41/5 +f 57/42/6 35/43/6 33/44/6 +f 64/45/5 30/46/5 32/47/5 +f 61/48/6 31/49/6 29/50/6 +f 34/40/5 64/45/5 32/47/5 +f 63/51/6 33/44/6 31/49/6 +f 36/41/5 66/52/5 60/39/5 +f 38/53/5 68/54/5 66/52/5 +f 35/43/6 65/55/6 37/56/6 +f 37/56/6 67/57/6 39/58/6 +f 56/59/5 72/60/5 68/54/5 +f 39/58/6 71/61/6 55/62/6 +f 30/46/5 70/63/5 26/64/5 +f 29/50/6 69/65/6 61/48/6 +f 70/63/5 72/60/5 56/59/5 +f 55/62/6 71/61/6 69/65/6 +f 21/1/1 12/15/1 11/2/1 +f 4/4/2 6/12/2 5/5/2 +f 3/7/3 10/66/3 9/8/3 +f 9/8/4 10/66/4 24/10/4 +f 6/12/1 7/67/1 8/13/1 +f 7/14/2 11/68/2 12/15/2 +f 6/19/5 4/69/5 23/17/5 +f 4/69/5 9/70/5 23/17/5 +f 23/17/5 20/71/5 7/18/5 +f 3/6/6 5/5/6 24/20/6 +f 5/5/6 8/16/6 24/20/6 +f 8/16/6 18/72/6 24/20/6 +f 1/23/5 2/73/5 7/18/5 +f 2/73/5 13/74/5 11/75/5 +f 7/18/5 2/73/5 11/75/5 +f 13/74/5 22/76/5 11/75/5 +f 7/18/5 20/71/5 19/22/5 +f 12/15/6 21/1/6 14/77/6 +f 14/77/6 15/24/6 12/15/6 +f 15/24/6 16/78/6 8/16/6 +f 16/78/6 17/79/6 8/16/6 +f 17/79/6 18/72/6 8/16/6 +f 50/25/5 48/80/5 44/26/5 +f 47/28/6 49/81/6 45/29/6 +f 42/31/5 54/82/5 52/32/5 +f 51/34/6 53/83/6 41/35/6 +f 44/26/5 48/84/5 54/37/5 +f 53/38/6 47/85/6 43/30/6 +f 60/39/5 58/86/5 34/40/5 +f 57/42/6 59/87/6 35/43/6 +f 64/45/5 62/88/5 30/46/5 +f 61/48/6 63/51/6 31/49/6 +f 34/40/5 58/86/5 64/45/5 +f 63/51/6 57/42/6 33/44/6 +f 36/41/5 38/53/5 66/52/5 +f 38/53/5 40/89/5 68/54/5 +f 35/43/6 59/87/6 65/55/6 +f 37/56/6 65/55/6 67/57/6 +f 68/54/5 40/89/5 56/59/5 +f 40/89/5 52/90/5 56/59/5 +f 55/62/6 51/91/6 39/58/6 +f 39/58/6 67/57/6 71/61/6 +f 30/46/5 62/88/5 70/63/5 +f 29/50/6 25/92/6 69/65/6 +f 27/93/5 26/64/5 56/59/5 +f 26/64/5 70/63/5 56/59/5 +f 69/65/6 25/92/6 55/62/6 +f 25/92/6 28/94/6 55/62/6 +s 1 +f 19/95/7 18/96/8 17/97/7 +f 13/98/9 15/99/10 14/77/9 +f 14/77/9 22/100/11 13/98/9 +f 2/101/10 16/102/4 15/99/10 +f 20/103/8 24/10/3 18/96/8 +f 1/104/4 17/97/7 16/102/4 +f 29/105/12 26/106/13 25/107/13 +f 31/108/14 30/109/12 29/105/12 +f 33/110/15 32/111/14 31/108/14 +f 35/112/16 34/113/15 33/110/15 +f 37/114/17 36/115/16 35/112/16 +f 39/116/2 38/117/17 37/114/17 +f 41/35/18 40/33/1 39/36/1 +f 43/30/19 42/31/18 41/35/18 +f 45/29/2 44/26/19 43/30/19 +f 47/28/10 50/118/11 49/81/11 +f 48/119/10 53/38/7 54/120/7 +f 51/34/20 54/121/7 53/83/7 +f 55/122/21 52/123/20 51/34/20 +f 56/124/21 28/125/22 27/126/22 +f 57/127/23 60/128/24 59/129/24 +f 58/130/23 63/131/25 64/132/25 +f 61/133/17 64/132/25 63/131/25 +f 66/134/12 59/129/24 60/128/24 +f 68/135/14 65/136/12 66/137/12 +f 69/138/16 62/139/17 61/133/17 +f 71/140/15 70/141/16 69/138/16 +f 72/142/15 67/143/14 68/135/14 +f 19/95/7 20/103/8 18/96/8 +f 13/98/9 2/101/10 15/99/10 +f 14/77/9 21/1/11 22/100/11 +f 2/101/10 1/104/4 16/102/4 +f 20/103/8 23/11/3 24/10/3 +f 1/104/4 19/95/7 17/97/7 +f 29/105/12 30/109/12 26/106/13 +f 31/108/14 32/111/14 30/109/12 +f 33/110/15 34/113/15 32/111/14 +f 35/112/16 36/115/16 34/113/15 +f 37/114/17 38/117/17 36/115/16 +f 39/116/2 40/144/2 38/117/17 +f 41/35/18 42/31/18 40/33/1 +f 43/30/19 44/26/19 42/31/18 +f 45/29/2 46/27/2 44/26/19 +f 47/28/10 48/145/10 50/118/11 +f 48/119/10 47/85/10 53/38/7 +f 51/34/20 52/123/20 54/121/7 +f 55/122/21 56/124/21 52/123/20 +f 56/124/21 55/122/21 28/125/22 +f 57/127/23 58/130/23 60/128/24 +f 58/130/23 57/127/23 63/131/25 +f 61/133/17 62/139/17 64/132/25 +f 66/134/12 65/146/12 59/129/24 +f 68/135/14 67/143/14 65/136/12 +f 69/138/16 70/141/16 62/139/17 +f 71/140/15 72/142/15 70/141/16 +f 72/142/15 71/140/15 67/143/14 +o Stock +v -0.375000 -0.375000 -5.562500 +v -0.375000 -0.625000 -5.437500 +v -0.375000 -1.375000 -8.000000 +v -0.375000 0.000000 -5.562500 +v -0.375000 -0.125000 -8.000000 +v 0.375000 -0.375000 -5.562500 +v 0.375000 -0.625000 -5.437500 +v 0.375000 -1.375000 -8.000000 +v 0.375000 0.000000 -5.562500 +v 0.375000 -0.125000 -8.000000 +v 0.250000 0.000000 -8.000000 +v -0.250000 0.000000 -8.000000 +v -0.250000 -1.500000 -8.000000 +v 0.250000 -1.500000 -8.000000 +v 0.250000 -0.750000 -5.375000 +v -0.250000 -0.750000 -5.375000 +v 0.250000 0.125000 -5.562500 +v -0.250000 0.125000 -5.562500 +vt 0.803279 0.803738 +vt 0.721311 0.803738 +vt 0.803279 0.691589 +vt 0.520492 0.691589 +vt 0.520492 0.803738 +vt 0.495902 0.710280 +vt 0.545082 0.691589 +vt 0.553279 0.710280 +vt 0.713115 0.785047 +vt 0.713115 0.710280 +vt 0.721311 0.691589 +vt 0.811475 0.710280 +vt 0.811475 0.785047 +vt 0.504098 0.803738 +vt 0.495902 0.785047 +vt 0.504098 0.691589 +vt 0.553279 0.785047 +vt 0.545082 0.803738 +vt 0.553279 0.813084 +vt 0.536885 0.392523 +vt 0.713115 0.364486 +vt 0.713115 0.392523 +vt 0.553279 0.682243 +vt 0.713115 0.682243 +vt 0.536885 0.467290 +vt 0.713115 0.495327 +vt 0.536885 0.495327 +vt 0.713115 1.000000 +vt 0.553279 0.869159 +vt 0.713115 0.813084 +vt 0.553279 0.626168 +vt 0.545082 0.588785 +vt 0.536885 0.364486 +vt 0.713115 0.467290 +vt 0.545082 0.906542 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.4472 0.8944 +vn 0.0000 0.0000 1.0000 +vn -0.3867 0.9210 -0.0472 +vn -0.9193 0.3932 -0.0202 +vn -0.3779 0.9246 -0.0474 +vn -0.3846 -0.8870 0.2557 +vn -0.8923 -0.4340 0.1241 +vn -0.3487 -0.9012 0.2575 +vn 0.3867 0.9210 -0.0472 +vn 0.9193 0.3932 -0.0202 +vn 0.9281 0.3719 -0.0191 +vn 0.3846 -0.8870 0.2557 +vn 0.8923 -0.4340 0.1241 +vn 0.9180 -0.3806 0.1114 +vn 0.3779 0.9246 -0.0474 +vn -1.0000 0.0000 0.0000 +vn -0.9281 0.3719 -0.0191 +vn 1.0000 0.0000 0.0000 +vn -0.9180 -0.3806 0.1114 +vn 0.3487 -0.9012 0.2575 +s off +f 75/147/26 77/148/26 80/149/26 +f 78/150/27 73/151/27 87/152/27 +f 78/150/28 81/153/28 89/154/28 +f 77/148/26 84/155/26 83/156/26 +f 83/156/26 82/157/26 77/148/26 +f 82/157/26 80/149/26 77/148/26 +f 80/149/26 86/158/26 85/159/26 +f 85/159/26 75/147/26 80/149/26 +f 74/160/27 88/161/27 73/151/27 +f 88/161/27 87/152/27 73/151/27 +f 87/152/27 79/162/27 78/150/27 +f 89/154/28 90/163/28 73/151/28 +f 90/163/28 76/164/28 73/151/28 +f 73/151/28 78/150/28 89/154/28 +s 1 +f 84/155/29 76/165/30 90/163/31 +f 88/166/32 75/167/33 85/168/34 +f 83/156/35 81/169/36 82/170/37 +f 87/171/38 80/172/39 79/173/40 +f 89/154/41 84/155/29 90/163/31 +f 85/168/34 87/171/38 88/166/32 +f 75/174/33 73/175/42 77/176/43 +f 80/172/39 78/177/44 79/178/40 +f 78/177/44 82/170/37 81/169/36 +f 77/176/43 73/175/42 76/165/30 +f 84/155/29 77/176/43 76/165/30 +f 88/166/32 74/179/45 75/167/33 +f 83/156/35 89/154/41 81/169/36 +f 87/171/38 86/180/46 80/172/39 +f 89/154/41 83/156/35 84/155/29 +f 85/168/34 86/180/46 87/171/38 +f 75/174/33 74/181/45 73/175/42 +f 80/172/39 82/170/37 78/177/44 +o Shell +v 0.000000 1.625000 -2.375000 +v -0.062500 1.608253 -2.375000 +v -0.108253 1.562500 -2.375000 +v -0.125000 1.500000 -2.375000 +v -0.108253 1.437500 -2.375000 +v -0.062500 1.391747 -2.375000 +v 0.000000 1.375000 -2.375000 +v 0.062500 1.391747 -2.375000 +v 0.108253 1.437500 -2.375000 +v 0.125000 1.500000 -2.375000 +v 0.108253 1.562500 -2.375000 +v 0.062500 1.608253 -2.375000 +v 0.000000 1.625000 -1.625000 +v -0.062500 1.608253 -1.625000 +v -0.108253 1.562500 -1.625000 +v -0.125000 1.500000 -1.625000 +v -0.108253 1.437500 -1.625000 +v -0.062500 1.391747 -1.625000 +v 0.000000 1.375000 -1.625000 +v 0.062500 1.391747 -1.625000 +v 0.108253 1.437500 -1.625000 +v 0.125000 1.500000 -1.625000 +v 0.108253 1.562500 -1.625000 +v 0.062500 1.608253 -1.625000 +v 0.000000 1.640625 -2.375000 +v -0.070312 1.621785 -2.375000 +v -0.121785 1.570312 -2.375000 +v -0.140625 1.500000 -2.375000 +v -0.121785 1.429688 -2.375000 +v -0.070312 1.378215 -2.375000 +v 0.000000 1.359375 -2.375000 +v 0.070312 1.378215 -2.375000 +v 0.121785 1.429688 -2.375000 +v 0.140625 1.500000 -2.375000 +v 0.121785 1.570312 -2.375000 +v 0.070312 1.621785 -2.375000 +v 0.000000 1.640625 -2.437500 +v -0.070312 1.621785 -2.437500 +v -0.121785 1.570312 -2.437500 +v -0.140625 1.500000 -2.437500 +v -0.121785 1.429688 -2.437500 +v -0.070312 1.378215 -2.437500 +v 0.000000 1.359375 -2.437500 +v 0.070312 1.378215 -2.437500 +v 0.121785 1.429688 -2.437500 +v 0.140625 1.500000 -2.437500 +v 0.121785 1.570312 -2.437500 +v 0.070312 1.621785 -2.437500 +vt 0.778689 0.803764 +vt 0.785777 0.813097 +vt 0.778689 0.841096 +vt 0.762295 0.878505 +vt 0.766393 0.869159 +vt 0.766393 0.878505 +vt 0.762295 0.822430 +vt 0.766393 0.831776 +vt 0.762295 0.831776 +vt 0.762295 0.906542 +vt 0.766393 0.915888 +vt 0.762295 0.915888 +vt 0.766393 0.887850 +vt 0.762295 0.887850 +vt 0.762295 0.841121 +vt 0.766393 0.841121 +vt 0.762295 0.813084 +vt 0.766393 0.803738 +vt 0.766393 0.813084 +vt 0.762295 0.897196 +vt 0.766393 0.897196 +vt 0.766393 0.850467 +vt 0.762295 0.850467 +vt 0.762295 0.859813 +vt 0.762295 0.869159 +vt 0.766393 0.822430 +vt 0.766393 0.906542 +vt 0.766393 0.859813 +vt 0.787992 0.831765 +vt 0.795082 0.803760 +vt 0.802173 0.831765 +vt 0.774596 0.838595 +vt 0.771600 0.813097 +vt 0.771600 0.831763 +vt 0.770503 0.822430 +vt 0.774596 0.806265 +vt 0.782781 0.806265 +vt 0.786874 0.822430 +vt 0.785777 0.831763 +vt 0.782781 0.838595 +vt 0.762295 0.803738 +vt 0.799176 0.838599 +vt 0.795082 0.841100 +vt 0.790989 0.838599 +vt 0.786895 0.822430 +vt 0.787992 0.813095 +vt 0.790989 0.806261 +vt 0.799176 0.806261 +vt 0.802173 0.813095 +vt 0.803269 0.822430 +vt 0.713115 0.850467 +vt 0.713115 0.897196 +vt 0.713115 0.906542 +vt 0.713115 0.803738 +vt 0.713115 0.813084 +vt 0.713115 0.859813 +vt 0.713115 0.822430 +vt 0.713115 0.869159 +vt 0.713115 0.831776 +vt 0.713115 0.878505 +vt 0.713115 0.841121 +vt 0.713115 0.887850 +vt 0.770492 0.813084 +vt 0.770492 0.897196 +vt 0.770492 0.850467 +vt 0.770492 0.869159 +vt 0.770492 0.822430 +vt 0.770492 0.906542 +vt 0.770492 0.859813 +vt 0.770492 0.878505 +vt 0.770492 0.831776 +vt 0.770492 0.915888 +vt 0.770492 0.887850 +vt 0.770492 0.841121 +vt 0.713115 0.915888 +vt 0.770492 0.803738 vn 0.0000 0.0000 1.0000 vn 0.0000 0.0000 -1.0000 +vn -0.0000 1.0000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 1.0000 0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn -1.0000 -0.0000 0.0000 s off -f 153/399/27 154/400/27 155/401/27 -f 154/400/27 156/402/27 155/401/27 -f 157/403/28 158/404/28 159/405/28 -f 158/404/28 160/406/28 159/405/28 -f 157/403/29 159/407/29 155/401/29 -f 159/407/29 153/408/29 155/401/29 -f 160/409/30 158/404/30 154/410/30 -f 158/404/30 156/402/30 154/410/30 -f 159/411/31 160/412/31 153/413/31 -f 160/412/31 154/414/31 153/413/31 -f 155/415/32 156/416/32 157/417/32 -f 156/416/32 158/418/32 157/417/32 -f 161/419/27 162/420/27 163/421/27 -f 162/420/27 164/422/27 163/421/27 -f 165/423/28 166/424/28 167/425/28 -f 166/424/28 168/426/28 167/425/28 -f 165/423/33 167/427/33 163/421/33 -f 167/427/33 161/428/33 163/421/33 -f 168/429/34 166/424/34 162/430/34 -f 166/424/34 164/422/34 162/430/34 -f 167/431/35 168/432/35 161/433/35 -f 168/432/35 162/434/35 161/433/35 -f 163/435/36 164/436/36 165/437/36 -f 164/436/36 166/438/36 165/437/36 -f 169/439/27 170/440/27 171/441/27 -f 170/440/27 172/442/27 171/441/27 -f 173/443/28 174/444/28 175/445/28 -f 174/444/28 176/446/28 175/445/28 -f 173/443/29 175/447/29 171/441/29 -f 175/447/29 169/448/29 171/441/29 -f 176/449/30 174/444/30 170/450/30 -f 174/444/30 172/442/30 170/450/30 -f 175/451/31 176/452/31 169/453/31 -f 176/452/31 170/454/31 169/453/31 -f 171/455/32 172/456/32 173/457/32 -f 172/456/32 174/458/32 173/457/32 -f 177/459/27 178/460/27 179/461/27 -f 178/460/27 180/462/27 179/461/27 -f 181/463/28 182/464/28 183/465/28 -f 182/464/28 184/466/28 183/465/28 -f 181/463/37 183/467/37 179/461/37 -f 183/467/37 177/468/37 179/461/37 -f 184/469/38 182/464/38 178/470/38 -f 182/464/38 180/462/38 178/470/38 -f 183/471/39 184/472/39 177/473/39 -f 184/472/39 178/474/39 177/473/39 -f 179/475/40 180/476/40 181/477/40 -f 180/476/40 182/478/40 181/477/40 -f 185/479/27 186/480/27 187/481/27 -f 186/480/27 188/482/27 187/481/27 -f 189/483/28 190/484/28 191/485/28 -f 190/484/28 192/486/28 191/485/28 -f 189/483/31 191/487/31 187/481/31 -f 191/487/31 185/488/31 187/481/31 -f 192/489/32 190/484/32 186/490/32 -f 190/484/32 188/482/32 186/490/32 -f 191/491/30 192/492/30 185/493/30 -f 192/492/30 186/494/30 185/493/30 -f 187/495/29 188/496/29 189/497/29 -f 188/496/29 190/498/29 189/497/29 -f 193/499/27 194/500/27 195/501/27 -f 194/500/27 196/502/27 195/501/27 -f 197/503/28 198/504/28 199/505/28 -f 198/504/28 200/506/28 199/505/28 -f 197/503/41 199/507/41 195/501/41 -f 199/507/41 193/508/41 195/501/41 -f 200/509/42 198/504/42 194/510/42 -f 198/504/42 196/502/42 194/510/42 -f 199/511/43 200/512/43 193/513/43 -f 200/512/43 194/514/43 193/513/43 -f 195/515/44 196/516/44 197/517/44 -f 196/516/44 198/518/44 197/517/44 -f 201/519/27 202/520/27 203/521/27 -f 202/520/27 204/522/27 203/521/27 -f 205/523/28 206/524/28 207/525/28 -f 206/524/28 208/526/28 207/525/28 -f 205/523/37 207/527/37 203/521/37 -f 207/527/37 201/528/37 203/521/37 -f 208/529/38 206/524/38 202/530/38 -f 206/524/38 204/522/38 202/530/38 -f 207/531/39 208/532/39 201/533/39 -f 208/532/39 202/534/39 201/533/39 -f 203/535/40 204/536/40 205/537/40 -f 204/536/40 206/538/40 205/537/40 -f 209/539/27 210/540/27 211/541/27 -f 210/540/27 212/542/27 211/541/27 -f 213/543/28 214/544/28 215/545/28 -f 214/544/28 216/546/28 215/545/28 -f 213/543/33 215/547/33 211/541/33 -f 215/547/33 209/548/33 211/541/33 -f 216/549/34 214/544/34 210/550/34 -f 214/544/34 212/542/34 210/550/34 -f 215/551/35 216/552/35 209/553/35 -f 216/552/35 210/554/35 209/553/35 -f 211/555/36 212/556/36 213/557/36 -f 212/556/36 214/558/36 213/557/36 -f 217/559/27 218/560/27 219/561/27 -f 218/560/27 220/562/27 219/561/27 -f 221/563/28 222/564/28 223/565/28 -f 222/564/28 224/566/28 223/565/28 -f 221/563/37 223/567/37 219/561/37 -f 223/567/37 217/568/37 219/561/37 -f 224/569/38 222/564/38 218/570/38 -f 222/564/38 220/562/38 218/570/38 -f 223/571/39 224/572/39 217/573/39 -f 224/572/39 218/574/39 217/573/39 -f 219/575/40 220/576/40 221/577/40 -f 220/576/40 222/578/40 221/577/40 -f 225/579/27 226/580/27 227/581/27 -f 226/580/27 228/582/27 227/581/27 -f 229/583/28 230/584/28 231/585/28 -f 230/584/28 232/586/28 231/585/28 -f 229/583/41 231/587/41 227/581/41 -f 231/587/41 225/588/41 227/581/41 -f 232/589/42 230/584/42 226/590/42 -f 230/584/42 228/582/42 226/590/42 -f 231/591/43 232/592/43 225/593/43 -f 232/592/43 226/594/43 225/593/43 -f 227/595/44 228/596/44 229/597/44 -f 228/596/44 230/598/44 229/597/44 -f 233/599/27 234/600/27 235/601/27 -f 234/600/27 236/602/27 235/601/27 -f 237/603/28 238/604/28 239/605/28 -f 238/604/28 240/606/28 239/605/28 -f 237/603/29 239/607/29 235/601/29 -f 239/607/29 233/608/29 235/601/29 -f 240/609/30 238/604/30 234/610/30 -f 238/604/30 236/602/30 234/610/30 -f 239/611/31 240/612/31 233/613/31 -f 240/612/31 234/614/31 233/613/31 -f 235/615/32 236/616/32 237/617/32 -f 236/616/32 238/618/32 237/617/32 -f 241/619/27 242/620/27 243/621/27 -f 242/620/27 244/622/27 243/621/27 -f 245/623/28 246/624/28 247/625/28 -f 246/624/28 248/626/28 247/625/28 -f 245/623/37 247/627/37 243/621/37 -f 247/627/37 241/628/37 243/621/37 -f 248/629/38 246/624/38 242/630/38 -f 246/624/38 244/622/38 242/630/38 -f 247/631/39 248/632/39 241/633/39 -f 248/632/39 242/634/39 241/633/39 -f 243/635/40 244/636/40 245/637/40 -f 244/636/40 246/638/40 245/637/40 -f 249/639/27 250/640/27 251/641/27 -f 250/640/27 252/642/27 251/641/27 -f 253/643/28 254/644/28 255/645/28 -f 254/644/28 256/646/28 255/645/28 -f 253/643/33 255/647/33 251/641/33 -f 255/647/33 249/648/33 251/641/33 -f 256/649/34 254/644/34 250/650/34 -f 254/644/34 252/642/34 250/650/34 -f 255/651/35 256/652/35 249/653/35 -f 256/652/35 250/654/35 249/653/35 -f 251/655/36 252/656/36 253/657/36 -f 252/656/36 254/658/36 253/657/36 -f 257/659/27 258/660/27 259/661/27 -f 258/660/27 260/662/27 259/661/27 -f 261/663/28 262/664/28 263/665/28 -f 262/664/28 264/666/28 263/665/28 -f 261/663/37 263/667/37 259/661/37 -f 263/667/37 257/668/37 259/661/37 -f 264/669/38 262/664/38 258/670/38 -f 262/664/38 260/662/38 258/670/38 -f 263/671/39 264/672/39 257/673/39 -f 264/672/39 258/674/39 257/673/39 -f 259/675/40 260/676/40 261/677/40 -f 260/676/40 262/678/40 261/677/40 -f 265/679/27 266/680/27 267/681/27 -f 266/680/27 268/682/27 267/681/27 -f 269/683/28 270/684/28 271/685/28 -f 270/684/28 272/686/28 271/685/28 -f 269/683/33 271/687/33 267/681/33 -f 271/687/33 265/688/33 267/681/33 -f 272/689/34 270/684/34 266/690/34 -f 270/684/34 268/682/34 266/690/34 -f 271/691/35 272/692/35 265/693/35 -f 272/692/35 266/694/35 265/693/35 -f 267/695/36 268/696/36 269/697/36 -f 268/696/36 270/698/36 269/697/36 -f 273/699/27 274/700/27 275/701/27 -f 274/700/27 276/702/27 275/701/27 -f 277/703/28 278/704/28 279/705/28 -f 278/704/28 280/706/28 279/705/28 -f 277/703/29 279/707/29 275/701/29 -f 279/707/29 273/708/29 275/701/29 -f 280/709/30 278/704/30 274/710/30 -f 278/704/30 276/702/30 274/710/30 -f 279/711/31 280/712/31 273/713/31 -f 280/712/31 274/714/31 273/713/31 -f 275/715/32 276/716/32 277/717/32 -f 276/716/32 278/718/32 277/717/32 -f 281/719/27 282/720/27 283/721/27 -f 282/720/27 284/722/27 283/721/27 -f 285/723/28 286/724/28 287/725/28 -f 286/724/28 288/726/28 287/725/28 -f 285/723/37 287/727/37 283/721/37 -f 287/727/37 281/728/37 283/721/37 -f 288/729/38 286/724/38 282/730/38 -f 286/724/38 284/722/38 282/730/38 -f 287/731/39 288/732/39 281/733/39 -f 288/732/39 282/734/39 281/733/39 -f 283/735/40 284/736/40 285/737/40 -f 284/736/40 286/738/40 285/737/40 -f 289/739/27 290/740/27 291/741/27 -f 290/740/27 292/742/27 291/741/27 -f 293/743/28 294/744/28 295/745/28 -f 294/744/28 296/746/28 295/745/28 -f 293/743/37 295/747/37 291/741/37 -f 295/747/37 289/748/37 291/741/37 -f 296/749/38 294/744/38 290/750/38 -f 294/744/38 292/742/38 290/750/38 -f 295/751/39 296/752/39 289/753/39 -f 296/752/39 290/754/39 289/753/39 -f 291/755/40 292/756/40 293/757/40 -f 292/756/40 294/758/40 293/757/40 -f 297/759/27 298/760/27 299/761/27 -f 298/760/27 300/762/27 299/761/27 -f 301/763/28 302/764/28 303/765/28 -f 302/764/28 304/766/28 303/765/28 -f 301/763/31 303/767/31 299/761/31 -f 303/767/31 297/768/31 299/761/31 -f 304/769/32 302/764/32 298/770/32 -f 302/764/32 300/762/32 298/770/32 -f 303/771/30 304/772/30 297/773/30 -f 304/772/30 298/774/30 297/773/30 -f 299/775/29 300/776/29 301/777/29 -f 300/776/29 302/778/29 301/777/29 -f 305/779/27 306/780/27 307/781/27 -f 306/780/27 308/782/27 307/781/27 -f 309/783/28 310/784/28 311/785/28 -f 310/784/28 312/786/28 311/785/28 -f 309/783/37 311/787/37 307/781/37 -f 311/787/37 305/788/37 307/781/37 -f 312/789/38 310/784/38 306/790/38 -f 310/784/38 308/782/38 306/790/38 -f 311/791/39 312/792/39 305/793/39 -f 312/792/39 306/794/39 305/793/39 -f 307/795/40 308/796/40 309/797/40 -f 308/796/40 310/798/40 309/797/40 +f 109/182/47 111/183/47 103/184/47 +f 93/185/47 116/186/47 117/187/47 +f 99/188/47 124/189/47 100/190/47 +f 96/191/47 121/192/47 97/193/47 +f 93/185/47 118/194/47 94/195/47 +f 101/196/47 124/189/47 125/197/47 +f 98/198/47 121/199/47 122/200/47 +f 95/201/47 118/194/47 119/202/47 +f 101/196/47 126/203/47 102/204/47 +f 91/205/47 116/186/47 92/206/47 +f 98/198/47 123/207/47 99/188/47 +f 96/191/47 119/202/47 120/208/47 +f 91/205/47 126/203/47 115/209/47 +f 137/210/48 133/211/48 129/212/48 +f 103/184/47 104/213/47 107/214/47 +f 104/213/47 105/215/47 107/214/47 +f 105/215/47 106/216/47 107/214/47 +f 107/214/47 108/217/47 109/182/47 +f 109/182/47 110/218/47 111/183/47 +f 111/183/47 112/219/47 113/220/47 +f 113/220/47 114/221/47 111/183/47 +f 114/221/47 103/184/47 111/183/47 +f 107/214/47 109/182/47 103/184/47 +f 93/185/47 92/206/47 116/186/47 +f 99/188/47 123/207/47 124/189/47 +f 96/191/47 120/208/47 121/192/47 +f 93/185/47 117/187/47 118/194/47 +f 101/196/47 100/190/47 124/189/47 +f 98/198/47 97/222/47 121/199/47 +f 95/201/47 94/195/47 118/194/47 +f 101/196/47 125/197/47 126/203/47 +f 91/205/47 115/209/47 116/186/47 +f 98/198/47 122/200/47 123/207/47 +f 96/191/47 95/201/47 119/202/47 +f 91/205/47 102/204/47 126/203/47 +f 129/212/48 128/223/48 127/224/48 +f 127/224/48 138/225/48 129/212/48 +f 138/225/48 137/210/48 129/212/48 +f 137/210/48 136/226/48 133/211/48 +f 136/226/48 135/227/48 133/211/48 +f 135/227/48 134/228/48 133/211/48 +f 133/211/48 132/229/48 131/230/48 +f 131/230/48 130/231/48 133/211/48 +f 130/231/48 129/212/48 133/211/48 +s 1 +f 91/205/49 114/232/50 102/204/50 +f 96/191/51 107/233/52 95/201/52 +f 97/193/53 108/234/51 96/191/51 +f 98/198/54 109/235/53 97/222/53 +f 99/188/55 110/236/54 98/198/54 +f 92/206/56 103/237/49 91/205/49 +f 100/190/57 111/238/55 99/188/55 +f 93/185/58 104/239/56 92/206/56 +f 101/196/59 112/240/57 100/190/57 +f 94/195/60 105/241/58 93/185/58 +f 102/204/50 113/242/59 101/196/59 +f 95/201/52 106/243/60 94/195/60 +f 121/199/53 134/244/54 122/200/54 +f 118/194/60 131/245/52 119/202/52 +f 125/197/59 138/246/50 126/203/50 +f 115/209/49 128/247/56 116/186/56 +f 122/200/54 135/248/55 123/207/55 +f 119/202/52 132/249/51 120/208/51 +f 126/203/50 127/250/49 115/209/49 +f 116/186/56 129/251/58 117/187/58 +f 123/207/55 136/252/57 124/189/57 +f 120/208/51 133/253/53 121/192/53 +f 117/187/58 130/254/60 118/194/60 +f 124/189/57 137/255/59 125/197/59 +f 91/205/49 103/237/49 114/232/50 +f 96/191/51 108/234/51 107/233/52 +f 97/193/53 109/256/53 108/234/51 +f 98/198/54 110/236/54 109/235/53 +f 99/188/55 111/238/55 110/236/54 +f 92/206/56 104/239/56 103/237/49 +f 100/190/57 112/240/57 111/238/55 +f 93/185/58 105/241/58 104/239/56 +f 101/196/59 113/242/59 112/240/57 +f 94/195/60 106/243/60 105/241/58 +f 102/204/50 114/232/50 113/242/59 +f 95/201/52 107/233/52 106/243/60 +f 121/199/53 133/257/53 134/244/54 +f 118/194/60 130/254/60 131/245/52 +f 125/197/59 137/255/59 138/246/50 +f 115/209/49 127/250/49 128/247/56 +f 122/200/54 134/244/54 135/248/55 +f 119/202/52 131/245/52 132/249/51 +f 126/203/50 138/246/50 127/250/49 +f 116/186/56 128/247/56 129/251/58 +f 123/207/55 135/248/55 136/252/57 +f 120/208/51 132/249/51 133/253/53 +f 117/187/58 129/251/58 130/254/60 +f 124/189/57 136/252/57 137/255/59 +o Barrel +v 0.000000 1.187500 8.000000 +v -0.093750 1.162380 8.000000 +v -0.162380 1.093750 8.000000 +v -0.187500 1.000000 8.000000 +v -0.162380 0.906250 8.000000 +v -0.093750 0.837620 8.000000 +v 0.000000 0.812500 8.000000 +v 0.093750 0.837620 8.000000 +v 0.162380 0.906250 8.000000 +v 0.187500 1.000000 8.000000 +v 0.162380 1.093750 8.000000 +v 0.093750 1.162380 8.000000 +v 0.000000 1.187500 3.750000 +v -0.093750 1.162380 3.750000 +v -0.162380 1.093750 3.750000 +v -0.187500 1.000000 3.750000 +v -0.162380 0.906250 3.750000 +v -0.093750 0.837620 3.750000 +v 0.000000 0.812500 3.750000 +v 0.093750 0.837620 3.750000 +v 0.162380 0.906250 3.750000 +v 0.187500 1.000000 3.750000 +v 0.162380 1.093750 3.750000 +v 0.093750 1.162380 3.750000 +v 0.000000 1.125000 8.000000 +v -0.062500 1.108253 8.000000 +v -0.108253 1.062500 8.000000 +v -0.125000 1.000000 8.000000 +v -0.108253 0.937500 8.000000 +v -0.062500 0.891747 8.000000 +v 0.000000 0.875000 8.000000 +v 0.062500 0.891747 8.000000 +v 0.108253 0.937500 8.000000 +v 0.125000 1.000000 8.000000 +v 0.108253 1.062500 8.000000 +v 0.062500 1.108253 8.000000 +v 0.000000 1.125000 7.000000 +v -0.062500 1.108253 7.000000 +v -0.108253 1.062500 7.000000 +v -0.125000 1.000000 7.000000 +v -0.108253 0.937500 7.000000 +v -0.062500 0.891747 7.000000 +v 0.000000 0.875000 7.000000 +v 0.062500 0.891747 7.000000 +v 0.108253 0.937500 7.000000 +v 0.125000 1.000000 7.000000 +v 0.108253 1.062500 7.000000 +v 0.062500 1.108253 7.000000 +vt 0.004098 0.224299 +vt 0.000000 0.205607 +vt 0.004098 0.205607 +vt 0.004098 -0.000000 +vt 0.000000 0.009346 +vt 0.000000 -0.000000 +vt 0.004098 0.037383 +vt 0.000000 0.018692 +vt 0.004098 0.018692 +vt 0.004098 0.056075 +vt 0.000000 0.037383 +vt 0.000000 0.065421 +vt 0.000000 0.056075 +vt 0.004098 0.093458 +vt 0.000000 0.074766 +vt 0.004098 0.074766 +vt 0.000000 0.102804 +vt 0.000000 0.093458 +vt 0.004098 0.130841 +vt 0.000000 0.112150 +vt 0.004098 0.112150 +vt 0.000000 0.140187 +vt 0.000000 0.130841 +vt 0.004098 0.168224 +vt 0.000000 0.149533 +vt 0.004098 0.149533 +vt 0.000000 0.177570 +vt 0.000000 0.168224 +vt 0.004098 0.186916 +vt 0.000000 0.196262 +vt 0.000000 0.186916 +vt 0.073770 0.224346 +vt 0.080851 0.233668 +vt 0.073770 0.261635 +vt 0.000000 0.214953 +vt 0.000000 0.028037 +vt 0.000000 0.046729 +vt 0.000000 0.084112 +vt 0.000000 0.121495 +vt 0.000000 0.158879 +vt 0.069682 0.259137 +vt 0.066690 0.233668 +vt 0.066690 0.252313 +vt 0.065594 0.242991 +vt 0.069682 0.226844 +vt 0.077859 0.226844 +vt 0.081947 0.242991 +vt 0.080851 0.252313 +vt 0.077858 0.259137 +vt 0.282787 0.149533 +vt 0.282787 0.130841 +vt 0.282787 0.018692 +vt 0.282787 0.074766 +vt 0.282787 0.205607 +vt 0.282787 0.093458 +vt 0.282787 0.112150 +vt 0.282787 0.168224 +vt 0.282787 -0.000000 +vt 0.282787 0.056075 +vt 0.282787 0.037383 +vt 0.282787 0.186916 +vt -0.000000 0.252336 +vt 0.065574 0.261682 +vt -0.000000 0.261682 +vt -0.000000 0.299065 +vt 0.065574 0.308411 +vt -0.000000 0.308411 +vt -0.000000 0.327103 +vt 0.065574 0.336449 +vt -0.000000 0.336449 +vt -0.000000 0.242991 +vt 0.065574 0.252336 +vt -0.000000 0.289720 +vt 0.065574 0.299065 +vt -0.000000 0.271028 +vt 0.065574 0.280374 +vt -0.000000 0.280374 +vt -0.000000 0.317757 +vt 0.065574 0.327103 +vt -0.000000 0.233645 +vt 0.065574 0.242991 +vt 0.065574 0.289720 +vt 0.065574 0.271028 +vt 0.065574 0.317757 +vt -0.000000 0.224299 +vt 0.065574 0.233645 +vt 0.282787 0.224299 +vt 0.065574 0.224299 +vn 0.0000 0.0000 1.0000 +vn -0.8660 0.5000 0.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.0000 1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +s off +f 145/258/61 168/259/61 144/260/61 +f 145/261/61 170/262/61 169/263/61 +f 147/264/61 170/265/61 146/266/61 +f 148/267/61 171/268/61 147/264/61 +f 148/267/61 173/269/61 172/270/61 +f 150/271/61 173/272/61 149/273/61 +f 150/271/61 163/274/61 174/275/61 +f 140/276/61 163/277/61 139/278/61 +f 140/276/61 165/279/61 164/280/61 +f 142/281/61 165/282/61 141/283/61 +f 142/281/61 167/284/61 166/285/61 +f 143/286/61 168/287/61 167/288/61 +f 181/289/61 183/290/61 175/291/61 +f 145/258/61 169/292/61 168/259/61 +f 145/261/61 146/266/61 170/262/61 +f 147/264/61 171/293/61 170/265/61 +f 148/267/61 172/294/61 171/268/61 +f 148/267/61 149/273/61 173/269/61 +f 150/271/61 174/295/61 173/272/61 +f 150/271/61 139/278/61 163/274/61 +f 140/276/61 164/296/61 163/277/61 +f 140/276/61 141/283/61 165/279/61 +f 142/281/61 166/297/61 165/282/61 +f 142/281/61 143/286/61 167/284/61 +f 143/286/61 144/260/61 168/287/61 +f 175/291/61 176/298/61 179/299/61 +f 176/298/61 177/300/61 179/299/61 +f 177/300/61 178/301/61 179/299/61 +f 179/299/61 180/302/61 181/289/61 +f 181/289/61 182/303/61 183/290/61 +f 183/290/61 184/304/61 185/305/61 +f 185/305/61 186/306/61 183/290/61 +f 186/306/61 175/291/61 183/290/61 +f 179/299/61 181/289/61 175/291/61 +s 1 +f 153/307/62 142/281/63 141/283/62 +f 152/308/64 141/283/62 140/276/64 +f 158/309/65 147/264/66 146/266/65 +f 161/310/67 150/271/68 149/273/67 +f 156/311/69 145/258/70 144/260/69 +f 162/312/68 139/278/71 150/271/68 +f 151/313/71 140/276/64 139/278/71 +f 154/314/63 143/286/72 142/281/63 +f 157/315/70 146/266/65 145/261/70 +f 160/316/73 149/273/67 148/267/73 +f 159/317/66 148/267/73 147/264/66 +f 155/318/72 144/260/69 143/286/72 +f 166/319/73 177/320/66 165/321/66 +f 173/322/72 184/323/63 172/324/63 +f 170/325/64 181/326/71 169/327/71 +f 167/328/67 178/329/73 166/319/73 +f 174/330/69 185/331/72 173/322/72 +f 164/332/65 175/333/70 163/334/70 +f 171/335/62 182/336/64 170/325/64 +f 168/337/68 179/338/67 167/328/67 +f 163/334/70 186/339/69 174/330/69 +f 165/321/66 176/340/65 164/332/65 +f 172/324/63 183/341/62 171/335/62 +f 169/342/71 180/343/68 168/337/68 +f 153/307/62 154/314/63 142/281/63 +f 152/308/64 153/307/62 141/283/62 +f 158/309/65 159/317/66 147/264/66 +f 161/310/67 162/312/68 150/271/68 +f 156/311/69 157/344/70 145/258/70 +f 162/312/68 151/313/71 139/278/71 +f 151/313/71 152/308/64 140/276/64 +f 154/314/63 155/318/72 143/286/72 +f 157/315/70 158/309/65 146/266/65 +f 160/316/73 161/310/67 149/273/67 +f 159/317/66 160/316/73 148/267/73 +f 155/318/72 156/311/69 144/260/69 +f 166/319/73 178/329/73 177/320/66 +f 173/322/72 185/331/72 184/323/63 +f 170/325/64 182/336/64 181/326/71 +f 167/328/67 179/338/67 178/329/73 +f 174/330/69 186/339/69 185/331/72 +f 164/332/65 176/340/65 175/333/70 +f 171/335/62 183/341/62 182/336/64 +f 168/337/68 180/343/68 179/338/67 +f 163/334/70 175/333/70 186/339/69 +f 165/321/66 177/320/66 176/340/65 +f 172/324/63 184/323/63 183/341/62 +f 169/342/71 181/345/71 180/343/68 o Gun -v 0.032464 0.062345 0.555958 -v 0.032464 -0.000155 0.555958 -v 0.032464 0.062345 0.446583 -v 0.032464 -0.000155 0.446583 -v -0.042536 0.062345 0.446583 -v -0.042536 -0.000155 0.446583 -v -0.042536 0.062345 0.555958 -v -0.042536 -0.000155 0.555958 -v 0.032464 0.060031 0.568015 -v 0.032464 0.016725 0.550077 -v 0.032464 0.101887 0.466966 -v 0.032464 0.058581 0.449028 -v -0.042536 0.101887 0.466966 -v -0.042536 0.058581 0.449028 -v -0.042536 0.060031 0.568015 -v -0.042536 0.016725 0.550077 -v 0.032464 0.153125 0.468417 -v 0.032464 0.080947 0.498314 -v 0.032464 0.117248 0.381803 -v 0.032464 0.045070 0.411700 -v -0.042536 0.117248 0.381803 -v -0.042536 0.045070 0.411700 -v -0.042536 0.153125 0.468417 -v -0.042536 0.080947 0.498314 -v 0.032464 0.153125 0.468416 -v 0.032464 0.121875 0.468416 -v 0.032464 0.153125 0.359041 -v 0.032464 0.121875 0.359041 -v -0.042536 0.153125 0.359041 -v -0.042536 0.121875 0.359041 -v -0.042536 0.153125 0.468416 -v -0.042536 0.121875 0.468416 -v 0.032464 0.153125 0.171541 -v 0.032464 0.121875 0.171541 -v 0.032464 0.153125 0.124666 -v 0.032464 0.121875 0.124666 -v -0.042536 0.153125 0.124666 -v -0.042536 0.121875 0.124666 -v -0.042536 0.153125 0.171541 -v -0.042536 0.121875 0.171541 -v -0.015852 0.152219 0.468416 -v -0.019440 0.143558 0.468416 -v -0.015852 0.152219 0.124666 -v -0.019440 0.143558 0.124666 -v -0.038949 0.161786 0.124666 -v -0.042537 0.153125 0.124666 -v -0.038949 0.161786 0.468416 -v -0.042537 0.153125 0.468416 -v -0.014642 0.150738 0.468416 -v -0.021271 0.144109 0.468416 -v -0.014642 0.150738 0.124666 -v -0.021271 0.144109 0.124666 -v -0.032320 0.168416 0.124666 -v -0.038949 0.161786 0.124666 -v -0.032320 0.168416 0.468416 -v -0.038949 0.161786 0.468416 -v -0.023658 0.172003 0.468416 -v -0.014091 0.148906 0.468416 -v -0.023658 0.172003 0.124666 -v -0.014091 0.148906 0.124666 -v -0.032320 0.168415 0.124666 -v -0.022753 0.145318 0.124666 -v -0.032320 0.168415 0.468416 -v -0.022753 0.145318 0.468416 -v 0.001342 0.172003 0.468416 -v 0.001342 0.147003 0.468416 -v 0.001342 0.172003 0.124666 -v 0.001342 0.147003 0.124666 -v -0.023658 0.172003 0.124666 -v -0.023658 0.147003 0.124666 -v -0.023658 0.172003 0.468416 -v -0.023658 0.147003 0.468416 -v 0.013586 0.172003 0.468416 -v 0.013586 0.147003 0.468416 -v 0.013586 0.172003 0.124666 -v 0.013586 0.147003 0.124666 -v -0.011414 0.172003 0.124666 -v -0.011414 0.147003 0.124666 -v -0.011414 0.172003 0.468416 -v -0.011414 0.147003 0.468416 -v 0.028876 0.161786 0.468416 -v 0.032463 0.153125 0.468416 -v 0.028876 0.161786 0.124666 -v 0.032463 0.153125 0.124666 -v 0.005779 0.152219 0.124666 -v 0.009366 0.143558 0.124666 -v 0.005779 0.152219 0.468416 -v 0.009366 0.143558 0.468416 -v 0.022247 0.168416 0.468416 -v 0.028876 0.161786 0.468416 -v 0.022247 0.168416 0.124666 -v 0.028876 0.161786 0.124666 -v 0.004569 0.150738 0.124666 -v 0.011198 0.144109 0.124666 -v 0.004569 0.150738 0.468416 -v 0.011198 0.144109 0.468416 -v 0.022247 0.168415 0.468416 -v 0.012680 0.145318 0.468416 -v 0.022247 0.168415 0.124666 -v 0.012680 0.145318 0.124666 -v 0.013585 0.172003 0.124666 -v 0.004018 0.148906 0.124666 -v 0.013585 0.172003 0.468416 -v 0.004018 0.148906 0.468416 -v 0.032464 0.121211 0.171541 -v 0.032464 0.011836 0.171541 -v 0.032464 0.121211 0.124666 -v 0.032464 0.011836 0.124666 -v -0.042536 0.121211 0.124666 -v -0.042536 0.011836 0.124666 -v -0.042536 0.121211 0.171541 -v -0.042536 0.011836 0.171541 -v 0.001214 0.136836 0.359041 -v 0.001214 0.105586 0.359041 -v 0.001214 0.136836 0.171541 -v 0.001214 0.105586 0.171541 -v -0.042536 0.136836 0.171541 -v -0.042536 0.105586 0.171541 -v -0.042536 0.136836 0.359041 -v -0.042536 0.105586 0.359041 -v 0.032464 0.136836 0.437166 -v 0.032464 0.089961 0.437166 -v 0.032464 0.136836 0.359041 -v 0.032464 0.089961 0.359041 -v -0.042536 0.136836 0.359041 -v -0.042536 0.089961 0.359041 -v -0.042536 0.136836 0.437166 -v -0.042536 0.089961 0.437166 -v 0.032464 0.105586 0.390291 -v 0.032464 0.011836 0.390291 -v 0.032464 0.105586 0.171541 -v 0.032464 0.011836 0.171541 -v -0.042536 0.105586 0.171541 -v -0.042536 0.011836 0.171541 -v -0.042536 0.105586 0.390291 -v -0.042536 0.011836 0.390291 -v 0.032444 0.030200 0.550109 -v 0.032444 -0.041978 0.520212 -v 0.032444 0.101953 0.376882 -v 0.032444 0.029775 0.346985 -v -0.042556 0.101953 0.376882 -v -0.042556 0.029775 0.346985 -v -0.042556 0.030200 0.550109 -v -0.042556 -0.041978 0.520212 -v 0.032464 -0.000155 0.555958 -v 0.032464 -0.033301 0.522812 -v 0.032464 0.021942 0.533861 -v 0.032464 -0.011204 0.500715 -v -0.042536 0.021942 0.533861 -v -0.042536 -0.011204 0.500715 -v -0.042536 -0.000155 0.555958 -v -0.042536 -0.033301 0.522812 -v 0.000124 0.168316 0.364050 -v 0.000124 0.106638 0.364050 -v 0.000124 0.168316 -1.179536 -v 0.000124 0.106638 -1.179536 -v -0.012211 0.168316 -1.179536 -v -0.012211 0.106638 -1.179536 -v -0.012211 0.168316 0.364050 -v -0.012211 0.106638 0.364050 -v 0.011521 0.163595 0.364050 -v -0.012082 0.106613 0.364050 -v 0.011521 0.163595 -1.179536 -v -0.012082 0.106613 -1.179536 -v 0.000124 0.168315 -1.179536 -v -0.023479 0.111333 -1.179536 -v 0.000124 0.168315 0.364050 -v -0.023479 0.111333 0.364050 -v 0.020243 0.155210 0.364050 -v -0.023370 0.111597 0.364050 -v 0.020243 0.155210 -1.179536 -v -0.023370 0.111597 -1.179536 -v 0.011521 0.163932 -1.179536 -v -0.032092 0.120319 -1.179536 -v 0.011521 0.163932 0.364050 -v -0.032092 0.120319 0.364050 -v 0.020243 0.155210 0.364050 -v 0.024963 0.143813 0.364050 -v 0.020243 0.155210 -1.179536 -v 0.024963 0.143813 -1.179536 -v -0.036739 0.131607 -1.179536 -v -0.032019 0.120210 -1.179536 -v -0.036739 0.131607 0.364050 -v -0.032019 0.120210 0.364050 -v 0.024964 0.143813 0.364050 -v 0.024964 0.131477 0.364050 -v 0.024964 0.143813 -1.179536 -v 0.024964 0.131478 -1.179536 -v -0.036714 0.143813 -1.179536 -v -0.036714 0.131478 -1.179536 -v -0.036714 0.143813 0.364050 -v -0.036714 0.131477 0.364050 -v 0.024964 0.131478 0.364050 -v 0.020243 0.120081 0.364050 -v 0.024964 0.131478 -1.179536 -v 0.020243 0.120081 -1.179536 -v -0.032019 0.155081 -1.179536 -v -0.036739 0.143684 -1.179536 -v -0.032019 0.155081 0.364050 -v -0.036739 0.143684 0.364050 -v 0.020243 0.120081 0.364050 -v 0.011520 0.111359 0.364050 -v 0.020243 0.120082 -1.179536 -v 0.011520 0.111359 -1.179536 -v -0.023370 0.163694 -1.179536 -v -0.032092 0.154971 -1.179536 -v -0.023370 0.163694 0.364050 -v -0.032092 0.154971 0.364050 -v -0.012082 0.168341 0.364050 -v 0.011520 0.111359 0.364050 -v -0.012082 0.168341 -1.179536 -v 0.011520 0.111359 -1.179536 -v -0.023479 0.163621 -1.179536 -v 0.000124 0.106639 -1.179536 -v -0.023479 0.163620 0.364050 -v 0.000124 0.106638 0.364050 -v -0.012082 0.090216 0.285925 -v 0.011520 0.033234 0.285925 -v -0.012082 0.090216 -1.023286 -v 0.011520 0.033234 -1.023286 -v -0.023479 0.085496 -1.023286 -v 0.000124 0.028513 -1.023286 -v -0.023479 0.085495 0.285925 -v 0.000124 0.028513 0.285925 -v 0.020243 0.041956 0.285925 -v 0.011520 0.033234 0.285925 -v 0.020243 0.041957 -1.023286 -v 0.011520 0.033234 -1.023286 -v -0.023370 0.085569 -1.023286 -v -0.032092 0.076846 -1.023286 -v -0.023370 0.085569 0.285925 -v -0.032092 0.076846 0.285925 -v 0.024964 0.053353 0.285925 -v 0.020243 0.041956 0.285925 -v 0.024964 0.053353 -1.023286 -v 0.020243 0.041956 -1.023286 -v -0.032019 0.076956 -1.023286 -v -0.036739 0.065559 -1.023286 -v -0.032019 0.076956 0.285925 -v -0.036739 0.065559 0.285925 -v 0.024964 0.065688 0.285925 -v 0.024964 0.053352 0.285925 -v 0.024964 0.065688 -1.023286 -v 0.024964 0.053353 -1.023286 -v -0.036714 0.065688 -1.023286 -v -0.036714 0.053353 -1.023286 -v -0.036714 0.065688 0.285925 -v -0.036714 0.053352 0.285925 -v 0.020243 0.077085 0.285925 -v 0.024963 0.065688 0.285925 -v 0.020243 0.077085 -1.023286 -v 0.024963 0.065688 -1.023286 -v -0.036739 0.053482 -1.023286 -v -0.032019 0.042085 -1.023286 -v -0.036739 0.053482 0.285925 -v -0.032019 0.042085 0.285925 -v 0.020243 0.077085 0.285925 -v -0.023370 0.033472 0.285925 -v 0.020243 0.077085 -1.023286 -v -0.023370 0.033472 -1.023286 -v 0.011521 0.085807 -1.023286 -v -0.032092 0.042194 -1.023286 -v 0.011521 0.085807 0.285925 -v -0.032092 0.042194 0.285925 -v 0.011521 0.085470 0.285925 -v -0.012082 0.028488 0.285925 -v 0.011521 0.085470 -1.023286 -v -0.012082 0.028488 -1.023286 -v 0.000124 0.090190 -1.023286 -v -0.023479 0.033208 -1.023286 -v 0.000124 0.090190 0.285925 -v -0.023479 0.033208 0.285925 -v 0.000124 0.090191 0.285925 -v 0.000124 0.028513 0.285925 -v 0.000124 0.090191 -1.023286 -v 0.000124 0.028513 -1.023286 -v -0.012211 0.090191 -1.023286 -v -0.012211 0.028513 -1.023286 -v -0.012211 0.090191 0.285925 -v -0.012211 0.028513 0.285925 -v -0.012212 0.102587 -0.867036 -v 0.016112 0.034209 -0.867036 -v -0.012212 0.102587 -0.938088 -v 0.016112 0.034209 -0.938088 -v -0.025887 0.096923 -0.938088 -v 0.002436 0.028544 -0.938088 -v -0.025887 0.096923 -0.867036 -v 0.002436 0.028544 -0.867036 -v 0.026579 0.044675 -0.867036 -v 0.016112 0.034208 -0.867036 -v 0.026579 0.044675 -0.938088 -v 0.016112 0.034208 -0.938088 -v -0.025756 0.097010 -0.938088 -v -0.036223 0.086543 -0.938088 -v -0.025756 0.097010 -0.867036 -v -0.036223 0.086543 -0.867036 -v 0.016112 0.096892 -0.867036 -v -0.012211 0.028513 -0.867036 -v 0.016112 0.096892 -0.938088 -v -0.012211 0.028513 -0.938088 -v 0.002436 0.102556 -0.938088 -v -0.025887 0.034178 -0.938088 -v 0.002436 0.102556 -0.867036 -v -0.025887 0.034178 -0.867036 -v 0.026579 0.086830 -0.867036 -v -0.025756 0.034495 -0.867036 -v 0.026579 0.086830 -0.938088 -v -0.025756 0.034495 -0.938088 -v 0.016112 0.097297 -0.938088 -v -0.036223 0.044962 -0.938088 -v 0.016112 0.097297 -0.867036 -v -0.036223 0.044962 -0.867036 -v 0.026579 0.086830 -0.867036 -v 0.032243 0.073154 -0.867036 -v 0.026579 0.086830 -0.938088 -v 0.032243 0.073154 -0.938088 -v -0.041800 0.058507 -0.938088 -v -0.036135 0.044831 -0.938088 -v -0.041800 0.058507 -0.867036 -v -0.036135 0.044831 -0.867036 -v 0.032244 0.073154 -0.867036 -v 0.032244 0.058351 -0.867036 -v 0.032244 0.073154 -0.938088 -v 0.032244 0.058351 -0.938088 -v -0.041769 0.073154 -0.938088 -v -0.041769 0.058351 -0.938088 -v -0.041769 0.073154 -0.867036 -v -0.041769 0.058351 -0.867036 -v 0.032244 0.058351 -0.867036 -v 0.026579 0.044675 -0.867036 -v 0.032244 0.058351 -0.938088 -v 0.026579 0.044675 -0.938088 -v -0.036135 0.086674 -0.938088 -v -0.041800 0.072999 -0.938088 -v -0.036135 0.086674 -0.867036 -v -0.041800 0.072999 -0.867036 -v 0.002436 0.133807 -0.867036 -v 0.002436 0.028544 -0.867036 -v 0.002436 0.133807 -0.938088 -v 0.002436 0.028544 -0.938088 -v -0.012366 0.133807 -0.938088 -v -0.012366 0.028544 -0.938088 -v -0.012366 0.133807 -0.867036 -v -0.012366 0.028544 -0.867036 -v 0.004339 -0.006552 0.435101 -v 0.004339 -0.049859 0.417163 -v 0.004339 -0.002964 0.426440 -v 0.004339 -0.046271 0.408502 -v -0.008161 -0.002964 0.426440 -v -0.008161 -0.046271 0.408502 -v -0.008161 -0.006552 0.435101 -v -0.008161 -0.049859 0.417163 -v 0.004339 -0.049859 0.417163 -v 0.004339 -0.069746 0.397276 -v 0.004339 -0.043230 0.410534 -v 0.004339 -0.063117 0.390646 -v -0.008161 -0.043230 0.410534 -v -0.008161 -0.063117 0.390646 -v -0.008161 -0.049859 0.417163 -v -0.008161 -0.069746 0.397276 -v 0.000124 0.174566 0.145300 -v 0.000124 0.168316 0.145300 -v 0.000124 0.174566 0.054839 -v 0.000124 0.168316 0.054839 -v -0.012211 0.174566 0.054839 -v -0.012211 0.168316 0.054839 -v -0.012211 0.174566 0.145300 -v -0.012211 0.168316 0.145300 -v 0.000124 0.174566 -1.104700 -v 0.000124 0.168316 -1.104700 -v 0.000124 0.174566 -1.163911 -v 0.000124 0.168316 -1.163911 -v -0.012211 0.174566 -1.163911 -v -0.012211 0.168316 -1.163911 -v -0.012211 0.174566 -1.104700 -v -0.012211 0.168316 -1.104700 -v 0.000124 0.173511 -1.111308 -v 0.000124 0.153301 -1.119679 -v 0.000124 0.190190 -1.151576 -v 0.000124 0.169980 -1.159947 -v -0.012211 0.190190 -1.151576 -v -0.012211 0.169980 -1.159947 -v -0.012211 0.173511 -1.111308 -v -0.012211 0.153301 -1.119679 -v -0.009820 0.174090 0.082800 -v -0.012211 0.168316 0.082800 -v -0.009820 0.174090 0.054839 -v -0.012211 0.168316 0.054839 -v -0.021216 0.178810 0.054839 -v -0.023607 0.173036 0.054839 -v -0.021216 0.178810 0.082800 -v -0.023607 0.173036 0.082800 -v -0.022554 0.186824 0.082800 -v -0.017834 0.175428 0.082800 -v -0.022554 0.186824 0.054839 -v -0.017834 0.175428 0.054839 -v -0.028329 0.184432 0.054839 -v -0.023608 0.173036 0.054839 -v -0.028329 0.184432 0.082800 -v -0.023608 0.173036 0.082800 -v 0.009129 0.178810 0.082800 -v 0.011520 0.173036 0.082800 -v 0.009129 0.178810 0.054839 -v 0.011520 0.173036 0.054839 -v -0.002268 0.174089 0.054839 -v 0.000124 0.168315 0.054839 -v -0.002268 0.174089 0.082800 -v 0.000124 0.168315 0.082800 -v 0.016241 0.184432 0.082800 -v 0.011521 0.173036 0.082800 -v 0.016241 0.184432 0.054839 -v 0.011521 0.173036 0.054839 -v 0.010467 0.186824 0.054839 -v 0.005747 0.175428 0.054839 -v 0.010467 0.186824 0.082800 -v 0.005747 0.175428 0.082800 -v 0.000124 0.193316 -1.151575 -v 0.000124 0.168316 -1.151575 -v 0.000124 0.193316 -1.163911 -v 0.000124 0.168316 -1.163911 -v -0.012211 0.193316 -1.163911 -v -0.012211 0.168316 -1.163911 -v -0.012211 0.193316 -1.151575 -v -0.012211 0.168316 -1.151575 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.812500 -vt 0.187500 0.937500 -vt 0.187500 0.812500 -vt 0.187500 0.937500 -vt 0.187500 0.812500 -vt 0.000000 0.937500 -vt 0.000000 0.812500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.921875 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.000000 0.937500 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vt 0.015625 0.937500 -vt 0.015625 0.921875 -vt 0.000000 0.937500 -vt 0.000000 0.921875 -vn 1.0000 0.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 0.0000 1.0000 0.0000 -vn 0.0000 -1.0000 -0.0000 +v 0.000000 1.187500 -2.000000 +v -0.093750 1.162380 -2.000000 +v -0.162380 1.093750 -2.000000 +v -0.187500 1.000000 -2.000000 +v -0.162380 0.906250 -2.000000 +v -0.093750 0.837620 -2.000000 +v 0.000000 0.812500 -2.000000 +v 0.093750 0.837620 -2.000000 +v 0.162380 0.906250 -2.000000 +v 0.187500 1.000000 -2.000000 +v 0.162380 1.093750 -2.000000 +v 0.093750 1.162380 -2.000000 +v 0.000000 1.187500 3.750000 +v -0.093750 1.162380 3.750000 +v -0.162380 1.093750 3.750000 +v -0.187500 1.000000 3.750000 +v -0.162380 0.906250 3.750000 +v -0.093750 0.837620 3.750000 +v 0.000000 0.812500 3.750000 +v 0.093750 0.837620 3.750000 +v 0.162380 0.906250 3.750000 +v 0.187500 1.000000 3.750000 +v 0.162380 1.093750 3.750000 +v 0.093750 1.162380 3.750000 +v 0.000000 1.125000 3.750000 +v -0.062500 1.108253 3.750000 +v -0.108253 1.062500 3.750000 +v -0.125000 1.000000 3.750000 +v -0.108253 0.937500 3.750000 +v -0.062500 0.891747 3.750000 +v 0.000000 0.875000 3.750000 +v 0.062500 0.891747 3.750000 +v 0.108253 0.937500 3.750000 +v 0.125000 1.000000 3.750000 +v 0.108253 1.062500 3.750000 +v 0.062500 1.108253 3.750000 +v 0.000000 1.125000 2.750000 +v -0.062500 1.108253 2.750000 +v -0.108253 1.062500 2.750000 +v -0.125000 1.000000 2.750000 +v -0.108253 0.937500 2.750000 +v -0.062500 0.891747 2.750000 +v 0.000000 0.875000 2.750000 +v 0.062500 0.891747 2.750000 +v 0.108253 0.937500 2.750000 +v 0.125000 1.000000 2.750000 +v 0.108253 1.062500 2.750000 +v 0.062500 1.108253 2.750000 +v 0.000000 1.187500 3.000000 +v -0.093750 1.162380 3.000000 +v -0.162380 1.093750 3.000000 +v -0.187500 1.000000 3.000000 +v -0.162380 0.906250 3.000000 +v -0.093750 0.837620 3.000000 +v 0.000000 0.812500 3.000000 +v 0.093750 0.837620 3.000000 +v 0.162380 0.906250 3.000000 +v 0.187500 1.000000 3.000000 +v 0.162380 1.093750 3.000000 +v 0.093750 1.162380 3.000000 +v 0.000000 1.250000 3.000000 +v -0.125000 1.216506 3.000000 +v -0.216506 1.125000 3.000000 +v -0.250000 1.000000 3.000000 +v 0.250000 1.000000 3.000000 +v 0.216506 1.125000 3.000000 +v 0.125000 1.216506 3.000000 +v 0.000000 1.250000 3.250000 +v -0.125000 1.216506 3.250000 +v -0.216506 1.125000 3.250000 +v -0.250000 1.000000 3.250000 +v 0.250000 1.000000 3.250000 +v 0.216506 1.125000 3.250000 +v 0.125000 1.216506 3.250000 +v 0.000000 1.187500 3.250000 +v -0.093750 1.162380 3.250000 +v -0.162380 1.093750 3.250000 +v -0.187500 1.000000 3.250000 +v -0.162380 0.906250 3.250000 +v -0.093750 0.837620 3.250000 +v 0.000000 0.812500 3.250000 +v 0.093750 0.837620 3.250000 +v 0.162380 0.906250 3.250000 +v 0.187500 1.000000 3.250000 +v 0.162380 1.093750 3.250000 +v 0.093750 1.162380 3.250000 +v 0.000000 0.750000 -2.000000 +v -0.093750 0.724880 -2.000000 +v -0.162380 0.656250 -2.000000 +v -0.187500 0.562500 -2.000000 +v -0.162380 0.468750 -2.000000 +v -0.093750 0.400120 -2.000000 +v 0.000000 0.375000 -2.000000 +v 0.093750 0.400120 -2.000000 +v 0.162380 0.468750 -2.000000 +v 0.187500 0.562500 -2.000000 +v 0.162380 0.656250 -2.000000 +v 0.093750 0.724880 -2.000000 +v 0.000000 0.750000 3.000000 +v -0.093750 0.724880 3.000000 +v -0.162380 0.656250 3.000000 +v -0.187500 0.562500 3.000000 +v -0.162380 0.468750 3.000000 +v -0.093750 0.400120 3.000000 +v 0.000000 0.375000 3.000000 +v 0.093750 0.400120 3.000000 +v 0.162380 0.468750 3.000000 +v 0.187500 0.562500 3.000000 +v 0.162380 0.656250 3.000000 +v 0.093750 0.724880 3.000000 +v -0.250000 0.562500 3.000000 +v -0.216506 0.437500 3.000000 +v -0.125000 0.345994 3.000000 +v 0.000000 0.312500 3.000000 +v 0.125000 0.345994 3.000000 +v 0.216506 0.437500 3.000000 +v 0.250000 0.562500 3.000000 +v -0.250000 0.562500 3.250000 +v -0.216506 0.437500 3.250000 +v -0.125000 0.345994 3.250000 +v 0.000000 0.312500 3.250000 +v 0.125000 0.345994 3.250000 +v 0.216506 0.437500 3.250000 +v 0.250000 0.562500 3.250000 +v 0.000000 1.250000 -2.000000 +v -0.125000 1.216506 -2.000000 +v -0.216506 1.125000 -2.000000 +v -0.250000 1.000000 -2.000000 +v 0.250000 1.000000 -2.000000 +v 0.216506 1.125000 -2.000000 +v 0.125000 1.216506 -2.000000 +v -0.250000 0.562500 -2.000000 +v -0.216506 0.437500 -2.000000 +v -0.125000 0.345994 -2.000000 +v 0.000000 0.312500 -2.000000 +v 0.125000 0.345994 -2.000000 +v 0.216506 0.437500 -2.000000 +v 0.250000 0.562500 -2.000000 +v -0.125000 1.216506 -2.375000 +v 0.000000 1.250000 -2.375000 +v -0.216506 1.125000 -2.375000 +v -0.250000 1.000000 -2.375000 +v 0.216506 1.125000 -2.375000 +v 0.250000 1.000000 -2.375000 +v 0.125000 1.216506 -2.375000 +v -0.250000 0.562500 -2.375000 +v 0.250000 0.562500 -2.375000 +v -0.216506 0.437500 -2.375000 +v -0.125000 0.345994 -2.375000 +v 0.000000 0.312500 -2.375000 +v 0.125000 0.345994 -2.375000 +v 0.216506 0.437500 -2.375000 +v 0.000000 1.125000 -2.375000 +v -0.062500 1.108253 -2.375000 +v -0.108253 1.062500 -2.375000 +v -0.125000 1.000000 -2.375000 +v -0.108253 0.937500 -2.375000 +v -0.062500 0.891747 -2.375000 +v 0.000000 0.875000 -2.375000 +v 0.062500 0.891747 -2.375000 +v 0.108253 0.937500 -2.375000 +v 0.125000 1.000000 -2.375000 +v 0.108253 1.062500 -2.375000 +v 0.062500 1.108253 -2.375000 +v 0.000000 0.687500 -2.375000 +v -0.062500 0.670753 -2.375000 +v -0.108253 0.625000 -2.375000 +v -0.125000 0.562500 -2.375000 +v -0.108253 0.500000 -2.375000 +v -0.062500 0.454247 -2.375000 +v 0.000000 0.437500 -2.375000 +v 0.062500 0.454247 -2.375000 +v 0.108253 0.500000 -2.375000 +v 0.125000 0.562500 -2.375000 +v 0.108253 0.625000 -2.375000 +v 0.062500 0.670753 -2.375000 +v 0.000000 1.125000 -1.375000 +v -0.062500 1.108253 -1.375000 +v -0.108253 1.062500 -1.375000 +v -0.125000 1.000000 -1.375000 +v -0.108253 0.937500 -1.375000 +v -0.062500 0.891747 -1.375000 +v 0.000000 0.875000 -1.375000 +v 0.062500 0.891747 -1.375000 +v 0.108253 0.937500 -1.375000 +v 0.125000 1.000000 -1.375000 +v 0.108253 1.062500 -1.375000 +v 0.062500 1.108253 -1.375000 +v 0.000000 0.687500 -1.375000 +v -0.062500 0.670753 -1.375000 +v -0.108253 0.625000 -1.375000 +v -0.125000 0.562500 -1.375000 +v -0.108253 0.500000 -1.375000 +v -0.062500 0.454247 -1.375000 +v 0.000000 0.437500 -1.375000 +v 0.062500 0.454247 -1.375000 +v 0.108253 0.500000 -1.375000 +v 0.125000 0.562500 -1.375000 +v 0.108253 0.625000 -1.375000 +v 0.062500 0.670753 -1.375000 +v 0.312500 1.125000 -2.125000 +v 0.312500 1.125000 -2.500000 +v 0.187500 1.125000 -2.125000 +v 0.187500 1.125000 -2.500000 +v 0.312500 0.437500 -2.125000 +v 0.187500 0.437500 -2.125000 +v 0.312500 0.187500 -2.375000 +v 0.312500 1.000000 -2.625000 +v 0.187500 1.000000 -2.625000 +v 0.312500 1.000000 -3.000000 +v 0.187500 1.000000 -3.000000 +v 0.312500 0.562500 -3.750000 +v 0.312500 0.875000 -3.375000 +v 0.187500 0.875000 -3.375000 +v 0.312500 -0.062500 -2.875000 +v 0.312500 -0.062500 -3.875000 +v -0.187500 1.125000 -2.125000 +v -0.187500 1.125000 -2.500000 +v -0.312500 1.125000 -2.125000 +v -0.312500 1.125000 -2.500000 +v -0.187500 0.437500 -2.125000 +v -0.312500 0.437500 -2.125000 +v -0.312500 0.187500 -2.375000 +v -0.187500 1.000000 -2.625000 +v -0.312500 1.000000 -2.625000 +v -0.187500 1.000000 -3.000000 +v -0.312500 1.000000 -3.000000 +v -0.312500 0.562500 -3.750000 +v -0.187500 0.875000 -3.375000 +v -0.312500 0.875000 -3.375000 +v -0.312500 -0.062500 -2.875000 +v -0.312500 -0.062500 -3.875000 +v 0.250000 0.562500 -2.000000 +v -0.250000 0.562500 -2.000000 +v 0.250000 1.000000 -2.000000 +v -0.250000 1.000000 -2.000000 +v 0.250000 0.562500 1.625000 +v -0.250000 0.562500 1.625000 +v 0.250000 1.000000 1.625000 +v -0.250000 1.000000 1.625000 +v 0.250000 0.687500 1.750000 +v -0.250000 0.687500 1.750000 +v 0.250000 0.874000 1.750000 +v -0.250000 0.874000 1.750000 +v 0.187500 0.562500 -2.000000 +v 0.187500 1.000000 -2.000000 +v -0.187500 0.562500 -2.000000 +v -0.187500 1.000000 -2.000000 +v 0.187500 0.562500 -1.375000 +v 0.187500 1.000000 -1.375000 +v -0.187500 0.562500 -1.375000 +v -0.187500 1.000000 -1.375000 +v 0.187500 -0.062500 -2.875000 +v -0.187500 -0.062500 -2.875000 +v 0.187500 -0.062500 -3.875000 +v -0.187500 -0.062500 -3.875000 +v -0.187500 0.562500 -3.750000 +v 0.187500 0.562500 -3.750000 +v 0.312500 0.437500 -4.125000 +v -0.312500 0.437500 -4.125000 +v 0.312500 -0.187500 -4.125000 +v -0.312500 -0.187500 -4.125000 +v -0.187500 0.437500 -3.500000 +v 0.187500 0.437500 -3.500000 +v -0.250000 -0.250000 -4.125000 +v 0.250000 -0.250000 -4.125000 +v -0.250000 0.500000 -4.125000 +v 0.250000 0.500000 -4.125000 +v -0.250000 -0.250000 -5.625000 +v -0.250000 -1.000000 -5.250000 +v 0.250000 -1.000000 -5.250000 +v 0.250000 -0.250000 -5.625000 +v 0.375000 -0.125000 -4.125000 +v 0.375000 0.375000 -4.125000 +v 0.375000 -0.875000 -5.312500 +v 0.375000 -0.375000 -5.562500 +v -0.375000 0.375000 -4.125000 +v -0.375000 -0.125000 -4.125000 +v -0.375000 -0.375000 -5.562500 +v -0.375000 -0.875000 -5.312500 +v -0.250000 -0.500000 -5.750000 +v -0.250000 -1.000000 -5.500000 +v 0.250000 -1.000000 -5.500000 +v 0.250000 -0.500000 -5.750000 +v 0.062500 -0.062500 -3.562500 +v -0.062500 -0.062500 -3.562500 +v 0.062500 -0.062500 -3.500000 +v -0.062500 -0.062500 -3.500000 +v 0.062500 -0.187500 -3.562500 +v -0.062500 -0.187500 -3.562500 +v 0.062500 -0.187500 -3.500000 +v -0.062500 -0.187500 -3.500000 +v 0.062500 -0.312500 -3.437500 +v -0.062500 -0.312500 -3.437500 +vt 0.073770 0.336468 +vt 0.080862 0.345804 +vt 0.073770 0.373812 +vt 0.286885 0.224299 +vt 0.282787 0.205607 +vt 0.286885 0.205607 +vt 0.286885 0.186916 +vt 0.282787 0.196262 +vt 0.282787 0.186916 +vt 0.286885 0.168224 +vt 0.282787 0.177570 +vt 0.282787 0.168224 +vt 0.282787 0.149533 +vt 0.286885 0.149533 +vt 0.286885 0.130841 +vt 0.282787 0.140187 +vt 0.282787 0.130841 +vt 0.282787 0.112150 +vt 0.286885 0.112150 +vt 0.286885 0.093458 +vt 0.282787 0.102804 +vt 0.282787 0.093458 +vt 0.282787 0.074766 +vt 0.286885 0.074766 +vt 0.286885 0.056075 +vt 0.282787 0.065421 +vt 0.282787 0.056075 +vt 0.282787 0.037383 +vt 0.286885 0.037383 +vt 0.282787 0.018692 +vt 0.286885 0.018692 +vt 0.286885 0.000000 +vt 0.282787 0.009346 +vt 0.282787 -0.000000 +vt 0.571329 0.341081 +vt 0.573778 0.359421 +vt 0.567782 0.345750 +vt 0.575825 0.351334 +vt 0.581967 0.364425 +vt 0.581967 0.355087 +vt 0.590157 0.359421 +vt 0.588109 0.351334 +vt 0.596152 0.345750 +vt 0.594252 0.327074 +vt 0.592606 0.341081 +vt 0.588109 0.302814 +vt 0.596152 0.243035 +vt 0.592606 0.313068 +vt 0.569683 0.327074 +vt 0.565588 0.327074 +vt 0.557370 0.359421 +vt 0.559819 0.341081 +vt 0.563365 0.345750 +vt 0.549180 0.364425 +vt 0.555323 0.351334 +vt 0.540991 0.359421 +vt 0.549180 0.355087 +vt 0.534996 0.345750 +vt 0.543038 0.351334 +vt 0.532801 0.327074 +vt 0.538542 0.341081 +vt 0.598346 0.327074 +vt 0.598346 0.261711 +vt 0.565588 0.261711 +vt 0.571329 0.313068 +vt 0.575825 0.302814 +vt 0.567782 0.243035 +vt 0.573778 0.229364 +vt 0.581967 0.299061 +vt 0.581967 0.224360 +vt 0.590157 0.229364 +vt 0.561465 0.327074 +vt 0.565560 0.327074 +vt 0.532801 0.261711 +vt 0.538542 0.313068 +vt 0.559819 0.313068 +vt 0.555323 0.302814 +vt 0.563365 0.243035 +vt 0.549180 0.299061 +vt 0.557370 0.229364 +vt 0.540991 0.229364 +vt 0.543038 0.302814 +vt 0.534996 0.243035 +vt 0.476516 0.252326 +vt 0.483607 0.224321 +vt 0.490697 0.252326 +vt 0.476543 0.364441 +vt 0.483607 0.336542 +vt 0.490670 0.364441 +vt 0.620900 0.302820 +vt 0.625399 0.275706 +vt 0.625399 0.313079 +vt 0.614754 0.299064 +vt 0.620900 0.285965 +vt 0.608608 0.302820 +vt 0.614754 0.289721 +vt 0.604109 0.313079 +vt 0.608608 0.285965 +vt 0.602462 0.327095 +vt 0.604109 0.275706 +vt 0.627046 0.261690 +vt 0.627046 0.327095 +vt 0.631143 0.327095 +vt 0.631143 0.261690 +vt 0.602462 0.261690 +vt 0.598365 0.327095 +vt 0.598365 0.261690 +vt 0.600561 0.345781 +vt 0.604109 0.341110 +vt 0.608608 0.351370 +vt 0.614754 0.355125 +vt 0.606559 0.359461 +vt 0.620900 0.351370 +vt 0.614754 0.364468 +vt 0.625399 0.341110 +vt 0.622949 0.359461 +vt 0.628948 0.345781 +vt 0.628948 0.243004 +vt 0.625399 0.247675 +vt 0.620900 0.237416 +vt 0.614754 0.233660 +vt 0.622949 0.229324 +vt 0.606559 0.229324 +vt 0.608608 0.237416 +vt 0.600561 0.243004 +vt 0.604109 0.247675 +vt 0.643444 0.310911 +vt 0.647541 0.280377 +vt 0.647541 0.308408 +vt 0.651638 0.310911 +vt 0.654638 0.271034 +vt 0.654638 0.317751 +vt 0.655736 0.327095 +vt 0.640444 0.271034 +vt 0.640444 0.317751 +vt 0.639346 0.261690 +vt 0.639346 0.327095 +vt 0.631152 0.327095 +vt 0.631152 0.261690 +vt 0.663930 0.327095 +vt 0.655736 0.261690 +vt 0.663930 0.261690 +vt 0.654638 0.336438 +vt 0.661735 0.345781 +vt 0.651638 0.343278 +vt 0.655736 0.359461 +vt 0.647541 0.345781 +vt 0.647541 0.364468 +vt 0.639346 0.359461 +vt 0.640444 0.336438 +vt 0.633347 0.345781 +vt 0.640444 0.252347 +vt 0.633347 0.243004 +vt 0.643444 0.245507 +vt 0.639346 0.229324 +vt 0.647541 0.224317 +vt 0.651638 0.245507 +vt 0.655736 0.229324 +vt 0.661735 0.243004 +vt 0.654638 0.252347 +vt 0.713115 0.186916 +vt 0.721311 0.289720 +vt 0.713115 0.289720 +vt 0.803279 0.252336 +vt 0.778689 0.271028 +vt 0.770492 0.112150 +vt 0.721311 0.485981 +vt 0.713115 0.383178 +vt 0.721311 0.383178 +vt 0.803279 0.420561 +vt 0.827869 0.467290 +vt 0.770492 0.560748 +vt 0.028689 0.728972 +vt 0.266393 0.663551 +vt 0.266393 0.728972 +vt 0.266393 0.588785 +vt 0.028689 0.523364 +vt 0.266393 0.523364 +vt 0.020492 0.570093 +vt 0.028689 0.588785 +vt 0.020492 0.682243 +vt 0.028689 0.663551 +vt 0.836066 0.112150 +vt 0.852459 0.186916 +vt 0.827869 0.205607 +vt 0.836066 0.560748 +vt 0.852459 0.485981 +vt 0.852459 0.579439 +vt 0.852459 0.102804 +vt 0.852459 0.000000 +vt 0.885246 0.018692 +vt 0.959016 0.158879 +vt 0.942623 0.102804 +vt 0.959016 0.102804 +vt 0.959016 0.084112 +vt 0.934426 0.037383 +vt 0.942623 0.158879 +vt 0.909836 0.242991 +vt 0.885246 0.242991 +vt 0.852459 0.158879 +vt 0.934426 0.224299 +vt 0.959016 0.177570 +vt 0.266393 0.738318 +vt 0.274590 0.644860 +vt 0.315574 0.663551 +vt 0.168033 0.785047 +vt 0.172131 0.766355 +vt 0.172131 0.785047 +vt 0.180328 0.803738 +vt 0.184426 0.785047 +vt 0.184426 0.803738 +vt 0.168033 0.803738 +vt 0.172131 0.803738 +vt 0.180328 0.785047 +vt 0.180328 0.766355 +vt 0.069676 0.371311 +vt 0.066679 0.345804 +vt 0.066679 0.364476 +vt 0.065582 0.355140 +vt 0.069676 0.338970 +vt 0.077865 0.338970 +vt 0.081959 0.355140 +vt 0.080862 0.364476 +vt 0.077865 0.371311 +vt 0.282787 0.214953 +vt 0.282787 0.158879 +vt 0.282787 0.121495 +vt 0.282787 0.084112 +vt 0.282787 0.046729 +vt 0.282787 0.028037 +vt 0.536896 0.327074 +vt 0.565560 0.261711 +vt 0.549180 0.224360 +vt 0.487700 0.259160 +vt 0.483607 0.261661 +vt 0.479513 0.259160 +vt 0.475419 0.242991 +vt 0.476516 0.233656 +vt 0.479513 0.226822 +vt 0.487700 0.226822 +vt 0.490697 0.233656 +vt 0.491794 0.242991 +vt 0.487685 0.371248 +vt 0.483607 0.373740 +vt 0.479529 0.371248 +vt 0.475451 0.355141 +vt 0.476543 0.345842 +vt 0.479529 0.339034 +vt 0.487685 0.339034 +vt 0.490670 0.345842 +vt 0.491763 0.355141 +vt 0.614754 0.224317 +vt 0.643444 0.277874 +vt 0.651638 0.277874 +vt 0.643444 0.343278 +vt 0.647541 0.243004 +vt 0.721311 0.186916 +vt 0.745902 0.289720 +vt 0.754098 0.271028 +vt 0.737705 0.149533 +vt 0.713115 0.485981 +vt 0.754098 0.401869 +vt 0.745902 0.383178 +vt 0.778689 0.401869 +vt 0.737705 0.523364 +vt 0.020492 0.542056 +vt 0.020492 0.710280 +vt 0.852459 0.093458 +vt 0.877049 0.000000 +vt 0.909836 0.018692 +vt 0.877049 0.261682 +vt 0.852459 0.261682 +vt 0.315574 0.738318 +vt 0.307377 0.757009 +vt 0.274590 0.757009 +vt 0.266393 0.663551 +vt 0.307377 0.644860 +vt 0.663934 0.224299 +vt 0.663934 0.205607 +vt 0.663934 0.186916 +vt 0.663934 0.168224 +vt 0.663934 0.149533 +vt 0.663934 0.130841 +vt 0.663934 0.112150 +vt 0.663934 0.093458 +vt 0.663934 0.074766 +vt 0.663934 0.056075 +vt 0.663934 0.037383 +vt 0.663934 0.018692 +vt 0.663934 0.000000 +vt -0.000000 0.364486 +vt 0.065574 0.373832 +vt -0.000000 0.373832 +vt -0.000000 0.411215 +vt 0.065574 0.420561 +vt -0.000000 0.420561 +vt -0.000000 0.439252 +vt 0.065574 0.448598 +vt -0.000000 0.448598 +vt -0.000000 0.355140 +vt 0.065574 0.364486 +vt -0.000000 0.401869 +vt 0.065574 0.411215 +vt -0.000000 0.383178 +vt 0.065574 0.392523 +vt -0.000000 0.392523 +vt -0.000000 0.429907 +vt 0.065574 0.439252 +vt -0.000000 0.345794 +vt 0.065574 0.355140 +vt 0.065574 0.401869 +vt 0.065574 0.383178 +vt 0.065574 0.429907 +vt -0.000000 0.336449 +vt 0.065574 0.345794 +vt 0.688525 0.196262 +vt 0.704918 0.214953 +vt 0.688525 0.214953 +vt 0.688525 0.158879 +vt 0.704918 0.177570 +vt 0.688525 0.177570 +vt 0.704918 0.196262 +vt 0.688525 0.140187 +vt 0.704918 0.158879 +vt 0.688525 0.121495 +vt 0.704918 0.140187 +vt 0.704918 0.233645 +vt 0.688525 0.233645 +vt 0.688525 0.299065 +vt 0.704918 0.299065 +vt 0.409836 0.448598 +vt 0.081967 0.429907 +vt 0.409836 0.429907 +vt 0.081967 0.411215 +vt 0.409836 0.411215 +vt 0.081967 0.392523 +vt 0.409836 0.392523 +vt 0.081967 0.373832 +vt 0.409836 0.373832 +vt 0.081967 0.355140 +vt 0.409836 0.355140 +vt 0.081967 0.336449 +vt 0.409836 0.336449 +vt 0.081967 0.317757 +vt 0.409836 0.317757 +vt 0.081967 0.299065 +vt 0.409836 0.299065 +vt 0.081967 0.280374 +vt 0.409836 0.280374 +vt 0.081967 0.261682 +vt 0.409836 0.261682 +vt 0.081967 0.242991 +vt 0.409836 0.242991 +vt 0.081967 0.224299 +vt 0.409836 0.224299 +vt 0.704918 0.056075 +vt 0.688525 0.056075 +vt 0.688525 0.336449 +vt 0.704918 0.355140 +vt 0.688525 0.355140 +vt 0.688525 0.037383 +vt 0.688525 0.317757 +vt 0.704918 0.336449 +vt 0.688525 0.018692 +vt 0.704918 0.037383 +vt 0.704918 0.317757 +vt 0.688525 -0.000000 +vt 0.704918 0.018692 +vt 0.663934 0.317757 +vt 0.688525 0.336449 +vt 0.663934 0.336449 +vt 0.663934 0.214953 +vt 0.688525 0.233645 +vt 0.663934 0.233645 +vt 0.688525 0.355140 +vt 0.663934 0.355140 +vt 0.663934 0.121495 +vt 0.688525 0.140187 +vt 0.663934 0.140187 +vt 0.663934 -0.000000 +vt 0.688525 0.018692 +vt 0.663934 0.018692 +vt 0.688525 0.158879 +vt 0.663934 0.158879 +vt 0.688525 0.037383 +vt 0.663934 0.037383 +vt 0.688525 0.177570 +vt 0.663934 0.177570 +vt 0.688525 0.056075 +vt 0.663934 0.056075 +vt 0.688525 0.299065 +vt 0.663934 0.299065 +vt 0.688525 0.121495 +vt 0.688525 0.196262 +vt 0.663934 0.196262 +vt 0.688525 0.317757 +vt 0.688525 0.214953 +vt 0.409836 0.401869 +vt 0.475410 0.392523 +vt 0.475410 0.401869 +vt 0.409836 0.355140 +vt 0.475410 0.345794 +vt 0.475410 0.355140 +vt 0.409836 0.327103 +vt 0.475410 0.317757 +vt 0.475410 0.327103 +vt 0.409836 0.280374 +vt 0.475410 0.271028 +vt 0.475410 0.280374 +vt 0.409836 0.345794 +vt 0.475410 0.336449 +vt 0.409836 0.317757 +vt 0.475410 0.308411 +vt 0.409836 0.271028 +vt 0.475410 0.261682 +vt 0.409836 0.448598 +vt 0.475410 0.439252 +vt 0.475410 0.448598 +vt 0.409836 0.308411 +vt 0.475410 0.299065 +vt 0.409836 0.261682 +vt 0.475410 0.252336 +vt 0.409836 0.439252 +vt 0.475410 0.429907 +vt 0.409836 0.299065 +vt 0.475410 0.289720 +vt 0.409836 0.392523 +vt 0.475410 0.383178 +vt 0.409836 0.252336 +vt 0.475410 0.242991 +vt 0.409836 0.429907 +vt 0.475410 0.420561 +vt 0.409836 0.289720 +vt 0.409836 0.383178 +vt 0.475410 0.373832 +vt 0.409836 0.242991 +vt 0.475410 0.233645 +vt 0.409836 0.420561 +vt 0.475410 0.411215 +vt 0.409836 0.373832 +vt 0.475410 0.364486 +vt 0.409836 0.233645 +vt 0.475410 0.224299 +vt 0.409836 0.411215 +vt 0.409836 0.364486 +vt 0.409836 0.336449 +vt 0.475410 0.336449 +vt 0.745902 0.308411 +vt 0.754098 0.289720 +vt 0.778689 0.289720 +vt 0.754098 0.308411 +vt 0.803279 0.289720 +vt 0.778689 0.308411 +vt 0.721311 0.018692 +vt 0.737705 0.093458 +vt 0.721311 0.074766 +vt 0.721311 0.364486 +vt 0.745902 0.364486 +vt 0.754098 0.364486 +vt 0.778689 0.364486 +vt 0.754098 0.383178 +vt 0.803279 0.364486 +vt 0.778689 0.383178 +vt 0.827869 0.383178 +vt 0.827869 0.364486 +vt 0.852459 0.383178 +vt 0.770492 0.093458 +vt 0.836066 0.074766 +vt 0.840164 0.093458 +vt 0.000000 0.588785 +vt 0.008197 0.663551 +vt 0.000000 0.663551 +vt 0.020492 0.588785 +vt 0.020492 0.663551 +vt 0.008197 0.588785 +vt 0.225410 0.514019 +vt 0.028689 0.448598 +vt 0.225410 0.654206 +vt 0.836066 0.018692 +vt 0.770492 0.000000 +vt 0.836066 0.000000 +vt 0.770492 0.074766 +vt 0.827869 0.308411 +vt 0.803279 0.308411 +vt 0.803279 0.383178 +vt 0.852459 0.289720 +vt 0.827869 0.289720 +vt 0.852459 -0.000000 +vt 0.426230 0.663551 +vt 0.442623 0.738318 +vt 0.426230 0.738318 +vt 0.336066 0.448598 +vt 0.426230 0.523364 +vt 0.336066 0.523364 +vt 0.319672 0.635514 +vt 0.426230 0.635514 +vt 0.319672 0.766355 +vt 0.331967 0.551402 +vt 0.426230 0.850467 +vt 0.442623 0.766355 +vt 0.442623 0.850467 +vt 0.426230 0.551402 +vt 0.331967 0.850467 +vt 0.426230 0.766355 +vt 0.336066 0.878505 +vt 0.426230 0.878505 +vt 0.475410 0.663551 +vt 0.475410 0.738318 +vt 0.491803 0.738318 +vt 0.491803 0.663551 +vt 0.442623 0.635514 +vt 0.442623 0.551402 +vt 0.159836 0.803738 +vt 0.159836 0.785047 +vt 0.168033 0.766355 +vt 0.770492 0.018692 +vt 0.737705 0.000000 +vt 0.721311 -0.000000 +vt 0.721311 0.093458 +vt 0.065574 0.336449 +vt 0.704918 0.121495 +vt 0.081967 0.448598 +vt 0.704918 0.000000 +vt 0.688525 -0.000000 +vt 0.409836 0.336449 +vt 0.409836 0.224299 +vt 0.721311 0.308411 +vt 0.266393 0.448598 +vt 0.225410 0.457944 +vt 0.266393 0.457944 +vt 0.266393 0.514019 +vt 0.225410 0.598131 +vt 0.266393 0.598131 +vt 0.266393 0.654206 +vt 0.442623 0.663551 +vt 0.426230 0.448598 +vt 0.159836 0.766355 vn 0.0000 0.0000 1.0000 vn 0.0000 0.0000 -1.0000 -vn 0.0000 0.9239 0.3827 -vn 0.0000 -0.9239 -0.3827 -vn 0.0000 -0.3827 0.9239 -vn 0.0000 0.3827 -0.9239 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.8944 0.4472 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.5000 0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.9914 0.1305 0.0000 +vn 0.9914 0.1305 0.0000 +vn 0.9914 -0.1305 0.0000 +vn -0.9914 -0.1305 0.0000 vn 0.0000 0.9239 -0.3827 -vn 0.0000 -0.9239 0.3827 -vn 0.0000 0.3827 0.9239 -vn 0.0000 -0.3827 -0.9239 -vn 0.9239 -0.3827 0.0000 -vn -0.9239 0.3827 0.0000 -vn 0.3827 0.9239 0.0000 -vn -0.3827 -0.9239 -0.0000 -vn 0.7071 -0.7071 0.0000 -vn -0.7071 0.7071 0.0000 -vn 0.7071 0.7071 0.0000 -vn -0.7071 -0.7071 -0.0000 -vn 0.9239 0.3827 0.0000 -vn -0.9239 -0.3827 -0.0000 -vn -0.3827 0.9239 0.0000 -vn 0.3827 -0.9239 0.0000 -vn 0.0000 0.7071 0.7071 -vn 0.0000 -0.7071 -0.7071 +vn 0.0000 0.9871 -0.1602 +vn 0.0000 0.8736 -0.4866 vn 0.0000 -0.7071 0.7071 -vn 0.0000 0.7071 -0.7071 +vn 0.0000 -0.8112 0.5847 +vn 0.0000 0.9024 -0.4308 +vn 0.0000 0.9487 -0.3162 +vn 0.0000 -0.9732 0.2298 +vn 0.0000 -0.9522 0.3054 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.9231 0.3845 +vn 0.0000 0.3808 0.9246 +vn 0.0000 -0.8944 0.4472 +vn 0.3702 0.6646 -0.6490 +vn -0.4346 -0.0292 -0.9002 +vn -0.3702 0.6646 -0.6490 +vn 0.3158 0.8487 -0.4243 +vn -0.3158 0.8487 -0.4243 +vn -0.3875 -0.7728 0.5027 +vn 0.3803 -0.8832 0.2744 +vn 0.3875 -0.7728 0.5027 +vn 0.8592 0.4574 -0.2292 +vn 0.9085 0.1932 -0.3706 +vn -0.8592 0.4574 -0.2292 +vn 0.9547 -0.2517 0.1590 +vn -0.9201 -0.3912 -0.0217 +vn -0.4362 -0.7533 -0.4922 +vn 0.9201 -0.3912 -0.0217 +vn -0.9547 -0.2517 0.1590 +vn -0.9085 0.1932 -0.3706 +vn -0.3803 -0.8832 0.2744 +vn 0.4362 -0.7533 -0.4922 +vn 0.4346 -0.0292 -0.9002 +vn 0.0000 0.2298 0.9732 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 0.4472 0.8944 +vn 0.0000 -0.7071 -0.7071 s off -f 313/799/45 314/800/45 315/801/45 -f 314/800/45 316/802/45 315/801/45 -f 317/803/46 318/804/46 319/805/46 -f 318/804/46 320/806/46 319/805/46 -f 317/803/47 319/807/47 315/801/47 -f 319/807/47 313/808/47 315/801/47 -f 320/809/48 318/804/48 314/810/48 -f 318/804/48 316/802/48 314/810/48 -f 319/811/49 320/812/49 313/813/49 -f 320/812/49 314/814/49 313/813/49 -f 315/815/50 316/816/50 317/817/50 -f 316/816/50 318/818/50 317/817/50 -f 321/819/45 322/820/45 323/821/45 -f 322/820/45 324/822/45 323/821/45 -f 325/823/46 326/824/46 327/825/46 -f 326/824/46 328/826/46 327/825/46 -f 325/823/51 327/827/51 323/821/51 -f 327/827/51 321/828/51 323/821/51 -f 328/829/52 326/824/52 322/830/52 -f 326/824/52 324/822/52 322/830/52 -f 327/831/53 328/832/53 321/833/53 -f 328/832/53 322/834/53 321/833/53 -f 323/835/54 324/836/54 325/837/54 -f 324/836/54 326/838/54 325/837/54 -f 329/839/45 330/840/45 331/841/45 -f 330/840/45 332/842/45 331/841/45 -f 333/843/46 334/844/46 335/845/46 -f 334/844/46 336/846/46 335/845/46 -f 333/843/55 335/847/55 331/841/55 -f 335/847/55 329/848/55 331/841/55 -f 336/849/56 334/844/56 330/850/56 -f 334/844/56 332/842/56 330/850/56 -f 335/851/57 336/852/57 329/853/57 -f 336/852/57 330/854/57 329/853/57 -f 331/855/58 332/856/58 333/857/58 -f 332/856/58 334/858/58 333/857/58 -f 337/859/45 338/860/45 339/861/45 -f 338/860/45 340/862/45 339/861/45 -f 341/863/46 342/864/46 343/865/46 -f 342/864/46 344/866/46 343/865/46 -f 341/863/47 343/867/47 339/861/47 -f 343/867/47 337/868/47 339/861/47 -f 344/869/48 342/864/48 338/870/48 -f 342/864/48 340/862/48 338/870/48 -f 343/871/49 344/872/49 337/873/49 -f 344/872/49 338/874/49 337/873/49 -f 339/875/50 340/876/50 341/877/50 -f 340/876/50 342/878/50 341/877/50 -f 345/879/45 346/880/45 347/881/45 -f 346/880/45 348/882/45 347/881/45 -f 349/883/46 350/884/46 351/885/46 -f 350/884/46 352/886/46 351/885/46 -f 349/883/47 351/887/47 347/881/47 -f 351/887/47 345/888/47 347/881/47 -f 352/889/48 350/884/48 346/890/48 -f 350/884/48 348/882/48 346/890/48 -f 351/891/49 352/892/49 345/893/49 -f 352/892/49 346/894/49 345/893/49 -f 347/895/50 348/896/50 349/897/50 -f 348/896/50 350/898/50 349/897/50 -f 353/899/59 354/900/59 355/901/59 -f 354/900/59 356/902/59 355/901/59 -f 357/903/60 358/904/60 359/905/60 -f 358/904/60 360/906/60 359/905/60 -f 357/903/61 359/907/61 355/901/61 -f 359/907/61 353/908/61 355/901/61 -f 360/909/62 358/904/62 354/910/62 -f 358/904/62 356/902/62 354/910/62 -f 359/911/49 360/912/49 353/913/49 -f 360/912/49 354/914/49 353/913/49 -f 355/915/50 356/916/50 357/917/50 -f 356/916/50 358/918/50 357/917/50 -f 361/919/63 362/920/63 363/921/63 -f 362/920/63 364/922/63 363/921/63 -f 365/923/64 366/924/64 367/925/64 -f 366/924/64 368/926/64 367/925/64 -f 365/923/65 367/927/65 363/921/65 -f 367/927/65 361/928/65 363/921/65 -f 368/929/66 366/924/66 362/930/66 -f 366/924/66 364/922/66 362/930/66 -f 367/931/49 368/932/49 361/933/49 -f 368/932/49 362/934/49 361/933/49 -f 363/935/50 364/936/50 365/937/50 -f 364/936/50 366/938/50 365/937/50 -f 369/939/67 370/940/67 371/941/67 -f 370/940/67 372/942/67 371/941/67 -f 373/943/68 374/944/68 375/945/68 -f 374/944/68 376/946/68 375/945/68 -f 373/943/69 375/947/69 371/941/69 -f 375/947/69 369/948/69 371/941/69 -f 376/949/70 374/944/70 370/950/70 -f 374/944/70 372/942/70 370/950/70 -f 375/951/49 376/952/49 369/953/49 -f 376/952/49 370/954/49 369/953/49 -f 371/955/50 372/956/50 373/957/50 -f 372/956/50 374/958/50 373/957/50 -f 377/959/45 378/960/45 379/961/45 -f 378/960/45 380/962/45 379/961/45 -f 381/963/46 382/964/46 383/965/46 -f 382/964/46 384/966/46 383/965/46 -f 381/963/47 383/967/47 379/961/47 -f 383/967/47 377/968/47 379/961/47 -f 384/969/48 382/964/48 378/970/48 -f 382/964/48 380/962/48 378/970/48 -f 383/971/49 384/972/49 377/973/49 -f 384/972/49 378/974/49 377/973/49 -f 379/975/50 380/976/50 381/977/50 -f 380/976/50 382/978/50 381/977/50 -f 385/979/45 386/980/45 387/981/45 -f 386/980/45 388/982/45 387/981/45 -f 389/983/46 390/984/46 391/985/46 -f 390/984/46 392/986/46 391/985/46 -f 389/983/47 391/987/47 387/981/47 -f 391/987/47 385/988/47 387/981/47 -f 392/989/48 390/984/48 386/990/48 -f 390/984/48 388/982/48 386/990/48 -f 391/991/49 392/992/49 385/993/49 -f 392/992/49 386/994/49 385/993/49 -f 387/995/50 388/996/50 389/997/50 -f 388/996/50 390/998/50 389/997/50 -f 393/999/67 394/1000/67 395/1001/67 -f 394/1000/67 396/1002/67 395/1001/67 -f 397/1003/68 398/1004/68 399/1005/68 -f 398/1004/68 400/1006/68 399/1005/68 -f 397/1003/69 399/1007/69 395/1001/69 -f 399/1007/69 393/1008/69 395/1001/69 -f 400/1009/70 398/1004/70 394/1010/70 -f 398/1004/70 396/1002/70 394/1010/70 -f 399/1011/49 400/1012/49 393/1013/49 -f 400/1012/49 394/1014/49 393/1013/49 -f 395/1015/50 396/1016/50 397/1017/50 -f 396/1016/50 398/1018/50 397/1017/50 -f 401/1019/65 402/1020/65 403/1021/65 -f 402/1020/65 404/1022/65 403/1021/65 -f 405/1023/66 406/1024/66 407/1025/66 -f 406/1024/66 408/1026/66 407/1025/66 -f 405/1023/64 407/1027/64 403/1021/64 -f 407/1027/64 401/1028/64 403/1021/64 -f 408/1029/63 406/1024/63 402/1030/63 -f 406/1024/63 404/1022/63 402/1030/63 -f 407/1031/49 408/1032/49 401/1033/49 -f 408/1032/49 402/1034/49 401/1033/49 -f 403/1035/50 404/1036/50 405/1037/50 -f 404/1036/50 406/1038/50 405/1037/50 -f 409/1039/59 410/1040/59 411/1041/59 -f 410/1040/59 412/1042/59 411/1041/59 -f 413/1043/60 414/1044/60 415/1045/60 -f 414/1044/60 416/1046/60 415/1045/60 -f 413/1043/61 415/1047/61 411/1041/61 -f 415/1047/61 409/1048/61 411/1041/61 -f 416/1049/62 414/1044/62 410/1050/62 -f 414/1044/62 412/1042/62 410/1050/62 -f 415/1051/49 416/1052/49 409/1053/49 -f 416/1052/49 410/1054/49 409/1053/49 -f 411/1055/50 412/1056/50 413/1057/50 -f 412/1056/50 414/1058/50 413/1057/50 -f 417/1059/45 418/1060/45 419/1061/45 -f 418/1060/45 420/1062/45 419/1061/45 -f 421/1063/46 422/1064/46 423/1065/46 -f 422/1064/46 424/1066/46 423/1065/46 -f 421/1063/47 423/1067/47 419/1061/47 -f 423/1067/47 417/1068/47 419/1061/47 -f 424/1069/48 422/1064/48 418/1070/48 -f 422/1064/48 420/1062/48 418/1070/48 -f 423/1071/49 424/1072/49 417/1073/49 -f 424/1072/49 418/1074/49 417/1073/49 -f 419/1075/50 420/1076/50 421/1077/50 -f 420/1076/50 422/1078/50 421/1077/50 -f 425/1079/45 426/1080/45 427/1081/45 -f 426/1080/45 428/1082/45 427/1081/45 -f 429/1083/46 430/1084/46 431/1085/46 -f 430/1084/46 432/1086/46 431/1085/46 -f 429/1083/47 431/1087/47 427/1081/47 -f 431/1087/47 425/1088/47 427/1081/47 -f 432/1089/48 430/1084/48 426/1090/48 -f 430/1084/48 428/1082/48 426/1090/48 -f 431/1091/49 432/1092/49 425/1093/49 -f 432/1092/49 426/1094/49 425/1093/49 -f 427/1095/50 428/1096/50 429/1097/50 -f 428/1096/50 430/1098/50 429/1097/50 -f 433/1099/45 434/1100/45 435/1101/45 -f 434/1100/45 436/1102/45 435/1101/45 -f 437/1103/46 438/1104/46 439/1105/46 -f 438/1104/46 440/1106/46 439/1105/46 -f 437/1103/47 439/1107/47 435/1101/47 -f 439/1107/47 433/1108/47 435/1101/47 -f 440/1109/48 438/1104/48 434/1110/48 -f 438/1104/48 436/1102/48 434/1110/48 -f 439/1111/49 440/1112/49 433/1113/49 -f 440/1112/49 434/1114/49 433/1113/49 -f 435/1115/50 436/1116/50 437/1117/50 -f 436/1116/50 438/1118/50 437/1117/50 -f 441/1119/45 442/1120/45 443/1121/45 -f 442/1120/45 444/1122/45 443/1121/45 -f 445/1123/46 446/1124/46 447/1125/46 -f 446/1124/46 448/1126/46 447/1125/46 -f 445/1127/47 447/1128/47 443/1129/47 -f 447/1128/47 441/1130/47 443/1129/47 -f 448/1131/48 446/1132/48 442/1133/48 -f 446/1132/48 444/1134/48 442/1133/48 -f 447/1135/49 448/1136/49 441/1119/49 -f 448/1136/49 442/1137/49 441/1119/49 -f 443/1138/50 444/1139/50 445/1140/50 -f 444/1139/50 446/1141/50 445/1140/50 -f 449/1142/45 450/1143/45 451/1144/45 -f 450/1143/45 452/1145/45 451/1144/45 -f 453/1146/46 454/1147/46 455/1148/46 -f 454/1147/46 456/1149/46 455/1148/46 -f 453/1146/51 455/1150/51 451/1144/51 -f 455/1150/51 449/1151/51 451/1144/51 -f 456/1152/52 454/1147/52 450/1153/52 -f 454/1147/52 452/1145/52 450/1153/52 -f 455/1154/53 456/1155/53 449/1156/53 -f 456/1155/53 450/1157/53 449/1156/53 -f 451/1158/54 452/1159/54 453/1160/54 -f 452/1159/54 454/1161/54 453/1160/54 -f 457/1162/45 458/1163/45 459/1164/45 -f 458/1163/45 460/1165/45 459/1164/45 -f 461/1166/46 462/1167/46 463/1168/46 -f 462/1167/46 464/1169/46 463/1168/46 -f 461/1166/71 463/1170/71 459/1164/71 -f 463/1170/71 457/1171/71 459/1164/71 -f 464/1172/72 462/1167/72 458/1173/72 -f 462/1167/72 460/1165/72 458/1173/72 -f 463/1174/73 464/1175/73 457/1176/73 -f 464/1175/73 458/1177/73 457/1176/73 -f 459/1178/74 460/1179/74 461/1180/74 -f 460/1179/74 462/1181/74 461/1180/74 -f 465/1182/45 466/1183/45 467/1184/45 -f 466/1183/45 468/1185/45 467/1184/45 -f 469/1186/46 470/1187/46 471/1188/46 -f 470/1187/46 472/1189/46 471/1188/46 -f 469/1186/47 471/1190/47 467/1184/47 -f 471/1190/47 465/1191/47 467/1184/47 -f 472/1192/48 470/1187/48 466/1193/48 -f 470/1187/48 468/1185/48 466/1193/48 -f 471/1194/49 472/1195/49 465/1196/49 -f 472/1195/49 466/1197/49 465/1196/49 -f 467/1198/50 468/1199/50 469/1200/50 -f 468/1199/50 470/1201/50 469/1200/50 -f 473/1202/59 474/1203/59 475/1204/59 -f 474/1203/59 476/1205/59 475/1204/59 -f 477/1206/60 478/1207/60 479/1208/60 -f 478/1207/60 480/1209/60 479/1208/60 -f 477/1206/61 479/1210/61 475/1204/61 -f 479/1210/61 473/1211/61 475/1204/61 -f 480/1212/62 478/1207/62 474/1213/62 -f 478/1207/62 476/1205/62 474/1213/62 -f 479/1214/49 480/1215/49 473/1216/49 -f 480/1215/49 474/1217/49 473/1216/49 -f 475/1218/50 476/1219/50 477/1220/50 -f 476/1219/50 478/1221/50 477/1220/50 -f 481/1222/63 482/1223/63 483/1224/63 -f 482/1223/63 484/1225/63 483/1224/63 -f 485/1226/64 486/1227/64 487/1228/64 -f 486/1227/64 488/1229/64 487/1228/64 -f 485/1226/65 487/1230/65 483/1224/65 -f 487/1230/65 481/1231/65 483/1224/65 -f 488/1232/66 486/1227/66 482/1233/66 -f 486/1227/66 484/1225/66 482/1233/66 -f 487/1234/49 488/1235/49 481/1236/49 -f 488/1235/49 482/1237/49 481/1236/49 -f 483/1238/50 484/1239/50 485/1240/50 -f 484/1239/50 486/1241/50 485/1240/50 -f 489/1242/67 490/1243/67 491/1244/67 -f 490/1243/67 492/1245/67 491/1244/67 -f 493/1246/68 494/1247/68 495/1248/68 -f 494/1247/68 496/1249/68 495/1248/68 -f 493/1246/69 495/1250/69 491/1244/69 -f 495/1250/69 489/1251/69 491/1244/69 -f 496/1252/70 494/1247/70 490/1253/70 -f 494/1247/70 492/1245/70 490/1253/70 -f 495/1254/49 496/1255/49 489/1256/49 -f 496/1255/49 490/1257/49 489/1256/49 -f 491/1258/50 492/1259/50 493/1260/50 -f 492/1259/50 494/1261/50 493/1260/50 -f 497/1262/45 498/1263/45 499/1264/45 -f 498/1263/45 500/1265/45 499/1264/45 -f 501/1266/46 502/1267/46 503/1268/46 -f 502/1267/46 504/1269/46 503/1268/46 -f 501/1266/47 503/1270/47 499/1264/47 -f 503/1270/47 497/1271/47 499/1264/47 -f 504/1272/48 502/1267/48 498/1273/48 -f 502/1267/48 500/1265/48 498/1273/48 -f 503/1274/49 504/1275/49 497/1276/49 -f 504/1275/49 498/1277/49 497/1276/49 -f 499/1278/50 500/1279/50 501/1280/50 -f 500/1279/50 502/1281/50 501/1280/50 -f 505/1282/59 506/1283/59 507/1284/59 -f 506/1283/59 508/1285/59 507/1284/59 -f 509/1286/60 510/1287/60 511/1288/60 -f 510/1287/60 512/1289/60 511/1288/60 -f 509/1286/61 511/1290/61 507/1284/61 -f 511/1290/61 505/1291/61 507/1284/61 -f 512/1292/62 510/1287/62 506/1293/62 -f 510/1287/62 508/1285/62 506/1293/62 -f 511/1294/49 512/1295/49 505/1296/49 -f 512/1295/49 506/1297/49 505/1296/49 -f 507/1298/50 508/1299/50 509/1300/50 -f 508/1299/50 510/1301/50 509/1300/50 -f 513/1302/63 514/1303/63 515/1304/63 -f 514/1303/63 516/1305/63 515/1304/63 -f 517/1306/64 518/1307/64 519/1308/64 -f 518/1307/64 520/1309/64 519/1308/64 -f 517/1306/65 519/1310/65 515/1304/65 -f 519/1310/65 513/1311/65 515/1304/65 -f 520/1312/66 518/1307/66 514/1313/66 -f 518/1307/66 516/1305/66 514/1313/66 -f 519/1314/49 520/1315/49 513/1316/49 -f 520/1315/49 514/1317/49 513/1316/49 -f 515/1318/50 516/1319/50 517/1320/50 -f 516/1319/50 518/1321/50 517/1320/50 -f 521/1322/67 522/1323/67 523/1324/67 -f 522/1323/67 524/1325/67 523/1324/67 -f 525/1326/68 526/1327/68 527/1328/68 -f 526/1327/68 528/1329/68 527/1328/68 -f 525/1326/69 527/1330/69 523/1324/69 -f 527/1330/69 521/1331/69 523/1324/69 -f 528/1332/70 526/1327/70 522/1333/70 -f 526/1327/70 524/1325/70 522/1333/70 -f 527/1334/49 528/1335/49 521/1336/49 -f 528/1335/49 522/1337/49 521/1336/49 -f 523/1338/50 524/1339/50 525/1340/50 -f 524/1339/50 526/1341/50 525/1340/50 -f 529/1342/67 530/1343/67 531/1344/67 -f 530/1343/67 532/1345/67 531/1344/67 -f 533/1346/68 534/1347/68 535/1348/68 -f 534/1347/68 536/1349/68 535/1348/68 -f 533/1346/69 535/1350/69 531/1344/69 -f 535/1350/69 529/1351/69 531/1344/69 -f 536/1352/70 534/1347/70 530/1353/70 -f 534/1347/70 532/1345/70 530/1353/70 -f 535/1354/49 536/1355/49 529/1356/49 -f 536/1355/49 530/1357/49 529/1356/49 -f 531/1358/50 532/1359/50 533/1360/50 -f 532/1359/50 534/1361/50 533/1360/50 -f 537/1362/63 538/1363/63 539/1364/63 -f 538/1363/63 540/1365/63 539/1364/63 -f 541/1366/64 542/1367/64 543/1368/64 -f 542/1367/64 544/1369/64 543/1368/64 -f 541/1366/65 543/1370/65 539/1364/65 -f 543/1370/65 537/1371/65 539/1364/65 -f 544/1372/66 542/1367/66 538/1373/66 -f 542/1367/66 540/1365/66 538/1373/66 -f 543/1374/49 544/1375/49 537/1376/49 -f 544/1375/49 538/1377/49 537/1376/49 -f 539/1378/50 540/1379/50 541/1380/50 -f 540/1379/50 542/1381/50 541/1380/50 -f 545/1382/59 546/1383/59 547/1384/59 -f 546/1383/59 548/1385/59 547/1384/59 -f 549/1386/60 550/1387/60 551/1388/60 -f 550/1387/60 552/1389/60 551/1388/60 -f 549/1386/61 551/1390/61 547/1384/61 -f 551/1390/61 545/1391/61 547/1384/61 -f 552/1392/62 550/1387/62 546/1393/62 -f 550/1387/62 548/1385/62 546/1393/62 -f 551/1394/49 552/1395/49 545/1396/49 -f 552/1395/49 546/1397/49 545/1396/49 -f 547/1398/50 548/1399/50 549/1400/50 -f 548/1399/50 550/1401/50 549/1400/50 -f 553/1402/45 554/1403/45 555/1404/45 -f 554/1403/45 556/1405/45 555/1404/45 -f 557/1406/46 558/1407/46 559/1408/46 -f 558/1407/46 560/1409/46 559/1408/46 -f 557/1406/47 559/1410/47 555/1404/47 -f 559/1410/47 553/1411/47 555/1404/47 -f 560/1412/48 558/1407/48 554/1413/48 -f 558/1407/48 556/1405/48 554/1413/48 -f 559/1414/49 560/1415/49 553/1416/49 -f 560/1415/49 554/1417/49 553/1416/49 -f 555/1418/50 556/1419/50 557/1420/50 -f 556/1419/50 558/1421/50 557/1420/50 -f 561/1422/67 562/1423/67 563/1424/67 -f 562/1423/67 564/1425/67 563/1424/67 -f 565/1426/68 566/1427/68 567/1428/68 -f 566/1427/68 568/1429/68 567/1428/68 -f 565/1426/69 567/1430/69 563/1424/69 -f 567/1430/69 561/1431/69 563/1424/69 -f 568/1432/70 566/1427/70 562/1433/70 -f 566/1427/70 564/1425/70 562/1433/70 -f 567/1434/49 568/1435/49 561/1436/49 -f 568/1435/49 562/1437/49 561/1436/49 -f 563/1438/50 564/1439/50 565/1440/50 -f 564/1439/50 566/1441/50 565/1440/50 -f 569/1442/63 570/1443/63 571/1444/63 -f 570/1443/63 572/1445/63 571/1444/63 -f 573/1446/64 574/1447/64 575/1448/64 -f 574/1447/64 576/1449/64 575/1448/64 -f 573/1446/65 575/1450/65 571/1444/65 -f 575/1450/65 569/1451/65 571/1444/65 -f 576/1452/66 574/1447/66 570/1453/66 -f 574/1447/66 572/1445/66 570/1453/66 -f 575/1454/49 576/1455/49 569/1456/49 -f 576/1455/49 570/1457/49 569/1456/49 -f 571/1458/50 572/1459/50 573/1460/50 -f 572/1459/50 574/1461/50 573/1460/50 -f 577/1462/59 578/1463/59 579/1464/59 -f 578/1463/59 580/1465/59 579/1464/59 -f 581/1466/60 582/1467/60 583/1468/60 -f 582/1467/60 584/1469/60 583/1468/60 -f 581/1466/61 583/1470/61 579/1464/61 -f 583/1470/61 577/1471/61 579/1464/61 -f 584/1472/62 582/1467/62 578/1473/62 -f 582/1467/62 580/1465/62 578/1473/62 -f 583/1474/49 584/1475/49 577/1476/49 -f 584/1475/49 578/1477/49 577/1476/49 -f 579/1478/50 580/1479/50 581/1480/50 -f 580/1479/50 582/1481/50 581/1480/50 -f 585/1482/45 586/1483/45 587/1484/45 -f 586/1483/45 588/1485/45 587/1484/45 -f 589/1486/46 590/1487/46 591/1488/46 -f 590/1487/46 592/1489/46 591/1488/46 -f 589/1486/47 591/1490/47 587/1484/47 -f 591/1490/47 585/1491/47 587/1484/47 -f 592/1492/48 590/1487/48 586/1493/48 -f 590/1487/48 588/1485/48 586/1493/48 -f 591/1494/49 592/1495/49 585/1496/49 -f 592/1495/49 586/1497/49 585/1496/49 -f 587/1498/50 588/1499/50 589/1500/50 -f 588/1499/50 590/1501/50 589/1500/50 -f 593/1502/67 594/1503/67 595/1504/67 -f 594/1503/67 596/1505/67 595/1504/67 -f 597/1506/68 598/1507/68 599/1508/68 -f 598/1507/68 600/1509/68 599/1508/68 -f 597/1506/69 599/1510/69 595/1504/69 -f 599/1510/69 593/1511/69 595/1504/69 -f 600/1512/70 598/1507/70 594/1513/70 -f 598/1507/70 596/1505/70 594/1513/70 -f 599/1514/49 600/1515/49 593/1516/49 -f 600/1515/49 594/1517/49 593/1516/49 -f 595/1518/50 596/1519/50 597/1520/50 -f 596/1519/50 598/1521/50 597/1520/50 -f 601/1522/63 602/1523/63 603/1524/63 -f 602/1523/63 604/1525/63 603/1524/63 -f 605/1526/64 606/1527/64 607/1528/64 -f 606/1527/64 608/1529/64 607/1528/64 -f 605/1526/65 607/1530/65 603/1524/65 -f 607/1530/65 601/1531/65 603/1524/65 -f 608/1532/66 606/1527/66 602/1533/66 -f 606/1527/66 604/1525/66 602/1533/66 -f 607/1534/49 608/1535/49 601/1536/49 -f 608/1535/49 602/1537/49 601/1536/49 -f 603/1538/50 604/1539/50 605/1540/50 -f 604/1539/50 606/1541/50 605/1540/50 -f 609/1542/59 610/1543/59 611/1544/59 -f 610/1543/59 612/1545/59 611/1544/59 -f 613/1546/60 614/1547/60 615/1548/60 -f 614/1547/60 616/1549/60 615/1548/60 -f 613/1546/61 615/1550/61 611/1544/61 -f 615/1550/61 609/1551/61 611/1544/61 -f 616/1552/62 614/1547/62 610/1553/62 -f 614/1547/62 612/1545/62 610/1553/62 -f 615/1554/49 616/1555/49 609/1556/49 -f 616/1555/49 610/1557/49 609/1556/49 -f 611/1558/50 612/1559/50 613/1560/50 -f 612/1559/50 614/1561/50 613/1560/50 -f 617/1562/63 618/1563/63 619/1564/63 -f 618/1563/63 620/1565/63 619/1564/63 -f 621/1566/64 622/1567/64 623/1568/64 -f 622/1567/64 624/1569/64 623/1568/64 -f 621/1566/65 623/1570/65 619/1564/65 -f 623/1570/65 617/1571/65 619/1564/65 -f 624/1572/66 622/1567/66 618/1573/66 -f 622/1567/66 620/1565/66 618/1573/66 -f 623/1574/49 624/1575/49 617/1576/49 -f 624/1575/49 618/1577/49 617/1576/49 -f 619/1578/50 620/1579/50 621/1580/50 -f 620/1579/50 622/1581/50 621/1580/50 -f 625/1582/67 626/1583/67 627/1584/67 -f 626/1583/67 628/1585/67 627/1584/67 -f 629/1586/68 630/1587/68 631/1588/68 -f 630/1587/68 632/1589/68 631/1588/68 -f 629/1586/69 631/1590/69 627/1584/69 -f 631/1590/69 625/1591/69 627/1584/69 -f 632/1592/70 630/1587/70 626/1593/70 -f 630/1587/70 628/1585/70 626/1593/70 -f 631/1594/49 632/1595/49 625/1596/49 -f 632/1595/49 626/1597/49 625/1596/49 -f 627/1598/50 628/1599/50 629/1600/50 -f 628/1599/50 630/1601/50 629/1600/50 -f 633/1602/45 634/1603/45 635/1604/45 -f 634/1603/45 636/1605/45 635/1604/45 -f 637/1606/46 638/1607/46 639/1608/46 -f 638/1607/46 640/1609/46 639/1608/46 -f 637/1606/47 639/1610/47 635/1604/47 -f 639/1610/47 633/1611/47 635/1604/47 -f 640/1612/48 638/1607/48 634/1613/48 -f 638/1607/48 636/1605/48 634/1613/48 -f 639/1614/49 640/1615/49 633/1616/49 -f 640/1615/49 634/1617/49 633/1616/49 -f 635/1618/50 636/1619/50 637/1620/50 -f 636/1619/50 638/1621/50 637/1620/50 -f 641/1622/59 642/1623/59 643/1624/59 -f 642/1623/59 644/1625/59 643/1624/59 -f 645/1626/60 646/1627/60 647/1628/60 -f 646/1627/60 648/1629/60 647/1628/60 -f 645/1626/61 647/1630/61 643/1624/61 -f 647/1630/61 641/1631/61 643/1624/61 -f 648/1632/62 646/1627/62 642/1633/62 -f 646/1627/62 644/1625/62 642/1633/62 -f 647/1634/49 648/1635/49 641/1636/49 -f 648/1635/49 642/1637/49 641/1636/49 -f 643/1638/50 644/1639/50 645/1640/50 -f 644/1639/50 646/1641/50 645/1640/50 -f 649/1642/45 650/1643/45 651/1644/45 -f 650/1643/45 652/1645/45 651/1644/45 -f 653/1646/46 654/1647/46 655/1648/46 -f 654/1647/46 656/1649/46 655/1648/46 -f 653/1646/47 655/1650/47 651/1644/47 -f 655/1650/47 649/1651/47 651/1644/47 -f 656/1652/48 654/1647/48 650/1653/48 -f 654/1647/48 652/1645/48 650/1653/48 -f 655/1654/49 656/1655/49 649/1656/49 -f 656/1655/49 650/1657/49 649/1656/49 -f 651/1658/50 652/1659/50 653/1660/50 -f 652/1659/50 654/1661/50 653/1660/50 -f 657/1662/45 658/1663/45 659/1664/45 -f 658/1663/45 660/1665/45 659/1664/45 -f 661/1666/46 662/1667/46 663/1668/46 -f 662/1667/46 664/1669/46 663/1668/46 -f 661/1666/51 663/1670/51 659/1664/51 -f 663/1670/51 657/1671/51 659/1664/51 -f 664/1672/52 662/1667/52 658/1673/52 -f 662/1667/52 660/1665/52 658/1673/52 -f 663/1674/53 664/1675/53 657/1676/53 -f 664/1675/53 658/1677/53 657/1676/53 -f 659/1678/54 660/1679/54 661/1680/54 -f 660/1679/54 662/1681/54 661/1680/54 -f 665/1682/45 666/1683/45 667/1684/45 -f 666/1683/45 668/1685/45 667/1684/45 -f 669/1686/46 670/1687/46 671/1688/46 -f 670/1687/46 672/1689/46 671/1688/46 -f 669/1686/71 671/1690/71 667/1684/71 -f 671/1690/71 665/1691/71 667/1684/71 -f 672/1692/72 670/1687/72 666/1693/72 -f 670/1687/72 668/1685/72 666/1693/72 -f 671/1694/73 672/1695/73 665/1696/73 -f 672/1695/73 666/1697/73 665/1696/73 -f 667/1698/74 668/1699/74 669/1700/74 -f 668/1699/74 670/1701/74 669/1700/74 -f 673/1702/45 674/1703/45 675/1704/45 -f 674/1703/45 676/1705/45 675/1704/45 -f 677/1706/46 678/1707/46 679/1708/46 -f 678/1707/46 680/1709/46 679/1708/46 -f 677/1706/47 679/1710/47 675/1704/47 -f 679/1710/47 673/1711/47 675/1704/47 -f 680/1712/48 678/1707/48 674/1713/48 -f 678/1707/48 676/1705/48 674/1713/48 -f 679/1714/49 680/1715/49 673/1716/49 -f 680/1715/49 674/1717/49 673/1716/49 -f 675/1718/50 676/1719/50 677/1720/50 -f 676/1719/50 678/1721/50 677/1720/50 -f 681/1722/45 682/1723/45 683/1724/45 -f 682/1723/45 684/1725/45 683/1724/45 -f 685/1726/46 686/1727/46 687/1728/46 -f 686/1727/46 688/1729/46 687/1728/46 -f 685/1726/47 687/1730/47 683/1724/47 -f 687/1730/47 681/1731/47 683/1724/47 -f 688/1732/48 686/1727/48 682/1733/48 -f 686/1727/48 684/1725/48 682/1733/48 -f 687/1734/49 688/1735/49 681/1736/49 -f 688/1735/49 682/1737/49 681/1736/49 -f 683/1738/50 684/1739/50 685/1740/50 -f 684/1739/50 686/1741/50 685/1740/50 -f 689/1742/45 690/1743/45 691/1744/45 -f 690/1743/45 692/1745/45 691/1744/45 -f 693/1746/46 694/1747/46 695/1748/46 -f 694/1747/46 696/1749/46 695/1748/46 -f 693/1746/51 695/1750/51 691/1744/51 -f 695/1750/51 689/1751/51 691/1744/51 -f 696/1752/52 694/1747/52 690/1753/52 -f 694/1747/52 692/1745/52 690/1753/52 -f 695/1754/53 696/1755/53 689/1756/53 -f 696/1755/53 690/1757/53 689/1756/53 -f 691/1758/54 692/1759/54 693/1760/54 -f 692/1759/54 694/1761/54 693/1760/54 -f 697/1762/59 698/1763/59 699/1764/59 -f 698/1763/59 700/1765/59 699/1764/59 -f 701/1766/60 702/1767/60 703/1768/60 -f 702/1767/60 704/1769/60 703/1768/60 -f 701/1766/61 703/1770/61 699/1764/61 -f 703/1770/61 697/1771/61 699/1764/61 -f 704/1772/62 702/1767/62 698/1773/62 -f 702/1767/62 700/1765/62 698/1773/62 -f 703/1774/49 704/1775/49 697/1776/49 -f 704/1775/49 698/1777/49 697/1776/49 -f 699/1778/50 700/1779/50 701/1780/50 -f 700/1779/50 702/1781/50 701/1780/50 -f 705/1782/67 706/1783/67 707/1784/67 -f 706/1783/67 708/1785/67 707/1784/67 -f 709/1786/68 710/1787/68 711/1788/68 -f 710/1787/68 712/1789/68 711/1788/68 -f 709/1786/69 711/1790/69 707/1784/69 -f 711/1790/69 705/1791/69 707/1784/69 -f 712/1792/70 710/1787/70 706/1793/70 -f 710/1787/70 708/1785/70 706/1793/70 -f 711/1794/49 712/1795/49 705/1796/49 -f 712/1795/49 706/1797/49 705/1796/49 -f 707/1798/50 708/1799/50 709/1800/50 -f 708/1799/50 710/1801/50 709/1800/50 -f 713/1802/67 714/1803/67 715/1804/67 -f 714/1803/67 716/1805/67 715/1804/67 -f 717/1806/68 718/1807/68 719/1808/68 -f 718/1807/68 720/1809/68 719/1808/68 -f 717/1806/69 719/1810/69 715/1804/69 -f 719/1810/69 713/1811/69 715/1804/69 -f 720/1812/70 718/1807/70 714/1813/70 -f 718/1807/70 716/1805/70 714/1813/70 -f 719/1814/49 720/1815/49 713/1816/49 -f 720/1815/49 714/1817/49 713/1816/49 -f 715/1818/50 716/1819/50 717/1820/50 -f 716/1819/50 718/1821/50 717/1820/50 -f 721/1822/59 722/1823/59 723/1824/59 -f 722/1823/59 724/1825/59 723/1824/59 -f 725/1826/60 726/1827/60 727/1828/60 -f 726/1827/60 728/1829/60 727/1828/60 -f 725/1826/61 727/1830/61 723/1824/61 -f 727/1830/61 721/1831/61 723/1824/61 -f 728/1832/62 726/1827/62 722/1833/62 -f 726/1827/62 724/1825/62 722/1833/62 -f 727/1834/49 728/1835/49 721/1836/49 -f 728/1835/49 722/1837/49 721/1836/49 -f 723/1838/50 724/1839/50 725/1840/50 -f 724/1839/50 726/1841/50 725/1840/50 -f 729/1842/45 730/1843/45 731/1844/45 -f 730/1843/45 732/1845/45 731/1844/45 -f 733/1846/46 734/1847/46 735/1848/46 -f 734/1847/46 736/1849/46 735/1848/46 -f 733/1846/47 735/1850/47 731/1844/47 -f 735/1850/47 729/1851/47 731/1844/47 -f 736/1852/48 734/1847/48 730/1853/48 -f 734/1847/48 732/1845/48 730/1853/48 -f 735/1854/49 736/1855/49 729/1856/49 -f 736/1855/49 730/1857/49 729/1856/49 -f 731/1858/50 732/1859/50 733/1860/50 -f 732/1859/50 734/1861/50 733/1860/50 +f 229/346/74 231/347/74 223/348/74 +f 205/349/74 216/350/74 204/351/74 +f 203/352/74 216/353/74 215/354/74 +f 202/355/74 215/356/74 214/357/74 +f 202/355/74 213/358/74 201/359/74 +f 200/360/74 213/361/74 212/362/74 +f 200/360/74 211/363/74 199/364/74 +f 210/365/74 211/366/74 222/367/74 +f 210/365/74 221/368/74 209/369/74 +f 208/370/74 221/371/74 220/372/74 +f 208/370/74 219/373/74 207/374/74 +f 207/374/74 218/375/74 206/376/74 +f 205/377/74 218/378/74 217/379/74 +f 245/380/75 253/381/75 252/382/75 +f 246/383/75 247/384/75 253/381/75 +f 235/385/75 248/386/75 247/384/75 +f 236/387/75 249/388/75 248/386/75 +f 238/389/75 249/388/75 237/390/75 +f 240/391/75 298/392/75 239/393/75 +f 244/394/75 252/382/75 251/395/75 +f 260/396/74 271/397/74 259/398/74 +f 254/399/74 272/400/74 260/396/74 +f 255/401/74 261/402/74 254/399/74 +f 256/403/74 262/404/74 255/401/74 +f 257/405/74 263/406/74 256/403/74 +f 250/407/75 239/393/75 297/408/75 +f 303/409/75 243/410/75 251/395/75 +f 242/411/75 302/412/75 301/413/75 +f 241/414/75 301/413/75 300/415/75 +f 241/414/75 299/416/75 240/391/75 +f 259/398/74 270/417/74 258/418/74 +f 304/419/74 265/420/74 257/405/74 +f 258/418/74 270/417/74 269/421/74 +f 268/422/74 309/423/74 269/421/74 +f 267/424/74 308/425/74 268/422/74 +f 306/426/74 267/424/74 266/427/74 +f 305/428/74 266/427/74 265/420/74 +f 385/429/75 381/430/75 377/431/75 +f 373/432/75 369/433/75 365/434/75 +f 194/435/74 283/436/74 195/437/74 +f 193/438/74 284/439/74 194/435/74 +f 192/440/74 273/441/74 193/438/74 +f 191/442/74 274/443/74 192/440/74 +f 190/444/74 275/445/74 191/442/74 +f 195/437/74 282/446/74 196/447/74 +f 315/448/74 282/446/74 324/449/74 +f 276/450/74 314/451/74 318/452/74 +f 313/453/74 190/444/74 189/454/74 +f 188/455/74 313/453/74 189/454/74 +f 187/456/74 312/457/74 188/455/74 +f 198/458/74 311/459/74 187/456/74 +f 197/460/74 317/461/74 198/458/74 +f 196/447/74 316/462/74 197/460/74 +f 323/463/74 282/446/74 281/464/74 +f 280/465/74 323/463/74 281/464/74 +f 279/466/74 322/467/74 280/465/74 +f 320/468/74 279/466/74 278/469/74 +f 319/470/74 278/469/74 277/471/74 +f 318/452/74 277/471/74 276/450/74 +f 346/472/75 351/473/75 345/474/75 +f 351/473/75 344/475/75 345/474/75 +f 344/475/75 353/476/75 343/477/75 +f 353/476/75 342/478/75 343/477/75 +f 361/479/75 346/472/75 347/480/75 +f 360/481/75 347/480/75 348/482/75 +f 360/481/75 330/483/75 333/484/75 +f 328/485/75 354/486/75 332/487/75 +f 341/488/75 328/485/75 327/489/75 +f 340/490/75 327/489/75 325/491/75 +f 339/492/75 325/491/75 326/493/75 +f 331/494/75 339/492/75 326/493/75 +f 349/495/75 331/494/75 329/496/75 +f 330/483/75 349/495/75 329/496/75 +f 359/497/75 333/484/75 338/498/75 +f 358/499/75 338/498/75 337/500/75 +f 336/501/75 358/499/75 337/500/75 +f 356/502/75 336/501/75 335/503/75 +f 334/504/75 356/502/75 335/503/75 +f 332/487/75 355/505/75 334/504/75 +f 392/506/74 387/507/74 389/508/74 +f 399/509/76 396/510/76 401/511/76 +f 408/512/74 403/513/74 405/514/74 +f 416/515/77 414/516/77 417/517/77 +f 424/518/77 422/519/77 420/520/77 +f 421/521/76 423/522/76 419/523/76 +f 429/524/76 423/522/76 425/525/76 +f 424/518/77 430/526/77 426/527/77 +f 402/528/76 445/529/76 398/530/76 +f 418/531/77 446/532/77 448/533/77 +f 392/534/77 389/535/77 395/536/77 +f 443/537/78 450/538/78 444/539/78 +f 444/540/77 450/538/77 400/541/77 +f 449/542/76 412/543/76 410/544/76 +f 392/534/79 449/542/79 407/545/79 +f 415/546/76 449/542/76 443/547/76 +f 451/548/74 459/549/74 454/550/74 +f 476/551/77 480/552/77 478/553/77 +f 473/554/76 475/555/76 471/556/76 +f 472/557/77 478/553/77 474/558/77 +f 477/559/76 479/560/76 475/555/76 +f 223/348/74 224/561/74 227/562/74 +f 224/561/74 225/563/74 227/562/74 +f 225/563/74 226/564/74 227/562/74 +f 227/562/74 228/565/74 229/346/74 +f 229/346/74 230/566/74 231/347/74 +f 231/347/74 232/567/74 233/568/74 +f 233/568/74 234/569/74 231/347/74 +f 234/569/74 223/348/74 231/347/74 +f 227/562/74 229/346/74 223/348/74 +f 205/349/74 217/570/74 216/350/74 +f 203/352/74 204/351/74 216/353/74 +f 202/355/74 203/352/74 215/356/74 +f 202/355/74 214/571/74 213/358/74 +f 200/360/74 201/359/74 213/361/74 +f 200/360/74 212/572/74 211/363/74 +f 210/365/74 199/364/74 211/366/74 +f 210/365/74 222/573/74 221/368/74 +f 208/370/74 209/369/74 221/371/74 +f 208/370/74 220/574/74 219/373/74 +f 207/374/74 219/575/74 218/375/74 +f 205/377/74 206/376/74 218/378/74 +f 245/380/75 246/383/75 253/381/75 +f 246/383/75 235/385/75 247/384/75 +f 235/385/75 236/387/75 248/386/75 +f 236/387/75 237/390/75 249/388/75 +f 238/389/75 250/407/75 249/388/75 +f 240/391/75 299/416/75 298/392/75 +f 244/394/75 245/380/75 252/382/75 +f 260/396/74 272/400/74 271/397/74 +f 254/399/74 261/402/74 272/400/74 +f 255/401/74 262/404/74 261/402/74 +f 256/403/74 263/406/74 262/404/74 +f 257/405/74 264/576/74 263/406/74 +f 238/389/75 239/393/75 250/407/75 +f 239/393/75 298/392/75 297/408/75 +f 302/412/75 243/410/75 303/409/75 +f 243/410/75 244/394/75 251/395/75 +f 242/411/75 243/410/75 302/412/75 +f 241/414/75 242/411/75 301/413/75 +f 241/414/75 300/415/75 299/416/75 +f 259/398/74 271/397/74 270/417/74 +f 305/428/74 265/420/74 304/419/74 +f 265/420/74 264/576/74 257/405/74 +f 309/423/74 310/577/74 269/421/74 +f 310/577/74 258/418/74 269/421/74 +f 268/422/74 308/425/74 309/423/74 +f 267/424/74 307/578/74 308/425/74 +f 306/426/74 307/578/74 267/424/74 +f 305/428/74 306/426/74 266/427/74 +f 377/431/75 376/579/75 375/580/75 +f 375/580/75 386/581/75 377/431/75 +f 386/581/75 385/429/75 377/431/75 +f 385/429/75 384/582/75 381/430/75 +f 384/582/75 383/583/75 381/430/75 +f 383/583/75 382/584/75 381/430/75 +f 381/430/75 380/585/75 379/586/75 +f 379/586/75 378/587/75 381/430/75 +f 378/587/75 377/431/75 381/430/75 +f 365/434/75 364/588/75 363/589/75 +f 363/589/75 374/590/75 365/434/75 +f 374/590/75 373/432/75 365/434/75 +f 373/432/75 372/591/75 369/433/75 +f 372/591/75 371/592/75 369/433/75 +f 371/592/75 370/593/75 369/433/75 +f 369/433/75 368/594/75 367/595/75 +f 367/595/75 366/596/75 369/433/75 +f 366/596/75 365/434/75 369/433/75 +f 194/435/74 284/439/74 283/436/74 +f 193/438/74 273/441/74 284/439/74 +f 192/440/74 274/443/74 273/441/74 +f 191/442/74 275/445/74 274/443/74 +f 190/444/74 276/450/74 275/445/74 +f 195/437/74 283/436/74 282/446/74 +f 315/448/74 196/447/74 282/446/74 +f 276/450/74 190/444/74 314/451/74 +f 313/453/74 314/451/74 190/444/74 +f 188/455/74 312/457/74 313/453/74 +f 187/456/74 311/459/74 312/457/74 +f 198/458/74 317/461/74 311/459/74 +f 197/460/74 316/462/74 317/461/74 +f 196/447/74 315/448/74 316/462/74 +f 323/463/74 324/449/74 282/446/74 +f 280/465/74 322/467/74 323/463/74 +f 279/466/74 321/597/74 322/467/74 +f 320/468/74 321/597/74 279/466/74 +f 319/470/74 320/468/74 278/469/74 +f 318/452/74 319/470/74 277/471/74 +f 346/472/75 362/598/75 351/473/75 +f 351/473/75 352/599/75 344/475/75 +f 344/475/75 352/599/75 353/476/75 +f 353/476/75 354/486/75 342/478/75 +f 361/479/75 362/598/75 346/472/75 +f 360/481/75 361/479/75 347/480/75 +f 360/481/75 348/482/75 330/483/75 +f 328/485/75 342/478/75 354/486/75 +f 341/488/75 342/478/75 328/485/75 +f 340/490/75 341/488/75 327/489/75 +f 339/492/75 340/490/75 325/491/75 +f 331/494/75 350/600/75 339/492/75 +f 349/495/75 350/600/75 331/494/75 +f 330/483/75 348/482/75 349/495/75 +f 359/497/75 360/481/75 333/484/75 +f 358/499/75 359/497/75 338/498/75 +f 336/501/75 357/601/75 358/499/75 +f 356/502/75 357/601/75 336/501/75 +f 334/504/75 355/505/75 356/502/75 +f 332/487/75 354/486/75 355/505/75 +f 392/506/74 391/602/74 387/507/74 +f 388/603/76 387/507/76 394/604/76 +f 387/507/76 391/602/76 394/604/76 +f 391/602/76 393/605/76 394/604/76 +f 393/605/76 401/511/76 396/510/76 +f 394/604/76 393/605/76 396/510/76 +f 401/511/76 402/528/76 398/530/76 +f 398/530/76 399/509/76 401/511/76 +f 408/512/74 407/606/74 403/513/74 +f 408/512/77 405/514/77 411/607/77 +f 405/514/77 406/608/77 411/607/77 +f 411/607/77 413/609/77 409/610/77 +f 413/609/77 416/515/77 417/517/77 +f 417/517/77 409/610/77 413/609/77 +f 409/610/77 408/512/77 411/607/77 +f 414/516/77 418/531/77 417/517/77 +f 424/518/77 426/527/77 422/519/77 +f 421/521/76 425/525/76 423/522/76 +f 429/524/76 427/611/76 423/522/76 +f 424/518/77 428/612/77 430/526/77 +f 402/528/76 447/613/76 445/529/76 +f 418/531/77 414/516/77 446/532/77 +f 389/535/77 390/614/77 395/536/77 +f 395/536/77 397/615/77 450/538/77 +f 397/615/77 400/541/77 450/538/77 +f 450/538/77 392/534/77 395/536/77 +f 443/537/78 449/542/78 450/538/78 +f 410/544/76 404/616/76 403/617/76 +f 403/617/76 407/545/76 410/544/76 +f 407/545/76 449/542/76 410/544/76 +f 449/542/76 415/546/76 412/543/76 +f 392/534/79 450/538/79 449/542/79 +f 454/550/74 453/618/74 463/619/74 +f 463/619/74 464/620/74 451/548/74 +f 451/548/74 452/621/74 459/549/74 +f 459/549/74 460/622/74 454/550/74 +f 454/550/74 463/619/74 451/548/74 +f 473/554/76 477/559/76 475/555/76 +f 472/557/77 476/551/77 478/553/77 +s 1 +f 193/623/80 204/351/81 192/624/81 +f 192/624/81 203/352/82 191/625/82 +f 191/625/82 202/355/77 190/626/77 +f 190/626/77 201/359/83 189/627/83 +f 189/627/83 200/360/84 188/628/84 +f 188/628/84 199/364/79 187/629/79 +f 187/629/79 210/365/85 198/630/85 +f 198/630/85 209/369/86 197/631/86 +f 197/631/86 208/370/76 196/632/76 +f 196/632/76 207/374/87 195/633/87 +f 195/633/87 206/376/88 194/634/88 +f 194/634/88 205/377/80 193/635/80 +f 214/636/76 225/637/87 213/638/87 +f 221/639/82 232/640/77 220/641/77 +f 218/642/84 229/643/79 217/644/79 +f 215/645/86 226/646/76 214/636/76 +f 222/647/81 233/648/82 221/639/82 +f 212/649/88 223/650/80 211/651/80 +f 219/652/83 230/653/84 218/642/84 +f 216/654/85 227/655/86 215/645/86 +f 211/651/80 234/656/81 222/647/81 +f 213/638/87 224/657/88 212/649/88 +f 220/641/77 231/658/83 219/652/83 +f 217/659/79 228/660/85 216/654/85 +f 253/661/85 259/662/86 252/663/86 +f 248/664/84 254/665/79 247/666/79 +f 247/666/79 260/667/85 253/661/85 +f 249/668/83 255/669/84 248/664/84 +f 250/670/89 256/671/83 249/668/83 +f 252/663/86 258/672/90 251/673/90 +f 303/674/91 258/672/90 310/675/91 +f 279/676/80 290/677/81 278/678/81 +f 278/678/81 289/679/82 277/680/82 +f 277/680/82 288/681/77 276/682/77 +f 276/682/77 287/683/83 275/684/83 +f 275/684/83 286/685/84 274/686/84 +f 274/686/84 285/687/79 273/688/79 +f 273/688/79 296/689/85 284/690/85 +f 284/690/85 295/691/86 283/692/86 +f 283/692/86 294/693/76 282/694/76 +f 282/694/76 293/695/87 281/696/87 +f 281/696/87 292/697/88 280/698/88 +f 280/698/88 291/699/80 279/700/80 +f 304/701/92 250/670/89 297/702/92 +f 301/703/88 307/704/80 300/705/80 +f 298/706/82 304/701/92 297/702/92 +f 302/707/87 308/708/88 301/703/88 +f 299/709/81 305/710/82 298/706/82 +f 303/674/91 309/711/87 302/707/87 +f 300/712/80 306/713/81 299/709/81 +f 319/714/82 335/715/81 320/716/81 +f 313/717/83 328/718/89 314/719/89 +f 320/716/81 336/720/80 321/721/80 +f 315/722/90 329/723/86 316/724/86 +f 321/725/80 337/726/88 322/727/88 +f 316/724/86 331/728/85 317/729/85 +f 322/727/88 338/730/87 323/731/87 +f 317/729/85 326/732/79 311/733/79 +f 323/731/87 333/734/91 324/735/91 +f 314/719/89 332/736/92 318/737/92 +f 324/735/91 330/738/90 315/722/90 +f 311/733/79 325/739/84 312/740/84 +f 318/737/92 334/741/82 319/714/82 +f 312/740/84 327/742/83 313/717/83 +f 374/743/81 339/744/80 350/745/81 +f 367/746/86 344/747/85 343/748/86 +f 382/749/84 359/750/83 358/751/84 +f 375/752/80 352/753/88 351/754/80 +f 368/755/85 345/756/79 344/747/85 +f 383/757/83 360/758/77 359/750/83 +f 376/759/88 353/760/87 352/753/88 +f 369/761/79 346/762/84 345/763/79 +f 384/764/77 361/765/82 360/758/77 +f 377/766/87 354/767/76 353/760/87 +f 370/768/84 347/769/83 346/762/84 +f 385/770/82 362/771/81 361/765/82 +f 363/772/80 340/773/88 339/744/80 +f 378/774/76 355/775/86 354/767/76 +f 371/776/83 348/777/77 347/769/83 +f 386/778/81 351/754/80 362/771/81 +f 364/779/88 341/780/87 340/773/88 +f 379/781/86 356/782/85 355/775/86 +f 372/783/77 349/784/82 348/777/77 +f 365/785/87 342/786/76 341/780/87 +f 380/787/85 357/788/79 356/782/85 +f 373/789/82 350/745/81 349/784/82 +f 366/790/76 343/748/86 342/786/76 +f 381/791/79 358/751/84 357/792/79 +f 390/793/93 387/507/79 388/603/93 +f 394/794/93 390/793/93 388/603/93 +f 396/795/94 395/796/93 394/794/93 +f 399/797/95 397/798/94 396/795/94 +f 407/799/96 393/800/97 392/801/96 +f 406/608/93 403/802/79 404/803/93 +f 410/804/93 406/608/93 404/803/93 +f 412/805/94 411/806/93 410/804/93 +f 415/807/95 413/808/94 412/805/94 +f 414/809/95 443/810/98 446/811/99 +f 401/812/100 441/813/101 402/814/100 +f 423/815/102 428/816/103 424/817/102 +f 426/527/104 429/818/105 425/525/104 +f 430/819/105 427/820/103 429/818/105 +f 435/821/80 423/522/102 424/822/102 +f 426/527/104 425/525/104 438/823/79 +f 442/824/101 417/825/100 418/826/100 +f 401/812/100 393/800/97 439/827/101 +f 399/797/95 444/828/98 400/829/95 +f 443/810/98 416/830/95 415/807/95 +f 443/810/98 445/831/99 446/811/99 +f 402/814/100 441/813/101 447/613/106 +f 445/831/99 444/828/98 398/832/95 +f 441/813/101 448/833/106 447/613/106 +f 448/833/106 442/824/101 418/826/100 +f 458/834/107 467/835/108 455/836/109 +f 454/550/110 455/836/109 453/618/111 +f 451/837/112 457/838/113 452/839/114 +f 458/834/107 460/840/115 462/841/116 +f 455/836/109 463/842/117 453/618/111 +f 459/843/118 462/841/116 460/840/115 +f 466/844/119 467/845/108 468/846/120 +f 452/839/114 461/847/121 459/843/118 +f 464/848/122 465/849/123 466/844/119 +f 451/850/112 466/844/119 456/851/124 +f 465/849/123 455/836/109 467/845/108 +f 467/835/108 469/852/125 468/853/120 +f 456/854/124 469/852/125 457/855/113 +f 468/846/120 456/851/124 466/844/119 +f 461/847/121 470/856/126 462/841/116 +f 458/834/107 462/841/116 470/856/126 +f 457/838/113 469/857/125 461/847/121 +f 474/558/74 477/559/127 473/554/74 +f 471/858/75 476/551/128 472/557/75 +f 478/553/127 479/560/129 477/559/127 +f 475/859/128 480/860/130 476/551/128 +f 440/861/101 409/862/97 417/825/100 +f 393/800/97 440/861/101 439/827/101 +f 409/862/97 407/799/96 408/863/96 +f 393/800/97 391/864/96 392/801/96 +f 193/623/80 205/349/80 204/351/81 +f 192/624/81 204/351/81 203/352/82 +f 191/625/82 203/352/82 202/355/77 +f 190/626/77 202/355/77 201/359/83 +f 189/627/83 201/359/83 200/360/84 +f 188/628/84 200/360/84 199/364/79 +f 187/629/79 199/364/79 210/365/85 +f 198/630/85 210/365/85 209/369/86 +f 197/631/86 209/369/86 208/370/76 +f 196/632/76 208/370/76 207/374/87 +f 195/633/87 207/374/87 206/376/88 +f 194/634/88 206/376/88 205/377/80 +f 214/636/76 226/646/76 225/637/87 +f 221/639/82 233/648/82 232/640/77 +f 218/642/84 230/653/84 229/643/79 +f 215/645/86 227/655/86 226/646/76 +f 222/647/81 234/656/81 233/648/82 +f 212/649/88 224/657/88 223/650/80 +f 219/652/83 231/658/83 230/653/84 +f 216/654/85 228/660/85 227/655/86 +f 211/651/80 223/650/80 234/656/81 +f 213/638/87 225/637/87 224/657/88 +f 220/641/77 232/640/77 231/658/83 +f 217/659/79 229/865/79 228/660/85 +f 253/661/85 260/667/85 259/662/86 +f 248/664/84 255/669/84 254/665/79 +f 247/666/79 254/665/79 260/667/85 +f 249/668/83 256/671/83 255/669/84 +f 250/670/89 257/866/89 256/671/83 +f 252/663/86 259/662/86 258/672/90 +f 303/674/91 251/673/90 258/672/90 +f 279/676/80 291/867/80 290/677/81 +f 278/678/81 290/677/81 289/679/82 +f 277/680/82 289/679/82 288/681/77 +f 276/682/77 288/681/77 287/683/83 +f 275/684/83 287/683/83 286/685/84 +f 274/686/84 286/685/84 285/687/79 +f 273/688/79 285/687/79 296/689/85 +f 284/690/85 296/689/85 295/691/86 +f 283/692/86 295/691/86 294/693/76 +f 282/694/76 294/693/76 293/695/87 +f 281/696/87 293/695/87 292/697/88 +f 280/698/88 292/697/88 291/699/80 +f 304/701/92 257/866/89 250/670/89 +f 301/703/88 308/708/88 307/704/80 +f 298/706/82 305/710/82 304/701/92 +f 302/707/87 309/711/87 308/708/88 +f 299/709/81 306/713/81 305/710/82 +f 303/674/91 310/675/91 309/711/87 +f 300/712/80 307/868/80 306/713/81 +f 319/714/82 334/741/82 335/715/81 +f 313/717/83 327/742/83 328/718/89 +f 320/716/81 335/715/81 336/720/80 +f 315/722/90 330/738/90 329/723/86 +f 321/725/80 336/869/80 337/726/88 +f 316/724/86 329/723/86 331/728/85 +f 322/727/88 337/726/88 338/730/87 +f 317/729/85 331/728/85 326/732/79 +f 323/731/87 338/730/87 333/734/91 +f 314/719/89 328/718/89 332/736/92 +f 324/735/91 333/734/91 330/738/90 +f 311/733/79 326/732/79 325/739/84 +f 318/737/92 332/736/92 334/741/82 +f 312/740/84 325/739/84 327/742/83 +f 374/743/81 363/772/80 339/744/80 +f 367/746/86 368/755/85 344/747/85 +f 382/749/84 383/757/83 359/750/83 +f 375/752/80 376/759/88 352/753/88 +f 368/755/85 369/870/79 345/756/79 +f 383/757/83 384/764/77 360/758/77 +f 376/759/88 377/766/87 353/760/87 +f 369/761/79 370/768/84 346/762/84 +f 384/764/77 385/770/82 361/765/82 +f 377/766/87 378/774/76 354/767/76 +f 370/768/84 371/776/83 347/769/83 +f 385/770/82 386/778/81 362/771/81 +f 363/772/80 364/779/88 340/773/88 +f 378/774/76 379/781/86 355/775/86 +f 371/776/83 372/783/77 348/777/77 +f 386/778/81 375/752/80 351/754/80 +f 364/779/88 365/785/87 341/780/87 +f 379/781/86 380/787/85 356/782/85 +f 372/783/77 373/789/82 349/784/82 +f 365/785/87 366/790/76 342/786/76 +f 380/787/85 381/871/79 357/788/79 +f 373/789/82 374/743/81 350/745/81 +f 366/790/76 367/746/86 343/748/86 +f 381/791/79 382/749/84 358/751/84 +f 390/793/93 389/872/79 387/507/79 +f 394/794/93 395/796/93 390/793/93 +f 396/795/94 397/798/94 395/796/93 +f 399/797/95 400/829/95 397/798/94 +f 407/799/96 409/862/97 393/800/97 +f 406/608/93 405/514/79 403/802/79 +f 410/804/93 411/806/93 406/608/93 +f 412/805/94 413/808/94 411/806/93 +f 415/807/95 416/830/95 413/808/94 +f 401/812/100 439/827/101 441/813/101 +f 423/815/102 427/820/103 428/816/103 +f 426/527/104 430/819/105 429/818/105 +f 430/819/105 428/816/103 427/820/103 +f 424/822/102 420/873/80 437/874/80 +f 420/873/80 433/875/80 437/874/80 +f 431/876/80 419/523/80 435/821/80 +f 419/523/80 423/522/102 435/821/80 +f 424/822/102 437/874/80 435/821/80 +f 425/525/104 421/521/79 436/877/79 +f 421/521/79 432/878/79 436/877/79 +f 434/879/79 422/519/79 438/823/79 +f 422/519/79 426/527/104 438/823/79 +f 425/525/104 436/877/79 438/823/79 +f 442/824/101 440/861/101 417/825/100 +f 399/797/95 398/832/95 444/828/98 +f 443/810/98 414/809/95 416/830/95 +f 443/810/98 444/828/98 445/831/99 +f 441/813/101 442/824/101 448/833/106 +f 458/834/107 470/880/126 467/835/108 +f 454/550/110 458/834/107 455/836/109 +f 451/837/112 456/881/124 457/838/113 +f 458/834/107 454/550/110 460/840/115 +f 455/836/109 465/849/123 463/842/117 +f 459/843/118 461/847/121 462/841/116 +f 466/844/119 465/849/123 467/845/108 +f 452/839/114 457/838/113 461/847/121 +f 464/848/122 463/842/117 465/849/123 +f 451/850/112 464/848/122 466/844/119 +f 467/835/108 470/880/126 469/852/125 +f 456/854/124 468/853/120 469/852/125 +f 461/847/121 469/857/125 470/856/126 +f 474/558/74 478/553/127 477/559/127 +f 471/858/75 475/859/128 476/551/128 +f 478/553/127 480/552/129 479/560/129 +f 475/859/128 479/882/130 480/860/130 +f 393/800/97 409/862/97 440/861/101 diff --git a/src/main/resources/assets/hbm/textures/blocks/playground/stainless_frame_thick.png b/src/main/resources/assets/hbm/textures/blocks/playground/stainless_frame_thick.png new file mode 100644 index 0000000000000000000000000000000000000000..f985a131915b22cd3c3ac84382ae0652120b2221 GIT binary patch literal 332 zcmV-S0ki&zP)AEh78Cci#1%5mp02F5X?8N#rT$W`zH_vnGi?ix)@Vc%S zID~Kr`>OxI$$_e7!Dc_kNa37AM6zHJNn;mwdk$<4oO9gH@yvl$ z6?jGYTz`Q@1b}VZD5|Q;hR=I(Tb2blvTYFT`A}7cVR*A`;#F1cBY5u<{JGN4=QBN+ e**17t7JdNY|J3|ZXi+Hu0000qGktYw;78Lh>vaSe4brh(W1o>$J>S73FgUg$H`%VST9G_4tj&eL-Aa*|pr)w}qbjX?88jKKjEw^FRNV lUN6n%XAAJkw0M3-e1`v}z9}8wuL3>E;OXk;vd$@?2>@ZDahm`D literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/playground/stainless_frameless.png b/src/main/resources/assets/hbm/textures/blocks/playground/stainless_frameless.png new file mode 100644 index 0000000000000000000000000000000000000000..4e111cba4be3a78d8a905932a9c39ceb053812b6 GIT binary patch literal 215 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf#YOtUc7zj1dzci4xCK$#PKc0zZK{=LxQ z5cc6m^rq&sJd)l;;@6|j+wSNN6`g7N=6=;_uQwmhrm&~0=~oz?f6)42N;J@A44$rj JF6*2UngFt{PzV43 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit.png b/src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit.png new file mode 100644 index 0000000000000000000000000000000000000000..4b2906b25ea6a40bab9b736166f1e456ac675892 GIT binary patch literal 849 zcmV-X1FrmuP)z@DiY=$d1?vY#|cVgOm+S;SDf# zEV&^q`9*mC#*h%tvoicIzbb-U?!6v+<~?5)_xJaEKB}&30Gg(uEK8cE0iY~PthE?p z7*j%}e60CCe^!>|Xz)+F#TdMnKeyH2XY$2Za_s}J<X(-n;PAlotEwuz_uSszUSzlW z4)2^}fwHvoL18le3{cg9TZCkwegb=9fnx<*kY&JidOgazz zB<@`CLU`$UB8S60`u_gT+uIx0*VinUORlc2*lxFMHk-4}r07c3E09t=e5}A?u~0qC zN#_BL@YLcbF%UyO)jZI>R=KqJDNks%ft2EnG5VAE_4Rc>{MjX2>dCgz6yl4b&>PUs z16sV=z@_i`A^yuqIkud09RZA+C!BNL=NR!%PfsjB4=C_S^MU@(lS2HbUP!KF zs+L&8|9|8I*4m``fQCOS%MxSE=;J+h*}r>5uHnzceJuGD`GAH$Iv=ps0_pMr;g8M- zj@6~+0jcPGKq^%}AeDRXKee_3g2Vo7t>yXo8Th+w^2evh2b^A#(+Aa-JBTs^^NI)PVPXKj#Aq{G{)N=6oOmKZ$`k zA5h@ud|=K8=6qn{n)88?_(__%ekUoUaJ;dTI`&^*=ZJ6HmZB*1`2gtViJ_TuuY6Gy bIOq5SgWo_(%KcLD00000NkvXXu0mjfI0mU6 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit_bright.png b/src/main/resources/assets/hbm/textures/blocks/playground/stainless_kit_bright.png new file mode 100644 index 0000000000000000000000000000000000000000..126670dc63c10eeac39bd8d3b5f746abd4466450 GIT binary patch literal 764 zcmV$;*xXlso&!A_giMHlsvr?T)dP&E~8v>=>sq2AAlcMnS;qvJLfj<6it8r zHTYkv)fV14hYrG$<_WUzHR7q7G%(Ne${|lN68r!F>$&c<SEMNkZ9u&E1ot*m7yU*W&=l9?~gs=S3RW~v^WJ7PjA{a{dwi=sr3h^ z{M_L`w;}$k`GR?kQ-oYt6j^HSyH8R%^TNW<{(kNnF{Pk|(@h)Z0KLiJ>FVdQ&MBb@0OzxD3IG5A literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/agar_base.png b/src/main/resources/assets/hbm/textures/items/agar_base.png new file mode 100644 index 0000000000000000000000000000000000000000..74d5be9bf3c9ae734524feb36c6b135efe646662 GIT binary patch literal 275 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfCC{uSLT zS7P2Dmc;MGQFq;j$GPbHrtFK~ZKtI=&U@}R*^uqCO>;+t=2M4D*^VwNR&gDZU{7ew zy}c+?>i-faj=1YnmrjwHJY~}Q31`@ql`__D%)R~c?eBNIetY#E#Pn%${0NC>K4-t- zz1(rZ(%9r#YRfljbp2rQTDj!)u7pd4G9Nj0SQxU`Hc!~3Bl~{iEQUj;Kk@u#-pepA Wvf!i(lfNd=R}7x6elF{r5}E+|1!}?o literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo.png b/src/main/resources/assets/hbm/textures/items/ammo.png index cd34dcb95682c9ae92a87a5af3146092ec99c472..afb65b571dc8513355868ef9412ff0b23b849307 100644 GIT binary patch delta 11044 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 OZdY}UbxO6I!~P!+WaC)? diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.g12.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.g12.png new file mode 100644 index 0000000000000000000000000000000000000000..73659c9052263149269e921ab9b2ea5a3e1633c9 GIT binary patch literal 289 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfM;xR7f zLvGV8?*8BXx$N6>=Ko<_7oP1i)+y3_$=w*1Ei?O=;mo$8cKzQ@3Or0doD`;iTCS3p zALq@zopr0DPuGng9R* literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_magnum.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_magnum.png new file mode 100644 index 0000000000000000000000000000000000000000..2e3b56e7eef2f7f3cf2ff7df7d95a76593f0d1e3 GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#Vf*Z?l0w>%(vZ=Vc%G%v-tNJD%pzImnZFcjuCY2@F$a-I}<_U2uYqh|0SKC%*m< zw~_v_`}4ix46V4X;-V@S7Yh?nOYWbNGbbl=&v8#;h`-xxX;~z;kMUar?@LC%2Hus7 zcGnA>ugsp}v9nW3)7((;cVfQdwtAuFhownB@)mW~E56#{a^~Yj-GEaoW=-EOvK8ny N22WQ%mvv4FO#uJhQ6K;S literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_slug.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.g12_bp_slug.png new file mode 100644 index 0000000000000000000000000000000000000000..98643063f656ee81102eb895cf25cf43c34ae211 GIT binary patch literal 316 zcmV-C0mJ@@P)Y!5XV1}_yA3$NNed*$WNm36G;{a(ItaV;Nb2{IQc4q zui%zRkrW|ROA(6T5U^q+1sDIoIY>%1X>2FI)7_W5569iXf6JImZjMdK;`NhHBVS&k z@Bm3pt0FHu@^-lJtP3l}bgzFf80j&eWbO_2x23e@GAnSe8YarbJOh5ybp$ z#Oz~%SeAwF`vAE~asYrhjtxMRQe$r#q!2Ic4rgPo<-W3H`D1+2nHp#=|xOr}A&z%TKhGIo^z?nyT$A~gcuhXwO!nK zxsdPV?i1l(`6k^d(hFMFAl7xT`k6q(-=yvTRXCSSsGGH7ZS2I;{hMUdKg_!o^(%8x o?e#Q9!%O#8SS#3z&O6FIVMSulKhCdTfsSVIboFyt=akR{0JfD~82|tP literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..7fc1069d686da597e8126b6982759ac9dbb2bcb0 GIT binary patch literal 294 zcmV+>0oneEP)kZZJ4sdD}ql0-55s!ud*nI^C_anqYwdecvyTy$ZX?Ca{L&Uvc+`{t5sh s62mZrh(xV5^0^OfZn&KzIaz&P= zXXCU^&_IAJ%NoeF2v?DdKpSFas4Cw3?prG&G0*cTBC#lnC?dU9zJc_9Tu18lH;J-= U<1lZiZ2$lO07*qoM6N<$f{J;HN&o-= literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_fmj.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_fmj.png new file mode 100644 index 0000000000000000000000000000000000000000..e5b3f474d43bcfced8fbc78a067f5dbfdcc73ed9 GIT binary patch literal 314 zcmV-A0mc4_P)ArBA|u;3dwm#lGcw{z$NgbE${BB6_K z;39W%au6I0*|P{m94#%ULlF#3f|pMHrh5*YALkzUV-!FT1Tr*|BvB@S1<*7NQ54~M z-WfI-04RzA$8n4i3qWhF(ln*(I?A$S|5Q`$>`90{JhavdkhjO0*=ogtB^3t&xPSS) zdKY_KXsy+8jsVQpKL|j@L2ekZNa3pSzNUm?K$;Nb8#oUqXzB$H=(;2A3tQPulP~>;M1& M07*qoM6N<$f|gx@N&o-= literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_jhp.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.r762_jhp.png new file mode 100644 index 0000000000000000000000000000000000000000..fb7683576af51e7a7f2ae6ed239c4568a72d1ba4 GIT binary patch literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfjUH1t-b9MEsY&L8`J74?>?AyF>Nc)^*j6@!#O_PT9o?2V5X1OY2ha` z)P&nUqaPE0=V9ky*n0?=!ahzur`+uGiNM3qoftqq#lEg(epdy1gRbOU0 zx^>J>aRw{d7E^U>$LB+}ZR+p$8QrP+)U|MV>)eM$y4-)9rUh&=okKk>`N zM&IDcj=he}4~-7@{^tRLU1#e%_^1D!$n$@`p5X8Q|M&j=KmT~izyCJNKF^Q1o?yCU z;X=msias}35+7Xux}E3i&)<@_%3BRqRAvdt>S?U|QR(yi|Nrmb{sVRT?J8$muQ)wB z60EzvUWNH(+nfHBA3!PF%vl>Hoi?SVI8XS=P{_53b$_>w2+;Qop00i_>zopr0Cr1? AU;qFB literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/flaregun.png b/src/main/resources/assets/hbm/textures/models/weapons/flaregun.png new file mode 100644 index 0000000000000000000000000000000000000000..248dc94f3470edcfb7e9a914f082a7b43b22e1cf GIT binary patch literal 3459 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/greasegun.png b/src/main/resources/assets/hbm/textures/models/weapons/greasegun.png index faa19137b7c272134509be040274ba62126d5151..3af33de6823c970d07174cd4d8dda63ec8f443ac 100644 GIT binary patch delta 4840 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 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/heavy_revolver.png b/src/main/resources/assets/hbm/textures/models/weapons/heavy_revolver.png new file mode 100644 index 0000000000000000000000000000000000000000..c1bf5c1ba327debd68d0e7b84f1b2cc34fbb206e GIT binary patch literal 4462 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 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/maresleg.png b/src/main/resources/assets/hbm/textures/models/weapons/maresleg.png index b520a29b369be3da7cbe58679e0985cf2e99e3b3..9d8abca1bf778c1522eb0e2bfc1f866b25bbabd0 100644 GIT binary patch literal 10499 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 FV1fz}1Q-AS literal 4117 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 diff --git a/src/main/resources/pack.mcmeta b/src/main/resources/pack.mcmeta deleted file mode 100644 index 6476c146a..000000000 --- a/src/main/resources/pack.mcmeta +++ /dev/null @@ -1,18 +0,0 @@ -{ - "pack" : { - "pack_format" : 1, - "description" : "NTM language pack" - }, - "language" : { - "te_ST" : { - "name" : "This is a testing language", - "region" : "ST", - "bidirectional" : false - }, - "en_NT" : { - "name" : "Advanced English", - "region" : "Minecraftia", - "bidirectional" : false - } - } -} From 78a33ddedfe4a7313521c27f53a329e2f698340a Mon Sep 17 00:00:00 2001 From: Vaern Date: Sun, 6 Oct 2024 13:51:13 -0700 Subject: [PATCH 50/63] american 180 model + texture --- .../assets/hbm/models/weapons/am-180.obj | 4373 +++++++++++++++++ .../hbm/textures/models/weapons/am-180.png | Bin 0 -> 40405 bytes 2 files changed, 4373 insertions(+) create mode 100644 src/main/resources/assets/hbm/models/weapons/am-180.obj create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/am-180.png diff --git a/src/main/resources/assets/hbm/models/weapons/am-180.obj b/src/main/resources/assets/hbm/models/weapons/am-180.obj new file mode 100644 index 000000000..2ba65342d --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/am-180.obj @@ -0,0 +1,4373 @@ +# Blender v3.2.0 OBJ File: 'am-180.blend' +# www.blender.org +mtllib am-180.mtl +o Rifle_Plane +v 0.343750 -2.437500 1.299170 +v 0.343750 2.062500 1.299170 +v -0.343750 -2.437500 1.299170 +v -0.343750 2.062500 1.299170 +v 0.343750 -1.625000 2.049170 +v -0.343750 -1.625000 2.049170 +v 0.343750 0.750000 2.049170 +v -0.343750 0.750000 2.049170 +v -0.156250 -1.625000 2.049170 +v 0.156250 -1.625000 2.049170 +v 0.343750 0.750000 2.424170 +v -0.343750 0.750000 2.424170 +v 0.343750 1.125000 2.424170 +v -0.343750 1.125000 2.424170 +v 0.343750 1.187500 2.299170 +v -0.343750 1.187500 2.299170 +v 0.218750 1.187500 2.424170 +v -0.218750 1.187500 2.424170 +v -0.125000 0.750000 2.049170 +v 0.125000 0.750000 2.049170 +v 0.125000 0.812500 2.236670 +v -0.125000 0.812500 2.236670 +v 0.125000 0.750000 2.424170 +v -0.125000 0.750000 2.424170 +v 0.125000 0.812500 2.424170 +v -0.125000 0.812500 2.424170 +v 0.343750 5.562500 2.299170 +v -0.343750 5.562500 2.299170 +v 0.218750 5.375000 2.424170 +v -0.218750 5.375000 2.424170 +v 0.343750 5.562500 1.299170 +v -0.343750 5.562500 1.299170 +v 0.343750 -1.625000 1.799170 +v -0.343750 -1.625000 1.799170 +v 0.218750 -2.062500 2.049170 +v -0.218750 -2.062500 2.049170 +v 0.218750 -1.625000 1.799170 +v 0.218750 -1.625000 1.861670 +v 0.218750 -1.934359 1.916588 +v -0.156250 -1.934359 1.916588 +v -0.218750 -1.934359 1.916588 +v -0.156250 -1.625000 1.861670 +v -0.218750 -1.625000 1.861670 +v -0.218750 -1.625000 1.799170 +v -0.125000 -11.875000 1.861670 +v -0.088388 -11.875000 1.950058 +v 0.000000 -11.875000 1.986670 +v 0.088388 -11.875000 1.950058 +v 0.125000 -11.875000 1.861670 +v 0.088388 -11.875000 1.773282 +v -0.000000 -11.875000 1.736670 +v -0.088388 -11.875000 1.773282 +v -0.312500 -11.875000 1.861670 +v -0.220971 -11.875000 2.082641 +v 0.220971 -11.875000 2.082641 +v 0.312500 -11.875000 1.861670 +v 0.220971 -11.875000 1.640699 +v -0.000000 -11.875000 1.549170 +v -0.220971 -11.875000 1.640699 +v -0.312500 -11.000000 1.861670 +v -0.220971 -11.000000 2.082641 +v 0.000000 -11.000000 2.174170 +v 0.220971 -11.000000 2.082641 +v 0.312500 -11.000000 1.861670 +v 0.220971 -11.000000 1.640699 +v -0.000000 -11.000000 1.549170 +v -0.220971 -11.000000 1.640699 +v -0.187500 -7.625000 1.861670 +v -0.132583 -7.625000 1.994253 +v 0.000000 -7.625000 2.049170 +v 0.132583 -7.625000 1.994253 +v 0.187500 -7.625000 1.861670 +v 0.132583 -7.625000 1.729087 +v -0.000000 -8.000000 1.674170 +v -0.132583 -7.625000 1.729087 +v 0.218750 -2.437500 2.049170 +v 0.218750 -2.250000 1.799170 +v -0.312500 -4.062500 1.861670 +v -0.270633 -4.062500 2.017920 +v -0.156250 -4.062500 2.132303 +v 0.000000 -4.062500 2.174170 +v 0.156250 -4.062500 2.132303 +v 0.270633 -4.062500 2.017920 +v 0.312500 -4.062500 1.861670 +v -0.312500 -2.363165 1.861670 +v -0.156250 -3.750000 2.132303 +v 0.000000 -3.750000 2.174170 +v 0.156250 -3.750000 2.132303 +v 0.312500 -2.363165 1.861670 +v 0.218750 -2.363165 1.861670 +v -0.270633 -2.437500 2.017920 +v 0.270633 -2.427792 2.017920 +v -0.239382 -2.437500 2.049170 +v 0.239382 -2.437500 2.049170 +v -0.239382 -3.750000 2.049170 +v 0.239382 -3.750000 2.049170 +v -0.218750 -2.437500 2.049170 +v 0.295753 -4.062500 1.799170 +v 0.295753 -2.250000 1.799170 +v -0.295753 -4.062500 1.799170 +v -0.295753 -2.250000 1.799170 +v -0.218750 -2.363165 1.861670 +v -0.218750 -2.250000 1.799170 +v 0.343750 -2.437500 1.799170 +v 0.343750 -2.812500 1.799170 +v 0.437500 -2.812500 1.736670 +v 0.437500 -2.812500 1.111670 +v 0.312500 -2.812500 1.049170 +v -0.343750 -2.437500 1.799170 +v -0.343750 -2.812500 1.799170 +v -0.437500 -2.812500 1.736670 +v -0.437500 -2.812500 1.111670 +v -0.312500 -2.812500 1.049170 +v 0.312500 -7.875000 1.799170 +v 0.437500 -8.000000 1.736670 +v 0.437500 -8.000000 1.361670 +v 0.312500 -8.000000 1.299170 +v -0.312500 -7.875000 1.799170 +v -0.437500 -8.000000 1.736670 +v -0.437500 -8.000000 1.361670 +v -0.312500 -8.000000 1.299170 +v -0.187500 -10.812500 1.861670 +v -0.132583 -10.812500 1.994253 +v 0.000000 -10.812500 2.049170 +v 0.132583 -10.812500 1.994253 +v 0.187500 -10.812500 1.861670 +v 0.132583 -10.812500 1.729087 +v -0.000000 -10.812500 1.674170 +v -0.132583 -10.812500 1.729087 +v 0.156250 2.406250 2.424170 +v 0.156250 5.031250 2.424170 +v -0.156250 2.406250 2.424170 +v -0.156250 5.031250 2.424170 +v 0.156250 2.406250 2.486670 +v 0.156250 5.031250 2.486670 +v -0.156250 2.406250 2.486670 +v -0.156250 5.031250 2.486670 +v 0.093750 2.406250 2.517920 +v 0.093750 5.031250 2.517920 +v -0.093750 2.406250 2.517920 +v -0.093750 5.031250 2.517920 +v 0.218750 4.093750 2.486670 +v 0.218750 4.968750 2.486670 +v -0.218750 4.093750 2.486670 +v -0.218750 4.968750 2.486670 +v 0.218750 4.093750 2.611670 +v 0.156250 4.093750 2.611670 +v 0.218750 4.968750 2.799170 +v 0.156250 4.093750 2.549170 +v -0.218750 4.093750 2.611670 +v -0.156250 4.093750 2.611670 +v -0.156250 4.093750 2.549170 +v 0.156250 4.968750 2.799170 +v -0.218750 4.968750 2.799170 +v -0.156250 4.968750 2.799170 +v -0.156250 4.968750 2.549170 +v 0.156250 4.968750 2.549170 +v -0.093750 4.968750 2.549170 +v 0.093750 4.968750 2.549170 +v 0.093750 4.968750 2.736670 +v -0.093750 4.968750 2.736670 +v -0.093750 4.406250 2.549170 +v 0.093750 4.406250 2.549170 +v 0.093750 4.406250 2.861670 +v -0.093750 4.406250 2.861670 +v 0.093750 4.468750 2.861670 +v -0.093750 4.468750 2.861670 +v 0.093750 4.468750 2.674170 +v -0.093750 4.468750 2.674170 +v -0.031250 4.468750 2.799170 +v -0.022097 4.468750 2.821268 +v 0.000000 4.468750 2.830420 +v 0.022097 4.468750 2.821268 +v 0.031250 4.468750 2.799170 +v 0.022097 4.468750 2.777073 +v -0.000000 4.468750 2.767920 +v -0.022097 4.468750 2.777073 +v -0.031250 4.406250 2.799170 +v -0.022097 4.406250 2.821268 +v 0.000000 4.406250 2.830420 +v 0.022097 4.406250 2.821268 +v 0.031250 4.406250 2.799170 +v 0.022097 4.406250 2.777073 +v -0.000000 4.406250 2.767920 +v -0.022097 4.406250 2.777073 +v 0.156250 4.406250 2.549170 +v -0.156250 4.406250 2.549170 +v 0.156250 4.406250 2.678635 +v -0.156250 4.406250 2.678635 +v 0.156250 4.343750 2.549170 +v 0.156250 4.343750 2.665242 +v -0.156250 4.343750 2.665242 +v -0.156250 4.343750 2.549170 +v -0.093750 4.406250 2.678635 +v 0.093750 4.406250 2.678635 +v 0.218750 4.781250 2.705420 +v 0.218750 4.737056 2.687115 +v 0.218750 4.718750 2.642920 +v 0.218750 4.737056 2.598726 +v 0.218750 4.781250 2.580420 +v 0.218750 4.825444 2.598726 +v 0.218750 4.843750 2.642920 +v 0.218750 4.825444 2.687115 +v 0.250000 4.781250 2.705420 +v 0.250000 4.737056 2.687115 +v 0.250000 4.718750 2.642920 +v 0.250000 4.737056 2.598726 +v 0.250000 4.781250 2.580420 +v 0.250000 4.825444 2.598726 +v 0.250000 4.843750 2.642920 +v 0.250000 4.825444 2.687115 +v -0.218750 4.781250 2.736670 +v -0.218750 4.714959 2.709212 +v -0.218750 4.687500 2.642920 +v -0.218750 4.714959 2.576629 +v -0.218750 4.781250 2.549170 +v -0.218750 4.847541 2.576629 +v -0.218750 4.875000 2.642920 +v -0.218750 4.847541 2.709212 +v -0.281250 4.781250 2.767920 +v -0.281250 4.692862 2.731309 +v -0.281250 4.656250 2.642920 +v -0.281250 4.692862 2.554532 +v -0.281250 4.781250 2.517920 +v -0.281250 4.869638 2.554532 +v -0.281250 4.906250 2.642920 +v -0.281250 4.869638 2.731309 +v -0.343750 4.781250 2.767920 +v -0.343750 4.692862 2.731309 +v -0.343750 4.656250 2.642920 +v -0.343750 4.692862 2.554532 +v -0.343750 4.781250 2.517920 +v -0.343750 4.869638 2.554532 +v -0.343750 4.906250 2.642920 +v -0.343750 4.869638 2.731309 +v -0.187500 -0.812500 1.299170 +v -0.132583 -0.945082 1.299170 +v 0.000000 -1.000000 1.299170 +v 0.132583 -0.945082 1.299170 +v 0.187500 -0.812500 1.299170 +v 0.132583 -0.679918 1.299170 +v -0.000000 -0.625000 1.299170 +v -0.132583 -0.679917 1.299170 +v -0.187500 -0.812500 1.174170 +v -0.132583 -0.945082 1.174170 +v 0.000000 -1.000000 1.174170 +v 0.132583 -0.945082 1.174170 +v 0.187500 -0.812500 1.174170 +v 0.132583 -0.679918 1.174170 +v -0.000000 -0.625000 1.174170 +v -0.132583 -0.679917 1.174170 +v -0.281250 -0.812500 1.174170 +v -0.243570 -0.953125 1.174170 +v -0.140625 -1.056070 1.174170 +v 0.000000 -1.093750 1.174170 +v 0.140625 -1.056070 1.174170 +v 0.243570 -0.953125 1.174170 +v 0.281250 -0.812500 1.174170 +v 0.243570 -0.671875 1.174170 +v 0.140625 -0.568930 1.174170 +v -0.000000 -0.531250 1.174170 +v -0.140625 -0.568930 1.174170 +v -0.243570 -0.671875 1.174170 +v -0.281250 -0.812500 0.924170 +v -0.243570 -0.953125 0.924170 +v -0.140625 -1.056070 0.924170 +v 0.000000 -1.093750 0.924170 +v 0.140625 -1.056070 0.924170 +v 0.243570 -0.953125 0.924170 +v 0.281250 -0.812500 0.924170 +v 0.243570 -0.671875 0.924170 +v 0.140625 -0.568930 0.924170 +v -0.000000 -0.531250 0.924170 +v -0.140625 -0.568930 0.924170 +v -0.243570 -0.671875 0.924170 +v -0.281250 0.750000 1.299170 +v 0.281250 0.750000 1.299170 +v -0.218750 0.750000 0.674170 +v 0.218750 0.750000 0.674170 +v 0.281250 2.062500 1.299170 +v 0.218750 1.937500 0.361670 +v 0.218750 0.812500 0.565917 +v 0.218750 1.004259 0.394023 +v -0.218750 0.812500 0.565917 +v -0.218750 1.004259 0.394023 +v -0.218750 1.125000 0.361670 +v 0.218750 1.125000 0.361670 +v 0.218750 1.125000 0.424170 +v -0.218750 1.125000 0.424170 +v 0.218750 0.812500 0.674170 +v -0.218750 0.812500 0.674170 +v 0.218750 0.875000 0.565917 +v 0.218750 1.004259 0.456523 +v 0.218750 0.812500 0.861670 +v 0.218750 1.062500 1.111670 +v 0.218750 0.875000 0.969924 +v 0.218750 1.562500 1.111670 +v 0.218750 1.562500 0.424170 +v 0.218750 1.732433 0.503411 +v 0.218750 1.812500 0.861670 +v 0.218750 1.812500 0.674170 +v 0.218750 0.750000 1.236670 +v -0.156250 -2.062500 2.049170 +v 0.156250 -1.625000 1.861670 +v 0.156250 -1.934359 1.916588 +v 0.156250 -2.062500 2.049170 +v -0.218750 0.750000 1.236670 +v 0.218750 1.937500 1.236670 +v -0.218750 1.937500 1.236670 +v -0.218750 1.004259 0.456523 +v -0.218750 0.875000 0.565917 +v -0.218750 0.812500 0.861670 +v -0.218750 0.875000 0.969924 +v -0.218750 1.062500 1.111670 +v -0.218750 1.562500 1.111670 +v -0.218750 1.812500 0.861670 +v -0.218750 1.812500 0.674170 +v -0.218750 1.732433 0.503411 +v -0.218750 1.562500 0.424170 +v -0.218750 1.937500 0.361670 +v -0.281250 2.062500 1.299170 +v 0.343750 5.562500 2.174170 +v 0.218750 5.687500 2.174170 +v 0.218750 5.989352 2.093290 +v 0.156250 6.725727 1.749912 +v 0.156250 6.971929 1.706500 +v 0.093750 7.198505 1.812155 +v 0.031250 7.294261 1.892503 +v 0.218750 12.235770 0.730171 +v 0.218750 12.235770 -0.894829 +v 0.218750 12.118820 -1.445037 +v 0.093750 11.903729 -1.752219 +v 0.093750 10.696322 -1.428696 +v 0.218750 7.510611 0.301005 +v 0.218750 6.749564 0.585548 +v 0.218750 5.964749 0.795839 +v 0.218750 3.851390 1.017962 +v 0.156250 3.472389 0.799411 +v 0.156250 3.366735 0.572834 +v 0.218750 3.404819 0.262663 +v 0.218750 4.014244 -0.607686 +v 0.218750 4.083153 -0.848001 +v 0.218750 3.933519 -1.259117 +v 0.218750 3.552739 -1.474552 +v 0.218750 3.241951 -1.441887 +v 0.156250 3.043612 -1.289697 +v 0.343750 1.937500 0.361670 +v 0.093750 3.043612 -1.102197 +v 0.093750 2.900218 -0.897409 +v 0.156250 2.737838 -0.803659 +v 0.093750 2.737838 -0.616159 +v 0.093750 2.622401 -0.394406 +v 0.156250 2.410389 -0.261926 +v 0.093750 2.410389 -0.074426 +v 0.093750 2.304735 0.152151 +v 0.218750 2.161101 0.272674 +v -0.343750 5.562500 2.174170 +v -0.218750 5.687500 2.174170 +v -0.218750 5.989352 2.093290 +v -0.156250 6.725727 1.749912 +v -0.156250 6.971929 1.706500 +v -0.093750 7.198505 1.812155 +v -0.031250 7.294261 1.892503 +v -0.156250 12.294434 1.100554 +v -0.218750 12.235770 0.730171 +v -0.218750 12.235770 -0.894829 +v -0.218750 12.118820 -1.445037 +v -0.093750 11.903729 -1.752219 +v -0.093750 10.696322 -1.428696 +v -0.218750 7.510611 0.301005 +v -0.218750 6.749564 0.585548 +v -0.218750 5.964749 0.795839 +v -0.218750 3.851390 1.017962 +v -0.156250 3.472389 0.799411 +v -0.156250 3.366735 0.572834 +v -0.218750 3.404819 0.262663 +v -0.218750 4.014244 -0.607686 +v -0.218750 4.083153 -0.848001 +v -0.218750 3.933519 -1.259117 +v -0.218750 3.552739 -1.474552 +v -0.218750 3.241951 -1.441887 +v -0.156250 3.043612 -1.289697 +v -0.343750 1.937500 0.361670 +v -0.093750 3.043612 -1.102197 +v -0.093750 2.900218 -0.897409 +v -0.156250 2.737838 -0.803659 +v -0.093750 2.737838 -0.616159 +v -0.093750 2.622401 -0.394406 +v -0.156250 2.410389 -0.261926 +v -0.093750 2.410389 -0.074426 +v -0.093750 2.304735 0.152151 +v -0.218750 2.161101 0.272674 +v 0.343750 5.687500 2.049170 +v 0.343750 5.926852 1.968290 +v 0.343750 6.725727 1.562412 +v 0.343750 6.971929 1.456500 +v 0.343750 7.198505 1.374655 +v 0.156250 12.294434 1.100554 +v 0.343750 12.110770 0.730171 +v 0.343750 12.110770 -0.769829 +v 0.343750 12.028729 -1.502219 +v 0.343750 10.696322 -1.053696 +v 0.343750 7.573111 0.551005 +v 0.343750 6.874564 0.835548 +v 0.343750 6.089749 1.045839 +v 0.343750 3.851390 1.142962 +v 0.343750 3.222389 0.799411 +v 0.343750 3.179235 0.510334 +v 0.343750 3.279819 0.137663 +v 0.343750 3.889244 -0.607686 +v 0.343750 3.895653 -0.848001 +v 0.343750 3.746019 -1.071617 +v 0.343750 3.241951 -1.191887 +v 0.343750 3.168612 -1.164697 +v 0.343750 3.168612 -0.977197 +v 0.343750 3.025218 -0.772409 +v 0.343750 2.862838 -0.741159 +v 0.343750 2.862838 -0.491159 +v 0.343750 2.747401 -0.331906 +v 0.343750 2.535389 -0.199426 +v 0.343750 2.535389 0.050574 +v 0.343750 2.429735 0.277151 +v 0.343750 2.161101 0.397674 +v 0.343750 1.937500 1.236670 +v -0.343750 1.937500 1.236670 +v -0.343750 5.687500 2.049170 +v -0.343750 5.926852 1.968290 +v -0.343750 6.725727 1.562412 +v -0.343750 6.971929 1.456500 +v -0.343750 7.198505 1.374655 +v -0.343750 12.110770 0.730171 +v -0.343750 12.110770 -0.769829 +v -0.343750 12.028729 -1.502219 +v -0.343750 10.696322 -1.053696 +v -0.343750 7.573111 0.551005 +v -0.343750 6.874564 0.835548 +v -0.343750 6.089749 1.045839 +v -0.343750 3.851390 1.142962 +v -0.343750 3.222389 0.799411 +v -0.343750 3.179235 0.510334 +v -0.343750 3.279819 0.137663 +v -0.343750 3.889244 -0.607686 +v -0.343750 3.895653 -0.848001 +v -0.343750 3.746019 -1.071617 +v -0.343750 3.241951 -1.191887 +v -0.343750 3.168612 -1.164697 +v -0.343750 3.168612 -0.977197 +v -0.343750 3.025218 -0.772409 +v -0.343750 2.862838 -0.741159 +v -0.343750 2.862838 -0.491159 +v -0.343750 2.747401 -0.331906 +v -0.343750 2.535389 -0.199426 +v -0.343750 2.535389 0.050574 +v -0.343750 2.429735 0.277151 +v -0.343750 2.161101 0.397674 +v 0.343750 3.552739 -1.224552 +v -0.343750 3.552739 -1.224552 +v 0.156250 -11.875000 2.109449 +v 0.156250 -11.000000 2.109449 +v -0.156250 -11.875000 2.109449 +v -0.156250 -11.000000 2.109449 +v 0.156250 -11.875000 2.421949 +v 0.156250 -11.000000 2.421949 +v -0.156250 -11.875000 2.421949 +v -0.156250 -11.000000 2.421949 +v -0.093750 -11.875000 2.421949 +v 0.093750 -11.875000 2.421949 +v 0.093750 -11.000000 2.421949 +v -0.093750 -11.000000 2.421949 +v 0.232221 -11.812500 2.852803 +v 0.170671 -11.812500 2.863656 +v 0.232221 -11.312500 2.852803 +v 0.170671 -11.312500 2.863656 +v 0.221368 -11.875000 2.791252 +v 0.159818 -11.875000 2.802105 +v -0.221368 -11.875000 2.791252 +v -0.159818 -11.875000 2.802105 +v -0.232221 -11.812500 2.852803 +v -0.170671 -11.812500 2.863656 +v -0.232221 -11.312500 2.852803 +v -0.170671 -11.312500 2.863656 +v 0.031250 -11.875000 2.421949 +v 0.031250 -11.437500 2.421949 +v -0.031250 -11.875000 2.421949 +v -0.031250 -11.437500 2.421949 +v 0.015625 -11.437500 2.796949 +v -0.015625 -11.437500 2.796949 +v 0.015625 -11.625000 2.796949 +v -0.015625 -11.625000 2.796949 +v -0.125000 -11.000000 1.861670 +v -0.088388 -11.000000 1.950058 +v 0.000000 -11.000000 1.986670 +v 0.088388 -11.000000 1.950058 +v 0.125000 -11.000000 1.861670 +v 0.088388 -11.000000 1.773282 +v -0.000000 -11.000000 1.736670 +v -0.088388 -11.000000 1.773282 +v 0.371209 -2.702665 1.780864 +v -0.371209 -2.702665 1.225947 +v 0.371209 -2.702665 1.225947 +v -0.371209 -2.702665 1.780864 +vt 0.742537 0.847015 +vt 0.701493 0.578358 +vt 0.742537 0.578358 +vt 0.615672 0.432836 +vt 0.630597 0.410448 +vt 0.630597 0.432836 +vt 0.589552 0.432836 +vt 0.604478 0.410448 +vt 0.604478 0.432836 +vt 0.611940 0.421642 +vt 0.611940 0.432836 +vt 0.608209 0.421642 +vt 0.608209 0.708955 +vt 0.619403 0.723881 +vt 0.608209 0.723881 +vt 0.828358 0.992537 +vt 0.839552 0.992537 +vt 0.833955 1.000000 +vt 0.835821 0.421642 +vt 0.839552 0.429104 +vt 0.828358 0.429104 +vt 0.839552 0.742537 +vt 0.839552 0.679105 +vt 0.828358 0.731343 +vt 0.839552 0.697761 +vt 0.839552 0.723881 +vt 0.597015 0.708955 +vt 0.488806 0.466418 +vt 0.500000 0.477612 +vt 0.488806 0.473881 +vt 0.488806 0.458955 +vt 0.500000 0.447761 +vt 0.500000 0.462687 +vt 0.488806 0.436567 +vt 0.488806 0.444030 +vt 0.488806 0.429104 +vt 0.500000 0.417910 +vt 0.500000 0.432836 +vt 0.488806 0.391791 +vt 0.500000 0.402985 +vt 0.488806 0.399254 +vt 0.488806 0.406716 +vt 0.488806 0.414179 +vt 0.764925 0.880597 +vt 0.776119 0.895522 +vt 0.757463 0.884328 +vt 0.757463 0.906716 +vt 0.753731 0.895522 +vt 0.776119 0.895522 +vt 0.664179 0.850746 +vt 0.742537 0.880597 +vt 0.664179 0.880597 +vt 0.787313 0.798507 +vt 0.828358 0.813433 +vt 0.787313 0.813433 +vt 0.630597 0.455224 +vt 0.623134 0.458955 +vt 0.615672 0.436567 +vt 0.604478 0.436567 +vt 0.597015 0.458955 +vt 0.634328 0.238806 +vt 0.636194 0.235075 +vt 0.641791 0.235075 +vt 0.634328 0.414179 +vt 0.636194 0.410448 +vt 0.641791 0.410448 +vt 0.623134 0.410448 +vt 0.634328 0.253731 +vt 0.634328 0.410448 +vt 0.802239 0.369403 +vt 0.742537 0.369403 +vt 0.802239 0.630597 +vt 0.809702 0.656716 +vt 0.787313 0.656716 +vt 0.772388 0.798507 +vt 0.772388 0.847015 +vt 0.634328 0.656716 +vt 0.641791 0.630597 +vt 0.656716 0.656716 +vt 0.641791 0.369403 +vt 0.671642 0.798507 +vt 0.656716 0.798507 +vt 0.701493 0.847015 +vt 0.828358 0.656716 +vt 0.828358 0.798507 +vt 0.514925 0.574627 +vt 0.567164 0.600746 +vt 0.514925 0.600746 +vt 0.488806 0.600746 +vt 0.492537 0.604478 +vt 0.436567 0.600746 +vt 0.488806 0.608209 +vt 0.436567 0.619403 +vt 0.462687 0.597015 +vt 0.410448 0.600746 +vt 0.410448 0.597015 +vt 0.410448 0.544776 +vt 0.462687 0.548507 +vt 0.410448 0.548507 +vt 0.514925 0.608209 +vt 0.552239 0.574627 +vt 0.541045 0.563433 +vt 0.552239 0.563433 +vt 0.462687 0.582090 +vt 0.410448 0.585821 +vt 0.410448 0.582090 +vt 0.410448 0.559702 +vt 0.462687 0.563433 +vt 0.410448 0.563433 +vt 0.507463 0.555970 +vt 0.496269 0.552239 +vt 0.507463 0.552239 +vt 0.410448 0.600746 +vt 0.414179 0.604478 +vt 0.511194 0.563433 +vt 0.541045 0.552239 +vt 0.496269 0.555970 +vt 0.501866 0.557836 +vt 0.500546 0.558382 +vt 0.503185 0.558382 +vt 0.507463 0.567164 +vt 0.503731 0.559702 +vt 0.500000 0.559702 +vt 0.496269 0.567164 +vt 0.500546 0.561021 +vt 0.503185 0.561021 +vt 0.501866 0.561567 +vt 0.496269 0.541045 +vt 0.501866 0.543044 +vt 0.507463 0.541045 +vt 0.503185 0.543590 +vt 0.500546 0.543590 +vt 0.500000 0.544909 +vt 0.473881 0.582090 +vt 0.481343 0.600746 +vt 0.473881 0.600746 +vt 0.470149 0.582090 +vt 0.462687 0.585821 +vt 0.462687 0.582090 +vt 0.462687 0.597015 +vt 0.470149 0.600746 +vt 0.462687 0.600746 +vt 0.470149 0.585821 +vt 0.503185 0.546229 +vt 0.507463 0.552239 +vt 0.503731 0.544909 +vt 0.496269 0.552239 +vt 0.507463 0.567164 +vt 0.511194 0.555970 +vt 0.511194 0.567164 +vt 0.492537 0.555970 +vt 0.496269 0.555970 +vt 0.496269 0.567164 +vt 0.511194 0.589552 +vt 0.514925 0.593284 +vt 0.511194 0.597015 +vt 0.477612 0.552239 +vt 0.470149 0.544776 +vt 0.462687 0.552239 +vt 0.313433 0.531716 +vt 0.321828 0.546258 +vt 0.338619 0.546258 +vt 0.320896 0.447761 +vt 0.324627 0.455224 +vt 0.320896 0.455224 +vt 0.324627 0.440298 +vt 0.320896 0.440298 +vt 0.320896 0.436567 +vt 0.324627 0.432836 +vt 0.324627 0.462687 +vt 0.320896 0.458955 +vt 0.320896 0.425373 +vt 0.320896 0.432836 +vt 0.320896 0.470149 +vt 0.320896 0.462687 +vt 0.324627 0.477612 +vt 0.320896 0.477612 +vt 0.324627 0.485075 +vt 0.320896 0.481343 +vt 0.320896 0.492537 +vt 0.320896 0.485075 +vt 0.324627 0.500000 +vt 0.320896 0.500000 +vt 0.324627 0.507463 +vt 0.320896 0.503731 +vt 0.320896 0.514925 +vt 0.320896 0.507463 +vt 0.541045 0.679105 +vt 0.537313 0.690298 +vt 0.541045 0.694030 +vt 0.537313 0.701493 +vt 0.541045 0.701493 +vt 0.537313 0.671642 +vt 0.537313 0.679105 +vt 0.779851 0.850746 +vt 0.798507 0.843284 +vt 0.798507 0.854478 +vt 0.798507 0.843284 +vt 0.779851 0.835821 +vt 0.798507 0.832090 +vt 0.764925 0.876866 +vt 0.742537 0.880597 +vt 0.764925 0.858209 +vt 0.567164 0.679105 +vt 0.570895 0.671642 +vt 0.567164 0.671642 +vt 0.570895 0.690298 +vt 0.567164 0.694030 +vt 0.570895 0.701493 +vt 0.570895 0.694030 +vt 0.496269 0.537313 +vt 0.429104 0.533582 +vt 0.421642 0.537313 +vt 0.541045 0.671642 +vt 0.537313 0.645522 +vt 0.402581 0.489807 +vt 0.392969 0.485076 +vt 0.414179 0.481343 +vt 0.407109 0.500000 +vt 0.407109 0.511194 +vt 0.414179 0.533582 +vt 0.392969 0.526118 +vt 0.537313 0.712687 +vt 0.541045 0.735075 +vt 0.347015 0.533580 +vt 0.364690 0.526118 +vt 0.570895 0.645522 +vt 0.567164 0.623134 +vt 0.450314 0.485075 +vt 0.440703 0.489807 +vt 0.429104 0.481343 +vt 0.436174 0.500000 +vt 0.570895 0.712687 +vt 0.567164 0.701493 +vt 0.567164 0.735075 +vt 0.496269 0.533580 +vt 0.450314 0.526118 +vt 0.478594 0.526118 +vt 0.429104 0.533580 +vt 0.436174 0.511194 +vt 0.414179 0.533582 +vt 0.347015 0.537313 +vt 0.421642 0.537313 +vt 0.742537 0.328358 +vt 0.802239 0.328358 +vt 0.500000 0.481343 +vt 0.488806 0.481343 +vt 0.500000 0.388060 +vt 0.488806 0.384328 +vt 0.500000 0.384328 +vt 0.369403 0.507463 +vt 0.369403 0.511194 +vt 0.350746 0.511194 +vt 0.451493 0.481343 +vt 0.462687 0.429104 +vt 0.462687 0.481343 +vt 0.488806 0.462687 +vt 0.425373 0.432836 +vt 0.429104 0.429104 +vt 0.451493 0.429104 +vt 0.514925 0.384328 +vt 0.518657 0.365672 +vt 0.518657 0.384328 +vt 0.488806 0.361940 +vt 0.500000 0.365672 +vt 0.488806 0.365672 +vt 0.503731 0.365672 +vt 0.488806 0.384328 +vt 0.526119 0.365672 +vt 0.500000 0.361940 +vt 0.526119 0.361940 +vt 0.529851 0.365672 +vt 0.544776 0.384328 +vt 0.476066 0.374680 +vt 0.481343 0.376866 +vt 0.481343 0.361940 +vt 0.656716 0.865672 +vt 0.500546 0.546229 +vt 0.501866 0.546775 +vt 0.623134 0.708955 +vt 0.597015 0.458955 +vt 0.597015 0.708955 +vt 0.858209 0.421642 +vt 0.858209 0.406716 +vt 0.888060 0.421642 +vt 0.615672 0.410448 +vt 0.589552 0.410448 +vt 0.608209 0.432836 +vt 0.619403 0.708955 +vt 0.828358 0.690298 +vt 0.597015 0.723881 +vt 0.488806 0.451493 +vt 0.488806 0.421642 +vt 0.802239 0.880597 +vt 0.783582 0.888060 +vt 0.802239 0.884328 +vt 0.753731 0.895522 +vt 0.783582 0.902985 +vt 0.802239 0.906716 +vt 0.802239 0.910448 +vt 0.764925 0.910448 +vt 0.742537 0.850746 +vt 0.589552 0.455224 +vt 0.641791 0.253731 +vt 0.636194 0.253731 +vt 0.634328 0.250000 +vt 0.641791 0.429104 +vt 0.636194 0.429104 +vt 0.634328 0.425373 +vt 0.623134 0.253731 +vt 0.809702 0.634328 +vt 0.634328 0.634328 +vt 0.701493 0.369403 +vt 0.671642 0.847015 +vt 0.567164 0.574627 +vt 0.492537 0.608209 +vt 0.511194 0.604478 +vt 0.511194 0.608209 +vt 0.462687 0.600746 +vt 0.462687 0.544776 +vt 0.567164 0.619403 +vt 0.541045 0.574627 +vt 0.432836 0.604478 +vt 0.432836 0.619403 +vt 0.414179 0.619403 +vt 0.410448 0.619403 +vt 0.511194 0.552239 +vt 0.481343 0.582090 +vt 0.470149 0.597015 +vt 0.507463 0.574627 +vt 0.507463 0.555970 +vt 0.496269 0.574627 +vt 0.492537 0.567164 +vt 0.462687 0.574627 +vt 0.462687 0.563433 +vt 0.508556 0.595922 +vt 0.507463 0.593284 +vt 0.508556 0.590645 +vt 0.513832 0.590645 +vt 0.513832 0.595922 +vt 0.464872 0.557516 +vt 0.470149 0.559702 +vt 0.475426 0.557516 +vt 0.475426 0.546962 +vt 0.464872 0.546962 +vt 0.344765 0.540112 +vt 0.347015 0.531716 +vt 0.344765 0.523321 +vt 0.338619 0.517175 +vt 0.330224 0.514925 +vt 0.321828 0.517175 +vt 0.315682 0.523321 +vt 0.315682 0.540112 +vt 0.330224 0.548507 +vt 0.324627 0.447761 +vt 0.324627 0.425373 +vt 0.324627 0.470149 +vt 0.324627 0.492537 +vt 0.324627 0.514925 +vt 0.537313 0.682836 +vt 0.537313 0.694030 +vt 0.772388 0.843284 +vt 0.772388 0.843284 +vt 0.791045 0.858209 +vt 0.791045 0.876866 +vt 0.764925 0.880597 +vt 0.742537 0.854478 +vt 0.764925 0.854478 +vt 0.570895 0.679105 +vt 0.570895 0.682836 +vt 0.496269 0.533582 +vt 0.541045 0.623134 +vt 0.347015 0.533582 +vt 0.350746 0.492537 +vt 0.369403 0.496269 +vt 0.369403 0.492537 +vt 0.485075 0.429104 +vt 0.488806 0.432836 +vt 0.425373 0.462687 +vt 0.514925 0.365672 +vt 0.486620 0.374680 +vt 0.488806 0.369403 +vt 0.486620 0.364126 +vt 0.476066 0.364126 +vt 0.473881 0.369403 +vt 0.660448 0.876866 +vt 0.660448 0.854478 +vt 0.623134 0.458955 +vt 0.776119 0.876866 +vt 0.794776 0.880597 +vt 0.776119 0.880597 +vt 0.552239 0.447761 +vt 0.552239 0.477612 +vt 0.552239 0.432836 +vt 0.552239 0.462687 +vt 0.552239 0.481343 +vt 0.552239 0.402985 +vt 0.552239 0.417910 +vt 0.552239 0.384328 +vt 0.231343 0.279851 +vt 0.212687 0.291045 +vt 0.212687 0.279851 +vt 0.231343 0.291045 +vt 0.212687 0.302239 +vt 0.212687 0.253731 +vt 0.313433 0.257463 +vt 0.212687 0.257463 +vt 0.309702 0.268657 +vt 0.212687 0.268657 +vt 0.309702 0.313433 +vt 0.212687 0.324627 +vt 0.212687 0.313433 +vt 0.649251 0.864581 +vt 0.656716 0.860243 +vt 0.656716 0.864583 +vt 0.639900 0.861656 +vt 0.638062 0.864582 +vt 0.638060 0.863421 +vt 0.212687 0.328358 +vt 0.313433 0.324627 +vt 0.320896 0.328358 +vt 0.656716 0.871099 +vt 0.649259 0.866761 +vt 0.656716 0.866761 +vt 0.639900 0.869687 +vt 0.649252 0.872045 +vt 0.000000 0.291045 +vt 0.000000 0.302239 +vt 0.000000 0.263060 +vt 0.858209 0.350746 +vt 0.854478 0.358209 +vt 0.850746 0.350746 +vt 0.809702 0.350746 +vt 0.809702 0.373134 +vt 0.805970 0.358209 +vt 0.899254 0.399254 +vt 0.906716 0.089552 +vt 0.906716 0.399254 +vt 0.966418 0.089552 +vt 0.988806 0.399254 +vt 0.951493 0.399254 +vt 0.802239 0.350746 +vt 0.809702 0.055970 +vt 0.944030 0.089552 +vt 0.944030 0.399254 +vt 0.861940 0.399254 +vt 0.884328 0.089552 +vt 0.850746 0.055970 +vt 0.567164 0.473881 +vt 0.552239 0.373134 +vt 0.567164 0.384328 +vt 0.552239 0.388060 +vt 0.567164 0.414179 +vt 0.567164 0.444030 +vt 0.567164 0.451493 +vt 0.567164 0.458955 +vt 0.552239 0.492537 +vt 0.567164 0.481343 +vt 0.567164 0.488806 +vt 0.567164 0.391791 +vt 0.567164 0.399254 +vt 0.567164 0.429104 +vt 0.511194 0.291045 +vt 0.320896 0.283582 +vt 0.511194 0.283582 +vt 0.511194 0.298507 +vt 0.320896 0.291045 +vt 0.492537 0.305970 +vt 0.320896 0.313433 +vt 0.320896 0.305970 +vt 0.511194 0.328358 +vt 0.320896 0.320896 +vt 0.511194 0.320896 +vt 0.320896 0.276119 +vt 0.511194 0.276119 +vt 0.320896 0.298507 +vt 0.511194 0.313433 +vt 0.511194 0.335821 +vt 0.320896 0.328358 +vt 0.638060 0.253731 +vt 0.641791 0.585821 +vt 0.638060 0.429104 +vt 0.638060 0.410448 +vt 0.638060 0.585821 +vt 0.634328 0.429104 +vt 0.000000 0.319030 +vt 0.850746 0.373134 +vt 0.850746 0.421642 +vt 0.000000 0.257463 +vt 0.000000 0.250000 +vt 0.492537 0.582090 +vt 0.488806 0.578358 +vt 0.492537 0.578358 +vt 0.481343 0.582090 +vt 0.477612 0.578358 +vt 0.481343 0.578358 +vt 0.473881 0.582090 +vt 0.470149 0.578358 +vt 0.473881 0.578358 +vt 0.466418 0.582090 +vt 0.462687 0.578358 +vt 0.466418 0.578358 +vt 0.488806 0.582090 +vt 0.485075 0.578358 +vt 0.485075 0.582090 +vt 0.477612 0.582090 +vt 0.470149 0.582090 +vt 0.500000 0.597015 +vt 0.503731 0.600746 +vt 0.500000 0.600746 +vt 0.507463 0.597015 +vt 0.511194 0.600746 +vt 0.507463 0.600746 +vt 0.488806 0.597015 +vt 0.492537 0.600746 +vt 0.488806 0.600746 +vt 0.496269 0.597015 +vt 0.496269 0.600746 +vt 0.503731 0.597015 +vt 0.511194 0.597015 +vt 0.514925 0.600746 +vt 0.485075 0.597015 +vt 0.485075 0.600746 +vt 0.492537 0.597015 +vt 0.417910 0.537313 +vt 0.410448 0.541045 +vt 0.410448 0.537313 +vt 0.432836 0.541045 +vt 0.425373 0.537313 +vt 0.432836 0.537313 +vt 0.447761 0.537313 +vt 0.440298 0.541045 +vt 0.440298 0.537313 +vt 0.462687 0.541045 +vt 0.455224 0.537313 +vt 0.462687 0.537313 +vt 0.470149 0.541045 +vt 0.470149 0.537313 +vt 0.417910 0.541045 +vt 0.447761 0.541045 +vt 0.462687 0.544776 +vt 0.410448 0.544776 +vt 0.425373 0.544776 +vt 0.425373 0.541045 +vt 0.440298 0.544776 +vt 0.455224 0.544776 +vt 0.455224 0.541045 +vt 0.417910 0.544776 +vt 0.432836 0.544776 +vt 0.447761 0.544776 +vt 0.320896 0.485075 +vt 0.313433 0.477612 +vt 0.320896 0.477612 +vt 0.320896 0.500000 +vt 0.313433 0.492537 +vt 0.320896 0.492537 +vt 0.320896 0.514925 +vt 0.313433 0.507463 +vt 0.320896 0.507463 +vt 0.320896 0.470149 +vt 0.313433 0.462687 +vt 0.320896 0.462687 +vt 0.313433 0.470149 +vt 0.313433 0.485075 +vt 0.313433 0.500000 +vt 0.313433 0.455224 +vt 0.320896 0.455224 +vt 0.339552 0.440298 +vt 0.339552 0.492537 +vt 0.339552 0.507463 +vt 0.339552 0.470149 +vt 0.339552 0.447761 +vt 0.339552 0.514925 +vt 0.339552 0.477612 +vt 0.339552 0.455224 +vt 0.339552 0.432836 +vt 0.339552 0.485075 +vt 0.339552 0.500000 +vt 0.339552 0.462687 +vt 0.794776 0.854478 +vt 0.776119 0.858209 +vt 0.776119 0.854478 +vt 0.570895 0.656716 +vt 0.597015 0.649254 +vt 0.570895 0.649254 +vt 0.597015 0.656716 +vt 0.570895 0.667910 +vt 0.597015 0.667910 +vt 0.597015 0.675373 +vt 0.570895 0.675373 +vt 0.489199 0.517656 +vt 0.570895 0.686567 +vt 0.597015 0.686567 +vt 0.570895 0.694030 +vt 0.597015 0.694030 +vt 0.597015 0.708955 +vt 0.570895 0.708955 +vt 0.597015 0.738806 +vt 0.570895 0.738806 +vt 0.597015 0.567164 +vt 0.570895 0.589552 +vt 0.597015 0.589552 +vt 0.597015 0.600746 +vt 0.570895 0.600746 +vt 0.597015 0.611940 +vt 0.570895 0.611940 +vt 0.597015 0.623134 +vt 0.570895 0.623134 +vt 0.492734 0.511194 +vt 0.000000 0.324627 +vt -0.000000 0.332090 +vt 0.858209 0.970149 +vt 0.880597 0.996269 +vt 0.854478 0.996269 +vt 0.970149 0.910448 +vt 0.988806 0.925373 +vt 0.970149 0.925373 +vt 0.858209 0.679105 +vt 0.873134 0.694030 +vt 0.861940 0.694030 +vt 0.858209 0.940298 +vt 0.876866 0.955224 +vt 0.858209 0.955224 +vt 0.973881 0.895522 +vt 0.988806 0.910448 +vt 0.861940 0.667910 +vt 0.876866 0.679105 +vt 0.854478 0.921642 +vt 0.876866 0.940298 +vt 0.977612 0.888060 +vt 0.985075 0.895522 +vt 0.861940 0.652985 +vt 0.873134 0.667910 +vt 0.854478 0.858209 +vt 0.880597 0.921642 +vt 0.988806 0.585821 +vt 0.970149 0.585821 +vt 0.880597 0.641791 +vt 0.873134 0.652985 +vt 0.854478 0.843284 +vt 0.880597 0.858209 +vt 0.902985 0.977612 +vt 0.906716 1.000000 +vt 0.891791 0.977612 +vt 0.847015 0.626866 +vt 0.854478 0.641791 +vt 0.854478 0.817164 +vt 0.880597 0.843284 +vt 0.902985 0.880597 +vt 0.929105 0.977612 +vt 0.854478 0.791045 +vt 0.880597 0.817164 +vt 0.902985 0.847015 +vt 0.929105 0.880597 +vt 0.854478 0.772388 +vt 0.880597 0.791045 +vt 0.910448 0.824627 +vt 0.929105 0.847015 +vt 0.858209 0.757463 +vt 0.880597 0.772388 +vt 0.947761 0.899254 +vt 0.958955 0.973881 +vt 0.947761 0.973881 +vt 0.861940 0.746269 +vt 0.876866 0.757463 +vt 0.940298 0.682836 +vt 0.958955 0.899254 +vt 0.861940 0.731343 +vt 0.873134 0.746269 +vt 0.940298 0.634328 +vt 0.966418 0.682836 +vt 0.966418 0.992537 +vt 1.000000 1.000000 +vt 0.958955 1.000000 +vt 0.858209 0.720149 +vt 0.873134 0.731343 +vt 0.940298 0.585821 +vt 0.966418 0.634328 +vt 0.966418 0.973881 +vt 0.992537 0.992537 +vt 0.861940 0.708955 +vt 0.876866 0.720149 +vt 0.940298 0.458955 +vt 0.966418 0.585821 +vt 0.992537 0.973881 +vt 0.873134 0.708955 +vt 0.843284 0.843284 +vt 0.925373 1.000000 +vt 0.839552 0.817164 +vt 0.891791 0.884328 +vt 0.839552 0.772388 +vt 0.854478 0.757463 +vt 0.839552 0.764925 +vt 0.839552 0.757463 +vt 0.679105 0.022388 +vt 0.761194 0.022388 +vt 0.682836 0.048507 +vt 0.858209 0.746269 +vt 0.847015 0.757463 +vt 0.843284 0.746269 +vt 0.492537 0.130597 +vt 0.500000 0.149254 +vt 0.858209 0.731343 +vt 0.843284 0.731343 +vt 0.447761 0.149254 +vt 0.451493 0.167910 +vt 0.847015 0.720149 +vt 0.406716 0.179104 +vt 0.399254 0.160448 +vt 0.402985 0.246269 +vt 0.384328 0.238806 +vt 0.399254 0.235075 +vt 0.858209 0.708955 +vt 0.843284 0.708955 +vt 0.406716 0.179104 +vt 0.399254 0.160448 +vt 0.276119 0.182836 +vt 0.447761 0.208955 +vt 0.858209 0.694030 +vt 0.843284 0.694030 +vt 0.843284 1.000000 +vt 0.843284 0.955224 +vt 0.462687 0.223881 +vt 0.462687 0.201493 +vt 0.847015 0.679105 +vt 0.843284 0.940298 +vt 0.477612 0.197761 +vt 0.477612 0.231343 +vt 0.858209 0.667910 +vt 0.843284 0.667910 +vt 0.891791 0.921642 +vt 0.485075 0.235075 +vt 0.858209 0.652985 +vt 0.843284 0.652985 +vt 0.843284 0.858209 +vt 0.843284 0.921642 +vt 0.779851 0.182836 +vt 0.768657 0.156716 +vt 0.384328 0.250000 +vt 0.376866 0.246269 +vt 0.847015 0.638060 +vt 0.895522 0.764925 +vt 0.936567 0.817164 +vt 0.895522 0.817164 +vt 0.936567 0.824627 +vt 0.895522 0.824627 +vt 0.447761 0.227612 +vt 0.895522 0.847015 +vt 0.902985 0.824627 +vt 0.936567 0.847015 +vt 0.940298 0.884328 +vt 0.768657 0.067164 +vt 0.376866 0.194030 +vt 0.167910 0.194030 +vt 0.276119 0.182836 +vt 0.839552 0.791045 +vt 0.839552 0.802239 +vt 0.276119 0.063433 +vt 0.235075 0.059701 +vt 0.268657 0.052239 +vt 0.227612 0.070896 +vt 0.276119 0.078358 +vt 0.242537 0.123134 +vt 0.216418 0.070896 +vt 0.216418 0.085821 +vt 0.197761 0.119403 +vt 0.235075 0.145522 +vt 0.190299 0.134328 +vt 0.197761 0.104478 +vt 0.208955 0.097015 +vt 0.175373 0.141791 +vt 0.160448 0.190299 +vt 0.160448 0.138060 +vt 0.238806 0.164179 +vt 0.768657 0.067164 +vt 0.761194 0.022388 +vt 0.768657 0.156716 +vt 0.682836 0.048507 +vt 0.500000 0.149254 +vt 0.451493 0.167910 +vt 0.477612 0.197761 +vt 0.462687 0.201493 +vt 0.447761 0.208955 +vt 0.399254 0.235075 +vt 0.276119 0.063433 +vt 0.235075 0.059701 +vt 0.276119 0.078358 +vt 0.227612 0.070896 +vt 0.242537 0.123134 +vt 0.216418 0.070896 +vt 0.216418 0.085821 +vt 0.197761 0.119403 +vt 0.190299 0.134328 +vt 0.235075 0.145522 +vt 0.197761 0.104478 +vt 0.208955 0.097015 +vt 0.175373 0.141791 +vt 0.238806 0.164179 +vt 0.940298 0.977612 +vt 0.779851 0.182836 +vt 0.485075 0.235075 +vt 0.477612 0.231343 +vt 0.462687 0.223881 +vt 0.447761 0.227612 +vt 0.402985 0.246269 +vt 0.384328 0.238806 +vt 0.384328 0.250000 +vt 0.376866 0.246269 +vt 0.929105 0.824627 +vt 0.679105 0.022388 +vt 0.750000 0.003731 +vt 0.492537 0.130597 +vt 0.447761 0.149254 +vt 0.966418 0.458955 +vt 0.977612 0.458955 +vt 0.376866 0.194030 +vt 0.167910 0.194030 +vt 0.876866 0.970149 +vt 0.891791 1.000000 +vt 0.891791 0.955224 +vt 0.891791 0.940298 +vt 0.891791 0.858209 +vt 0.891791 0.843284 +vt 0.895522 0.817164 +vt 0.895522 0.772388 +vt 0.880597 0.757463 +vt 0.895522 0.764925 +vt 0.876866 0.746269 +vt 0.888060 0.757463 +vt 0.876866 0.731343 +vt 0.891791 0.746269 +vt 0.888060 0.720149 +vt 0.876866 0.708955 +vt 0.876866 0.694030 +vt 0.891791 0.708955 +vt 0.888060 0.679105 +vt 0.876866 0.667910 +vt 0.876866 0.652985 +vt 0.891791 0.667910 +vt 0.888060 0.638060 +vt 0.891791 0.652985 +vt 0.888060 0.626866 +vt 0.160448 0.190299 +vt 0.160448 0.138060 +vt 0.235075 0.048507 +vt 0.238806 0.044776 +vt 0.257463 0.041045 +vt 0.895522 0.791045 +vt 0.895522 0.802239 +vt 0.257463 0.041045 +vt 0.238806 0.044776 +vt 0.268657 0.052239 +vt 0.235075 0.048507 +vt 0.339552 0.436567 +vt 0.343284 0.430970 +vt 0.350746 0.440298 +vt 0.350746 0.369403 +vt 0.369403 0.421642 +vt 0.350746 0.421642 +vt 0.429104 0.354478 +vt 0.451493 0.358209 +vt 0.429104 0.358209 +vt 0.369403 0.436567 +vt 0.369403 0.440298 +vt 0.455224 0.354478 +vt 0.485075 0.358209 +vt 0.455224 0.358209 +vt 0.395523 0.417910 +vt 0.391791 0.421642 +vt 0.429104 0.361940 +vt 0.451493 0.358209 +vt 0.451493 0.361940 +vt 0.455224 0.361940 +vt 0.455224 0.358209 +vt 0.485075 0.361940 +vt 0.395523 0.473881 +vt 0.395523 0.444030 +vt 0.485075 0.354478 +vt 0.514925 0.358209 +vt 0.514925 0.354478 +vt 0.485075 0.358209 +vt 0.514925 0.358209 +vt 0.514925 0.361940 +vt 0.451493 0.429104 +vt 0.458955 0.376866 +vt 0.458955 0.429104 +vt 0.436567 0.429104 +vt 0.444030 0.376866 +vt 0.444030 0.429104 +vt 0.481343 0.429104 +vt 0.488806 0.376866 +vt 0.488806 0.429104 +vt 0.466418 0.376866 +vt 0.466418 0.429104 +vt 0.451493 0.376866 +vt 0.429104 0.429104 +vt 0.436567 0.376866 +vt 0.473881 0.429104 +vt 0.481343 0.376866 +vt 0.473881 0.376866 +vt 0.309702 0.272388 +vt 0.231343 0.272388 +vt 0.231343 0.309702 +vt 0.902985 0.414179 +vt 0.899254 0.402985 +vt 0.891791 0.406716 +vt 0.962687 0.421642 +vt 0.958955 0.406716 +vt 0.992537 0.406716 +vt 0.951493 0.402985 +vt 0.947761 0.414179 +vt 0.904851 0.429104 +vt 0.906716 0.055970 +vt 0.951493 0.063433 +vt 0.899254 0.063433 +vt 0.354085 0.517656 +vt 0.350550 0.511194 +vt 0.929105 0.458955 +vt 0.339552 0.425373 +vt 0.638060 0.866761 +vt 0.649252 0.859298 +vt 0.000000 0.313433 +vt 0.000000 0.279851 +vt 0.000000 0.268657 +vt 0.992537 0.421642 +vt 0.794776 0.876866 +vt 0.231343 0.302239 +vt 0.320896 0.253731 +vt 0.899254 0.089552 +vt 0.988806 0.089552 +vt 0.802239 0.048507 +vt 0.861940 0.089552 +vt 0.951493 0.089552 +vt 0.858209 0.048507 +vt 0.567164 0.466418 +vt 0.567164 0.376866 +vt 0.567164 0.406716 +vt 0.567164 0.436567 +vt 0.567164 0.421642 +vt 0.320896 0.335821 +vt 0.634328 0.585821 +vt 0.809702 0.421642 +vt 0.462687 0.582090 +vt 0.514925 0.597015 +vt 0.470149 0.544776 +vt 0.313433 0.514925 +vt 0.339552 0.425373 +vt 0.794776 0.858209 +vt 0.537313 0.738806 +vt 0.570895 0.738806 +vt 0.570895 0.567164 +vt 0.981343 0.888060 +vt 0.921642 0.824627 +vt 0.750000 0.003731 +vt 0.936567 0.764925 +vt 0.895522 0.757463 +vt 0.891791 0.731343 +vt 0.891791 0.694030 +vt 0.369403 0.369403 +vt 0.451493 0.354478 +vt 0.369403 0.425373 +vt 0.395523 0.388060 +vt 0.429104 0.358209 +vt 0.391791 0.440298 +vt 0.429104 0.376866 +vt 0.309702 0.309702 +vt 0.945896 0.429104 +vt 0.944030 0.055970 +vt 0.899254 0.085821 +vt 0.951493 0.085821 +vt 0.638060 0.867922 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.4082 0.8165 0.4082 +vn -0.4082 0.8165 0.4082 +vn 0.7071 0.0000 0.7071 +vn -0.7071 0.0000 0.7071 +vn 0.0000 0.5547 0.8321 +vn 0.0000 -0.9487 0.3162 +vn 0.0000 0.0000 1.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -0.2095 0.9778 +vn 0.0000 -0.1240 0.9923 +vn 0.7071 0.0000 -0.7071 +vn -0.7071 0.0000 -0.7071 +vn -0.9852 0.0000 0.1716 +vn 0.9852 0.0025 0.1712 +vn -0.9991 0.0000 0.0416 +vn 0.0000 -0.8321 0.5547 +vn 0.9991 0.0000 0.0416 +vn 0.9947 0.1030 0.0000 +vn -0.9852 0.0025 0.1712 +vn 0.9852 0.0000 0.1716 +vn 0.0000 0.4698 0.8828 +vn 0.0000 0.1748 0.9846 +vn 0.3827 0.0000 0.9239 +vn -0.3827 0.0000 0.9239 +vn 0.5000 0.0000 0.8660 +vn -0.0000 -0.0175 0.9998 +vn 0.4997 -0.0171 0.8660 +vn -0.4997 -0.0171 0.8660 +vn 0.9654 -0.0171 -0.2604 +vn 0.9950 0.0000 -0.1001 +vn 0.9998 -0.0175 -0.0000 +vn 0.8892 0.0000 0.4576 +vn 0.8660 -0.0171 0.4997 +vn -0.8817 0.0000 0.4718 +vn -0.9998 -0.0175 -0.0000 +vn -0.8660 -0.0171 0.4997 +vn 0.0048 0.7466 0.6652 +vn 0.0000 0.4835 0.8754 +vn 0.0336 0.9306 0.3645 +vn 0.0308 0.9389 0.3429 +vn 0.0000 0.9550 0.2967 +vn -0.9654 -0.0171 -0.2604 +vn -0.9945 0.0000 -0.1050 +vn -0.9659 0.0000 -0.2588 +vn -0.0217 0.7322 0.6807 +vn -0.1528 0.9265 0.3440 +vn 0.0000 0.7195 0.6945 +vn 0.0000 -0.0207 0.9998 +vn -0.7070 -0.0208 0.7070 +vn 0.9998 -0.0198 -0.0006 +vn 0.8932 0.1902 0.4073 +vn 0.5547 0.0000 0.8320 +vn 0.2903 -0.0009 0.9569 +vn -0.2903 -0.0009 0.9569 +vn -0.0212 0.0000 0.9998 +vn -0.5547 0.0000 0.8320 +vn 0.4468 -0.0431 -0.8936 +vn 0.2311 -0.0468 -0.9718 +vn 0.2279 -0.0469 -0.9725 +vn -0.8932 0.1902 0.4073 +vn -0.9817 0.1905 0.0000 +vn -0.1753 -0.1753 0.9688 +vn -0.2311 -0.0468 -0.9718 +vn -0.2279 -0.0469 -0.9725 +vn 0.9817 0.1905 0.0000 +vn -0.4468 -0.0431 -0.8936 +vn 0.1753 -0.1753 0.9688 +vn 0.8321 0.5547 -0.0000 +vn 0.5883 0.5547 0.5883 +vn -0.5883 0.5547 0.5883 +vn -0.8321 0.5547 0.0000 +vn -0.5883 0.5547 -0.5883 +vn 0.0000 0.5547 -0.8321 +vn 0.5883 0.5547 -0.5883 +vn 0.0000 0.5547 0.8320 +vn -0.9998 -0.0198 -0.0006 +vn -0.8917 -0.0158 -0.4523 +vn 0.7070 -0.0208 0.7070 +vn 0.8917 -0.0158 -0.4523 +vn -0.8507 0.0000 0.5257 +vn 0.8507 0.0000 0.5257 +vn -0.4472 0.0000 0.8944 +vn 0.4472 0.0000 0.8944 +vn 0.0212 0.0000 0.9998 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 +vn 0.4472 0.6325 0.6325 +vn 0.4472 0.6325 -0.6325 +vn 0.4472 0.8944 -0.0000 +vn 0.4472 -0.6325 -0.6325 +vn 0.4472 -0.0000 -0.8944 +vn 0.4472 -0.6325 0.6325 +vn 0.4472 -0.8944 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.0000 -0.1305 -0.9914 +vn 0.0000 -0.4762 -0.8793 +vn 0.0000 -0.7764 -0.6302 +vn 0.0000 -0.9659 -0.2588 +vn 0.0000 0.7190 0.6950 +vn 0.0000 0.4636 0.8860 +vn 0.0000 0.1305 0.9914 +vn 0.0000 0.7674 0.6412 +vn 0.0000 0.9659 0.2588 +vn 0.0000 0.9659 -0.2588 +vn 0.0000 0.7495 -0.6620 +vn 0.0000 0.6031 -0.7977 +vn 0.0000 -0.3827 -0.9239 +vn 0.0000 -0.9239 -0.3827 +vn 0.0000 -0.7064 0.7079 +vn 0.0000 -0.9054 0.4245 +vn 0.0000 -0.2164 0.9763 +vn 0.3617 0.6378 -0.6800 +vn -0.4283 0.3974 -0.8116 +vn 0.4283 0.3974 -0.8116 +vn 0.0000 -0.1041 0.9946 +vn 0.0000 0.3037 0.9528 +vn 0.2707 -0.4515 -0.8502 +vn -0.2581 -0.6804 -0.6859 +vn 0.2581 -0.6804 -0.6859 +vn 0.4210 0.9013 -0.1018 +vn -0.3617 0.6378 -0.6800 +vn 0.0000 -0.5101 0.8601 +vn 0.2571 -0.9525 -0.1631 +vn -0.2939 -0.9508 0.0980 +vn 0.2939 -0.9508 0.0980 +vn 0.4989 0.7867 0.3637 +vn -0.4210 0.9013 -0.1018 +vn 0.0000 -0.6428 0.7660 +vn 0.2599 -0.7251 -0.6377 +vn -0.2571 -0.9525 -0.1631 +vn 0.3812 0.8498 0.3641 +vn -0.4989 0.7867 0.3637 +vn 0.0000 0.1564 0.9877 +vn -0.3656 -0.3258 -0.8719 +vn -0.2599 -0.7251 -0.6377 +vn 0.4369 0.8990 -0.0300 +vn -0.3812 0.8498 0.3641 +vn 0.4071 0.9127 -0.0353 +vn 0.1358 0.9818 -0.1326 +vn 0.7071 0.7071 0.0028 +vn 0.3053 -0.1999 -0.9310 +vn 0.3656 -0.3258 -0.8719 +vn 0.4786 0.6610 -0.5779 +vn -0.4369 0.8990 -0.0300 +vn 0.3801 0.9206 -0.0892 +vn -0.4071 0.9127 -0.0353 +vn 0.4872 0.1771 -0.8552 +vn -0.4786 0.6610 -0.5779 +vn 0.2373 0.8958 -0.3758 +vn -0.3801 0.9206 -0.0892 +vn 0.4942 -0.3475 -0.7969 +vn -0.4872 0.1771 -0.8552 +vn 0.0464 0.8093 -0.5855 +vn -0.2373 0.8958 -0.3758 +vn 0.3436 -0.6108 -0.7133 +vn -0.4942 -0.3475 -0.7969 +vn 0.0000 -0.3718 -0.9283 +vn 0.0000 -0.2588 -0.9659 +vn 0.2689 -0.9341 -0.2349 +vn -0.2532 -0.9637 0.0844 +vn 0.2532 -0.9637 0.0844 +vn 0.5452 -0.3421 -0.7653 +vn 0.2726 -0.6088 -0.7450 +vn -0.2689 -0.9341 -0.2349 +vn 0.5496 -0.2536 -0.7960 +vn -0.5452 -0.3421 -0.7653 +vn 0.0000 0.1044 0.9945 +vn 0.2686 -0.4020 -0.8754 +vn -0.2726 -0.6088 -0.7450 +vn 0.5439 -0.1401 -0.8274 +vn -0.5496 -0.2536 -0.7960 +vn 0.0000 0.3400 0.9404 +vn 0.2611 -0.9480 -0.1819 +vn 0.3902 -0.0962 -0.9157 +vn -0.5439 -0.1401 -0.8274 +vn -0.2611 -0.9480 -0.1819 +vn 0.8328 0.5481 -0.0769 +vn -0.1358 0.9818 -0.1326 +vn 0.8962 0.3092 -0.3180 +vn 0.7188 0.6948 -0.0240 +vn 0.8128 -0.2521 -0.5252 +vn 0.6507 -0.2640 -0.7120 +vn 0.8077 -0.2161 -0.5485 +vn 0.9322 -0.0980 -0.3484 +vn 0.9464 -0.1306 -0.2954 +vn 0.4576 -0.8874 0.0558 +vn 0.5398 -0.7906 -0.2890 +vn 0.9747 -0.0886 -0.2052 +vn 0.5706 -0.4631 -0.6782 +vn 0.9789 -0.0638 -0.1943 +vn 0.4954 -0.2102 -0.8429 +vn 0.9793 -0.0343 -0.1994 +vn 0.7293 0.2627 0.6317 +vn 0.9364 0.1634 0.3106 +vn 0.9284 0.1432 0.3428 +vn 0.4718 -0.8793 0.0643 +vn 0.5046 -0.8174 -0.2779 +vn -0.9793 -0.0343 -0.1994 +vn -0.7249 -0.0697 -0.6853 +vn 0.9300 0.1376 0.3408 +vn 0.4666 -0.6159 -0.6348 +vn 0.6337 0.3235 -0.7027 +vn 0.7008 0.6044 -0.3789 +vn 0.8048 0.1191 0.5815 +vn 0.9451 0.1184 0.3045 +vn 0.4634 -0.4187 -0.7810 +vn 0.7152 0.6967 0.0555 +vn 0.9654 0.0474 0.2563 +vn 0.8634 0.1052 0.4934 +vn 0.5213 -0.8252 -0.2174 +vn -0.7979 0.5218 0.3019 +vn 0.8618 0.0885 0.4995 +vn 0.6057 -0.5382 -0.5861 +vn 0.6936 0.6709 0.2622 +vn 0.7979 0.5218 0.3019 +vn 0.9003 0.0461 0.4329 +vn 0.9716 0.0255 0.2354 +vn 0.6590 0.3626 0.6590 +vn 0.8518 0.3705 0.3705 +vn 0.7047 -0.0827 -0.7047 +vn 0.0000 -0.8507 0.5257 +vn 0.0000 -0.4472 0.8944 +vn 0.6830 0.2589 0.6830 +vn 0.4122 0.8008 -0.4345 +vn -0.4122 0.8008 -0.4345 +vn -0.7188 0.6948 -0.0240 +vn 0.8812 0.1711 -0.4406 +vn -0.9322 -0.0980 -0.3484 +vn -0.9716 0.0255 0.2354 +vn -0.9464 -0.1306 -0.2954 +vn -0.9747 -0.0886 -0.2052 +vn -0.9789 -0.0638 -0.1943 +vn -0.9654 0.0474 0.2563 +vn -0.9451 0.1184 0.3045 +vn -0.9291 0.1345 0.3446 +vn -0.9266 0.1522 0.3439 +vn -0.7071 0.7071 0.0028 +vn -0.9003 0.0461 0.4329 +vn -0.8618 0.0885 0.4995 +vn -0.8634 0.1052 0.4934 +vn -0.8048 0.1191 0.5815 +vn -0.6914 0.2443 0.6800 +vn -0.7374 0.2737 0.6175 +vn -0.9364 0.1634 0.3106 +vn -0.6590 0.3626 0.6590 +vn -0.8518 0.3705 0.3705 +vn -0.0464 0.8093 -0.5855 +vn -0.8077 -0.2161 -0.5485 +vn -0.7385 -0.1745 -0.6513 +vn -0.3902 -0.0962 -0.9157 +vn -0.6337 0.3235 -0.7027 +vn -0.7008 0.6044 -0.3789 +vn -0.7152 0.6967 0.0555 +vn -0.6936 0.6709 0.2622 +vn -0.8328 0.5481 -0.0769 +vn -0.8962 0.3092 -0.3180 +vn -0.8128 -0.2521 -0.5252 +vn -0.3436 -0.6109 -0.7133 +vn -0.4576 -0.8874 0.0558 +vn -0.5398 -0.7906 -0.2890 +vn -0.4954 -0.2102 -0.8429 +vn -0.2686 -0.4020 -0.8754 +vn -0.4718 -0.8793 0.0643 +vn -0.5046 -0.8174 -0.2779 +vn -0.4634 -0.4187 -0.7810 +vn -0.2707 -0.4515 -0.8502 +vn -0.5213 -0.8252 -0.2174 +vn -0.7047 -0.0827 -0.7047 +vn -0.6057 -0.5382 -0.5861 +vn -0.3053 -0.1999 -0.9310 +vn -0.8812 0.1711 -0.4406 +vn -0.9978 0.0000 -0.0657 +vn 0.9962 -0.0000 -0.0872 +vn 0.0665 -0.9238 0.3772 +vn 0.1604 -0.3827 0.9098 +vn 0.1540 0.4625 0.8732 +vn 0.9848 -0.0000 -0.1736 +vn 0.9848 -0.0000 -0.1737 +vn -0.0665 -0.9238 0.3772 +vn -0.0665 -0.9239 0.3769 +vn -0.1604 -0.3827 0.9098 +vn -0.1499 0.4623 0.8739 +vn -0.9848 0.0000 -0.1736 +vn -0.9962 -0.0000 -0.0872 +vn 0.1499 0.4623 0.8739 +vn 0.0079 0.8107 0.5854 +vn 0.0000 0.8095 0.5871 +vn -0.1540 0.4625 0.8732 +vn -0.0079 0.8107 0.5854 +vn 0.0960 0.8309 -0.5481 +vn 0.0622 0.6288 -0.7750 +vn 0.2862 0.7684 -0.5725 +vn 0.9144 0.4049 0.0000 +vn 0.9269 0.3754 0.0000 +vn -0.9947 0.1030 0.0000 +vn -0.9269 0.3754 0.0000 +vn -0.9577 0.2879 0.0000 +vn -0.0960 0.8309 -0.5481 +vn -0.2862 0.7684 -0.5725 +vn -0.0622 0.6288 -0.7750 +vn 0.0000 0.2662 -0.9639 +vn 0.0000 -0.9328 0.3604 +vn 0.7249 -0.0697 -0.6853 +vn -0.1469 0.9586 0.2439 +vn 0.0000 0.7360 0.6769 +vn -0.5000 0.0000 0.8660 +vn 0.9659 0.0000 -0.2588 +vn -0.9328 0.0000 0.3604 +vn 0.9328 0.0000 0.3604 +vn 0.7385 -0.1745 -0.6513 +vn -0.6507 -0.2640 -0.7120 +vn -0.5706 -0.4631 -0.6782 +vn -0.4666 -0.6159 -0.6348 +vn 0.9978 0.0000 -0.0657 +vn 0.0665 -0.9239 0.3769 +vn -0.9848 -0.0000 -0.1737 +usemtl Material.001 +s off +f 1/1/1 4/2/1 2/3/1 +f 23/4/2 7/5/2 11/6/2 +f 12/7/2 19/8/2 24/9/2 +f 21/10/3 23/4/3 25/11/3 +f 22/12/4 24/9/4 19/8/4 +f 21/13/2 26/14/2 22/15/2 +f 15/16/5 17/17/5 13/18/5 +f 14/19/6 18/20/6 16/21/6 +f 15/16/7 29/22/7 17/17/7 +f 30/23/8 16/21/8 18/20/8 +f 27/24/9 30/25/9 29/26/9 +f 22/15/10 20/27/10 21/13/10 +f 49/28/2 55/29/2 48/30/2 +f 49/31/2 57/32/2 56/33/2 +f 51/34/2 57/32/2 50/35/2 +f 51/36/2 59/37/2 58/38/2 +f 46/39/2 53/40/2 45/41/2 +f 45/42/2 59/37/2 52/43/2 +f 77/44/4 35/45/4 90/46/4 +f 102/47/3 97/48/3 36/49/3 +f 96/50/11 93/51/11 95/52/11 +f 5/53/2 34/54/2 33/55/2 +f 13/56/11 17/57/11 25/58/11 +f 12/7/11 24/9/11 26/59/11 +f 25/58/11 18/60/11 26/59/11 +f 139/61/12 135/62/12 131/63/12 +f 140/64/2 136/65/2 132/66/2 +f 138/67/11 141/68/11 140/69/11 +f 27/70/4 2/3/4 31/71/4 +f 15/72/4 11/73/4 7/74/4 +f 15/72/4 7/74/4 2/3/4 +f 7/74/4 33/75/4 2/3/4 +f 1/1/4 33/75/4 104/76/4 +f 12/77/3 16/78/3 8/79/3 +f 28/80/3 4/2/3 16/78/3 +f 16/78/3 4/2/3 8/79/3 +f 8/79/3 34/81/3 6/82/3 +f 3/83/3 34/81/3 4/2/3 +f 5/53/11 8/84/11 6/85/11 +f 144/86/1 143/87/1 142/88/1 +f 144/89/2 142/88/2 152/90/2 +f 145/91/3 150/92/3 154/93/3 +f 155/94/13 150/95/13 151/96/13 +f 146/97/13 153/98/13 147/99/13 +f 143/87/4 146/100/4 142/88/4 +f 159/101/12 161/102/12 160/103/12 +f 156/104/4 151/105/4 152/106/4 +f 147/107/3 157/108/3 149/109/3 +f 166/110/11 165/111/11 164/112/11 +f 157/108/11 152/106/11 149/109/11 +f 143/113/12 145/91/12 157/114/12 +f 169/115/14 160/116/14 161/102/14 +f 167/117/12 166/110/12 172/118/12 +f 171/119/12 167/117/12 172/118/12 +f 166/110/12 173/120/12 172/118/12 +f 166/110/12 168/121/12 174/122/12 +f 167/117/12 170/123/12 169/124/12 +f 177/125/12 169/124/12 170/123/12 +f 168/121/12 175/126/12 174/122/12 +f 168/121/12 169/124/12 176/127/12 +f 165/128/2 180/129/2 164/130/2 +f 181/131/2 164/130/2 180/129/2 +f 179/132/2 165/128/2 178/133/2 +f 192/134/2 190/135/2 191/136/2 +f 189/137/12 162/138/12 187/139/12 +f 163/140/12 188/141/12 186/142/12 +f 194/143/13 189/137/13 192/134/13 +f 183/144/2 195/145/2 182/146/2 +f 164/130/2 182/146/2 195/145/2 +f 165/128/2 194/147/2 178/133/2 +f 194/148/3 167/149/3 169/150/3 +f 166/151/4 164/152/4 195/153/4 +f 208/154/4 210/155/4 204/156/4 +f 234/157/3 232/158/3 230/159/3 +f 270/160/1 268/161/1 266/162/1 +f 248/163/11 259/164/11 249/165/11 +f 257/166/11 248/163/11 247/167/11 +f 257/166/11 247/168/11 256/169/11 +f 259/164/11 260/170/11 249/171/11 +f 246/172/11 256/169/11 247/173/11 +f 260/170/11 250/174/11 249/175/11 +f 250/174/11 262/176/11 251/177/11 +f 262/176/11 263/178/11 251/179/11 +f 263/178/11 244/180/11 251/181/11 +f 244/180/11 253/182/11 245/183/11 +f 253/182/11 254/184/11 245/185/11 +f 254/184/11 246/186/11 245/187/11 +f 283/188/4 292/189/4 282/190/4 +f 282/190/4 290/191/4 279/192/4 +f 283/188/4 288/193/4 293/194/4 +f 40/195/3 9/196/3 42/197/3 +f 10/198/4 305/199/4 304/200/4 +f 303/201/11 97/202/11 306/203/11 +f 285/204/3 289/205/3 286/206/3 +f 311/207/3 285/204/3 284/208/3 +f 284/208/3 291/209/3 311/210/3 +f 277/211/15 308/212/15 280/213/15 +f 287/214/4 298/215/4 288/193/4 +f 299/216/4 298/217/4 281/218/4 +f 301/219/4 299/216/4 281/218/4 +f 300/220/4 281/218/4 308/221/4 +f 300/220/4 308/221/4 297/222/4 +f 279/192/4 294/223/4 302/224/4 +f 297/222/4 302/225/4 295/226/4 +f 286/206/3 319/227/3 320/228/3 +f 319/229/3 318/230/3 320/231/3 +f 318/230/3 317/232/3 320/231/3 +f 312/233/3 278/234/3 307/235/3 +f 307/236/3 315/237/3 314/238/3 +f 315/237/3 309/239/3 316/240/3 +f 316/240/3 320/231/3 317/232/3 +f 309/241/16 276/242/16 321/243/16 +f 27/70/12 32/244/12 28/245/12 +f 55/29/2 458/246/2 48/247/2 +f 54/248/2 46/249/2 460/250/2 +f 468/251/12 463/252/12 459/253/12 +f 469/254/11 467/255/11 468/256/11 +f 473/257/17 468/256/17 467/255/17 +f 479/258/18 477/259/18 466/260/18 +f 485/261/12 486/262/12 483/263/12 +f 487/264/11 488/265/11 486/266/11 +f 489/267/19 485/261/19 484/268/19 +f 482/269/20 489/270/20 484/271/20 +f 483/263/21 488/272/21 482/273/21 +f 493/274/2 492/275/2 496/276/2 +f 95/52/12 87/277/12 96/50/12 +f 185/278/2 194/147/2 184/279/2 +f 194/147/2 195/145/2 184/279/2 +f 30/280/11 17/281/11 29/282/11 +f 104/283/22 498/284/22 1/285/22 +f 1/1/1 3/83/1 4/2/1 +f 23/4/2 20/286/2 7/5/2 +f 12/7/2 8/287/2 19/8/2 +f 21/10/3 20/286/3 23/4/3 +f 22/12/4 26/288/4 24/9/4 +f 21/13/2 25/289/2 26/14/2 +f 15/16/7 27/24/7 29/22/7 +f 30/23/8 28/290/8 16/21/8 +f 27/24/9 28/290/9 30/25/9 +f 22/15/10 19/291/10 20/27/10 +f 49/28/2 56/33/2 55/29/2 +f 49/31/2 50/292/2 57/32/2 +f 51/34/2 58/38/2 57/32/2 +f 51/36/2 52/293/2 59/37/2 +f 46/39/2 54/248/2 53/40/2 +f 45/42/2 53/40/2 59/37/2 +f 77/44/4 37/294/4 39/295/4 +f 37/294/4 38/296/4 39/295/4 +f 39/295/4 35/45/4 77/44/4 +f 35/45/4 76/297/4 90/46/4 +f 41/298/3 43/299/3 44/300/3 +f 44/300/3 103/301/3 41/298/3 +f 103/301/3 102/47/3 36/49/3 +f 41/298/3 103/301/3 36/49/3 +f 96/50/11 94/302/11 93/51/11 +f 5/53/2 6/85/2 34/54/2 +f 23/4/11 11/6/11 25/58/11 +f 11/6/11 13/56/11 25/58/11 +f 18/60/11 14/303/11 26/59/11 +f 14/303/11 12/7/11 26/59/11 +f 25/58/11 17/57/11 18/60/11 +f 131/63/12 133/304/12 139/61/12 +f 133/304/12 137/305/12 141/306/12 +f 139/61/12 133/304/12 141/306/12 +f 132/66/2 130/307/2 140/64/2 +f 130/307/2 134/308/2 138/309/2 +f 140/64/2 130/307/2 138/309/2 +f 138/67/11 139/310/11 141/68/11 +f 27/70/4 15/72/4 2/3/4 +f 15/72/4 13/311/4 11/73/4 +f 7/74/4 5/53/4 33/75/4 +f 1/1/4 2/3/4 33/75/4 +f 12/77/3 14/312/3 16/78/3 +f 28/80/3 32/313/3 4/2/3 +f 8/79/3 4/2/3 34/81/3 +f 3/83/3 109/314/3 34/81/3 +f 5/53/11 7/74/11 8/84/11 +f 144/86/1 145/315/1 143/87/1 +f 151/316/2 150/92/2 152/90/2 +f 150/92/2 144/89/2 152/90/2 +f 142/88/2 146/100/2 149/317/2 +f 146/100/2 147/318/2 149/317/2 +f 142/88/2 149/317/2 152/90/2 +f 145/91/3 144/89/3 150/92/3 +f 155/94/13 154/319/13 150/95/13 +f 146/97/13 148/320/13 153/98/13 +f 143/87/4 148/321/4 146/100/4 +f 159/101/12 158/322/12 161/102/12 +f 156/104/4 155/94/4 151/105/4 +f 147/107/3 153/98/3 157/108/3 +f 166/110/11 167/117/11 165/111/11 +f 157/108/11 156/104/11 152/106/11 +f 145/91/12 154/93/12 156/323/12 +f 154/93/12 155/324/12 156/323/12 +f 153/325/12 148/326/12 157/114/12 +f 148/326/12 143/113/12 157/114/12 +f 145/91/12 156/323/12 157/114/12 +f 169/115/14 168/327/14 160/116/14 +f 171/119/12 170/123/12 167/117/12 +f 166/110/12 174/122/12 173/120/12 +f 177/125/12 176/127/12 169/124/12 +f 168/121/12 176/127/12 175/126/12 +f 181/131/2 182/146/2 164/130/2 +f 179/132/2 180/129/2 165/128/2 +f 192/134/2 193/328/2 190/135/2 +f 189/137/12 194/143/12 162/138/12 +f 163/140/12 195/329/12 188/141/12 +f 192/134/13 191/136/13 195/329/13 +f 191/136/13 188/141/13 195/329/13 +f 195/329/13 194/143/13 192/134/13 +f 183/144/2 184/279/2 195/145/2 +f 169/150/3 161/102/3 158/322/3 +f 158/322/3 162/330/3 169/150/3 +f 162/330/3 194/148/3 169/150/3 +f 194/148/3 165/331/3 167/149/3 +f 195/153/4 163/332/4 168/333/4 +f 163/332/4 159/334/4 168/333/4 +f 159/334/4 160/335/4 168/333/4 +f 168/333/4 166/151/4 195/153/4 +f 204/156/4 205/336/4 206/337/4 +f 206/337/4 207/338/4 208/154/4 +f 208/154/4 209/339/4 210/155/4 +f 210/155/4 211/340/4 204/156/4 +f 204/156/4 206/337/4 208/154/4 +f 230/159/3 229/341/3 228/342/3 +f 228/342/3 235/343/3 234/157/3 +f 234/157/3 233/344/3 232/158/3 +f 232/158/3 231/345/3 230/159/3 +f 230/159/3 228/342/3 234/157/3 +f 266/162/1 265/346/1 264/347/1 +f 264/347/1 275/348/1 274/349/1 +f 274/349/1 273/350/1 272/351/1 +f 272/351/1 271/352/1 270/160/1 +f 270/160/1 269/353/1 268/161/1 +f 268/161/1 267/354/1 266/162/1 +f 266/162/1 264/347/1 270/160/1 +f 264/347/1 274/349/1 270/160/1 +f 274/349/1 272/351/1 270/160/1 +f 248/163/11 258/355/11 259/164/11 +f 257/166/11 258/355/11 248/163/11 +f 246/172/11 255/356/11 256/169/11 +f 260/170/11 261/357/11 250/174/11 +f 250/174/11 261/357/11 262/176/11 +f 263/178/11 252/358/11 244/180/11 +f 244/180/11 252/358/11 253/182/11 +f 254/184/11 255/359/11 246/186/11 +f 283/188/4 293/360/4 292/189/4 +f 282/190/4 292/361/4 290/191/4 +f 283/188/4 287/214/4 288/193/4 +f 40/195/3 303/362/3 9/196/3 +f 10/198/4 306/363/4 305/199/4 +f 10/364/11 9/365/11 303/201/11 +f 303/201/11 36/366/11 97/202/11 +f 97/202/11 76/367/11 306/203/11 +f 76/367/11 35/368/11 306/203/11 +f 306/203/11 10/364/11 303/201/11 +f 285/204/3 310/369/3 289/205/3 +f 311/207/3 310/370/3 285/204/3 +f 284/208/3 278/234/3 291/209/3 +f 277/211/15 302/371/15 308/212/15 +f 287/214/4 281/372/4 298/215/4 +f 300/220/4 301/219/4 281/218/4 +f 279/192/4 290/191/4 294/223/4 +f 297/222/4 308/221/4 302/225/4 +f 286/206/3 289/205/3 319/227/3 +f 312/233/3 291/209/3 278/234/3 +f 307/236/3 309/239/3 315/237/3 +f 316/240/3 309/239/3 320/231/3 +f 309/241/16 307/373/16 276/242/16 +f 27/70/12 31/71/12 32/244/12 +f 459/253/12 461/374/12 469/375/12 +f 461/374/12 465/376/12 469/375/12 +f 469/375/12 468/251/12 459/253/12 +f 469/254/11 466/260/11 467/255/11 +f 467/255/23 475/377/23 471/378/23 +f 471/378/17 473/257/17 467/255/17 +f 466/260/24 469/254/24 481/379/24 +f 481/379/24 479/258/24 466/260/24 +f 485/261/12 487/380/12 486/262/12 +f 487/264/11 489/270/11 488/265/11 +f 489/267/19 487/380/19 485/261/19 +f 482/269/20 488/265/20 489/270/20 +f 483/263/21 486/262/21 488/272/21 +f 492/275/2 491/381/2 490/382/2 +f 490/382/2 497/383/2 492/275/2 +f 497/383/2 496/276/2 492/275/2 +f 496/276/2 495/384/2 494/385/2 +f 494/385/2 493/274/2 496/276/2 +f 86/386/12 87/277/12 95/52/12 +f 87/277/12 88/387/12 96/50/12 +f 185/278/2 178/133/2 194/147/2 +f 30/280/11 18/388/11 17/281/11 +s 1 +f 40/389/25 43/390/26 41/391/25 +f 58/38/1 65/392/15 57/32/15 +f 56/33/4 63/393/7 55/29/7 +f 59/37/16 66/394/1 58/38/1 +f 57/32/15 64/395/4 56/33/4 +f 459/396/27 55/29/7 63/393/7 +f 54/248/8 60/397/3 53/40/3 +f 53/40/3 67/398/16 59/37/16 +f 461/399/28 54/248/8 460/250/28 +f 88/400/29 81/401/30 82/402/31 +f 87/403/11 80/404/32 81/401/30 +f 98/405/33 89/406/34 84/407/35 +f 84/407/35 92/408/36 83/409/37 +f 91/410/38 78/411/39 79/412/40 +f 90/413/41 99/414/42 77/415/42 +f 92/416/43 76/417/44 94/418/45 +f 100/419/46 85/420/47 101/421/48 +f 101/422/42 102/423/49 103/424/42 +f 91/425/50 102/423/49 85/426/51 +f 81/401/30 80/404/32 70/427/52 +f 69/428/53 70/427/52 80/404/32 +f 83/409/37 72/429/54 84/407/35 +f 106/430/55 498/431/56 105/432/57 +f 110/433/58 109/434/59 501/435/60 +f 107/436/61 117/437/62 108/438/63 +f 120/439/3 111/440/64 112/441/65 +f 111/442/64 118/443/66 110/433/58 +f 108/438/63 121/444/67 113/445/68 +f 106/446/55 116/447/4 107/436/69 +f 121/444/67 112/441/70 113/445/68 +f 114/448/71 106/430/55 105/432/57 +f 64/395/72 125/449/73 63/393/73 +f 62/450/9 123/451/74 61/452/74 +f 60/397/75 129/453/76 67/398/76 +f 66/394/77 127/454/78 65/392/78 +f 64/395/72 127/455/78 126/456/72 +f 62/457/9 125/458/73 124/459/79 +f 60/397/75 123/460/74 122/461/75 +f 67/398/76 128/462/77 66/394/77 +f 68/463/80 123/464/8 69/465/53 +f 75/466/81 122/467/3 68/463/80 +f 74/468/1 127/469/15 128/470/1 +f 71/471/82 126/472/4 72/473/54 +f 69/465/53 124/474/11 70/475/52 +f 74/468/1 129/476/16 75/466/81 +f 72/473/54 127/469/15 73/477/83 +f 70/478/52 125/479/7 71/471/82 +f 132/66/3 137/480/84 133/304/3 +f 131/481/4 134/482/85 130/307/4 +f 136/483/84 141/68/86 137/480/84 +f 135/484/85 138/485/87 134/482/85 +f 79/412/40 78/411/39 68/486/80 +f 104/487/88 33/488/11 109/434/59 +f 98/405/33 72/489/54 73/490/83 +f 180/491/1 171/492/15 172/493/1 +f 185/494/7 176/495/11 177/496/7 +f 183/497/8 174/498/3 175/499/8 +f 181/500/16 172/501/1 173/502/16 +f 179/503/15 170/504/4 171/492/15 +f 178/505/4 177/496/7 170/504/4 +f 184/506/11 175/499/8 176/495/11 +f 182/507/3 173/502/16 174/498/3 +f 208/508/1 199/509/89 200/510/1 +f 206/511/2 197/512/90 198/513/2 +f 211/514/91 202/515/12 203/516/91 +f 209/517/92 200/510/1 201/518/92 +f 207/519/89 198/513/2 199/509/89 +f 205/520/90 196/521/11 197/512/90 +f 204/522/11 203/516/91 196/523/11 +f 210/524/12 201/518/92 202/515/12 +f 219/525/93 220/526/87 212/527/87 +f 225/528/94 218/529/95 217/530/94 +f 215/531/96 224/532/97 216/533/97 +f 221/534/98 214/535/99 213/536/98 +f 220/537/87 213/536/98 212/538/87 +f 218/529/95 227/539/93 219/525/93 +f 224/532/97 217/530/94 216/533/97 +f 214/535/99 223/540/96 215/531/96 +f 220/537/11 229/541/90 221/534/90 +f 227/539/91 228/542/11 220/526/11 +f 225/528/92 234/543/12 226/544/12 +f 223/540/89 232/545/1 224/532/1 +f 221/534/90 230/546/2 222/547/2 +f 226/544/12 235/548/91 227/539/91 +f 224/532/1 233/549/92 225/528/92 +f 222/547/2 231/550/89 223/540/89 +f 242/551/12 251/552/100 243/553/100 +f 240/554/4 249/555/101 241/556/101 +f 238/557/2 247/558/102 239/559/102 +f 236/560/3 245/561/103 237/562/103 +f 243/553/100 244/563/3 236/560/3 +f 241/556/101 250/564/12 242/551/12 +f 239/559/102 248/565/4 240/554/4 +f 237/562/103 246/566/2 238/567/2 +f 256/169/104 269/568/105 257/166/105 +f 263/178/106 264/569/3 252/358/3 +f 253/182/107 266/570/108 254/184/108 +f 260/170/109 273/571/12 261/357/12 +f 257/166/105 270/572/4 258/355/4 +f 254/184/108 267/573/2 255/359/2 +f 261/357/12 274/574/110 262/176/110 +f 258/355/4 271/575/111 259/164/111 +f 255/356/2 268/576/104 256/169/104 +f 262/176/110 275/577/106 263/178/106 +f 252/358/3 265/578/107 253/182/107 +f 259/164/111 272/579/109 260/170/109 +f 286/206/112 283/188/113 285/204/113 +f 283/188/113 284/208/114 285/204/113 +f 284/208/114 279/192/115 278/234/115 +f 40/389/25 36/366/116 303/201/116 +f 38/580/26 305/581/25 39/582/25 +f 35/368/116 305/581/25 306/203/116 +f 310/583/117 288/584/118 289/585/118 +f 293/586/117 311/587/119 292/588/119 +f 290/589/120 311/587/119 291/590/120 +f 307/235/2 279/192/115 302/224/2 +f 314/238/3 313/591/3 307/236/3 +f 312/592/121 290/589/120 291/590/120 +f 294/593/121 313/594/122 296/595/122 +f 295/596/123 313/594/122 314/597/123 +f 297/598/124 314/597/1 315/599/124 +f 297/600/124 316/601/125 300/602/125 +f 301/603/2 316/601/125 317/604/2 +f 299/605/126 317/604/127 318/606/126 +f 298/607/128 318/606/126 319/608/128 +f 288/584/118 319/608/128 289/585/118 +f 320/228/1 287/214/112 286/206/112 +f 312/609/3 307/236/3 313/591/3 +f 68/610/80 100/419/46 75/611/81 +f 338/612/129 373/613/130 337/614/131 +f 326/615/132 360/616/133 325/617/133 +f 353/618/134 388/619/135 352/620/136 +f 339/621/137 374/622/138 338/623/129 +f 327/624/139 361/625/132 326/615/132 +f 354/626/140 389/627/141 353/618/142 +f 340/628/143 375/629/144 339/621/137 +f 328/630/145 362/631/139 327/624/139 +f 355/632/146 390/633/147 354/626/140 +f 341/634/148 376/635/149 340/628/143 +f 364/636/150 328/630/150 398/637/150 +f 355/632/146 392/638/151 391/639/152 +f 342/640/153 377/641/154 341/634/148 +f 329/642/155 398/643/156 399/644/157 +f 347/645/158 392/638/151 356/646/159 +f 343/647/160 378/648/161 342/640/153 +f 330/649/162 365/650/163 329/642/155 +f 344/651/164 379/652/165 343/647/160 +f 331/653/166 366/654/167 330/649/162 +f 345/655/168 380/656/169 344/651/164 +f 332/657/170 367/658/171 331/653/166 +f 346/659/172 381/660/173 345/655/168 +f 333/661/174 368/662/175 332/663/175 +f 348/664/176 382/665/177 346/659/178 +f 334/666/179 369/667/174 333/661/174 +f 349/668/180 384/669/181 348/664/176 +f 335/670/182 370/671/183 334/666/179 +f 323/672/184 357/673/11 322/674/11 +f 350/675/185 385/676/186 349/668/180 +f 336/677/187 371/678/188 335/670/182 +f 324/679/189 358/680/184 323/672/184 +f 351/681/190 386/682/141 350/675/142 +f 337/683/191 372/684/192 336/677/187 +f 325/617/133 359/685/189 324/679/189 +f 352/620/136 387/686/193 351/681/190 +f 341/634/148 411/687/194 342/640/153 +f 398/643/156 365/650/163 364/688/195 +f 343/647/160 411/687/194 412/689/196 +f 329/642/155 400/690/197 330/649/162 +f 345/655/168 344/651/164 413/691/198 +f 346/692/172 413/693/198 414/694/199 +f 333/695/200 401/696/201 402/697/202 +f 348/698/176 414/699/203 415/700/204 +f 334/701/179 333/695/200 403/702/205 +f 349/703/180 415/700/204 416/704/206 +f 335/705/182 334/701/179 404/706/207 +f 349/703/180 417/707/208 350/675/185 +f 335/705/182 405/708/209 336/709/187 +f 324/710/210 393/711/211 394/712/212 +f 351/713/190 417/707/213 418/714/214 +f 437/715/215 372/716/192 438/717/216 +f 395/718/217 324/710/210 394/712/212 +f 352/719/136 418/714/214 419/720/218 +f 338/612/129 406/721/219 407/722/220 +f 326/723/221 395/718/217 396/724/222 +f 352/719/136 420/725/223 353/618/134 +f 408/726/224 339/621/137 407/722/220 +f 326/723/221 397/727/225 327/728/226 +f 354/729/140 420/725/213 421/730/227 +f 376/635/149 441/731/228 375/629/144 +f 327/728/226 397/727/225 328/732/229 +f 355/733/146 421/730/227 422/734/230 +f 410/735/231 340/628/143 409/736/232 +f 398/737/233 328/732/229 399/738/234 +f 323/739/235 322/740/236 393/711/211 +f 356/646/159 423/741/237 347/645/158 +f 383/742/2 424/743/238 425/744/238 +f 425/744/238 2/745/239 4/746/239 +f 399/738/234 328/732/229 397/727/225 +f 324/710/210 395/718/217 325/747/240 +f 331/653/166 401/748/241 332/749/170 +f 367/658/171 433/750/242 366/654/167 +f 433/750/242 432/751/243 366/654/167 +f 400/752/4 399/738/234 401/696/201 +f 338/623/129 407/722/220 339/621/137 +f 340/628/143 410/735/231 341/634/148 +f 404/706/207 334/701/179 403/702/205 +f 401/696/201 399/738/234 402/697/202 +f 399/738/234 403/702/205 402/697/202 +f 404/706/207 403/702/205 397/727/225 +f 397/727/225 396/724/222 404/706/207 +f 395/718/217 404/706/207 396/724/222 +f 395/718/217 394/712/212 405/708/209 +f 322/740/236 31/753/4 393/711/211 +f 31/753/4 394/712/212 393/711/211 +f 31/753/4 2/754/4 406/755/4 +f 343/647/160 412/689/196 344/651/164 +f 413/691/198 344/651/164 456/756/244 +f 344/651/164 412/689/196 456/757/244 +f 411/758/4 415/759/4 412/760/4 +f 416/761/4 410/762/4 409/763/4 +f 417/764/4 416/761/4 418/765/4 +f 416/761/4 409/763/4 418/765/4 +f 421/766/4 408/767/4 422/768/4 +f 420/769/4 419/770/4 421/766/4 +f 418/765/4 409/763/4 419/770/4 +f 421/766/4 419/770/4 409/763/4 +f 409/763/4 408/767/4 421/766/4 +f 423/771/4 422/768/4 408/767/4 +f 423/771/4 424/772/4 347/773/4 +f 423/771/4 407/774/4 2/754/4 +f 406/755/4 2/754/4 407/774/4 +f 408/767/4 407/774/4 423/771/4 +f 406/755/4 405/708/209 31/753/4 +f 403/702/205 333/695/200 402/697/202 +f 432/775/3 433/776/245 431/777/246 +f 433/776/245 434/778/247 431/777/246 +f 435/779/248 431/777/246 434/778/247 +f 436/780/249 430/781/250 435/779/248 +f 430/781/250 436/780/249 429/782/251 +f 428/783/252 436/780/249 437/715/215 +f 428/783/252 437/715/215 427/784/253 +f 443/785/3 447/786/3 442/787/3 +f 442/787/3 448/788/3 441/789/3 +f 449/790/3 450/791/3 448/788/3 +f 448/788/3 450/791/3 441/789/3 +f 453/792/3 454/793/3 440/794/3 +f 452/795/3 453/792/3 451/796/3 +f 450/791/3 451/796/3 441/789/3 +f 453/792/3 441/789/3 451/796/3 +f 441/789/3 453/792/3 440/794/3 +f 455/797/3 440/794/3 454/793/3 +f 440/794/3 455/797/3 439/798/3 +f 431/799/254 364/688/195 365/650/163 +f 364/800/255 431/777/246 363/801/256 +f 431/777/246 430/781/250 363/801/256 +f 363/801/256 430/781/250 362/802/257 +f 430/781/250 361/803/258 362/802/257 +f 361/803/258 428/783/252 360/804/259 +f 360/804/259 427/784/253 359/805/260 +f 426/806/261 359/805/260 427/784/253 +f 358/807/262 426/806/261 357/808/263 +f 432/751/243 365/650/163 366/654/167 +f 331/653/166 330/649/162 401/748/241 +f 330/649/162 400/690/197 401/748/241 +f 367/658/171 368/809/264 433/750/242 +f 369/810/265 433/776/245 368/811/266 +f 434/778/247 369/810/265 435/779/248 +f 369/810/265 370/812/183 435/779/248 +f 435/779/248 370/812/183 436/780/249 +f 370/812/183 371/813/188 436/780/249 +f 437/715/215 371/813/188 372/716/192 +f 373/814/267 438/815/216 372/684/192 +f 32/816/3 357/808/263 426/806/261 +f 427/784/253 32/816/3 426/806/261 +f 438/717/3 32/816/3 437/715/215 +f 32/816/3 438/717/3 4/817/3 +f 374/818/138 438/819/268 373/613/130 +f 375/629/144 439/820/269 374/622/138 +f 439/820/269 375/629/144 440/821/270 +f 340/628/143 339/621/137 409/736/232 +f 441/731/228 376/635/149 442/822/271 +f 376/635/149 377/641/154 442/822/271 +f 443/823/272 377/641/154 378/648/161 +f 379/652/165 443/823/272 378/648/161 +f 380/656/169 444/824/273 379/652/165 +f 380/656/169 381/660/173 445/825/274 +f 382/826/275 445/827/274 381/660/173 +f 384/828/181 446/829/276 382/665/177 +f 385/830/186 447/831/277 384/828/181 +f 449/832/278 385/830/186 386/682/279 +f 387/833/193 449/832/280 386/682/141 +f 388/834/135 450/835/281 387/833/193 +f 452/836/282 388/834/135 389/627/283 +f 390/837/147 452/836/280 389/627/141 +f 391/838/152 453/839/284 390/837/147 +f 455/840/285 454/841/286 392/638/151 +f 392/638/151 383/842/287 455/840/285 +f 425/843/3 455/797/3 383/844/3 +f 455/797/3 4/817/3 439/798/3 +f 438/717/3 439/798/3 4/817/3 +f 414/845/4 413/846/4 415/759/4 +f 415/759/4 413/846/4 412/760/4 +f 413/846/4 456/847/4 412/760/4 +f 445/825/274 457/848/288 380/656/169 +f 444/824/273 380/656/169 457/849/288 +f 457/850/3 445/851/3 444/852/3 +f 446/853/3 447/786/3 445/851/3 +f 447/786/3 444/852/3 445/851/3 +f 441/731/228 440/821/270 375/629/144 +f 409/736/232 339/621/137 408/726/224 +f 46/854/2 47/855/2 460/856/2 +f 460/856/3 465/376/289 461/374/3 +f 459/857/4 462/858/290 458/859/4 +f 462/860/2 475/861/291 467/862/2 +f 466/863/2 464/864/2 460/856/2 +f 470/865/292 473/866/293 471/867/292 +f 475/861/291 470/865/292 471/867/292 +f 470/868/294 474/869/295 462/858/290 +f 464/870/2 477/871/296 476/872/297 +f 477/871/296 478/873/298 476/872/297 +f 479/874/298 480/875/299 478/873/298 +f 480/876/300 464/864/301 478/877/300 +f 473/866/293 472/878/302 468/879/303 +f 468/879/303 472/878/302 463/880/304 +f 481/881/305 469/882/306 480/875/299 +f 469/882/306 465/883/304 480/875/299 +f 50/884/8 496/885/11 51/886/11 +f 48/887/16 494/888/3 49/889/3 +f 46/890/15 492/891/1 47/892/1 +f 51/886/11 497/893/7 52/894/7 +f 49/889/3 495/895/8 50/884/8 +f 47/896/1 493/897/16 48/887/16 +f 45/898/4 491/899/15 46/890/15 +f 52/894/7 490/900/4 45/898/4 +f 92/408/36 94/901/7 96/902/7 +f 79/412/40 95/903/8 91/410/38 +f 498/431/56 104/487/88 105/432/57 +f 108/438/307 500/904/308 107/905/309 +f 498/284/310 106/446/55 500/906/311 +f 498/284/310 500/906/311 1/285/22 +f 111/442/64 110/433/58 501/435/60 +f 3/907/312 499/908/313 501/909/314 +f 501/909/314 499/908/313 111/440/64 +f 113/445/315 112/910/316 499/911/317 +f 499/911/317 108/438/307 113/445/315 +f 499/911/317 1/912/318 500/904/308 +f 107/436/69 500/906/311 106/446/55 +f 112/441/65 111/440/64 499/908/313 +f 114/913/71 119/914/319 115/915/319 +f 121/444/2 117/437/2 115/915/319 +f 296/916/4 302/225/4 294/917/4 +f 296/916/4 295/226/4 302/225/4 +f 337/683/191 336/677/187 406/918/320 +f 406/755/320 336/709/187 405/708/209 +f 48/919/2 458/859/2 47/855/2 +f 460/856/2 47/855/2 458/859/2 +f 91/425/50 97/920/321 102/423/49 +f 90/413/41 92/416/43 89/921/322 +f 68/922/80 69/428/53 79/412/40 +f 80/404/32 79/412/40 69/428/53 +f 82/402/31 71/923/82 83/409/37 +f 71/923/82 72/924/54 83/409/37 +f 81/401/30 70/427/52 82/402/31 +f 70/427/52 71/923/82 82/402/31 +f 423/741/237 356/646/159 422/734/230 +f 355/733/146 422/734/230 356/646/159 +f 392/638/151 454/841/286 391/838/152 +f 501/909/314 109/925/312 3/907/312 +f 40/389/25 42/926/26 43/390/26 +f 58/38/1 66/394/1 65/392/15 +f 56/33/4 64/395/4 63/393/7 +f 59/37/16 67/398/16 66/394/1 +f 57/32/15 65/392/15 64/395/4 +f 459/396/27 458/246/27 55/29/7 +f 54/248/8 61/452/8 60/397/3 +f 53/40/3 60/397/3 67/398/16 +f 461/399/28 61/452/8 54/248/8 +f 88/400/29 87/403/11 81/401/30 +f 87/403/11 86/927/323 80/404/32 +f 98/405/33 99/928/324 89/406/34 +f 84/407/35 89/406/34 92/408/36 +f 91/410/38 85/420/47 78/411/39 +f 90/413/41 89/921/322 99/414/42 +f 92/416/43 90/413/41 76/417/44 +f 100/419/46 78/411/39 85/420/47 +f 101/422/42 85/426/51 102/423/49 +f 107/436/61 116/929/61 117/437/62 +f 120/439/3 119/930/325 111/440/64 +f 111/442/64 119/931/325 118/443/66 +f 108/438/63 117/437/62 121/444/67 +f 106/446/55 115/932/326 116/447/4 +f 121/444/67 120/933/70 112/441/70 +f 114/448/71 115/934/326 106/430/55 +f 64/395/72 126/935/72 125/449/73 +f 62/450/9 124/936/79 123/451/74 +f 60/397/75 122/937/75 129/453/76 +f 66/394/77 128/938/77 127/454/78 +f 64/395/72 65/392/78 127/455/78 +f 62/457/9 63/393/73 125/458/73 +f 60/397/75 61/452/74 123/460/74 +f 67/398/76 129/939/76 128/462/77 +f 68/463/80 122/467/3 123/464/8 +f 75/466/81 129/476/16 122/467/3 +f 74/468/1 73/477/83 127/469/15 +f 71/471/82 125/479/7 126/472/4 +f 69/465/53 123/464/8 124/474/11 +f 74/468/1 128/470/1 129/476/16 +f 72/473/54 126/472/4 127/469/15 +f 70/478/52 124/940/11 125/479/7 +f 132/66/3 136/483/84 137/480/84 +f 131/481/4 135/484/85 134/482/85 +f 136/483/84 140/69/86 141/68/86 +f 135/484/85 139/941/87 138/485/87 +f 33/488/11 34/942/11 109/434/59 +f 109/434/59 110/433/58 104/487/88 +f 110/433/58 118/443/66 105/432/57 +f 104/487/88 110/433/58 105/432/57 +f 118/443/66 114/448/71 105/432/57 +f 98/405/33 84/407/35 72/489/54 +f 180/491/1 179/503/15 171/492/15 +f 185/494/7 184/506/11 176/495/11 +f 183/497/8 182/507/3 174/498/3 +f 181/500/16 180/943/1 172/501/1 +f 179/503/15 178/505/4 170/504/4 +f 178/505/4 185/494/7 177/496/7 +f 184/506/11 183/497/8 175/499/8 +f 182/507/3 181/500/16 173/502/16 +f 208/508/1 207/519/89 199/509/89 +f 206/511/2 205/520/90 197/512/90 +f 211/514/91 210/524/12 202/515/12 +f 209/517/92 208/508/1 200/510/1 +f 207/519/89 206/511/2 198/513/2 +f 205/520/90 204/944/11 196/521/11 +f 204/522/11 211/514/91 203/516/91 +f 210/524/12 209/517/92 201/518/92 +f 219/525/93 227/539/93 220/526/87 +f 225/528/94 226/544/95 218/529/95 +f 215/531/96 223/540/96 224/532/97 +f 221/534/98 222/547/99 214/535/99 +f 220/537/87 221/534/98 213/536/98 +f 218/529/95 226/544/95 227/539/93 +f 224/532/97 225/528/94 217/530/94 +f 214/535/99 222/547/99 223/540/96 +f 220/537/11 228/945/11 229/541/90 +f 227/539/91 235/548/91 228/542/11 +f 225/528/92 233/549/92 234/543/12 +f 223/540/89 231/550/89 232/545/1 +f 221/534/90 229/541/90 230/546/2 +f 226/544/12 234/543/12 235/548/91 +f 224/532/1 232/545/1 233/549/92 +f 222/547/2 230/546/2 231/550/89 +f 242/551/12 250/564/12 251/552/100 +f 240/554/4 248/565/4 249/555/101 +f 238/557/2 246/946/2 247/558/102 +f 236/560/3 244/563/3 245/561/103 +f 243/553/100 251/552/100 244/563/3 +f 241/556/101 249/555/101 250/564/12 +f 239/559/102 247/558/102 248/565/4 +f 237/562/103 245/561/103 246/566/2 +f 256/169/104 268/576/104 269/568/105 +f 263/178/106 275/577/106 264/569/3 +f 253/182/107 265/578/107 266/570/108 +f 260/170/109 272/579/109 273/571/12 +f 257/166/105 269/568/105 270/572/4 +f 254/184/108 266/570/108 267/573/2 +f 261/357/12 273/571/12 274/574/110 +f 258/355/4 270/572/4 271/575/111 +f 255/356/2 267/947/2 268/576/104 +f 262/176/110 274/574/110 275/577/106 +f 252/358/3 264/569/3 265/578/107 +f 259/164/111 271/575/111 272/579/109 +f 286/206/112 287/214/112 283/188/113 +f 283/188/113 282/190/114 284/208/114 +f 284/208/114 282/190/114 279/192/115 +f 40/389/25 41/391/25 36/366/116 +f 38/580/26 304/948/26 305/581/25 +f 35/368/116 39/582/25 305/581/25 +f 310/583/117 293/586/117 288/584/118 +f 293/586/117 310/583/117 311/587/119 +f 290/589/120 292/588/119 311/587/119 +f 302/224/2 277/949/2 276/950/2 +f 307/235/2 278/234/115 279/192/115 +f 302/224/2 276/950/2 307/235/2 +f 312/592/121 294/593/121 290/589/120 +f 294/593/121 312/592/121 313/594/122 +f 295/596/123 296/595/122 313/594/122 +f 297/598/124 295/596/1 314/597/1 +f 297/600/124 315/951/124 316/601/125 +f 301/603/2 300/602/125 316/601/125 +f 299/605/126 301/603/127 317/604/127 +f 298/607/128 299/605/126 318/606/126 +f 288/584/118 298/607/128 319/608/128 +f 320/228/1 281/372/1 287/214/112 +f 68/610/80 78/411/39 100/419/46 +f 338/612/129 374/818/138 373/613/130 +f 326/615/132 361/625/132 360/616/133 +f 353/618/134 389/627/283 388/619/135 +f 339/621/137 375/629/144 374/622/138 +f 327/624/139 362/631/139 361/625/132 +f 354/626/140 390/633/147 389/627/141 +f 340/628/143 376/635/149 375/629/144 +f 328/630/145 363/952/145 362/631/139 +f 355/632/146 391/639/152 390/633/147 +f 341/634/148 377/641/154 376/635/149 +f 364/636/150 363/952/150 328/630/150 +f 355/632/146 356/646/159 392/638/151 +f 342/640/153 378/648/161 377/641/154 +f 347/645/158 383/842/287 392/638/151 +f 343/647/160 379/652/165 378/648/161 +f 330/649/162 366/654/167 365/650/163 +f 344/651/164 380/656/169 379/652/165 +f 331/653/166 367/658/171 366/654/167 +f 345/655/168 381/660/173 380/656/169 +f 332/657/170 368/953/264 367/658/171 +f 346/659/172 382/665/275 381/660/173 +f 333/661/174 369/667/174 368/662/175 +f 348/664/176 384/669/181 382/665/177 +f 334/666/179 370/671/183 369/667/174 +f 349/668/180 385/676/186 384/669/181 +f 335/670/182 371/678/188 370/671/183 +f 323/672/184 358/680/184 357/673/11 +f 350/675/185 386/682/279 385/676/186 +f 336/677/187 372/684/192 371/678/188 +f 324/679/189 359/685/189 358/680/184 +f 351/681/190 387/686/193 386/682/141 +f 337/683/191 373/814/267 372/684/192 +f 325/617/133 360/616/133 359/685/189 +f 352/620/136 388/619/135 387/686/193 +f 341/634/148 410/735/231 411/687/194 +f 398/643/156 329/642/155 365/650/163 +f 343/647/160 342/640/153 411/687/194 +f 329/642/155 399/644/157 400/690/197 +f 346/692/172 345/655/168 413/693/198 +f 333/695/200 332/954/327 401/696/201 +f 348/698/176 346/659/178 414/699/203 +f 349/703/180 348/698/176 415/700/204 +f 349/703/180 416/704/206 417/707/208 +f 335/705/182 404/706/207 405/708/209 +f 324/710/210 323/739/235 393/711/211 +f 351/713/190 350/675/142 417/707/213 +f 352/719/136 351/713/190 418/714/214 +f 338/612/129 337/614/131 406/721/219 +f 326/723/221 325/747/240 395/718/217 +f 352/719/136 419/720/218 420/725/223 +f 326/723/221 396/724/222 397/727/225 +f 354/729/140 353/618/142 420/725/213 +f 355/733/146 354/729/140 421/730/227 +f 383/742/2 347/955/2 424/743/238 +f 425/744/238 424/743/238 2/745/239 +f 399/738/234 397/727/225 403/702/205 +f 395/718/217 405/708/209 404/706/207 +f 31/753/4 405/708/209 394/712/212 +f 411/758/4 410/762/4 415/759/4 +f 416/761/4 415/759/4 410/762/4 +f 423/771/4 2/754/4 424/772/4 +f 435/779/248 430/781/250 431/777/246 +f 428/783/252 429/782/251 436/780/249 +f 443/785/3 444/852/3 447/786/3 +f 442/787/3 447/786/3 448/788/3 +f 430/781/250 429/782/251 361/803/258 +f 361/803/258 429/782/251 428/783/252 +f 360/804/259 428/783/252 427/784/253 +f 426/806/261 358/807/262 359/805/260 +f 432/751/243 431/799/254 365/650/163 +f 369/810/265 434/778/247 433/776/245 +f 437/715/215 436/780/249 371/813/188 +f 427/784/253 437/715/215 32/816/3 +f 374/818/138 439/820/269 438/819/268 +f 443/823/272 442/822/271 377/641/154 +f 379/652/165 444/824/273 443/823/272 +f 382/826/275 446/956/328 445/827/274 +f 384/828/181 447/831/277 446/829/276 +f 385/830/186 448/957/329 447/831/277 +f 449/832/278 448/957/329 385/830/186 +f 387/833/193 450/835/281 449/832/280 +f 388/834/135 451/958/330 450/835/281 +f 452/836/282 451/958/330 388/834/135 +f 390/837/147 453/839/284 452/836/280 +f 391/838/152 454/841/286 453/839/284 +f 425/843/3 4/817/3 455/797/3 +f 460/856/3 464/864/301 465/376/289 +f 459/857/4 463/959/331 462/858/290 +f 462/860/2 474/960/332 475/861/291 +f 460/856/2 458/859/2 467/961/2 +f 458/859/2 462/858/2 467/961/2 +f 467/961/2 466/863/2 460/856/2 +f 470/865/292 472/878/302 473/866/293 +f 475/861/291 474/960/332 470/865/292 +f 462/858/290 463/959/331 472/962/294 +f 472/962/294 470/868/294 462/858/290 +f 464/870/2 466/963/2 477/871/296 +f 477/871/296 479/874/298 478/873/298 +f 479/874/298 481/881/305 480/875/299 +f 465/376/289 464/864/301 480/876/300 +f 464/864/301 476/964/333 478/877/300 +f 50/884/8 495/895/8 496/885/11 +f 48/887/16 493/897/16 494/888/3 +f 46/890/15 491/899/15 492/891/1 +f 51/886/11 496/885/11 497/893/7 +f 49/889/3 494/888/3 495/895/8 +f 47/896/1 492/965/1 493/897/16 +f 45/898/4 490/900/4 491/899/15 +f 52/894/7 497/893/7 490/900/4 +f 88/400/29 82/402/31 96/902/7 +f 82/402/31 83/409/37 96/902/7 +f 83/409/37 92/408/36 96/902/7 +f 79/412/40 80/404/32 95/903/8 +f 80/404/32 86/927/323 95/903/8 +f 95/903/8 93/966/8 91/410/38 +f 499/911/317 500/904/308 108/438/307 +f 499/911/317 3/967/318 1/912/318 +f 114/913/71 118/968/66 119/914/319 +f 117/437/2 116/969/2 115/915/319 +f 115/915/319 119/914/319 121/444/2 +f 119/914/319 120/970/2 121/444/2 +f 91/425/50 93/971/12 97/920/321 +l 355 423 +o Trigger_Plane.002 +v 0.125000 1.562500 1.111670 +v -0.125000 1.812500 0.861670 +v -0.125000 1.562500 1.111670 +v 0.125000 1.812500 0.861670 +v 0.125000 1.641741 0.941738 +v -0.125000 1.641741 0.941738 +v 0.125000 1.641741 0.754238 +v -0.125000 1.641741 0.754238 +v 0.125000 1.534195 0.600647 +v -0.125000 1.534195 0.600647 +v 0.125000 1.431801 0.528950 +v -0.125000 1.431801 0.528950 +v -0.125000 1.750000 0.754238 +v 0.125000 1.750000 0.754238 +v -0.125000 1.589303 0.562727 +v 0.125000 1.589303 0.562727 +vt 0.582090 0.358209 +vt 0.578358 0.365672 +vt 0.582090 0.365672 +vt 0.582090 0.376866 +vt 0.597015 0.365672 +vt 0.600746 0.365672 +vt 0.597015 0.358209 +vt 0.597015 0.376866 +vt 0.574627 0.380597 +vt 0.582090 0.391791 +vt 0.582090 0.380597 +vt 0.574627 0.391791 +vt 0.582090 0.410448 +vt 0.582090 0.399254 +vt 0.597015 0.391791 +vt 0.604478 0.380597 +vt 0.597015 0.380597 +vt 0.604478 0.391791 +vt 0.597015 0.399254 +vt 0.597015 0.410448 +vt 0.570895 0.391791 +vt 0.608209 0.391791 +vt 0.582090 0.324627 +vt 0.597015 0.332090 +vt 0.597015 0.324627 +vt 0.582090 0.347015 +vt 0.597015 0.347015 +vt 0.582090 0.332090 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -0.9763 -0.2164 +vn 0.0000 -0.9063 -0.4226 +vn 0.0000 -0.9537 0.3007 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 -0.5736 0.8192 +vn 0.0000 0.8644 -0.5029 +vn 0.0000 0.8182 -0.5749 +vn 0.0000 0.5158 -0.8567 +vn 0.0000 0.2097 -0.9778 +usemtl Material.001 +s off +f 512/972/334 517/973/334 510/974/334 +f 517/973/334 508/975/334 510/974/334 +f 511/976/335 516/977/335 513/978/335 +f 509/979/335 516/977/335 511/976/335 +f 515/980/334 506/981/334 508/982/334 +f 505/983/334 502/984/334 506/985/334 +f 507/986/335 514/987/335 509/988/335 +f 503/989/335 507/990/335 504/991/335 +f 517/973/334 515/980/334 508/975/334 +f 509/979/335 514/987/335 516/977/335 +f 515/980/334 505/992/334 506/981/334 +f 507/986/335 503/993/335 514/987/335 +s 1 +f 507/990/336 502/984/337 504/991/337 +f 509/988/338 506/981/336 507/986/336 +f 511/976/339 508/975/338 509/979/338 +f 513/978/340 510/974/339 511/976/339 +f 505/994/341 514/995/342 503/996/341 +f 514/995/342 517/997/343 516/998/343 +f 513/978/344 517/997/343 512/972/344 +f 507/990/336 506/985/336 502/984/337 +f 509/988/338 508/982/338 506/981/336 +f 511/976/339 510/974/339 508/975/338 +f 513/978/340 512/972/340 510/974/339 +f 505/994/341 515/999/342 514/995/342 +f 514/995/342 515/999/342 517/997/343 +f 513/978/344 516/998/343 517/997/343 +o Bolt_Plane.001 +v 0.343750 1.312500 1.674170 +v 0.343750 3.250000 1.674170 +v 0.343750 1.312500 1.986670 +v 0.343750 3.250000 1.986670 +v 0.343750 3.341529 1.765699 +v 0.343750 3.341529 1.895141 +v 0.343750 1.220971 1.895141 +v 0.343750 1.220971 1.765699 +v 0.375000 1.338388 1.736670 +v 0.375000 3.224112 1.736670 +v 0.375000 1.338388 1.924170 +v 0.375000 3.224112 1.924170 +v 0.375000 3.279029 1.791587 +v 0.375000 3.279029 1.869253 +v 0.375000 1.283471 1.869253 +v 0.375000 1.283471 1.791587 +v 0.375000 1.619638 1.947047 +v 0.375000 1.557138 1.947047 +v 0.375000 1.503012 1.915797 +v 0.375000 1.471762 1.861670 +v 0.375000 1.471762 1.799170 +v 0.375000 1.503012 1.745044 +v 0.375000 1.557138 1.713794 +v 0.375000 1.619638 1.713794 +v 0.375000 1.673765 1.745044 +v 0.375000 1.705015 1.799170 +v 0.375000 1.705015 1.861670 +v 0.375000 1.673765 1.915797 +v 0.625000 1.619638 1.947047 +v 0.625000 1.557138 1.947047 +v 0.625000 1.503012 1.915797 +v 0.625000 1.471762 1.861670 +v 0.625000 1.471762 1.799170 +v 0.625000 1.503012 1.745043 +v 0.625000 1.557138 1.713793 +v 0.625000 1.619638 1.713793 +v 0.625000 1.673765 1.745043 +v 0.625000 1.705015 1.799170 +v 0.625000 1.705015 1.861670 +v 0.625000 1.673765 1.915797 +vt 0.595015 0.509462 +vt 0.587553 0.507463 +vt 0.582090 0.512926 +vt 0.597015 0.500000 +vt 0.593284 0.507463 +vt 0.597015 0.503731 +vt 0.593284 0.507463 +vt 0.589552 0.500000 +vt 0.589552 0.503731 +vt 0.582090 0.516925 +vt 0.584089 0.520388 +vt 0.587553 0.522388 +vt 0.591552 0.522388 +vt 0.595015 0.520388 +vt 0.597015 0.516925 +vt 0.597015 0.512926 +vt 0.591552 0.507463 +vt 0.584089 0.509462 +vt 0.593284 0.496269 +vt 0.593284 0.496269 +vt 0.570895 0.507463 +vt 0.567164 0.500000 +vt 0.570895 0.500000 +vt 0.570895 0.492537 +vt 0.567164 0.492537 +vt 0.570895 0.485075 +vt 0.570895 0.369403 +vt 0.567164 0.361940 +vt 0.570895 0.361940 +vt 0.567164 0.354478 +vt 0.570895 0.354478 +vt 0.570895 0.347015 +vt 0.567164 0.623134 +vt 0.570895 0.623134 +vt 0.567164 0.485075 +vt 0.574627 0.567164 +vt 0.582090 0.563433 +vt 0.570895 0.563433 +vt 0.597015 0.529851 +vt 0.582090 0.526119 +vt 0.582090 0.529851 +vt 0.597015 0.555970 +vt 0.582090 0.552239 +vt 0.582090 0.555970 +vt 0.597015 0.544776 +vt 0.582090 0.541045 +vt 0.582090 0.544776 +vt 0.597015 0.533582 +vt 0.582090 0.533582 +vt 0.597015 0.559702 +vt 0.582090 0.559702 +vt 0.597015 0.567164 +vt 0.582090 0.563433 +vt 0.582090 0.567164 +vt 0.597015 0.548507 +vt 0.582090 0.548507 +vt 0.597015 0.537313 +vt 0.582090 0.537313 +vt 0.597015 0.563433 +vt 0.597015 0.526119 +vt 0.582090 0.522388 +vt 0.597015 0.552239 +vt 0.597015 0.541045 +vt 0.582090 0.451493 +vt 0.574627 0.447761 +vt 0.578358 0.447761 +vt 0.567164 0.507463 +vt 0.567164 0.369403 +vt 0.567164 0.347015 +vt 0.578358 0.567164 +vt 0.597015 0.522388 +vt 0.570895 0.451493 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.9078 0.1605 0.3874 +vn 0.9644 0.2444 0.1012 +vn 0.9078 0.3874 0.1605 +vn 0.9078 0.3874 -0.1605 +vn 0.9644 0.2444 -0.1012 +vn 0.9078 0.1605 -0.3874 +vn 0.9078 -0.1605 -0.3874 +vn 0.9644 -0.2444 -0.1012 +vn 0.9078 -0.3874 -0.1605 +vn 0.9644 -0.2444 0.1012 +vn 0.9078 -0.3874 0.1605 +vn 0.9078 -0.1605 0.3874 +vn 0.9644 -0.1012 0.2444 +vn 0.9644 0.1012 -0.2444 +vn 0.9644 -0.1012 -0.2444 +vn 0.0000 -0.9659 0.2588 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.9659 0.2588 +vn 0.0000 0.9659 -0.2588 +vn -0.0000 0.2588 -0.9659 +vn -0.0000 -0.2588 -0.9659 +vn 0.0000 -0.9659 -0.2588 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.2588 0.9659 +vn 0.0000 0.2588 0.9659 +vn -0.0000 0.7071 -0.7071 +vn -0.0000 -0.7071 -0.7071 +vn 0.9644 0.1012 0.2444 +usemtl Material.001 +s off +f 554/1000/345 556/1001/345 546/1002/345 +f 534/1003/346 536/1004/346 535/1005/346 +f 539/1006/346 541/1007/346 540/1008/346 +f 546/1002/345 547/1009/345 548/1010/345 +f 548/1010/345 549/1011/345 550/1012/345 +f 550/1012/345 551/1013/345 554/1000/345 +f 551/1013/345 552/1014/345 554/1000/345 +f 552/1014/345 553/1015/345 554/1000/345 +f 554/1000/345 555/1016/345 556/1001/345 +f 556/1001/345 557/1017/345 546/1002/345 +f 546/1002/345 548/1010/345 554/1000/345 +f 548/1010/345 550/1012/345 554/1000/345 +f 534/1003/346 545/1018/346 536/1004/346 +f 539/1006/346 542/1019/346 541/1007/346 +s 1 +f 521/1020/347 531/1021/348 523/1022/349 +f 522/1023/350 531/1021/348 530/1024/351 +f 530/1024/351 519/1025/352 522/1023/350 +f 518/1026/353 533/1027/354 525/1028/355 +f 525/1028/355 532/1029/356 524/1030/357 +f 532/1029/356 520/1031/358 524/1030/357 +f 528/1032/359 521/1020/347 520/1033/358 +f 527/1034/360 518/1026/353 519/1025/352 +f 532/1035/356 526/1036/361 528/1037/359 +f 549/1038/362 536/1039/363 537/1040/362 +f 556/1041/364 543/1042/365 544/1043/364 +f 553/1044/366 540/1045/367 541/1046/366 +f 550/1047/368 537/1040/362 538/1048/368 +f 557/1049/369 544/1043/364 545/1050/369 +f 547/1051/370 534/1052/371 535/1053/370 +f 554/1054/372 541/1046/366 542/1055/372 +f 551/1056/373 538/1048/368 539/1057/373 +f 546/1058/371 545/1050/369 534/1052/371 +f 548/1059/363 535/1060/370 536/1039/363 +f 555/1061/365 542/1055/372 543/1042/365 +f 552/1062/367 539/1057/373 540/1045/367 +f 527/1063/360 528/1037/359 526/1036/361 +f 531/1064/348 527/1063/360 530/1065/351 +f 521/1020/347 529/1066/374 531/1021/348 +f 522/1023/350 523/1022/349 531/1021/348 +f 530/1024/351 527/1034/360 519/1025/352 +f 518/1026/353 526/1067/361 533/1027/354 +f 525/1028/355 533/1027/354 532/1029/356 +f 532/1029/356 528/1068/359 520/1031/358 +f 528/1032/359 529/1066/374 521/1020/347 +f 527/1034/360 526/1067/361 518/1026/353 +f 532/1035/356 533/1069/354 526/1036/361 +f 549/1038/362 548/1059/363 536/1039/363 +f 556/1041/364 555/1061/365 543/1042/365 +f 553/1044/366 552/1062/367 540/1045/367 +f 550/1047/368 549/1038/362 537/1040/362 +f 557/1049/369 556/1041/364 544/1043/364 +f 547/1051/370 546/1058/371 534/1052/371 +f 554/1054/372 553/1044/366 541/1046/366 +f 551/1056/373 550/1047/368 538/1048/368 +f 546/1058/371 557/1049/369 545/1050/369 +f 548/1059/363 547/1070/370 535/1060/370 +f 555/1061/365 554/1054/372 542/1055/372 +f 552/1062/367 551/1056/373 539/1057/373 +f 527/1063/360 529/1071/374 528/1037/359 +f 531/1064/348 529/1071/374 527/1063/360 +o Suppressor_Circle +v -0.125000 -16.750000 1.861670 +v -0.088388 -16.750000 1.950058 +v 0.000000 -16.750000 1.986670 +v 0.088388 -16.750000 1.950058 +v 0.125000 -16.750000 1.861670 +v 0.088388 -16.750000 1.773282 +v -0.000000 -16.750000 1.736670 +v -0.088388 -16.750000 1.773282 +v -0.125000 -11.875000 1.861670 +v -0.088388 -11.875000 1.950058 +v 0.000000 -11.875000 1.986670 +v 0.088388 -11.875000 1.950058 +v 0.125000 -11.875000 1.861670 +v 0.088388 -11.875000 1.773282 +v -0.000000 -11.875000 1.736670 +v -0.088388 -11.875000 1.773282 +v -0.562500 -11.875000 1.861670 +v -0.487139 -11.875000 2.142920 +v -0.281250 -11.875000 2.348809 +v 0.000000 -11.875000 2.424170 +v 0.281250 -11.875000 2.348809 +v 0.487139 -11.875000 2.142920 +v 0.562500 -11.875000 1.861670 +v 0.487139 -11.875000 1.580420 +v 0.281250 -11.875000 1.374531 +v -0.000000 -11.875000 1.299170 +v -0.281250 -11.875000 1.374531 +v -0.487139 -11.875000 1.580420 +v -0.562500 -16.750000 1.861670 +v -0.487139 -16.750000 2.142920 +v -0.281250 -16.750000 2.348809 +v 0.000000 -16.750000 2.424170 +v 0.281250 -16.750000 2.348809 +v 0.487139 -16.750000 2.142920 +v 0.562500 -16.750000 1.861670 +v 0.487139 -16.750000 1.580420 +v 0.281250 -16.750000 1.374531 +v -0.000000 -16.750000 1.299170 +v -0.281250 -16.750000 1.374531 +v -0.487139 -16.750000 1.580420 +vt 0.287313 0.361940 +vt -0.000000 0.354478 +vt 0.287313 0.354478 +vt 0.287313 0.376866 +vt -0.000000 0.369403 +vt 0.287313 0.369403 +vt 0.287313 0.391791 +vt -0.000000 0.384328 +vt 0.287313 0.384328 +vt 0.287313 0.347015 +vt -0.000000 0.339552 +vt 0.287313 0.339552 +vt -0.000000 0.347015 +vt -0.000000 0.361940 +vt -0.000000 0.376866 +vt -0.000000 0.332090 +vt 0.287313 0.332090 +vt 0.026119 0.410448 +vt 0.026119 0.429104 +vt -0.000000 0.421642 +vt 0.026119 0.485075 +vt -0.000000 0.500000 +vt -0.000000 0.492537 +vt 0.026119 0.522388 +vt 0.026119 0.541045 +vt 0.000000 0.533582 +vt 0.000000 0.511194 +vt 0.026119 0.503731 +vt 0.000000 0.555970 +vt 0.026119 0.559702 +vt -0.000000 0.611940 +vt 0.026119 0.597015 +vt 0.026119 0.615672 +vt 0.000000 0.444030 +vt 0.000000 0.436567 +vt 0.000000 0.399254 +vt 0.026119 0.391791 +vt 0.026119 0.466418 +vt -0.000000 0.455224 +vt 0.026119 0.447761 +vt 0.313433 0.615672 +vt 0.313433 0.597015 +vt 0.313433 0.466418 +vt 0.313433 0.447761 +vt 0.313433 0.429104 +vt 0.313433 0.541045 +vt 0.313433 0.522388 +vt 0.026119 0.578358 +vt 0.313433 0.578358 +vt 0.313433 0.410448 +vt 0.313433 0.503731 +vt 0.313433 0.559702 +vt 0.313433 0.391791 +vt 0.313433 0.485075 +vt 0.376007 0.565419 +vt 0.376007 0.598760 +vt 0.347015 0.615672 +vt 0.000000 0.477612 +vt -0.000000 0.589552 +vt -0.000000 0.567164 +vt -0.000000 0.574627 +vt -0.000000 0.391791 +vt -0.000000 0.518657 +vt 0.000000 0.548507 +vt 0.000000 0.604478 +vt 0.000000 0.406716 +vt 0.000000 0.462687 +vt 0.330345 0.611081 +vt 0.318023 0.598760 +vt 0.313433 0.582090 +vt 0.318023 0.565419 +vt 0.330345 0.553098 +vt 0.347015 0.548507 +vt 0.363685 0.553098 +vt 0.380597 0.582090 +vt 0.363685 0.611081 +vn 0.0000 0.0000 1.0000 +vn 0.7071 0.0000 0.7071 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.0000 0.7071 +vn -0.0000 0.0000 -1.0000 +vn -0.7071 0.0000 -0.7071 +vn 1.0000 0.0000 0.0000 +vn 0.7071 0.0000 -0.7071 +vn 0.0000 -1.0000 -0.0000 +vn 0.5000 0.0000 0.8660 +vn -0.8660 0.0000 -0.5000 +vn -0.5000 0.0000 -0.8660 +vn -0.8660 0.0000 0.5000 +vn 0.8660 0.0000 -0.5000 +vn 0.5000 0.0000 -0.8660 +vn 0.8660 0.0000 0.5000 +vn -0.5000 0.0000 0.8660 +vn 0.0000 1.0000 -0.0000 +usemtl Material.001 +s 1 +f 564/1072/375 573/1073/376 565/1074/376 +f 562/1075/377 571/1076/378 563/1077/378 +f 560/1078/379 569/1079/380 561/1080/380 +f 558/1081/381 567/1082/382 559/1083/382 +f 558/1081/381 573/1073/376 566/1084/381 +f 563/1077/378 572/1085/375 564/1072/375 +f 562/1075/377 569/1079/380 570/1086/377 +f 559/1083/382 568/1087/379 560/1088/379 +f 588/1089/383 587/1090/383 559/1091/383 +f 596/1092/383 564/1093/383 565/1094/383 +f 594/1095/383 593/1096/383 563/1097/383 +f 594/1095/383 564/1098/383 595/1099/383 +f 562/1100/383 593/1096/383 592/1101/383 +f 560/1102/383 590/1103/383 589/1104/383 +f 587/1090/383 558/1105/383 559/1106/383 +f 588/1089/383 560/1107/383 589/1108/383 +f 597/1109/383 558/1110/383 586/1111/383 +f 577/1112/375 590/1103/384 578/1113/384 +f 585/1114/385 596/1092/386 597/1109/385 +f 574/1115/377 587/1090/387 575/1116/387 +f 581/1117/388 594/1095/389 582/1118/389 +f 578/1113/384 591/1119/390 579/1120/390 +f 585/1114/385 586/1111/377 574/1115/377 +f 575/1116/387 588/1089/391 576/1121/391 +f 582/1118/389 595/1099/379 583/1122/379 +f 579/1120/390 592/1101/381 580/1123/381 +f 577/1124/375 588/1089/391 589/1108/375 +f 583/1122/379 596/1092/386 584/1125/386 +f 580/1123/381 593/1096/388 581/1117/388 +f 582/1126/392 584/1127/392 574/1128/392 +f 597/1109/383 596/1092/383 565/1129/383 +f 591/1119/383 590/1103/383 561/1130/383 +f 562/1131/383 591/1119/383 561/1132/383 +f 564/1072/375 572/1085/375 573/1073/376 +f 562/1075/377 570/1086/377 571/1076/378 +f 560/1078/379 568/1133/379 569/1079/380 +f 558/1081/381 566/1084/381 567/1082/382 +f 558/1081/381 565/1074/376 573/1073/376 +f 563/1077/378 571/1076/378 572/1085/375 +f 562/1075/377 561/1080/380 569/1079/380 +f 559/1083/382 567/1082/382 568/1087/379 +f 596/1092/383 595/1099/383 564/1093/383 +f 594/1095/383 563/1134/383 564/1098/383 +f 562/1100/383 563/1135/383 593/1096/383 +f 560/1102/383 561/1136/383 590/1103/383 +f 587/1090/383 586/1111/383 558/1105/383 +f 588/1089/383 559/1137/383 560/1107/383 +f 597/1109/383 565/1138/383 558/1110/383 +f 577/1112/375 589/1104/375 590/1103/384 +f 585/1114/385 584/1125/386 596/1092/386 +f 574/1115/377 586/1111/377 587/1090/387 +f 581/1117/388 593/1096/388 594/1095/389 +f 578/1113/384 590/1103/384 591/1119/390 +f 585/1114/385 597/1109/385 586/1111/377 +f 575/1116/387 587/1090/387 588/1089/391 +f 582/1118/389 594/1095/389 595/1099/379 +f 579/1120/390 591/1119/390 592/1101/381 +f 577/1124/375 576/1121/391 588/1089/391 +f 583/1122/379 595/1099/379 596/1092/386 +f 580/1123/381 592/1101/381 593/1096/388 +f 574/1128/392 575/1139/392 576/1140/392 +f 576/1140/392 577/1141/392 578/1142/392 +f 578/1142/392 579/1143/392 580/1144/392 +f 580/1144/392 581/1145/392 578/1142/392 +f 581/1145/392 582/1126/392 578/1142/392 +f 582/1126/392 583/1146/392 584/1127/392 +f 584/1127/392 585/1147/392 574/1128/392 +f 574/1128/392 576/1140/392 582/1126/392 +f 576/1140/392 578/1142/392 582/1126/392 +f 562/1131/383 592/1101/383 591/1119/383 +o Mag_Lower_Circle.001 +v 0.239382 -3.780985 2.049170 +v -0.239382 -3.780985 2.049170 +v -0.239382 -3.780985 2.111670 +v 0.239382 -3.780985 2.111670 +v -2.250000 -1.500000 2.049170 +v -2.173333 -2.082343 2.049170 +v -1.948557 -2.625000 2.049170 +v -1.590990 -3.090990 2.049170 +v -1.125000 -3.448557 2.049170 +v -0.582343 -3.673333 2.049170 +v -2.250000 -1.500000 2.111670 +v 0.582343 -3.673333 2.049170 +v 1.125000 -3.448557 2.049170 +v 1.590990 -3.090990 2.049170 +v 1.948557 -2.625000 2.049170 +v 2.173333 -2.082343 2.049170 +v 2.250000 -1.500000 2.049170 +v 2.173333 -0.917657 2.049170 +v 1.948557 -0.375000 2.049170 +v 1.590990 0.090990 2.049170 +v 1.125000 0.448557 2.049170 +v 0.582343 0.673333 2.049170 +v -0.000000 0.750000 2.049170 +v -0.582343 0.673333 2.049170 +v -1.125000 0.448557 2.049170 +v -1.590990 0.090991 2.049170 +v -1.948557 -0.375000 2.049170 +v -2.173333 -0.917658 2.049170 +v -1.948557 -2.625000 2.111670 +v 0.239382 -3.718485 2.049170 +v -2.173333 -2.082343 2.111670 +v -0.239382 -3.718485 2.049170 +v -1.590990 -3.090990 2.111670 +v -1.125000 -3.448557 2.111670 +v -0.582343 -3.673333 2.111670 +v 0.582343 -3.673333 2.111670 +v 1.125000 -3.448557 2.111670 +v 1.590990 -3.090990 2.111670 +v 1.948557 -2.625000 2.111670 +v 2.173333 -2.082343 2.111670 +v 2.250000 -1.500000 2.111670 +v 2.173333 -0.917657 2.111670 +v 1.948557 -0.375000 2.111670 +v 1.590990 0.090990 2.111670 +v 1.125000 0.448557 2.111670 +v 0.582343 0.673333 2.111670 +v -0.000000 0.750000 2.111670 +v -0.582343 0.673333 2.111670 +v -1.125000 0.448557 2.111670 +v -1.590990 0.090991 2.111670 +v -1.948557 -0.375000 2.111670 +v -2.173333 -0.917658 2.111670 +v 0.239382 -3.718485 2.111670 +v -0.239382 -3.718485 2.111670 +vt 0.148620 0.891768 +vt 0.148620 0.895526 +vt 0.120037 0.891768 +vt 0.308001 0.854042 +vt 0.286653 0.826028 +vt 0.388694 0.891765 +vt 0.022388 0.619403 +vt 0.018657 0.623134 +vt 0.022388 0.623134 +vt 0.018657 0.619403 +vt 0.000000 0.623134 +vt 0.391791 0.615672 +vt 0.388060 0.619403 +vt 0.391791 0.619403 +vt 0.120037 0.895526 +vt 0.099562 0.889054 +vt 0.067164 0.875541 +vt 0.039344 0.854046 +vt 0.017997 0.826032 +vt 0.004577 0.793409 +vt 0.000000 0.758400 +vt 0.004577 0.723392 +vt 0.017997 0.690770 +vt 0.039344 0.662756 +vt 0.067164 0.641260 +vt 0.099562 0.627747 +vt 0.134328 0.623138 +vt 0.169095 0.627747 +vt 0.201493 0.641260 +vt 0.229313 0.662756 +vt 0.250660 0.690770 +vt 0.264080 0.723392 +vt 0.268657 0.758403 +vt 0.264080 0.793409 +vt 0.250660 0.826032 +vt 0.229313 0.854046 +vt 0.201493 0.875541 +vt 0.169095 0.889054 +vt 0.417277 0.891765 +vt 0.417276 0.895522 +vt 0.388694 0.895522 +vt 0.368218 0.889050 +vt 0.335821 0.875538 +vt 0.470149 0.875538 +vt 0.437752 0.889050 +vt 0.519317 0.826028 +vt 0.497970 0.854042 +vt 0.537313 0.758398 +vt 0.532736 0.793405 +vt 0.519317 0.690766 +vt 0.532736 0.723389 +vt 0.470149 0.641256 +vt 0.497970 0.662752 +vt 0.402985 0.623134 +vt 0.437752 0.627744 +vt 0.335821 0.641256 +vt 0.368218 0.627744 +vt 0.286653 0.690766 +vt 0.308001 0.662752 +vt 0.268657 0.758395 +vt 0.273234 0.723389 +vt 0.273234 0.793405 +vt 0.000000 0.619403 +vt 0.388060 0.615672 +vt 0.302239 0.615672 +vt 0.268657 0.619403 +vt 0.302239 0.619403 +vt 0.410448 0.619403 +vt 0.376866 0.623134 +vt 0.410448 0.623134 +vt 0.175373 0.619403 +vt 0.141791 0.623134 +vt 0.175373 0.623134 +vt 0.335821 0.615672 +vt 0.335821 0.619403 +vt 0.033582 0.615672 +vt -0.000000 0.619403 +vt 0.033582 0.619403 +vt 0.208955 0.619403 +vt 0.208955 0.623134 +vt 0.369403 0.615672 +vt 0.369403 0.619403 +vt 0.067164 0.615672 +vt 0.067164 0.619403 +vt 0.242537 0.619403 +vt 0.242537 0.623134 +vt 0.100746 0.615672 +vt 0.100746 0.619403 +vt 0.276119 0.619403 +vt 0.276119 0.623134 +vt 0.041045 0.619403 +vt 0.041045 0.623134 +vt 0.134328 0.615672 +vt 0.134328 0.619403 +vt 0.309702 0.619403 +vt 0.309702 0.623134 +vt 0.074627 0.619403 +vt 0.074627 0.623134 +vt 0.167910 0.615672 +vt 0.167910 0.619403 +vt 0.235075 0.615672 +vt 0.201493 0.619403 +vt 0.235075 0.619403 +vt 0.343284 0.619403 +vt 0.343284 0.623134 +vt 0.108209 0.619403 +vt 0.108209 0.623134 +vt 0.201493 0.615672 +vt 0.268657 0.615672 +vt 0.376866 0.619403 +vt 0.141791 0.619403 +vt 0.000000 0.615672 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.0000 1.0000 0.0000 +vn 0.2588 0.9659 0.0000 +vn 0.9659 -0.2588 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.2588 0.9659 0.0000 +vn -0.2588 -0.9659 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.9659 0.2588 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.2588 -0.9659 0.0000 +vn 0.1305 -0.9914 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.7071 0.7071 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.9659 0.2588 0.0000 +vn -0.9659 -0.2588 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.1305 -0.9914 0.0000 +vn 0.7071 -0.7071 0.0000 +usemtl Material.001 +s off +f 651/1148/393 600/1149/393 650/1150/393 +f 605/1151/394 604/1152/394 629/1153/394 +f 650/1154/395 598/1155/395 627/1156/395 +f 601/1157/396 599/1158/396 598/1155/396 +f 600/1159/397 629/1160/397 599/1161/397 +f 600/1149/393 601/1162/393 650/1150/393 +f 650/1150/393 633/1163/393 634/1164/393 +f 634/1164/393 635/1165/393 650/1150/393 +f 635/1165/393 636/1166/393 650/1150/393 +f 636/1166/393 637/1167/393 650/1150/393 +f 637/1167/393 638/1168/393 650/1150/393 +f 638/1168/393 639/1169/393 650/1150/393 +f 639/1169/393 640/1170/393 650/1150/393 +f 640/1170/393 641/1171/393 650/1150/393 +f 641/1171/393 642/1172/393 650/1150/393 +f 642/1172/393 643/1173/393 650/1150/393 +f 643/1173/393 644/1174/393 650/1150/393 +f 650/1150/393 644/1174/393 651/1148/393 +f 644/1174/393 645/1175/393 651/1148/393 +f 645/1175/393 646/1176/393 651/1148/393 +f 646/1176/393 647/1177/393 651/1148/393 +f 647/1177/393 648/1178/393 651/1148/393 +f 648/1178/393 649/1179/393 651/1148/393 +f 649/1179/393 608/1180/393 651/1148/393 +f 608/1180/393 628/1181/393 651/1148/393 +f 628/1181/393 626/1182/393 651/1148/393 +f 626/1182/393 630/1183/393 651/1148/393 +f 630/1183/393 631/1184/393 651/1148/393 +f 631/1184/393 632/1185/393 651/1148/393 +f 627/1186/394 598/1187/394 599/1188/394 +f 629/1153/394 607/1189/394 606/1190/394 +f 627/1186/394 599/1188/394 629/1153/394 +f 610/1191/394 609/1192/394 627/1186/394 +f 612/1193/394 611/1194/394 627/1186/394 +f 611/1194/394 610/1191/394 627/1186/394 +f 614/1195/394 613/1196/394 627/1186/394 +f 613/1196/394 612/1193/394 627/1186/394 +f 616/1197/394 615/1198/394 627/1186/394 +f 615/1198/394 614/1195/394 627/1186/394 +f 618/1199/394 617/1200/394 627/1186/394 +f 617/1200/394 616/1197/394 627/1186/394 +f 620/1201/394 619/1202/394 627/1186/394 +f 619/1202/394 618/1199/394 627/1186/394 +f 622/1203/394 621/1204/394 629/1153/394 +f 621/1204/394 620/1201/394 629/1153/394 +f 629/1153/394 620/1201/394 627/1186/394 +f 624/1205/394 623/1206/394 629/1153/394 +f 623/1206/394 622/1203/394 629/1153/394 +f 602/1207/394 625/1208/394 629/1153/394 +f 625/1208/394 624/1205/394 629/1153/394 +f 604/1152/394 603/1209/394 629/1153/394 +f 603/1209/394 602/1207/394 629/1153/394 +f 606/1190/394 605/1151/394 629/1153/394 +f 650/1154/395 601/1157/395 598/1155/395 +f 601/1157/396 600/1210/396 599/1158/396 +f 600/1159/397 651/1211/397 629/1160/397 +s 1 +f 630/1212/398 604/1213/399 605/1214/398 +f 644/1215/400 619/1216/401 620/1217/400 +f 637/1218/402 612/1219/403 613/1220/402 +f 631/1221/404 605/1214/398 606/1222/404 +f 645/1223/405 620/1224/400 621/1225/405 +f 638/1226/395 613/1220/402 614/1227/395 +f 632/1228/406 606/1222/404 607/1229/406 +f 646/1230/407 621/1225/405 622/1231/407 +f 639/1232/408 614/1227/395 615/1233/408 +f 647/1234/409 622/1231/407 623/1235/409 +f 640/1236/410 615/1233/408 616/1237/410 +f 633/1238/411 627/1156/412 609/1239/411 +f 648/1240/413 623/1235/409 624/1241/413 +f 641/1242/414 616/1237/410 617/1243/414 +f 634/1244/415 609/1239/411 610/1245/415 +f 649/1246/416 624/1241/413 625/1247/416 +f 628/1248/417 602/1249/397 603/1250/417 +f 642/1251/418 617/1243/414 618/1252/418 +f 651/1211/419 607/1229/406 629/1160/419 +f 635/1253/420 610/1245/415 611/1254/420 +f 608/1255/397 625/1247/416 602/1249/397 +f 626/1256/399 603/1250/417 604/1213/399 +f 643/1257/401 618/1252/418 619/1216/401 +f 636/1258/403 611/1254/420 612/1219/403 +f 630/1212/398 626/1256/399 604/1213/399 +f 644/1215/400 643/1257/401 619/1216/401 +f 637/1218/402 636/1258/403 612/1219/403 +f 631/1221/404 630/1212/398 605/1214/398 +f 645/1223/405 644/1259/400 620/1224/400 +f 638/1226/395 637/1218/402 613/1220/402 +f 632/1228/406 631/1221/404 606/1222/404 +f 646/1230/407 645/1223/405 621/1225/405 +f 639/1232/408 638/1226/395 614/1227/395 +f 647/1234/409 646/1230/407 622/1231/407 +f 640/1236/410 639/1232/408 615/1233/408 +f 633/1238/411 650/1154/412 627/1156/412 +f 648/1240/413 647/1234/409 623/1235/409 +f 641/1242/414 640/1236/410 616/1237/410 +f 634/1244/415 633/1238/411 609/1239/411 +f 649/1246/416 648/1240/413 624/1241/413 +f 628/1248/417 608/1255/397 602/1249/397 +f 642/1251/418 641/1242/414 617/1243/414 +f 651/1211/419 632/1228/406 607/1229/406 +f 635/1253/420 634/1244/415 610/1245/415 +f 608/1255/397 649/1246/416 625/1247/416 +f 626/1256/399 628/1248/417 603/1250/417 +f 643/1257/401 642/1251/418 618/1252/418 +f 636/1258/403 635/1253/420 611/1254/420 +o Mag_Upper_Circle.002 +v -2.143148 -0.925746 2.611670 +v -1.921494 -0.390625 2.611670 +v -1.568893 0.068893 2.611670 +v -1.109375 0.421494 2.611670 +v -0.574255 0.643148 2.611670 +v -0.000000 0.718750 2.611670 +v 0.574255 0.643148 2.611670 +v 1.109375 0.421494 2.611670 +v 1.568893 0.068893 2.611670 +v 1.921494 -0.390625 2.611670 +v 2.143148 -0.925745 2.611670 +v 2.218750 -1.500000 2.611670 +v 2.143148 -2.074255 2.611670 +v 1.921494 -2.609375 2.611670 +v 1.568893 -3.068893 2.611670 +v 1.109375 -3.421494 2.611670 +v 0.574255 -3.643148 2.611670 +v 0.000000 -3.718750 2.611670 +v -0.574255 -3.643148 2.611670 +v -1.109375 -3.421494 2.611670 +v -1.568893 -3.068893 2.611670 +v -1.921494 -2.609375 2.611670 +v -2.143148 -2.074255 2.611670 +v -2.218750 -1.500000 2.611670 +v -2.218750 -1.500000 2.111670 +v -2.143148 -2.074255 2.111670 +v -1.921494 -2.609375 2.111670 +v -1.568893 -3.068893 2.111670 +v -1.109375 -3.421494 2.111670 +v -0.574255 -3.643148 2.111670 +v 0.000000 -3.718750 2.111670 +v 0.574255 -3.643148 2.111670 +v 1.109375 -3.421494 2.111670 +v 1.568893 -3.068893 2.111670 +v 1.921494 -2.609375 2.111670 +v 2.143148 -2.074255 2.111670 +v 2.218750 -1.500000 2.111670 +v 2.143148 -0.925745 2.111670 +v 1.921494 -0.390625 2.111670 +v 1.568893 0.068893 2.111670 +v 1.109375 0.421494 2.111670 +v 0.574255 0.643148 2.111670 +v -0.000000 0.718750 2.111670 +v -0.574255 0.643148 2.111670 +v -1.109375 0.421494 2.111670 +v -1.568893 0.068893 2.111670 +v -1.921494 -0.390625 2.111670 +v -2.143148 -0.925746 2.111670 +v -1.437500 -1.500000 2.611670 +v -1.388518 -1.872052 2.611670 +v -1.244912 -2.218750 2.611670 +v -1.016466 -2.516466 2.611670 +v -0.718750 -2.744912 2.611670 +v -0.372052 -2.888518 2.611670 +v 0.000000 -2.937500 2.611670 +v 0.372052 -2.888518 2.611670 +v 0.718750 -2.744912 2.611670 +v 1.016466 -2.516466 2.611670 +v 1.244912 -2.218750 2.611670 +v 1.388518 -1.872052 2.611670 +v 1.437500 -1.500000 2.611670 +v 1.388518 -1.127948 2.611670 +v 1.244912 -0.781250 2.611670 +v 1.016466 -0.483534 2.611670 +v 0.718750 -0.255088 2.611670 +v 0.372052 -0.111482 2.611670 +v 0.000000 -0.062500 2.611670 +v -0.372052 -0.111482 2.611670 +v -0.718750 -0.255088 2.611670 +v -1.016466 -0.483534 2.611670 +v -1.244911 -0.781250 2.611670 +v -1.388518 -1.127948 2.611670 +v -1.437500 -1.500000 2.111670 +v -1.388518 -1.872052 2.111670 +v -1.244912 -2.218750 2.111670 +v -1.016466 -2.516466 2.111670 +v -0.718750 -2.744912 2.111670 +v -0.372052 -2.888518 2.111670 +v 0.000000 -2.937500 2.111670 +v 0.372052 -2.888518 2.111670 +v 0.718750 -2.744912 2.111670 +v 1.016466 -2.516466 2.111670 +v 1.244912 -2.218750 2.111670 +v 1.388518 -1.872052 2.111670 +v 1.437500 -1.500000 2.111670 +v 1.388518 -1.127948 2.111670 +v 1.244912 -0.781250 2.111670 +v 1.016466 -0.483534 2.111670 +v 0.718750 -0.255088 2.111670 +v 0.372052 -0.111482 2.111670 +v 0.000000 -0.062500 2.111670 +v -0.372052 -0.111482 2.111670 +v -0.718750 -0.255088 2.111670 +v -1.016466 -0.483534 2.111670 +v -1.244911 -0.781250 2.111670 +v -1.388518 -1.127948 2.111670 +v -1.000000 -1.500000 2.111670 +v -0.866025 -2.000000 2.111670 +v -0.500000 -2.366026 2.111670 +v 0.000000 -2.500000 2.111670 +v 0.500000 -2.366026 2.111670 +v 0.866025 -2.000000 2.111670 +v 1.000000 -1.500000 2.111670 +v 0.866025 -1.000000 2.111670 +v 0.500000 -0.633975 2.111670 +v 0.000000 -0.500000 2.111670 +v -0.500000 -0.633975 2.111670 +v -0.866025 -1.000000 2.111670 +v -1.000000 -1.500000 2.486670 +v -0.866025 -2.000000 2.486670 +v -0.550430 -2.315596 2.424170 +v -0.500000 -2.366026 2.424170 +v 0.500000 -2.366026 2.424170 +v 0.866025 -2.000000 2.486670 +v 1.000000 -1.500000 2.486670 +v 0.866025 -1.000000 2.486670 +v 0.500000 -0.633975 2.424170 +v 0.000000 -0.500000 2.424170 +v -0.500000 -0.633975 2.486670 +v -0.866025 -1.000000 2.486670 +v 0.815595 -0.949570 2.486670 +v 0.550430 -0.684405 2.486670 +v 0.883884 -0.350952 2.111670 +v 1.149048 -0.616117 2.486670 +v 0.883884 -0.350952 2.486670 +v 0.550430 -0.684405 2.111670 +v 0.815595 -0.949570 2.111670 +v 1.149048 -0.616117 2.111670 +v -1.149048 -2.383884 2.111670 +v -0.883883 -2.649049 2.111670 +v -0.550430 -2.315596 2.111670 +v -0.815595 -2.050431 2.111670 +v -0.550430 -2.315596 2.486670 +v -0.815595 -2.050431 2.486670 +v -1.149048 -2.383884 2.486670 +v -0.883883 -2.649049 2.486670 +v -0.500000 -0.633975 2.424170 +v 0.550430 -0.684405 2.424170 +v -0.156677 -0.684405 2.424170 +v 0.067467 -0.813814 2.424170 +v 0.326286 -0.813814 2.424170 +v 0.326286 -0.813814 2.486670 +v 0.067467 -0.813814 2.486670 +v -0.156677 -0.684405 2.486670 +v 0.000000 -2.500000 2.424170 +v 0.500000 -2.366026 2.486670 +v 0.156677 -2.315596 2.486670 +v 0.156677 -2.315596 2.424170 +v -0.067467 -2.186186 2.424170 +v -0.326286 -2.186186 2.424170 +v -0.326286 -2.186186 2.486670 +v -0.067467 -2.186186 2.486670 +v -0.125000 -1.500000 2.486670 +v -0.062500 -1.608253 2.486670 +v 0.062500 -1.608253 2.486670 +v 0.125000 -1.500000 2.486670 +v 0.062500 -1.391747 2.486670 +v -0.062500 -1.391747 2.486670 +v -0.125000 -1.500000 2.549170 +v -0.062500 -1.608253 2.549170 +v 0.062500 -1.608253 2.549170 +v 0.125000 -1.500000 2.549170 +v 0.062500 -1.391747 2.549170 +v -0.062500 -1.391747 2.549170 +v 0.250000 -1.125000 2.486670 +v 0.312500 -1.233253 2.486670 +v 0.437500 -1.233253 2.486670 +v 0.500000 -1.125000 2.486670 +v 0.437500 -1.016747 2.486670 +v 0.312500 -1.016747 2.486670 +v 0.250000 -1.125000 2.549170 +v 0.312500 -1.233253 2.549170 +v 0.437500 -1.233253 2.549170 +v 0.500000 -1.125000 2.549170 +v 0.437500 -1.016747 2.549170 +v 0.312500 -1.016747 2.549170 +v -0.500000 -1.875000 2.486670 +v -0.437500 -1.983253 2.486670 +v -0.312500 -1.983253 2.486670 +v -0.250000 -1.875000 2.486670 +v -0.312500 -1.766747 2.486670 +v -0.437500 -1.766747 2.486670 +v -0.500000 -1.875000 2.549170 +v -0.437500 -1.983253 2.549170 +v -0.312500 -1.983253 2.549170 +v -0.250000 -1.875000 2.549170 +v -0.312500 -1.766747 2.549170 +v -0.437500 -1.766747 2.549170 +v -0.062500 -1.500000 2.611670 +v -0.031250 -1.554127 2.611670 +v 0.031250 -1.554127 2.611670 +v 0.062500 -1.500000 2.611670 +v 0.031250 -1.445874 2.611670 +v -0.031250 -1.445874 2.611670 +vt 0.033582 0.955224 +vt 0.005597 1.000000 +vt 0.000000 0.955224 +vt 0.061567 1.000000 +vt 0.039179 1.000000 +vt 0.100746 0.955224 +vt 0.072761 1.000000 +vt 0.067164 0.955224 +vt 0.134328 0.955224 +vt 0.106343 1.000000 +vt 0.167910 0.955224 +vt 0.139925 1.000000 +vt 0.201493 0.955224 +vt 0.173507 1.000000 +vt 0.229478 1.000000 +vt 0.207089 1.000000 +vt 0.235075 0.955224 +vt 0.263060 1.000000 +vt 0.240672 1.000000 +vt 0.302239 0.955224 +vt 0.274254 1.000000 +vt 0.268657 0.955224 +vt 0.335821 0.955224 +vt 0.307836 1.000000 +vt 0.369403 0.955224 +vt 0.341418 1.000000 +vt 0.402985 0.955224 +vt 0.375000 1.000000 +vt 0.436567 0.955224 +vt 0.408582 1.000000 +vt 0.470149 0.955224 +vt 0.442164 1.000000 +vt 0.503731 0.955224 +vt 0.475746 1.000000 +vt 0.537313 0.955224 +vt 0.509328 1.000000 +vt 0.570895 0.955224 +vt 0.542910 1.000000 +vt 0.604478 0.955224 +vt 0.576492 1.000000 +vt 0.638060 0.955224 +vt 0.610075 1.000000 +vt 0.671642 0.955224 +vt 0.643657 1.000000 +vt 0.705224 0.955224 +vt 0.677239 1.000000 +vt 0.738806 0.955224 +vt 0.710821 1.000000 +vt 0.766791 1.000000 +vt 0.744403 1.000000 +vt 0.805970 0.955224 +vt 0.777986 1.000000 +vt 0.772388 0.955224 +vt 0.201493 0.895522 +vt 0.179104 0.925373 +vt 0.201493 0.925373 +vt 0.223881 0.895522 +vt 0.223881 0.925373 +vt 0.567164 0.902985 +vt 0.597015 0.925373 +vt 0.567164 0.925373 +vt 0.597015 0.880597 +vt 0.567164 0.880597 +vt 0.567164 0.902985 +vt 0.537313 0.925373 +vt 0.537313 0.902985 +vt 0.537313 0.880597 +vt 0.566630 0.343284 +vt 0.563619 0.322787 +vt 0.574627 0.313433 +vt 0.563619 0.280571 +vt 0.566630 0.283582 +vt 0.555892 0.293953 +vt 0.555892 0.309405 +vt 0.545310 0.283582 +vt 0.548321 0.304079 +vt 0.537312 0.313433 +vt 0.556049 0.317459 +vt 0.548321 0.346295 +vt 0.545310 0.343284 +vt 0.556047 0.332913 +vt 0.637981 0.779028 +vt 0.637981 0.794480 +vt 0.556049 0.802535 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.600746 0.872135 +vt 0.600746 0.859209 +vt 0.611940 0.865672 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.600746 0.872135 +vt 0.600746 0.859209 +vt 0.611940 0.865672 +vt 0.027985 1.000000 +vt 0.095149 1.000000 +vt 0.128731 1.000000 +vt 0.162313 1.000000 +vt 0.195895 1.000000 +vt 0.296642 1.000000 +vt 0.330224 1.000000 +vt 0.363807 1.000000 +vt 0.397388 1.000000 +vt 0.430970 1.000000 +vt 0.464552 1.000000 +vt 0.498134 1.000000 +vt 0.531716 1.000000 +vt 0.565298 1.000000 +vt 0.598881 1.000000 +vt 0.632463 1.000000 +vt 0.666045 1.000000 +vt 0.699627 1.000000 +vt 0.733209 1.000000 +vt 0.800373 1.000000 +vt 0.179104 0.895522 +vt 0.597015 0.902985 +vt 0.567164 0.925373 +vt 0.567164 0.880597 +vt 0.597015 0.858209 +vt 0.567164 0.850210 +vt 0.556049 0.817987 +vt 0.564153 0.847200 +vt 0.548323 0.831369 +vt 0.548323 0.789154 +vt 0.567164 0.746804 +vt 0.545312 0.768657 +vt 0.626866 0.850210 +vt 0.645707 0.807861 +vt 0.648718 0.828358 +vt 0.597015 0.738806 +vt 0.626866 0.746804 +vt 0.629876 0.749815 +vt 0.645707 0.765646 +vt 0.597015 0.876866 +vt 0.597015 0.876866 +vt 0.608209 0.872135 +vt 0.597015 0.865672 +vt 0.608209 0.859209 +vt 0.597015 0.876866 +vt 0.608209 0.872135 +vt 0.597015 0.865672 +vt 0.608209 0.859209 +vt 0.033582 0.925373 +vt 0.000000 0.925373 +vt 0.268657 0.925373 +vt 0.235075 0.925373 +vt 0.503731 0.925373 +vt 0.470149 0.925373 +vt 0.805970 0.925373 +vt 0.772388 0.925373 +vt 0.201493 0.925373 +vt 0.436567 0.925373 +vt 0.738806 0.925373 +vt 0.167910 0.925373 +vt 0.402985 0.925373 +vt 0.705224 0.925373 +vt 0.134328 0.925373 +vt 0.369403 0.925373 +vt 0.671642 0.925373 +vt 0.100746 0.925373 +vt 0.335821 0.925373 +vt 0.638060 0.925373 +vt 0.604478 0.925373 +vt 0.570895 0.925373 +vt 0.067164 0.925373 +vt 0.302239 0.925373 +vt 0.537313 0.925373 +vt 0.313433 0.925373 +vt 0.291045 0.895522 +vt 0.291045 0.925373 +vt 0.156716 0.925373 +vt 0.134328 0.895522 +vt 0.134328 0.925373 +vt 0.537313 0.925373 +vt 0.514925 0.895522 +vt 0.514925 0.925373 +vt 0.335821 0.925373 +vt 0.313433 0.895522 +vt 0.156716 0.895522 +vt 0.022388 0.925373 +vt 0.000000 0.895522 +vt 0.000000 0.925373 +vt 0.358209 0.925373 +vt 0.335821 0.895522 +vt 0.044776 0.925373 +vt 0.022388 0.895522 +vt 0.380597 0.925373 +vt 0.358209 0.895522 +vt 0.425373 0.925373 +vt 0.402985 0.895522 +vt 0.402985 0.925373 +vt 0.067164 0.925373 +vt 0.044776 0.895522 +vt 0.380597 0.895522 +vt 0.447761 0.925373 +vt 0.425373 0.895522 +vt 0.246269 0.925373 +vt 0.089552 0.925373 +vt 0.067164 0.895522 +vt 0.268657 0.925373 +vt 0.246269 0.895522 +vt 0.111940 0.925373 +vt 0.089552 0.895522 +vt 0.268657 0.895522 +vt 0.111940 0.895522 +vt 0.492537 0.895522 +vt 0.492537 0.925373 +vt 0.720149 0.902985 +vt 0.690298 0.925373 +vt 0.690298 0.902985 +vt 0.660448 0.925373 +vt 0.660448 0.921642 +vt 0.690298 0.902985 +vt 0.660448 0.902985 +vt 0.660448 0.899254 +vt 0.750000 0.902985 +vt 0.720149 0.925373 +vt 0.567164 0.876866 +vt 0.537313 0.858209 +vt 0.630597 0.880597 +vt 0.660448 0.880597 +vt 0.750000 0.880597 +vt 0.720149 0.902985 +vt 0.720149 0.880597 +vt 0.630597 0.921642 +vt 0.660448 0.902985 +vt 0.690298 0.880597 +vt 0.600746 0.899254 +vt 0.600746 0.880597 +vt 0.597015 0.880597 +vt 0.597015 0.899254 +vt 0.567164 0.858209 +vt 0.597015 0.858209 +vt 0.597015 0.876866 +vt 0.753731 0.902985 +vt 0.750000 0.902985 +vt 0.600746 0.902985 +vt 0.600746 0.921642 +vt 0.470149 0.925373 +vt 0.470149 0.895522 +vt 0.597015 0.921642 +vt 0.597015 0.902985 +vt 0.750000 0.925373 +vt 0.753731 0.902985 +vt 0.753731 0.925373 +vt 0.597015 0.902985 +vt 0.611940 0.899254 +vt 0.611940 0.902985 +vt 0.626866 0.902985 +vt 0.626866 0.899254 +vt 0.641791 0.902985 +vt 0.641791 0.899254 +vt 0.641791 0.925373 +vt 0.626866 0.925373 +vt 0.641791 0.921642 +vt 0.611940 0.925373 +vt 0.626866 0.921642 +vt 0.597015 0.925373 +vt 0.619403 0.873134 +vt 0.611940 0.873134 +vt 0.634328 0.873134 +vt 0.597015 0.873134 +vt 0.626866 0.873134 +vt 0.604478 0.873134 +vt 0.617537 0.858709 +vt 0.619403 0.861940 +vt 0.613806 0.865172 +vt 0.537313 0.895522 +vt 0.447761 0.895522 +vt 0.567164 0.858209 +vt 0.630597 0.899254 +vt 0.630597 0.902985 +vt 0.753731 0.880597 +vt 0.611940 0.921642 +vt 0.641791 0.873134 +vt 0.617537 0.865172 +vt 0.611940 0.861940 +vt 0.613806 0.858709 +vn 0.0000 -0.0000 1.0000 +vn -0.7934 -0.6088 0.0000 +vn -0.6088 -0.7934 0.0000 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.8660 0.5000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.2588 -0.9659 0.0000 +vn 0.9659 0.2588 0.0000 +vn -0.5000 0.8660 0.0000 +vn -0.2588 -0.9659 0.0000 +vn 1.0000 0.0000 0.0000 +vn -0.2588 0.9659 0.0000 +vn -0.5000 -0.8660 0.0000 +vn 0.9659 -0.2588 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 0.2588 0.9659 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.9659 -0.2588 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.9659 0.2588 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.7071 0.7071 0.0000 +vn -0.9239 -0.3827 0.0000 +vn -0.3827 -0.9239 0.0000 +vn 0.3144 -0.9493 0.0000 +vn 0.4129 -0.9108 0.0000 +vn -0.3144 0.9493 0.0000 +vn -0.4129 0.9108 0.0000 +vn 0.6430 -0.7659 0.0000 +vn -0.6430 0.7659 0.0000 +vn -0.6088 0.7934 0.0000 +vn 0.3285 0.9445 0.0000 +vn -0.3285 -0.9445 0.0000 +vn 0.6088 -0.7934 0.0000 +vn -0.3536 0.6124 0.7071 +vn 0.2400 0.4156 0.8773 +vn 0.3536 0.6124 0.7071 +vn 0.4799 0.0000 0.8773 +vn 0.7071 0.0000 0.7071 +vn -0.3536 -0.6124 0.7071 +vn -0.4799 0.0000 0.8773 +vn -0.7071 0.0000 0.7071 +vn 0.3536 -0.6124 0.7071 +vn -0.2400 -0.4156 0.8773 +vn -0.2400 0.4156 0.8773 +vn 0.2400 -0.4156 0.8773 +usemtl Material.001 +s off +f 668/1260/421 706/1261/421 669/1262/421 +f 668/1260/421 708/1263/421 707/1264/421 +f 666/1265/421 708/1266/421 667/1267/421 +f 665/1268/421 709/1269/421 666/1265/421 +f 664/1270/421 710/1271/421 665/1268/421 +f 663/1272/421 711/1273/421 664/1270/421 +f 663/1272/421 713/1274/421 712/1275/421 +f 662/1276/421 714/1277/421 713/1278/421 +f 660/1279/421 714/1280/421 661/1281/421 +f 659/1282/421 715/1283/421 660/1279/421 +f 658/1284/421 716/1285/421 659/1282/421 +f 657/1286/421 717/1287/421 658/1284/421 +f 656/1288/421 718/1289/421 657/1286/421 +f 655/1290/421 719/1291/421 656/1288/421 +f 654/1292/421 720/1293/421 655/1290/421 +f 653/1294/421 721/1295/421 654/1292/421 +f 652/1296/421 722/1297/421 653/1294/421 +f 675/1298/421 723/1299/421 652/1296/421 +f 674/1300/421 700/1301/421 675/1298/421 +f 673/1302/421 701/1303/421 674/1300/421 +f 672/1304/421 702/1305/421 673/1302/421 +f 671/1306/421 703/1307/421 672/1304/421 +f 671/1306/421 705/1308/421 704/1309/421 +f 669/1310/421 705/1311/421 670/1312/421 +f 739/1313/422 714/1314/422 715/1315/422 +f 740/1316/423 715/1315/423 716/1317/423 +f 775/1318/424 778/1319/424 779/1320/424 +f 773/1321/421 775/1318/421 776/1322/421 +f 785/1323/425 780/1324/425 786/1325/425 +f 787/1326/421 785/1323/421 786/1325/421 +f 788/1327/421 790/1328/421 769/1329/421 +f 789/1330/421 768/1331/421 792/1332/421 +f 769/1329/421 792/1332/421 768/1331/421 +f 791/1333/421 769/1329/421 790/1328/421 +f 764/1334/421 799/1335/421 796/1336/421 +f 800/1337/421 796/1336/421 799/1335/421 +f 762/1338/421 763/1339/421 801/1340/421 +f 796/1336/421 801/1340/421 763/1339/421 +f 793/1341/421 794/1342/421 803/1343/421 +f 814/1344/426 807/1345/426 808/1346/426 +f 812/1347/427 805/1348/427 806/1349/427 +f 815/1350/428 808/1346/428 809/1351/428 +f 813/1352/429 806/1349/429 807/1345/429 +f 811/1353/430 804/1354/430 805/1355/430 +f 810/1356/431 809/1351/431 804/1354/431 +f 826/1357/426 819/1358/426 820/1359/426 +f 824/1360/427 817/1361/427 818/1362/427 +f 827/1363/428 820/1359/428 821/1364/428 +f 825/1365/429 818/1362/429 819/1358/429 +f 823/1366/430 816/1367/430 817/1368/430 +f 822/1369/431 821/1364/431 816/1367/431 +f 824/1370/421 826/1371/421 822/1372/421 +f 838/1373/426 831/1374/426 832/1375/426 +f 836/1376/427 829/1377/427 830/1378/427 +f 839/1379/428 832/1375/428 833/1380/428 +f 837/1381/429 830/1378/429 831/1374/429 +f 835/1382/430 828/1383/430 829/1384/430 +f 834/1385/431 833/1380/431 828/1383/431 +f 836/1386/421 838/1387/421 834/1388/421 +f 668/1260/421 707/1389/421 706/1261/421 +f 668/1260/421 667/1267/421 708/1263/421 +f 666/1265/421 709/1390/421 708/1266/421 +f 665/1268/421 710/1391/421 709/1269/421 +f 664/1270/421 711/1392/421 710/1271/421 +f 663/1272/421 712/1393/421 711/1273/421 +f 663/1272/421 662/1276/421 713/1274/421 +f 662/1276/421 661/1281/421 714/1277/421 +f 660/1279/421 715/1394/421 714/1280/421 +f 659/1282/421 716/1395/421 715/1283/421 +f 658/1284/421 717/1396/421 716/1285/421 +f 657/1286/421 718/1397/421 717/1287/421 +f 656/1288/421 719/1398/421 718/1289/421 +f 655/1290/421 720/1399/421 719/1291/421 +f 654/1292/421 721/1400/421 720/1293/421 +f 653/1294/421 722/1401/421 721/1295/421 +f 652/1296/421 723/1402/421 722/1297/421 +f 675/1298/421 700/1403/421 723/1299/421 +f 674/1300/421 701/1404/421 700/1301/421 +f 673/1302/421 702/1405/421 701/1303/421 +f 672/1304/421 703/1406/421 702/1305/421 +f 671/1306/421 704/1407/421 703/1307/421 +f 671/1306/421 670/1312/421 705/1308/421 +f 669/1310/421 706/1408/421 705/1311/421 +f 739/1313/422 738/1409/422 714/1314/422 +f 740/1316/423 739/1313/423 715/1315/423 +f 775/1318/424 772/1410/424 778/1319/424 +f 773/1321/421 772/1410/421 775/1318/421 +f 785/1323/425 783/1411/425 780/1324/425 +f 787/1326/421 784/1412/421 785/1323/421 +f 769/1329/421 791/1333/421 792/1332/421 +f 796/1336/421 800/1337/421 801/1340/421 +f 760/1413/421 761/1414/421 802/1415/421 +f 761/1414/421 785/1416/421 802/1415/421 +f 785/1416/421 784/1417/421 802/1415/421 +f 803/1343/421 798/1418/421 765/1419/421 +f 798/1418/421 797/1420/421 765/1419/421 +f 802/1415/421 803/1343/421 794/1342/421 +f 760/1413/421 802/1415/421 794/1342/421 +f 771/1421/421 760/1413/421 794/1342/421 +f 795/1422/421 770/1423/421 771/1421/421 +f 794/1342/421 795/1422/421 771/1421/421 +f 765/1419/421 766/1424/421 803/1343/421 +f 766/1424/421 767/1425/421 793/1341/421 +f 803/1343/421 766/1424/421 793/1341/421 +f 767/1425/421 772/1426/421 793/1341/421 +f 772/1426/421 773/1427/421 793/1341/421 +f 814/1344/426 813/1352/426 807/1345/426 +f 812/1347/427 811/1428/427 805/1348/427 +f 815/1350/428 814/1344/428 808/1346/428 +f 813/1352/429 812/1347/429 806/1349/429 +f 811/1353/430 810/1356/430 804/1354/430 +f 810/1356/431 815/1350/431 809/1351/431 +f 826/1357/426 825/1365/426 819/1358/426 +f 824/1360/427 823/1429/427 817/1361/427 +f 827/1363/428 826/1357/428 820/1359/428 +f 825/1365/429 824/1360/429 818/1362/429 +f 823/1366/430 822/1369/430 816/1367/430 +f 822/1369/431 827/1363/431 821/1364/431 +f 822/1372/421 823/1430/421 824/1370/421 +f 824/1370/421 825/1431/421 826/1371/421 +f 826/1371/421 827/1432/421 822/1372/421 +f 838/1373/426 837/1381/426 831/1374/426 +f 836/1376/427 835/1433/427 829/1377/427 +f 839/1379/428 838/1373/428 832/1375/428 +f 837/1381/429 836/1376/429 830/1378/429 +f 835/1382/430 834/1385/430 828/1383/430 +f 834/1385/431 839/1379/431 833/1380/431 +f 834/1388/421 835/1434/421 836/1386/421 +f 836/1386/421 837/1435/421 838/1387/421 +f 838/1387/421 839/1436/421 834/1388/421 +s 1 +f 683/1437/432 669/1262/427 682/1438/427 +f 690/1439/426 662/1276/433 689/1440/433 +f 697/1441/425 655/1290/434 696/1442/434 +f 682/1443/427 670/1312/435 681/1444/435 +f 689/1440/433 663/1272/436 688/1445/436 +f 696/1442/434 656/1288/437 695/1446/437 +f 681/1444/435 671/1306/438 680/1447/438 +f 688/1445/436 664/1270/439 687/1448/439 +f 695/1446/437 657/1286/428 694/1449/428 +f 680/1447/438 672/1304/440 679/1450/440 +f 687/1448/439 665/1268/429 686/1451/429 +f 694/1449/428 658/1284/441 693/1452/441 +f 679/1450/440 673/1302/430 678/1453/430 +f 686/1451/429 666/1265/424 685/1454/424 +f 693/1452/441 659/1282/442 692/1455/442 +f 678/1453/430 674/1300/443 677/1456/443 +f 676/1457/444 652/1296/445 699/1458/445 +f 685/1454/424 667/1267/446 684/1459/446 +f 692/1455/442 660/1279/447 691/1460/447 +f 677/1456/443 675/1298/444 676/1457/444 +f 699/1458/445 653/1294/431 698/1461/431 +f 684/1459/446 668/1260/432 683/1437/432 +f 691/1460/447 661/1281/426 690/1439/426 +f 698/1461/431 654/1292/425 697/1441/425 +f 720/1462/446 743/1463/432 719/1464/432 +f 713/1465/443 736/1466/444 712/1467/444 +f 706/1468/428 729/1469/441 705/1470/441 +f 721/1471/424 744/1472/446 720/1462/446 +f 714/1314/448 737/1473/443 713/1465/443 +f 707/1474/437 730/1475/428 706/1476/428 +f 722/1477/429 745/1478/424 721/1471/424 +f 708/1479/434 731/1480/437 707/1474/437 +f 723/1481/439 746/1482/429 722/1477/429 +f 701/1483/433 724/1484/436 700/1485/436 +f 709/1486/425 732/1487/434 708/1479/434 +f 700/1485/436 747/1488/439 723/1481/439 +f 702/1489/426 725/1490/433 701/1483/433 +f 717/1491/435 740/1316/449 716/1317/449 +f 710/1492/431 733/1493/425 709/1486/425 +f 718/1494/427 741/1495/435 717/1491/435 +f 711/1496/445 734/1497/431 710/1492/431 +f 719/1464/432 742/1498/427 718/1494/427 +f 712/1467/444 735/1499/445 711/1496/445 +f 705/1470/441 728/1500/442 704/1501/442 +f 754/1502/436 765/1503/429 753/1504/429 +f 765/1503/429 797/1505/450 764/1506/451 +f 771/1507/431 770/1508/452 788/1509/453 +f 755/1510/426 766/1511/436 754/1502/436 +f 762/1512/454 787/1326/424 781/1513/424 +f 788/1509/453 757/1514/428 758/1515/434 +f 749/1516/430 760/1517/444 748/1518/444 +f 796/1519/427 752/1520/446 764/1506/451 +f 748/1518/444 771/1507/431 759/1521/431 +f 757/1514/428 768/1522/442 756/1523/442 +f 777/1524/447 768/1522/442 789/1525/447 +f 774/1526/425 777/1527/425 789/1528/455 +f 749/1516/430 785/1529/440 761/1530/430 +f 750/1531/438 796/1519/427 763/1532/438 +f 703/1533/447 728/1500/442 727/1534/447 +f 727/1534/447 702/1489/426 703/1533/447 +f 750/1531/438 762/1535/440 782/1536/440 +f 767/1537/426 778/1538/447 772/1539/447 +f 773/1540/456 792/1541/437 793/1542/437 +f 794/1543/441 792/1541/437 791/1544/441 +f 795/1545/457 791/1544/441 790/1546/457 +f 795/1545/457 788/1509/453 770/1508/452 +f 798/1547/458 764/1506/451 797/1505/450 +f 803/1548/435 799/1549/458 798/1547/458 +f 802/1550/432 800/1551/435 803/1548/435 +f 762/1535/454 802/1550/432 784/1552/459 +f 815/1350/460 844/1553/461 814/1344/462 +f 814/1344/462 843/1554/463 813/1352/464 +f 811/1353/465 840/1555/466 810/1356/467 +f 812/1347/468 841/1556/469 811/1428/465 +f 815/1350/460 840/1555/466 845/1557/470 +f 813/1352/464 842/1558/471 812/1347/468 +f 845/1559/470 840/1560/466 842/1561/471 +f 683/1437/432 668/1260/432 669/1262/427 +f 690/1439/426 661/1281/426 662/1276/433 +f 697/1441/425 654/1292/425 655/1290/434 +f 682/1443/427 669/1310/427 670/1312/435 +f 689/1440/433 662/1276/433 663/1272/436 +f 696/1442/434 655/1290/434 656/1288/437 +f 681/1444/435 670/1312/435 671/1306/438 +f 688/1445/436 663/1272/436 664/1270/439 +f 695/1446/437 656/1288/437 657/1286/428 +f 680/1447/438 671/1306/438 672/1304/440 +f 687/1448/439 664/1270/439 665/1268/429 +f 694/1449/428 657/1286/428 658/1284/441 +f 679/1450/440 672/1304/440 673/1302/430 +f 686/1451/429 665/1268/429 666/1265/424 +f 693/1452/441 658/1284/441 659/1282/442 +f 678/1453/430 673/1302/430 674/1300/443 +f 676/1457/444 675/1298/444 652/1296/445 +f 685/1454/424 666/1265/424 667/1267/446 +f 692/1455/442 659/1282/442 660/1279/447 +f 677/1456/443 674/1300/443 675/1298/444 +f 699/1458/445 652/1296/445 653/1294/431 +f 684/1459/446 667/1267/446 668/1260/432 +f 691/1460/447 660/1279/447 661/1281/426 +f 698/1461/431 653/1294/431 654/1292/425 +f 720/1462/446 744/1472/446 743/1463/432 +f 713/1465/443 737/1473/443 736/1466/444 +f 706/1468/428 730/1562/428 729/1469/441 +f 721/1471/424 745/1478/424 744/1472/446 +f 714/1314/448 738/1409/448 737/1473/443 +f 707/1474/437 731/1480/437 730/1475/428 +f 722/1477/429 746/1482/429 745/1478/424 +f 708/1479/434 732/1487/434 731/1480/437 +f 723/1481/439 747/1488/439 746/1482/429 +f 701/1483/433 725/1490/433 724/1484/436 +f 709/1486/425 733/1493/425 732/1487/434 +f 700/1485/436 724/1484/436 747/1488/439 +f 702/1489/426 726/1563/426 725/1490/433 +f 717/1491/435 741/1495/435 740/1316/449 +f 710/1492/431 734/1497/431 733/1493/425 +f 718/1494/427 742/1498/427 741/1495/435 +f 711/1496/445 735/1499/445 734/1497/431 +f 719/1464/432 743/1463/432 742/1498/427 +f 712/1467/444 736/1466/444 735/1499/445 +f 705/1470/441 729/1469/441 728/1500/442 +f 754/1502/436 766/1511/436 765/1503/429 +f 752/1520/446 753/1504/429 764/1506/451 +f 753/1504/429 765/1503/429 764/1506/451 +f 788/1509/453 758/1515/434 759/1521/431 +f 759/1521/431 771/1507/431 788/1509/453 +f 755/1510/426 767/1537/426 766/1511/436 +f 781/1513/424 782/1564/424 762/1512/454 +f 762/1512/454 784/1412/459 787/1326/424 +f 788/1509/453 769/1565/428 757/1514/428 +f 749/1516/430 761/1530/430 760/1517/444 +f 796/1519/427 751/1566/427 752/1520/446 +f 748/1518/444 760/1517/444 771/1507/431 +f 757/1514/428 769/1565/428 768/1522/442 +f 777/1524/447 756/1523/442 768/1522/442 +f 789/1528/455 773/1321/456 776/1322/425 +f 776/1322/425 774/1526/425 789/1528/455 +f 749/1516/430 783/1567/440 785/1529/440 +f 750/1531/438 751/1566/427 796/1519/427 +f 703/1533/447 704/1501/442 728/1500/442 +f 727/1534/447 726/1563/426 702/1489/426 +f 750/1531/438 763/1532/438 762/1535/440 +f 767/1537/426 755/1510/426 778/1538/447 +f 773/1540/456 789/1525/455 792/1541/437 +f 794/1543/441 793/1542/437 792/1541/437 +f 795/1545/457 794/1543/441 791/1544/441 +f 795/1545/457 790/1546/457 788/1509/453 +f 798/1547/458 799/1549/458 764/1506/451 +f 803/1548/435 800/1551/435 799/1549/458 +f 802/1550/432 801/1568/432 800/1551/435 +f 762/1535/454 801/1568/432 802/1550/432 +f 815/1350/460 845/1557/470 844/1553/461 +f 814/1344/462 844/1553/461 843/1554/463 +f 811/1353/465 841/1569/469 840/1555/466 +f 812/1347/468 842/1558/471 841/1556/469 +f 815/1350/460 810/1356/467 840/1555/466 +f 813/1352/464 843/1554/463 842/1558/471 +f 840/1560/466 841/1570/469 842/1561/471 +f 842/1561/471 843/1571/463 844/1572/461 +f 844/1572/461 845/1559/470 842/1561/471 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/am-180.png b/src/main/resources/assets/hbm/textures/models/weapons/am-180.png new file mode 100644 index 0000000000000000000000000000000000000000..dec10075a2b7d176d239ab1223409ca9e2fe5071 GIT binary patch literal 40405 zcmV*jKuo`hP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!2kdb!2!6DYwZ94ooY!$K~#8N?Y#$> zB*%5U+wbo7c0cLcTc^9z$*iO$ zDOyo<5=D^`B|4F!C=vhx!h1geW-tK8oAzev{=fI~Rc2LJRaaG4HM)E9-yM~i5s?v* z5%K=md(k*gNKua+1X^H5;ZkFmuwjuPD-bres)0^1q$>C zyLUgeNI(IEfp8?C8%*LcFtpQTlAmP`U6N@MSJMM=}APES@X~S_$_a&w5I*-rX{CMdD-@LD+(34@s zGdwhCM1{5kNe$@aFK&CP^k?6FxU@*a=5yt4~ zru3}9YQV(A(e$h_iZWY0s8?RC62|pcomHNioioCihcG0h5CMeY1fpvQLz)5tY=j{V zgE55#okIxNA

9zCXa7-c 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

u;{= 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 z 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 diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 93ef53986..a857f90f8 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -387,5 +387,9 @@ public class Orchestras { if(type == AnimType.RELOAD || type == AnimType.RELOAD_CYCLE) { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.glReload", 1F, 1F); } + if(type == AnimType.INSPECT) { + if(timer == 9) player.worldObj.playSoundAtEntity(player, "hbm:weapon.glOpen", 1F, 1F); + if(timer == 27) player.worldObj.playSoundAtEntity(player, "hbm:weapon.glClose", 1F, 1F); + } }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java index 76d4335af..49c34c53c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java @@ -86,14 +86,13 @@ public class XFactory40mm { @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_CONGOLAKE_ANIMS = (stack, type) -> { int ammo = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); switch(type) { - case EQUIP: return new BusAnimation(); + case EQUIP: return ResourceManager.congolake_anim.get("Equip"); case CYCLE: return ResourceManager.congolake_anim.get(ammo <= 1 ? "FireEmpty" : "Fire"); - case RELOAD: - return ResourceManager.congolake_anim.get(ammo == 0 ? "ReloadEmpty": "ReloadStart"); + case RELOAD: return ResourceManager.congolake_anim.get(ammo == 0 ? "ReloadEmpty": "ReloadStart"); case RELOAD_CYCLE: return ResourceManager.congolake_anim.get("Reload"); case RELOAD_END: return ResourceManager.congolake_anim.get("ReloadEnd"); - case JAMMED: return new BusAnimation(); - case INSPECT: return new BusAnimation(); + case JAMMED: return ResourceManager.congolake_anim.get("Jammed"); + case INSPECT: return ResourceManager.congolake_anim.get("Inspect"); } return null; diff --git a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java index 94563417a..55a7d4311 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java @@ -109,6 +109,9 @@ public class BusAnimationKeyframe { double change = value - previous.value; double time = currentTime - startTime; + // Constant value optimisation + if(Math.abs(previous.value - value) < 0.000001) return value; + if(previous.interpolationType == IType.BEZIER) { double v1x = startTime; double v1y = previous.value; @@ -213,7 +216,13 @@ public class BusAnimationKeyframe { } private double sqrt3(double d) { - return Math.exp(Math.log(d) / 3.0); + if(d > 0.000001) { + return Math.exp(Math.log(d) / 3.0); + } else if(d > -0.000001) { + return 0; + } else { + return -Math.exp(Math.log(-d) / 3.0); + } } private double time(double start, double end, double duration) { @@ -235,12 +244,10 @@ public class BusAnimationKeyframe { double q = (2 * a * a * a - a * b + c) / 2; double d = q * q + p * p * p; - if(d > 0) { + if(d > 0.000001) { double t = Math.sqrt(d); return sqrt3(-q + t) + sqrt3(-q - t) - a; - } - - if(d == 0) { + } else if(d > -0.000001) { double t = sqrt3(-q); double result = 2 * t - a; if(result < 0.000001 || result > 1.000001) { @@ -277,9 +284,7 @@ public class BusAnimationKeyframe { result = (-b + p) / (2 * a); } return result; - } - - if(p == 0) { + } else if(p > -0.000001) { return -b / (2 * a); } } diff --git a/src/main/resources/assets/hbm/models/weapons/animations/congolake.json b/src/main/resources/assets/hbm/models/weapons/animations/congolake.json index 0fd6911a6..192bd4f63 100644 --- a/src/main/resources/assets/hbm/models/weapons/animations/congolake.json +++ b/src/main/resources/assets/hbm/models/weapons/animations/congolake.json @@ -1 +1 @@ -{"anim": {"Fire": {"Gun": {"location": {"x": [[0.0, 0.0], [0.0, 50.0], [-0.015234995633363724, 133.33333333333331], [-0.0032073669135570526, 166.66666666666669], [0.0, 150.0], [0.1729116439819336, 183.33333333333337], [0.13706907629966736, 83.33333333333326], [0.13706907629966736, 200.0], [0.08123889565467834, 166.66666666666663], [0.0, 116.66666666666674]], "z": [[-0.0, 0.0], [-0.7130982875823975, 50.0], [-0.8931010961532593, 133.33333333333331], [-0.1880212426185608, 166.66666666666669], [-0.0, 150.0], [0.07001475989818573, 183.33333333333337], [0.3594728708267212, 83.33333333333326], [0.3594728708267212, 200.0], [0.052131712436676025, 166.66666666666663], [-0.0, 116.66666666666674]], "y": [[0.0, 0.0], [-0.05462139472365379, 50.0], [0.33006909489631653, 133.33333333333331], [0.06948822736740112, 166.66666666666669], [0.0, 150.0], [0.1356278508901596, 183.33333333333337], [0.16076654195785522, 83.33333333333326], [0.16076654195785522, 200.0], [0.13280370831489563, 166.66666666666663], [0.0, 116.66666666666674]]}, "rotation_euler": {"x": [[0.0, 0.0], [5.533829083941263, 83.33333333333333], [-6.777895961066664, 133.33333333333337], [-1.4269255553586289, 166.66666666666663], [0.0, 116.66666666666669], [-1.6187724423744758, 216.66666666666663], [-3.0496036919995886, 100.0], [-1.5771150119048625, 216.66666666666663], [-1.3797563756722266, 133.33333333333348], [0.0, 116.66666666666652]], "z": [[-0.0, 0.0], [0.20789931232904474, 83.33333333333333], [-0.2137078679498249, 133.33333333333337], [-0.04499113641374835, 166.66666666666663], [-0.0, 116.66666666666669], [6.481160527009576, 216.66666666666663], [6.3670886839075465, 100.0], [2.910396325865089, 216.66666666666663], [2.9018462096847024, 133.33333333333348], [-0.0, 116.66666666666652]], "y": [[0.0, 0.0], [0.299797573280649, 83.33333333333333], [-0.3922261210480681, 133.33333333333337], [-0.08257391881641295, 166.66666666666663], [0.0, 116.66666666666669], [-1.7981676810899783, 216.66666666666663], [-1.8284025806680975, 100.0], [4.424185025436767, 216.66666666666663], [0.5393851613977845, 133.33333333333348], [0.0, 116.66666666666652]]}}, "Loop": {"rotation_euler": {"z": [[0.0, 0.0], [28.83552188323058, 50.0], [-11.070683087911195, 50.0], [-2.56723823045354, 33.33333333333334], [7.0765451287518255, 49.99999999999997], [80.15762477840892, 116.66666666666669], [60.820607917294126, 50.0], [-0.0, 83.33333333333337]]}, "location": {"x": [[0.2532634139060974, 0.0]], "z": [[3.4837722778320312, 0.0]], "y": [[1.4936577081680298, 0.0]]}}, "Pump": {"location": {"z": [[-0.0, 683.3333333333334], [-0.10627399384975433, 49.999999999999886], [-0.7439179420471191, 66.66666666666674], [-0.7439179420471191, 200.0], [-0.18597948551177979, 66.66666666666674], [-0.0, 66.66666666666652]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "CONSTANT"], [-2.204763704938273e-09, 683.3333333333334], [-2.204763704938273e-09, 66.66666666666663], [1.5205265935236412e-09, 116.66666666666674], [-0.01397116482257843, 66.66666666666663], [-0.01397116482257843, 49.999999999999886], [1.5205265935236412e-09, 150.0]], "z": [[1.2549771070480347, 0.0, "CONSTANT"], [1.2549771070480347, 683.3333333333334], [0.4066495895385742, 66.66666666666663], [0.4066495895385742, 116.66666666666674], [0.4519183039665222, 66.66666666666663], [0.4519183039665222, 49.999999999999886], [1.2549771070480347, 150.0]], "y": [[1.7459099292755127, 0.0, "CONSTANT"], [1.199751853942871, 683.3333333333334], [1.199751853942871, 66.66666666666663], [1.5027252435684204, 116.66666666666674], [1.5814520120620728, 66.66666666666663], [1.5814520120620728, 49.999999999999886], [1.7459099292755127, 150.0]]}, "rotation_euler": {"x": [[0.0, 0.0, "CONSTANT"], [0.0, 683.3333333333334], [0.0, 66.66666666666663], [-24.580495030325643, 116.66666666666674], [-15.192167789711336, 66.66666666666663], [-15.192167789711336, 49.999999999999886], [0.0, 150.0]], "z": [[0.0, 0.0, "CONSTANT"], [0.0, 683.3333333333334], [0.0, 66.66666666666663], [0.0, 116.66666666666674], [-9.025331207124422e-09, 66.66666666666663], [-9.025331207124422e-09, 49.999999999999886], [0.0, 150.0]], "y": [[0.0, 0.0, "CONSTANT"], [0.0, 683.3333333333334], [0.0, 66.66666666666663], [8.004127933608693e-08, 116.66666666666674], [1.31019960381489e-07, 66.66666666666663], [1.31019960381489e-07, 49.999999999999886], [0.0, 150.0]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 0.0], [-10.132303034637006, 50.0], [0.0, 33.33333333333333], [0.0, 99.99999999999999], [-7.955241708397972, 83.33333333333337], [-10.701222787779573, 99.99999999999994], [0.0, 116.66666666666669]]}, "location": {"x": [[0.0, 0.0]], "z": [[2.990000009536743, 0.0]], "y": [[2.104297161102295, 0.0]]}}}, "FireEmpty": {"Gun": {"location": {"x": [[0.0, 0.0], [0.0, 50.0], [-0.015234995633363724, 133.33333333333331], [-0.0032073669135570526, 166.66666666666669], [0.0, 150.0], [0.1729116439819336, 183.33333333333337], [0.13706907629966736, 83.33333333333326], [0.13706907629966736, 200.0], [0.08123889565467834, 166.66666666666663], [0.0, 116.66666666666674]], "z": [[-0.0, 0.0], [-0.7130982875823975, 50.0], [-0.8931010961532593, 133.33333333333331], [-0.1880212426185608, 166.66666666666669], [-0.0, 150.0], [0.07001475989818573, 183.33333333333337], [0.3594728708267212, 83.33333333333326], [0.3594728708267212, 200.0], [0.052131712436676025, 166.66666666666663], [-0.0, 116.66666666666674]], "y": [[0.0, 0.0], [-0.05462139472365379, 50.0], [0.33006909489631653, 133.33333333333331], [0.06948822736740112, 166.66666666666669], [0.0, 150.0], [0.1356278508901596, 183.33333333333337], [0.16076654195785522, 83.33333333333326], [0.16076654195785522, 200.0], [0.13280370831489563, 166.66666666666663], [0.0, 116.66666666666674]]}, "rotation_euler": {"x": [[0.0, 0.0], [5.533829083941263, 83.33333333333333], [-6.777895961066664, 133.33333333333337], [-1.4269255553586289, 166.66666666666663], [0.0, 116.66666666666669], [-1.6187724423744758, 216.66666666666663], [-3.0496036919995886, 100.0], [-1.5771150119048625, 216.66666666666663], [-1.3797563756722266, 133.33333333333348], [0.0, 116.66666666666652]], "z": [[-0.0, 0.0], [0.20789931232904474, 83.33333333333333], [-0.2137078679498249, 133.33333333333337], [-0.04499113641374835, 166.66666666666663], [-0.0, 116.66666666666669], [6.481160527009576, 216.66666666666663], [6.3670886839075465, 100.0], [2.910396325865089, 216.66666666666663], [2.9018462096847024, 133.33333333333348], [-0.0, 116.66666666666652]], "y": [[0.0, 0.0], [0.299797573280649, 83.33333333333333], [-0.3922261210480681, 133.33333333333337], [-0.08257391881641295, 166.66666666666663], [0.0, 116.66666666666669], [-1.7981676810899783, 216.66666666666663], [-1.8284025806680975, 100.0], [4.424185025436767, 216.66666666666663], [0.5393851613977845, 133.33333333333348], [0.0, 116.66666666666652]]}}, "Loop": {"rotation_euler": {"z": [[0.0, 0.0], [28.83552188323058, 50.0], [-11.070683087911195, 50.0], [-2.56723823045354, 33.33333333333334], [7.0765451287518255, 49.99999999999997], [80.15762477840892, 116.66666666666669], [60.820607917294126, 50.0], [-0.0, 83.33333333333337]]}, "location": {"x": [[0.2532634139060974, 0.0]], "z": [[3.4837722778320312, 0.0]], "y": [[1.4936577081680298, 0.0]]}}, "Pump": {"location": {"z": [[-0.0, 683.3333333333334], [-0.10627399384975433, 49.999999999999886], [-0.7439179420471191, 66.66666666666674], [-0.7439179420471191, 200.0], [-0.18597948551177979, 66.66666666666674], [-0.0, 66.66666666666652]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0]], "z": [[1.2549771070480347, 0.0]], "y": [[-4.465472221374512, 0.0]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 0.0], [-10.132303034637006, 50.0], [0.0, 33.33333333333333], [0.0, 99.99999999999999], [-7.955241708397972, 83.33333333333337], [-10.701222787779573, 99.99999999999994], [0.0, 116.66666666666669]]}, "location": {"x": [[0.0, 0.0]], "z": [[2.990000009536743, 0.0]], "y": [[2.104297161102295, 0.0]]}}}, "Reload": {"GuardInner": {"location": {"x": [[3.725290298461914e-09, 0.0]], "z": [[0.8854429721832275, 0.0]], "y": [[0.8707519173622131, 0.0]]}, "rotation_euler": {"x": [[0.0, 350.0], [16.02038116054145, 83.33333333333337], [23.71116221314476, 83.33333333333326], [23.71116221314476, 66.66666666666674], [0.0, 83.33333333333326]]}}, "GuardOuter": {"location": {"x": [[0.0, 0.0]], "z": [[-0.07262593507766724, 0.0]], "y": [[0.8707519173622131, 0.0]]}, "rotation_euler": {"x": [[0.0, 350.0], [-17.139458137176558, 83.33333333333337], [-29.355340260203572, 83.33333333333326], [-29.355340260203572, 100.00000000000011], [0.0, 99.99999999999989]]}}, "Gun": {"location": {"x": [[1.7611019611358643, 0.0], [1.7662079334259033, 150.0], [1.7611019611358643, 250.0], [1.613909363746643, 100.0], [1.7571532726287842, 116.66666666666674], [1.7611019611358643, 99.99999999999989]], "z": [[0.31467199325561523, 0.0], [0.30754023790359497, 150.0], [0.31467199325561523, 250.0], [0.4306454658508301, 100.0], [0.3806498050689697, 116.66666666666674], [0.31467199325561523, 99.99999999999989]], "y": [[0.8750439286231995, 0.0], [0.8376463055610657, 150.0], [0.8750439286231995, 250.0], [1.1308174133300781, 100.0], [1.108587384223938, 116.66666666666674], [0.8750439286231995, 99.99999999999989]]}, "rotation_euler": {"x": [[-18.983153297952903, 0.0], [-20.857867762844858, 250.0], [-18.983153297952903, 100.0], [-20.627756982159838, 116.66666666666669], [-20.258341078257818, 116.66666666666669], [-18.983153297952903, 133.33333333333326]], "z": [[86.04810969222216, 0.0], [87.57263523572567, 250.0], [86.04810969222216, 100.0], [89.15816119870658, 116.66666666666669], [86.00693048171614, 116.66666666666669], [86.04810969222216, 133.33333333333326]], "y": [[29.613753637261834, 0.0], [28.64577410544575, 250.0], [29.613753637261834, 100.0], [25.730953311102372, 116.66666666666669], [27.311677651096765, 116.66666666666669], [29.613753637261834, 133.33333333333326]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0], [1.5205265935236412e-09, 216.66666666666669], [3.600797242597764e-07, 133.33333333333331], [1.9156854591528827e-07, 83.33333333333337], [2.418599649445241e-07, 83.33333333333326], [2.3999731979529315e-07, 100.00000000000011]], "z": [[-2.2731080055236816, 0.0], [-2.2731080055236816, 216.66666666666669], [0.2386959344148636, 133.33333333333331], [0.33605021238327026, 83.33333333333337], [0.4338737428188324, 83.33333333333326], [1.2500436305999756, 100.00000000000011]], "y": [[-1.4170563220977783, 0.0], [-1.4170563220977783, 216.66666666666669], [0.5333303213119507, 133.33333333333331], [0.8954256176948547, 83.33333333333337], [1.1207358837127686, 83.33333333333326], [1.2056175470352173, 100.00000000000011]]}, "rotation_euler": {"x": [[0.0, 0.0], [0.0, 216.66666666666669], [-23.121160227355304, 133.33333333333331], [-14.526026270149163, 83.33333333333337], [-5.042295800981765, 83.33333333333326], [0.0, 100.00000000000011]], "z": [[0.0, 0.0], [-0.0, 216.66666666666669], [-0.0, 133.33333333333331], [2.551953161995936e-07, 83.33333333333337], [7.134593799244011e-07, 83.33333333333326], [-0.0, 100.00000000000011]], "y": [[0.0, 0.0], [0.0, 216.66666666666669], [1.7075472925031877e-06, 133.33333333333331], [1.688370023551335e-06, 83.33333333333337], [1.6331417525071545e-06, 83.33333333333326], [0.0, 100.00000000000011]]}}}, "ReloadEmpty": {"Gun": {"location": {"x": [[0.0, 0.0], [1.2511006593704224, 183.33333333333331], [1.6423077583312988, 216.66666666666669], [1.6554410457611084, 150.0], [1.7105761766433716, 66.66666666666674], [1.7476284503936768, 116.66666666666652], [1.7611019611358643, 133.33333333333348]], "z": [[-0.0, 0.0], [0.26347818970680237, 183.33333333333331], [0.32502928376197815, 216.66666666666669], [0.30153536796569824, 150.0], [0.3000105023384094, 66.66666666666674], [0.3107622563838959, 116.66666666666652], [0.31467199325561523, 133.33333333333348]], "y": [[0.0, 0.0], [0.42658743262290955, 183.33333333333331], [-0.009814918041229248, 216.66666666666669], [-0.1131410151720047, 150.0], [-0.20051059126853943, 66.66666666666674], [0.5882294178009033, 116.66666666666652], [0.8750439286231995, 133.33333333333348]]}, "rotation_euler": {"x": [[0.0, 0.0], [-14.617513238986898, 116.66666666666667], [-37.38541266737456, 233.33333333333331], [-36.45018560017598, 166.66666666666663], [-30.74254485044399, 66.66666666666674], [-21.750068053366945, 149.9999999999999], [-18.983153297952903, 133.33333333333348]], "z": [[-0.0, 0.0], [32.06710636071164, 116.66666666666667], [40.97562647251089, 233.33333333333331], [38.71689657436601, 166.66666666666663], [32.11341504328433, 66.66666666666674], [73.35759772377095, 149.9999999999999], [86.04810969222216, 133.33333333333348]], "y": [[0.0, 0.0], [21.50487279989995, 116.66666666666667], [44.292741993873435, 233.33333333333331], [46.044774308440914, 166.66666666666663], [49.72028010083778, 66.66666666666674], [34.34470124134409, 149.9999999999999], [29.613753637261834, 133.33333333333348]]}}, "Pump": {"location": {"z": [[-0.0, 83.33333333333333], [-0.10627399384975433, 50.000000000000014], [-0.7439179420471191, 66.66666666666666], [-0.7439179420471191, 483.33333333333337], [-0.18597948551177979, 66.66666666666663], [-0.0, 66.66666666666663]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0], [1.8807575702667236, 216.66666666666669], [0.1613924205303192, 216.66666666666669], [0.010319530963897705, 100.0], [2.558298035637563e-07, 83.33333333333337]], "z": [[-2.2731080055236816, 0.0], [-1.77922523021698, 216.66666666666669], [0.5386117100715637, 216.66666666666669], [0.9011819362640381, 100.0], [1.2500436305999756, 83.33333333333337]], "y": [[-1.4170563220977783, 0.0], [-0.7542737126350403, 216.66666666666669], [1.8265879154205322, 216.66666666666669], [1.7011022567749023, 100.0], [1.7520724534988403, 83.33333333333337]]}, "rotation_euler": {"x": [[0.0, 0.0], [0.0, 166.66666666666666], [17.895010248068782, 216.66666666666666], [3.92045772037468, 116.66666666666669], [0.0, 116.66666666666674]], "z": [[0.0, 0.0], [-0.0, 166.66666666666666], [-7.282242678909106, 216.66666666666666], [-2.104055355191472, 116.66666666666669], [-0.0, 116.66666666666674]], "y": [[0.0, 0.0], [0.0, 166.66666666666666], [-21.433229238148392, 216.66666666666666], [-7.3901921111938655, 116.66666666666669], [0.0, 116.66666666666674]]}}}, "ReloadEnd": {"Gun": {"location": {"x": [[1.7611019611358643, 0.0], [-0.31797051429748535, 216.66666666666669], [0.0, 83.33333333333331]], "z": [[0.31467199325561523, 0.0], [0.010336088016629219, 216.66666666666669], [-0.0, 83.33333333333331]], "y": [[0.8750439286231995, 0.0], [0.0250311940908432, 216.66666666666669], [0.0, 83.33333333333331]]}, "rotation_euler": {"x": [[-18.983153297952903, 0.0], [0.09662330444411844, 216.66666666666669], [0.0, 83.33333333333331]], "z": [[86.04810969222216, 0.0], [-9.502314560125358, 216.66666666666669], [-0.0, 83.33333333333331]], "y": [[29.613753637261834, 0.0], [-0.24104249845162748, 216.66666666666669], [0.0, 83.33333333333331]]}}}, "ReloadStart": {"GuardInner": {"location": {"x": [[3.725290298461914e-09, 0.0]], "z": [[0.8854429721832275, 0.0]], "y": [[0.8707519173622131, 0.0]]}, "rotation_euler": {"x": [[0.0, 350.0], [16.02038116054145, 83.33333333333337], [23.71116221314476, 83.33333333333326], [23.71116221314476, 66.66666666666674], [0.0, 83.33333333333326]]}}, "GuardOuter": {"location": {"x": [[0.0, 0.0]], "z": [[-0.07262593507766724, 0.0]], "y": [[0.8707519173622131, 0.0]]}, "rotation_euler": {"x": [[0.0, 350.0], [-17.139458137176558, 83.33333333333337], [-29.355340260203572, 83.33333333333326], [-29.355340260203572, 100.00000000000011], [0.0, 99.99999999999989]]}}, "Gun": {"location": {"x": [[0.0, 0.0], [1.2318342924118042, 183.33333333333331], [1.642445683479309, 83.33333333333337], [1.7611019611358643, 133.33333333333331], [1.613909363746643, 100.0], [1.7571532726287842, 116.66666666666674], [1.7611019611358643, 66.66666666666663]], "z": [[-0.0, 0.0], [0.2732446491718292, 183.33333333333331], [0.36432620882987976, 83.33333333333337], [0.31467199325561523, 133.33333333333331], [0.4306454658508301, 100.0], [0.3806498050689697, 116.66666666666674], [0.31467199325561523, 66.66666666666663]], "y": [[0.0, 0.0], [0.7328978776931763, 183.33333333333331], [0.9771971702575684, 83.33333333333337], [0.8750439286231995, 133.33333333333331], [1.1308174133300781, 100.0], [1.108587384223938, 116.66666666666674], [0.8750439286231995, 66.66666666666663]]}, "rotation_euler": {"x": [[0.0, 0.0], [-14.617513238986898, 150.0], [-19.490018221164963, 83.33333333333334], [-18.983153297952903, 116.66666666666666], [-20.627756982159838, 133.33333333333331], [-20.258341078257818, 100.00000000000006], [-18.983153297952903, 100.0]], "z": [[-0.0, 0.0], [65.44332775888294, 150.0], [87.25777034517726, 83.33333333333334], [86.04810969222216, 116.66666666666666], [89.15816119870658, 133.33333333333331], [86.00693048171614, 100.00000000000006], [86.04810969222216, 100.0]], "y": [[0.0, 0.0], [21.504871092352655, 150.0], [28.673161456470208, 83.33333333333334], [29.613753637261834, 116.66666666666666], [25.730953311102372, 133.33333333333331], [27.311677651096765, 100.00000000000006], [29.613753637261834, 100.0]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0], [1.5205265935236412e-09, 216.66666666666669], [3.600797242597764e-07, 133.33333333333331], [1.9156854591528827e-07, 83.33333333333337], [2.418599649445241e-07, 83.33333333333326], [2.3999731979529315e-07, 100.00000000000011]], "z": [[-2.2731080055236816, 0.0], [-2.2731080055236816, 216.66666666666669], [0.2386959344148636, 133.33333333333331], [0.33605021238327026, 83.33333333333337], [0.4338737428188324, 83.33333333333326], [1.2500436305999756, 100.00000000000011]], "y": [[-1.4170563220977783, 0.0], [-1.4170563220977783, 216.66666666666669], [0.5333303213119507, 133.33333333333331], [0.8954256176948547, 83.33333333333337], [1.1207358837127686, 83.33333333333326], [1.2056175470352173, 100.00000000000011]]}, "rotation_euler": {"x": [[0.0, 0.0], [0.0, 216.66666666666669], [-23.121160227355304, 133.33333333333331], [-14.526026270149163, 83.33333333333337], [-5.042295800981765, 83.33333333333326], [0.0, 100.00000000000011]], "z": [[0.0, 0.0], [-0.0, 216.66666666666669], [-0.0, 133.33333333333331], [2.551953161995936e-07, 83.33333333333337], [7.134593799244011e-07, 83.33333333333326], [-0.0, 100.00000000000011]], "y": [[0.0, 0.0], [0.0, 216.66666666666669], [1.7075472925031877e-06, 133.33333333333331], [1.688370023551335e-06, 83.33333333333337], [1.6331417525071545e-06, 83.33333333333326], [0.0, 100.00000000000011]]}}}}, "offset": {"GuardInner": [3.725290298461914e-09, 0.8707519173622131, 0.8854429721832275], "GuardOuter": [0.0, 0.8707519173622131, -0.07262593507766724], "Loop": [0.2532634139060974, 1.4936577081680298, 3.4837722778320312], "Pump": [1.1568772606551647e-09, 0.0, -0.0], "Shell": [1.5205265935236412e-09, 1.7459099292755127, 1.2549771070480347], "ShellFore": [1.5205265935236412e-09, 1.7459099292755127, 1.2549771070480347], "Sight": [0.0, 2.104297161102295, 2.990000009536743]}} \ No newline at end of file +{"anim": {"Equip": {"Gun": {"location": {"x": [[-0.23637241125106812, 0.0, "BACK", "AUTO", 1.7015800476074219], [0.0, 716.6666666666666, "BEZIER", "AUTO", 955.555534362793, 0.0, "AUTO_CLAMPED"]], "z": [[-2.670673370361328, 0.0, "BACK", "AUTO", 1.7015800476074219], [-0.0, 716.6666666666666, "BEZIER", "AUTO", 955.555534362793, -0.0, "AUTO_CLAMPED"]], "y": [[-4.068621635437012, 0.0, "BACK", "AUTO", 1.7015800476074219], [0.0, 716.6666666666666, "BEZIER", "AUTO", 955.555534362793, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[88.63504384036447, 0.0, "BACK", "AUTO", 1.7015800476074219], [-3.8488709345706, 516.6666666666666, "BEZIER", "EASE_OUT", 611.1111323038737, -3.8488709345706, "AUTO_CLAMPED"], [0.0, 283.33333333333337, "BEZIER", "AUTO", 705.555534362793, 0.0, "AUTO_CLAMPED", 894.444465637207, 0.0, "AUTO_CLAMPED"]], "z": [[1.9343983654068213, 0.0, "BACK", "AUTO", 1.7015800476074219], [6.406567604197043, 516.6666666666666, "BEZIER", "EASE_OUT", 611.1111323038737, 6.406567604197043, "AUTO_CLAMPED"], [-0.0, 283.33333333333337, "BEZIER", "AUTO", 705.555534362793, -0.0, "AUTO_CLAMPED", 894.444465637207, -0.0, "AUTO_CLAMPED"]], "y": [[-3.580704901151205, 0.0, "BACK", "AUTO", 1.7015800476074219], [-0.8266392790306901, 516.6666666666666, "BEZIER", "EASE_OUT", 611.1111323038737, -0.2922556837352062, "AUTO_CLAMPED"], [0.0, 283.33333333333337, "BEZIER", "AUTO", 705.555534362793, 0.0, "AUTO_CLAMPED", 894.444465637207, 0.0, "AUTO_CLAMPED"]]}}, "Loop": {"rotation_euler": {"z": [[-0.0, 0.0, "BEZIER", "AUTO", 72.22222487131755, -0.0, "AUTO_CLAMPED"], [-0.0, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, -0.0, "AUTO_CLAMPED", 277.7777671813965, -0.0, "AUTO_CLAMPED"], [40.12815367576864, 183.33333333333331, "BOUNCE", "AUTO", 338.8888994852702, 40.12815367576864, "AUTO_CLAMPED"], [-0.0, 450.0, "BEZIER", "AUTO", 1000.0, -0.0, "AUTO_CLAMPED"]]}, "location": {"x": [[0.2532634139060974, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.2532634139060974, "AUTO_CLAMPED"]], "z": [[3.4837722778320312, 0.0, "BEZIER", "AUTO", 16.666666666666668, 3.4837722778320312, "AUTO_CLAMPED"]], "y": [[1.4936577081680298, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.4936577081680298, "AUTO_CLAMPED"]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 83.33333333333333, 0.0, "AUTO_CLAMPED"], [0.0, 250.0, "BEZIER", "AUTO", 166.66666666666666, 0.0, "AUTO_CLAMPED", 300.0, 0.0, "AUTO_CLAMPED"], [-23.23367222600563, 150.0, "BOUNCE", "AUTO", 350.0, -23.23367222600563, "AUTO_CLAMPED"], [0.0, 383.33333333333337, "BEZIER", "AUTO", 911.1111323038737, 0.0, "AUTO_CLAMPED"]]}, "location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[2.990000009536743, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.990000009536743, "AUTO_CLAMPED"]], "y": [[2.104297161102295, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.104297161102295, "AUTO_CLAMPED"]]}}}, "Fire": {"Gun": {"location": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 50.0, "LINEAR", "AUTO"], [-0.015234995633363724, 133.33333333333331, "LINEAR", "AUTO"], [-0.0032073669135570526, 166.66666666666669, "LINEAR", "AUTO"], [0.0, 150.0, "LINEAR", "AUTO"], [0.1729116439819336, 183.33333333333337, "LINEAR", "AUTO"], [0.13706907629966736, 83.33333333333326, "LINEAR", "AUTO"], [0.13706907629966736, 200.0, "LINEAR", "AUTO"], [0.08123889565467834, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [-0.7130982875823975, 50.0, "LINEAR", "AUTO"], [-0.8931010961532593, 133.33333333333331, "LINEAR", "AUTO"], [-0.1880212426185608, 166.66666666666669, "LINEAR", "AUTO"], [-0.0, 150.0, "LINEAR", "AUTO"], [0.07001475989818573, 183.33333333333337, "LINEAR", "AUTO"], [0.3594728708267212, 83.33333333333326, "LINEAR", "AUTO"], [0.3594728708267212, 200.0, "LINEAR", "AUTO"], [0.052131712436676025, 166.66666666666663, "LINEAR", "AUTO"], [-0.0, 116.66666666666674, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [-0.05462139472365379, 50.0, "LINEAR", "AUTO"], [0.33006909489631653, 133.33333333333331, "LINEAR", "AUTO"], [0.06948822736740112, 166.66666666666669, "LINEAR", "AUTO"], [0.0, 150.0, "LINEAR", "AUTO"], [0.1356278508901596, 183.33333333333337, "LINEAR", "AUTO"], [0.16076654195785522, 83.33333333333326, "LINEAR", "AUTO"], [0.16076654195785522, 200.0, "LINEAR", "AUTO"], [0.13280370831489563, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [5.533829083941263, 83.33333333333333, "LINEAR", "AUTO"], [-6.777895961066664, 133.33333333333337, "LINEAR", "AUTO"], [-1.4269255553586289, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"], [-1.6187724423744758, 216.66666666666663, "LINEAR", "AUTO"], [-3.0496036919995886, 100.0, "LINEAR", "AUTO"], [-1.5771150119048625, 216.66666666666663, "LINEAR", "AUTO"], [-1.3797563756722266, 133.33333333333348, "LINEAR", "AUTO"], [0.0, 116.66666666666652, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [0.20789931232904474, 83.33333333333333, "LINEAR", "AUTO"], [-0.2137078679498249, 133.33333333333337, "LINEAR", "AUTO"], [-0.04499113641374835, 166.66666666666663, "LINEAR", "AUTO"], [-0.0, 116.66666666666669, "LINEAR", "AUTO"], [6.481160527009576, 216.66666666666663, "LINEAR", "AUTO"], [6.3670886839075465, 100.0, "LINEAR", "AUTO"], [2.910396325865089, 216.66666666666663, "LINEAR", "AUTO"], [2.9018462096847024, 133.33333333333348, "LINEAR", "AUTO"], [-0.0, 116.66666666666652, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.299797573280649, 83.33333333333333, "LINEAR", "AUTO"], [-0.3922261210480681, 133.33333333333337, "LINEAR", "AUTO"], [-0.08257391881641295, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"], [-1.7981676810899783, 216.66666666666663, "LINEAR", "AUTO"], [-1.8284025806680975, 100.0, "LINEAR", "AUTO"], [4.424185025436767, 216.66666666666663, "LINEAR", "AUTO"], [0.5393851613977845, 133.33333333333348, "LINEAR", "AUTO"], [0.0, 116.66666666666652, "LINEAR", "AUTO"]]}}, "Loop": {"rotation_euler": {"z": [[0.0, 0.0, "LINEAR", "AUTO"], [28.83552188323058, 50.0, "LINEAR", "AUTO"], [-11.070683087911195, 50.0, "LINEAR", "AUTO"], [-2.56723823045354, 33.33333333333334, "LINEAR", "AUTO"], [7.0765451287518255, 49.99999999999997, "LINEAR", "AUTO"], [80.15762477840892, 116.66666666666669, "LINEAR", "AUTO"], [60.820607917294126, 50.0, "LINEAR", "AUTO"], [-0.0, 83.33333333333337, "LINEAR", "AUTO"]]}, "location": {"x": [[0.2532634139060974, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.2532634139060974, "AUTO_CLAMPED"]], "z": [[3.4837722778320312, 0.0, "BEZIER", "AUTO", 16.666666666666668, 3.4837722778320312, "AUTO_CLAMPED"]], "y": [[1.4936577081680298, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.4936577081680298, "AUTO_CLAMPED"]]}}, "Pump": {"location": {"z": [[-0.0, 683.3333333333334, "LINEAR", "AUTO"], [-0.10627399384975433, 49.999999999999886, "LINEAR", "AUTO"], [-0.7439179420471191, 66.66666666666674, "LINEAR", "AUTO"], [-0.7439179420471191, 200.0, "LINEAR", "AUTO"], [-0.18597948551177979, 66.66666666666674, "LINEAR", "AUTO"], [-0.0, 66.66666666666652, "LINEAR", "AUTO"]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "CONSTANT", "AUTO"], [-2.204763704938273e-09, 683.3333333333334, "LINEAR", "AUTO"], [-2.204763704938273e-09, 66.66666666666663, "LINEAR", "AUTO"], [1.5205265935236412e-09, 116.66666666666674, "LINEAR", "AUTO"], [-0.01397116482257843, 66.66666666666663, "LINEAR", "AUTO"], [-0.01397116482257843, 49.999999999999886, "LINEAR", "AUTO"], [1.5205265935236412e-09, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 1.5205265935236412e-09, "AUTO_CLAMPED"]], "z": [[1.2549771070480347, 0.0, "CONSTANT", "AUTO"], [1.2549771070480347, 683.3333333333334, "LINEAR", "AUTO"], [0.4066495895385742, 66.66666666666663, "LINEAR", "AUTO"], [0.4066495895385742, 116.66666666666674, "LINEAR", "AUTO"], [0.4519183039665222, 66.66666666666663, "LINEAR", "AUTO"], [0.4519183039665222, 49.999999999999886, "LINEAR", "AUTO"], [1.2549771070480347, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 1.2549771070480347, "AUTO_CLAMPED"]], "y": [[1.7459099292755127, 0.0, "CONSTANT", "AUTO"], [1.199751853942871, 683.3333333333334, "LINEAR", "AUTO"], [1.199751853942871, 66.66666666666663, "LINEAR", "AUTO"], [1.5027252435684204, 116.66666666666674, "LINEAR", "AUTO"], [1.5814520120620728, 66.66666666666663, "LINEAR", "AUTO"], [1.5814520120620728, 49.999999999999886, "LINEAR", "AUTO"], [1.7459099292755127, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 1.7459099292755127, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "CONSTANT", "AUTO"], [0.0, 683.3333333333334, "LINEAR", "AUTO"], [0.0, 66.66666666666663, "LINEAR", "AUTO"], [-24.580495030325643, 116.66666666666674, "LINEAR", "AUTO"], [-15.192167789711336, 66.66666666666663, "LINEAR", "AUTO"], [-15.192167789711336, 49.999999999999886, "LINEAR", "AUTO"], [0.0, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 0.0, "AUTO_CLAMPED"]], "z": [[0.0, 0.0, "CONSTANT", "AUTO"], [0.0, 683.3333333333334, "LINEAR", "AUTO"], [0.0, 66.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"], [-9.025331207124422e-09, 66.66666666666663, "LINEAR", "AUTO"], [-9.025331207124422e-09, 49.999999999999886, "LINEAR", "AUTO"], [0.0, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "CONSTANT", "AUTO"], [0.0, 683.3333333333334, "LINEAR", "AUTO"], [0.0, 66.66666666666663, "LINEAR", "AUTO"], [8.004127933608693e-08, 116.66666666666674, "LINEAR", "AUTO"], [1.31019960381489e-07, 66.66666666666663, "LINEAR", "AUTO"], [1.31019960381489e-07, 49.999999999999886, "LINEAR", "AUTO"], [0.0, 150.0, "BEZIER", "AUTO", 1183.3333333333333, 0.0, "AUTO_CLAMPED"]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [-10.132303034637006, 50.0, "LINEAR", "AUTO"], [0.0, 33.33333333333333, "LINEAR", "AUTO"], [0.0, 99.99999999999999, "LINEAR", "AUTO"], [-7.955241708397972, 83.33333333333337, "LINEAR", "AUTO"], [-10.701222787779573, 99.99999999999994, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"]]}, "location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[2.990000009536743, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.990000009536743, "AUTO_CLAMPED"]], "y": [[2.104297161102295, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.104297161102295, "AUTO_CLAMPED"]]}}}, "FireEmpty": {"Gun": {"location": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 50.0, "LINEAR", "AUTO"], [-0.015234995633363724, 133.33333333333331, "LINEAR", "AUTO"], [-0.0032073669135570526, 166.66666666666669, "LINEAR", "AUTO"], [0.0, 150.0, "LINEAR", "AUTO"], [0.1729116439819336, 183.33333333333337, "LINEAR", "AUTO"], [0.13706907629966736, 83.33333333333326, "LINEAR", "AUTO"], [0.13706907629966736, 200.0, "LINEAR", "AUTO"], [0.08123889565467834, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [-0.7130982875823975, 50.0, "LINEAR", "AUTO"], [-0.8931010961532593, 133.33333333333331, "LINEAR", "AUTO"], [-0.1880212426185608, 166.66666666666669, "LINEAR", "AUTO"], [-0.0, 150.0, "LINEAR", "AUTO"], [0.07001475989818573, 183.33333333333337, "LINEAR", "AUTO"], [0.3594728708267212, 83.33333333333326, "LINEAR", "AUTO"], [0.3594728708267212, 200.0, "LINEAR", "AUTO"], [0.052131712436676025, 166.66666666666663, "LINEAR", "AUTO"], [-0.0, 116.66666666666674, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [-0.05462139472365379, 50.0, "LINEAR", "AUTO"], [0.33006909489631653, 133.33333333333331, "LINEAR", "AUTO"], [0.06948822736740112, 166.66666666666669, "LINEAR", "AUTO"], [0.0, 150.0, "LINEAR", "AUTO"], [0.1356278508901596, 183.33333333333337, "LINEAR", "AUTO"], [0.16076654195785522, 83.33333333333326, "LINEAR", "AUTO"], [0.16076654195785522, 200.0, "LINEAR", "AUTO"], [0.13280370831489563, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [5.533829083941263, 83.33333333333333, "LINEAR", "AUTO"], [-6.777895961066664, 133.33333333333337, "LINEAR", "AUTO"], [-1.4269255553586289, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"], [-1.6187724423744758, 216.66666666666663, "LINEAR", "AUTO"], [-3.0496036919995886, 100.0, "LINEAR", "AUTO"], [-1.5771150119048625, 216.66666666666663, "LINEAR", "AUTO"], [-1.3797563756722266, 133.33333333333348, "LINEAR", "AUTO"], [0.0, 116.66666666666652, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [0.20789931232904474, 83.33333333333333, "LINEAR", "AUTO"], [-0.2137078679498249, 133.33333333333337, "LINEAR", "AUTO"], [-0.04499113641374835, 166.66666666666663, "LINEAR", "AUTO"], [-0.0, 116.66666666666669, "LINEAR", "AUTO"], [6.481160527009576, 216.66666666666663, "LINEAR", "AUTO"], [6.3670886839075465, 100.0, "LINEAR", "AUTO"], [2.910396325865089, 216.66666666666663, "LINEAR", "AUTO"], [2.9018462096847024, 133.33333333333348, "LINEAR", "AUTO"], [-0.0, 116.66666666666652, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.299797573280649, 83.33333333333333, "LINEAR", "AUTO"], [-0.3922261210480681, 133.33333333333337, "LINEAR", "AUTO"], [-0.08257391881641295, 166.66666666666663, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"], [-1.7981676810899783, 216.66666666666663, "LINEAR", "AUTO"], [-1.8284025806680975, 100.0, "LINEAR", "AUTO"], [4.424185025436767, 216.66666666666663, "LINEAR", "AUTO"], [0.5393851613977845, 133.33333333333348, "LINEAR", "AUTO"], [0.0, 116.66666666666652, "LINEAR", "AUTO"]]}}, "Loop": {"rotation_euler": {"z": [[0.0, 0.0, "LINEAR", "AUTO"], [28.83552188323058, 50.0, "LINEAR", "AUTO"], [-11.070683087911195, 50.0, "LINEAR", "AUTO"], [-2.56723823045354, 33.33333333333334, "LINEAR", "AUTO"], [7.0765451287518255, 49.99999999999997, "LINEAR", "AUTO"], [80.15762477840892, 116.66666666666669, "LINEAR", "AUTO"], [60.820607917294126, 50.0, "LINEAR", "AUTO"], [-0.0, 83.33333333333337, "LINEAR", "AUTO"]]}, "location": {"x": [[0.2532634139060974, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.2532634139060974, "AUTO_CLAMPED"]], "z": [[3.4837722778320312, 0.0, "BEZIER", "AUTO", 16.666666666666668, 3.4837722778320312, "AUTO_CLAMPED"]], "y": [[1.4936577081680298, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.4936577081680298, "AUTO_CLAMPED"]]}}, "Pump": {"location": {"z": [[-0.0, 683.3333333333334, "LINEAR", "AUTO"], [-0.10627399384975433, 49.999999999999886, "LINEAR", "AUTO"], [-0.7439179420471191, 66.66666666666674, "LINEAR", "AUTO"], [-0.7439179420471191, 200.0, "LINEAR", "AUTO"], [-0.18597948551177979, 66.66666666666674, "LINEAR", "AUTO"], [-0.0, 66.66666666666652, "LINEAR", "AUTO"]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.5205265935236412e-09, "AUTO_CLAMPED"]], "z": [[1.2549771070480347, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.2549771070480347, "AUTO_CLAMPED"]], "y": [[-4.465472221374512, 0.0, "BEZIER", "AUTO", 16.666666666666668, -4.465472221374512, "AUTO_CLAMPED"]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [-10.132303034637006, 50.0, "LINEAR", "AUTO"], [0.0, 33.33333333333333, "LINEAR", "AUTO"], [0.0, 99.99999999999999, "LINEAR", "AUTO"], [-7.955241708397972, 83.33333333333337, "LINEAR", "AUTO"], [-10.701222787779573, 99.99999999999994, "LINEAR", "AUTO"], [0.0, 116.66666666666669, "LINEAR", "AUTO"]]}, "location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[2.990000009536743, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.990000009536743, "AUTO_CLAMPED"]], "y": [[2.104297161102295, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.104297161102295, "AUTO_CLAMPED"]]}}}, "Inspect": {"Gun": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 50.0, 0.0, "AUTO_CLAMPED"], [-0.12323401868343353, 150.0, "BEZIER", "AUTO", 100.0, -0.12323401868343353, "AUTO_CLAMPED", 244.44443384806314, -0.12323401868343353, "AUTO_CLAMPED"], [0.6714629530906677, 283.33333333333337, "BEZIER", "AUTO", 338.8888994852702, 0.6316179633140564, "AUTO_CLAMPED", 550.0, 0.720683217048645, "AUTO_CLAMPED"], [0.720683217048645, 350.0, "BEZIER", "AUTO", 666.6666666666666, 0.6878942847251892, "AUTO_CLAMPED", 822.2222010294596, 0.7316128611564636, "AUTO_CLAMPED"], [0.7498289346694946, 116.66666666666663, "BEZIER", "AUTO", 861.1111323038737, 0.7498289346694946, "AUTO_CLAMPED", 938.8888676961263, 0.7498289346694946, "AUTO_CLAMPED"], [-0.2174956500530243, 116.66666666666663, "BEZIER", "AUTO", 977.7777989705404, -0.2174956500530243, "AUTO_CLAMPED", 1055.555534362793, -0.2174956500530243, "AUTO_CLAMPED"], [0.6381056308746338, 116.66666666666663, "BEZIER", "AUTO", 1094.4444020589192, 0.25491249561309814, "AUTO_CLAMPED", 1177.7777353922525, 1.0760406255722046, "AUTO_CLAMPED"], [1.39745032787323, 133.33333333333326, "BEZIER", "AUTO", 1222.2222646077473, 1.39745032787323, "AUTO_CLAMPED", 1305.5555979410806, 1.39745032787323, "AUTO_CLAMPED"], [0.7498289346694946, 116.66666666666674, "BEZIER", "AUTO", 1344.4444020589192, 0.7582998871803284, "AUTO_CLAMPED", 1416.6666666666667, 0.7425681352615356, "AUTO_CLAMPED"], [0.7425681352615356, 100.00000000000023, "BEZIER", "AUTO", 1450.0, 0.7498289346694946, "AUTO_CLAMPED", 1572.2222646077473, 0.7232059836387634, "AUTO_CLAMPED"], [0.0, 266.6666666666665, "BEZIER", "AUTO", 1661.111068725586, 0.0, "AUTO_CLAMPED", 1838.888931274414, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 50.0, -0.0, "AUTO_CLAMPED"], [0.004470236599445343, 150.0, "BEZIER", "AUTO", 100.0, 0.004470236599445343, "AUTO_CLAMPED", 244.44443384806314, 0.004470236599445343, "AUTO_CLAMPED"], [-0.7847118377685547, 283.33333333333337, "BEZIER", "AUTO", 338.8888994852702, -0.7847118377685547, "AUTO_CLAMPED", 550.0, -0.7847118377685547, "AUTO_CLAMPED"], [-0.7614920139312744, 350.0, "BEZIER", "AUTO", 666.6666666666666, -0.7614920139312744, "AUTO_CLAMPED", 822.2222010294596, -0.7614920139312744, "AUTO_CLAMPED"], [-0.8043150305747986, 116.66666666666663, "BEZIER", "AUTO", 861.1111323038737, -0.8043150305747986, "AUTO_CLAMPED", 938.8888676961263, -0.8043150305747986, "AUTO_CLAMPED"], [0.2914704382419586, 116.66666666666663, "BEZIER", "AUTO", 977.7777989705404, 0.2914704382419586, "AUTO_CLAMPED", 1055.555534362793, 0.2914704382419586, "AUTO_CLAMPED"], [-1.007084608078003, 116.66666666666663, "BEZIER", "AUTO", 1094.4444020589192, -0.7027649879455566, "AUTO_CLAMPED", 1177.7777353922525, -1.3548784255981445, "AUTO_CLAMPED"], [-1.3548784255981445, 133.33333333333326, "BEZIER", "AUTO", 1222.2222646077473, -1.3548784255981445, "AUTO_CLAMPED", 1305.5555979410806, -1.3548784255981445, "AUTO_CLAMPED"], [-0.8043150305747986, 116.66666666666674, "BEZIER", "AUTO", 1344.4444020589192, -0.9178578853607178, "AUTO_CLAMPED", 1416.6666666666667, -0.7069925665855408, "AUTO_CLAMPED"], [-0.7069925665855408, 100.00000000000023, "BEZIER", "AUTO", 1450.0, -0.7431455850601196, "AUTO_CLAMPED", 1572.2222646077473, -0.6105844974517822, "AUTO_CLAMPED"], [-0.0, 266.6666666666665, "BEZIER", "AUTO", 1661.111068725586, -0.0, "AUTO_CLAMPED", 1838.888931274414, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 50.0, 0.0, "AUTO_CLAMPED"], [-0.8819321990013123, 150.0, "BEZIER", "AUTO", 100.0, -0.8819321990013123, "AUTO_CLAMPED", 244.44443384806314, -0.8819321990013123, "AUTO_CLAMPED"], [0.7901571393013, 283.33333333333337, "BEZIER", "AUTO", 338.8888994852702, 0.7901571393013, "AUTO_CLAMPED", 550.0, 0.7901571393013, "AUTO_CLAMPED"], [0.597180962562561, 350.0, "BEZIER", "AUTO", 666.6666666666666, 0.7901571393013, "AUTO_CLAMPED", 822.2222010294596, 0.5328555703163147, "AUTO_CLAMPED"], [0.0791918933391571, 116.66666666666663, "BEZIER", "AUTO", 861.1111323038737, 0.0791918933391571, "AUTO_CLAMPED", 938.8888676961263, 0.0791918933391571, "AUTO_CLAMPED"], [2.510791063308716, 116.66666666666663, "BEZIER", "AUTO", 977.7777989705404, 0.9371596574783325, "AUTO_CLAMPED", 1055.555534362793, 4.084422588348389, "AUTO_CLAMPED"], [5.609644889831543, 116.66666666666663, "BEZIER", "AUTO", 1077.044932047526, 5.669650554656982, "ALIGNED", 1188.8394673665364, 5.550473213195801, "ALIGNED"], [1.905346393585205, 133.33333333333326, "BEZIER", "AUTO", 1222.2222646077473, 3.3027164936065674, "AUTO_CLAMPED", 1305.5555979410806, 0.6826475858688354, "AUTO_CLAMPED"], [0.0791918933391571, 116.66666666666674, "BEZIER", "AUTO", 1344.4444020589192, 0.37730181217193604, "AUTO_CLAMPED", 1416.6666666666667, -0.17633089423179626, "AUTO_CLAMPED"], [-0.42653748393058777, 100.00000000000023, "BEZIER", "AUTO", 1450.0, -0.42653748393058777, "AUTO_CLAMPED", 1572.2222646077473, -0.42653748393058777, "AUTO_CLAMPED"], [0.0, 266.6666666666665, "BEZIER", "AUTO", 1661.111068725586, 0.0, "AUTO_CLAMPED", 1838.888931274414, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 44.444445768992104, 0.0, "AUTO_CLAMPED"], [-4.633752304645683, 133.33333333333334, "BEZIER", "AUTO", 88.88888359069824, -4.633752304645683, "AUTO_CLAMPED", 166.66666666666666, -4.633752304645683, "AUTO_CLAMPED"], [5.477748961987227, 100.0, "BEZIER", "AUTO", 200.0, 5.477748961987227, "AUTO_CLAMPED", 344.44443384806317, 5.477748961987227, "AUTO_CLAMPED"], [-30.605503934936856, 333.33333333333326, "BEZIER", "AUTO", 455.55556615193683, -29.397615716071368, "AUTO_CLAMPED", 638.8888676961263, -31.390630764935235, "AUTO_CLAMPED"], [-31.390630764935235, 216.66666666666674, "BEZIER", "AUTO", 711.1111323038737, -31.390630764935235, "AUTO_CLAMPED", 822.2222010294596, -31.390630764935235, "AUTO_CLAMPED"], [-17.61978265282124, 116.66666666666663, "BEZIER", "EASE_IN_OUT", 861.1111323038737, -19.94842124466849, "AUTO_CLAMPED", 1066.6666666666667, -7.639905534796823, "AUTO_CLAMPED"], [-7.639905534796823, 500.0, "BEZIER", "AUTO", 1233.3333333333335, -17.248046192148713, "AUTO_CLAMPED", 1427.7777353922525, -6.0385489008671165, "AUTO_CLAMPED"], [-2.2699262857418203, 83.33333333333348, "BEZIER", "AUTO", 1455.5555979410808, -3.903406153111743, "AUTO_CLAMPED", 1555.5555979410806, 1.977121198665251, "AUTO_CLAMPED"], [2.8329244783173966, 216.66666666666652, "BEZIER", "AUTO", 1627.7777353922527, 2.8329244783173966, "AUTO_CLAMPED", 1750.0, 2.8329244783173966, "AUTO_CLAMPED"], [0.0, 149.99999999999977, "BEZIER", "AUTO", 1800.0, 0.0, "AUTO_CLAMPED", 1900.0, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 44.444445768992104, -0.0, "AUTO_CLAMPED"], [-3.1105595018039556, 133.33333333333334, "BEZIER", "AUTO", 88.88888359069824, -1.7627949851521283, "AUTO_CLAMPED", 177.77778307596842, -4.458324018455783, "AUTO_CLAMPED"], [-6.432775040042382, 133.33333333333334, "BEZIER", "AUTO", 222.22221692403158, -5.391058066607309, "AUTO_CLAMPED", 366.66666666666663, -8.776637696662767, "AUTO_CLAMPED"], [-11.67222638585068, 299.99999999999994, "BEZIER", "AUTO", 466.6666666666667, -11.67222638585068, "AUTO_CLAMPED", 638.8888676961263, -11.67222638585068, "AUTO_CLAMPED"], [-4.456549023045226, 216.66666666666674, "BEZIER", "AUTO", 711.1111323038737, -4.456549023045226, "AUTO_CLAMPED", 822.2222010294596, -4.456549023045226, "AUTO_CLAMPED"], [-13.314149220808385, 116.66666666666663, "BEZIER", "EASE_IN_OUT", 861.1111323038737, -4.456549023045226, "AUTO_CLAMPED", 1066.6666666666667, -51.27529219370166, "AUTO_CLAMPED"], [-361.35626702102377, 500.0, "BEZIER", "AUTO", 1233.3333333333335, -361.35626702102377, "AUTO_CLAMPED", 1427.7777353922525, -361.35626702102377, "AUTO_CLAMPED"], [-355.8403428511049, 83.33333333333348, "BEZIER", "AUTO", 1455.5555979410808, -357.0212279170867, "AUTO_CLAMPED", 1555.5555979410806, -352.7700635361574, "AUTO_CLAMPED"], [-352.7700635361574, 216.66666666666652, "BEZIER", "AUTO", 1627.7777353922527, -352.7700635361574, "AUTO_CLAMPED", 1750.0, -352.7700635361574, "AUTO_CLAMPED"], [-360.00001001791264, 149.99999999999977, "BEZIER", "AUTO", 1800.0, -360.00001001791264, "AUTO_CLAMPED", 1900.0, -360.00001001791264, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 44.444445768992104, 0.0, "AUTO_CLAMPED"], [0.33971415928555554, 133.33333333333334, "BEZIER", "AUTO", 88.88888359069824, 0.33971415928555554, "AUTO_CLAMPED", 177.77778307596842, 0.33971415928555554, "AUTO_CLAMPED"], [-0.41244006589672083, 133.33333333333334, "BEZIER", "AUTO", 222.22221692403158, -0.41244006589672083, "AUTO_CLAMPED", 366.66666666666663, -0.41244006589672083, "AUTO_CLAMPED"], [44.46649859126397, 299.99999999999994, "BEZIER", "AUTO", 466.6666666666667, 44.46649859126397, "AUTO_CLAMPED", 638.8888676961263, 44.46649859126397, "AUTO_CLAMPED"], [44.02138882343258, 216.66666666666674, "BEZIER", "AUTO", 711.1111323038737, 44.02138882343258, "AUTO_CLAMPED", 822.2222010294596, 44.02138882343258, "AUTO_CLAMPED"], [47.94823533200216, 116.66666666666663, "BEZIER", "EASE_IN_OUT", 861.1111323038737, 47.88392910096649, "AUTO_CLAMPED", 1066.6666666666667, 48.223830049917595, "AUTO_CLAMPED"], [48.223830049917595, 500.0, "BEZIER", "AUTO", 1233.3333333333335, 47.94823533200216, "AUTO_CLAMPED", 1427.7777353922525, 48.26976307208593, "AUTO_CLAMPED"], [48.38842053344197, 83.33333333333348, "BEZIER", "AUTO", 1455.5555979410808, 48.38842053344197, "AUTO_CLAMPED", 1555.5555979410806, 48.38842053344197, "AUTO_CLAMPED"], [5.144987695152906, 216.66666666666652, "BEZIER", "AUTO", 1627.7777353922527, 12.57663649328781, "AUTO_CLAMPED", 1750.0, 0.0, "AUTO_CLAMPED"], [0.0, 149.99999999999977, "BEZIER", "AUTO", 1800.0, 0.0, "AUTO_CLAMPED", 1900.0, 0.0, "AUTO_CLAMPED"]]}}, "Loop": {"rotation_euler": {"z": [[-0.0, 516.6666666666666, "BEZIER", "AUTO", 544.444465637207, -0.0, "AUTO_CLAMPED"], [46.517741002802204, 83.33333333333337, "BOUNCE", "AUTO", 572.2222010294596, 46.517741002802204, "AUTO_CLAMPED"], [-0.0, 250.0, "BEZIER", "AUTO", 866.6666666666667, -0.0, "AUTO_CLAMPED"], [-0.0, 50.0, "BEZIER", "EASE_IN", 883.3333333333333, -0.0, "AUTO_CLAMPED", 983.3333333333333, -0.0, "AUTO_CLAMPED"], [142.2283622194905, 250.0, "BEZIER", "AUTO", 1066.6666666666667, 142.2283622194905, "AUTO_CLAMPED", 1216.6666666666665, 142.2283622194905, "AUTO_CLAMPED"], [142.2283622194905, 200.0, "BOUNCE", "AUTO", 1283.3333333333333, 142.2283622194905, "AUTO_CLAMPED"], [-0.0, 300.0, "BEZIER", "AUTO", 1750.0, -0.0, "AUTO_CLAMPED"]]}, "location": {"x": [[0.2532634139060974, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.2532634139060974, "AUTO_CLAMPED"]], "z": [[3.4837722778320312, 0.0, "BEZIER", "AUTO", 16.666666666666668, 3.4837722778320312, "AUTO_CLAMPED"]], "y": [[1.4936577081680298, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.4936577081680298, "AUTO_CLAMPED"]]}}, "Pump": {"location": {"z": [[-0.0, 483.3333333333333, "BEZIER", "AUTO", 533.3333333333334, -0.0, "AUTO_CLAMPED"], [-0.5437495112419128, 149.99999999999994, "BEZIER", "AUTO", 583.3333333333334, -0.5437495112419128, "AUTO_CLAMPED", 894.444465637207, -0.5437495112419128, "AUTO_CLAMPED"], [-0.5437495112419128, 783.3333333333335, "BEZIER", "AUTO", 1155.5555979410808, -0.5437495112419128, "AUTO_CLAMPED", 1461.111068725586, -0.5437495112419128, "AUTO_CLAMPED"], [-0.0, 133.33333333333326, "BEZIER", "AUTO", 1505.5555979410806, -0.0, "AUTO_CLAMPED", 1594.4444020589192, -0.0, "AUTO_CLAMPED"]]}}, "Shell": {"location": {"z": [[1.2549771070480347, 0.0, "BEZIER", "AUTO", 161.11111640930176, 1.2549771070480347, "AUTO_CLAMPED"], [1.2549771070480347, 483.3333333333333, "BEZIER", "AUTO", 322.22220102945965, 1.2549771070480347, "AUTO_CLAMPED", 533.3333333333334, 1.2549771070480347, "AUTO_CLAMPED"], [0.6961657404899597, 149.99999999999994, "BEZIER", "AUTO", 583.3333333333334, 0.6961657404899597, "AUTO_CLAMPED", 894.444465637207, 0.6961657404899597, "AUTO_CLAMPED"], [0.6961657404899597, 783.3333333333335, "BEZIER", "AUTO", 1155.5555979410808, 0.6961657404899597, "AUTO_CLAMPED", 1461.111068725586, 0.6961657404899597, "AUTO_CLAMPED"], [1.2549771070480347, 133.33333333333326, "BEZIER", "AUTO", 1505.5555979410806, 1.2549771070480347, "AUTO_CLAMPED", 1594.4444020589192, 1.2549771070480347, "AUTO_CLAMPED"]], "x": [[1.5205265935236412e-09, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.5205265935236412e-09, "AUTO_CLAMPED"]], "y": [[1.7459099292755127, 0.0, "BEZIER", "AUTO", 16.666666666666668, 1.7459099292755127, "AUTO_CLAMPED"]]}}, "Sight": {"rotation_euler": {"x": [[0.0, 1083.3333333333333, "BEZIER", "AUTO", 1161.111068725586, 0.0, "AUTO_CLAMPED"], [-59.84361082822633, 233.33333333333348, "BOUNCE", "AUTO", 1238.888931274414, -59.84361082822633, "AUTO_CLAMPED"], [0.0, 350.0, "BEZIER", "AUTO", 1783.3333333333333, 0.0, "AUTO_CLAMPED"]]}, "location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[2.990000009536743, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.990000009536743, "AUTO_CLAMPED"]], "y": [[2.104297161102295, 0.0, "BEZIER", "AUTO", 16.666666666666668, 2.104297161102295, "AUTO_CLAMPED"]]}}}, "Jammed": {"Gun": {"location": {"x": [[1.7611019611358643, 0.0, "BEZIER", "AUTO", 72.22222487131755, 1.7611019611358643, "AUTO_CLAMPED"], [0.4335063397884369, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.4335063397884369, "AUTO_CLAMPED", 261.11111640930176, 0.4335063397884369, "AUTO_CLAMPED"], [0.5203688144683838, 133.33333333333331, "BEZIER", "AUTO", 305.55556615193683, 0.5203688144683838, "AUTO_CLAMPED", 394.44443384806317, 0.5203688144683838, "AUTO_CLAMPED"], [0.5093004703521729, 133.33333333333331, "BEZIER", "AUTO", 438.88889948527014, 0.5203688144683838, "AUTO_CLAMPED", 516.6666666666666, 0.5009992122650146, "AUTO_CLAMPED"], [0.46423017978668213, 100.00000000000006, "BEZIER", "AUTO", 550.0, 0.46423017978668213, "AUTO_CLAMPED", 611.1111323038737, 0.46423017978668213, "AUTO_CLAMPED"], [0.5423690676689148, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, 0.5423690676689148, "AUTO_CLAMPED", 716.6666666666666, 0.5423690676689148, "AUTO_CLAMPED"], [0.46423017978668213, 150.0, "BEZIER", "AUTO", 766.6666666666666, 0.483991414308548, "AUTO_CLAMPED", 877.7777989705403, 0.4400775730609894, "AUTO_CLAMPED"], [0.4400775730609894, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, 0.46423017978668213, "AUTO_CLAMPED", 1072.2222646077473, 0.4115335941314697, "AUTO_CLAMPED"], [0.0, 216.66666666666652, "BEZIER", "AUTO", 1144.4444020589192, 0.0, "AUTO_CLAMPED", 1288.888931274414, 0.0, "AUTO_CLAMPED"]], "z": [[0.31467199325561523, 0.0, "BEZIER", "AUTO", 72.22222487131755, 0.31467199325561523, "AUTO_CLAMPED"], [0.1592063307762146, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.1592063307762146, "AUTO_CLAMPED", 261.11111640930176, 0.1592063307762146, "AUTO_CLAMPED"], [0.6345540285110474, 133.33333333333331, "BEZIER", "AUTO", 305.55556615193683, 0.6345540285110474, "AUTO_CLAMPED", 394.44443384806317, 0.6345540285110474, "AUTO_CLAMPED"], [0.5526263117790222, 133.33333333333331, "BEZIER", "AUTO", 438.88889948527014, 0.6345540285110474, "AUTO_CLAMPED", 516.6666666666666, 0.49118053913116455, "AUTO_CLAMPED"], [0.21367275714874268, 100.00000000000006, "BEZIER", "AUTO", 550.0, 0.3746391534805298, "AUTO_CLAMPED", 611.1111323038737, 0.07953411340713501, "AUTO_CLAMPED"], [-0.08545513451099396, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, -0.08545513451099396, "AUTO_CLAMPED", 716.6666666666666, -0.08545513451099396, "AUTO_CLAMPED"], [0.21367275714874268, 150.0, "BEZIER", "AUTO", 766.6666666666666, 0.21367275714874268, "AUTO_CLAMPED", 877.7777989705403, 0.21367275714874268, "AUTO_CLAMPED"], [-0.23178784549236298, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, -0.23178784549236298, "AUTO_CLAMPED", 1072.2222646077473, -0.23178784549236298, "AUTO_CLAMPED"], [-0.0, 216.66666666666652, "BEZIER", "AUTO", 1144.4444020589192, -0.0, "AUTO_CLAMPED", 1288.888931274414, -0.0, "AUTO_CLAMPED"]], "y": [[0.8750439286231995, 0.0, "BEZIER", "AUTO", 72.22222487131755, 0.8750439286231995, "AUTO_CLAMPED"], [0.8282241821289062, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.8282241821289062, "AUTO_CLAMPED", 261.11111640930176, 0.8282241821289062, "AUTO_CLAMPED"], [0.8524319529533386, 133.33333333333331, "BEZIER", "AUTO", 305.55556615193683, 0.8524319529533386, "AUTO_CLAMPED", 394.44443384806317, 0.8524319529533386, "AUTO_CLAMPED"], [0.694107174873352, 133.33333333333331, "BEZIER", "AUTO", 438.88889948527014, 0.7370265126228333, "AUTO_CLAMPED", 516.6666666666666, 0.6619176864624023, "AUTO_CLAMPED"], [0.5792746543884277, 100.00000000000006, "BEZIER", "AUTO", 550.0, 0.6705016493797302, "AUTO_CLAMPED", 611.1111323038737, 0.5032521486282349, "AUTO_CLAMPED"], [0.3579166531562805, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, 0.3579166531562805, "AUTO_CLAMPED", 716.6666666666666, 0.3579166531562805, "AUTO_CLAMPED"], [0.5792746543884277, 150.0, "BEZIER", "AUTO", 766.6666666666666, 0.5792746543884277, "AUTO_CLAMPED", 877.7777989705403, 0.5792746543884277, "AUTO_CLAMPED"], [0.12604567408561707, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, 0.23269972205162048, "AUTO_CLAMPED", 1072.2222646077473, 0.0, "AUTO_CLAMPED"], [0.0, 216.66666666666652, "BEZIER", "AUTO", 1144.4444020589192, 0.0, "AUTO_CLAMPED", 1288.888931274414, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[-18.983153297952903, 0.0, "BEZIER", "AUTO", 88.88889153798421, -18.983153297952903, "AUTO_CLAMPED"], [-19.09516157015194, 266.6666666666667, "BEZIER", "AUTO", 177.77776718139648, -18.983153297952903, "AUTO_CLAMPED", 300.0, -19.137165526000228, "AUTO_CLAMPED"], [-22.28346484640992, 99.99999999999994, "BEZIER", "AUTO", 333.3333333333333, -22.28346484640992, "AUTO_CLAMPED", 405.55556615193683, -22.28346484640992, "AUTO_CLAMPED"], [-17.511022135572542, 116.66666666666669, "BEZIER", "AUTO", 444.44443384806317, -18.973317825548083, "AUTO_CLAMPED", 516.6666666666666, -16.25762607381455, "AUTO_CLAMPED"], [-14.249356651213104, 100.00000000000006, "BEZIER", "AUTO", 550.0, -16.361834269981436, "AUTO_CLAMPED", 611.1111323038737, -12.488958208686002, "AUTO_CLAMPED"], [-9.18919392913623, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, -9.18919392913623, "AUTO_CLAMPED", 716.6666666666666, -9.18919392913623, "AUTO_CLAMPED"], [-14.249356651213104, 150.0, "BEZIER", "AUTO", 766.6666666666666, -14.249356651213104, "AUTO_CLAMPED", 877.7777989705403, -14.249356651213104, "AUTO_CLAMPED"], [-4.831175507510316, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, -7.957230147220092, "AUTO_CLAMPED", 1094.4444020589192, 0.0, "AUTO_CLAMPED"], [0.0, 283.33333333333326, "BEZIER", "AUTO", 1188.888931274414, 0.0, "AUTO_CLAMPED", 1377.7777353922527, 0.0, "AUTO_CLAMPED"]], "z": [[86.04810969222216, 0.0, "BEZIER", "AUTO", 88.88889153798421, 86.04810969222216, "AUTO_CLAMPED"], [12.109782818233683, 266.6666666666667, "BEZIER", "AUTO", 177.77776718139648, 12.109782818233683, "AUTO_CLAMPED", 300.0, 12.109782818233683, "AUTO_CLAMPED"], [14.211438856035777, 99.99999999999994, "BEZIER", "AUTO", 333.3333333333333, 14.211438856035777, "AUTO_CLAMPED", 405.55556615193683, 14.211438856035777, "AUTO_CLAMPED"], [11.62535165135053, 116.66666666666669, "BEZIER", "AUTO", 444.44443384806317, 12.759742765878451, "AUTO_CLAMPED", 516.6666666666666, 10.65301616639127, "AUTO_CLAMPED"], [9.913802721767361, 100.00000000000006, "BEZIER", "AUTO", 550.0, 9.913802721767361, "AUTO_CLAMPED", 611.1111323038737, 9.913802721767361, "AUTO_CLAMPED"], [14.555850291160024, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, 14.555850291160024, "AUTO_CLAMPED", 716.6666666666666, 14.555850291160024, "AUTO_CLAMPED"], [9.913802721767361, 150.0, "BEZIER", "AUTO", 766.6666666666666, 9.913802721767361, "AUTO_CLAMPED", 877.7777989705403, 9.913802721767361, "AUTO_CLAMPED"], [10.868919299829018, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, 10.868919299829018, "AUTO_CLAMPED", 1094.4444020589192, 10.868919299829018, "AUTO_CLAMPED"], [-0.0, 283.33333333333326, "BEZIER", "AUTO", 1188.888931274414, -0.0, "AUTO_CLAMPED", 1377.7777353922527, -0.0, "AUTO_CLAMPED"]], "y": [[29.613753637261834, 0.0, "BEZIER", "AUTO", 88.88889153798421, 29.613753637261834, "AUTO_CLAMPED"], [14.500921909854782, 266.6666666666667, "BEZIER", "AUTO", 177.77776718139648, 14.500921909854782, "AUTO_CLAMPED", 300.0, 14.500921909854782, "AUTO_CLAMPED"], [14.956577489764673, 99.99999999999994, "BEZIER", "AUTO", 333.3333333333333, 14.956577489764673, "AUTO_CLAMPED", 405.55556615193683, 14.956577489764673, "AUTO_CLAMPED"], [12.810625967647754, 116.66666666666669, "BEZIER", "AUTO", 444.44443384806317, 13.804464595661505, "AUTO_CLAMPED", 516.6666666666666, 11.958763920590117, "AUTO_CLAMPED"], [8.863413542520487, 100.00000000000006, "BEZIER", "AUTO", 550.0, 11.223185844151947, "AUTO_CLAMPED", 611.1111323038737, 6.896936339903054, "AUTO_CLAMPED"], [3.8025490185063964, 83.33333333333326, "BEZIER", "AUTO", 638.8888676961263, 3.8025490185063964, "AUTO_CLAMPED", 716.6666666666666, 3.8025490185063964, "AUTO_CLAMPED"], [8.863413542520487, 150.0, "BEZIER", "AUTO", 766.6666666666666, 8.863413542520487, "AUTO_CLAMPED", 877.7777989705403, 8.863413542520487, "AUTO_CLAMPED"], [4.843448503675183, 183.33333333333337, "BEZIER", "AUTO", 938.8888676961263, 6.679401645027318, "AUTO_CLAMPED", 1094.4444020589192, 2.0060666865941186, "AUTO_CLAMPED"], [0.0, 283.33333333333326, "BEZIER", "AUTO", 1188.888931274414, 0.0, "AUTO_CLAMPED", 1377.7777353922527, 0.0, "AUTO_CLAMPED"]]}}, "Pump": {"location": {"z": [[-0.0, 250.0, "BEZIER", "AUTO", 294.4444338480631, -0.0, "AUTO_CLAMPED"], [-0.7347903847694397, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, -0.7347903847694397, "AUTO_CLAMPED", 438.88889948527014, -0.7347903847694397, "AUTO_CLAMPED"], [-0.7347903847694397, 166.66666666666669, "BEZIER", "EASE_OUT", 494.4444338480631, -0.7347903847694397, "AUTO_CLAMPED", 561.1111323038737, -0.7347903847694397, "AUTO_CLAMPED"], [-0.5442891716957092, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, -0.5442891716957092, "AUTO_CLAMPED", 627.7777989705403, -0.5442891716957092, "AUTO_CLAMPED"], [-0.5442891716957092, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, -0.5442891716957092, "AUTO_CLAMPED", 733.3333333333333, -0.5442891716957092, "AUTO_CLAMPED"], [-0.7347903847694397, 50.0, "BEZIER", "EASE_OUT", 750.0, -0.7347903847694397, "AUTO_CLAMPED", 805.555534362793, -0.7347903847694397, "AUTO_CLAMPED"], [-0.7347903847694397, 116.66666666666663, "BEZIER", "EASE_OUT", 844.444465637207, -0.7347903847694397, "AUTO_CLAMPED", 916.6666666666666, -0.7347903847694397, "AUTO_CLAMPED"], [-0.0, 100.0, "BEZIER", "AUTO", 950.0, -0.0, "AUTO_CLAMPED", 1016.6666666666666, -0.0, "AUTO_CLAMPED"]]}}, "Shell": {"location": {"x": [[-0.0016984597314149141, 0.0, "BEZIER", "AUTO", 83.33333333333333, -0.0016984597314149141, "AUTO_CLAMPED"], [-0.0016984597314149141, 250.0, "BEZIER", "AUTO", 166.66666666666666, -0.0016984597314149141, "AUTO_CLAMPED", 294.4444338480631, -0.0016984597314149141, "AUTO_CLAMPED"], [-0.007186012342572212, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, -0.007186012342572212, "AUTO_CLAMPED", 438.88889948527014, -0.007186012342572212, "AUTO_CLAMPED"], [-0.007186012342572212, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, -0.007186012342572212, "AUTO_CLAMPED", 561.1111323038737, -0.007186012342572212, "AUTO_CLAMPED"], [-0.005604023113846779, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, -0.005604023113846779, "AUTO_CLAMPED", 627.7777989705403, -0.005604023113846779, "AUTO_CLAMPED"], [-0.005604023113846779, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, -0.005604023113846779, "AUTO_CLAMPED", 733.3333333333333, -0.005604023113846779, "AUTO_CLAMPED"], [-0.00728671345859766, 50.0, "BEZIER", "AUTO", 750.0, -0.00728671345859766, "AUTO_CLAMPED", 805.555534362793, -0.00728671345859766, "AUTO_CLAMPED"], [-0.00728671345859766, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, -0.00728671345859766, "AUTO_CLAMPED", 916.6666666666666, -0.00728671345859766, "AUTO_CLAMPED"], [1.5205265935236412e-09, 100.0, "CONSTANT", "AUTO", 950.0, 1.5205265935236412e-09, "AUTO_CLAMPED"], [-0.00728671345859766, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, -0.00728671345859766, "AUTO_CLAMPED"]], "z": [[1.2552038431167603, 0.0, "BEZIER", "AUTO", 83.33333333333333, 1.2552038431167603, "AUTO_CLAMPED"], [1.2552038431167603, 250.0, "BEZIER", "AUTO", 166.66666666666666, 1.2552038431167603, "AUTO_CLAMPED", 294.4444338480631, 1.2552038431167603, "AUTO_CLAMPED"], [0.5118296146392822, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, 0.5118296146392822, "AUTO_CLAMPED", 438.88889948527014, 0.5118296146392822, "AUTO_CLAMPED"], [0.5118296146392822, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, 0.5118296146392822, "AUTO_CLAMPED", 561.1111323038737, 0.5118296146392822, "AUTO_CLAMPED"], [0.7032749652862549, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, 0.7032749652862549, "AUTO_CLAMPED", 627.7777989705403, 0.7032749652862549, "AUTO_CLAMPED"], [0.7032749652862549, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, 0.7032749652862549, "AUTO_CLAMPED", 733.3333333333333, 0.7032749652862549, "AUTO_CLAMPED"], [0.5241438150405884, 50.0, "BEZIER", "AUTO", 750.0, 0.5241438150405884, "AUTO_CLAMPED", 805.555534362793, 0.5241438150405884, "AUTO_CLAMPED"], [0.5241438150405884, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, 0.5241438150405884, "AUTO_CLAMPED", 916.6666666666666, 0.5241438150405884, "AUTO_CLAMPED"], [1.2549771070480347, 100.0, "CONSTANT", "AUTO", 950.0, 1.2549771070480347, "AUTO_CLAMPED"], [0.5241438150405884, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, 0.5241438150405884, "AUTO_CLAMPED"]], "y": [[1.7186778783798218, 0.0, "BEZIER", "AUTO", 83.33333333333333, 1.7186778783798218, "AUTO_CLAMPED"], [1.7186778783798218, 250.0, "BEZIER", "AUTO", 166.66666666666666, 1.7186778783798218, "AUTO_CLAMPED", 294.4444338480631, 1.7186778783798218, "AUTO_CLAMPED"], [1.6501657962799072, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, 1.6501657962799072, "AUTO_CLAMPED", 438.88889948527014, 1.6501657962799072, "AUTO_CLAMPED"], [1.6501657962799072, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, 1.6501657962799072, "AUTO_CLAMPED", 561.1111323038737, 1.6501657962799072, "AUTO_CLAMPED"], [1.6572562456130981, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, 1.6572562456130981, "AUTO_CLAMPED", 627.7777989705403, 1.6572562456130981, "AUTO_CLAMPED"], [1.6572562456130981, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, 1.6572562456130981, "AUTO_CLAMPED", 733.3333333333333, 1.6572562456130981, "AUTO_CLAMPED"], [1.6632939577102661, 50.0, "BEZIER", "AUTO", 750.0, 1.6632939577102661, "AUTO_CLAMPED", 805.555534362793, 1.6632939577102661, "AUTO_CLAMPED"], [1.6632939577102661, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, 1.6632939577102661, "AUTO_CLAMPED", 916.6666666666666, 1.6632939577102661, "AUTO_CLAMPED"], [1.7459099292755127, 100.0, "CONSTANT", "AUTO", 950.0, 1.7459099292755127, "AUTO_CLAMPED"], [1.6632939577102661, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, 1.6632939577102661, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[-7.092402266683656, 0.0, "BEZIER", "AUTO", 83.33333333333333, -7.092402266683656, "AUTO_CLAMPED"], [-7.092402266683656, 250.0, "BEZIER", "AUTO", 166.66666666666666, -7.092402266683656, "AUTO_CLAMPED", 294.4444338480631, -7.092402266683656, "AUTO_CLAMPED"], [-7.092402266683656, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, -7.092402266683656, "AUTO_CLAMPED", 438.88889948527014, -7.092402266683656, "AUTO_CLAMPED"], [-7.092402266683656, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, -7.092402266683656, "AUTO_CLAMPED", 561.1111323038737, -7.092402266683656, "AUTO_CLAMPED"], [-15.248571491877302, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, -15.248571491877302, "AUTO_CLAMPED", 627.7777989705403, -15.248571491877302, "AUTO_CLAMPED"], [-15.248571491877302, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, -15.248571491877302, "AUTO_CLAMPED", 733.3333333333333, -15.248571491877302, "AUTO_CLAMPED"], [-7.092402266683656, 50.0, "BEZIER", "AUTO", 750.0, -7.092402266683656, "AUTO_CLAMPED", 805.555534362793, -7.092402266683656, "AUTO_CLAMPED"], [-7.092402266683656, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, -7.092402266683656, "AUTO_CLAMPED", 916.6666666666666, -7.092402266683656, "AUTO_CLAMPED"], [0.0, 100.0, "CONSTANT", "AUTO", 950.0, 0.0, "AUTO_CLAMPED"], [-7.092402266683656, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, -7.092402266683656, "AUTO_CLAMPED"]], "z": [[0.9713454276947256, 0.0, "BEZIER", "AUTO", 83.33333333333333, 0.9713454276947256, "AUTO_CLAMPED"], [0.9713454276947256, 250.0, "BEZIER", "AUTO", 166.66666666666666, 0.9713454276947256, "AUTO_CLAMPED", 294.4444338480631, 0.9713454276947256, "AUTO_CLAMPED"], [0.9713454276947256, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, 0.9713454276947256, "AUTO_CLAMPED", 438.88889948527014, 0.9713454276947256, "AUTO_CLAMPED"], [0.9713454276947256, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, 0.9713454276947256, "AUTO_CLAMPED", 561.1111323038737, 0.9713454276947256, "AUTO_CLAMPED"], [1.0169068448835306, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, 1.0169068448835306, "AUTO_CLAMPED", 627.7777989705403, 1.0169068448835306, "AUTO_CLAMPED"], [1.0169068448835306, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, 1.0169068448835306, "AUTO_CLAMPED", 733.3333333333333, 1.0169068448835306, "AUTO_CLAMPED"], [0.9713454276947256, 50.0, "BEZIER", "AUTO", 750.0, 0.9713454276947256, "AUTO_CLAMPED", 805.555534362793, 0.9713454276947256, "AUTO_CLAMPED"], [0.9713454276947256, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, 0.9713454276947256, "AUTO_CLAMPED", 916.6666666666666, 0.9713454276947256, "AUTO_CLAMPED"], [-0.0, 100.0, "CONSTANT", "AUTO", 950.0, -0.0, "AUTO_CLAMPED"], [0.9713454276947256, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, 0.9713454276947256, "AUTO_CLAMPED"]], "y": [[0.39039896540381036, 0.0, "BEZIER", "AUTO", 83.33333333333333, 0.39039896540381036, "AUTO_CLAMPED"], [0.39039896540381036, 250.0, "BEZIER", "AUTO", 166.66666666666666, 0.39039896540381036, "AUTO_CLAMPED", 294.4444338480631, 0.39039896540381036, "AUTO_CLAMPED"], [0.39039896540381036, 133.33333333333331, "BEZIER", "AUTO", 338.8888994852702, 0.39039896540381036, "AUTO_CLAMPED", 438.88889948527014, 0.39039896540381036, "AUTO_CLAMPED"], [0.39039896540381036, 166.66666666666669, "BEZIER", "AUTO", 494.4444338480631, 0.39039896540381036, "AUTO_CLAMPED", 561.1111323038737, 0.39039896540381036, "AUTO_CLAMPED"], [0.24863083861951166, 33.33333333333337, "BEZIER", "AUTO", 572.2222010294596, 0.24863083861951166, "AUTO_CLAMPED", 627.7777989705403, 0.24863083861951166, "AUTO_CLAMPED"], [0.24863083861951166, 133.33333333333326, "BEZIER", "AUTO", 672.2222010294596, 0.24863083861951166, "AUTO_CLAMPED", 733.3333333333333, 0.24863083861951166, "AUTO_CLAMPED"], [0.39039896540381036, 50.0, "BEZIER", "AUTO", 750.0, 0.39039896540381036, "AUTO_CLAMPED", 805.555534362793, 0.39039896540381036, "AUTO_CLAMPED"], [0.39039896540381036, 116.66666666666663, "BEZIER", "AUTO", 844.444465637207, 0.39039896540381036, "AUTO_CLAMPED", 916.6666666666666, 0.39039896540381036, "AUTO_CLAMPED"], [0.0, 100.0, "CONSTANT", "AUTO", 950.0, 0.0, "AUTO_CLAMPED"], [0.39039896540381036, 33.33333333333337, "BEZIER", "AUTO", 1027.7777989705403, 0.39039896540381036, "AUTO_CLAMPED"]]}}}, "Reload": {"GuardInner": {"location": {"x": [[3.725290298461914e-09, 0.0, "LINEAR", "AUTO"]], "z": [[0.8854429721832275, 0.0, "LINEAR", "AUTO"]], "y": [[0.8707519173622131, 0.0, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 350.0, "LINEAR", "AUTO"], [16.02038116054145, 83.33333333333337, "LINEAR", "AUTO"], [23.71116221314476, 83.33333333333326, "LINEAR", "AUTO"], [23.71116221314476, 66.66666666666674, "LINEAR", "AUTO"], [0.0, 83.33333333333326, "LINEAR", "AUTO"]]}}, "GuardOuter": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[-0.07262593507766724, 0.0, "BEZIER", "AUTO", 16.666666666666668, -0.07262593507766724, "AUTO_CLAMPED"]], "y": [[0.8707519173622131, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.8707519173622131, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 350.0, "BEZIER", "AUTO", 377.7777671813965, 0.0, "AUTO_CLAMPED"], [-17.139458137176558, 83.33333333333337, "BEZIER", "AUTO", 405.55556615193683, -9.800624779672956, "AUTO_CLAMPED", 461.1111005147298, -24.478291494680157, "AUTO_CLAMPED"], [-29.355340260203572, 83.33333333333326, "BEZIER", "AUTO", 488.8888994852702, -29.355340260203572, "AUTO_CLAMPED", 550.0, -29.355340260203572, "AUTO_CLAMPED"], [-29.355340260203572, 100.00000000000011, "BEZIER", "AUTO", 583.3333333333334, -29.355340260203572, "AUTO_CLAMPED", 650.0, -29.355340260203572, "AUTO_CLAMPED"], [0.0, 99.99999999999989, "BEZIER", "AUTO", 683.3333333333334, 0.0, "AUTO_CLAMPED", 750.0, 0.0, "AUTO_CLAMPED"]]}}, "Gun": {"location": {"x": [[1.7611019611358643, 0.0, "LINEAR", "AUTO"], [1.7662079334259033, 150.0, "LINEAR", "AUTO"], [1.7611019611358643, 250.0, "LINEAR", "AUTO"], [1.613909363746643, 100.0, "LINEAR", "AUTO"], [1.7571532726287842, 116.66666666666674, "LINEAR", "AUTO"], [1.7611019611358643, 99.99999999999989, "LINEAR", "AUTO"]], "z": [[0.31467199325561523, 0.0, "LINEAR", "AUTO"], [0.30754023790359497, 150.0, "LINEAR", "AUTO"], [0.31467199325561523, 250.0, "LINEAR", "AUTO"], [0.4306454658508301, 100.0, "LINEAR", "AUTO"], [0.3806498050689697, 116.66666666666674, "LINEAR", "AUTO"], [0.31467199325561523, 99.99999999999989, "LINEAR", "AUTO"]], "y": [[0.8750439286231995, 0.0, "LINEAR", "AUTO"], [0.8376463055610657, 150.0, "LINEAR", "AUTO"], [0.8750439286231995, 250.0, "LINEAR", "AUTO"], [1.1308174133300781, 100.0, "LINEAR", "AUTO"], [1.108587384223938, 116.66666666666674, "LINEAR", "AUTO"], [0.8750439286231995, 99.99999999999989, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[-18.983153297952903, 0.0, "LINEAR", "AUTO"], [-20.857867762844858, 250.0, "LINEAR", "AUTO"], [-18.983153297952903, 100.0, "LINEAR", "AUTO"], [-20.627756982159838, 116.66666666666669, "LINEAR", "AUTO"], [-20.258341078257818, 116.66666666666669, "LINEAR", "AUTO"], [-18.983153297952903, 133.33333333333326, "LINEAR", "AUTO"]], "z": [[86.04810969222216, 0.0, "LINEAR", "AUTO"], [87.57263523572567, 250.0, "LINEAR", "AUTO"], [86.04810969222216, 100.0, "LINEAR", "AUTO"], [89.15816119870658, 116.66666666666669, "LINEAR", "AUTO"], [86.00693048171614, 116.66666666666669, "LINEAR", "AUTO"], [86.04810969222216, 133.33333333333326, "LINEAR", "AUTO"]], "y": [[29.613753637261834, 0.0, "LINEAR", "AUTO"], [28.64577410544575, 250.0, "LINEAR", "AUTO"], [29.613753637261834, 100.0, "LINEAR", "AUTO"], [25.730953311102372, 116.66666666666669, "LINEAR", "AUTO"], [27.311677651096765, 116.66666666666669, "LINEAR", "AUTO"], [29.613753637261834, 133.33333333333326, "LINEAR", "AUTO"]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "LINEAR", "AUTO"], [1.5205265935236412e-09, 216.66666666666669, "LINEAR", "AUTO"], [3.600797242597764e-07, 133.33333333333331, "LINEAR", "AUTO"], [1.9156854591528827e-07, 83.33333333333337, "LINEAR", "AUTO"], [2.418599649445241e-07, 83.33333333333326, "LINEAR", "AUTO"], [2.3999731979529315e-07, 100.00000000000011, "LINEAR", "AUTO"]], "z": [[-2.2731080055236816, 0.0, "LINEAR", "AUTO"], [-2.2731080055236816, 216.66666666666669, "LINEAR", "AUTO"], [0.2386959344148636, 133.33333333333331, "LINEAR", "AUTO"], [0.33605021238327026, 83.33333333333337, "LINEAR", "AUTO"], [0.4338737428188324, 83.33333333333326, "LINEAR", "AUTO"], [1.2500436305999756, 100.00000000000011, "LINEAR", "AUTO"]], "y": [[-1.4170563220977783, 0.0, "LINEAR", "AUTO"], [-1.4170563220977783, 216.66666666666669, "LINEAR", "AUTO"], [0.5333303213119507, 133.33333333333331, "LINEAR", "AUTO"], [0.8954256176948547, 83.33333333333337, "LINEAR", "AUTO"], [1.1207358837127686, 83.33333333333326, "LINEAR", "AUTO"], [1.2056175470352173, 100.00000000000011, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 216.66666666666669, "LINEAR", "AUTO"], [-23.121160227355304, 133.33333333333331, "LINEAR", "AUTO"], [-14.526026270149163, 83.33333333333337, "LINEAR", "AUTO"], [-5.042295800981765, 83.33333333333326, "LINEAR", "AUTO"], [0.0, 100.00000000000011, "LINEAR", "AUTO"]], "z": [[0.0, 0.0, "LINEAR", "AUTO"], [-0.0, 216.66666666666669, "LINEAR", "AUTO"], [-0.0, 133.33333333333331, "LINEAR", "AUTO"], [2.551953161995936e-07, 83.33333333333337, "LINEAR", "AUTO"], [7.134593799244011e-07, 83.33333333333326, "LINEAR", "AUTO"], [-0.0, 100.00000000000011, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 216.66666666666669, "LINEAR", "AUTO"], [1.7075472925031877e-06, 133.33333333333331, "LINEAR", "AUTO"], [1.688370023551335e-06, 83.33333333333337, "LINEAR", "AUTO"], [1.6331417525071545e-06, 83.33333333333326, "LINEAR", "AUTO"], [0.0, 100.00000000000011, "LINEAR", "AUTO"]]}}}, "ReloadEmpty": {"Gun": {"location": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [1.2511006593704224, 183.33333333333331, "LINEAR", "AUTO"], [1.6423077583312988, 216.66666666666669, "LINEAR", "AUTO"], [1.6554410457611084, 150.0, "LINEAR", "AUTO"], [1.7105761766433716, 66.66666666666674, "LINEAR", "AUTO"], [1.7476284503936768, 116.66666666666652, "LINEAR", "AUTO"], [1.7611019611358643, 133.33333333333348, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [0.26347818970680237, 183.33333333333331, "LINEAR", "AUTO"], [0.32502928376197815, 216.66666666666669, "LINEAR", "AUTO"], [0.30153536796569824, 150.0, "LINEAR", "AUTO"], [0.3000105023384094, 66.66666666666674, "LINEAR", "AUTO"], [0.3107622563838959, 116.66666666666652, "LINEAR", "AUTO"], [0.31467199325561523, 133.33333333333348, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.42658743262290955, 183.33333333333331, "LINEAR", "AUTO"], [-0.009814918041229248, 216.66666666666669, "LINEAR", "AUTO"], [-0.1131410151720047, 150.0, "LINEAR", "AUTO"], [-0.20051059126853943, 66.66666666666674, "LINEAR", "AUTO"], [0.5882294178009033, 116.66666666666652, "LINEAR", "AUTO"], [0.8750439286231995, 133.33333333333348, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [-14.617513238986898, 116.66666666666667, "LINEAR", "AUTO"], [-37.38541266737456, 233.33333333333331, "LINEAR", "AUTO"], [-36.45018560017598, 166.66666666666663, "LINEAR", "AUTO"], [-30.74254485044399, 66.66666666666674, "LINEAR", "AUTO"], [-21.750068053366945, 149.9999999999999, "LINEAR", "AUTO"], [-18.983153297952903, 133.33333333333348, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [32.06710636071164, 116.66666666666667, "LINEAR", "AUTO"], [40.97562647251089, 233.33333333333331, "LINEAR", "AUTO"], [38.71689657436601, 166.66666666666663, "LINEAR", "AUTO"], [32.11341504328433, 66.66666666666674, "LINEAR", "AUTO"], [73.35759772377095, 149.9999999999999, "LINEAR", "AUTO"], [86.04810969222216, 133.33333333333348, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [21.50487279989995, 116.66666666666667, "LINEAR", "AUTO"], [44.292741993873435, 233.33333333333331, "LINEAR", "AUTO"], [46.044774308440914, 166.66666666666663, "LINEAR", "AUTO"], [49.72028010083778, 66.66666666666674, "LINEAR", "AUTO"], [34.34470124134409, 149.9999999999999, "LINEAR", "AUTO"], [29.613753637261834, 133.33333333333348, "LINEAR", "AUTO"]]}}, "Pump": {"location": {"z": [[-0.0, 83.33333333333333, "LINEAR", "AUTO"], [-0.10627399384975433, 50.000000000000014, "LINEAR", "AUTO"], [-0.7439179420471191, 66.66666666666666, "LINEAR", "AUTO"], [-0.7439179420471191, 483.33333333333337, "LINEAR", "AUTO"], [-0.18597948551177979, 66.66666666666663, "LINEAR", "AUTO"], [-0.0, 66.66666666666663, "LINEAR", "AUTO"]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "LINEAR", "AUTO"], [1.8807575702667236, 216.66666666666669, "LINEAR", "AUTO"], [0.1613924205303192, 216.66666666666669, "LINEAR", "AUTO"], [0.010319530963897705, 100.0, "LINEAR", "AUTO"], [2.558298035637563e-07, 83.33333333333337, "LINEAR", "AUTO"]], "z": [[-2.2731080055236816, 0.0, "LINEAR", "AUTO"], [-1.77922523021698, 216.66666666666669, "LINEAR", "AUTO"], [0.5386117100715637, 216.66666666666669, "LINEAR", "AUTO"], [0.9011819362640381, 100.0, "LINEAR", "AUTO"], [1.2500436305999756, 83.33333333333337, "LINEAR", "AUTO"]], "y": [[-1.4170563220977783, 0.0, "LINEAR", "AUTO"], [-0.7542737126350403, 216.66666666666669, "LINEAR", "AUTO"], [1.8265879154205322, 216.66666666666669, "LINEAR", "AUTO"], [1.7011022567749023, 100.0, "LINEAR", "AUTO"], [1.7520724534988403, 83.33333333333337, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 166.66666666666666, "LINEAR", "AUTO"], [17.895010248068782, 216.66666666666666, "LINEAR", "AUTO"], [3.92045772037468, 116.66666666666669, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]], "z": [[0.0, 0.0, "LINEAR", "AUTO"], [-0.0, 166.66666666666666, "LINEAR", "AUTO"], [-7.282242678909106, 216.66666666666666, "LINEAR", "AUTO"], [-2.104055355191472, 116.66666666666669, "LINEAR", "AUTO"], [-0.0, 116.66666666666674, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 166.66666666666666, "LINEAR", "AUTO"], [-21.433229238148392, 216.66666666666666, "LINEAR", "AUTO"], [-7.3901921111938655, 116.66666666666669, "LINEAR", "AUTO"], [0.0, 116.66666666666674, "LINEAR", "AUTO"]]}}}, "ReloadEnd": {"Gun": {"location": {"x": [[1.7611019611358643, 0.0, "LINEAR", "AUTO"], [-0.31797051429748535, 216.66666666666669, "LINEAR", "AUTO"], [0.0, 83.33333333333331, "LINEAR", "AUTO"]], "z": [[0.31467199325561523, 0.0, "LINEAR", "AUTO"], [0.010336088016629219, 216.66666666666669, "LINEAR", "AUTO"], [-0.0, 83.33333333333331, "LINEAR", "AUTO"]], "y": [[0.8750439286231995, 0.0, "LINEAR", "AUTO"], [0.0250311940908432, 216.66666666666669, "LINEAR", "AUTO"], [0.0, 83.33333333333331, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[-18.983153297952903, 0.0, "LINEAR", "AUTO"], [0.09662330444411844, 216.66666666666669, "LINEAR", "AUTO"], [0.0, 83.33333333333331, "LINEAR", "AUTO"]], "z": [[86.04810969222216, 0.0, "LINEAR", "AUTO"], [-9.502314560125358, 216.66666666666669, "LINEAR", "AUTO"], [-0.0, 83.33333333333331, "LINEAR", "AUTO"]], "y": [[29.613753637261834, 0.0, "LINEAR", "AUTO"], [-0.24104249845162748, 216.66666666666669, "LINEAR", "AUTO"], [0.0, 83.33333333333331, "LINEAR", "AUTO"]]}}}, "ReloadStart": {"GuardInner": {"location": {"x": [[3.725290298461914e-09, 0.0, "LINEAR", "AUTO"]], "z": [[0.8854429721832275, 0.0, "LINEAR", "AUTO"]], "y": [[0.8707519173622131, 0.0, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 350.0, "LINEAR", "AUTO"], [16.02038116054145, 83.33333333333337, "LINEAR", "AUTO"], [23.71116221314476, 83.33333333333326, "LINEAR", "AUTO"], [23.71116221314476, 66.66666666666674, "LINEAR", "AUTO"], [0.0, 83.33333333333326, "LINEAR", "AUTO"]]}}, "GuardOuter": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.0, "AUTO_CLAMPED"]], "z": [[-0.07262593507766724, 0.0, "BEZIER", "AUTO", 16.666666666666668, -0.07262593507766724, "AUTO_CLAMPED"]], "y": [[0.8707519173622131, 0.0, "BEZIER", "AUTO", 16.666666666666668, 0.8707519173622131, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 350.0, "BEZIER", "AUTO", 377.7777671813965, 0.0, "AUTO_CLAMPED"], [-17.139458137176558, 83.33333333333337, "BEZIER", "AUTO", 405.55556615193683, -9.800624779672956, "AUTO_CLAMPED", 461.1111005147298, -24.478291494680157, "AUTO_CLAMPED"], [-29.355340260203572, 83.33333333333326, "BEZIER", "AUTO", 488.8888994852702, -29.355340260203572, "AUTO_CLAMPED", 550.0, -29.355340260203572, "AUTO_CLAMPED"], [-29.355340260203572, 100.00000000000011, "BEZIER", "AUTO", 583.3333333333334, -29.355340260203572, "AUTO_CLAMPED", 650.0, -29.355340260203572, "AUTO_CLAMPED"], [0.0, 99.99999999999989, "BEZIER", "AUTO", 683.3333333333334, 0.0, "AUTO_CLAMPED", 750.0, 0.0, "AUTO_CLAMPED"]]}}, "Gun": {"location": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [1.2318342924118042, 183.33333333333331, "LINEAR", "AUTO"], [1.642445683479309, 83.33333333333337, "LINEAR", "AUTO"], [1.7611019611358643, 133.33333333333331, "LINEAR", "AUTO"], [1.613909363746643, 100.0, "LINEAR", "AUTO"], [1.7571532726287842, 116.66666666666674, "LINEAR", "AUTO"], [1.7611019611358643, 66.66666666666663, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [0.2732446491718292, 183.33333333333331, "LINEAR", "AUTO"], [0.36432620882987976, 83.33333333333337, "LINEAR", "AUTO"], [0.31467199325561523, 133.33333333333331, "LINEAR", "AUTO"], [0.4306454658508301, 100.0, "LINEAR", "AUTO"], [0.3806498050689697, 116.66666666666674, "LINEAR", "AUTO"], [0.31467199325561523, 66.66666666666663, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.7328978776931763, 183.33333333333331, "LINEAR", "AUTO"], [0.9771971702575684, 83.33333333333337, "LINEAR", "AUTO"], [0.8750439286231995, 133.33333333333331, "LINEAR", "AUTO"], [1.1308174133300781, 100.0, "LINEAR", "AUTO"], [1.108587384223938, 116.66666666666674, "LINEAR", "AUTO"], [0.8750439286231995, 66.66666666666663, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [-14.617513238986898, 150.0, "LINEAR", "AUTO"], [-19.490018221164963, 83.33333333333334, "LINEAR", "AUTO"], [-18.983153297952903, 116.66666666666666, "LINEAR", "AUTO"], [-20.627756982159838, 133.33333333333331, "LINEAR", "AUTO"], [-20.258341078257818, 100.00000000000006, "LINEAR", "AUTO"], [-18.983153297952903, 100.0, "LINEAR", "AUTO"]], "z": [[-0.0, 0.0, "LINEAR", "AUTO"], [65.44332775888294, 150.0, "LINEAR", "AUTO"], [87.25777034517726, 83.33333333333334, "LINEAR", "AUTO"], [86.04810969222216, 116.66666666666666, "LINEAR", "AUTO"], [89.15816119870658, 133.33333333333331, "LINEAR", "AUTO"], [86.00693048171614, 100.00000000000006, "LINEAR", "AUTO"], [86.04810969222216, 100.0, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [21.504871092352655, 150.0, "LINEAR", "AUTO"], [28.673161456470208, 83.33333333333334, "LINEAR", "AUTO"], [29.613753637261834, 116.66666666666666, "LINEAR", "AUTO"], [25.730953311102372, 133.33333333333331, "LINEAR", "AUTO"], [27.311677651096765, 100.00000000000006, "LINEAR", "AUTO"], [29.613753637261834, 100.0, "LINEAR", "AUTO"]]}}, "Shell": {"location": {"x": [[1.5205265935236412e-09, 0.0, "LINEAR", "AUTO"], [1.5205265935236412e-09, 216.66666666666669, "LINEAR", "AUTO"], [3.600797242597764e-07, 133.33333333333331, "LINEAR", "AUTO"], [1.9156854591528827e-07, 83.33333333333337, "LINEAR", "AUTO"], [2.418599649445241e-07, 83.33333333333326, "LINEAR", "AUTO"], [2.3999731979529315e-07, 100.00000000000011, "LINEAR", "AUTO"]], "z": [[-2.2731080055236816, 0.0, "LINEAR", "AUTO"], [-2.2731080055236816, 216.66666666666669, "LINEAR", "AUTO"], [0.2386959344148636, 133.33333333333331, "LINEAR", "AUTO"], [0.33605021238327026, 83.33333333333337, "LINEAR", "AUTO"], [0.4338737428188324, 83.33333333333326, "LINEAR", "AUTO"], [1.2500436305999756, 100.00000000000011, "LINEAR", "AUTO"]], "y": [[-1.4170563220977783, 0.0, "LINEAR", "AUTO"], [-1.4170563220977783, 216.66666666666669, "LINEAR", "AUTO"], [0.5333303213119507, 133.33333333333331, "LINEAR", "AUTO"], [0.8954256176948547, 83.33333333333337, "LINEAR", "AUTO"], [1.1207358837127686, 83.33333333333326, "LINEAR", "AUTO"], [1.2056175470352173, 100.00000000000011, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 216.66666666666669, "LINEAR", "AUTO"], [-23.121160227355304, 133.33333333333331, "LINEAR", "AUTO"], [-14.526026270149163, 83.33333333333337, "LINEAR", "AUTO"], [-5.042295800981765, 83.33333333333326, "LINEAR", "AUTO"], [0.0, 100.00000000000011, "LINEAR", "AUTO"]], "z": [[0.0, 0.0, "LINEAR", "AUTO"], [-0.0, 216.66666666666669, "LINEAR", "AUTO"], [-0.0, 133.33333333333331, "LINEAR", "AUTO"], [2.551953161995936e-07, 83.33333333333337, "LINEAR", "AUTO"], [7.134593799244011e-07, 83.33333333333326, "LINEAR", "AUTO"], [-0.0, 100.00000000000011, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.0, 216.66666666666669, "LINEAR", "AUTO"], [1.7075472925031877e-06, 133.33333333333331, "LINEAR", "AUTO"], [1.688370023551335e-06, 83.33333333333337, "LINEAR", "AUTO"], [1.6331417525071545e-06, 83.33333333333326, "LINEAR", "AUTO"], [0.0, 100.00000000000011, "LINEAR", "AUTO"]]}}}}, "offset": {"GuardInner": [3.725290298461914e-09, 0.8707519173622131, 0.8854429721832275], "GuardOuter": [0.0, 0.8707519173622131, -0.07262593507766724], "Loop": [0.2532634139060974, 1.4936577081680298, 3.4837722778320312], "Pump": [1.6174453776329756e-08, 1.1175870895385742e-08, -0.0], "Shell": [1.5205265935236412e-09, 1.7459099292755127, 1.2549771070480347], "ShellFore": [1.5205265935236412e-09, 1.7459099292755127, 1.2549771070480347], "Sight": [0.0, 2.104297161102295, 2.990000009536743]}, "hierarchy": {"GuardInner": "GuardOuter", "GuardOuter": "Gun", "Loop": "Gun", "Pump": "Gun", "Shell": "Gun", "ShellFore": "Shell", "Sight": "Gun"}} \ No newline at end of file diff --git a/src/main/resources/assets/hbm/models/weapons/congolake.obj b/src/main/resources/assets/hbm/models/weapons/congolake.obj index 4a34fe6d0..77e57c3d1 100644 --- a/src/main/resources/assets/hbm/models/weapons/congolake.obj +++ b/src/main/resources/assets/hbm/models/weapons/congolake.obj @@ -486,6 +486,10 @@ v 0.213723 1.586004 0.965536 v -0.173216 1.890425 0.967058 v -0.217260 1.720861 0.967058 v -0.217260 1.599823 0.967058 +v -0.262079 1.644726 0.500033 +v -0.262079 1.095427 0.500033 +v -0.262079 1.095427 -0.049266 +v -0.262079 1.644726 -0.049266 vn 0.4257 0.9049 -0.0048 vn 0.9414 0.3371 -0.0136 vn 1.0000 -0.0021 -0.0092 @@ -1081,876 +1085,880 @@ vn -1.0000 0.0069 -0.0048 vn 0.9998 0.0169 0.0048 vn 1.0000 0.0064 0.0018 vn 1.0000 0.0059 -0.0044 -vt 0.314366 0.961863 -vt 0.294812 0.975635 -vt 0.294657 0.961939 -vt 0.273456 0.975731 -vt 0.273229 0.961965 -vt 0.262381 0.975737 -vt 0.256051 0.961941 -vt 0.125608 0.749505 -vt 0.097336 0.727764 -vt 0.125610 0.725602 -vt 0.168440 0.696871 -vt 0.168440 0.716405 -vt 0.109231 0.716275 -vt 0.127314 0.962819 -vt 0.110436 0.977071 -vt 0.110100 0.963138 -vt 0.056961 0.977985 -vt 0.034809 0.964084 -vt 0.057052 0.963821 -vt 0.034870 0.978067 -vt 0.014902 0.964099 -vt 0.199446 0.727764 -vt 0.171174 0.749505 -vt 0.171172 0.725602 -vt 0.035307 0.807355 -vt 0.010838 0.597288 -vt 0.017874 0.618909 -vt 0.015372 0.630834 -vt 0.013899 0.556050 -vt 0.009136 0.552343 -vt 0.015271 0.870213 -vt 0.091632 0.963445 -vt 0.055268 0.806356 -vt 0.088357 0.802601 -vt 0.013764 0.139760 -vt 0.049854 0.124762 -vt 0.048730 0.157936 -vt 0.271875 0.803748 -vt 0.255984 0.868690 -vt 0.239398 0.800845 -vt 0.221112 0.961929 -vt 0.221070 0.800394 -vt 0.043269 0.233050 -vt 0.010790 0.189172 -vt 0.008714 0.234441 -vt 0.040214 0.045310 -vt 0.041285 0.072586 -vt 0.016409 0.072577 -vt 0.106773 0.801728 -vt 0.188797 0.799828 -vt 0.189454 0.860441 -vt 0.168859 0.799931 -vt 0.203932 0.961982 -vt 0.190529 0.959560 -vt 0.139611 0.860982 -vt 0.140686 0.960100 -vt 0.179637 0.960676 -vt 0.191879 0.973114 -vt 0.221110 0.975759 -vt 0.239478 0.975750 -vt 0.239470 0.961920 -vt 0.091859 0.977480 -vt 0.068629 0.977845 -vt 0.151599 0.960980 -vt 0.139629 0.973680 -vt 0.295488 0.867180 -vt 0.309465 0.800651 -vt 0.314455 0.865726 -vt 0.099265 0.557700 -vt 0.088674 0.528893 -vt 0.091711 0.518805 -vt 0.273373 0.868342 -vt 0.291054 0.804240 -vt 0.017282 0.517402 -vt 0.096715 0.601134 -vt 0.094272 0.561212 -vt 0.090072 0.620005 -vt 0.092216 0.630834 -vt 0.019880 0.528535 -vt 0.093170 0.596621 -vt 0.048521 0.157264 -vt 0.099086 0.151375 -vt 0.101118 0.125172 -vt 0.100614 0.125701 -vt 0.096976 0.181286 -vt 0.045608 0.196565 -vt 0.014112 0.138899 -vt 0.044187 0.260468 -vt 0.009380 0.268657 -vt 0.010839 0.235095 -vt 0.047070 0.260910 -vt 0.012396 0.269226 -vt 0.011742 0.189926 -vt 0.045438 0.233562 -vt 0.050505 0.124018 -vt 0.015811 0.109271 -vt 0.046833 0.197155 -vt 0.129115 0.163540 -vt 0.092797 0.074820 -vt 0.123836 0.051890 -vt 0.125752 0.076448 -vt 0.099258 0.151849 -vt 0.129673 0.163858 -vt 0.097922 0.181697 -vt 0.098488 0.207838 -vt 0.102467 0.099218 -vt 0.100128 0.208179 -vt 0.086379 0.050726 -vt 0.161380 0.154835 -vt 0.130349 0.120529 -vt 0.161569 0.110452 -vt 0.161572 0.193930 -vt 0.129818 0.193381 -vt 0.101290 0.099804 -vt 0.131373 0.074271 -vt 0.130916 0.120113 -vt 0.133141 0.073753 -vt 0.128491 0.193132 -vt 0.134570 0.037458 -vt 0.163321 0.074493 -vt 0.324006 0.068216 -vt 0.325470 0.009804 -vt 0.159015 0.221209 -vt 0.319147 0.219954 -vt 0.160154 0.193815 -vt 0.162323 0.110144 -vt 0.321290 0.154865 -vt 0.153411 0.072905 -vt 0.160980 0.154628 -vt 0.161642 0.074882 -vt 0.136981 0.357463 -vt 0.167260 0.372515 -vt 0.136981 0.373289 -vt 0.088568 0.357595 -vt 0.068186 0.373289 -vt 0.068186 0.357463 -vt 0.189977 0.371792 -vt 0.167260 0.356690 -vt 0.189978 0.355966 -vt 0.321611 0.219338 -vt 0.161143 0.221263 -vt 0.322066 0.154397 -vt 0.321076 0.041804 -vt 0.323456 0.071128 -vt 0.322534 0.067945 -vt 0.250154 0.792851 -vt 0.273221 0.795467 -vt 0.091316 0.794644 -vt 0.293066 0.797695 -vt 0.016873 0.804883 -vt 0.033786 0.801329 -vt 0.077381 0.795722 -vt 0.155566 0.788575 -vt 0.138639 0.778486 -vt 0.158066 0.772764 -vt 0.054011 0.798812 -vt 0.236326 0.792079 -vt 0.202051 0.371732 -vt 0.202051 0.355906 -vt 0.116599 0.357595 -vt 0.116599 0.373421 -vt 0.015190 0.355966 -vt 0.003116 0.371732 -vt 0.003116 0.355906 -vt 0.037907 0.372515 -vt 0.037907 0.356690 -vt 0.015190 0.371792 -vt 0.105668 0.357644 -vt 0.105668 0.373470 -vt 0.099489 0.357644 -vt 0.088568 0.373421 -vt 0.099489 0.373470 -vt 0.188632 0.777943 -vt 0.167878 0.772654 -vt 0.181394 0.762326 -vt 0.294067 0.647961 -vt 0.303167 0.614199 -vt 0.303167 0.647961 -vt 0.153583 0.091790 -vt 0.321316 0.117408 -vt 0.153648 0.123361 -vt 0.323510 0.088039 -vt 0.124127 0.112592 -vt 0.125603 0.089619 -vt 0.041308 0.093532 -vt 0.086689 0.119252 -vt 0.039823 0.120997 -vt 0.273195 0.559127 -vt 0.289603 0.553152 -vt 0.290452 0.556695 -vt 0.091482 0.092156 -vt 0.016236 0.091777 -vt 0.281554 0.625218 -vt 0.271561 0.618402 -vt 0.294030 0.616776 -vt 0.170751 0.788410 -vt 0.157783 0.800051 -vt 0.152072 0.860847 -vt 0.193727 0.919817 -vt 0.180297 0.708701 -vt 0.193725 0.708701 -vt 0.265671 0.609576 -vt 0.271448 0.609440 -vt 0.294067 0.614199 -vt 0.303167 0.605510 -vt 0.293952 0.607827 -vt 0.236000 0.625228 -vt 0.245972 0.618420 -vt 0.245995 0.625548 -vt 0.223524 0.616863 -vt 0.246072 0.609463 -vt 0.254076 0.629043 -vt 0.263451 0.625557 -vt 0.263443 0.629089 -vt 0.265727 0.618518 -vt 0.263353 0.618566 -vt 0.265808 0.625494 -vt 0.258767 0.637676 -vt 0.254047 0.637653 -vt 0.251845 0.609578 -vt 0.251796 0.618515 -vt 0.251734 0.625465 -vt 0.138954 0.800369 -vt 0.254084 0.625511 -vt 0.254163 0.618559 -vt 0.263310 0.609597 -vt 0.254206 0.609594 -vt 0.294067 0.605510 -vt 0.303167 0.565131 -vt 0.251853 0.569232 -vt 0.253156 0.562875 -vt 0.254213 0.569233 -vt 0.263295 0.569233 -vt 0.265655 0.569230 -vt 0.266567 0.564085 -vt 0.267638 0.557134 -vt 0.268986 0.560040 -vt 0.294067 0.565131 -vt 0.303167 0.559802 -vt 0.264350 0.562875 -vt 0.263295 0.562688 -vt 0.248520 0.560043 -vt 0.244268 0.555593 -vt 0.249867 0.557136 -vt 0.254213 0.562688 -vt 0.263295 0.555128 -vt 0.250939 0.564087 -vt 0.294067 0.559802 -vt 0.303167 0.554364 -vt 0.294067 0.554364 -vt 0.303167 0.547980 -vt 0.273237 0.555588 -vt 0.254213 0.555128 -vt 0.263295 0.546600 -vt 0.263141 0.521961 -vt 0.254213 0.546600 -vt 0.254367 0.521961 -vt 0.303021 0.521961 -vt 0.294067 0.547980 -vt 0.294213 0.521961 -vt 0.227901 0.553165 -vt 0.244311 0.559132 -vt 0.227053 0.556709 -vt 0.322830 0.524494 -vt 0.328472 0.528894 -vt 0.323984 0.531427 -vt 0.330014 0.547183 -vt 0.325218 0.552440 -vt 0.325218 0.547183 -vt 0.328472 0.540213 -vt 0.322830 0.544613 -vt 0.323984 0.537680 -vt 0.329035 0.552477 -vt 0.324239 0.557734 -vt 0.324239 0.552477 -vt 0.321255 0.547183 -vt 0.320214 0.557734 -vt 0.315026 0.552477 -vt 0.320214 0.552477 -vt 0.319165 0.526989 -vt 0.319165 0.542118 -vt 0.320185 0.535986 -vt 0.314282 0.539490 -vt 0.310555 0.534572 -vt 0.315100 0.534572 -vt 0.321255 0.552440 -vt 0.316083 0.547183 -vt 0.320185 0.533121 -vt 0.314282 0.529617 -vt 0.309808 0.539058 -vt 0.304377 0.538124 -vt 0.310555 0.534535 -vt 0.309808 0.530049 -vt 0.315026 0.557734 -vt 0.310543 0.552477 -vt 0.316083 0.552440 -vt 0.311538 0.547183 -vt 0.305983 0.556964 -vt 0.304350 0.554128 -vt 0.305983 0.553247 -vt 0.304377 0.530983 -vt 0.305407 0.528102 -vt 0.311538 0.552440 -vt 0.304942 0.547953 -vt 0.303203 0.554128 -vt 0.304350 0.556083 -vt 0.303203 0.556083 -vt 0.303203 0.550789 -vt 0.303203 0.548833 -vt 0.305407 0.541005 -vt 0.303203 0.540240 -vt 0.303203 0.528867 -vt 0.303745 0.527351 -vt 0.009347 0.553762 -vt 0.097357 0.642576 -vt 0.009348 0.642577 -vt 0.107587 0.829304 -vt 0.189150 0.799526 -vt 0.189194 0.829363 -vt 0.107632 0.799414 -vt 0.189109 0.771635 -vt 0.107673 0.771635 -vt 0.097357 0.553762 -vt 0.117762 0.642576 -vt 0.093110 0.647104 -vt 0.013595 0.647105 -vt 0.013557 0.518373 -vt 0.013557 0.549711 -vt 0.009348 0.683002 -vt 0.097358 0.771695 -vt 0.009348 0.771696 -vt 0.144454 0.771725 -vt 0.117763 0.683001 -vt 0.144712 0.682911 -vt 0.097357 0.513726 -vt 0.117762 0.553762 -vt 0.097357 0.683001 -vt 0.117763 0.771695 -vt 0.280600 0.402906 -vt 0.283604 0.483938 -vt 0.280600 0.483938 -vt 0.013595 0.678474 -vt 0.093110 0.678473 -vt 0.300859 0.402771 -vt 0.303774 0.483879 -vt 0.300859 0.483879 -vt 0.093147 0.549711 -vt 0.093147 0.518373 -vt 0.009347 0.513726 -vt 0.317967 0.402771 -vt 0.303774 0.402771 -vt 0.303778 0.398399 -vt 0.320881 0.483879 -vt 0.320881 0.402771 -vt 0.303778 0.488250 -vt 0.317967 0.483879 -vt 0.317971 0.488250 -vt 0.297812 0.402906 -vt 0.283604 0.402906 -vt 0.297808 0.488445 -vt 0.297812 0.483938 -vt 0.300817 0.483938 -vt 0.300817 0.402906 -vt 0.297808 0.398399 -vt 0.283600 0.398399 -vt 0.080480 0.350713 -vt 0.103363 0.346034 -vt 0.103172 0.373989 -vt 0.333333 -0.000000 +vt 0.314366 0.974575 +vt 0.294812 0.983757 +vt 0.294657 0.974626 +vt 0.273456 0.983821 +vt 0.273229 0.974643 +vt 0.262381 0.983825 +vt 0.256051 0.974627 +vt 0.125608 0.833003 +vt 0.097336 0.818509 +vt 0.125610 0.817068 +vt 0.168440 0.797914 +vt 0.168440 0.810937 +vt 0.109231 0.810850 +vt 0.127314 0.975213 +vt 0.110436 0.984714 +vt 0.110100 0.975425 +vt 0.056961 0.985323 +vt 0.034809 0.976056 +vt 0.057052 0.975881 +vt 0.034870 0.985378 +vt 0.014902 0.976066 +vt 0.199446 0.818509 +vt 0.171174 0.833003 +vt 0.171172 0.817068 +vt 0.035307 0.871570 +vt 0.010838 0.731525 +vt 0.017874 0.745939 +vt 0.015372 0.753889 +vt 0.013899 0.704033 +vt 0.009136 0.701562 +vt 0.015271 0.913475 +vt 0.091632 0.975630 +vt 0.055268 0.870904 +vt 0.088357 0.868401 +vt 0.013764 0.426507 +vt 0.049854 0.416508 +vt 0.048730 0.438624 +vt 0.271875 0.869165 +vt 0.255984 0.912460 +vt 0.239398 0.867230 +vt 0.221112 0.974619 +vt 0.221070 0.866929 +vt 0.043269 0.488700 +vt 0.010790 0.459448 +vt 0.008714 0.489627 +vt 0.040214 0.363540 +vt 0.041285 0.381724 +vt 0.016409 0.381718 +vt 0.106773 0.867819 +vt 0.188797 0.866552 +vt 0.189454 0.906961 +vt 0.168859 0.866621 +vt 0.203932 0.974655 +vt 0.190529 0.973040 +vt 0.139611 0.907321 +vt 0.140686 0.973400 +vt 0.179637 0.973784 +vt 0.191879 0.982076 +vt 0.221110 0.983839 +vt 0.239478 0.983833 +vt 0.239470 0.974613 +vt 0.091859 0.984987 +vt 0.068629 0.985230 +vt 0.151599 0.973987 +vt 0.139629 0.982453 +vt 0.295488 0.911453 +vt 0.309465 0.867101 +vt 0.314455 0.910484 +vt 0.099265 0.705133 +vt 0.088674 0.685929 +vt 0.091711 0.679203 +vt 0.273373 0.912228 +vt 0.291054 0.869493 +vt 0.017282 0.678268 +vt 0.096715 0.734089 +vt 0.094272 0.707475 +vt 0.090072 0.746670 +vt 0.092216 0.753889 +vt 0.019880 0.685690 +vt 0.093170 0.731081 +vt 0.048521 0.438176 +vt 0.099086 0.434250 +vt 0.101118 0.416781 +vt 0.100614 0.417134 +vt 0.096976 0.454191 +vt 0.045608 0.464377 +vt 0.014112 0.425933 +vt 0.044187 0.506979 +vt 0.009380 0.512438 +vt 0.010839 0.490063 +vt 0.047070 0.507273 +vt 0.012396 0.512817 +vt 0.011742 0.459951 +vt 0.045438 0.489041 +vt 0.050505 0.416012 +vt 0.015811 0.406181 +vt 0.046833 0.464770 +vt 0.129115 0.442360 +vt 0.092797 0.383213 +vt 0.123836 0.367927 +vt 0.125752 0.384299 +vt 0.099258 0.434566 +vt 0.129673 0.442572 +vt 0.097922 0.454465 +vt 0.098488 0.471892 +vt 0.102467 0.399479 +vt 0.100128 0.472119 +vt 0.086379 0.367151 +vt 0.161380 0.436557 +vt 0.130349 0.413686 +vt 0.161569 0.406968 +vt 0.161572 0.462620 +vt 0.129818 0.462254 +vt 0.101290 0.399869 +vt 0.131373 0.382847 +vt 0.130916 0.413409 +vt 0.133141 0.382502 +vt 0.128491 0.462088 +vt 0.134570 0.358305 +vt 0.163321 0.382995 +vt 0.324006 0.378811 +vt 0.325470 0.339869 +vt 0.159015 0.480806 +vt 0.319147 0.479969 +vt 0.160154 0.462543 +vt 0.162323 0.406763 +vt 0.321290 0.436577 +vt 0.153411 0.381937 +vt 0.160980 0.436419 +vt 0.161642 0.383255 +vt 0.136981 0.571642 +vt 0.167260 0.581677 +vt 0.136981 0.582193 +vt 0.088568 0.571730 +vt 0.068186 0.582193 +vt 0.068186 0.571642 +vt 0.189977 0.581195 +vt 0.167260 0.571127 +vt 0.189978 0.570644 +vt 0.321611 0.479559 +vt 0.161143 0.480842 +vt 0.322066 0.436265 +vt 0.321076 0.361203 +vt 0.323456 0.380752 +vt 0.322534 0.378630 +vt 0.250154 0.861901 +vt 0.273221 0.863645 +vt 0.091316 0.863096 +vt 0.293066 0.865130 +vt 0.016873 0.869922 +vt 0.033786 0.867553 +vt 0.077381 0.863815 +vt 0.155566 0.859050 +vt 0.138639 0.852324 +vt 0.158066 0.848509 +vt 0.054011 0.865875 +vt 0.236326 0.861386 +vt 0.202051 0.581155 +vt 0.202051 0.570604 +vt 0.116599 0.571730 +vt 0.116599 0.582281 +vt 0.015190 0.570644 +vt 0.003116 0.581155 +vt 0.003116 0.570604 +vt 0.037907 0.581677 +vt 0.037907 0.571127 +vt 0.015190 0.581195 +vt 0.105668 0.571763 +vt 0.105668 0.582313 +vt 0.099489 0.571763 +vt 0.088568 0.582281 +vt 0.099489 0.582313 +vt 0.188632 0.851962 +vt 0.167878 0.848436 +vt 0.181394 0.841551 +vt 0.294067 0.765307 +vt 0.303167 0.742799 +vt 0.303167 0.765307 +vt 0.153583 0.394527 +vt 0.321316 0.411605 +vt 0.153648 0.415574 +vt 0.323510 0.392026 +vt 0.124127 0.408395 +vt 0.125603 0.393079 +vt 0.041308 0.395688 +vt 0.086689 0.412835 +vt 0.039823 0.413998 +vt 0.273195 0.706085 +vt 0.289603 0.702101 +vt 0.290452 0.704463 +vt 0.091482 0.394771 +vt 0.016236 0.394518 +vt 0.281554 0.750145 +vt 0.271561 0.745601 +vt 0.294030 0.744517 +vt 0.170751 0.858940 +vt 0.157783 0.866701 +vt 0.152072 0.907231 +vt 0.193727 0.946545 +vt 0.180297 0.805801 +vt 0.193725 0.805801 +vt 0.265671 0.739717 +vt 0.271448 0.739627 +vt 0.294067 0.742799 +vt 0.303167 0.737007 +vt 0.293952 0.738551 +vt 0.236000 0.750152 +vt 0.245972 0.745613 +vt 0.245995 0.750365 +vt 0.223524 0.744575 +vt 0.246072 0.739642 +vt 0.254076 0.752695 +vt 0.263451 0.750371 +vt 0.263443 0.752726 +vt 0.265727 0.745679 +vt 0.263353 0.745711 +vt 0.265808 0.750329 +vt 0.258767 0.758451 +vt 0.254047 0.758435 +vt 0.251845 0.739719 +vt 0.251796 0.745677 +vt 0.251734 0.750310 +vt 0.138954 0.866913 +vt 0.254084 0.750341 +vt 0.254163 0.745706 +vt 0.263310 0.739731 +vt 0.254206 0.739729 +vt 0.294067 0.737007 +vt 0.303167 0.710087 +vt 0.251853 0.712821 +vt 0.253156 0.708583 +vt 0.254213 0.712822 +vt 0.263295 0.712822 +vt 0.265655 0.712820 +vt 0.266567 0.709390 +vt 0.267638 0.704756 +vt 0.268986 0.706693 +vt 0.294067 0.710087 +vt 0.303167 0.706535 +vt 0.264350 0.708583 +vt 0.263295 0.708459 +vt 0.248520 0.706695 +vt 0.244268 0.703729 +vt 0.249867 0.704757 +vt 0.254213 0.708459 +vt 0.263295 0.703419 +vt 0.250939 0.709391 +vt 0.294067 0.706535 +vt 0.303167 0.702909 +vt 0.294067 0.702909 +vt 0.303167 0.698653 +vt 0.273237 0.703725 +vt 0.254213 0.703419 +vt 0.263295 0.697733 +vt 0.263141 0.681307 +vt 0.254213 0.697733 +vt 0.254367 0.681307 +vt 0.303021 0.681307 +vt 0.294067 0.698653 +vt 0.294213 0.681307 +vt 0.227901 0.702110 +vt 0.244311 0.706088 +vt 0.227053 0.704473 +vt 0.322830 0.682996 +vt 0.328472 0.685929 +vt 0.323984 0.687618 +vt 0.330014 0.698122 +vt 0.325218 0.701627 +vt 0.325218 0.698122 +vt 0.328472 0.693475 +vt 0.322830 0.696409 +vt 0.323984 0.691787 +vt 0.329035 0.701651 +vt 0.324239 0.705156 +vt 0.324239 0.701651 +vt 0.321255 0.698122 +vt 0.320214 0.705156 +vt 0.315026 0.701651 +vt 0.320214 0.701651 +vt 0.319165 0.684659 +vt 0.319165 0.694745 +vt 0.320185 0.690657 +vt 0.314282 0.692993 +vt 0.310555 0.689715 +vt 0.315100 0.689715 +vt 0.321255 0.701627 +vt 0.316083 0.698122 +vt 0.320185 0.688747 +vt 0.314282 0.686411 +vt 0.309808 0.692705 +vt 0.304377 0.692083 +vt 0.310555 0.689690 +vt 0.309808 0.686699 +vt 0.315026 0.705156 +vt 0.310543 0.701651 +vt 0.316083 0.701627 +vt 0.311538 0.698122 +vt 0.305983 0.704643 +vt 0.304350 0.702752 +vt 0.305983 0.702165 +vt 0.304377 0.687322 +vt 0.305407 0.685401 +vt 0.311538 0.701627 +vt 0.304942 0.698635 +vt 0.303203 0.702752 +vt 0.304350 0.704055 +vt 0.303203 0.704055 +vt 0.303203 0.700526 +vt 0.303203 0.699222 +vt 0.305407 0.694003 +vt 0.303203 0.693493 +vt 0.303203 0.685911 +vt 0.303745 0.684901 +vt 0.009347 0.702508 +vt 0.097357 0.761717 +vt 0.009348 0.761718 +vt 0.107587 0.886203 +vt 0.189150 0.866351 +vt 0.189194 0.886242 +vt 0.107632 0.866276 +vt 0.189109 0.847757 +vt 0.107673 0.847757 +vt 0.097357 0.702508 +vt 0.117762 0.761717 +vt 0.093110 0.764736 +vt 0.013595 0.764737 +vt 0.013557 0.678915 +vt 0.013557 0.699807 +vt 0.009348 0.788668 +vt 0.097358 0.847797 +vt 0.009348 0.847797 +vt 0.144454 0.847817 +vt 0.117763 0.788667 +vt 0.144712 0.788607 +vt 0.097357 0.675817 +vt 0.117762 0.702508 +vt 0.097357 0.788667 +vt 0.117763 0.847797 +vt 0.280600 0.601937 +vt 0.283604 0.655959 +vt 0.280600 0.655959 +vt 0.013595 0.785649 +vt 0.093110 0.785649 +vt 0.300859 0.601847 +vt 0.303774 0.655919 +vt 0.300859 0.655919 +vt 0.093147 0.699807 +vt 0.093147 0.678915 +vt 0.009347 0.675817 +vt 0.317967 0.601847 +vt 0.303774 0.601847 +vt 0.303778 0.598933 +vt 0.320881 0.655919 +vt 0.320881 0.601847 +vt 0.303778 0.658833 +vt 0.317967 0.655919 +vt 0.317971 0.658833 +vt 0.297812 0.601937 +vt 0.283604 0.601937 +vt 0.297808 0.658963 +vt 0.297812 0.655959 +vt 0.300817 0.655959 +vt 0.300817 0.601937 +vt 0.297808 0.598933 +vt 0.283600 0.598933 +vt 0.080480 0.567142 +vt 0.103363 0.564023 +vt 0.103172 0.582659 +vt 0.333333 0.333333 vt 1.000000 1.000000 vt 0.333333 1.000000 -vt 0.195007 0.381137 -vt 0.201745 0.431502 -vt 0.195007 0.431502 -vt 0.201745 0.381137 -vt 0.208482 0.431502 -vt 0.154582 0.381137 -vt 0.161320 0.431502 -vt 0.154582 0.431502 -vt 0.161319 0.381137 -vt 0.168057 0.431502 -vt 0.168057 0.381137 -vt 0.174795 0.431502 -vt 0.174795 0.381137 -vt 0.181532 0.431502 -vt 0.231060 0.416867 -vt 0.226296 0.424014 -vt 0.219558 0.399615 -vt 0.181532 0.381137 -vt 0.188270 0.431502 -vt 0.188270 0.381137 -vt 0.126584 0.919818 -vt 0.140012 0.708701 -vt 0.140013 0.919817 -vt 0.207154 0.708701 -vt 0.207155 0.919817 -vt 0.166870 0.919817 -vt 0.153440 0.708701 -vt 0.166869 0.708701 -vt 0.180298 0.919817 -vt 0.153441 0.919817 -vt 0.234135 0.875411 -vt 0.220697 0.919762 -vt 0.220707 0.875404 -vt 0.220583 0.919816 -vt 0.220582 0.708701 -vt 0.113155 0.708702 -vt 0.126584 0.708702 -vt 0.314568 0.891555 -vt 0.309497 0.867473 -vt 0.313761 0.869278 -vt 0.301277 0.875445 -vt 0.287839 0.919797 -vt 0.287849 0.875438 -vt 0.260992 0.875425 -vt 0.247553 0.919776 -vt 0.247564 0.875418 -vt 0.328134 0.875459 -vt 0.314695 0.919811 -vt 0.314706 0.875452 -vt 0.274410 0.919790 -vt 0.274420 0.875431 -vt 0.260982 0.919783 -vt 0.234125 0.919769 -vt 0.301267 0.919804 -vt 0.308531 0.948048 -vt 0.297558 0.919947 -vt 0.309626 0.921049 -vt 0.314647 0.896518 -vt 0.310460 0.894042 -vt 0.311777 0.973256 -vt 0.312696 0.950617 -vt 0.320287 0.797781 -vt 0.307573 0.814336 -vt 0.317673 0.792250 -vt 0.313606 0.864986 -vt 0.308535 0.840905 -vt 0.312799 0.842709 -vt 0.312873 0.946256 -vt 0.313792 0.923617 -vt 0.320287 0.992004 -vt 0.307435 0.975048 -vt 0.312643 0.838418 -vt 0.311836 0.816141 -vt 0.296659 0.841873 -vt 0.293357 0.866637 -vt 0.292551 0.844359 -vt 0.295697 0.815304 -vt 0.297621 0.868441 -vt 0.298902 0.894148 -vt 0.296462 0.946946 -vt 0.260683 0.910703 -vt 0.247255 0.985157 -vt 0.247255 0.910703 -vt 0.293215 0.921738 -vt 0.295366 0.973946 -vt 0.281238 0.988439 -vt 0.291201 0.971377 -vt 0.292395 0.840068 -vt 0.291588 0.817791 -vt 0.270381 0.881699 -vt 0.294350 0.864763 -vt 0.269266 0.880790 -vt 0.292119 0.948738 -vt 0.281862 0.800912 -vt 0.284016 0.795041 -vt 0.300968 0.985157 -vt 0.288372 0.988169 -vt 0.287540 0.985157 -vt 0.287540 0.910703 -vt 0.274112 0.985157 -vt 0.274112 0.910703 -vt 0.206969 0.910703 -vt 0.193541 0.985157 -vt 0.193541 0.910703 -vt 0.233826 0.910703 -vt 0.220398 0.985157 -vt 0.220398 0.910703 -vt 0.260683 0.985157 -vt 0.300968 0.910703 -vt 0.206969 0.985157 -vt 0.233826 0.985157 -vt 0.000000 0.406250 -vt 0.052083 0.421875 -vt 0.000000 0.421875 -vt 0.207801 0.988169 -vt 0.234658 0.988169 -vt 0.259851 0.988169 -vt 0.248086 0.988169 -vt 0.286708 0.988169 -vt 0.274943 0.988169 -vt 0.206138 0.988169 -vt 0.194373 0.988169 -vt 0.232995 0.988169 -vt 0.221230 0.988169 -vt 0.261515 0.988169 -vt 0.048732 0.447842 -vt 0.045556 0.447842 -vt 0.048732 0.436341 -vt 0.000000 0.375000 -vt 0.052083 0.390625 -vt 0.000000 0.390625 -vt 0.000000 0.468750 -vt 0.052083 0.484375 -vt 0.000000 0.484375 -vt 0.000000 0.437500 -vt 0.052083 0.453125 -vt 0.000000 0.453125 -vt 0.052083 0.437500 -vt 0.052083 0.406250 -vt 0.052083 0.500000 -vt 0.000000 0.500000 -vt 0.052083 0.468750 -vt 0.077693 0.682531 -vt 0.085752 0.702806 -vt 0.072784 0.686569 -vt 0.099335 0.548750 -vt 0.085924 0.828424 -vt 0.085920 0.548750 -vt 0.194542 0.682531 -vt 0.186482 0.702806 -vt 0.184647 0.695445 -vt 0.154742 0.695445 -vt 0.169694 0.702806 -vt 0.152906 0.702806 -vt 0.137953 0.695445 -vt 0.136117 0.702806 -vt 0.171530 0.695445 -vt 0.117493 0.695445 -vt 0.102541 0.702806 -vt 0.104376 0.695445 -vt 0.134281 0.695445 -vt 0.119329 0.702806 -vt 0.121165 0.695445 -vt 0.072504 0.548751 -vt 0.072521 0.828425 -vt 0.059088 0.548753 -vt 0.045714 0.828432 -vt 0.045673 0.548757 -vt 0.126166 0.548755 -vt 0.112729 0.828426 -vt 0.112751 0.548752 -vt 0.059117 0.828428 -vt 0.032312 0.828437 -vt 0.032257 0.548762 -vt 0.099327 0.828424 -vt 0.100705 0.695445 -vt 0.087588 0.695445 -vt 0.018909 0.828443 -vt 0.018841 0.548769 -vt 0.102541 0.720660 -vt 0.085752 0.720660 -vt 0.136117 0.720660 -vt 0.169694 0.720660 -vt 0.119329 0.720660 -vt 0.152906 0.720660 -vt 0.151119 0.727549 -vt 0.137904 0.727549 -vt 0.186482 0.720660 -vt 0.171480 0.727549 -vt 0.100754 0.727549 -vt 0.087538 0.727549 -vt 0.104327 0.727549 -vt 0.121115 0.727549 -vt 0.077795 0.740943 -vt 0.073051 0.737368 -vt 0.194439 0.740943 -vt 0.184696 0.727549 -vt 0.167908 0.727549 -vt 0.154692 0.727549 -vt 0.274714 0.919931 -vt 0.261210 0.982393 -vt 0.261210 0.919931 -vt 0.288333 0.987837 -vt 0.271580 0.973788 -vt 0.289932 0.985191 -vt 0.247705 0.919931 -vt 0.234201 0.982393 -vt 0.234201 0.919931 -vt 0.220697 0.982393 -vt 0.220697 0.919931 -vt 0.247705 0.982393 -vt 0.301723 0.919931 -vt 0.288219 0.982393 -vt 0.288219 0.919931 -vt 0.315227 0.919931 -vt 0.301723 0.982393 -vt 0.328732 0.919931 -vt 0.315227 0.982393 -vt 0.274714 0.982393 -vt 0.293124 0.985191 -vt 0.309933 0.968199 -vt 0.311477 0.973788 -vt 0.266945 0.970578 -vt 0.261721 0.942874 -vt 0.269323 0.970403 -vt 0.316112 0.970578 -vt 0.321335 0.942874 -vt 0.323100 0.945273 -vt 0.316112 0.910382 -vt 0.321335 0.938086 -vt 0.313734 0.910558 -vt 0.288333 0.893123 -vt 0.271580 0.907172 -vt 0.271463 0.903605 -vt 0.266945 0.910383 -vt 0.261721 0.938086 -vt 0.259957 0.935688 -vt 0.294723 0.893123 -vt 0.311476 0.907172 -vt 0.293124 0.895769 -vt 0.294723 0.987837 -vt 0.311593 0.977356 -vt 0.273123 0.912761 -vt 0.291528 0.906976 -vt 0.275734 0.916790 -vt 0.291476 0.979602 -vt 0.273049 0.968088 -vt 0.313734 0.970403 -vt 0.317609 0.940559 -vt 0.310007 0.912873 -vt 0.289932 0.895769 -vt 0.269323 0.910558 -vt 0.265447 0.940401 -vt 0.291581 0.901359 -vt 0.291528 0.973984 -vt 0.269192 0.940480 -vt 0.309933 0.912761 -vt 0.307322 0.964171 -vt 0.273123 0.968199 -vt 0.265447 0.940559 -vt 0.275734 0.964171 -vt 0.313864 0.940480 -vt 0.317609 0.940401 -vt 0.307322 0.916789 -vt 0.282700 0.682531 -vt 0.271598 0.702003 -vt 0.270797 0.682531 -vt 0.263862 0.653767 -vt 0.276843 0.637114 -vt 0.276843 0.652877 -vt 0.272434 0.675600 -vt 0.263862 0.635913 -vt 0.272669 0.614289 -vt 0.256381 0.695742 -vt 0.297255 0.695389 -vt 0.282107 0.702003 -vt 0.269648 0.894065 -vt 0.269215 0.907339 -vt 0.267789 0.894057 -vt 0.270334 0.906440 -vt 0.294268 0.923602 -vt 0.237869 0.893926 -vt 0.237791 0.911563 -vt 0.289962 0.934035 -vt 0.303659 0.931128 -vt 0.304214 0.934035 -vt 0.261457 0.934035 -vt 0.247760 0.931128 -vt 0.260902 0.931128 -vt 0.232711 0.934065 -vt 0.222295 0.920924 -vt 0.233498 0.931227 -vt 0.318708 0.934065 -vt 0.329124 0.920924 -vt 0.330769 0.923036 -vt 0.275710 0.934035 -vt 0.289407 0.931128 -vt 0.247205 0.934035 -vt 0.246640 0.931132 -vt 0.317921 0.931228 -vt 0.262012 0.931128 -vt 0.275154 0.931128 -vt 0.262012 0.953205 -vt 0.275709 0.950376 -vt 0.275154 0.953205 -vt 0.261457 0.950376 -vt 0.317931 0.952980 -vt 0.304214 0.950376 -vt 0.318708 0.949777 -vt 0.233488 0.952980 -vt 0.247205 0.950376 -vt 0.246629 0.953196 -vt 0.232711 0.949777 -vt 0.289407 0.953206 -vt 0.289962 0.950376 -vt 0.329533 0.962240 -vt 0.331194 0.959687 -vt 0.221886 0.962240 -vt 0.247760 0.953205 -vt 0.260902 0.953205 -vt 0.290517 0.953206 -vt 0.303659 0.953205 -vt 0.286548 0.925737 -vt 0.274178 0.941902 -vt 0.276506 0.922891 -vt 0.263857 0.931768 -vt 0.253669 0.941716 -vt 0.241589 0.925551 -vt 0.251491 0.922891 -vt 0.302318 0.955878 -vt 0.296095 0.940846 -vt 0.309892 0.941203 -vt 0.284417 0.944018 -vt 0.263815 0.960025 -vt 0.274027 0.944968 -vt 0.273860 0.960272 -vt 0.284163 0.946906 -vt 0.263891 0.944699 -vt 0.253734 0.959924 -vt 0.253781 0.944730 -vt 0.263905 0.941721 -vt 0.243789 0.946439 -vt 0.243564 0.943592 -vt 0.208616 0.698065 -vt 0.199561 0.713051 -vt 0.199561 0.698065 -vt 0.223046 0.714223 -vt 0.228088 0.714255 -vt 0.228001 0.723082 -vt 0.247216 0.713051 -vt 0.256270 0.698065 -vt 0.256270 0.713051 -vt 0.232635 0.696906 -vt 0.228128 0.696870 -vt 0.228192 0.688045 -vt 0.236144 0.714777 -vt 0.232647 0.713361 -vt 0.236489 0.710792 -vt 0.219824 0.696340 -vt 0.223052 0.697748 -vt 0.219448 0.700309 -vt 0.211461 0.713051 -vt 0.208616 0.713051 -vt 0.244371 0.698065 -vt 0.247216 0.698065 -vt 0.223330 0.710079 -vt 0.217127 0.701037 -vt 0.223330 0.701037 -vt 0.232384 0.710079 -vt 0.238657 0.701037 -vt 0.238657 0.710079 -vt 0.215001 0.700359 -vt 0.211461 0.698065 -vt 0.240830 0.700359 -vt 0.244370 0.713051 -vt 0.240830 0.710757 -vt 0.215001 0.710756 -vt 0.212477 0.718880 -vt 0.232384 0.701037 -vt 0.217127 0.710079 -vt 0.243247 0.691947 -vt 0.223051 0.713206 -vt 0.232650 0.697917 -vt 0.236090 0.696640 -vt 0.236348 0.700497 -vt 0.219875 0.714484 -vt 0.219585 0.710645 -vt 0.243247 0.719169 -vt 0.212477 0.692235 -vt 0.223082 0.696719 -vt 0.220294 0.682531 -vt 0.232619 0.714384 -vt 0.235699 0.728531 -vt 0.144323 0.762715 -vt 0.314455 0.975508 -vt 0.097131 0.750157 -vt 0.159735 0.751740 -vt 0.138787 0.766338 -vt 0.117867 0.751648 -vt 0.109270 0.696289 -vt 0.127627 0.976678 -vt 0.014857 0.978001 -vt 0.199651 0.750157 -vt 0.014710 0.592571 -vt 0.014697 0.110197 -vt 0.010653 0.072850 -vt 0.010554 0.041223 -vt 0.199186 0.800615 -vt 0.128645 0.801487 -vt 0.203942 0.975766 -vt 0.131861 0.038058 -vt 0.318354 0.254488 -vt 0.153393 0.041207 -vt 0.321715 0.253791 -vt 0.322483 0.009668 -vt 0.308636 0.795153 -vt 0.018435 0.799670 -vt 0.009876 0.122906 -vt 0.010440 0.091074 -vt 0.271559 0.625547 -vt 0.223589 0.607923 -vt 0.327319 0.521961 -vt 0.330014 0.552440 -vt 0.327319 0.547146 -vt 0.329035 0.557734 -vt 0.315100 0.534535 -vt 0.310543 0.557734 -vt 0.304942 0.551670 -vt 0.303745 0.541756 -vt 0.117762 0.513726 -vt 0.317971 0.398399 -vt 0.283600 0.488445 -vt 0.141926 0.346559 -vt 0.168187 0.351749 -vt 0.141640 0.374054 -vt 0.180275 0.360697 -vt 0.167479 0.368991 -vt 0.081648 0.369717 -vt 0.075115 0.362544 -vt 0.074695 0.357469 -vt 1.000000 -0.000000 -vt 0.208482 0.381137 -vt 0.219558 0.424014 -vt 0.214794 0.416868 -vt 0.214794 0.406761 -vt 0.226296 0.399615 -vt 0.231060 0.406761 -vt 0.113156 0.919818 -vt 0.328124 0.919818 -vt 0.313949 0.919163 -vt 0.317605 0.997602 -vt 0.292296 0.944377 -vt 0.283402 0.994429 -vt 0.300137 0.988169 -vt 0.219566 0.988169 -vt 0.246423 0.988169 -vt 0.273280 0.988169 -vt 0.043310 0.444474 -vt 0.043310 0.439710 -vt 0.045556 0.436341 -vt 0.050978 0.439710 -vt 0.050978 0.444474 -vt 0.052083 0.375000 -vt 0.199450 0.686569 -vt 0.167858 0.695445 -vt 0.151070 0.695445 -vt 0.126132 0.828429 -vt 0.117543 0.727549 -vt 0.134331 0.727549 -vt 0.199184 0.737368 -vt 0.271463 0.977356 -vt 0.328732 0.982393 -vt 0.291581 0.979602 -vt 0.259957 0.945273 -vt 0.323100 0.935687 -vt 0.311593 0.903605 -vt 0.291476 0.901359 -vt 0.310007 0.968087 -vt 0.273049 0.912873 -vt 0.237860 0.876290 -vt 0.290517 0.931128 -vt 0.220707 0.923131 -vt 0.276265 0.931128 -vt 0.304779 0.931132 -vt 0.304790 0.953196 -vt 0.276265 0.953205 -vt 0.220287 0.959600 -vt 0.293315 0.949913 -vt 0.220063 0.728189 -vt 0.235926 0.682997 -vt 0.216897 0.712351 -vt 0.238896 0.698725 -vt 0.238896 0.712391 -vt 0.216897 0.698764 -vt 0.176993 0.860576 -vt 0.163321 0.799991 -vt 0.048042 0.441712 -vt 0.048083 0.435555 -vt 0.263488 0.637699 +vt 0.195007 0.587425 +vt 0.201745 0.621001 +vt 0.195007 0.621001 +vt 0.201745 0.587425 +vt 0.208482 0.621001 +vt 0.154582 0.587425 +vt 0.161320 0.621001 +vt 0.154582 0.621001 +vt 0.161319 0.587425 +vt 0.168057 0.621001 +vt 0.168057 0.587425 +vt 0.174795 0.621001 +vt 0.174795 0.587425 +vt 0.181532 0.621001 +vt 0.231060 0.611245 +vt 0.226296 0.616009 +vt 0.219558 0.599743 +vt 0.181532 0.587425 +vt 0.188270 0.621001 +vt 0.188270 0.587425 +vt 0.126584 0.946545 +vt 0.140012 0.805801 +vt 0.140013 0.946545 +vt 0.207154 0.805801 +vt 0.207155 0.946545 +vt 0.166870 0.946545 +vt 0.153440 0.805801 +vt 0.166869 0.805801 +vt 0.180298 0.946545 +vt 0.153441 0.946545 +vt 0.234135 0.916941 +vt 0.220697 0.946508 +vt 0.220707 0.916936 +vt 0.220583 0.946544 +vt 0.220582 0.805801 +vt 0.113155 0.805801 +vt 0.126584 0.805801 +vt 0.314568 0.927703 +vt 0.309497 0.911649 +vt 0.313761 0.912852 +vt 0.301277 0.916963 +vt 0.287839 0.946531 +vt 0.287849 0.916959 +vt 0.260992 0.916950 +vt 0.247553 0.946517 +vt 0.247564 0.916945 +vt 0.328134 0.916973 +vt 0.314695 0.946541 +vt 0.314706 0.916968 +vt 0.274410 0.946527 +vt 0.274420 0.916954 +vt 0.260982 0.946522 +vt 0.234125 0.946513 +vt 0.301267 0.946536 +vt 0.308531 0.965365 +vt 0.297558 0.946631 +vt 0.309626 0.947366 +vt 0.314647 0.931012 +vt 0.310460 0.929361 +vt 0.311777 0.982171 +vt 0.312696 0.967078 +vt 0.320287 0.865187 +vt 0.307573 0.876224 +vt 0.317673 0.861500 +vt 0.313606 0.909991 +vt 0.308535 0.893937 +vt 0.312799 0.895139 +vt 0.312873 0.964171 +vt 0.313792 0.949078 +vt 0.320287 0.994669 +vt 0.307435 0.983365 +vt 0.312643 0.892279 +vt 0.311836 0.877427 +vt 0.296659 0.894582 +vt 0.293357 0.911091 +vt 0.292551 0.896239 +vt 0.295697 0.876869 +vt 0.297621 0.912294 +vt 0.298902 0.929432 +vt 0.296462 0.964631 +vt 0.260683 0.940469 +vt 0.247255 0.990105 +vt 0.247255 0.940469 +vt 0.293215 0.947825 +vt 0.295366 0.982631 +vt 0.281238 0.992293 +vt 0.291201 0.980918 +vt 0.292395 0.893379 +vt 0.291588 0.878527 +vt 0.270381 0.921133 +vt 0.294350 0.909842 +vt 0.269266 0.920527 +vt 0.292119 0.965825 +vt 0.281862 0.867275 +vt 0.284016 0.863361 +vt 0.300968 0.990105 +vt 0.288372 0.992113 +vt 0.287540 0.990105 +vt 0.287540 0.940469 +vt 0.274112 0.990105 +vt 0.274112 0.940469 +vt 0.206969 0.940469 +vt 0.193541 0.990105 +vt 0.193541 0.940469 +vt 0.233826 0.940469 +vt 0.220398 0.990105 +vt 0.220398 0.940469 +vt 0.260683 0.990105 +vt 0.300968 0.940469 +vt 0.206969 0.990105 +vt 0.233826 0.990105 +vt 0.000000 0.604167 +vt 0.052083 0.614583 +vt 0.000000 0.614583 +vt 0.207801 0.992113 +vt 0.234658 0.992113 +vt 0.259851 0.992113 +vt 0.248086 0.992113 +vt 0.286708 0.992113 +vt 0.274943 0.992113 +vt 0.206138 0.992113 +vt 0.194373 0.992113 +vt 0.232995 0.992113 +vt 0.221230 0.992113 +vt 0.261515 0.992113 +vt 0.048732 0.631895 +vt 0.045556 0.631895 +vt 0.048732 0.624227 +vt 0.000000 0.583333 +vt 0.052083 0.593750 +vt 0.000000 0.593750 +vt 0.000000 0.645833 +vt 0.052083 0.656250 +vt 0.000000 0.656250 +vt 0.000000 0.625000 +vt 0.052083 0.635417 +vt 0.000000 0.635417 +vt 0.052083 0.625000 +vt 0.052083 0.604167 +vt 0.052083 0.666667 +vt 0.000000 0.666667 +vt 0.052083 0.645833 +vt 0.077693 0.788354 +vt 0.085752 0.801871 +vt 0.072784 0.791046 +vt 0.099335 0.699167 +vt 0.085924 0.885616 +vt 0.085920 0.699167 +vt 0.194542 0.788354 +vt 0.186482 0.801871 +vt 0.184647 0.796963 +vt 0.154742 0.796963 +vt 0.169694 0.801871 +vt 0.152906 0.801871 +vt 0.137953 0.796963 +vt 0.136117 0.801871 +vt 0.171530 0.796963 +vt 0.117493 0.796963 +vt 0.102541 0.801871 +vt 0.104376 0.796963 +vt 0.134281 0.796963 +vt 0.119329 0.801871 +vt 0.121165 0.796963 +vt 0.072504 0.699167 +vt 0.072521 0.885617 +vt 0.059088 0.699169 +vt 0.045714 0.885621 +vt 0.045673 0.699171 +vt 0.126166 0.699170 +vt 0.112729 0.885617 +vt 0.112751 0.699168 +vt 0.059117 0.885619 +vt 0.032312 0.885625 +vt 0.032257 0.699175 +vt 0.099327 0.885616 +vt 0.100705 0.796963 +vt 0.087588 0.796963 +vt 0.018909 0.885629 +vt 0.018841 0.699179 +vt 0.102541 0.813773 +vt 0.085752 0.813773 +vt 0.136117 0.813773 +vt 0.169694 0.813773 +vt 0.119329 0.813773 +vt 0.152906 0.813773 +vt 0.151119 0.818366 +vt 0.137904 0.818366 +vt 0.186482 0.813773 +vt 0.171480 0.818366 +vt 0.100754 0.818366 +vt 0.087538 0.818366 +vt 0.104327 0.818366 +vt 0.121115 0.818366 +vt 0.077795 0.827295 +vt 0.073051 0.824912 +vt 0.194439 0.827295 +vt 0.184696 0.818366 +vt 0.167908 0.818366 +vt 0.154692 0.818366 +vt 0.274714 0.946621 +vt 0.261210 0.988262 +vt 0.261210 0.946621 +vt 0.288333 0.991891 +vt 0.271580 0.982525 +vt 0.289932 0.990127 +vt 0.247705 0.946621 +vt 0.234201 0.988262 +vt 0.234201 0.946621 +vt 0.220697 0.988262 +vt 0.220697 0.946621 +vt 0.247705 0.988262 +vt 0.301723 0.946621 +vt 0.288219 0.988262 +vt 0.288219 0.946621 +vt 0.315227 0.946621 +vt 0.301723 0.988262 +vt 0.328732 0.946621 +vt 0.315227 0.988262 +vt 0.274714 0.988262 +vt 0.293124 0.990127 +vt 0.309933 0.978799 +vt 0.311477 0.982525 +vt 0.266945 0.980385 +vt 0.261721 0.961916 +vt 0.269323 0.980269 +vt 0.316112 0.980385 +vt 0.321335 0.961916 +vt 0.323100 0.963515 +vt 0.316112 0.940255 +vt 0.321335 0.958724 +vt 0.313734 0.940372 +vt 0.288333 0.928749 +vt 0.271580 0.938115 +vt 0.271463 0.935737 +vt 0.266945 0.940255 +vt 0.261721 0.958724 +vt 0.259957 0.957125 +vt 0.294723 0.928749 +vt 0.311476 0.938115 +vt 0.293124 0.930513 +vt 0.294723 0.991891 +vt 0.311593 0.984904 +vt 0.273123 0.941841 +vt 0.291528 0.937984 +vt 0.275734 0.944527 +vt 0.291476 0.986401 +vt 0.273049 0.978725 +vt 0.313734 0.980269 +vt 0.317609 0.960373 +vt 0.310007 0.941915 +vt 0.289932 0.930513 +vt 0.269323 0.940372 +vt 0.265447 0.960267 +vt 0.291581 0.934239 +vt 0.291528 0.982656 +vt 0.269192 0.960320 +vt 0.309933 0.941841 +vt 0.307322 0.976114 +vt 0.273123 0.978799 +vt 0.265447 0.960373 +vt 0.275734 0.976114 +vt 0.313864 0.960320 +vt 0.317609 0.960267 +vt 0.307322 0.944526 +vt 0.282700 0.788354 +vt 0.271598 0.801335 +vt 0.270797 0.788354 +vt 0.263862 0.769178 +vt 0.276843 0.758076 +vt 0.276843 0.768585 +vt 0.272434 0.783733 +vt 0.263862 0.757275 +vt 0.272669 0.742859 +vt 0.256381 0.797161 +vt 0.297255 0.796926 +vt 0.282107 0.801335 +vt 0.269648 0.929377 +vt 0.269215 0.938226 +vt 0.267789 0.929371 +vt 0.270334 0.937627 +vt 0.294268 0.949068 +vt 0.237869 0.929284 +vt 0.237791 0.941042 +vt 0.289962 0.956023 +vt 0.303659 0.954085 +vt 0.304214 0.956023 +vt 0.261457 0.956023 +vt 0.247760 0.954085 +vt 0.260902 0.954085 +vt 0.232711 0.956043 +vt 0.222295 0.947283 +vt 0.233498 0.954151 +vt 0.318708 0.956043 +vt 0.329124 0.947283 +vt 0.330769 0.948691 +vt 0.275710 0.956023 +vt 0.289407 0.954085 +vt 0.247205 0.956023 +vt 0.246640 0.954088 +vt 0.317921 0.954152 +vt 0.262012 0.954085 +vt 0.275154 0.954085 +vt 0.262012 0.968803 +vt 0.275709 0.966917 +vt 0.275154 0.968803 +vt 0.261457 0.966917 +vt 0.317931 0.968653 +vt 0.304214 0.966917 +vt 0.318708 0.966518 +vt 0.233488 0.968653 +vt 0.247205 0.966917 +vt 0.246629 0.968797 +vt 0.232711 0.966518 +vt 0.289407 0.968804 +vt 0.289962 0.966917 +vt 0.329533 0.974827 +vt 0.331194 0.973125 +vt 0.221886 0.974827 +vt 0.247760 0.968803 +vt 0.260902 0.968803 +vt 0.290517 0.968804 +vt 0.303659 0.968803 +vt 0.286548 0.950491 +vt 0.274178 0.961268 +vt 0.276506 0.948594 +vt 0.263857 0.954512 +vt 0.253669 0.961144 +vt 0.241589 0.950367 +vt 0.251491 0.948594 +vt 0.302318 0.970585 +vt 0.296095 0.960564 +vt 0.309892 0.960802 +vt 0.284417 0.962679 +vt 0.263815 0.973350 +vt 0.274027 0.963312 +vt 0.273860 0.973515 +vt 0.284163 0.964604 +vt 0.263891 0.963133 +vt 0.253734 0.973283 +vt 0.253781 0.963153 +vt 0.263905 0.961147 +vt 0.243789 0.964293 +vt 0.243564 0.962395 +vt 0.208616 0.798710 +vt 0.199561 0.808701 +vt 0.199561 0.798710 +vt 0.223046 0.809482 +vt 0.228088 0.809503 +vt 0.228001 0.815388 +vt 0.247216 0.808701 +vt 0.256270 0.798710 +vt 0.256270 0.808701 +vt 0.232635 0.797937 +vt 0.228128 0.797913 +vt 0.228192 0.792030 +vt 0.236144 0.809851 +vt 0.232647 0.808907 +vt 0.236489 0.807195 +vt 0.219824 0.797560 +vt 0.223052 0.798499 +vt 0.219448 0.800206 +vt 0.211461 0.808701 +vt 0.208616 0.808701 +vt 0.244371 0.798710 +vt 0.247216 0.798710 +vt 0.223330 0.806719 +vt 0.217127 0.800691 +vt 0.223330 0.800691 +vt 0.232384 0.806719 +vt 0.238657 0.800691 +vt 0.238657 0.806719 +vt 0.215001 0.800239 +vt 0.211461 0.798710 +vt 0.240830 0.800239 +vt 0.244370 0.808701 +vt 0.240830 0.807171 +vt 0.215001 0.807171 +vt 0.212477 0.812587 +vt 0.232384 0.800691 +vt 0.217127 0.806719 +vt 0.243247 0.794631 +vt 0.223051 0.808804 +vt 0.232650 0.798611 +vt 0.236090 0.797760 +vt 0.236348 0.800331 +vt 0.219875 0.809656 +vt 0.219585 0.807097 +vt 0.243247 0.812779 +vt 0.212477 0.794823 +vt 0.223082 0.797813 +vt 0.220294 0.788354 +vt 0.232619 0.809589 +vt 0.235699 0.819021 +vt 0.144323 0.841810 +vt 0.314455 0.983672 +vt 0.097131 0.833438 +vt 0.159735 0.834493 +vt 0.138787 0.844225 +vt 0.117867 0.834432 +vt 0.109270 0.797526 +vt 0.127627 0.984452 +vt 0.014857 0.985334 +vt 0.199651 0.833438 +vt 0.014710 0.728381 +vt 0.014697 0.406798 +vt 0.010653 0.381900 +vt 0.010554 0.360815 +vt 0.199186 0.867077 +vt 0.128645 0.867658 +vt 0.203942 0.983844 +vt 0.131861 0.358705 +vt 0.318354 0.502992 +vt 0.153393 0.360805 +vt 0.321715 0.502527 +vt 0.322483 0.339779 +vt 0.308636 0.863435 +vt 0.018435 0.866447 +vt 0.009876 0.415271 +vt 0.010440 0.394049 +vt 0.271559 0.750365 +vt 0.223589 0.738615 +vt 0.327319 0.681307 +vt 0.330014 0.701627 +vt 0.327319 0.698097 +vt 0.329035 0.705156 +vt 0.315100 0.689690 +vt 0.310543 0.705156 +vt 0.304942 0.701113 +vt 0.303745 0.694504 +vt 0.117762 0.675817 +vt 0.317971 0.598933 +vt 0.283600 0.658963 +vt 0.141926 0.564373 +vt 0.168187 0.567833 +vt 0.141640 0.582703 +vt 0.180275 0.573798 +vt 0.167479 0.579327 +vt 0.081648 0.579811 +vt 0.075115 0.575029 +vt 0.074695 0.571646 +vt 1.000000 0.333333 +vt 0.208482 0.587425 +vt 0.219558 0.616009 +vt 0.214794 0.611245 +vt 0.214794 0.604507 +vt 0.226296 0.599743 +vt 0.231060 0.604507 +vt 0.113156 0.946545 +vt 0.328124 0.946545 +vt 0.313949 0.946109 +vt 0.317605 0.998401 +vt 0.292296 0.962918 +vt 0.283402 0.996286 +vt 0.300137 0.992113 +vt 0.219566 0.992113 +vt 0.246423 0.992113 +vt 0.273280 0.992113 +vt 0.043310 0.629649 +vt 0.043310 0.626473 +vt 0.045556 0.624227 +vt 0.050978 0.626473 +vt 0.050978 0.629649 +vt 0.052083 0.583333 +vt 0.199450 0.791046 +vt 0.167858 0.796963 +vt 0.151070 0.796963 +vt 0.126132 0.885619 +vt 0.117543 0.818366 +vt 0.134331 0.818366 +vt 0.199184 0.824912 +vt 0.271463 0.984904 +vt 0.328732 0.988262 +vt 0.291581 0.986401 +vt 0.259957 0.963515 +vt 0.323100 0.957125 +vt 0.311593 0.935737 +vt 0.291476 0.934239 +vt 0.310007 0.978725 +vt 0.273049 0.941915 +vt 0.237860 0.917527 +vt 0.290517 0.954085 +vt 0.220707 0.948754 +vt 0.276265 0.954085 +vt 0.304779 0.954088 +vt 0.304790 0.968797 +vt 0.276265 0.968803 +vt 0.220287 0.973067 +vt 0.293315 0.966609 +vt 0.220063 0.818793 +vt 0.235926 0.788665 +vt 0.216897 0.808234 +vt 0.238896 0.799150 +vt 0.238896 0.808261 +vt 0.216897 0.799176 +vt 0.176993 0.907051 +vt 0.163321 0.866661 +vt 0.048042 0.627808 +vt 0.048083 0.623703 +vt 0.000000 0.327174 +vt 0.000000 0.063451 +vt 0.263723 0.063451 +vt 0.263723 0.327174 +vt 0.263488 0.758466 s 0 f 1/1/1 3/2/1 4/3/1 f 4/3/2 5/4/2 6/5/2 @@ -2843,7 +2851,9 @@ f 67/70/567 480/76/567 476/70/567 f 23/24/568 481/10/568 469/24/568 f 321/868/132 323/868/132 325/868/132 f 246/869/132 248/869/132 250/869/132 -f 147/214/153 60/870/153 479/218/153 +f 487/870/66 486/871/66 489/872/66 +f 487/870/66 489/872/66 488/873/66 +f 147/214/153 60/874/153 479/218/153 f 421/859/6 420/701/6 426/713/6 f 423/705/6 422/707/6 416/704/6 f 421/859/6 426/713/6 423/705/6 @@ -3014,275 +3024,275 @@ vn 0.4012 0.9160 -0.0000 vn 1.0000 -0.0023 -0.0000 vn 0.3982 0.9173 0.0006 vn 1.0000 -0.0038 -0.0002 -vt 0.270772 0.021748 -vt 0.259071 0.044520 -vt 0.258022 0.040873 -vt 0.124225 0.297698 -vt 0.000380 0.290063 -vt 0.124223 0.290059 -vt 0.000378 0.282428 -vt 0.124220 0.282425 -vt 0.124223 0.335878 -vt 0.000382 0.328240 -vt 0.124225 0.328243 -vt 0.124227 0.305336 -vt 0.000387 0.312974 -vt 0.000384 0.305339 -vt 0.124221 0.343509 -vt 0.000380 0.335874 -vt 0.000384 0.320605 -vt 0.124227 0.320609 -vt 0.000382 0.297701 -vt 0.124229 0.312974 -vt 0.301296 0.107856 -vt 0.311550 0.080842 -vt 0.315428 0.086659 -vt 0.319568 0.052066 -vt 0.317107 0.080578 -vt 0.317107 0.050600 -vt 0.254931 0.052066 -vt 0.257392 0.080578 -vt 0.254911 0.079099 -vt 0.303748 0.109442 -vt 0.316485 0.090335 -vt 0.316477 0.040872 -vt 0.301296 0.023322 -vt 0.303727 0.021748 -vt 0.278234 0.017112 -vt 0.297242 0.020803 -vt 0.277257 0.020803 -vt 0.270772 0.109430 -vt 0.259071 0.086659 -vt 0.273203 0.107856 -vt 0.278234 0.114066 -vt 0.297242 0.110375 -vt 0.296257 0.114096 -vt 0.297242 0.029029 -vt 0.278257 0.033023 -vt 0.277257 0.029029 -vt 0.311623 0.050600 -vt 0.257392 0.050600 -vt 0.262876 0.080578 -vt 0.315428 0.044519 -vt 0.297418 0.029138 -vt 0.277081 0.102040 -vt 0.277257 0.110375 -vt 0.297242 0.102149 -vt 0.273203 0.023322 -vt 0.262949 0.050336 -vt 0.308960 0.079078 -vt 0.278257 0.098155 -vt 0.265539 0.052100 -vt 0.277257 0.102149 -vt 0.296243 0.098155 -vt 0.311623 0.080578 -vt 0.308960 0.052100 -vt 0.262876 0.050600 -vt 0.265539 0.079078 -vt 0.296242 0.033023 -vt 0.189118 0.066082 -vt 0.194118 0.093837 -vt 0.187203 0.068873 -vt 0.246869 0.062649 -vt 0.244287 0.031805 -vt 0.251935 0.059501 -vt 0.246935 0.093837 -vt 0.251935 0.066083 -vt 0.253850 0.068873 -vt 0.196766 0.031805 -vt 0.187203 0.056711 -vt 0.194097 0.031747 -vt 0.246956 0.031747 -vt 0.253850 0.056711 -vt 0.222720 0.109905 -vt 0.241223 0.102404 -vt 0.224565 0.112754 -vt 0.199830 0.102404 -vt 0.218332 0.109905 -vt 0.216488 0.112754 -vt 0.216488 0.012829 -vt 0.199869 0.027151 -vt 0.199830 0.023147 -vt 0.241184 0.027151 -vt 0.224565 0.012829 -vt 0.241223 0.023147 -vt 0.203910 0.087717 -vt 0.220431 0.102305 -vt 0.201967 0.090833 -vt 0.239221 0.090631 -vt 0.244287 0.093779 -vt 0.201832 0.034953 -vt 0.189118 0.059501 -vt 0.220622 0.102305 -vt 0.241184 0.098433 -vt 0.220431 0.023279 -vt 0.218333 0.015679 -vt 0.199868 0.098433 -vt 0.239086 0.034751 -vt 0.222720 0.015679 -vt 0.194184 0.062935 -vt 0.196766 0.093779 -vt 0.197027 0.062792 -vt 0.220527 0.027543 -vt 0.244026 0.062792 -vt 0.237143 0.037867 -vt 0.220622 0.023278 -vt 0.201832 0.090631 -vt 0.239221 0.034953 -vt 0.237143 0.087717 -vt 0.246869 0.062935 -vt 0.203910 0.037867 -vt 0.194184 0.062649 -vt 0.239086 0.090833 -vt 0.201967 0.034750 -vt 0.000378 0.343505 -vt 0.297419 0.102040 -vt 0.319588 0.079099 -vt 0.296265 0.017112 -vt 0.258014 0.090336 -vt 0.311550 0.050336 -vt 0.262949 0.080842 -vt 0.277081 0.029138 -vt 0.220526 0.098041 -vt 0.137874 0.461278 -vt 0.058604 0.420707 -vt 0.138976 0.425869 -vt 0.064584 0.393192 -vt 0.133379 0.393550 -vt 0.134776 0.484662 -vt 0.059414 0.457228 -vt 0.062578 0.483566 +vt 0.270772 0.347832 +vt 0.259071 0.363013 +vt 0.258022 0.360582 +vt 0.124225 0.531799 +vt 0.000380 0.526709 +vt 0.124223 0.526706 +vt 0.000378 0.521619 +vt 0.124220 0.521617 +vt 0.124223 0.557252 +vt 0.000382 0.552160 +vt 0.124225 0.552162 +vt 0.124227 0.536891 +vt 0.000387 0.541983 +vt 0.000384 0.536893 +vt 0.124221 0.562339 +vt 0.000380 0.557249 +vt 0.000384 0.547070 +vt 0.124227 0.547073 +vt 0.000382 0.531801 +vt 0.124229 0.541983 +vt 0.301296 0.405237 +vt 0.311550 0.387228 +vt 0.315428 0.391106 +vt 0.319568 0.368044 +vt 0.317107 0.387052 +vt 0.317107 0.367067 +vt 0.254931 0.368044 +vt 0.257392 0.387052 +vt 0.254911 0.386066 +vt 0.303748 0.406295 +vt 0.316485 0.393557 +vt 0.316477 0.360581 +vt 0.301296 0.348881 +vt 0.303727 0.347832 +vt 0.278234 0.344741 +vt 0.297242 0.347202 +vt 0.277257 0.347202 +vt 0.270772 0.406287 +vt 0.259071 0.391106 +vt 0.273203 0.405237 +vt 0.278234 0.409377 +vt 0.297242 0.406917 +vt 0.296257 0.409397 +vt 0.297242 0.352686 +vt 0.278257 0.355349 +vt 0.277257 0.352686 +vt 0.311623 0.367067 +vt 0.257392 0.367067 +vt 0.262876 0.387052 +vt 0.315428 0.363013 +vt 0.297418 0.352759 +vt 0.277081 0.401360 +vt 0.277257 0.406917 +vt 0.297242 0.401433 +vt 0.273203 0.348881 +vt 0.262949 0.366891 +vt 0.308960 0.386052 +vt 0.278257 0.398770 +vt 0.265539 0.368067 +vt 0.277257 0.401433 +vt 0.296243 0.398770 +vt 0.311623 0.387052 +vt 0.308960 0.368067 +vt 0.262876 0.367067 +vt 0.265539 0.386052 +vt 0.296242 0.355349 +vt 0.189118 0.377388 +vt 0.194118 0.395891 +vt 0.187203 0.379249 +vt 0.246869 0.375099 +vt 0.244287 0.354537 +vt 0.251935 0.373001 +vt 0.246935 0.395891 +vt 0.251935 0.377389 +vt 0.253850 0.379249 +vt 0.196766 0.354537 +vt 0.187203 0.371141 +vt 0.194097 0.354498 +vt 0.246956 0.354498 +vt 0.253850 0.371141 +vt 0.222720 0.406603 +vt 0.241223 0.401603 +vt 0.224565 0.408503 +vt 0.199830 0.401603 +vt 0.218332 0.406603 +vt 0.216488 0.408503 +vt 0.216488 0.341886 +vt 0.199869 0.351434 +vt 0.199830 0.348765 +vt 0.241184 0.351434 +vt 0.224565 0.341886 +vt 0.241223 0.348765 +vt 0.203910 0.391811 +vt 0.220431 0.401537 +vt 0.201967 0.393889 +vt 0.239221 0.393754 +vt 0.244287 0.395853 +vt 0.201832 0.356635 +vt 0.189118 0.373001 +vt 0.220622 0.401537 +vt 0.241184 0.398955 +vt 0.220431 0.348853 +vt 0.218333 0.343786 +vt 0.199868 0.398955 +vt 0.239086 0.356501 +vt 0.222720 0.343786 +vt 0.194184 0.375290 +vt 0.196766 0.395853 +vt 0.197027 0.375195 +vt 0.220527 0.351695 +vt 0.244026 0.375195 +vt 0.237143 0.358578 +vt 0.220622 0.348852 +vt 0.201832 0.393754 +vt 0.239221 0.356635 +vt 0.237143 0.391811 +vt 0.246869 0.375290 +vt 0.203910 0.358578 +vt 0.194184 0.375099 +vt 0.239086 0.393889 +vt 0.201967 0.356500 +vt 0.000378 0.562337 +vt 0.297419 0.401360 +vt 0.319588 0.386066 +vt 0.296265 0.344741 +vt 0.258014 0.393557 +vt 0.311550 0.366891 +vt 0.262949 0.387228 +vt 0.277081 0.352759 +vt 0.220526 0.398694 +vt 0.137874 0.640852 +vt 0.058604 0.613805 +vt 0.138976 0.617246 +vt 0.064584 0.595461 +vt 0.133379 0.595700 +vt 0.134776 0.656441 +vt 0.059414 0.638152 +vt 0.062578 0.655711 s 0 -f 487/871/596 489/872/596 486/873/596 -f 491/874/597 493/875/597 490/876/597 -f 490/876/598 495/877/598 494/878/598 -f 497/879/599 499/880/599 496/881/599 -f 487/882/600 500/883/600 501/884/600 -f 494/885/601 498/886/601 497/879/601 -f 496/881/602 503/887/602 502/888/602 -f 487/882/603 492/889/603 491/874/603 -f 502/888/604 500/883/604 486/890/604 -f 505/891/601 507/892/601 504/893/601 -f 490/894/605 504/895/605 508/896/605 -f 486/897/606 509/898/606 502/899/606 -f 497/900/607 504/893/607 494/901/607 -f 490/902/608 510/903/608 491/904/608 -f 487/905/609 510/906/609 488/907/609 -f 496/908/610 509/909/610 511/910/610 -f 496/911/611 505/912/611 497/913/611 -f 513/914/612 515/915/612 512/916/612 -f 504/895/613 516/917/613 508/896/613 -f 489/918/614 518/919/614 509/898/614 -f 508/920/597 513/921/597 510/903/597 -f 509/909/615 519/922/615 511/910/615 -f 510/906/603 512/916/603 488/907/603 -f 511/923/616 506/924/616 505/912/616 -f 488/925/617 517/926/617 489/872/617 -f 521/927/618 523/928/618 525/929/618 -f 519/930/619 522/931/619 506/924/619 -f 517/926/620 515/915/620 525/929/620 -f 507/892/621 522/931/621 521/927/621 -f 507/932/622 520/933/622 516/917/622 -f 517/934/623 524/935/623 518/919/623 -f 513/921/624 520/933/624 514/936/624 -f 519/922/625 524/935/625 523/928/625 -f 526/937/626 501/938/626 500/939/626 -f 529/940/601 531/941/601 528/942/601 -f 493/943/627 528/944/627 495/945/627 -f 533/946/628 500/947/628 503/948/628 -f 528/942/629 498/949/629 495/950/629 -f 534/951/630 493/952/630 492/953/630 -f 501/954/631 534/955/631 492/956/631 -f 499/957/632 533/958/632 503/959/632 -f 531/960/633 499/961/633 498/962/633 -f 537/963/634 539/964/634 536/965/634 -f 540/966/613 528/944/613 532/967/613 -f 541/968/614 526/969/614 533/946/614 -f 539/970/597 532/971/597 534/951/597 -f 543/972/615 533/958/615 535/973/615 -f 536/965/603 534/955/603 527/974/603 -f 530/975/616 535/976/616 531/960/616 -f 542/977/617 527/978/617 526/937/617 -f 545/979/635 547/980/635 549/981/635 -f 548/982/636 543/983/636 530/975/636 -f 545/979/637 536/984/637 542/977/637 -f 529/940/638 548/982/638 530/985/638 -f 544/986/639 529/987/639 540/966/639 -f 546/988/640 542/989/640 541/968/640 -f 539/970/641 544/986/641 540/990/641 -f 543/972/642 546/988/642 541/991/642 -f 487/871/643 488/925/643 489/872/643 -f 491/874/597 492/889/597 493/875/597 -f 490/876/598 493/875/598 495/877/598 -f 497/879/599 498/886/599 499/880/599 -f 487/882/644 486/890/644 500/883/644 -f 494/885/601 495/992/601 498/886/601 -f 496/881/602 499/880/602 503/887/602 -f 487/882/603 501/884/603 492/889/603 -f 502/888/614 503/887/614 500/883/614 -f 505/891/601 506/993/601 507/892/601 -f 490/894/645 494/994/645 504/895/645 -f 486/897/646 489/918/646 509/898/646 -f 497/900/607 505/891/607 504/893/607 -f 490/902/608 508/920/608 510/903/608 -f 487/905/609 491/995/609 510/906/609 -f 496/908/647 502/996/647 509/909/647 -f 496/911/648 511/923/648 505/912/648 -f 513/914/612 514/936/612 515/915/612 -f 504/895/613 507/932/613 516/917/613 -f 489/918/614 517/934/614 518/919/614 -f 508/920/597 516/997/597 513/921/597 -f 509/909/615 518/998/615 519/922/615 -f 510/906/603 513/914/603 512/916/603 -f 511/923/616 519/930/616 506/924/616 -f 488/925/617 512/999/617 517/926/617 -f 514/936/618 520/933/618 521/927/618 -f 521/927/618 522/931/618 523/928/618 -f 523/928/618 524/935/618 525/929/618 -f 525/929/618 515/915/618 514/936/618 -f 514/936/618 521/927/618 525/929/618 -f 519/930/619 523/928/619 522/931/619 -f 517/926/620 512/999/620 515/915/620 -f 507/892/621 506/993/621 522/931/621 -f 507/932/622 521/927/622 520/933/622 -f 517/934/623 525/929/623 524/935/623 -f 513/921/624 516/997/624 520/933/624 -f 519/922/625 518/998/625 524/935/625 -f 526/937/649 527/978/649 501/938/649 -f 529/940/601 530/985/601 531/941/601 -f 493/943/650 532/967/650 528/944/650 -f 533/946/628 526/969/628 500/947/628 -f 528/942/629 531/941/629 498/949/629 -f 534/951/630 532/971/630 493/952/630 -f 501/954/631 527/974/631 534/955/631 -f 499/957/651 535/973/651 533/958/651 -f 531/960/652 535/976/652 499/961/652 -f 537/963/634 538/1000/634 539/964/634 -f 540/966/613 529/987/613 528/944/613 -f 541/968/614 542/989/614 526/969/614 -f 539/970/597 540/990/597 532/971/597 -f 543/972/615 541/991/615 533/958/615 -f 536/965/603 539/964/603 534/955/603 -f 530/975/616 543/983/616 535/976/616 -f 542/977/617 536/984/617 527/978/617 -f 549/981/635 544/986/635 538/1000/635 -f 538/1000/635 537/963/635 545/979/635 -f 545/979/635 546/988/635 547/980/635 -f 547/980/635 548/982/635 549/981/635 -f 549/981/635 538/1000/635 545/979/635 -f 548/982/636 547/980/636 543/983/636 -f 545/979/637 537/963/637 536/984/637 -f 529/940/638 549/981/638 548/982/638 -f 544/986/639 549/981/639 529/987/639 -f 546/988/640 545/979/640 542/989/640 -f 539/970/641 538/1000/641 544/986/641 -f 543/972/642 547/980/642 546/988/642 -f 555/1001/653 552/1002/653 554/1003/653 -f 554/1003/654 556/1004/654 553/1005/654 -f 557/1006/655 550/1007/655 555/1001/655 -f 555/1001/653 550/1007/653 552/1002/653 -f 554/1003/656 552/1002/656 556/1004/656 -f 557/1006/657 551/1008/657 550/1007/657 +f 491/875/596 493/876/596 490/877/596 +f 495/878/597 497/879/597 494/880/597 +f 494/880/598 499/881/598 498/882/598 +f 501/883/599 503/884/599 500/885/599 +f 491/886/600 504/887/600 505/888/600 +f 498/889/601 502/890/601 501/883/601 +f 500/885/602 507/891/602 506/892/602 +f 491/886/603 496/893/603 495/878/603 +f 506/892/604 504/887/604 490/894/604 +f 509/895/601 511/896/601 508/897/601 +f 494/898/605 508/899/605 512/900/605 +f 490/901/606 513/902/606 506/903/606 +f 501/904/607 508/897/607 498/905/607 +f 494/906/608 514/907/608 495/908/608 +f 491/909/609 514/910/609 492/911/609 +f 500/912/610 513/913/610 515/914/610 +f 500/915/611 509/916/611 501/917/611 +f 517/918/612 519/919/612 516/920/612 +f 508/899/613 520/921/613 512/900/613 +f 493/922/614 522/923/614 513/902/614 +f 512/924/597 517/925/597 514/907/597 +f 513/913/615 523/926/615 515/914/615 +f 514/910/603 516/920/603 492/911/603 +f 515/927/616 510/928/616 509/916/616 +f 492/929/617 521/930/617 493/876/617 +f 525/931/618 527/932/618 529/933/618 +f 523/934/619 526/935/619 510/928/619 +f 521/930/620 519/919/620 529/933/620 +f 511/896/621 526/935/621 525/931/621 +f 511/936/622 524/937/622 520/921/622 +f 521/938/623 528/939/623 522/923/623 +f 517/925/624 524/937/624 518/940/624 +f 523/926/625 528/939/625 527/932/625 +f 530/941/626 505/942/626 504/943/626 +f 533/944/601 535/945/601 532/946/601 +f 497/947/627 532/948/627 499/949/627 +f 537/950/628 504/951/628 507/952/628 +f 532/946/629 502/953/629 499/954/629 +f 538/955/630 497/956/630 496/957/630 +f 505/958/631 538/959/631 496/960/631 +f 503/961/632 537/962/632 507/963/632 +f 535/964/633 503/965/633 502/966/633 +f 541/967/634 543/968/634 540/969/634 +f 544/970/613 532/948/613 536/971/613 +f 545/972/614 530/973/614 537/950/614 +f 543/974/597 536/975/597 538/955/597 +f 547/976/615 537/962/615 539/977/615 +f 540/969/603 538/959/603 531/978/603 +f 534/979/616 539/980/616 535/964/616 +f 546/981/617 531/982/617 530/941/617 +f 549/983/635 551/984/635 553/985/635 +f 552/986/636 547/987/636 534/979/636 +f 549/983/637 540/988/637 546/981/637 +f 533/944/638 552/986/638 534/989/638 +f 548/990/639 533/991/639 544/970/639 +f 550/992/640 546/993/640 545/972/640 +f 543/974/641 548/990/641 544/994/641 +f 547/976/642 550/992/642 545/995/642 +f 491/875/643 492/929/643 493/876/643 +f 495/878/597 496/893/597 497/879/597 +f 494/880/598 497/879/598 499/881/598 +f 501/883/599 502/890/599 503/884/599 +f 491/886/644 490/894/644 504/887/644 +f 498/889/601 499/996/601 502/890/601 +f 500/885/602 503/884/602 507/891/602 +f 491/886/603 505/888/603 496/893/603 +f 506/892/614 507/891/614 504/887/614 +f 509/895/601 510/997/601 511/896/601 +f 494/898/645 498/998/645 508/899/645 +f 490/901/646 493/922/646 513/902/646 +f 501/904/607 509/895/607 508/897/607 +f 494/906/608 512/924/608 514/907/608 +f 491/909/609 495/999/609 514/910/609 +f 500/912/647 506/1000/647 513/913/647 +f 500/915/648 515/927/648 509/916/648 +f 517/918/612 518/940/612 519/919/612 +f 508/899/613 511/936/613 520/921/613 +f 493/922/614 521/938/614 522/923/614 +f 512/924/597 520/1001/597 517/925/597 +f 513/913/615 522/1002/615 523/926/615 +f 514/910/603 517/918/603 516/920/603 +f 515/927/616 523/934/616 510/928/616 +f 492/929/617 516/1003/617 521/930/617 +f 518/940/618 524/937/618 525/931/618 +f 525/931/618 526/935/618 527/932/618 +f 527/932/618 528/939/618 529/933/618 +f 529/933/618 519/919/618 518/940/618 +f 518/940/618 525/931/618 529/933/618 +f 523/934/619 527/932/619 526/935/619 +f 521/930/620 516/1003/620 519/919/620 +f 511/896/621 510/997/621 526/935/621 +f 511/936/622 525/931/622 524/937/622 +f 521/938/623 529/933/623 528/939/623 +f 517/925/624 520/1001/624 524/937/624 +f 523/926/625 522/1002/625 528/939/625 +f 530/941/649 531/982/649 505/942/649 +f 533/944/601 534/989/601 535/945/601 +f 497/947/650 536/971/650 532/948/650 +f 537/950/628 530/973/628 504/951/628 +f 532/946/629 535/945/629 502/953/629 +f 538/955/630 536/975/630 497/956/630 +f 505/958/631 531/978/631 538/959/631 +f 503/961/651 539/977/651 537/962/651 +f 535/964/652 539/980/652 503/965/652 +f 541/967/634 542/1004/634 543/968/634 +f 544/970/613 533/991/613 532/948/613 +f 545/972/614 546/993/614 530/973/614 +f 543/974/597 544/994/597 536/975/597 +f 547/976/615 545/995/615 537/962/615 +f 540/969/603 543/968/603 538/959/603 +f 534/979/616 547/987/616 539/980/616 +f 546/981/617 540/988/617 531/982/617 +f 553/985/635 548/990/635 542/1004/635 +f 542/1004/635 541/967/635 549/983/635 +f 549/983/635 550/992/635 551/984/635 +f 551/984/635 552/986/635 553/985/635 +f 553/985/635 542/1004/635 549/983/635 +f 552/986/636 551/984/636 547/987/636 +f 549/983/637 541/967/637 540/988/637 +f 533/944/638 553/985/638 552/986/638 +f 548/990/639 553/985/639 533/991/639 +f 550/992/640 549/983/640 546/993/640 +f 543/974/641 542/1004/641 548/990/641 +f 547/976/642 551/984/642 550/992/642 +f 559/1005/653 556/1006/653 558/1007/653 +f 558/1007/654 560/1008/654 557/1009/654 +f 561/1010/655 554/1011/655 559/1005/655 +f 559/1005/653 554/1011/653 556/1006/653 +f 558/1007/656 556/1006/656 560/1008/656 +f 561/1010/657 555/1012/657 554/1011/657 o Shell v 0.000000 1.558350 0.961217 v 0.132625 1.613285 0.961217 @@ -3389,60 +3399,60 @@ vt 0.416064 0.709256 vt 0.498826 0.763730 vt 0.417116 0.818904 s 0 -f 582/1009/658 559/1010/658 583/1011/658 -f 559/1010/659 584/1012/659 583/1011/659 -f 560/1013/660 585/1014/660 584/1012/660 -f 561/1015/661 586/1016/661 585/1014/661 -f 562/1017/662 587/1018/662 586/1016/662 -f 563/1019/663 588/1020/663 587/1018/663 -f 588/1020/664 565/1021/664 589/1022/664 -f 565/1021/665 582/1023/665 589/1022/665 -f 563/1024/666 572/1025/666 564/1026/666 -f 558/1027/666 566/1028/666 559/1029/666 -f 558/1027/666 573/1030/666 567/1031/666 -f 561/1032/666 568/1033/666 569/1034/666 -f 568/1035/660 577/1036/660 569/1037/660 -f 571/1038/663 580/1039/663 572/1040/663 -f 569/1037/661 578/1041/661 570/1042/661 -f 572/1040/664 581/1043/664 573/1044/664 -f 566/1045/659 576/1046/659 568/1035/659 -f 570/1042/662 579/1047/662 571/1048/662 -f 573/1044/665 575/1049/665 567/1050/665 -f 567/1050/658 574/1051/658 566/1045/658 -f 562/1052/666 569/1034/666 570/1053/666 -f 559/1029/666 568/1033/666 560/1054/666 -f 564/1026/666 573/1030/666 565/1055/666 -f 562/1052/666 571/1056/666 563/1057/666 -f 581/1058/667 579/1059/667 577/1060/667 -f 582/1009/658 558/1061/658 559/1010/658 -f 559/1010/659 560/1013/659 584/1012/659 -f 560/1013/660 561/1015/660 585/1014/660 -f 561/1015/661 562/1017/661 586/1016/661 -f 562/1017/662 563/1019/662 587/1018/662 -f 563/1019/663 564/1062/663 588/1020/663 -f 588/1020/664 564/1062/664 565/1021/664 -f 565/1021/665 558/1063/665 582/1023/665 -f 563/1024/666 571/1064/666 572/1025/666 -f 558/1027/666 567/1031/666 566/1028/666 -f 558/1027/666 565/1055/666 573/1030/666 -f 561/1032/666 560/1054/666 568/1033/666 -f 568/1035/660 576/1046/660 577/1036/660 -f 571/1038/663 579/1065/663 580/1039/663 -f 569/1037/661 577/1036/661 578/1041/661 -f 572/1040/664 580/1039/664 581/1043/664 -f 566/1045/659 574/1051/659 576/1046/659 -f 570/1042/662 578/1041/662 579/1047/662 -f 573/1044/665 581/1043/665 575/1049/665 -f 567/1050/658 575/1049/658 574/1051/658 -f 562/1052/666 561/1032/666 569/1034/666 -f 559/1029/666 566/1028/666 568/1033/666 -f 564/1026/666 572/1025/666 573/1030/666 -f 562/1052/666 570/1053/666 571/1056/666 -f 577/1060/667 576/1066/667 574/1067/667 -f 574/1067/667 575/1068/667 581/1058/667 -f 581/1058/667 580/1069/667 579/1059/667 -f 579/1059/667 578/1070/667 577/1060/667 -f 577/1060/667 574/1067/667 581/1058/667 +f 586/1013/658 563/1014/658 587/1015/658 +f 563/1014/659 588/1016/659 587/1015/659 +f 564/1017/660 589/1018/660 588/1016/660 +f 565/1019/661 590/1020/661 589/1018/661 +f 566/1021/662 591/1022/662 590/1020/662 +f 567/1023/663 592/1024/663 591/1022/663 +f 592/1024/664 569/1025/664 593/1026/664 +f 569/1025/665 586/1027/665 593/1026/665 +f 567/1028/666 576/1029/666 568/1030/666 +f 562/1031/666 570/1032/666 563/1033/666 +f 562/1031/666 577/1034/666 571/1035/666 +f 565/1036/666 572/1037/666 573/1038/666 +f 572/1039/660 581/1040/660 573/1041/660 +f 575/1042/663 584/1043/663 576/1044/663 +f 573/1041/661 582/1045/661 574/1046/661 +f 576/1044/664 585/1047/664 577/1048/664 +f 570/1049/659 580/1050/659 572/1039/659 +f 574/1046/662 583/1051/662 575/1052/662 +f 577/1048/665 579/1053/665 571/1054/665 +f 571/1054/658 578/1055/658 570/1049/658 +f 566/1056/666 573/1038/666 574/1057/666 +f 563/1033/666 572/1037/666 564/1058/666 +f 568/1030/666 577/1034/666 569/1059/666 +f 566/1056/666 575/1060/666 567/1061/666 +f 585/1062/667 583/1063/667 581/1064/667 +f 586/1013/658 562/1065/658 563/1014/658 +f 563/1014/659 564/1017/659 588/1016/659 +f 564/1017/660 565/1019/660 589/1018/660 +f 565/1019/661 566/1021/661 590/1020/661 +f 566/1021/662 567/1023/662 591/1022/662 +f 567/1023/663 568/1066/663 592/1024/663 +f 592/1024/664 568/1066/664 569/1025/664 +f 569/1025/665 562/1067/665 586/1027/665 +f 567/1028/666 575/1068/666 576/1029/666 +f 562/1031/666 571/1035/666 570/1032/666 +f 562/1031/666 569/1059/666 577/1034/666 +f 565/1036/666 564/1058/666 572/1037/666 +f 572/1039/660 580/1050/660 581/1040/660 +f 575/1042/663 583/1069/663 584/1043/663 +f 573/1041/661 581/1040/661 582/1045/661 +f 576/1044/664 584/1043/664 585/1047/664 +f 570/1049/659 578/1055/659 580/1050/659 +f 574/1046/662 582/1045/662 583/1051/662 +f 577/1048/665 585/1047/665 579/1053/665 +f 571/1054/658 579/1053/658 578/1055/658 +f 566/1056/666 565/1036/666 573/1038/666 +f 563/1033/666 570/1032/666 572/1037/666 +f 568/1030/666 576/1029/666 577/1034/666 +f 566/1056/666 574/1057/666 575/1060/666 +f 581/1064/667 580/1070/667 578/1071/667 +f 578/1071/667 579/1072/667 585/1062/667 +f 585/1062/667 584/1073/667 583/1063/667 +f 583/1063/667 582/1074/667 581/1064/667 +f 581/1064/667 578/1071/667 585/1062/667 o Sight v -0.128183 2.091560 2.999992 v 0.128183 2.091560 2.999992 @@ -3479,98 +3489,98 @@ vn 0.0001 -0.9985 -0.0541 vn -0.0001 -0.9985 -0.0541 vn -0.0000 -0.0000 -1.0000 vt 0.276157 1.000043 -vt 0.277845 0.988719 +vt 0.277845 0.992479 vt 0.279031 0.999320 -vt 0.262350 0.883120 -vt 0.272118 0.893652 -vt 0.262350 0.893652 -vt 0.274698 0.990680 -vt 0.275897 0.990665 -vt 0.222326 0.666214 -vt 0.223796 0.675651 -vt 0.221878 0.675521 -vt 0.276984 0.883345 -vt 0.274471 0.883120 -vt 0.209797 0.558857 -vt 0.219735 0.569163 -vt 0.209797 0.569163 -vt 0.225468 0.664276 -vt 0.226612 0.674973 -vt 0.222094 0.558857 -vt 0.223523 0.666167 -vt 0.281111 0.893792 -vt 0.279697 0.988827 -vt 0.228356 0.674554 -vt 0.227211 0.663856 -vt 0.220401 0.664219 -vt 0.217884 0.569235 -vt 0.272118 0.897282 -vt 0.279262 0.893687 -vt 0.219072 0.674722 -vt 0.289130 0.883559 -vt 0.289049 0.893859 -vt 0.272776 0.988740 +vt 0.262350 0.922080 +vt 0.272118 0.929101 +vt 0.262350 0.929101 +vt 0.274698 0.993787 +vt 0.275897 0.993777 +vt 0.222326 0.777476 +vt 0.223796 0.783767 +vt 0.221878 0.783681 +vt 0.276984 0.922230 +vt 0.274471 0.922080 +vt 0.209797 0.705905 +vt 0.219735 0.712775 +vt 0.209797 0.712775 +vt 0.225468 0.776184 +vt 0.226612 0.783315 +vt 0.222094 0.705905 +vt 0.223523 0.777445 +vt 0.281111 0.929195 +vt 0.279697 0.992551 +vt 0.228356 0.783036 +vt 0.227211 0.775904 +vt 0.220401 0.776146 +vt 0.217884 0.712823 +vt 0.272118 0.931521 +vt 0.279262 0.929125 +vt 0.219072 0.783148 +vt 0.289130 0.922373 +vt 0.289049 0.929239 +vt 0.272776 0.992493 vt 0.274236 0.999907 vt 0.271463 0.999118 -vt 0.226877 0.569238 -vt 0.236860 0.558893 -vt 0.236778 0.569413 -vt 0.236749 0.573040 +vt 0.226877 0.712825 +vt 0.236860 0.705929 +vt 0.236778 0.712942 +vt 0.236749 0.715360 vt 0.269746 0.998630 -vt 0.224609 0.558677 -vt 0.218549 0.664294 -vt 0.262350 0.897282 -vt 0.226848 0.572865 -vt 0.271059 0.988251 +vt 0.224609 0.705785 +vt 0.218549 0.776196 +vt 0.262350 0.931521 +vt 0.226848 0.715243 +vt 0.271059 0.992167 s 0 -f 594/1071/668 596/1072/668 593/1073/668 -f 598/1074/669 601/1075/669 600/1076/669 -f 594/1071/670 603/1077/670 595/1078/670 -f 604/1079/670 602/1080/670 594/1081/670 -f 590/1082/671 603/1077/671 597/1083/671 -f 592/1084/668 607/1085/668 606/1086/668 -f 602/1080/669 608/1087/669 609/1088/669 -f 591/1089/672 605/1090/672 604/1079/672 -f 596/1072/672 601/1091/672 611/1092/672 -f 593/1093/673 608/1087/673 612/1094/673 -f 612/1095/671 613/1096/671 607/1085/671 -f 610/1097/674 600/1076/674 601/1075/674 -f 595/1078/675 610/1098/675 596/1072/675 -f 612/1095/668 594/1081/668 593/1099/668 -f 607/1085/676 604/1079/676 612/1095/676 -f 610/1098/668 592/1100/668 606/1101/668 -f 611/1102/669 602/1103/669 609/1104/669 -f 605/1090/669 613/1105/669 608/1087/669 -f 601/1075/669 603/1077/669 611/1102/669 -f 613/1105/669 598/1106/669 600/1107/669 -f 606/1108/674 613/1105/674 600/1107/674 -f 593/1109/673 611/1102/673 609/1104/673 -f 594/1071/668 595/1078/668 596/1072/668 -f 598/1074/669 597/1083/669 601/1075/669 -f 594/1071/670 602/1103/670 603/1077/670 -f 604/1079/670 605/1090/670 602/1080/670 -f 590/1082/671 595/1078/671 603/1077/671 -f 592/1084/668 591/1089/668 607/1085/668 -f 602/1080/669 605/1090/669 608/1087/669 -f 591/1089/672 599/1110/672 605/1090/672 -f 596/1072/672 610/1098/672 601/1091/672 -f 593/1093/673 609/1088/673 608/1087/673 -f 612/1095/671 608/1111/671 613/1096/671 -f 610/1097/674 606/1112/674 600/1076/674 -f 595/1078/676 590/1082/676 610/1098/676 -f 612/1095/668 604/1079/668 594/1081/668 -f 607/1085/675 591/1089/675 604/1079/675 -f 610/1098/668 590/1082/668 592/1100/668 -f 611/1102/669 603/1077/669 602/1103/669 -f 605/1090/669 599/1110/669 613/1105/669 -f 601/1075/669 597/1083/669 603/1077/669 -f 613/1105/669 599/1110/669 598/1106/669 -f 606/1108/674 607/1113/674 613/1105/674 -f 593/1109/673 596/1114/673 611/1102/673 -f 592/1084/677 598/1106/677 591/1089/677 -f 592/1084/677 590/1082/677 597/1083/677 -f 598/1106/677 599/1110/677 591/1089/677 -f 592/1084/677 597/1083/677 598/1106/677 +f 598/1075/668 600/1076/668 597/1077/668 +f 602/1078/669 605/1079/669 604/1080/669 +f 598/1075/670 607/1081/670 599/1082/670 +f 608/1083/670 606/1084/670 598/1085/670 +f 594/1086/671 607/1081/671 601/1087/671 +f 596/1088/668 611/1089/668 610/1090/668 +f 606/1084/669 612/1091/669 613/1092/669 +f 595/1093/672 609/1094/672 608/1083/672 +f 600/1076/672 605/1095/672 615/1096/672 +f 597/1097/673 612/1091/673 616/1098/673 +f 616/1099/671 617/1100/671 611/1089/671 +f 614/1101/674 604/1080/674 605/1079/674 +f 599/1082/675 614/1102/675 600/1076/675 +f 616/1099/668 598/1085/668 597/1103/668 +f 611/1089/676 608/1083/676 616/1099/676 +f 614/1102/668 596/1104/668 610/1105/668 +f 615/1106/669 606/1107/669 613/1108/669 +f 609/1094/669 617/1109/669 612/1091/669 +f 605/1079/669 607/1081/669 615/1106/669 +f 617/1109/669 602/1110/669 604/1111/669 +f 610/1112/674 617/1109/674 604/1111/674 +f 597/1113/673 615/1106/673 613/1108/673 +f 598/1075/668 599/1082/668 600/1076/668 +f 602/1078/669 601/1087/669 605/1079/669 +f 598/1075/670 606/1107/670 607/1081/670 +f 608/1083/670 609/1094/670 606/1084/670 +f 594/1086/671 599/1082/671 607/1081/671 +f 596/1088/668 595/1093/668 611/1089/668 +f 606/1084/669 609/1094/669 612/1091/669 +f 595/1093/672 603/1114/672 609/1094/672 +f 600/1076/672 614/1102/672 605/1095/672 +f 597/1097/673 613/1092/673 612/1091/673 +f 616/1099/671 612/1115/671 617/1100/671 +f 614/1101/674 610/1116/674 604/1080/674 +f 599/1082/676 594/1086/676 614/1102/676 +f 616/1099/668 608/1083/668 598/1085/668 +f 611/1089/675 595/1093/675 608/1083/675 +f 614/1102/668 594/1086/668 596/1104/668 +f 615/1106/669 607/1081/669 606/1107/669 +f 609/1094/669 603/1114/669 617/1109/669 +f 605/1079/669 601/1087/669 607/1081/669 +f 617/1109/669 603/1114/669 602/1110/669 +f 610/1112/674 611/1117/674 617/1109/674 +f 597/1113/673 600/1118/673 615/1106/673 +f 596/1088/677 602/1110/677 595/1093/677 +f 596/1088/677 594/1086/677 601/1087/677 +f 602/1110/677 603/1114/677 595/1093/677 +f 596/1088/677 601/1087/677 602/1110/677 o Loop v 0.406256 1.125653 3.483772 v 0.372781 1.206173 3.302696 @@ -3647,149 +3657,149 @@ vn -0.7060 0.2714 -0.6541 vn -0.7060 0.2715 0.6542 vn -0.4343 -0.3822 0.8157 vn -0.2163 -0.9063 0.3630 -vt 0.187482 0.431554 -vt 0.156855 0.444483 -vt 0.154582 0.431555 -vt 0.181530 0.456662 -vt 0.160534 0.456663 -vt 0.181530 0.470033 -vt 0.160534 0.470034 -vt 0.156855 0.482213 -vt 0.187482 0.495142 -vt 0.154582 0.495142 -vt 0.208478 0.431554 -vt 0.177852 0.444483 -vt 0.175578 0.431554 -vt 0.202527 0.456662 -vt 0.202527 0.470033 -vt 0.177852 0.482213 -vt 0.208479 0.495141 -vt 0.175579 0.495142 -vt 0.229475 0.431554 -vt 0.198848 0.444483 -vt 0.196575 0.431554 -vt 0.227202 0.444483 -vt 0.223523 0.470033 -vt 0.198849 0.482213 -vt 0.229475 0.495141 -vt 0.196575 0.495142 -vt 0.250472 0.431554 -vt 0.219845 0.444483 -vt 0.217572 0.431554 -vt 0.248198 0.444483 -vt 0.223523 0.456662 -vt 0.244520 0.456662 -vt 0.244520 0.470033 -vt 0.219845 0.482212 -vt 0.250472 0.495141 -vt 0.217572 0.495141 -vt 0.238569 0.431554 -vt 0.269195 0.444483 -vt 0.240842 0.444483 -vt 0.265517 0.456662 -vt 0.269195 0.482213 -vt 0.240842 0.482212 -vt 0.238568 0.495141 -vt 0.259565 0.431554 -vt 0.290192 0.444483 -vt 0.261838 0.444483 -vt 0.286513 0.456663 -vt 0.265517 0.470033 -vt 0.290191 0.482213 -vt 0.261838 0.482212 -vt 0.259565 0.495141 -vt 0.280562 0.431554 -vt 0.311188 0.444483 -vt 0.282835 0.444483 -vt 0.307510 0.456663 -vt 0.286513 0.470033 -vt 0.311188 0.482213 -vt 0.282835 0.482213 -vt 0.280561 0.495142 -vt 0.185209 0.444483 -vt 0.185209 0.482213 -vt 0.206205 0.444482 -vt 0.206205 0.482213 -vt 0.227202 0.482212 -vt 0.248198 0.482212 -vt 0.271468 0.431554 -vt 0.271468 0.495142 -vt 0.292465 0.431554 -vt 0.292465 0.495142 -vt 0.313461 0.431555 -vt 0.307510 0.470034 -vt 0.313461 0.495142 +vt 0.187482 0.621036 +vt 0.156855 0.629655 +vt 0.154582 0.621037 +vt 0.181530 0.637775 +vt 0.160534 0.637775 +vt 0.181530 0.646689 +vt 0.160534 0.646689 +vt 0.156855 0.654809 +vt 0.187482 0.663428 +vt 0.154582 0.663428 +vt 0.208478 0.621036 +vt 0.177852 0.629655 +vt 0.175578 0.621036 +vt 0.202527 0.637775 +vt 0.202527 0.646689 +vt 0.177852 0.654809 +vt 0.208479 0.663427 +vt 0.175579 0.663428 +vt 0.229475 0.621036 +vt 0.198848 0.629655 +vt 0.196575 0.621036 +vt 0.227202 0.629655 +vt 0.223523 0.646689 +vt 0.198849 0.654809 +vt 0.229475 0.663427 +vt 0.196575 0.663428 +vt 0.250472 0.621036 +vt 0.219845 0.629655 +vt 0.217572 0.621036 +vt 0.248198 0.629655 +vt 0.223523 0.637775 +vt 0.244520 0.637775 +vt 0.244520 0.646689 +vt 0.219845 0.654808 +vt 0.250472 0.663427 +vt 0.217572 0.663427 +vt 0.238569 0.621036 +vt 0.269195 0.629655 +vt 0.240842 0.629655 +vt 0.265517 0.637775 +vt 0.269195 0.654809 +vt 0.240842 0.654808 +vt 0.238568 0.663427 +vt 0.259565 0.621036 +vt 0.290192 0.629655 +vt 0.261838 0.629655 +vt 0.286513 0.637775 +vt 0.265517 0.646689 +vt 0.290191 0.654809 +vt 0.261838 0.654808 +vt 0.259565 0.663427 +vt 0.280562 0.621036 +vt 0.311188 0.629655 +vt 0.282835 0.629655 +vt 0.307510 0.637775 +vt 0.286513 0.646689 +vt 0.311188 0.654809 +vt 0.282835 0.654809 +vt 0.280561 0.663428 +vt 0.185209 0.629655 +vt 0.185209 0.654809 +vt 0.206205 0.629655 +vt 0.206205 0.654809 +vt 0.227202 0.654808 +vt 0.248198 0.654808 +vt 0.271468 0.621036 +vt 0.271468 0.663428 +vt 0.292465 0.621036 +vt 0.292465 0.663428 +vt 0.313461 0.621037 +vt 0.307510 0.646689 +vt 0.313461 0.663428 s 0 -f 615/1115/678 617/1116/678 614/1117/678 -f 617/1116/679 618/1118/679 619/1119/679 -f 619/1119/680 620/1120/680 621/1121/680 -f 620/1120/681 623/1122/681 621/1121/681 -f 623/1122/682 615/1123/682 614/1124/682 -f 624/1125/683 616/1126/683 615/1127/683 -f 616/1126/684 626/1128/684 618/1118/684 -f 618/1118/685 627/1129/685 620/1120/685 -f 627/1129/686 622/1130/686 620/1120/686 -f 622/1130/687 624/1131/687 615/1132/687 -f 629/1133/688 625/1134/688 624/1135/688 -f 630/1136/689 626/1128/689 625/1134/689 -f 626/1128/690 632/1137/690 627/1129/690 -f 632/1137/691 628/1138/691 627/1129/691 -f 628/1138/692 629/1139/692 624/1140/692 -f 634/1141/693 630/1142/693 629/1143/693 -f 635/1144/694 631/1145/694 630/1142/694 -f 636/1146/695 632/1137/695 631/1145/695 -f 637/1147/696 633/1148/696 632/1137/696 -f 633/1148/697 634/1149/697 629/1150/697 -f 634/1151/698 640/1152/698 635/1153/698 -f 635/1153/699 641/1154/699 636/1146/699 -f 641/1154/700 637/1147/700 636/1146/700 -f 637/1147/701 643/1155/701 638/1156/701 -f 643/1155/702 634/1157/702 638/1156/702 -f 639/1158/703 645/1159/703 640/1160/703 -f 645/1159/704 641/1154/704 640/1160/704 -f 646/1161/705 642/1162/705 641/1154/705 -f 642/1162/706 648/1163/706 643/1164/706 -f 648/1163/707 639/1165/707 643/1164/707 -f 644/1166/708 617/1167/708 645/1168/708 -f 617/1167/709 646/1161/709 645/1168/709 -f 619/1169/710 647/1170/710 646/1161/710 -f 647/1170/711 623/1171/711 648/1172/711 -f 623/1171/712 644/1173/712 648/1172/712 -f 615/1115/678 616/1174/678 617/1116/678 -f 617/1116/679 616/1174/679 618/1118/679 -f 619/1119/680 618/1118/680 620/1120/680 -f 620/1120/681 622/1175/681 623/1122/681 -f 623/1122/682 622/1175/682 615/1123/682 -f 624/1125/683 625/1176/683 616/1126/683 -f 616/1126/684 625/1176/684 626/1128/684 -f 618/1118/685 626/1128/685 627/1129/685 -f 627/1129/686 628/1177/686 622/1130/686 -f 622/1130/687 628/1177/687 624/1131/687 -f 629/1133/688 630/1136/688 625/1134/688 -f 630/1136/689 631/1145/689 626/1128/689 -f 626/1128/713 631/1145/713 632/1137/713 -f 632/1137/691 633/1178/691 628/1138/691 -f 628/1138/714 633/1178/714 629/1139/714 -f 634/1141/693 635/1144/693 630/1142/693 -f 635/1144/694 636/1146/694 631/1145/694 -f 636/1146/695 637/1147/695 632/1137/695 -f 637/1147/696 638/1179/696 633/1148/696 -f 633/1148/697 638/1179/697 634/1149/697 -f 634/1151/698 639/1180/698 640/1152/698 -f 635/1153/699 640/1152/699 641/1154/699 -f 641/1154/700 642/1162/700 637/1147/700 -f 637/1147/701 642/1162/701 643/1155/701 -f 643/1155/715 639/1181/715 634/1157/715 -f 639/1158/703 644/1182/703 645/1159/703 -f 645/1159/704 646/1161/704 641/1154/704 -f 646/1161/705 647/1170/705 642/1162/705 -f 642/1162/706 647/1170/706 648/1163/706 -f 648/1163/716 644/1183/716 639/1165/716 -f 644/1166/708 614/1184/708 617/1167/708 -f 617/1167/709 619/1169/709 646/1161/709 -f 619/1169/710 621/1185/710 647/1170/710 -f 647/1170/711 621/1185/711 623/1171/711 -f 623/1171/717 614/1186/717 644/1173/717 +f 619/1119/678 621/1120/678 618/1121/678 +f 621/1120/679 622/1122/679 623/1123/679 +f 623/1123/680 624/1124/680 625/1125/680 +f 624/1124/681 627/1126/681 625/1125/681 +f 627/1126/682 619/1127/682 618/1128/682 +f 628/1129/683 620/1130/683 619/1131/683 +f 620/1130/684 630/1132/684 622/1122/684 +f 622/1122/685 631/1133/685 624/1124/685 +f 631/1133/686 626/1134/686 624/1124/686 +f 626/1134/687 628/1135/687 619/1136/687 +f 633/1137/688 629/1138/688 628/1139/688 +f 634/1140/689 630/1132/689 629/1138/689 +f 630/1132/690 636/1141/690 631/1133/690 +f 636/1141/691 632/1142/691 631/1133/691 +f 632/1142/692 633/1143/692 628/1144/692 +f 638/1145/693 634/1146/693 633/1147/693 +f 639/1148/694 635/1149/694 634/1146/694 +f 640/1150/695 636/1141/695 635/1149/695 +f 641/1151/696 637/1152/696 636/1141/696 +f 637/1152/697 638/1153/697 633/1154/697 +f 638/1155/698 644/1156/698 639/1157/698 +f 639/1157/699 645/1158/699 640/1150/699 +f 645/1158/700 641/1151/700 640/1150/700 +f 641/1151/701 647/1159/701 642/1160/701 +f 647/1159/702 638/1161/702 642/1160/702 +f 643/1162/703 649/1163/703 644/1164/703 +f 649/1163/704 645/1158/704 644/1164/704 +f 650/1165/705 646/1166/705 645/1158/705 +f 646/1166/706 652/1167/706 647/1168/706 +f 652/1167/707 643/1169/707 647/1168/707 +f 648/1170/708 621/1171/708 649/1172/708 +f 621/1171/709 650/1165/709 649/1172/709 +f 623/1173/710 651/1174/710 650/1165/710 +f 651/1174/711 627/1175/711 652/1176/711 +f 627/1175/712 648/1177/712 652/1176/712 +f 619/1119/678 620/1178/678 621/1120/678 +f 621/1120/679 620/1178/679 622/1122/679 +f 623/1123/680 622/1122/680 624/1124/680 +f 624/1124/681 626/1179/681 627/1126/681 +f 627/1126/682 626/1179/682 619/1127/682 +f 628/1129/683 629/1180/683 620/1130/683 +f 620/1130/684 629/1180/684 630/1132/684 +f 622/1122/685 630/1132/685 631/1133/685 +f 631/1133/686 632/1181/686 626/1134/686 +f 626/1134/687 632/1181/687 628/1135/687 +f 633/1137/688 634/1140/688 629/1138/688 +f 634/1140/689 635/1149/689 630/1132/689 +f 630/1132/713 635/1149/713 636/1141/713 +f 636/1141/691 637/1182/691 632/1142/691 +f 632/1142/714 637/1182/714 633/1143/714 +f 638/1145/693 639/1148/693 634/1146/693 +f 639/1148/694 640/1150/694 635/1149/694 +f 640/1150/695 641/1151/695 636/1141/695 +f 641/1151/696 642/1183/696 637/1152/696 +f 637/1152/697 642/1183/697 638/1153/697 +f 638/1155/698 643/1184/698 644/1156/698 +f 639/1157/699 644/1156/699 645/1158/699 +f 645/1158/700 646/1166/700 641/1151/700 +f 641/1151/701 646/1166/701 647/1159/701 +f 647/1159/715 643/1185/715 638/1161/715 +f 643/1162/703 648/1186/703 649/1163/703 +f 649/1163/704 650/1165/704 645/1158/704 +f 650/1165/705 651/1174/705 646/1166/705 +f 646/1166/706 651/1174/706 652/1167/706 +f 652/1167/716 648/1187/716 643/1169/716 +f 648/1170/708 618/1188/708 621/1171/708 +f 621/1171/709 623/1173/709 650/1165/709 +f 623/1173/710 625/1189/710 651/1174/710 +f 651/1174/711 625/1189/711 627/1175/711 +f 627/1175/717 618/1190/717 648/1177/717 o GuardOuter v -0.171766 0.857316 0.902020 v -0.171766 0.884188 0.902020 @@ -3821,105 +3831,104 @@ vn -0.0000 1.0000 -0.0000 vn -0.0000 -0.0000 1.0000 vn -1.0000 -0.0000 -0.0000 vn 1.0000 -0.0000 -0.0000 -vt 0.107481 0.515568 -vt 0.100711 0.826566 -vt 0.100711 0.515568 -vt 0.200617 0.674832 -vt 0.204562 0.504617 -vt 0.204562 0.674832 -vt 0.189902 0.504617 -vt 0.196672 0.515568 -vt 0.189902 0.515568 -vt 0.196672 0.690063 -vt 0.200617 0.519848 -vt 0.200617 0.690063 -vt 0.025060 0.515568 -vt 0.100711 0.504617 -vt 0.114251 0.515568 -vt 0.002510 0.987540 -vt 0.006455 0.971113 -vt 0.006455 0.987540 -vt 0.006455 0.521044 -vt 0.010401 0.504617 -vt 0.010401 0.521044 -vt 0.107481 0.504617 -vt 0.114251 0.504617 -vt 0.196672 0.705295 -vt 0.018291 0.504617 -vt 0.025060 0.504617 -vt 0.010401 0.971113 -vt 0.014346 0.504617 -vt 0.014346 0.971113 -vt 0.196672 0.519848 -vt 0.200617 0.504617 -vt 0.196672 0.735759 -vt 0.200617 0.720527 -vt 0.200617 0.735759 -vt 0.200617 0.705295 -vt 0.196672 0.720527 -vt 0.002510 0.971113 -vt 0.006455 0.504617 -vt 0.018291 0.826566 -vt 0.018291 0.515568 -vt 0.006455 0.987540 -vt 0.018291 0.504617 -vt 0.014346 0.504617 -vt 0.107481 0.826566 -vt 0.189902 0.826566 -vt 0.200617 0.504617 -vt 0.196672 0.504617 -vt 0.010401 0.504617 -vt 0.002510 0.504617 -vt 0.025060 0.826566 -vt 0.010401 0.987540 -vt 0.018291 0.971113 -vt 0.114251 0.826566 -vt 0.196672 0.826566 +vt 0.107481 0.677045 +vt 0.100711 0.884377 +vt 0.100711 0.677045 +vt 0.200617 0.783221 +vt 0.204562 0.669744 +vt 0.204562 0.783221 +vt 0.189902 0.669744 +vt 0.196672 0.677045 +vt 0.189902 0.677045 +vt 0.196672 0.793376 +vt 0.200617 0.679899 +vt 0.200617 0.793376 +vt 0.025060 0.677045 +vt 0.100711 0.669744 +vt 0.114251 0.677045 +vt 0.002510 0.991693 +vt 0.006455 0.980742 +vt 0.006455 0.991693 +vt 0.006455 0.680696 +vt 0.010401 0.669744 +vt 0.010401 0.680696 +vt 0.107481 0.669744 +vt 0.114251 0.669744 +vt 0.196672 0.803530 +vt 0.018291 0.669744 +vt 0.025060 0.669744 +vt 0.010401 0.980742 +vt 0.014346 0.669744 +vt 0.014346 0.980742 +vt 0.196672 0.679899 +vt 0.200617 0.669744 +vt 0.196672 0.823839 +vt 0.200617 0.813685 +vt 0.200617 0.823839 +vt 0.200617 0.803530 +vt 0.196672 0.813685 +vt 0.002510 0.980742 +vt 0.006455 0.669744 +vt 0.018291 0.884377 +vt 0.018291 0.677045 +vt 0.006455 0.991693 +vt 0.018291 0.669744 +vt 0.107481 0.884377 +vt 0.189902 0.884377 +vt 0.200617 0.669744 +vt 0.196672 0.669744 +vt 0.010401 0.669744 +vt 0.002510 0.669744 +vt 0.025060 0.884377 +vt 0.010401 0.991693 +vt 0.018291 0.980742 +vt 0.114251 0.884377 +vt 0.196672 0.884377 s 0 -f 657/1187/718 666/1188/718 651/1189/718 -f 652/1190/719 655/1191/719 651/1192/719 -f 654/1193/720 661/1194/720 656/1195/720 -f 654/1196/721 649/1197/721 653/1198/721 -f 655/1199/718 649/1200/718 651/1189/718 -f 652/1201/720 654/1193/720 656/1195/720 -f 659/1202/722 657/1203/722 658/1204/722 -f 661/1205/723 663/1206/723 662/1207/723 -f 652/1201/720 659/1208/720 650/1209/720 -f 649/1200/718 657/1187/718 651/1189/718 -f 653/1198/721 664/1210/721 654/1196/721 -f 655/1199/718 663/1211/718 653/1212/718 -f 656/1213/722 668/1214/722 655/1215/722 -f 650/1216/721 658/1217/721 649/1197/721 -f 667/1218/719 672/1219/719 668/1220/719 -f 666/1221/719 669/1222/719 665/1210/719 -f 660/1223/722 670/1224/722 657/1203/722 -f 655/1199/718 672/1225/718 662/1226/718 -f 662/1207/723 671/1227/723 661/1205/723 -f 651/1228/723 665/1215/723 652/1229/723 -f 652/1201/720 669/1230/720 660/1187/720 -f 661/1194/720 667/1231/720 656/1195/720 -f 657/1187/718 670/1230/718 666/1188/718 -f 652/1190/719 656/1232/719 655/1191/719 -f 654/1193/720 664/1233/720 661/1194/720 -f 654/1196/721 650/1216/721 649/1197/721 -f 655/1199/718 653/1212/718 649/1200/718 -f 652/1201/720 650/1209/720 654/1193/720 -f 659/1202/722 660/1223/722 657/1203/722 -f 661/1205/723 664/1224/723 663/1206/723 -f 652/1201/720 660/1187/720 659/1208/720 -f 649/1200/718 658/1208/718 657/1187/718 -f 653/1198/721 663/1221/721 664/1210/721 -f 655/1199/718 662/1226/718 663/1211/718 -f 656/1213/722 667/1234/722 668/1214/722 -f 650/1216/721 659/1233/721 658/1217/721 -f 667/1218/719 671/1222/719 672/1219/719 -f 666/1221/719 670/1219/719 669/1222/719 -f 660/1223/722 669/1235/722 670/1224/722 -f 655/1199/718 668/1236/718 672/1225/718 -f 662/1207/723 672/1237/723 671/1227/723 -f 651/1228/723 666/1238/723 665/1215/723 -f 652/1201/720 665/1239/720 669/1230/720 -f 661/1194/720 671/1240/720 667/1231/720 +f 661/1191/718 670/1192/718 655/1193/718 +f 656/1194/719 659/1195/719 655/1196/719 +f 658/1197/720 665/1198/720 660/1199/720 +f 658/1200/721 653/1201/721 657/1202/721 +f 659/1203/718 653/1204/718 655/1193/718 +f 656/1205/720 658/1197/720 660/1199/720 +f 663/1206/722 661/1207/722 662/1208/722 +f 665/1209/723 667/1210/723 666/1211/723 +f 656/1205/720 663/1212/720 654/1213/720 +f 653/1204/718 661/1191/718 655/1193/718 +f 657/1202/721 668/1214/721 658/1200/721 +f 659/1203/718 667/1215/718 657/1216/718 +f 660/1217/722 672/1218/722 659/1219/722 +f 654/1220/721 662/1221/721 653/1201/721 +f 671/1222/719 676/1223/719 672/1224/719 +f 670/1225/719 673/1226/719 669/1214/719 +f 664/1227/722 674/1228/722 661/1207/722 +f 659/1203/718 676/1229/718 666/1230/718 +f 666/1211/723 675/1231/723 665/1209/723 +f 655/1232/723 669/1219/723 656/1218/723 +f 656/1205/720 673/1233/720 664/1191/720 +f 665/1198/720 671/1234/720 660/1199/720 +f 661/1191/718 674/1233/718 670/1192/718 +f 656/1194/719 660/1235/719 659/1195/719 +f 658/1197/720 668/1236/720 665/1198/720 +f 658/1200/721 654/1220/721 653/1201/721 +f 659/1203/718 657/1216/718 653/1204/718 +f 656/1205/720 654/1213/720 658/1197/720 +f 663/1206/722 664/1227/722 661/1207/722 +f 665/1209/723 668/1228/723 667/1210/723 +f 656/1205/720 664/1191/720 663/1212/720 +f 653/1204/718 662/1212/718 661/1191/718 +f 657/1202/721 667/1225/721 668/1214/721 +f 659/1203/718 666/1230/718 667/1215/718 +f 660/1217/722 671/1237/722 672/1218/722 +f 654/1220/721 663/1236/721 662/1221/721 +f 671/1222/719 675/1226/719 676/1223/719 +f 670/1225/719 674/1223/719 673/1226/719 +f 664/1227/722 673/1238/722 674/1228/722 +f 659/1203/718 672/1239/718 676/1229/718 +f 666/1211/723 676/1240/723 675/1231/723 +f 655/1232/723 670/1241/723 669/1219/723 +f 656/1205/720 669/1242/720 673/1233/720 +f 665/1198/720 675/1243/720 671/1234/720 o GuardInner v 0.161860 0.857316 -0.061518 v 0.161860 0.884188 -0.061518 @@ -3938,8 +3947,8 @@ v -0.057255 0.857316 0.852620 v -0.057255 0.884188 0.852620 v 0.057255 0.884188 0.852620 v 0.161860 0.857316 0.844969 -v -0.161860 0.857316 0.844969 -v -0.161860 0.884188 0.844969 +v -0.161859 0.857316 0.844969 +v -0.161859 0.884188 0.844969 v 0.161860 0.884188 0.844969 vn -0.0000 1.0000 -0.0000 vn 1.0000 -0.0000 -0.0000 @@ -3997,40 +4006,40 @@ vt 0.163307 0.731201 vt 0.176815 0.737326 vt 0.228731 0.981424 s 0 -f 688/1241/724 682/1242/724 687/1243/724 -f 673/1244/725 692/1245/725 689/1246/725 -f 690/1247/726 683/1248/726 686/1249/726 -f 676/1250/727 690/1251/727 691/1252/727 -f 692/1253/724 681/1254/724 688/1241/724 -f 682/1255/728 684/1256/728 683/1257/728 -f 674/1258/729 684/1256/729 681/1259/729 -f 675/1260/730 682/1255/730 683/1257/730 -f 680/1261/724 687/1243/724 679/1262/724 -f 686/1249/726 684/1263/726 685/1264/726 -f 679/1265/727 686/1266/727 678/1267/727 -f 678/1268/726 685/1264/726 677/1269/726 -f 677/1270/725 688/1271/725 680/1272/725 -f 684/1263/726 689/1253/726 685/1264/726 -f 682/1242/724 691/1273/724 687/1243/724 -f 689/1274/731 688/1275/731 685/1260/731 -f 687/1276/732 690/1277/732 686/1278/732 -f 688/1241/724 681/1254/724 682/1242/724 -f 673/1244/725 674/1279/725 692/1245/725 -f 690/1247/726 675/1280/726 683/1248/726 -f 676/1250/727 675/1281/727 690/1251/727 -f 692/1253/724 674/1282/724 681/1254/724 -f 682/1255/728 681/1259/728 684/1256/728 -f 674/1258/729 673/1283/729 684/1256/729 -f 675/1260/730 676/1275/730 682/1255/730 -f 680/1261/724 688/1241/724 687/1243/724 -f 686/1249/726 683/1248/726 684/1263/726 -f 679/1265/727 687/1284/727 686/1266/727 -f 678/1268/726 686/1249/726 685/1264/726 -f 677/1270/725 685/1285/725 688/1271/725 -f 684/1263/726 673/1282/726 689/1253/726 -f 682/1242/724 676/1286/724 691/1273/724 -f 689/1274/731 692/1265/731 688/1275/731 -f 687/1276/732 691/1283/732 690/1277/732 +f 692/1244/724 686/1245/724 691/1246/724 +f 677/1247/725 696/1248/725 693/1249/725 +f 694/1250/726 687/1251/726 690/1252/726 +f 680/1253/727 694/1254/727 695/1255/727 +f 696/1256/724 685/1257/724 692/1244/724 +f 686/1258/728 688/1259/728 687/1260/728 +f 678/1261/729 688/1259/729 685/1262/729 +f 679/1263/730 686/1258/730 687/1260/730 +f 684/1264/724 691/1246/724 683/1265/724 +f 690/1252/726 688/1266/726 689/1267/726 +f 683/1268/727 690/1269/727 682/1270/727 +f 682/1271/726 689/1267/726 681/1272/726 +f 681/1273/725 692/1274/725 684/1275/725 +f 688/1266/726 693/1256/726 689/1267/726 +f 686/1245/724 695/1276/724 691/1246/724 +f 693/1277/731 692/1278/731 689/1263/731 +f 691/1279/732 694/1280/732 690/1281/732 +f 692/1244/724 685/1257/724 686/1245/724 +f 677/1247/725 678/1282/725 696/1248/725 +f 694/1250/726 679/1283/726 687/1251/726 +f 680/1253/727 679/1284/727 694/1254/727 +f 696/1256/724 678/1285/724 685/1257/724 +f 686/1258/728 685/1262/728 688/1259/728 +f 678/1261/729 677/1286/729 688/1259/729 +f 679/1263/730 680/1278/730 686/1258/730 +f 684/1264/724 692/1244/724 691/1246/724 +f 690/1252/726 687/1251/726 688/1266/726 +f 683/1268/727 691/1287/727 690/1269/727 +f 682/1271/726 690/1252/726 689/1267/726 +f 681/1273/725 689/1288/725 692/1274/725 +f 688/1266/726 677/1285/726 693/1256/726 +f 686/1245/724 680/1289/724 695/1276/724 +f 693/1277/731 696/1268/731 692/1278/731 +f 691/1279/732 695/1286/732 694/1280/732 o ShellFore v 0.000000 1.558350 1.603447 v 0.132625 1.613285 1.603447 @@ -4109,43 +4118,43 @@ vt 0.290267 0.902716 vt 0.331685 0.902716 vt 0.000347 0.902716 s 0 -f 697/1287/733 704/1288/733 696/1288/733 -f 717/1289/734 693/1290/734 700/1291/734 -f 699/1292/735 708/1291/735 707/1292/735 -f 695/1293/736 702/1294/736 694/1294/736 -f 698/1295/737 705/1287/737 697/1287/737 -f 700/1291/738 701/1290/738 708/1291/738 -f 694/1294/739 701/1296/739 693/1296/739 -f 696/1288/740 703/1293/740 695/1293/740 -f 698/1295/741 707/1292/741 706/1295/741 -f 701/1297/742 702/1298/742 709/1299/742 -f 702/1298/743 703/1300/743 709/1299/743 -f 703/1300/744 704/1301/744 709/1299/744 -f 704/1301/745 705/1302/745 709/1299/745 -f 705/1302/746 706/1303/746 709/1299/746 -f 706/1303/747 707/1304/747 709/1299/747 -f 707/1304/748 708/1305/748 709/1299/748 -f 708/1305/749 701/1297/749 709/1299/749 -f 716/1306/750 700/1291/750 699/1292/750 -f 715/1307/751 699/1292/751 698/1295/751 -f 714/1308/752 698/1295/752 697/1287/752 -f 713/1309/753 697/1287/753 696/1288/753 -f 712/1310/754 696/1288/754 695/1293/754 -f 711/1311/755 695/1293/755 694/1294/755 -f 710/1312/756 694/1294/756 693/1296/756 -f 697/1287/733 705/1287/733 704/1288/733 -f 717/1289/734 710/1313/734 693/1290/734 -f 699/1292/735 700/1291/735 708/1291/735 -f 695/1293/736 703/1293/736 702/1294/736 -f 698/1295/737 706/1295/737 705/1287/737 -f 700/1291/738 693/1290/738 701/1290/738 -f 694/1294/739 702/1294/739 701/1296/739 -f 696/1288/740 704/1288/740 703/1293/740 -f 698/1295/741 699/1292/741 707/1292/741 -f 716/1306/750 717/1289/750 700/1291/750 -f 715/1307/751 716/1306/751 699/1292/751 -f 714/1308/752 715/1307/752 698/1295/752 -f 713/1309/753 714/1308/753 697/1287/753 -f 712/1310/754 713/1309/754 696/1288/754 -f 711/1311/755 712/1310/755 695/1293/755 -f 710/1312/756 711/1311/756 694/1294/756 +f 701/1290/733 708/1291/733 700/1291/733 +f 721/1292/734 697/1293/734 704/1294/734 +f 703/1295/735 712/1294/735 711/1295/735 +f 699/1296/736 706/1297/736 698/1297/736 +f 702/1298/737 709/1290/737 701/1290/737 +f 704/1294/738 705/1293/738 712/1294/738 +f 698/1297/739 705/1299/739 697/1299/739 +f 700/1291/740 707/1296/740 699/1296/740 +f 702/1298/741 711/1295/741 710/1298/741 +f 705/1300/742 706/1301/742 713/1302/742 +f 706/1301/743 707/1303/743 713/1302/743 +f 707/1303/744 708/1304/744 713/1302/744 +f 708/1304/745 709/1305/745 713/1302/745 +f 709/1305/746 710/1306/746 713/1302/746 +f 710/1306/747 711/1307/747 713/1302/747 +f 711/1307/748 712/1308/748 713/1302/748 +f 712/1308/749 705/1300/749 713/1302/749 +f 720/1309/750 704/1294/750 703/1295/750 +f 719/1310/751 703/1295/751 702/1298/751 +f 718/1311/752 702/1298/752 701/1290/752 +f 717/1312/753 701/1290/753 700/1291/753 +f 716/1313/754 700/1291/754 699/1296/754 +f 715/1314/755 699/1296/755 698/1297/755 +f 714/1315/756 698/1297/756 697/1299/756 +f 701/1290/733 709/1290/733 708/1291/733 +f 721/1292/734 714/1316/734 697/1293/734 +f 703/1295/735 704/1294/735 712/1294/735 +f 699/1296/736 707/1296/736 706/1297/736 +f 702/1298/737 710/1298/737 709/1290/737 +f 704/1294/738 697/1293/738 705/1293/738 +f 698/1297/739 706/1297/739 705/1299/739 +f 700/1291/740 708/1291/740 707/1296/740 +f 702/1298/741 703/1295/741 711/1295/741 +f 720/1309/750 721/1292/750 704/1294/750 +f 719/1310/751 720/1309/751 703/1295/751 +f 718/1311/752 719/1310/752 702/1298/752 +f 717/1312/753 718/1311/753 701/1290/753 +f 716/1313/754 717/1312/754 700/1291/754 +f 715/1314/755 716/1313/755 699/1296/755 +f 714/1315/756 715/1314/756 698/1297/756 diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index e1442354f..543f67a45 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -208,6 +208,8 @@ "weapon.coilgunShoot": {"category": "player", "sounds": [{"name": "weapon/coilgunShoot", "stream": false}]}, "weapon.glReload": {"category": "player", "sounds": [{"name": "weapon/glReload", "stream": false}]}, "weapon.glShoot": {"category": "player", "sounds": [{"name": "weapon/glShoot", "stream": false}]}, + "weapon.glOpen": {"category": "player", "sounds": [{"name": "weapon/glOpen", "stream": false}]}, + "weapon.glClose": {"category": "player", "sounds": [{"name": "weapon/glClose", "stream": false}]}, "weapon.44Shoot": {"category": "player", "sounds": [{"name": "weapon/44Shoot", "stream": false}]}, "weapon.trainImpact": {"category": "player", "sounds": [{"name": "weapon/trainImpact", "stream": false}]}, "weapon.nuclearExplosion": {"category": "player", "sounds": [{"name": "weapon/nuclearExplosion", "stream": true}]}, diff --git a/src/main/resources/assets/hbm/sounds/weapon/glClose.ogg b/src/main/resources/assets/hbm/sounds/weapon/glClose.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c69c2bcf9efcdc1855029864d7200595850977ed GIT binary patch literal 9844 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/glOpen.ogg b/src/main/resources/assets/hbm/sounds/weapon/glOpen.ogg new file mode 100644 index 0000000000000000000000000000000000000000..27ba81c76f76b9ef5c99e6ba08b9160477c6ae9a GIT binary patch literal 11728 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 U7C&Q5iyT-XNh~!Mwt5=)zvX*{%m4rY literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/congolake.png b/src/main/resources/assets/hbm/textures/models/weapons/congolake.png index 2d611e459a87a6f8706911613f55227313d70b1e..849c27b4e341ba5c1d913b157ac54c2611189ada 100644 GIT binary patch literal 14853 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

IislSveGE<>#m!s zFrN@R0YQQysKiwUW3nUT^@)SwU2b5GeI>NK7*_->T*vVau zM#V#?UQ69)4l%Uz%^~A#qllmuZK?4@f(DL`v{w{e(%$!2@4Zjo#@SEM6YD8aVT#Iy zc5jnW^GE*lKd$9ebpQ6XWoxFXBsH@e*ufdqNQ~R8e{q|RMwBB2Zqj9O^Jw+h?K7XR z@sz)V=Xp*NWTPg&66!t+=69+D?a6e6cr^EaC6CQsN1!sJ>sU%rCu7T~TOQK7?oDdB zezt3BZgyRNmQMi!Nr_PR%zP`J#%>cqF3mitue`i&gPj}JbLwS=N5C#qcQjqHdK)%; zvLmv2dBsma=3Hu+q#O9NMp~sWCFn9DlVFEsezOib9d#VrA1iSbaO8^867BCKG?=hI zt;kcT28w9HH6=VXSEgEdkm|{4NS+NAnWMprUgAi)iq2l^b!>{5s;Nz|-kdB23~kb| zQI7z2Fm@`Q;+cAlvDey+4bKeJQ9hX4`ywd|ULu{cd>FyMjNWZx{K>}6ECvjKmAd(6 z8LiYWwr0D2h-ll*D!e`)?aXFyp;dEHGu9RBwTKAfC1U_=obKn<7Q==<+8(cX-a?05 zDy1`MN}`WbH^J#8slxk^M7~R-PSY(ooWIX*_5D;33uvkF8rwqNS`;{-+-FzV8wANZaypd&q)9ncSq zhE@d1Rq;nOR+adST4V2tG_yU0-F1FJ-OnSp#7=wr5_P(IOTg bnoAr!g%hEzg=- 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 0 and bpy.data.actions[actionName] or bpy.data.actions.new(actionName) + + action.use_fake_user = True + + # Keep the actions, in case they're already associated with objects + # but remove the frames to replace with fresh ones + for fcurve in action.fcurves: + action.fcurves.remove(fcurve) + # action.fcurves.clear() + + for path in animation: + for dimension in animation[path]: + dimIndex = dimensions.index(dimension) + curve = action.fcurves.new(path, index=dimIndex) + + multiplier = mult[dimIndex] + if path == 'rotation_euler': + multiplier *= math.pi / 180 + + millis = 0 + previousInterpolation = '' + + for tuple in animation[path][dimension]: + value = tuple[0] * multiplier + millis = millis + tuple[1] + frame = round(millis * context.scene.render.fps / 1000) + + keyframe = curve.keyframe_points.insert(frame, value) + keyframe.interpolation = 'LINEAR' + if len(tuple) >= 3: + keyframe.interpolation = tuple[2] + + if len(tuple) >= 4: + keyframe.easing = tuple[3] + + i = 4 + + if previousInterpolation == 'BEZIER': + keyframe.handle_left.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_left.y = tuple[i] * multiplier + i += 1 + keyframe.handle_left_type = tuple[i] + i += 1 + if keyframe.interpolation == 'BEZIER': + keyframe.handle_right.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_right.y = tuple[i] * multiplier + i += 1 + keyframe.handle_right_type = tuple[i] + i += 1 + if keyframe.interpolation == 'ELASTIC': + keyframe.amplitude = tuple[i] + i += 1 + keyframe.period = tuple[i] + i += 1 + if keyframe.interpolation == 'BACK': + keyframe.back = tuple[i] + i += 1 + + previousInterpolation = keyframe.interpolation + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select = True + bpy.ops.object.transform_apply(location=False, rotation=True, scale=False) + object.rotation_mode = 'YZX' + + if 'hierarchy' in collection: + hierarchy = collection["hierarchy"] + for name in hierarchy: + parent = hierarchy[name] + + bpy.data.objects[name].parent = bpy.data.objects[parent] + + offsets = collection["offset"] + for name in offsets: + offset = offsets[name] + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select = True + + if object.name == name: + savedLocation = bpy.context.scene.cursor_location + bpy.context.scene.cursor_location = (-offset[0], -offset[2], offset[1]) + bpy.ops.object.origin_set(type='ORIGIN_CURSOR') + bpy.context.scene.cursor_location = savedLocation + + return {'FINISHED'} + + + + + + +def menu_export(self, context): + self.layout.operator(ExportJSONAnimation.bl_idname) + +def menu_import(self, context): + self.layout.operator(ImportJSONAnimation.bl_idname) + +def register(): + bpy.utils.register_class(ExportJSONAnimation) + bpy.utils.register_class(ImportJSONAnimation) + if hasattr(bpy.types, "TOPBAR_MT_file_export"): + bpy.types.TOPBAR_MT_file_export.append(menu_export) + bpy.types.TOPBAR_MT_file_import.append(menu_import) + elif hasattr(bpy.types, "INFO_MT_file_export"): + bpy.types.INFO_MT_file_export.append(menu_export) + bpy.types.INFO_MT_file_import.append(menu_import) + +def unregister(): + bpy.utils.unregister_class(ExportJSONAnimation) + bpy.utils.unregister_class(ImportJSONAnimation) + if hasattr(bpy.types, "TOPBAR_MT_file_export"): + bpy.types.TOPBAR_MT_file_export.remove(menu_export) + bpy.types.TOPBAR_MT_file_import.remove(menu_import) + elif hasattr(bpy.types, "INFO_MT_file_export"): + bpy.types.INFO_MT_file_export.remove(menu_export) + bpy.types.INFO_MT_file_import.remove(menu_import) + + +# This allows you to run the script directly from Blender's Text editor +# to test the add-on without having to install it. +if __name__ == "__main__": + register() diff --git a/tools/export-json-animation-3_2.py b/tools/export-json-animation-3_2.py new file mode 100644 index 000000000..73c0afdc0 --- /dev/null +++ b/tools/export-json-animation-3_2.py @@ -0,0 +1,286 @@ +# HOW TO USE +# Make sure all your animation actions start on frame 0 and are named as such: +# Name.Part +# and run the export, they'll be split into Animation groups with each part being assigned as a Bus. +# EG. Reload.Body will apply an animation called Reload to the bus called Body +# For best results, make sure your object Transform Mode is set to YZX Euler, so rotations match in-game +# When importing, you can use the Action Editor to assign the imported animations to parts to view and modify them + +bl_info = { + "name": "Export JSON Animation", + "blender": (3, 2, 0), + "category": "Import-Export", +} + +import bpy +import json +import math +import mathutils + +from bpy_extras.io_utils import ExportHelper, ImportHelper +from bpy.props import StringProperty, BoolProperty, EnumProperty +from bpy.types import Operator + + +class ExportJSONAnimation(Operator, ExportHelper): + """Exports an animation in a NTM JSON format""" + bl_idname = "export.ntm_json" # Unique identifier for buttons and menu items to reference. + bl_label = "Export NTM .json" # Display name in the interface. + bl_options = {'REGISTER'} + + # ExportHelper mix-in class uses this. + filename_ext = ".json" + + filter_glob: StringProperty( + default="*.json", + options={'HIDDEN'}, + maxlen=255, # Max internal buffer length, longer would be clamped. + ) + + def execute(self, context): # execute() is called when running the operator. + print("writing JSON data to file...") + f = open(self.filepath, 'w', encoding='utf-8') + + collection = {"anim": {}, "offset": {}, "hierarchy": {}} + dimensions = ["x", "z", "y"] # Swizzled to X, Z, Y + mult = [1, -1, 1] # +X, -Z, +Y + + # Reset to first frame, so our offsets are set to model defaults + # If you get weird offset issues, make sure your model is in its rest pose before exporting + context.scene.frame_set(0) + + animations = collection['anim'] + offsets = collection['offset'] + hierarchy = collection['hierarchy'] + + actions = bpy.data.actions + for action in actions: + split = action.name.split('.') + if len(split) != 2: + continue + name = split[0] + part = split[1] + + if name not in animations: + animations[name] = {} + + animations[name][part] = {} + animation = animations[name][part] + + # Fetch all the animation data + for fcu in action.fcurves: + dimension = dimensions[fcu.array_index] + + if not fcu.data_path in animation: + animation[fcu.data_path] = {} + if not dimension in animation[fcu.data_path]: + animation[fcu.data_path][dimension] = [] + + multiplier = mult[fcu.array_index] + if fcu.data_path == 'rotation_euler': + multiplier *= 180 / math.pi + + previousMillis = 0 + previousInterpolation = "" + + for keyframe in fcu.keyframe_points: + timeToFrame = keyframe.co.x * (1 / context.scene.render.fps) * 1000 + millis = timeToFrame - previousMillis + value = keyframe.co.y * multiplier + tuple = [value, millis, keyframe.interpolation, keyframe.easing] + if previousInterpolation == "BEZIER": + tuple.append(keyframe.handle_left.x * (1 / context.scene.render.fps) * 1000) + tuple.append(keyframe.handle_left.y * multiplier) + tuple.append(keyframe.handle_left_type) + if keyframe.interpolation == "BEZIER": + tuple.append(keyframe.handle_right.x * (1 / context.scene.render.fps) * 1000) + tuple.append(keyframe.handle_right.y * multiplier) + tuple.append(keyframe.handle_right_type) + if keyframe.interpolation == "ELASTIC": + tuple.append(keyframe.amplitude) + tuple.append(keyframe.period) + if keyframe.interpolation == "BACK": + tuple.append(keyframe.back) + previousMillis = timeToFrame + previousInterpolation = keyframe.interpolation + animation[fcu.data_path][dimension].append(tuple) + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + if object.parent: + hierarchy[object.name] = object.parent.name + + if object.location == mathutils.Vector(): # don't export 0,0,0 + continue + + offsets[object.name] = [object.location.x, object.location.z, -object.location.y] + + + + f.write(json.dumps(collection)) + f.close() + + return {'FINISHED'} # Lets Blender know the operator finished successfully. + + + + + +class ImportJSONAnimation(Operator, ImportHelper): + """Imports an animation from a NTM JSON format""" + bl_idname = "import.ntm_json" # important since its how bpy.ops.import_test.some_data is constructed + bl_label = "Import NTM .json" + bl_options = {'REGISTER'} + + # ImportHelper mix-in class uses this. + filename_ext = ".json" + + filter_glob: StringProperty( + default="*.json", + options={'HIDDEN'}, + maxlen=255, # Max internal buffer length, longer would be clamped. + ) + + def execute(self, context): + print("reading JSON data from file...") + f = open(self.filepath, 'r', encoding='utf-8') + data = f.read() + f.close() + + dimensions = ["x", "z", "y"] # Swizzled to X, Z, Y + mult = [1, -1, 1] # +X, -Z, +Y + + collection = json.loads(data) + animations = collection["anim"] + for name in animations: + for part in animations[name]: + actionName = name + '.' + part + animation = animations[name][part] + action = bpy.data.actions.find(actionName) >= 0 and bpy.data.actions[actionName] or bpy.data.actions.new(actionName) + + action.use_fake_user = True + + # Keep the actions, in case they're already associated with objects + # but remove the frames to replace with fresh ones + for fcurve in action.fcurves: + action.fcurves.remove(fcurve) + # action.fcurves.clear() + + for path in animation: + for dimension in animation[path]: + dimIndex = dimensions.index(dimension) + curve = action.fcurves.new(path, index=dimIndex) + + multiplier = mult[dimIndex] + if path == 'rotation_euler': + multiplier *= math.pi / 180 + + millis = 0 + previousInterpolation = '' + + for tuple in animation[path][dimension]: + value = tuple[0] * multiplier + millis = millis + tuple[1] + frame = round(millis * context.scene.render.fps / 1000) + + keyframe = curve.keyframe_points.insert(frame, value) + keyframe.interpolation = 'LINEAR' + if len(tuple) >= 3: + keyframe.interpolation = tuple[2] + + if len(tuple) >= 4: + keyframe.easing = tuple[3] + + i = 4 + + if previousInterpolation == 'BEZIER': + keyframe.handle_left.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_left.y = tuple[i] * multiplier + i += 1 + keyframe.handle_left_type = tuple[i] + i += 1 + if keyframe.interpolation == 'BEZIER': + keyframe.handle_right.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_right.y = tuple[i] * multiplier + i += 1 + keyframe.handle_right_type = tuple[i] + i += 1 + if keyframe.interpolation == 'ELASTIC': + keyframe.amplitude = tuple[i] + i += 1 + keyframe.period = tuple[i] + i += 1 + if keyframe.interpolation == 'BACK': + keyframe.back = tuple[i] + i += 1 + + previousInterpolation = keyframe.interpolation + + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select_set(True) + bpy.ops.object.transform_apply(location=False, rotation=True, scale=False, properties=False) + object.rotation_mode = 'YZX' + + if 'hierarchy' in collection: + hierarchy = collection["hierarchy"] + for name in hierarchy: + parent = hierarchy[name] + + bpy.data.objects[name].parent = bpy.data.objects[parent] + + offsets = collection["offset"] + for name in offsets: + offset = offsets[name] + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select_set(True) + + if object.name == name: + savedLocation = bpy.context.scene.cursor.location + bpy.context.scene.cursor.location = (-offset[0], -offset[2], offset[1]) + bpy.ops.object.origin_set(type='ORIGIN_CURSOR') + bpy.context.scene.cursor.location = savedLocation + + return {'FINISHED'} + + + + + + +def menu_export(self, context): + self.layout.operator(ExportJSONAnimation.bl_idname) + +def menu_import(self, context): + self.layout.operator(ImportJSONAnimation.bl_idname) + +def register(): + bpy.utils.register_class(ExportJSONAnimation) + bpy.utils.register_class(ImportJSONAnimation) + bpy.types.TOPBAR_MT_file_export.append(menu_export) + bpy.types.TOPBAR_MT_file_import.append(menu_import) + +def unregister(): + bpy.utils.unregister_class(ExportJSONAnimation) + bpy.utils.unregister_class(ImportJSONAnimation) + bpy.types.TOPBAR_MT_file_export.remove(menu_export) + bpy.types.TOPBAR_MT_file_import.remove(menu_import) + + +# This allows you to run the script directly from Blender's Text editor +# to test the add-on without having to install it. +if __name__ == "__main__": + register() diff --git a/tools/export-json-animation-4_0.py b/tools/export-json-animation-4_0.py new file mode 100644 index 000000000..86b973585 --- /dev/null +++ b/tools/export-json-animation-4_0.py @@ -0,0 +1,283 @@ +# HOW TO USE +# Make sure all your animation actions start on frame 0 and are named as such: +# Name.Part +# and run the export, they'll be split into Animation groups with each part being assigned as a Bus. +# EG. Reload.Body will apply an animation called Reload to the bus called Body +# For best results, make sure your object Transform Mode is set to YZX Euler, so rotations match in-game +# When importing, you can use the Action Editor to assign the imported animations to parts to view and modify them + +bl_info = { + "name": "Export JSON Animation", + "blender": (4, 0, 0), + "category": "Import-Export", +} + +import bpy +import json +import math +import mathutils + +from bpy_extras.io_utils import ExportHelper, ImportHelper +from bpy.props import StringProperty, BoolProperty, EnumProperty +from bpy.types import Operator + + +class ExportJSONAnimation(Operator, ExportHelper): + """Exports an animation in a NTM JSON format""" + bl_idname = "export.ntm_json" # Unique identifier for buttons and menu items to reference. + bl_label = "Export NTM .json" # Display name in the interface. + bl_options = {'REGISTER'} + + # ExportHelper mix-in class uses this. + filename_ext = ".json" + + filter_glob: StringProperty( + default="*.json", + options={'HIDDEN'}, + maxlen=255, # Max internal buffer length, longer would be clamped. + ) + + def execute(self, context): # execute() is called when running the operator. + print("writing JSON data to file...") + f = open(self.filepath, 'w', encoding='utf-8') + + collection = {"anim": {}, "offset": {}, "hierarchy": {}} + dimensions = ["x", "z", "y"] # Swizzled to X, Z, Y + mult = [1, -1, 1] # +X, -Z, +Y + + # Reset to first frame, so our offsets are set to model defaults + # If you get weird offset issues, make sure your model is in its rest pose before exporting + context.scene.frame_set(0) + + animations = collection['anim'] + offsets = collection['offset'] + hierarchy = collection['hierarchy'] + + actions = bpy.data.actions + for action in actions: + split = action.name.split('.') + if len(split) != 2: + continue + name = split[0] + part = split[1] + + if name not in animations: + animations[name] = {} + + animations[name][part] = {} + animation = animations[name][part] + + # Fetch all the animation data + for fcu in action.fcurves: + dimension = dimensions[fcu.array_index] + + if not fcu.data_path in animation: + animation[fcu.data_path] = {} + if not dimension in animation[fcu.data_path]: + animation[fcu.data_path][dimension] = [] + + multiplier = mult[fcu.array_index] + if fcu.data_path == 'rotation_euler': + multiplier *= 180 / math.pi + + previousMillis = 0 + previousInterpolation = "" + + for keyframe in fcu.keyframe_points: + timeToFrame = keyframe.co.x * (1 / context.scene.render.fps) * 1000 + millis = timeToFrame - previousMillis + value = keyframe.co.y * multiplier + tuple = [value, millis, keyframe.interpolation, keyframe.easing] + if previousInterpolation == "BEZIER": + tuple.append(keyframe.handle_left.x * (1 / context.scene.render.fps) * 1000) + tuple.append(keyframe.handle_left.y * multiplier) + tuple.append(keyframe.handle_left_type) + if keyframe.interpolation == "BEZIER": + tuple.append(keyframe.handle_right.x * (1 / context.scene.render.fps) * 1000) + tuple.append(keyframe.handle_right.y * multiplier) + tuple.append(keyframe.handle_right_type) + if keyframe.interpolation == "ELASTIC": + tuple.append(keyframe.amplitude) + tuple.append(keyframe.period) + if keyframe.interpolation == "BACK": + tuple.append(keyframe.back) + previousMillis = timeToFrame + previousInterpolation = keyframe.interpolation + animation[fcu.data_path][dimension].append(tuple) + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + if object.parent: + hierarchy[object.name] = object.parent.name + + if object.location == mathutils.Vector(): # don't export 0,0,0 + continue + + offsets[object.name] = [object.location.x, object.location.z, -object.location.y] + + + + f.write(json.dumps(collection)) + f.close() + + return {'FINISHED'} # Lets Blender know the operator finished successfully. + + + + + +class ImportJSONAnimation(Operator, ImportHelper): + """Imports an animation from a NTM JSON format""" + bl_idname = "import.ntm_json" # important since its how bpy.ops.import_test.some_data is constructed + bl_label = "Import NTM .json" + bl_options = {'REGISTER'} + + # ImportHelper mix-in class uses this. + filename_ext = ".json" + + filter_glob: StringProperty( + default="*.json", + options={'HIDDEN'}, + maxlen=255, # Max internal buffer length, longer would be clamped. + ) + + def execute(self, context): + print("reading JSON data from file...") + f = open(self.filepath, 'r', encoding='utf-8') + data = f.read() + f.close() + + dimensions = ["x", "z", "y"] # Swizzled to X, Z, Y + mult = [1, -1, 1] # +X, -Z, +Y + + collection = json.loads(data) + animations = collection["anim"] + for name in animations: + for part in animations[name]: + actionName = name + '.' + part + animation = animations[name][part] + action = bpy.data.actions.find(actionName) >= 0 and bpy.data.actions[actionName] or bpy.data.actions.new(actionName) + + action.use_fake_user = True + + # Keep the actions, in case they're already associated with objects + # but remove the frames to replace with fresh ones + action.fcurves.clear() + + for path in animation: + for dimension in animation[path]: + dimIndex = dimensions.index(dimension) + curve = action.fcurves.new(path, index=dimIndex) + + multiplier = mult[dimIndex] + if path == 'rotation_euler': + multiplier *= math.pi / 180 + + millis = 0 + previousInterpolation = '' + + for tuple in animation[path][dimension]: + value = tuple[0] * multiplier + millis = millis + tuple[1] + frame = round(millis * context.scene.render.fps / 1000) + + keyframe = curve.keyframe_points.insert(frame, value) + keyframe.interpolation = 'LINEAR' + if len(tuple) >= 3: + keyframe.interpolation = tuple[2] + + if len(tuple) >= 4: + keyframe.easing = tuple[3] + + i = 4 + + if previousInterpolation == 'BEZIER': + keyframe.handle_left.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_left.y = tuple[i] * multiplier + i += 1 + keyframe.handle_left_type = tuple[i] + i += 1 + if keyframe.interpolation == 'BEZIER': + keyframe.handle_right.x = tuple[i] * context.scene.render.fps / 1000 + i += 1 + keyframe.handle_right.y = tuple[i] * multiplier + i += 1 + keyframe.handle_right_type = tuple[i] + i += 1 + if keyframe.interpolation == 'ELASTIC': + keyframe.amplitude = tuple[i] + i += 1 + keyframe.period = tuple[i] + i += 1 + if keyframe.interpolation == 'BACK': + keyframe.back = tuple[i] + i += 1 + + previousInterpolation = keyframe.interpolation + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select_set(True) + bpy.ops.object.transform_apply(location=False, rotation=True, scale=False, properties=False) + object.rotation_mode = 'YZX' + + if 'hierarchy' in collection: + hierarchy = collection["hierarchy"] + for name in hierarchy: + parent = hierarchy[name] + + bpy.data.objects[name].parent = bpy.data.objects[parent] + + offsets = collection["offset"] + for name in offsets: + offset = offsets[name] + + for object in bpy.data.objects: + if object.type != 'MESH': + continue + + bpy.ops.object.select_all(action='DESELECT') + object.select_set(True) + + if object.name == name: + savedLocation = bpy.context.scene.cursor.location + bpy.context.scene.cursor.location = (-offset[0], -offset[2], offset[1]) + bpy.ops.object.origin_set(type='ORIGIN_CURSOR') + bpy.context.scene.cursor.location = savedLocation + + return {'FINISHED'} + + + + + + +def menu_export(self, context): + self.layout.operator(ExportJSONAnimation.bl_idname) + +def menu_import(self, context): + self.layout.operator(ImportJSONAnimation.bl_idname) + +def register(): + bpy.utils.register_class(ExportJSONAnimation) + bpy.utils.register_class(ImportJSONAnimation) + bpy.types.TOPBAR_MT_file_export.append(menu_export) + bpy.types.TOPBAR_MT_file_import.append(menu_import) + +def unregister(): + bpy.utils.unregister_class(ExportJSONAnimation) + bpy.utils.unregister_class(ImportJSONAnimation) + bpy.types.TOPBAR_MT_file_export.remove(menu_export) + bpy.types.TOPBAR_MT_file_import.remove(menu_import) + + +# This allows you to run the script directly from Blender's Text editor +# to test the add-on without having to install it. +if __name__ == "__main__": + register() From 6d924cbdc587589e1e17842c4293a93b6de79a02 Mon Sep 17 00:00:00 2001 From: Boblet Date: Thu, 10 Oct 2024 16:53:11 +0200 Subject: [PATCH 62/63] the rim flappe on a bongfish is mated to the bungus of its fuccbone. the scrotewad is only present on females above the pootsack (see: snogbag). --- .../weapon/sedna/factory/XFactory357.java | 16 ++- .../com/hbm/main/ModEventHandlerRenderer.java | 100 +++++++++++++++++- .../item/weapon/sedna/ItemRenderAm180.java | 6 +- .../item/weapon/sedna/ItemRenderAtlas.java | 6 +- .../item/weapon/sedna/ItemRenderCarbine.java | 6 +- .../weapon/sedna/ItemRenderCongoLake.java | 44 ++++---- .../item/weapon/sedna/ItemRenderDANI.java | 50 +++++++-- .../item/weapon/sedna/ItemRenderDebug.java | 6 +- .../item/weapon/sedna/ItemRenderFlaregun.java | 6 +- .../weapon/sedna/ItemRenderGreasegun.java | 6 +- .../weapon/sedna/ItemRenderHeavyRevolver.java | 6 +- .../item/weapon/sedna/ItemRenderHenry.java | 6 +- .../weapon/sedna/ItemRenderLiberator.java | 6 +- .../item/weapon/sedna/ItemRenderMaresleg.java | 6 +- .../weapon/sedna/ItemRenderPepperbox.java | 6 +- .../weapon/sedna/ItemRenderWeaponBase.java | 35 ++++-- .../hbm/render/loader/ModelRendererObj.java | 14 ++- 17 files changed, 243 insertions(+), 82 deletions(-) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index b143a4a87..611b7969f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -45,7 +45,7 @@ public class XFactory357 { ).setUnlocalizedName("gun_light_revolver").setTextureName(RefStrings.MODID + ":gun_darter"); ModItems.gun_light_revolver_dani = new ItemGunBaseNT( - new GunConfig().dura(30_000).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) + new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) @@ -53,8 +53,8 @@ public class XFactory357 { .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_ATLAS_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS), - new GunConfig().dura(30_000).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) + .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS), + new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(1, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) @@ -62,7 +62,7 @@ public class XFactory357 { .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .ps(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_ATLAS_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS) + .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS) ).setUnlocalizedName("gun_light_revolver_dani").setTextureName(RefStrings.MODID + ":gun_darter"); } @@ -97,4 +97,12 @@ public class XFactory357 { return null; }; + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DANI_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation().addBus("EQUIP", new BusAnimationSequence().addPos(360 * 3, 0, 0, 1000, IType.SIN_DOWN)); + } + + return LAMBDA_ATLAS_ANIMS.apply(stack, type); + }; } diff --git a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java index 693c8e20c..4c557405c 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java +++ b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java @@ -1,6 +1,7 @@ package com.hbm.main; import org.lwjgl.opengl.GL11; +import org.lwjgl.opengl.GL12; import org.lwjgl.opengl.GLContext; import com.hbm.blocks.ICustomBlockHighlight; @@ -8,6 +9,7 @@ import com.hbm.config.RadiationConfig; import com.hbm.handler.pollution.PollutionHandler.PollutionType; import com.hbm.items.armor.IArmorDisableModel; import com.hbm.items.armor.IArmorDisableModel.EnumPlayerPart; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.packet.PermaSyncHandler; import com.hbm.render.item.weapon.sedna.ItemRenderWeaponBase; import com.hbm.render.model.ModelMan; @@ -19,6 +21,7 @@ import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; +import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.client.renderer.RenderBlocks; import net.minecraft.client.renderer.entity.RenderManager; @@ -56,6 +59,7 @@ public class ModEventHandlerRenderer { EntityPlayer player = event.entityPlayer; RenderPlayer renderer = event.renderer; + ItemStack held = player.getHeldItem(); boolean isManly = PermaSyncHandler.boykissers.contains(player.getEntityId()); @@ -71,6 +75,18 @@ public class ModEventHandlerRenderer { } } + if(held != null) { + IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(held, IItemRenderer.ItemRenderType.EQUIPPED); + if(customRenderer instanceof ItemRenderWeaponBase) { + ItemRenderWeaponBase renderGun = (ItemRenderWeaponBase) customRenderer; + if(renderGun.isAkimbo()) { + partsHidden[EnumPlayerPart.LEFT_ARM.ordinal()] = true; + ModelRenderer box = getBoxFromType(renderer, EnumPlayerPart.LEFT_ARM); + box.isHidden = true; + } + } + } + if(isManly) { return; } @@ -98,8 +114,31 @@ public class ModEventHandlerRenderer { EntityPlayer player = event.entityPlayer; RenderPlayer renderer = event.renderer; + + boolean akimbo = false; + + ItemStack held = player.getHeldItem(); + + if(held != null) { + IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(held, IItemRenderer.ItemRenderType.EQUIPPED); + if(customRenderer instanceof ItemRenderWeaponBase) { + ItemRenderWeaponBase renderGun = (ItemRenderWeaponBase) customRenderer; + if(renderGun.isAkimbo()) { + akimbo = true; + } + } + } boolean isManly = PermaSyncHandler.boykissers.contains(player.getEntityId()); + + if(akimbo) { + ModelBiped biped = renderer.modelBipedMain; + biped.bipedLeftArm.rotateAngleY = 0.1F + biped.bipedHead.rotateAngleY; + if(!isManly) { + biped.bipedLeftArm.isHidden = false; + biped.bipedLeftArm.render(0.0625F); + } + } if(isManly) { if(manlyModel == null) @@ -115,6 +154,7 @@ public class ModEventHandlerRenderer { if(f6 > 1.0F) { f6 = 1.0F; } + manlyModel.render(event.entityPlayer, f7, f6, yawWrapped, yaw, pitch, 0.0625F, renderer); } } @@ -131,6 +171,58 @@ public class ModEventHandlerRenderer { } } } + + @SubscribeEvent + public void onRenderHeldGun(RenderPlayerEvent.Pre event) { + + EntityPlayer player = event.entityPlayer; + RenderPlayer renderer = event.renderer; + + if(player.getHeldItem() != null && player.getHeldItem().getItem() instanceof ItemGunBaseNT) { + renderer.modelBipedMain.aimedBow = true; + renderer.modelArmor.aimedBow = true; + renderer.modelArmorChestplate.aimedBow = true; + } + } + + @SubscribeEvent + public void onRenderAkimbo(RenderPlayerEvent.Specials.Pre event) { + + EntityPlayer player = event.entityPlayer; + RenderPlayer renderer = event.renderer; + ItemStack held = player.getHeldItem(); + if(held == null) return; + + IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(held, IItemRenderer.ItemRenderType.EQUIPPED); + + if(customRenderer instanceof ItemRenderWeaponBase) { + ItemRenderWeaponBase renderWeapon = (ItemRenderWeaponBase) customRenderer; + if(renderWeapon.isAkimbo()) { + GL11.glPushMatrix(); + renderer.modelBipedMain.bipedLeftArm.isHidden = false; + renderer.modelBipedMain.bipedLeftArm.postRender(0.0625F); + //vanilla bullshit + GL11.glTranslatef(-0.0625F, 0.4375F, 0.0625F); + float scale = 0.375F; + GL11.glTranslatef(0.25F, 0.1875F, -0.1875F); + GL11.glScalef(scale, scale, scale); + GL11.glRotatef(60.0F, 0.0F, 0.0F, 1.0F); + GL11.glRotatef(-90.0F, 1.0F, 0.0F, 0.0F); + GL11.glRotatef(20.0F, 0.0F, 0.0F, 1.0F); + // forge bullshit + GL11.glEnable(GL12.GL_RESCALE_NORMAL); + GL11.glTranslatef(0.0F, -0.3F, 0.0F); + GL11.glScalef(1.5F, 1.5F, 1.5F); + GL11.glRotatef(50.0F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(335.0F, 0.0F, 0.0F, 1.0F); + GL11.glTranslatef(-0.9375F, -0.0625F, 0.0F); + renderWeapon.setupThirdPersonAkimbo(held); + renderWeapon.renderEquippedAkimbo(held); + GL11.glDisable(GL12.GL_RESCALE_NORMAL); + GL11.glPopMatrix(); + } + } + } @SubscribeEvent public void onRenderHeldItem(RenderPlayerEvent.Specials.Pre event) { @@ -139,9 +231,7 @@ public class ModEventHandlerRenderer { //RenderPlayer renderer = event.renderer; boolean isManly = PermaSyncHandler.boykissers.contains(player.getEntityId()); - - if(!isManly) - return; + if(!isManly) return; if(manlyModel == null) manlyModel = new ModelMan(); @@ -169,8 +259,8 @@ public class ModEventHandlerRenderer { enumaction = held.getItemUseAction(); } - net.minecraftforge.client.IItemRenderer customRenderer = net.minecraftforge.client.MinecraftForgeClient.getItemRenderer(held, net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED); - boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(net.minecraftforge.client.IItemRenderer.ItemRenderType.EQUIPPED, held, net.minecraftforge.client.IItemRenderer.ItemRendererHelper.BLOCK_3D)); + IItemRenderer customRenderer = MinecraftForgeClient.getItemRenderer(held, IItemRenderer.ItemRenderType.EQUIPPED); + boolean is3D = (customRenderer != null && customRenderer.shouldUseRenderHelper(IItemRenderer.ItemRenderType.EQUIPPED, held, IItemRenderer.ItemRendererHelper.BLOCK_3D)); if(is3D || held.getItem() instanceof ItemBlock && RenderBlocks.renderItemIn3d(Block.getBlockFromItem(held.getItem()).getRenderType())) { f2 = 0.5F; diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java index 402545c56..599f58f83 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java @@ -15,7 +15,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -101,7 +101,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); double scale = 1D; GL11.glScaled(scale, scale, scale); @@ -110,7 +110,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 0.75D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java index 9a939214c..af8f2045b 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java @@ -15,7 +15,7 @@ public class ItemRenderAtlas extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -96,14 +96,14 @@ public class ItemRenderAtlas extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.125D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java index 8b1c4eb1d..dbf04f6a1 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java @@ -15,7 +15,7 @@ public class ItemRenderCarbine extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -84,7 +84,7 @@ public class ItemRenderCarbine extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); double scale = 1.375D; GL11.glScaled(scale, scale, scale); @@ -93,7 +93,7 @@ public class ItemRenderCarbine extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.375D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java index ae0fd41a6..42cd24e97 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java @@ -5,9 +5,11 @@ import java.awt.Color; import org.lwjgl.opengl.GL11; import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.mags.IMagazine; import com.hbm.main.ResourceManager; import com.hbm.particle.SpentCasing; import com.hbm.render.anim.HbmAnimations; +import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.client.Minecraft; import net.minecraft.item.ItemStack; @@ -18,7 +20,7 @@ public class ItemRenderCongoLake extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -80,22 +82,26 @@ public class ItemRenderCongoLake extends ItemRenderWeaponBase { GL11.glPushMatrix(); { - Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.casings_tex); - - HbmAnimations.applyRelevantTransformation("Shell"); - - SpentCasing casing = gun.getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - int[] colors = casing != null ? casing.getColors() : new int[] { SpentCasing.COLOR_CASE_40MM }; - - Color shellColor = new Color(colors[0]); - GL11.glColor3f(shellColor.getRed() / 255F, shellColor.getGreen() / 255F, shellColor.getBlue() / 255F); - ResourceManager.congolake.renderPart("Shell"); - - Color shellForeColor = new Color(colors.length > 1 ? colors[1] : colors[0]); - GL11.glColor3f(shellForeColor.getRed() / 255F, shellForeColor.getGreen() / 255F, shellForeColor.getBlue() / 255F); - ResourceManager.congolake.renderPart("ShellFore"); - - GL11.glColor3f(1F, 1F, 1F); + IMagazine mag = gun.getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack); + if(gun.getLastAnim(stack, 0) != AnimType.INSPECT || mag.getAmount(stack) > 0) { //omit when inspecting and no shell is loaded + + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.casings_tex); + + HbmAnimations.applyRelevantTransformation("Shell"); + + SpentCasing casing = mag.getCasing(stack); + int[] colors = casing != null ? casing.getColors() : new int[] { SpentCasing.COLOR_CASE_40MM }; + + Color shellColor = new Color(colors[0]); + GL11.glColor3f(shellColor.getRed() / 255F, shellColor.getGreen() / 255F, shellColor.getBlue() / 255F); + ResourceManager.congolake.renderPart("Shell"); + + Color shellForeColor = new Color(colors.length > 1 ? colors[1] : colors[0]); + GL11.glColor3f(shellForeColor.getRed() / 255F, shellForeColor.getGreen() / 255F, shellForeColor.getBlue() / 255F); + ResourceManager.congolake.renderPart("ShellFore"); + + GL11.glColor3f(1F, 1F, 1F); + } } GL11.glPopMatrix(); @@ -124,14 +130,14 @@ public class ItemRenderCongoLake extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 2.5D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java index 9199ec189..af2507d02 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java @@ -10,12 +10,14 @@ import net.minecraft.client.Minecraft; import net.minecraft.item.ItemStack; public class ItemRenderDANI extends ItemRenderWeaponBase { + + @Override public boolean isAkimbo() { return true; } @Override protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); } @@ -48,9 +50,9 @@ public class ItemRenderDANI extends ItemRenderWeaponBase { GL11.glTranslated(recoil[0], recoil[1], recoil[2]); GL11.glRotated(recoil[2] * 10, 1, 0, 0); - GL11.glTranslated(0, 0, -7); + GL11.glTranslated(0, -2, -2); GL11.glRotated(equip[0], -1, 0, 0); - GL11.glTranslated(0, 0, 7); + GL11.glTranslated(0, 2, 2); GL11.glPushMatrix(); GL11.glTranslated(0, 1.5, 9.25); @@ -106,19 +108,27 @@ public class ItemRenderDANI extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); - } @Override - protected void setupInv(ItemStack stack) { + public void setupThirdPersonAkimbo(ItemStack stack) { + super.setupThirdPersonAkimbo(stack); + GL11.glTranslated(0, 1, 3); + } + + @Override + public void setupInv(ItemStack stack) { GL11.glScaled(1, 1, -1); GL11.glTranslated(8, 6, 0); - double scale = 1.125D; GL11.glScaled(scale, scale, scale); + } + + @Override + public void renderInv(ItemStack stack) { GL11.glEnable(GL11.GL_LIGHTING); GL11.glShadeModel(GL11.GL_SMOOTH); @@ -149,5 +159,29 @@ public class ItemRenderDANI extends ItemRenderWeaponBase { } @Override - public void renderOther(ItemStack stack, ItemRenderType type) { } + public void renderEquipped(ItemStack stack) { + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_lunar_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } + + @Override + public void renderEquippedAkimbo(ItemStack stack) { + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_celestial_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_celestial_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java index ef664863b..f4875de7f 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java @@ -15,7 +15,7 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 1); float offset = 0.8F; @@ -96,7 +96,7 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glScaled(0.75, 0.75, 0.75); GL11.glTranslated(0, 1, 3); @@ -104,7 +104,7 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.25D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java index 9de213985..3a7e62e71 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java @@ -15,7 +15,7 @@ public class ItemRenderFlaregun extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -81,7 +81,7 @@ public class ItemRenderFlaregun extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); double scale = 0.5D; GL11.glScaled(scale, scale, scale); @@ -90,7 +90,7 @@ public class ItemRenderFlaregun extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java index 58630348f..0f6e044f0 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java @@ -15,7 +15,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -112,14 +112,14 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.5D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java index b01c1c287..740b76577 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java @@ -15,7 +15,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 1); float offset = 0.8F; @@ -98,7 +98,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glScaled(0.75, 0.75, 0.75); GL11.glTranslated(0, 1, 3); @@ -106,7 +106,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.25D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java index 31a4de217..0c89e72f0 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java @@ -15,7 +15,7 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -121,7 +121,7 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); double scale = 1.75D; GL11.glScaled(scale, scale, scale); @@ -130,7 +130,7 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.5D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java index f3ebf0ed8..7421322f5 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java @@ -16,7 +16,7 @@ public class ItemRenderLiberator extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -120,14 +120,14 @@ public class ItemRenderLiberator extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.5D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java index 1423083a5..1d94563bb 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java @@ -15,7 +15,7 @@ public class ItemRenderMaresleg extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 0.875); float offset = 0.8F; @@ -95,7 +95,7 @@ public class ItemRenderMaresleg extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); double scale = 1.75D; GL11.glScaled(scale, scale, scale); @@ -104,7 +104,7 @@ public class ItemRenderMaresleg extends ItemRenderWeaponBase { } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.4375D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java index 1be000046..903ce4f9f 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java @@ -15,7 +15,7 @@ public class ItemRenderPepperbox extends ItemRenderWeaponBase { protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } @Override - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 1.5); float offset = 0.8F; @@ -97,14 +97,14 @@ public class ItemRenderPepperbox extends ItemRenderWeaponBase { } @Override - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); GL11.glTranslated(0, 1, 3); } @Override - protected void setupInv(ItemStack stack) { + public void setupInv(ItemStack stack) { super.setupInv(stack); double scale = 1.5D; GL11.glScaled(scale, scale, scale); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java index 9638fbd80..7212aa842 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderWeaponBase.java @@ -31,6 +31,8 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { public static final ResourceLocation flash_plume = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lilmac_plume.png"); public static float interp; + + public boolean isAkimbo() { return false; } @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { @@ -48,13 +50,18 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { GL11.glPushMatrix(); switch(type) { case EQUIPPED_FIRST_PERSON: setupFirstPerson(item); renderFirstPerson(item); break; - case EQUIPPED: setupThirdPerson(item); renderOther(item, type); break; - case INVENTORY: setupInv(item); renderOther(item, type); break; - case ENTITY: setupEntity(item); renderOther(item, type); break; + case EQUIPPED: setupThirdPerson(item); renderEquipped(item); break; + case INVENTORY: setupInv(item); renderInv(item); break; + case ENTITY: setupEntity(item); renderEntity(item); break; } GL11.glPopMatrix(); } + public void renderEquipped(ItemStack stack) { renderOther(stack, ItemRenderType.EQUIPPED); } + public void renderEquippedAkimbo(ItemStack stack) { renderOther(stack, ItemRenderType.EQUIPPED); } + public void renderInv(ItemStack stack) { renderOther(stack, ItemRenderType.INVENTORY); } + public void renderEntity(ItemStack stack) { renderOther(stack, ItemRenderType.ENTITY); } + public void setPerspectiveAndRender(ItemStack stack, float interp) { this.interp = interp; @@ -187,7 +194,7 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { RenderHelper.disableStandardItemLighting(); } - protected void setupFirstPerson(ItemStack stack) { + public void setupFirstPerson(ItemStack stack) { GL11.glTranslated(0, 0, 1); if(Minecraft.getMinecraft().thePlayer.isSneaking()) { @@ -200,7 +207,7 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { } } - protected void setupThirdPerson(ItemStack stack) { + public void setupThirdPerson(ItemStack stack) { double scale = 0.125D; GL11.glScaled(scale, scale, scale); @@ -212,20 +219,32 @@ public abstract class ItemRenderWeaponBase implements IItemRenderer { } - protected void setupInv(ItemStack stack) { + public void setupThirdPersonAkimbo(ItemStack stack) { + double scale = 0.125D; + GL11.glScaled(scale, scale, scale); + + GL11.glRotatef(15.0F, 0.0F, 0.0F, 1.0F); + GL11.glRotatef(12.5F, 0.0F, 1.0F, 0.0F); + GL11.glRotatef(10.0F, 1.0F, 0.0F, 0.0F); + + GL11.glTranslated(5, 0, 0); + + } + + public void setupInv(ItemStack stack) { GL11.glScaled(1, 1, -1); GL11.glTranslated(8, 8, 0); GL11.glRotated(225, 0, 0, 1); GL11.glRotated(90, 0, 1, 0); } - protected void setupEntity(ItemStack stack) { + public void setupEntity(ItemStack stack) { double scale = 0.125D; GL11.glScaled(scale, scale, scale); } public abstract void renderFirstPerson(ItemStack stack); - public abstract void renderOther(ItemStack stack, ItemRenderType type); + public void renderOther(ItemStack stack, ItemRenderType type) { } public static void standardAimingTransform(ItemStack stack, double sX, double sY, double sZ, double aX, double aY, double aZ) { float aimingProgress = ItemGunBaseNT.prevAimingProgress + (ItemGunBaseNT.aimingProgress - ItemGunBaseNT.prevAimingProgress) * interp; diff --git a/src/main/java/com/hbm/render/loader/ModelRendererObj.java b/src/main/java/com/hbm/render/loader/ModelRendererObj.java index 4d916aa86..b7e85a58d 100644 --- a/src/main/java/com/hbm/render/loader/ModelRendererObj.java +++ b/src/main/java/com/hbm/render/loader/ModelRendererObj.java @@ -21,6 +21,8 @@ public class ModelRendererObj { public float offsetX; public float offsetY; public float offsetZ; + + public boolean doRender = true; String[] parts; IModelCustom model; @@ -97,11 +99,13 @@ public class ModelRendererObj { GL11.glScalef(scale, scale, scale); - if(parts.length > 0) - for(String part : parts) - model.renderPart(part); - else - model.renderAll(); + if(doRender) { + if(parts.length > 0) + for(String part : parts) + model.renderPart(part); + else + model.renderAll(); + } GL11.glPopMatrix(); } From 19cfc54dee17bfe8a58a697cd109ce7bc3356418 Mon Sep 17 00:00:00 2001 From: Bob Date: Thu, 10 Oct 2024 23:21:39 +0200 Subject: [PATCH 63/63] grenade tweaks --- changelog | 5 +- .../java/com/hbm/crafting/WeaponRecipes.java | 5 +- .../projectile/EntityBulletBaseMK4.java | 6 + .../java/com/hbm/explosion/ExplosionNT.java | 9 +- .../standard/EntityProcessorCross.java | 16 +- .../standard/EntityProcessorCrossSmooth.java | 15 ++ .../standard/EntityProcessorStandard.java | 14 +- .../hbm/items/weapon/sedna/BulletConfig.java | 8 + .../sedna/factory/GunFactoryClient.java | 198 +++--------------- .../hbm/items/weapon/sedna/factory/Lego.java | 13 ++ .../weapon/sedna/factory/LegoClient.java | 150 +++++++++++++ .../weapon/sedna/factory/Orchestras.java | 27 +++ .../weapon/sedna/factory/XFactory357.java | 15 +- .../weapon/sedna/factory/XFactory40mm.java | 16 +- .../com/hbm/main/ModEventHandlerClient.java | 2 +- .../com/hbm/main/ModEventHandlerRenderer.java | 3 + .../entity/projectile/RenderBullet.java | 15 -- .../weapon/sedna/ItemRenderCongoLake.java | 4 +- .../models/weapons/dani_celestial.png | Bin 3086 -> 3292 bytes .../textures/models/weapons/dani_lunar.png | Bin 3090 -> 3329 bytes 20 files changed, 321 insertions(+), 200 deletions(-) create mode 100644 src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCrossSmooth.java diff --git a/changelog b/changelog index 6a367159f..5c2fa570a 100644 --- a/changelog +++ b/changelog @@ -19,4 +19,7 @@ * Fixed compatibility with EndlessIDs, biome changes should no longer crash the game * Fixed GL state leak caused by fluid tanks, causing some tile entities to be rendered without face culling * Fixed a bug where using too many PWR heatsinks would cause an overflow, making the heat capacity negative -* Fixed landmines generating into the floor on superflat worlds \ No newline at end of file +* Fixed landmines generating into the floor on superflat worlds +* All NTM type explosions are no longer affected by difficulty setting, preventing them from dealing damage in peaceful mode + * There are a few instances of vanilla explosions still being used, those will be phased out in the future +* Fixed tutorial presentations triggering when hitting F1 not just in the inventory but also when looking at the block in question \ No newline at end of file diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 43e3803b9..7914ba839 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -39,10 +39,12 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_henry, 1), new Object[] { "BRP", "BMS", 'B', STEEL.lightBarrel(), 'R', GUNMETAL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'S', WOOD.stock(), 'P', GUNMETAL.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_greasegun, 1), new Object[] { "BRS", "SMG", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'S', STEEL.bolt(), 'M', GUNMETAL.mechanism(), 'G', STEEL.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_maresleg, 1), new Object[] { "BRM", "BGS", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', STEEL.bolt(), 'S', WOOD.stock() }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_flaregun, 1), new Object[] { "BRM", " G", 'B', STEEL.heavyBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'B', STEEL.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_flaregun, 1), new Object[] { "BRM", " G", 'B', STEEL.heavyBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', STEEL.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_heavy_revolver, 1), new Object[] { "BRM", " G", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_carbine, 1), new Object[] { "BRM", "G S", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip(), 'S', WOOD.stock() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_am180, 1), new Object[] { "BBR", "GMS", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip(), 'S', WOOD.stock() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_liberator, 1), new Object[] { "BB ", "BBM", "G G", 'B', DURA.lightBarrel(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_congolake, 1), new Object[] { "BM ", "BRS", "G ", 'B', DURA.heavyBarrel(), 'M', GUNMETAL.mechanism(), 'R', DURA.lightReceiver(), 'S', WOOD.stock(), 'G', WOOD.grip() }); //SEDNA Ammo CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE, 6), new Object[] { "C", "P", "G", 'C', KEY_COBBLESTONE, 'P', Items.paper, 'G', Items.gunpowder }); @@ -98,7 +100,6 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_karl, 1), new Object[] { "SSW", " MW", 'S', STEEL.shell(), 'W', ALLOY.plate(), 'M', ModItems.mechanism_launcher_2 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_quadro, 1), new Object[] { "SSS", "SSS", "CM ", 'S', STEEL.pipe(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.BASIC), 'M', ModItems.mechanism_launcher_2 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_hk69, 1), new Object[] { "SSI", " MB", 'S', STEEL.shell(), 'I', IRON.ingot(), 'M', ModItems.mechanism_launcher_1, 'B', STEEL.bolt() }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_congolake, 1), new Object[] { "HHR", "WLW", 'H', AL.shell(), 'R', ModItems.mechanism_rifle_1, 'W', KEY_LOG, 'L', ModItems.mechanism_launcher_1 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_stinger, 1), new Object[] { "SSW", "CMW", 'S', STEEL.plate(), 'W', TI.plate(), 'C', DictFrame.fromOne(ModItems.circuit, EnumCircuitType.ADVANCED), 'M', ModItems.mechanism_launcher_2 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_revolver, 1), new Object[] { "SSM", " RW", 'S', STEEL.plate(), 'W', KEY_PLANKS, 'R', AL.wireFine(), 'M', ModItems.mechanism_revolver_1 }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_revolver_saturnite, 1), new Object[] { "SSM", " RW", 'S', BIGMT.plate(), 'W', KEY_PLANKS, 'R', W.wireFine(), 'M', ModItems.mechanism_revolver_2 }); diff --git a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java index 7b000c098..f83eeb76d 100644 --- a/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java +++ b/src/main/java/com/hbm/entity/projectile/EntityBulletBaseMK4.java @@ -110,6 +110,8 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { } if(!worldObj.isRemote && this.ticksExisted > config.expires) this.setDead(); + + if(this.config.onUpdate != null) this.config.onUpdate.accept(this); } @Override @@ -124,6 +126,10 @@ public class EntityBulletBaseMK4 extends EntityThrowableInterp { protected void onImpact(MovingObjectPosition mop) { if(!worldObj.isRemote) { + if(this.config.onImpact != null) this.config.onImpact.accept(this, mop); + + if(this.isDead) return; + if(mop.typeOfHit == mop.typeOfHit.BLOCK) { ForgeDirection dir = ForgeDirection.getOrientation(mop.sideHit); diff --git a/src/main/java/com/hbm/explosion/ExplosionNT.java b/src/main/java/com/hbm/explosion/ExplosionNT.java index 5de3072b3..533823d5f 100644 --- a/src/main/java/com/hbm/explosion/ExplosionNT.java +++ b/src/main/java/com/hbm/explosion/ExplosionNT.java @@ -21,6 +21,7 @@ import net.minecraft.entity.player.EntityPlayer; import net.minecraft.init.Blocks; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.DamageSource; +import net.minecraft.util.EntityDamageSource; import net.minecraft.util.MathHelper; import net.minecraft.util.Vec3; import net.minecraft.world.ChunkPosition; @@ -156,7 +157,7 @@ public class ExplosionNT extends Explosion { currentZ /= d9; double d10 = (double) this.worldObj.getBlockDensity(vec3, entity.boundingBox); double d11 = (1.0D - d4) * d10; - entity.attackEntityFrom(DamageSource.setExplosionSource(this), (float) ((int) ((d11 * d11 + d11) / 2.0D * 8.0D * (double) this.explosionSize + 1.0D))); + entity.attackEntityFrom(setExplosionSource(this), (float) ((int) ((d11 * d11 + d11) / 2.0D * 8.0D * (double) this.explosionSize + 1.0D))); double d8 = EnchantmentProtection.func_92092_a(entity, d11); entity.motionX += currentX * d8; entity.motionY += currentY * d8; @@ -173,6 +174,12 @@ public class ExplosionNT extends Explosion { } } + public static DamageSource setExplosionSource(Explosion explosion) { + return explosion != null && explosion.getExplosivePlacedBy() != null ? + (new EntityDamageSource("explosion.player", explosion.getExplosivePlacedBy())).setExplosion() : + (new DamageSource("explosion")).setExplosion(); + } + public void doExplosionB(boolean p_77279_1_) { if(!has(ExAttrib.NOSOUND)) diff --git a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java index 64c4de445..15b1a06b8 100644 --- a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java +++ b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCross.java @@ -13,7 +13,9 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.DamageSource; +import net.minecraft.util.EntityDamageSource; import net.minecraft.util.Vec3; +import net.minecraft.world.Explosion; import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; import net.minecraftforge.event.ForgeEventFactory; @@ -86,8 +88,8 @@ public class EntityProcessorCross implements IEntityProcessor { } double knockback = (1.0D - distanceScaled) * density; - - entity.attackEntityFrom(DamageSource.setExplosionSource(explosion.compat), (float) ((int) ((knockback * knockback + knockback) / 2.0D * 8.0D * size + 1.0D))); + + entity.attackEntityFrom(setExplosionSource(explosion.compat), calculateDamage(distanceScaled, density, knockback, size)); double enchKnockback = EnchantmentProtection.func_92092_a(entity, knockback); entity.motionX += deltaX * enchKnockback; @@ -108,6 +110,16 @@ public class EntityProcessorCross implements IEntityProcessor { return affectedPlayers; } + public float calculateDamage(double distanceScaled, double density, double knockback, float size) { + return (float) ((int) ((knockback * knockback + knockback) / 2.0D * 8.0D * size + 1.0D)); + } + + public static DamageSource setExplosionSource(Explosion explosion) { + return explosion != null && explosion.getExplosivePlacedBy() != null ? + (new EntityDamageSource("explosion.player", explosion.getExplosivePlacedBy())).setExplosion() : + (new DamageSource("explosion")).setExplosion(); + } + public EntityProcessorCross withRangeMod(float mod) { range = new IEntityRangeMutator() { @Override diff --git a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCrossSmooth.java b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCrossSmooth.java new file mode 100644 index 000000000..725b9fc92 --- /dev/null +++ b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorCrossSmooth.java @@ -0,0 +1,15 @@ +package com.hbm.explosion.vanillant.standard; + +public class EntityProcessorCrossSmooth extends EntityProcessorCross { + + protected float fixedDamage; + + public EntityProcessorCrossSmooth(double nodeDist, float fixedDamage) { + super(nodeDist); + this.fixedDamage = fixedDamage; + } + + public float calculateDamage(double distanceScaled, double density, double knockback, float size) { + return (float) (fixedDamage * (1 - distanceScaled)); + } +} diff --git a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorStandard.java b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorStandard.java index ba9a66cad..9e369ea35 100644 --- a/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorStandard.java +++ b/src/main/java/com/hbm/explosion/vanillant/standard/EntityProcessorStandard.java @@ -13,7 +13,9 @@ import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.util.AxisAlignedBB; import net.minecraft.util.DamageSource; +import net.minecraft.util.EntityDamageSource; import net.minecraft.util.Vec3; +import net.minecraft.world.Explosion; import net.minecraft.world.World; import net.minecraftforge.event.ForgeEventFactory; @@ -67,7 +69,7 @@ public class EntityProcessorStandard implements IEntityProcessor { double density = world.getBlockDensity(vec3, entity.boundingBox); double knockback = (1.0D - distanceScaled) * density; - entity.attackEntityFrom(DamageSource.setExplosionSource(explosion.compat), (float) ((int) ((knockback * knockback + knockback) / 2.0D * 8.0D * size + 1.0D))); + entity.attackEntityFrom(setExplosionSource(explosion.compat), calculateDamage(distanceScaled, density, knockback, size)); double enchKnockback = EnchantmentProtection.func_92092_a(entity, knockback); entity.motionX += deltaX * enchKnockback; @@ -88,6 +90,16 @@ public class EntityProcessorStandard implements IEntityProcessor { return affectedPlayers; } + public float calculateDamage(double distanceScaled, double density, double knockback, float size) { + return (float) ((int) ((knockback * knockback + knockback) / 2.0D * 8.0D * size + 1.0D)); + } + + public static DamageSource setExplosionSource(Explosion explosion) { + return explosion != null && explosion.getExplosivePlacedBy() != null ? + (new EntityDamageSource("explosion.player", explosion.getExplosivePlacedBy())).setExplosion() : + (new DamageSource("explosion")).setExplosion(); + } + public EntityProcessorStandard withRangeMod(float mod) { range = new IEntityRangeMutator() { @Override diff --git a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java index 4cf10e425..419b29f25 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/BulletConfig.java @@ -3,6 +3,7 @@ package com.hbm.items.weapon.sedna; import java.util.ArrayList; import java.util.List; import java.util.function.BiConsumer; +import java.util.function.Consumer; import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.inventory.RecipesCommon.ComparableStack; @@ -15,6 +16,7 @@ import net.minecraft.entity.EntityLivingBase; import net.minecraft.item.Item; import net.minecraft.util.DamageSource; import net.minecraft.util.EntityDamageSourceIndirect; +import net.minecraft.util.MovingObjectPosition; public class BulletConfig { @@ -45,6 +47,9 @@ public class BulletConfig { public int maxRicochetCount = 2; /** Whether damage dealt to an entity is subtracted from the projectile's damage on penetration */ public boolean damageFalloffByPen = true; + + public Consumer onUpdate; + public BiConsumer onImpact; public double gravity = 0; public int expires = 30; @@ -88,6 +93,9 @@ public class BulletConfig { public BulletConfig setCasing(SpentCasing casing) { this.casing = casing; return this; } public BulletConfig setRenderer(BiConsumer renderer) { this.renderer = renderer; return this; } + public BulletConfig setOnUpdate(Consumer lambda) { this.onUpdate = lambda; return this; } + public BulletConfig setOnImpact(BiConsumer lambda) { this.onImpact = lambda; return this; } + public DamageSource getDamage(EntityBulletBaseMK4 bullet, EntityLivingBase shooter, boolean bypass) { DamageSource dmg; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 55203d453..c2e43b673 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -9,21 +9,10 @@ import static com.hbm.items.weapon.sedna.factory.XFactory44.*; import static com.hbm.items.weapon.sedna.factory.XFactory762mm.*; import static com.hbm.items.weapon.sedna.factory.XFactory9mm.*; -import java.util.function.BiConsumer; - -import org.lwjgl.opengl.GL11; - -import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.ItemGunBaseNT; -import com.hbm.lib.RefStrings; import com.hbm.render.item.weapon.sedna.*; -import net.minecraft.client.Minecraft; -import net.minecraft.client.renderer.ActiveRenderInfo; -import net.minecraft.client.renderer.RenderHelper; -import net.minecraft.client.renderer.Tessellator; -import net.minecraft.util.ResourceLocation; import net.minecraftforge.client.MinecraftForgeClient; public class GunFactoryClient { @@ -44,36 +33,37 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_liberator, new ItemRenderLiberator()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_congolake, new ItemRenderCongoLake()); //PROJECTILES - ammo_debug.setRenderer(RENDER_STANDARD_BULLET); - ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); - m357_sp.setRenderer(RENDER_STANDARD_BULLET); - m357_fmj.setRenderer(RENDER_STANDARD_BULLET); - m357_jhp.setRenderer(RENDER_STANDARD_BULLET); - m357_ap.setRenderer(RENDER_AP_BULLET); - m357_express.setRenderer(RENDER_EXPRESS_BULLET); - m44_sp.setRenderer(RENDER_STANDARD_BULLET); - m44_fmj.setRenderer(RENDER_STANDARD_BULLET); - m44_jhp.setRenderer(RENDER_STANDARD_BULLET); - m44_ap.setRenderer(RENDER_AP_BULLET); - m44_express.setRenderer(RENDER_EXPRESS_BULLET); - p9_sp.setRenderer(RENDER_STANDARD_BULLET); - p9_fmj.setRenderer(RENDER_STANDARD_BULLET); - p9_jhp.setRenderer(RENDER_STANDARD_BULLET); - p9_ap.setRenderer(RENDER_AP_BULLET); - g12_bp.setRenderer(RENDER_STANDARD_BULLET); - g12_bp_magnum.setRenderer(RENDER_STANDARD_BULLET); - g12_bp_slug.setRenderer(RENDER_STANDARD_BULLET); - g12.setRenderer(RENDER_STANDARD_BULLET); - g40_flare.setRenderer(RENDER_FLARE); - r762_sp.setRenderer(RENDER_STANDARD_BULLET); - r762_fmj.setRenderer(RENDER_STANDARD_BULLET); - r762_jhp.setRenderer(RENDER_STANDARD_BULLET); - r762_ap.setRenderer(RENDER_AP_BULLET); - r762_du.setRenderer(RENDER_DU_BULLET); - p22_sp.setRenderer(RENDER_STANDARD_BULLET); - p22_fmj.setRenderer(RENDER_STANDARD_BULLET); - p22_jhp.setRenderer(RENDER_STANDARD_BULLET); - p22_ap.setRenderer(RENDER_AP_BULLET); + ammo_debug.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + ammo_debug_buckshot.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m357_sp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m357_fmj.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m357_jhp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m357_ap.setRenderer(LegoClient.RENDER_AP_BULLET); + m357_express.setRenderer(LegoClient.RENDER_EXPRESS_BULLET); + m44_sp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m44_fmj.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m44_jhp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + m44_ap.setRenderer(LegoClient.RENDER_AP_BULLET); + m44_express.setRenderer(LegoClient.RENDER_EXPRESS_BULLET); + p9_sp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p9_fmj.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p9_jhp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p9_ap.setRenderer(LegoClient.RENDER_AP_BULLET); + g12_bp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + g12_bp_magnum.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + g12_bp_slug.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + g12.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + r762_sp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + r762_fmj.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + r762_jhp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + r762_ap.setRenderer(LegoClient.RENDER_AP_BULLET); + r762_du.setRenderer(LegoClient.RENDER_DU_BULLET); + p22_sp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p22_fmj.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p22_jhp.setRenderer(LegoClient.RENDER_STANDARD_BULLET); + p22_ap.setRenderer(LegoClient.RENDER_AP_BULLET); + g40_flare.setRenderer(LegoClient.RENDER_FLARE); + g40.setRenderer(LegoClient.RENDER_GRENADE); //HUDS ((ItemGunBaseNT) ModItems.gun_debug) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); @@ -90,130 +80,4 @@ public class GunFactoryClient { ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY_MIRROR, LegoClient.HUD_COMPONENT_AMMO_MIRROR); ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 1).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } - - public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { - double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; - if(length <= 0) return; - renderBulletStandard(Tessellator.instance, 0xFFBF00, 0xFFFFFF, length, false); - }; - - public static BiConsumer RENDER_AP_BULLET = (bullet, interp) -> { - double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; - if(length <= 0) return; - renderBulletStandard(Tessellator.instance, 0xFF6A00, 0xFFE28D, length, false); - }; - - public static BiConsumer RENDER_EXPRESS_BULLET = (bullet, interp) -> { - double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; - if(length <= 0) return; - renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, false); - }; - - public static BiConsumer RENDER_DU_BULLET = (bullet, interp) -> { - double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; - if(length <= 0) return; - renderBulletStandard(Tessellator.instance, 0x5CCD41, 0xE9FF8D, length, false); - }; - - public static BiConsumer RENDER_TRACER_BULLET = (bullet, interp) -> { - double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; - if(length <= 0) return; - renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, true); - }; - - public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, boolean fullbright) { renderBulletStandard(tess, dark, light, length, 0.03125D, 0.03125D * 0.25D, fullbright); } - - public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, double widthF, double widthB, boolean fullbright) { - - GL11.glDisable(GL11.GL_TEXTURE_2D); - GL11.glDisable(GL11.GL_CULL_FACE); - GL11.glDisable(GL11.GL_LIGHTING); - GL11.glShadeModel(GL11.GL_SMOOTH); - GL11.glColor4f(1F, 1F, 1F, 1F); - - tess.startDrawingQuads(); - if(fullbright) tess.setBrightness(240); - tess.setNormal(0F, 1F, 0F); - tess.setColorOpaque_I(dark); - tess.addVertex(length, widthB, -widthB); tess.addVertex(length, widthB, widthB); - tess.setColorOpaque_I(light); - tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); - tess.setColorOpaque_I(dark); - tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); - tess.setColorOpaque_I(light); - tess.addVertex(0, -widthF, widthF); tess.addVertex(0, -widthF, -widthF); - tess.setColorOpaque_I(dark); - tess.addVertex(length, -widthB, widthB); tess.addVertex(length, widthB, widthB); - tess.setColorOpaque_I(light); - tess.addVertex(0, widthF, widthF); tess.addVertex(0, -widthF, widthF); - tess.setColorOpaque_I(dark); - tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, widthB, -widthB); - tess.setColorOpaque_I(light); - tess.addVertex(0, widthF, -widthF); tess.addVertex(0, -widthF, -widthF); - tess.setColorOpaque_I(dark); - tess.addVertex(length, widthB, widthB); tess.addVertex(length, widthB, -widthB); - tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); - tess.setColorOpaque_I(light); - tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); - tess.addVertex(0, -widthF, -widthF); tess.addVertex(0, -widthF, widthF); - tess.draw(); - - GL11.glShadeModel(GL11.GL_FLAT); - GL11.glEnable(GL11.GL_LIGHTING); - GL11.glEnable(GL11.GL_CULL_FACE); - GL11.glEnable(GL11.GL_TEXTURE_2D); - } - - private static final ResourceLocation flare = new ResourceLocation(RefStrings.MODID + ":textures/particle/flare.png"); - public static BiConsumer RENDER_FLARE = (bullet, interp) -> { - - if(bullet.ticksExisted < 2) return; - - GL11.glPushMatrix(); - GL11.glEnable(GL11.GL_BLEND); - GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); - GL11.glAlphaFunc(GL11.GL_GREATER, 0); - GL11.glDisable(GL11.GL_ALPHA_TEST); - GL11.glDepthMask(false); - RenderHelper.disableStandardItemLighting(); - - Minecraft.getMinecraft().getTextureManager().bindTexture(flare); - - Tessellator tess = Tessellator.instance; - tess.startDrawingQuads(); - - float f1 = ActiveRenderInfo.rotationX; - float f2 = ActiveRenderInfo.rotationZ; - float f3 = ActiveRenderInfo.rotationYZ; - float f4 = ActiveRenderInfo.rotationXY; - float f5 = ActiveRenderInfo.rotationXZ; - - double posX = 0; - double posY = 0; - double posZ = 0; - double scale = Math.min(5, (bullet.ticksExisted + interp - 2) * 0.5) * (0.8 + bullet.worldObj.rand.nextDouble() * 0.4); - - tess.setColorRGBA_F(1F, 0.5F, 0.5F, 0.5F); - tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); - tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); - tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); - tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); - - scale *= 0.5D; - - tess.setColorRGBA_F(1F, 1F, 1F, 0.75F); - tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); - tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); - tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); - tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); - - tess.draw(); - - GL11.glDepthMask(true); - GL11.glEnable(GL11.GL_ALPHA_TEST); - RenderHelper.enableStandardItemLighting(); - GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F); - GL11.glDisable(GL11.GL_BLEND); - GL11.glPopMatrix(); - }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index f702a63bc..943b39532 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -6,6 +6,10 @@ import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.entity.projectile.EntityBulletBaseMK4; +import com.hbm.explosion.vanillant.ExplosionVNT; +import com.hbm.explosion.vanillant.standard.EntityProcessorCrossSmooth; +import com.hbm.explosion.vanillant.standard.ExplosionEffectStandard; +import com.hbm.explosion.vanillant.standard.PlayerProcessorStandard; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; @@ -20,6 +24,7 @@ import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; +import net.minecraft.util.MovingObjectPosition; import net.minecraft.util.Vec3; /** @@ -187,6 +192,14 @@ public class Lego { return 1F - (percent - 0.75F) * 2F; } + public static void standardExplode(EntityBulletBaseMK4 bullet, MovingObjectPosition mop, float range) { + ExplosionVNT vnt = new ExplosionVNT(bullet.worldObj, mop.hitVec.xCoord, mop.hitVec.yCoord, mop.hitVec.zCoord, range); + vnt.setEntityProcessor(new EntityProcessorCrossSmooth(1, bullet.damage)); + vnt.setPlayerProcessor(new PlayerProcessorStandard()); + vnt.setSFX(new ExplosionEffectStandard()); + vnt.explode(); + } + /** anims for the DEBUG revolver, mostly a copy of the li'lpip but with some fixes regarding the cylinder movement */ @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DEBUG_ANIMS = (stack, type) -> { switch(type) { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java index caf5a33a2..f9f1f349e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java @@ -1,7 +1,20 @@ package com.hbm.items.weapon.sedna.factory; +import java.util.function.BiConsumer; + +import org.lwjgl.opengl.GL11; + +import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.weapon.sedna.hud.HUDComponentAmmoCounter; import com.hbm.items.weapon.sedna.hud.HUDComponentDurabilityBar; +import com.hbm.lib.RefStrings; +import com.hbm.main.ResourceManager; + +import net.minecraft.client.Minecraft; +import net.minecraft.client.renderer.ActiveRenderInfo; +import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.util.ResourceLocation; public class LegoClient { @@ -9,4 +22,141 @@ public class LegoClient { public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY_MIRROR = new HUDComponentDurabilityBar(true); public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO_MIRROR = new HUDComponentAmmoCounter(0, true); + + public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0xFFBF00, 0xFFFFFF, length, false); + }; + + public static BiConsumer RENDER_AP_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0xFF6A00, 0xFFE28D, length, false); + }; + + public static BiConsumer RENDER_EXPRESS_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, false); + }; + + public static BiConsumer RENDER_DU_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0x5CCD41, 0xE9FF8D, length, false); + }; + + public static BiConsumer RENDER_TRACER_BULLET = (bullet, interp) -> { + double length = bullet.prevVelocity + (bullet.velocity - bullet.prevVelocity) * interp; + if(length <= 0) return; + renderBulletStandard(Tessellator.instance, 0x9E082E, 0xFF8A79, length, true); + }; + + public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, boolean fullbright) { renderBulletStandard(tess, dark, light, length, 0.03125D, 0.03125D * 0.25D, fullbright); } + + public static void renderBulletStandard(Tessellator tess, int dark, int light, double length, double widthF, double widthB, boolean fullbright) { + + GL11.glDisable(GL11.GL_TEXTURE_2D); + GL11.glDisable(GL11.GL_CULL_FACE); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + GL11.glColor4f(1F, 1F, 1F, 1F); + + tess.startDrawingQuads(); + if(fullbright) tess.setBrightness(240); + tess.setNormal(0F, 1F, 0F); + tess.setColorOpaque_I(dark); + tess.addVertex(length, widthB, -widthB); tess.addVertex(length, widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, -widthF, widthF); tess.addVertex(0, -widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, widthB); tess.addVertex(length, widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, -widthF, widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, widthB, -widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, -widthF); tess.addVertex(0, -widthF, -widthF); + tess.setColorOpaque_I(dark); + tess.addVertex(length, widthB, widthB); tess.addVertex(length, widthB, -widthB); + tess.addVertex(length, -widthB, -widthB); tess.addVertex(length, -widthB, widthB); + tess.setColorOpaque_I(light); + tess.addVertex(0, widthF, widthF); tess.addVertex(0, widthF, -widthF); + tess.addVertex(0, -widthF, -widthF); tess.addVertex(0, -widthF, widthF); + tess.draw(); + + GL11.glShadeModel(GL11.GL_FLAT); + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_CULL_FACE); + GL11.glEnable(GL11.GL_TEXTURE_2D); + } + + private static final ResourceLocation flare = new ResourceLocation(RefStrings.MODID + ":textures/particle/flare.png"); + public static BiConsumer RENDER_FLARE = (bullet, interp) -> { + + if(bullet.ticksExisted < 2) return; + + GL11.glPushMatrix(); + GL11.glEnable(GL11.GL_BLEND); + GL11.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE); + GL11.glAlphaFunc(GL11.GL_GREATER, 0); + GL11.glDisable(GL11.GL_ALPHA_TEST); + GL11.glDepthMask(false); + RenderHelper.disableStandardItemLighting(); + + Minecraft.getMinecraft().getTextureManager().bindTexture(flare); + + Tessellator tess = Tessellator.instance; + tess.startDrawingQuads(); + + float f1 = ActiveRenderInfo.rotationX; + float f2 = ActiveRenderInfo.rotationZ; + float f3 = ActiveRenderInfo.rotationYZ; + float f4 = ActiveRenderInfo.rotationXY; + float f5 = ActiveRenderInfo.rotationXZ; + + double posX = 0; + double posY = 0; + double posZ = 0; + double scale = Math.min(5, (bullet.ticksExisted + interp - 2) * 0.5) * (0.8 + bullet.worldObj.rand.nextDouble() * 0.4); + + tess.setColorRGBA_F(1F, 0.5F, 0.5F, 0.5F); + tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); + tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); + tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); + tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); + + scale *= 0.5D; + + tess.setColorRGBA_F(1F, 1F, 1F, 0.75F); + tess.addVertexWithUV((double) (posX - f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ - f2 * scale - f4 * scale), 1, 1); + tess.addVertexWithUV((double) (posX - f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ - f2 * scale + f4 * scale), 1, 0); + tess.addVertexWithUV((double) (posX + f1 * scale + f3 * scale), (double) (posY + f5 * scale), (double) (posZ + f2 * scale + f4 * scale), 0, 0); + tess.addVertexWithUV((double) (posX + f1 * scale - f3 * scale), (double) (posY - f5 * scale), (double) (posZ + f2 * scale - f4 * scale), 0, 1); + + tess.draw(); + + GL11.glDepthMask(true); + GL11.glEnable(GL11.GL_ALPHA_TEST); + RenderHelper.enableStandardItemLighting(); + GL11.glAlphaFunc(GL11.GL_GREATER, 0.1F); + GL11.glDisable(GL11.GL_BLEND); + GL11.glPopMatrix(); + }; + + public static BiConsumer RENDER_GRENADE = (bullet, interp) -> { + + GL11.glScalef(0.25F, 0.25F, 0.25F); + GL11.glRotated(90, 0, 0, 1); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().getTextureManager().bindTexture(ResourceManager.grenade_tex); + ResourceManager.projectiles.renderPart("Grenade"); + GL11.glShadeModel(GL11.GL_FLAT); + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index a857f90f8..49525d3d0 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -101,6 +101,33 @@ public class Orchestras { } }; + public static BiConsumer ORCHESTRA_DANI = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); + + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 36) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + if(timer == 44) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.CYCLE) { + if(timer == 9) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 9) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.9F); + } + if(type == AnimType.INSPECT) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + if(type == AnimType.JAMMED) { + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); + if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); + } + }; + public static BiConsumer ORCHESTRA_HENRY = (stack, ctx) -> { EntityPlayer player = ctx.player; AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index 611b7969f..12c5f5b17 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -47,22 +47,22 @@ public class XFactory357 { ModItems.gun_light_revolver_dani = new ItemGunBaseNT( new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(10F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) .offset(0.75, -0.0625, 0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS), + .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_DANI), new GunConfig().dura(30_000).draw(20).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(10F).delay(11).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(1, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .ps(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS) + .anim(LAMBDA_DANI_ANIMS).orchestra(Orchestras.ORCHESTRA_DANI) ).setUnlocalizedName("gun_light_revolver_dani").setTextureName(RefStrings.MODID + ":gun_darter"); } @@ -101,6 +101,13 @@ public class XFactory357 { @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_DANI_ANIMS = (stack, type) -> { switch(type) { case EQUIP: return new BusAnimation().addBus("EQUIP", new BusAnimationSequence().addPos(360 * 3, 0, 0, 1000, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, 0, 50).addPos(0, 0, -3, 50).addPos(0, 0, 0, 250)) + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 300).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 350).addPos(0, 0, 1, 200)); + case CYCLE_DRY: return new BusAnimation() + .addBus("HAMMER", new BusAnimationSequence().addPos(0, 0, 1, 50).addPos(0, 0, 1, 200).addPos(0, 0, 0, 200)) + .addBus("DRUM", new BusAnimationSequence().addPos(0, 0, 0, 350).addPos(0, 0, 1, 200)); } return LAMBDA_ATLAS_ANIMS.apply(stack, type); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java index 49c34c53c..c555e08e9 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java @@ -3,6 +3,7 @@ package com.hbm.items.weapon.sedna.factory; import java.util.function.BiConsumer; import java.util.function.BiFunction; +import com.hbm.entity.projectile.EntityBulletBaseMK4; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; @@ -22,21 +23,26 @@ import com.hbm.render.anim.BusAnimationKeyframe.IType; import com.hbm.render.anim.HbmAnimations.AnimType; import net.minecraft.item.ItemStack; +import net.minecraft.util.MovingObjectPosition; public class XFactory40mm { public static BulletConfig g40_flare; public static BulletConfig g40; + public static BiConsumer LAMBDA_STANDARD_EXPLODE = (bullet, mop) -> { + Lego.standardExplode(bullet, mop, 5F); bullet.setDead(); + }; + public static void init() { - g40_flare = new BulletConfig().setItem(EnumAmmo.G40_FLARE).setVel(2F).setGrav(0.035D).setRenderRotations(false).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(0x9E1616).setScale(2F).register("G40Flare")); - g40 = new BulletConfig().setItem(EnumAmmo.G40).setVel(2F).setGrav(0.035D).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_40MM).setScale(2, 2F, 1.5F).register("G40")); + g40_flare = new BulletConfig().setItem(EnumAmmo.G40_FLARE).setLife(100).setVel(2F).setGrav(0.035D).setRenderRotations(false).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(0x9E1616).setScale(2F).register("G40Flare")); + g40 = new BulletConfig().setItem(EnumAmmo.G40).setLife(200).setOnImpact(LAMBDA_STANDARD_EXPLODE).setVel(2F).setGrav(0.035D).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_40MM).setScale(2, 2F, 1.5F).register("G40")); ModItems.gun_flaregun = new ItemGunBaseNT(new GunConfig() .dura(100).draw(7).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(28).jam(33).sound("hbm:weapon.hkShoot", 1.0F, 1.0F) + .dmg(15F).delay(20).reload(28).jam(33).sound("hbm:weapon.hkShoot", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 1).addConfigs(g40_flare)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) @@ -47,8 +53,8 @@ public class XFactory40mm { ModItems.gun_congolake = new ItemGunBaseNT(new GunConfig() .dura(400).draw(7).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(24).reload(16, 16, 16, 0).jam(0).sound("hbm:weapon.glShoot", 1.0F, 1.0F) - .mag(new MagazineSingleReload(0, 4).addConfigs(g40_flare)) + .dmg(30F).delay(24).reload(16, 16, 16, 0).jam(0).sound("hbm:weapon.glShoot", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 4).addConfigs(g40, g40_flare)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration() diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index b46602c31..bafb52c23 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -909,7 +909,7 @@ public class ModEventHandlerClient { } } - if(Keyboard.isKeyDown(Keyboard.KEY_F1)) { + if(Keyboard.isKeyDown(Keyboard.KEY_F1) && Minecraft.getMinecraft().currentScreen != null) { ComparableStack comp = canneryTimestamp > System.currentTimeMillis() - 100 ? lastCannery : null; diff --git a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java index 4c557405c..b061f02a2 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerRenderer.java +++ b/src/main/java/com/hbm/main/ModEventHandlerRenderer.java @@ -21,6 +21,7 @@ import cpw.mods.fml.common.gameevent.TickEvent.WorldTickEvent; import net.minecraft.block.Block; import net.minecraft.block.material.Material; import net.minecraft.client.Minecraft; +import net.minecraft.client.entity.AbstractClientPlayer; import net.minecraft.client.model.ModelBiped; import net.minecraft.client.model.ModelRenderer; import net.minecraft.client.renderer.RenderBlocks; @@ -135,6 +136,8 @@ public class ModEventHandlerRenderer { ModelBiped biped = renderer.modelBipedMain; biped.bipedLeftArm.rotateAngleY = 0.1F + biped.bipedHead.rotateAngleY; if(!isManly) { + AbstractClientPlayer acp = (AbstractClientPlayer) player; + Minecraft.getMinecraft().getTextureManager().bindTexture(acp.getLocationSkin()); biped.bipedLeftArm.isHidden = false; biped.bipedLeftArm.render(0.0625F); } diff --git a/src/main/java/com/hbm/render/entity/projectile/RenderBullet.java b/src/main/java/com/hbm/render/entity/projectile/RenderBullet.java index c97e4b982..f2cd70fc3 100644 --- a/src/main/java/com/hbm/render/entity/projectile/RenderBullet.java +++ b/src/main/java/com/hbm/render/entity/projectile/RenderBullet.java @@ -178,21 +178,6 @@ public class RenderBullet extends Render { GL11.glScalef(0.25F, 0.25F, 0.25F); GL11.glRotated(90, 0, 0, 1); GL11.glRotated(90, 0, 1, 0); - - switch(type) { - case 0: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenade.png")); break; - case 1: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenadeHE.png")); break; - case 2: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenadeIncendiary.png")); break; - case 3: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenadeToxic.png")); break; - case 4: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenadeSleek.png")); break; - case 5: - bindTexture(new ResourceLocation(RefStrings.MODID + ":textures/entity/ModelGrenadeTraining.png")); break; - } GL11.glShadeModel(GL11.GL_SMOOTH); bindTexture(ResourceManager.grenade_tex); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java index 42cd24e97..06a26a145 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java @@ -132,7 +132,9 @@ public class ItemRenderCongoLake extends ItemRenderWeaponBase { @Override public void setupThirdPerson(ItemStack stack) { super.setupThirdPerson(stack); - GL11.glTranslated(0, 1, 3); + GL11.glTranslated(0, -2.5, 4); + double scale = 2.5D; + GL11.glScaled(scale, scale, scale); } diff --git a/src/main/resources/assets/hbm/textures/models/weapons/dani_celestial.png b/src/main/resources/assets/hbm/textures/models/weapons/dani_celestial.png index cfed1c07113504d234501b9922338d301efe3565..ebe3ebd70df8e633b2cfa0235cff983d6c07bcc9 100644 GIT binary patch delta 3273 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 Hu0mjfyDfBF delta 3065 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 Hu0mjfg*Om` diff --git a/src/main/resources/assets/hbm/textures/models/weapons/dani_lunar.png b/src/main/resources/assets/hbm/textures/models/weapons/dani_lunar.png index 1e58d97d18a6f68b3b875e783ce7626cf9b15de3..4ea531472eab38d680ad076acd5dcf79839222c1 100644 GIT binary patch delta 3310 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 delta 3069 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 RA+!Jh002ovPDHLkV1hC!1^55} literal 0 HcmV?d00001 From 5819711586f12c318fd4e96ce7155388316338f0 Mon Sep 17 00:00:00 2001 From: Boblet Date: Mon, 7 Oct 2024 16:47:38 +0200 Subject: [PATCH 51/63] casing smoke is no longer bound to the casing config --- .../java/com/hbm/handler/CasingEjector.java | 2 +- .../hbm/inventory/recipes/SILEXRecipes.java | 1 - .../weapon/sedna/factory/Orchestras.java | 15 +++++------- .../com/hbm/particle/ParticleSpentCasing.java | 20 +++++----------- .../java/com/hbm/particle/SpentCasing.java | 16 +------------ .../hbm/particle/helper/CasingCreator.java | 23 +++++++++++++++---- 6 files changed, 32 insertions(+), 45 deletions(-) diff --git a/src/main/java/com/hbm/handler/CasingEjector.java b/src/main/java/com/hbm/handler/CasingEjector.java index 0802d0ad0..321aa8d71 100644 --- a/src/main/java/com/hbm/handler/CasingEjector.java +++ b/src/main/java/com/hbm/handler/CasingEjector.java @@ -94,7 +94,7 @@ public class CasingEjector implements Cloneable { @SideOnly(Side.CLIENT) public void spawnCasing(TextureManager textureManager, SpentCasing config, World world, double x, double y, double z, float pitch, float yaw, boolean crouched) { Vec3 rotatedMotionVec = rotateVector(getMotion(), pitch + (float) rand.nextGaussian() * getPitchFactor(), yaw + (float) rand.nextGaussian() * getPitchFactor(), getPitchFactor(), getPitchFactor()); - ParticleSpentCasing casing = new ParticleSpentCasing(textureManager, world, x, y, z, rotatedMotionVec.xCoord, rotatedMotionVec.yCoord, rotatedMotionVec.zCoord, (float) (getPitchFactor() * rand.nextGaussian()), (float) (getYawFactor() * rand.nextGaussian()), config); + ParticleSpentCasing casing = new ParticleSpentCasing(textureManager, world, x, y, z, rotatedMotionVec.xCoord, rotatedMotionVec.yCoord, rotatedMotionVec.zCoord, (float) (getPitchFactor() * rand.nextGaussian()), (float) (getYawFactor() * rand.nextGaussian()), config, false, 0, 0, 0); offsetCasing(casing, getOffset(), pitch, yaw, crouched); diff --git a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java index 2c58d6850..6263d0800 100644 --- a/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/SILEXRecipes.java @@ -15,7 +15,6 @@ import com.hbm.items.ItemEnums.EnumAshType; import com.hbm.items.machine.ItemFELCrystal.EnumWavelengths; import com.hbm.items.special.ItemWasteLong; import com.hbm.items.special.ItemWasteShort; -import com.hbm.util.ItemStackUtil; import com.hbm.util.WeightedRandomObject; import net.minecraft.init.Blocks; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index e623a2264..c05e73dd7 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -130,8 +130,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 14) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - casing.setupSmoke(1F, 0.5D, 60, 20); - CasingCreator.composeEffect(player.worldObj, player, 0.5, -0.125, aiming ? -0.125 : -0.375D, 0, 0.12, -0.12, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.5, -0.125, aiming ? -0.125 : -0.375D, 0, 0.12, -0.12, 0.1, casing.getName(), true, 60, 0.5D, 20); } if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } @@ -153,7 +152,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 2) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.55, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.12, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.55, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.12, 0.1, casing.getName()); } } if(type == AnimType.CYCLE_DRY) { @@ -200,8 +199,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 14) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - casing.setupSmoke(1F, 0.5D, 60, 20); - CasingCreator.composeEffect(player.worldObj, player, 0.3125, -0.125, aiming ? -0.125 : -0.375D, 0, 0.18, -0.12, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, -0.125, aiming ? -0.125 : -0.375D, 0, 0.18, -0.12, 0.1, casing.getName(), true, 60, 0.5D, 20); } if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); } @@ -221,8 +219,7 @@ public class Orchestras { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.8F); if(timer == 4) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - casing.setupSmoke(1F, 0.5D, 60, 20); - CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.125, aiming ? -0.125 : -0.375D, -0.12, 0.18, 0, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.125, aiming ? -0.125 : -0.375D, -0.12, 0.18, 0, 0.1, casing.getName(), true, 60, 0.5D, 20); } if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.insertCanister", 1F, 1F); if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); @@ -255,7 +252,7 @@ public class Orchestras { Receiver rec = ctx.config.getReceivers(stack)[0]; IMagazine mag = rec.getMagazine(stack); SpentCasing casing = mag.getCasing(stack); - for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, player.getRNG().nextGaussian() * 0.01 - 0.05, player.getRNG().nextGaussian() * 0.01, player.getRNG().nextGaussian() * 0.01, casing.getName()); + for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, 0.05, 0, 0, 0.1, casing.getName()); } } if(type == AnimType.CYCLE) { @@ -280,7 +277,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 2) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.3125, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.06, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.06, 0.1, casing.getName(), true, 60, 0.5D, 20); } } if(type == AnimType.CYCLE_DRY) { diff --git a/src/main/java/com/hbm/particle/ParticleSpentCasing.java b/src/main/java/com/hbm/particle/ParticleSpentCasing.java index b50f9f184..a21aad162 100644 --- a/src/main/java/com/hbm/particle/ParticleSpentCasing.java +++ b/src/main/java/com/hbm/particle/ParticleSpentCasing.java @@ -43,7 +43,7 @@ public class ParticleSpentCasing extends EntityFX { private float momentumPitch, momentumYaw; - public ParticleSpentCasing(TextureManager textureManager, World world, double x, double y, double z, double mx, double my, double mz, float momentumPitch, float momentumYaw, SpentCasing config) { + public ParticleSpentCasing(TextureManager textureManager, World world, double x, double y, double z, double mx, double my, double mz, float momentumPitch, float momentumYaw, SpentCasing config, boolean smoking, int smokeLife, double smokeLift, int nodeLife) { super(world, x, y, z, 0, 0, 0); this.textureManager = textureManager; this.momentumPitch = momentumPitch; @@ -51,10 +51,11 @@ public class ParticleSpentCasing extends EntityFX { this.config = config; this.particleMaxAge = config.getMaxAge(); - this.isSmoking = rand.nextFloat() < config.getSmokeChance(); - this.maxSmokeGen = config.getSmokeDuration(); - this.smokeLift = config.getSmokeLift(); - this.nodeLife = config.getSmokeNodeLife(); + + this.isSmoking = smoking; + this.maxSmokeGen = smokeLife; + this.smokeLift = smokeLift; + this.nodeLife = nodeLife; this.prevPosX = x; this.prevPosY = y; @@ -286,13 +287,4 @@ public class ParticleSpentCasing extends EntityFX { return 0; } } - - private void tryPlayBounceSound() { - - String sound = config.getSound(); - - if(sound != null && !sound.isEmpty()) { - worldObj.playSoundAtEntity(this, sound, 2, 1); - } - } } \ No newline at end of file diff --git a/src/main/java/com/hbm/particle/SpentCasing.java b/src/main/java/com/hbm/particle/SpentCasing.java index 200f12893..616042d34 100644 --- a/src/main/java/com/hbm/particle/SpentCasing.java +++ b/src/main/java/com/hbm/particle/SpentCasing.java @@ -39,10 +39,6 @@ public class SpentCasing implements Cloneable { private int[] colors; private CasingType type; private String bounceSound; - private float smokeChance; - private int smokeDuration; - private double smokeLift; - private int smokeNodeLife; private float bounceYaw = 0F; private float bouncePitch = 0F; private int maxAge = 240; @@ -83,13 +79,7 @@ public class SpentCasing implements Cloneable { return this; } - public SpentCasing setupSmoke(float chance, double lift, int duration, int nodeLife) { - this.smokeChance = chance; - this.smokeDuration = duration; - this.smokeLift = lift; - this.smokeNodeLife = nodeLife; - return this; - } + @Deprecated public SpentCasing setupSmoke(float chance, double lift, int duration, int nodeLife) { return this; } public static SpentCasing fromName(String name) { return casingMap.get(name); @@ -113,13 +103,9 @@ public class SpentCasing implements Cloneable { public int[] getColors() { return this.colors; } public CasingType getType() { return this.type; } public String getSound() { return this.bounceSound; } - public float getSmokeChance() { return this.smokeChance; } public float getBounceYaw() { return this.bounceYaw; } public float getBouncePitch() { return this.bouncePitch; } public int getMaxAge() { return this.maxAge; } - public int getSmokeDuration() { return this.smokeDuration; } - public double getSmokeLift() { return this.smokeLift; } - public int getSmokeNodeLife() { return this.smokeNodeLife; } @Override public SpentCasing clone() { diff --git a/src/main/java/com/hbm/particle/helper/CasingCreator.java b/src/main/java/com/hbm/particle/helper/CasingCreator.java index 0eaa84196..10da330e3 100644 --- a/src/main/java/com/hbm/particle/helper/CasingCreator.java +++ b/src/main/java/com/hbm/particle/helper/CasingCreator.java @@ -14,7 +14,12 @@ import net.minecraft.world.World; public class CasingCreator implements IParticleCreator { - public static void composeEffect(World world, EntityPlayer player, double frontOffset, double heightOffset, double sideOffset, double frontMotion, double heightMotion, double sideMotion, String casing) { + /** Casing without smoke */ + public static void composeEffect(World world, EntityPlayer player, double frontOffset, double heightOffset, double sideOffset, double frontMotion, double heightMotion, double sideMotion, double motionVariance, String casing) { + composeEffect(world, player, frontOffset, heightOffset, sideOffset, frontMotion, heightMotion, sideMotion, motionVariance, casing, false, 0, 0, 0); + } + + public static void composeEffect(World world, EntityPlayer player, double frontOffset, double heightOffset, double sideOffset, double frontMotion, double heightMotion, double sideMotion, double motionVariance, String casing, boolean smoking, int smokeLife, double smokeLift, int nodeLife) { if(player.isSneaking()) heightOffset -= 0.075F; @@ -30,9 +35,9 @@ public class CasingCreator implements IParticleCreator { motion.rotateAroundX(-player.rotationPitch / 180F * (float) Math.PI); motion.rotateAroundY(-player.rotationYaw / 180F * (float) Math.PI); - double mX = player.motionX + motion.xCoord; - double mY = player.motionY + motion.yCoord; - double mZ = player.motionZ + motion.zCoord; + double mX = player.motionX + motion.xCoord + player.getRNG().nextGaussian() * motionVariance; + double mY = player.motionY + motion.yCoord + player.getRNG().nextGaussian() * motionVariance; + double mZ = player.motionZ + motion.zCoord + player.getRNG().nextGaussian() * motionVariance; NBTTagCompound data = new NBTTagCompound(); data.setString("type", "casingNT"); @@ -42,6 +47,10 @@ public class CasingCreator implements IParticleCreator { data.setFloat("yaw", player.rotationYaw); data.setFloat("pitch", player.rotationPitch); data.setString("name", casing); + data.setBoolean("smoking", smoking); + data.setInteger("smokeLife", smokeLife); + data.setDouble("smokeLift", smokeLift); + data.setInteger("nodeLife", nodeLife); IParticleCreator.sendPacket(world, x, y, z, 50, data); } @@ -56,7 +65,11 @@ public class CasingCreator implements IParticleCreator { double mZ = data.getDouble("mZ"); float yaw = data.getFloat("yaw"); float pitch = data.getFloat("pitch"); - ParticleSpentCasing casing = new ParticleSpentCasing(texman, world, x, y, z, mX, mY, mZ, 0, 0, casingConfig); + boolean smoking = data.getBoolean("smoking"); + int smokeLife = data.getInteger("smokeLife"); + double smokeLift = data.getDouble("smokeLift"); + int nodeLife = data.getInteger("nodeLife"); + ParticleSpentCasing casing = new ParticleSpentCasing(texman, world, x, y, z, mX, mY, mZ, 0, 0, casingConfig, smoking, smokeLife, smokeLift, nodeLife); casing.prevRotationYaw = casing.rotationYaw = yaw; casing.prevRotationPitch = casing.rotationPitch = pitch; Minecraft.getMinecraft().effectRenderer.addEffect(casing); From 41d8fa74785875e236e6887247393b53872f8595 Mon Sep 17 00:00:00 2001 From: Bob Date: Mon, 7 Oct 2024 20:22:48 +0200 Subject: [PATCH 52/63] the PWR longening --- .../machine/TileEntityPWRController.java | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java index 6512f40e0..32baf7204 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java @@ -46,11 +46,11 @@ import net.minecraftforge.common.util.ForgeDirection; public class TileEntityPWRController extends TileEntityMachineBase implements IGUIProvider, IControlReceiver, SimpleComponent, IFluidStandardTransceiver, CompatHandler.OCComponent { public FluidTank[] tanks; - public int coreHeat; - public static final int coreHeatCapacityBase = 10_000_000; - public int coreHeatCapacity = 10_000_000; - public int hullHeat; - public static final int hullHeatCapacityBase = 10_000_000; + public long coreHeat; + public static final long coreHeatCapacityBase = 10_000_000; + public long coreHeatCapacity = 10_000_000; + public long hullHeat; + public static final long hullHeatCapacityBase = 10_000_000; public double flux; public double rodLevel = 100; @@ -149,7 +149,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG connections = connectionsDouble / 2; connectionsControlled = connectionsControlledDouble / 2; - this.coreHeatCapacity = this.coreHeatCapacityBase + this.heatsinkCount / 20 * this.coreHeatCapacityBase; + //switching this to int64 because after 2127 heatsinks the capacity exceeds the int32 which is well within the 4000+ threshold we are working with. oops! + this.coreHeatCapacity = this.coreHeatCapacityBase + this.heatsinkCount * (this.coreHeatCapacityBase / 20); } @Override @@ -246,7 +247,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG /* CORE COOLING */ double coreCoolingApproachNum = getXOverE((double) this.heatexCount * 5 / (double) getRodCountForCoolant(), 2) / 2D; - int averageCoreHeat = (this.coreHeat + this.hullHeat) / 2; + long averageCoreHeat = (this.coreHeat + this.hullHeat) / 2; this.coreHeat -= (coreHeat - averageCoreHeat) * coreCoolingApproachNum; this.hullHeat -= (hullHeat - averageCoreHeat) * coreCoolingApproachNum; @@ -274,8 +275,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG tanks[0].writeToNBT(data, "t0"); tanks[1].writeToNBT(data, "t1"); data.setInteger("rodCount", rodCount); - data.setInteger("coreHeat", coreHeat); - data.setInteger("hullHeat", hullHeat); + data.setLong("coreHeat", coreHeat); + data.setLong("hullHeat", hullHeat); data.setDouble("flux", flux); data.setDouble("processTime", processTime); data.setDouble("progress", progress); @@ -283,7 +284,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG data.setInteger("amountLoaded", amountLoaded); data.setDouble("rodLevel", rodLevel); data.setDouble("rodTarget", rodTarget); - data.setInteger("coreHeatCapacity", coreHeatCapacity); + data.setLong("coreHeatCapacity", coreHeatCapacity); this.networkPack(data, 150); } else { @@ -367,7 +368,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG double coolingEff = (double) this.channelCount / (double) getRodCountForCoolant() * 0.1D; //10% cooling if numbers match if(coolingEff > 1D) coolingEff = 1D; - int heatToUse = Math.min(this.hullHeat, (int) (this.hullHeat * coolingEff * trait.getEfficiency(HeatingType.PWR))); + //no use in trying to convert everythin to long since the internal tanks would never even support operation like that, just cap the heat cycle count to prevent overflows in the math + int heatToUse = (int) Math.min(Math.min(this.hullHeat, (long) (this.hullHeat * coolingEff * trait.getEfficiency(HeatingType.PWR))), 2_000_000_000); HeatingStep step = trait.getFirstStep(); int coolCycles = tanks[0].getFill() / step.amountReq; int hotCycles = (tanks[1].getMaxFill() - tanks[1].getFill()) / step.amountProduced; @@ -452,8 +454,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG tanks[1].readFromNBT(nbt, "t1"); this.assembled = nbt.getBoolean("assembled"); - this.coreHeat = nbt.getInteger("coreHeat"); - this.hullHeat = nbt.getInteger("hullHeat"); + this.coreHeat = Math.max(nbt.getInteger("coreHeat"), nbt.getLong("coreHeatL")); + this.hullHeat = Math.max(nbt.getInteger("hullHeat"), nbt.getLong("hullHeatL")); this.flux = nbt.getDouble("flux"); this.rodLevel = nbt.getDouble("rodLevel"); this.rodTarget = nbt.getDouble("rodTarget"); @@ -461,7 +463,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG this.amountLoaded = nbt.getInteger("amountLoaded"); this.progress = nbt.getDouble("progress"); this.processTime = nbt.getDouble("processTime"); - this.coreHeatCapacity = nbt.getInteger("coreHeatCapacity"); + this.coreHeatCapacity = Math.max(nbt.getInteger("coreHeatCapacity"), nbt.getLong("coreHeatCapacityL")); if(this.coreHeatCapacity < this.coreHeatCapacityBase) this.coreHeatCapacity = this.coreHeatCapacityBase; this.rodCount = nbt.getInteger("rodCount"); @@ -497,8 +499,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG tanks[1].writeToNBT(nbt, "t1"); nbt.setBoolean("assembled", assembled); - nbt.setInteger("coreHeat", coreHeat); - nbt.setInteger("hullHeat", hullHeat); + nbt.setLong("coreHeatL", coreHeat); + nbt.setLong("hullHeatL", hullHeat); nbt.setDouble("flux", flux); nbt.setDouble("rodLevel", rodLevel); nbt.setDouble("rodTarget", rodTarget); @@ -506,7 +508,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG nbt.setInteger("amountLoaded", amountLoaded); nbt.setDouble("progress", progress); nbt.setDouble("processTime", processTime); - nbt.setInteger("coreHeatCapacity", coreHeatCapacity); + nbt.setLong("coreHeatCapacityL", coreHeatCapacity); nbt.setInteger("rodCount", rodCount); nbt.setInteger("connections", connections); From 6b0835f19c50e8eb1790cdea3509b04af9f1262a Mon Sep 17 00:00:00 2001 From: Bob Date: Mon, 7 Oct 2024 22:49:04 +0200 Subject: [PATCH 53/63] some very pissed off bees --- .../java/com/hbm/crafting/WeaponRecipes.java | 4 + .../java/com/hbm/creativetabs/WeaponTab.java | 12 +- .../java/com/hbm/inventory/material/Mats.java | 4 +- src/main/java/com/hbm/items/ModItems.java | 2 + .../weapon/sedna/factory/GunFactory.java | 2 + .../sedna/factory/GunFactoryClient.java | 7 + .../hbm/items/weapon/sedna/factory/Lego.java | 4 +- .../weapon/sedna/factory/Orchestras.java | 42 +- .../weapon/sedna/factory/XFactory22lr.java | 82 + .../java/com/hbm/main/ResourceManager.java | 2 + .../item/weapon/sedna/ItemRenderAm180.java | 130 + .../machine/TileEntityPWRController.java | 6 +- .../assets/hbm/models/weapons/am-180.obj | 4373 ----------------- .../assets/hbm/models/weapons/am180.obj | 4369 ++++++++++++++++ .../textures/items/ammo_standard.p22_ap.png | Bin 0 -> 187 bytes .../textures/items/ammo_standard.p22_fmj.png | Bin 0 -> 192 bytes .../textures/items/ammo_standard.p22_jhp.png | Bin 0 -> 195 bytes .../textures/items/ammo_standard.p22_sp.png | Bin 0 -> 192 bytes .../models/weapons/{am-180.png => am180.png} | Bin 19 files changed, 4646 insertions(+), 4393 deletions(-) create mode 100644 src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java delete mode 100644 src/main/resources/assets/hbm/models/weapons/am-180.obj create mode 100644 src/main/resources/assets/hbm/models/weapons/am180.obj create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p22_ap.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p22_fmj.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p22_jhp.png create mode 100644 src/main/resources/assets/hbm/textures/items/ammo_standard.p22_sp.png rename src/main/resources/assets/hbm/textures/models/weapons/{am-180.png => am180.png} (100%) diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index e463f87e7..4a9e4bfe9 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -39,6 +39,10 @@ public class WeaponRecipes { CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_henry, 1), new Object[] { "BRP", "BMS", 'B', STEEL.lightBarrel(), 'R', GUNMETAL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'S', WOOD.stock(), 'P', GUNMETAL.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_greasegun, 1), new Object[] { "BRS", "SMG", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'S', STEEL.bolt(), 'M', GUNMETAL.mechanism(), 'G', STEEL.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_maresleg, 1), new Object[] { "BRM", "BGS", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', STEEL.bolt(), 'S', WOOD.stock() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_flaregun, 1), new Object[] { "BRM", " G", 'B', STEEL.heavyBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'B', STEEL.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_heavy_revolver, 1), new Object[] { "BRM", " G", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_carbine, 1), new Object[] { "BRM", "G S", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip(), 'S', WOOD.stock() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_am180, 1), new Object[] { "BBR", "GMS", 'B', DURA.lightBarrel(), 'R', DURA.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip(), 'S', WOOD.stock() }); //SEDNA Ammo CraftingManager.addRecipeAuto(DictFrame.fromOne(ModItems.ammo_standard, EnumAmmo.STONE, 6), new Object[] { "C", "P", "G", 'C', KEY_COBBLESTONE, 'P', Items.paper, 'G', Items.gunpowder }); diff --git a/src/main/java/com/hbm/creativetabs/WeaponTab.java b/src/main/java/com/hbm/creativetabs/WeaponTab.java index 01636faa6..28801e152 100644 --- a/src/main/java/com/hbm/creativetabs/WeaponTab.java +++ b/src/main/java/com/hbm/creativetabs/WeaponTab.java @@ -8,18 +8,16 @@ import net.minecraft.item.Item; public class WeaponTab extends CreativeTabs { - public WeaponTab(int p_i1853_1_, String p_i1853_2_) { - super(p_i1853_1_, p_i1853_2_); + public WeaponTab(int index, String name) { + super(index, name); } @Override public Item getTabIconItem() { - - if(ModItems.gun_lever_action != null) - { - return ModItems.gun_lever_action; + + if(ModItems.gun_maresleg != null) { + return ModItems.gun_maresleg; } - return Items.iron_pickaxe; } } diff --git a/src/main/java/com/hbm/inventory/material/Mats.java b/src/main/java/com/hbm/inventory/material/Mats.java index c31cb105f..11864a70c 100644 --- a/src/main/java/com/hbm/inventory/material/Mats.java +++ b/src/main/java/com/hbm/inventory/material/Mats.java @@ -133,10 +133,10 @@ public class Mats { public static final NTMMaterial MAT_OSMIRIDIUM = makeSmeltable(7699, OSMIRIDIUM, 0xDBE3EF, 0x7891BE, 0xACBDD9).setShapes(NUGGET, INGOT, CASTPLATE, WELDEDPLATE).m(); //Alloys - public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT, LIGHTBARREL, LIGHTRECEIVER, GRIP).m(); + public static final NTMMaterial MAT_STEEL = makeSmeltable(_AS + 0, STEEL, 0xAFAFAF, 0x0F0F0F, 0x4A4A4A).setShapes(DUSTTINY, BOLT, WIRE, INGOT, DUST, PLATE, CASTPLATE, WELDEDPLATE, SHELL, PIPE, BLOCK, HEAVY_COMPONENT, LIGHTBARREL, HEAVYBARREL, LIGHTRECEIVER, GRIP).m(); public static final NTMMaterial MAT_MINGRADE = makeSmeltable(_AS + 1, MINGRADE, 0xFFBA7D, 0xAF1700, 0xE44C0F).setShapes(WIRE, INGOT, DUST, BLOCK).m(); public static final NTMMaterial MAT_ALLOY = makeSmeltable(_AS + 2, ALLOY, 0xFF8330, 0x700000, 0xFF7318).setShapes(WIRE, INGOT, DUST, DENSEWIRE, PLATE, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); - public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK).m(); + public static final NTMMaterial MAT_DURA = makeSmeltable(_AS + 3, DURA, 0x183039, 0x030B0B, 0x376373).setShapes(BOLT, INGOT, DUST, PIPE, BLOCK, LIGHTBARREL, HEAVYBARREL, LIGHTRECEIVER, GRIP).m(); public static final NTMMaterial MAT_DESH = makeSmeltable(_AS + 12, DESH, 0xFF6D6D, 0x720000, 0xF22929).setShapes(INGOT, DUST, CASTPLATE, BLOCK, HEAVY_COMPONENT).m(); public static final NTMMaterial MAT_STAR = makeSmeltable(_AS + 5, STAR, 0xCCCCEA, 0x11111A, 0xA5A5D3).setShapes(INGOT, DUST, DENSEWIRE, BLOCK).m(); public static final NTMMaterial MAT_FERRO = makeSmeltable(_AS + 7, FERRO, 0xB7B7C9, 0x101022, 0x6B6B8B).setShapes(INGOT).m(); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 88cbaca6f..0781542c6 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1631,6 +1631,7 @@ public class ModItems { public static Item gun_flaregun; public static Item gun_heavy_revolver; public static Item gun_carbine; + public static Item gun_am180; public static Item ammo_standard; @@ -7046,6 +7047,7 @@ public class ModItems { GameRegistry.registerItem(gun_flaregun, gun_flaregun.getUnlocalizedName()); GameRegistry.registerItem(gun_heavy_revolver, gun_heavy_revolver.getUnlocalizedName()); GameRegistry.registerItem(gun_carbine, gun_carbine.getUnlocalizedName()); + GameRegistry.registerItem(gun_am180, gun_am180.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index c0cd4d4cd..c675dbc53 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -54,6 +54,7 @@ public class GunFactory { XFactory12ga.init(); XFactory40mm.init(); XFactory762mm.init(); + XFactory22lr.init(); /// PROXY BULLSHIT /// MainRegistry.proxy.registerGunCfg(); @@ -63,6 +64,7 @@ public class GunFactory { STONE, STONE_AP, STONE_IRON, STONE_SHOT, M357_SP, M357_FMJ, M357_JHP, M357_AP, M357_EXPRESS, M44_SP, M44_FMJ, M44_JHP, M44_AP, M44_EXPRESS, + P22_SP, P22_FMJ, P22_JHP, P22_AP, P9_SP, P9_FMJ, P9_JHP, P9_AP, G12_BP, G12_BP_MAGNUM, G12_BP_SLUG, G12, R762_SP, R762_FMJ, R762_JHP, R762_AP, R762_DU, diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 038c79bd5..956fd6314 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -2,6 +2,7 @@ package com.hbm.items.weapon.sedna.factory; import static com.hbm.items.weapon.sedna.factory.GunFactory.*; import static com.hbm.items.weapon.sedna.factory.XFactory12ga.*; +import static com.hbm.items.weapon.sedna.factory.XFactory22lr.*; import static com.hbm.items.weapon.sedna.factory.XFactory357.*; import static com.hbm.items.weapon.sedna.factory.XFactory40mm.*; import static com.hbm.items.weapon.sedna.factory.XFactory44.*; @@ -38,6 +39,7 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_flaregun, new ItemRenderFlaregun()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_heavy_revolver, new ItemRenderHeavyRevolver()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_carbine, new ItemRenderCarbine()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_am180, new ItemRenderAm180()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); @@ -65,6 +67,10 @@ public class GunFactoryClient { r762_jhp.setRenderer(RENDER_STANDARD_BULLET); r762_ap.setRenderer(RENDER_AP_BULLET); r762_du.setRenderer(RENDER_DU_BULLET); + p22_sp.setRenderer(RENDER_STANDARD_BULLET); + p22_fmj.setRenderer(RENDER_STANDARD_BULLET); + p22_jhp.setRenderer(RENDER_STANDARD_BULLET); + p22_ap.setRenderer(RENDER_AP_BULLET); //HUDS ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); @@ -75,6 +81,7 @@ public class GunFactoryClient { ((ItemGunBaseNT) ModItems.gun_flaregun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_heavy_revolver).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_carbine).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_am180).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index bc20ca951..cd2faa3be 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -155,8 +155,8 @@ public class Lego { double heightOffset = offset.yCoord; double sideOffset = ItemGunBaseNT.getIsAiming(stack) ? 0 : offset.zCoord; - /*forwardOffset = 0.75; - heightOffset = -0.0625; + /*forwardOffset = 1; + heightOffset = -0.0625 * 1.5; sideOffset = -0.1875D;*/ int projectiles = config.projectilesMin; diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index c05e73dd7..9287f699a 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -130,7 +130,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 14) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.5, -0.125, aiming ? -0.125 : -0.375D, 0, 0.12, -0.12, 0.1, casing.getName(), true, 60, 0.5D, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.5, -0.125, aiming ? -0.125 : -0.375D, 0, 0.12, -0.12, 0.01, casing.getName(), true, 60, 0.5D, 20); } if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 1F); } @@ -152,7 +152,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 2) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.55, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.12, 0.1, casing.getName()); + CasingCreator.composeEffect(player.worldObj, player, 0.55, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.12, 0.01, casing.getName()); } } if(type == AnimType.CYCLE_DRY) { @@ -199,7 +199,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 14) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.3125, -0.125, aiming ? -0.125 : -0.375D, 0, 0.18, -0.12, 0.1, casing.getName(), true, 60, 0.5D, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, -0.125, aiming ? -0.125 : -0.375D, 0, 0.18, -0.12, 0.01, casing.getName(), true, 60, 0.5D, 20); } if(timer == 8) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.leverCock", 1F, 0.8F); } @@ -219,7 +219,7 @@ public class Orchestras { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 0.8F); if(timer == 4) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.125, aiming ? -0.125 : -0.375D, -0.12, 0.18, 0, 0.1, casing.getName(), true, 60, 0.5D, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.125, aiming ? -0.125 : -0.375D, -0.12, 0.18, 0, 0.01, casing.getName(), true, 60, 0.5D, 20); } if(timer == 16) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.insertCanister", 1F, 1F); if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); @@ -252,7 +252,7 @@ public class Orchestras { Receiver rec = ctx.config.getReceivers(stack)[0]; IMagazine mag = rec.getMagazine(stack); SpentCasing casing = mag.getCasing(stack); - for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, 0.05, 0, 0, 0.1, casing.getName()); + for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, -0.05, 0, 0, 0.01, casing.getName()); } } if(type == AnimType.CYCLE) { @@ -277,7 +277,7 @@ public class Orchestras { if(type == AnimType.CYCLE) { if(timer == 2) { SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); - CasingCreator.composeEffect(player.worldObj, player, 0.3125, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.06, 0.1, casing.getName(), true, 60, 0.5D, 20); + CasingCreator.composeEffect(player.worldObj, player, 0.3125, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, 0.18, -0.06, 0.01, casing.getName(), true, 60, 0.5D, 20); } } if(type == AnimType.CYCLE_DRY) { @@ -300,4 +300,34 @@ public class Orchestras { if(timer == 30) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); } }; + + public static BiConsumer ORCHESTRA_AM180 = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.CYCLE) { + if(timer == 0) { + SpentCasing casing = ctx.config.getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + CasingCreator.composeEffect(player.worldObj, player, 0.4375, aiming ? 0 : -0.125, aiming ? 0 : -0.25D, 0, -0.06, 0, 0.01, casing.getName()); + } + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + if(timer == 6) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.9F); + } + if(type == AnimType.RELOAD) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magRemove", 1F, 1F); + if(timer == 32) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); + if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.9F); + } + if(type == AnimType.JAMMED) { + if(timer == 15) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.8F); + } + if(type == AnimType.INSPECT) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magRemove", 1F, 1F); + if(timer == 35) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java new file mode 100644 index 000000000..77bd7ad96 --- /dev/null +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java @@ -0,0 +1,82 @@ +package com.hbm.items.weapon.sedna.factory; + +import java.util.function.BiConsumer; +import java.util.function.BiFunction; + +import com.hbm.items.ModItems; +import com.hbm.items.weapon.sedna.BulletConfig; +import com.hbm.items.weapon.sedna.Crosshair; +import com.hbm.items.weapon.sedna.GunConfig; +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.items.weapon.sedna.Receiver; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; +import com.hbm.items.weapon.sedna.mags.MagazineFullReload; +import com.hbm.lib.RefStrings; +import com.hbm.particle.SpentCasing; +import com.hbm.particle.SpentCasing.CasingType; +import com.hbm.render.anim.BusAnimation; +import com.hbm.render.anim.BusAnimationSequence; +import com.hbm.render.anim.BusAnimationKeyframe.IType; +import com.hbm.render.anim.HbmAnimations.AnimType; + +import net.minecraft.item.ItemStack; + +public class XFactory22lr { + + public static BulletConfig p22_sp; + public static BulletConfig p22_fmj; + public static BulletConfig p22_jhp; + public static BulletConfig p22_ap; + + public static void init() { + SpentCasing casing22 = new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_BRASS).setScale(0.5F); + p22_sp = new BulletConfig().setItem(EnumAmmo.P22_SP) + .setCasing(casing22.clone().register("p22")); + p22_fmj = new BulletConfig().setItem(EnumAmmo.P22_FMJ).setDamage(0.8F).setArmorPiercing(0.1F) + .setCasing(casing22.clone().register("p22fmj")); + p22_jhp = new BulletConfig().setItem(EnumAmmo.P22_JHP).setDamage(1.5F).setArmorPiercing(-0.25F) + .setCasing(casing22.clone().register("p22jhp")); + p22_ap = new BulletConfig().setItem(EnumAmmo.P22_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F) + .setCasing(casing22.clone().setColor(SpentCasing.COLOR_CASE_44).register("p22ap")); + + ModItems.gun_am180 = new ItemGunBaseNT(new GunConfig() + .dura(177 * 25).draw(15).inspect(38).jam(55).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_AM180) + .rec(new Receiver(0) + .dmg(5F).delay(1).dry(10).auto(true).spread(0.02F).reload(44).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 177).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap)) + .offset(1, -0.0625 * 1.5, -0.1875D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_AM180_ANIMS) + ).setUnlocalizedName("gun_am180").setTextureName(RefStrings.MODID + ":gun_darter"); + } + + public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { + Lego.handleStandardSmoke(ctx.player, stack, 3000, 0.05D, 1.1D); + }; + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_AM180_ANIMS = (stack, type) -> { + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(45, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_FULL)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, ItemGunBaseNT.getIsAiming(stack) ? -0.125 : -0.25, 15, IType.SIN_DOWN).addPos(0, 0, 0, 35, IType.SIN_FULL)); + case CYCLE_DRY: return new BusAnimation() + .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)); + case RELOAD: + return new BusAnimation() + .addBus("MAGTURN", new BusAnimationSequence().addPos(15, 0, 0, 250, IType.SIN_FULL).addPos(15, 0, 0, 250).addPos(15, 0, 70, 300, IType.SIN_FULL).addPos(15, 0, 0, 0).addPos(15, 0, 0, 750).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("MAG", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(2, 0, -4, 250, IType.SIN_FULL).addPos(-10, 2, -4, 300, IType.SIN_UP).addPos(3, -6, -4, 0).addPos(2, 0, -4, 500, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 2000).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)); + case JAMMED: return new BusAnimation() + .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 750).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 45, 250, IType.SIN_FULL).addPos(0, 0, 45, 400).addPos(0, 0, 0, 250, IType.SIN_FULL)); + case INSPECT: return new BusAnimation() + .addBus("MAGTURN", new BusAnimationSequence().addPos(15, 0, 0, 250, IType.SIN_FULL).addPos(15, 0, 0, 1400).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("MAG", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(4, 0, -4, 250, IType.SIN_FULL).addPos(4, 0, -4, 100).addPos(4, 6, -4, 250, IType.SIN_FULL).addPos(4, 0, -4, 150, IType.SIN_UP).addPos(4, -1, -4, 100, IType.SIN_DOWN).addPos(4, -1, -4, 250).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("MAGSPIN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(680, 0, 0, 500, IType.SIN_FULL).addPos(680, 0, 0, 250).addPos(720, 0, 0, 250)); + } + + return null; + }; +} diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 74b06f2d5..9f049318a 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -857,6 +857,7 @@ public class ResourceManager { public static final IModelCustom maresleg = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/maresleg.obj")).asVBO(); public static final IModelCustom flaregun = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/flaregun.obj")).asVBO(); public static final IModelCustom carbine = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/carbine.obj")).asVBO(); + public static final IModelCustom am180 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/am180.obj")).asVBO(); public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); @@ -975,6 +976,7 @@ public class ResourceManager { public static final ResourceLocation flaregun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/flaregun.png"); public static final ResourceLocation heavy_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/heavy_revolver.png"); public static final ResourceLocation carbine_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/huntsman.png"); + public static final ResourceLocation am180_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/am180.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java new file mode 100644 index 000000000..f124948dd --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java @@ -0,0 +1,130 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderAm180 extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.5F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1F * offset, -1F * offset, 1F * offset, + 0, -4.1875 / 8D, 0.25); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.am180_tex); + double scale = 0.1875D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] magazine = HbmAnimations.getRelevantTransformation("MAG"); + double[] magTurn = HbmAnimations.getRelevantTransformation("MAGTURN"); + double[] magSpin = HbmAnimations.getRelevantTransformation("MAGSPIN"); + double[] bolt = HbmAnimations.getRelevantTransformation("BOLT"); + double[] turn = HbmAnimations.getRelevantTransformation("TURN"); + + GL11.glTranslated(0, -2, -6); + GL11.glRotated(equip[0], 1, 0, 0); + GL11.glTranslated(0, 2, 6); + + GL11.glRotated(turn[2], 0, 0, 1); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glTranslated(0, 0, recoil[2]); + + ResourceManager.am180.renderPart("Gun"); + ResourceManager.am180.renderPart("Silencer"); + ResourceManager.am180.renderPart("Trigger"); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0, bolt[2]); + ResourceManager.am180.renderPart("Bolt"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(magazine[0], magazine[1], magazine[2]); + + GL11.glTranslated(0, 2.0625, 3.75); + GL11.glRotated(magTurn[0], 1, 0, 0); + GL11.glRotated(magTurn[2], 0, 0, 1); + GL11.glTranslated(0, -2.0625, -3.75); + + GL11.glTranslated(0, 2.3125, 1.5); + GL11.glRotated(magSpin[0], 1, 0, 0); + GL11.glTranslated(0, -2.3125, -1.5); + + GL11.glPushMatrix(); + int mag = gun.getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); + GL11.glTranslated(0, 0, 1.5); + GL11.glRotated(mag / 59D * 360D, 0, -1, 0); + GL11.glTranslated(0, 0, -1.5); + ResourceManager.am180.renderPart("Mag"); + GL11.glPopMatrix(); + + ResourceManager.am180.renderPart("MagPlate"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.875, 17); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.smokeNodes, 0.25D); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.875, 16.75); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + GL11.glScaled(0.5, 0.5, 0.5); + this.renderMuzzleFlash(gun.lastShot, 75, 5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + double scale = 1D; + GL11.glScaled(scale, scale, scale); + GL11.glTranslated(0, -0.5, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 0.75D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(1.5, 0, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.am180_tex); + ResourceManager.am180.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java index 32baf7204..248b587fd 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityPWRController.java @@ -391,8 +391,8 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG tanks[0].readFromNBT(nbt, "t0"); tanks[1].readFromNBT(nbt, "t1"); rodCount = nbt.getInteger("rodCount"); - coreHeat = nbt.getInteger("coreHeat"); - hullHeat = nbt.getInteger("hullHeat"); + coreHeat = nbt.getLong("coreHeat"); + hullHeat = nbt.getLong("hullHeat"); flux = nbt.getDouble("flux"); processTime = nbt.getDouble("processTime"); progress = nbt.getDouble("progress"); @@ -400,7 +400,7 @@ public class TileEntityPWRController extends TileEntityMachineBase implements IG amountLoaded = nbt.getInteger("amountLoaded"); rodLevel = nbt.getDouble("rodLevel"); rodTarget = nbt.getInteger("rodTarget"); - coreHeatCapacity = nbt.getInteger("coreHeatCapacity"); + coreHeatCapacity = nbt.getLong("coreHeatCapacity"); } protected void setupTanks() { diff --git a/src/main/resources/assets/hbm/models/weapons/am-180.obj b/src/main/resources/assets/hbm/models/weapons/am-180.obj deleted file mode 100644 index 2ba65342d..000000000 --- a/src/main/resources/assets/hbm/models/weapons/am-180.obj +++ /dev/null @@ -1,4373 +0,0 @@ -# Blender v3.2.0 OBJ File: 'am-180.blend' -# www.blender.org -mtllib am-180.mtl -o Rifle_Plane -v 0.343750 -2.437500 1.299170 -v 0.343750 2.062500 1.299170 -v -0.343750 -2.437500 1.299170 -v -0.343750 2.062500 1.299170 -v 0.343750 -1.625000 2.049170 -v -0.343750 -1.625000 2.049170 -v 0.343750 0.750000 2.049170 -v -0.343750 0.750000 2.049170 -v -0.156250 -1.625000 2.049170 -v 0.156250 -1.625000 2.049170 -v 0.343750 0.750000 2.424170 -v -0.343750 0.750000 2.424170 -v 0.343750 1.125000 2.424170 -v -0.343750 1.125000 2.424170 -v 0.343750 1.187500 2.299170 -v -0.343750 1.187500 2.299170 -v 0.218750 1.187500 2.424170 -v -0.218750 1.187500 2.424170 -v -0.125000 0.750000 2.049170 -v 0.125000 0.750000 2.049170 -v 0.125000 0.812500 2.236670 -v -0.125000 0.812500 2.236670 -v 0.125000 0.750000 2.424170 -v -0.125000 0.750000 2.424170 -v 0.125000 0.812500 2.424170 -v -0.125000 0.812500 2.424170 -v 0.343750 5.562500 2.299170 -v -0.343750 5.562500 2.299170 -v 0.218750 5.375000 2.424170 -v -0.218750 5.375000 2.424170 -v 0.343750 5.562500 1.299170 -v -0.343750 5.562500 1.299170 -v 0.343750 -1.625000 1.799170 -v -0.343750 -1.625000 1.799170 -v 0.218750 -2.062500 2.049170 -v -0.218750 -2.062500 2.049170 -v 0.218750 -1.625000 1.799170 -v 0.218750 -1.625000 1.861670 -v 0.218750 -1.934359 1.916588 -v -0.156250 -1.934359 1.916588 -v -0.218750 -1.934359 1.916588 -v -0.156250 -1.625000 1.861670 -v -0.218750 -1.625000 1.861670 -v -0.218750 -1.625000 1.799170 -v -0.125000 -11.875000 1.861670 -v -0.088388 -11.875000 1.950058 -v 0.000000 -11.875000 1.986670 -v 0.088388 -11.875000 1.950058 -v 0.125000 -11.875000 1.861670 -v 0.088388 -11.875000 1.773282 -v -0.000000 -11.875000 1.736670 -v -0.088388 -11.875000 1.773282 -v -0.312500 -11.875000 1.861670 -v -0.220971 -11.875000 2.082641 -v 0.220971 -11.875000 2.082641 -v 0.312500 -11.875000 1.861670 -v 0.220971 -11.875000 1.640699 -v -0.000000 -11.875000 1.549170 -v -0.220971 -11.875000 1.640699 -v -0.312500 -11.000000 1.861670 -v -0.220971 -11.000000 2.082641 -v 0.000000 -11.000000 2.174170 -v 0.220971 -11.000000 2.082641 -v 0.312500 -11.000000 1.861670 -v 0.220971 -11.000000 1.640699 -v -0.000000 -11.000000 1.549170 -v -0.220971 -11.000000 1.640699 -v -0.187500 -7.625000 1.861670 -v -0.132583 -7.625000 1.994253 -v 0.000000 -7.625000 2.049170 -v 0.132583 -7.625000 1.994253 -v 0.187500 -7.625000 1.861670 -v 0.132583 -7.625000 1.729087 -v -0.000000 -8.000000 1.674170 -v -0.132583 -7.625000 1.729087 -v 0.218750 -2.437500 2.049170 -v 0.218750 -2.250000 1.799170 -v -0.312500 -4.062500 1.861670 -v -0.270633 -4.062500 2.017920 -v -0.156250 -4.062500 2.132303 -v 0.000000 -4.062500 2.174170 -v 0.156250 -4.062500 2.132303 -v 0.270633 -4.062500 2.017920 -v 0.312500 -4.062500 1.861670 -v -0.312500 -2.363165 1.861670 -v -0.156250 -3.750000 2.132303 -v 0.000000 -3.750000 2.174170 -v 0.156250 -3.750000 2.132303 -v 0.312500 -2.363165 1.861670 -v 0.218750 -2.363165 1.861670 -v -0.270633 -2.437500 2.017920 -v 0.270633 -2.427792 2.017920 -v -0.239382 -2.437500 2.049170 -v 0.239382 -2.437500 2.049170 -v -0.239382 -3.750000 2.049170 -v 0.239382 -3.750000 2.049170 -v -0.218750 -2.437500 2.049170 -v 0.295753 -4.062500 1.799170 -v 0.295753 -2.250000 1.799170 -v -0.295753 -4.062500 1.799170 -v -0.295753 -2.250000 1.799170 -v -0.218750 -2.363165 1.861670 -v -0.218750 -2.250000 1.799170 -v 0.343750 -2.437500 1.799170 -v 0.343750 -2.812500 1.799170 -v 0.437500 -2.812500 1.736670 -v 0.437500 -2.812500 1.111670 -v 0.312500 -2.812500 1.049170 -v -0.343750 -2.437500 1.799170 -v -0.343750 -2.812500 1.799170 -v -0.437500 -2.812500 1.736670 -v -0.437500 -2.812500 1.111670 -v -0.312500 -2.812500 1.049170 -v 0.312500 -7.875000 1.799170 -v 0.437500 -8.000000 1.736670 -v 0.437500 -8.000000 1.361670 -v 0.312500 -8.000000 1.299170 -v -0.312500 -7.875000 1.799170 -v -0.437500 -8.000000 1.736670 -v -0.437500 -8.000000 1.361670 -v -0.312500 -8.000000 1.299170 -v -0.187500 -10.812500 1.861670 -v -0.132583 -10.812500 1.994253 -v 0.000000 -10.812500 2.049170 -v 0.132583 -10.812500 1.994253 -v 0.187500 -10.812500 1.861670 -v 0.132583 -10.812500 1.729087 -v -0.000000 -10.812500 1.674170 -v -0.132583 -10.812500 1.729087 -v 0.156250 2.406250 2.424170 -v 0.156250 5.031250 2.424170 -v -0.156250 2.406250 2.424170 -v -0.156250 5.031250 2.424170 -v 0.156250 2.406250 2.486670 -v 0.156250 5.031250 2.486670 -v -0.156250 2.406250 2.486670 -v -0.156250 5.031250 2.486670 -v 0.093750 2.406250 2.517920 -v 0.093750 5.031250 2.517920 -v -0.093750 2.406250 2.517920 -v -0.093750 5.031250 2.517920 -v 0.218750 4.093750 2.486670 -v 0.218750 4.968750 2.486670 -v -0.218750 4.093750 2.486670 -v -0.218750 4.968750 2.486670 -v 0.218750 4.093750 2.611670 -v 0.156250 4.093750 2.611670 -v 0.218750 4.968750 2.799170 -v 0.156250 4.093750 2.549170 -v -0.218750 4.093750 2.611670 -v -0.156250 4.093750 2.611670 -v -0.156250 4.093750 2.549170 -v 0.156250 4.968750 2.799170 -v -0.218750 4.968750 2.799170 -v -0.156250 4.968750 2.799170 -v -0.156250 4.968750 2.549170 -v 0.156250 4.968750 2.549170 -v -0.093750 4.968750 2.549170 -v 0.093750 4.968750 2.549170 -v 0.093750 4.968750 2.736670 -v -0.093750 4.968750 2.736670 -v -0.093750 4.406250 2.549170 -v 0.093750 4.406250 2.549170 -v 0.093750 4.406250 2.861670 -v -0.093750 4.406250 2.861670 -v 0.093750 4.468750 2.861670 -v -0.093750 4.468750 2.861670 -v 0.093750 4.468750 2.674170 -v -0.093750 4.468750 2.674170 -v -0.031250 4.468750 2.799170 -v -0.022097 4.468750 2.821268 -v 0.000000 4.468750 2.830420 -v 0.022097 4.468750 2.821268 -v 0.031250 4.468750 2.799170 -v 0.022097 4.468750 2.777073 -v -0.000000 4.468750 2.767920 -v -0.022097 4.468750 2.777073 -v -0.031250 4.406250 2.799170 -v -0.022097 4.406250 2.821268 -v 0.000000 4.406250 2.830420 -v 0.022097 4.406250 2.821268 -v 0.031250 4.406250 2.799170 -v 0.022097 4.406250 2.777073 -v -0.000000 4.406250 2.767920 -v -0.022097 4.406250 2.777073 -v 0.156250 4.406250 2.549170 -v -0.156250 4.406250 2.549170 -v 0.156250 4.406250 2.678635 -v -0.156250 4.406250 2.678635 -v 0.156250 4.343750 2.549170 -v 0.156250 4.343750 2.665242 -v -0.156250 4.343750 2.665242 -v -0.156250 4.343750 2.549170 -v -0.093750 4.406250 2.678635 -v 0.093750 4.406250 2.678635 -v 0.218750 4.781250 2.705420 -v 0.218750 4.737056 2.687115 -v 0.218750 4.718750 2.642920 -v 0.218750 4.737056 2.598726 -v 0.218750 4.781250 2.580420 -v 0.218750 4.825444 2.598726 -v 0.218750 4.843750 2.642920 -v 0.218750 4.825444 2.687115 -v 0.250000 4.781250 2.705420 -v 0.250000 4.737056 2.687115 -v 0.250000 4.718750 2.642920 -v 0.250000 4.737056 2.598726 -v 0.250000 4.781250 2.580420 -v 0.250000 4.825444 2.598726 -v 0.250000 4.843750 2.642920 -v 0.250000 4.825444 2.687115 -v -0.218750 4.781250 2.736670 -v -0.218750 4.714959 2.709212 -v -0.218750 4.687500 2.642920 -v -0.218750 4.714959 2.576629 -v -0.218750 4.781250 2.549170 -v -0.218750 4.847541 2.576629 -v -0.218750 4.875000 2.642920 -v -0.218750 4.847541 2.709212 -v -0.281250 4.781250 2.767920 -v -0.281250 4.692862 2.731309 -v -0.281250 4.656250 2.642920 -v -0.281250 4.692862 2.554532 -v -0.281250 4.781250 2.517920 -v -0.281250 4.869638 2.554532 -v -0.281250 4.906250 2.642920 -v -0.281250 4.869638 2.731309 -v -0.343750 4.781250 2.767920 -v -0.343750 4.692862 2.731309 -v -0.343750 4.656250 2.642920 -v -0.343750 4.692862 2.554532 -v -0.343750 4.781250 2.517920 -v -0.343750 4.869638 2.554532 -v -0.343750 4.906250 2.642920 -v -0.343750 4.869638 2.731309 -v -0.187500 -0.812500 1.299170 -v -0.132583 -0.945082 1.299170 -v 0.000000 -1.000000 1.299170 -v 0.132583 -0.945082 1.299170 -v 0.187500 -0.812500 1.299170 -v 0.132583 -0.679918 1.299170 -v -0.000000 -0.625000 1.299170 -v -0.132583 -0.679917 1.299170 -v -0.187500 -0.812500 1.174170 -v -0.132583 -0.945082 1.174170 -v 0.000000 -1.000000 1.174170 -v 0.132583 -0.945082 1.174170 -v 0.187500 -0.812500 1.174170 -v 0.132583 -0.679918 1.174170 -v -0.000000 -0.625000 1.174170 -v -0.132583 -0.679917 1.174170 -v -0.281250 -0.812500 1.174170 -v -0.243570 -0.953125 1.174170 -v -0.140625 -1.056070 1.174170 -v 0.000000 -1.093750 1.174170 -v 0.140625 -1.056070 1.174170 -v 0.243570 -0.953125 1.174170 -v 0.281250 -0.812500 1.174170 -v 0.243570 -0.671875 1.174170 -v 0.140625 -0.568930 1.174170 -v -0.000000 -0.531250 1.174170 -v -0.140625 -0.568930 1.174170 -v -0.243570 -0.671875 1.174170 -v -0.281250 -0.812500 0.924170 -v -0.243570 -0.953125 0.924170 -v -0.140625 -1.056070 0.924170 -v 0.000000 -1.093750 0.924170 -v 0.140625 -1.056070 0.924170 -v 0.243570 -0.953125 0.924170 -v 0.281250 -0.812500 0.924170 -v 0.243570 -0.671875 0.924170 -v 0.140625 -0.568930 0.924170 -v -0.000000 -0.531250 0.924170 -v -0.140625 -0.568930 0.924170 -v -0.243570 -0.671875 0.924170 -v -0.281250 0.750000 1.299170 -v 0.281250 0.750000 1.299170 -v -0.218750 0.750000 0.674170 -v 0.218750 0.750000 0.674170 -v 0.281250 2.062500 1.299170 -v 0.218750 1.937500 0.361670 -v 0.218750 0.812500 0.565917 -v 0.218750 1.004259 0.394023 -v -0.218750 0.812500 0.565917 -v -0.218750 1.004259 0.394023 -v -0.218750 1.125000 0.361670 -v 0.218750 1.125000 0.361670 -v 0.218750 1.125000 0.424170 -v -0.218750 1.125000 0.424170 -v 0.218750 0.812500 0.674170 -v -0.218750 0.812500 0.674170 -v 0.218750 0.875000 0.565917 -v 0.218750 1.004259 0.456523 -v 0.218750 0.812500 0.861670 -v 0.218750 1.062500 1.111670 -v 0.218750 0.875000 0.969924 -v 0.218750 1.562500 1.111670 -v 0.218750 1.562500 0.424170 -v 0.218750 1.732433 0.503411 -v 0.218750 1.812500 0.861670 -v 0.218750 1.812500 0.674170 -v 0.218750 0.750000 1.236670 -v -0.156250 -2.062500 2.049170 -v 0.156250 -1.625000 1.861670 -v 0.156250 -1.934359 1.916588 -v 0.156250 -2.062500 2.049170 -v -0.218750 0.750000 1.236670 -v 0.218750 1.937500 1.236670 -v -0.218750 1.937500 1.236670 -v -0.218750 1.004259 0.456523 -v -0.218750 0.875000 0.565917 -v -0.218750 0.812500 0.861670 -v -0.218750 0.875000 0.969924 -v -0.218750 1.062500 1.111670 -v -0.218750 1.562500 1.111670 -v -0.218750 1.812500 0.861670 -v -0.218750 1.812500 0.674170 -v -0.218750 1.732433 0.503411 -v -0.218750 1.562500 0.424170 -v -0.218750 1.937500 0.361670 -v -0.281250 2.062500 1.299170 -v 0.343750 5.562500 2.174170 -v 0.218750 5.687500 2.174170 -v 0.218750 5.989352 2.093290 -v 0.156250 6.725727 1.749912 -v 0.156250 6.971929 1.706500 -v 0.093750 7.198505 1.812155 -v 0.031250 7.294261 1.892503 -v 0.218750 12.235770 0.730171 -v 0.218750 12.235770 -0.894829 -v 0.218750 12.118820 -1.445037 -v 0.093750 11.903729 -1.752219 -v 0.093750 10.696322 -1.428696 -v 0.218750 7.510611 0.301005 -v 0.218750 6.749564 0.585548 -v 0.218750 5.964749 0.795839 -v 0.218750 3.851390 1.017962 -v 0.156250 3.472389 0.799411 -v 0.156250 3.366735 0.572834 -v 0.218750 3.404819 0.262663 -v 0.218750 4.014244 -0.607686 -v 0.218750 4.083153 -0.848001 -v 0.218750 3.933519 -1.259117 -v 0.218750 3.552739 -1.474552 -v 0.218750 3.241951 -1.441887 -v 0.156250 3.043612 -1.289697 -v 0.343750 1.937500 0.361670 -v 0.093750 3.043612 -1.102197 -v 0.093750 2.900218 -0.897409 -v 0.156250 2.737838 -0.803659 -v 0.093750 2.737838 -0.616159 -v 0.093750 2.622401 -0.394406 -v 0.156250 2.410389 -0.261926 -v 0.093750 2.410389 -0.074426 -v 0.093750 2.304735 0.152151 -v 0.218750 2.161101 0.272674 -v -0.343750 5.562500 2.174170 -v -0.218750 5.687500 2.174170 -v -0.218750 5.989352 2.093290 -v -0.156250 6.725727 1.749912 -v -0.156250 6.971929 1.706500 -v -0.093750 7.198505 1.812155 -v -0.031250 7.294261 1.892503 -v -0.156250 12.294434 1.100554 -v -0.218750 12.235770 0.730171 -v -0.218750 12.235770 -0.894829 -v -0.218750 12.118820 -1.445037 -v -0.093750 11.903729 -1.752219 -v -0.093750 10.696322 -1.428696 -v -0.218750 7.510611 0.301005 -v -0.218750 6.749564 0.585548 -v -0.218750 5.964749 0.795839 -v -0.218750 3.851390 1.017962 -v -0.156250 3.472389 0.799411 -v -0.156250 3.366735 0.572834 -v -0.218750 3.404819 0.262663 -v -0.218750 4.014244 -0.607686 -v -0.218750 4.083153 -0.848001 -v -0.218750 3.933519 -1.259117 -v -0.218750 3.552739 -1.474552 -v -0.218750 3.241951 -1.441887 -v -0.156250 3.043612 -1.289697 -v -0.343750 1.937500 0.361670 -v -0.093750 3.043612 -1.102197 -v -0.093750 2.900218 -0.897409 -v -0.156250 2.737838 -0.803659 -v -0.093750 2.737838 -0.616159 -v -0.093750 2.622401 -0.394406 -v -0.156250 2.410389 -0.261926 -v -0.093750 2.410389 -0.074426 -v -0.093750 2.304735 0.152151 -v -0.218750 2.161101 0.272674 -v 0.343750 5.687500 2.049170 -v 0.343750 5.926852 1.968290 -v 0.343750 6.725727 1.562412 -v 0.343750 6.971929 1.456500 -v 0.343750 7.198505 1.374655 -v 0.156250 12.294434 1.100554 -v 0.343750 12.110770 0.730171 -v 0.343750 12.110770 -0.769829 -v 0.343750 12.028729 -1.502219 -v 0.343750 10.696322 -1.053696 -v 0.343750 7.573111 0.551005 -v 0.343750 6.874564 0.835548 -v 0.343750 6.089749 1.045839 -v 0.343750 3.851390 1.142962 -v 0.343750 3.222389 0.799411 -v 0.343750 3.179235 0.510334 -v 0.343750 3.279819 0.137663 -v 0.343750 3.889244 -0.607686 -v 0.343750 3.895653 -0.848001 -v 0.343750 3.746019 -1.071617 -v 0.343750 3.241951 -1.191887 -v 0.343750 3.168612 -1.164697 -v 0.343750 3.168612 -0.977197 -v 0.343750 3.025218 -0.772409 -v 0.343750 2.862838 -0.741159 -v 0.343750 2.862838 -0.491159 -v 0.343750 2.747401 -0.331906 -v 0.343750 2.535389 -0.199426 -v 0.343750 2.535389 0.050574 -v 0.343750 2.429735 0.277151 -v 0.343750 2.161101 0.397674 -v 0.343750 1.937500 1.236670 -v -0.343750 1.937500 1.236670 -v -0.343750 5.687500 2.049170 -v -0.343750 5.926852 1.968290 -v -0.343750 6.725727 1.562412 -v -0.343750 6.971929 1.456500 -v -0.343750 7.198505 1.374655 -v -0.343750 12.110770 0.730171 -v -0.343750 12.110770 -0.769829 -v -0.343750 12.028729 -1.502219 -v -0.343750 10.696322 -1.053696 -v -0.343750 7.573111 0.551005 -v -0.343750 6.874564 0.835548 -v -0.343750 6.089749 1.045839 -v -0.343750 3.851390 1.142962 -v -0.343750 3.222389 0.799411 -v -0.343750 3.179235 0.510334 -v -0.343750 3.279819 0.137663 -v -0.343750 3.889244 -0.607686 -v -0.343750 3.895653 -0.848001 -v -0.343750 3.746019 -1.071617 -v -0.343750 3.241951 -1.191887 -v -0.343750 3.168612 -1.164697 -v -0.343750 3.168612 -0.977197 -v -0.343750 3.025218 -0.772409 -v -0.343750 2.862838 -0.741159 -v -0.343750 2.862838 -0.491159 -v -0.343750 2.747401 -0.331906 -v -0.343750 2.535389 -0.199426 -v -0.343750 2.535389 0.050574 -v -0.343750 2.429735 0.277151 -v -0.343750 2.161101 0.397674 -v 0.343750 3.552739 -1.224552 -v -0.343750 3.552739 -1.224552 -v 0.156250 -11.875000 2.109449 -v 0.156250 -11.000000 2.109449 -v -0.156250 -11.875000 2.109449 -v -0.156250 -11.000000 2.109449 -v 0.156250 -11.875000 2.421949 -v 0.156250 -11.000000 2.421949 -v -0.156250 -11.875000 2.421949 -v -0.156250 -11.000000 2.421949 -v -0.093750 -11.875000 2.421949 -v 0.093750 -11.875000 2.421949 -v 0.093750 -11.000000 2.421949 -v -0.093750 -11.000000 2.421949 -v 0.232221 -11.812500 2.852803 -v 0.170671 -11.812500 2.863656 -v 0.232221 -11.312500 2.852803 -v 0.170671 -11.312500 2.863656 -v 0.221368 -11.875000 2.791252 -v 0.159818 -11.875000 2.802105 -v -0.221368 -11.875000 2.791252 -v -0.159818 -11.875000 2.802105 -v -0.232221 -11.812500 2.852803 -v -0.170671 -11.812500 2.863656 -v -0.232221 -11.312500 2.852803 -v -0.170671 -11.312500 2.863656 -v 0.031250 -11.875000 2.421949 -v 0.031250 -11.437500 2.421949 -v -0.031250 -11.875000 2.421949 -v -0.031250 -11.437500 2.421949 -v 0.015625 -11.437500 2.796949 -v -0.015625 -11.437500 2.796949 -v 0.015625 -11.625000 2.796949 -v -0.015625 -11.625000 2.796949 -v -0.125000 -11.000000 1.861670 -v -0.088388 -11.000000 1.950058 -v 0.000000 -11.000000 1.986670 -v 0.088388 -11.000000 1.950058 -v 0.125000 -11.000000 1.861670 -v 0.088388 -11.000000 1.773282 -v -0.000000 -11.000000 1.736670 -v -0.088388 -11.000000 1.773282 -v 0.371209 -2.702665 1.780864 -v -0.371209 -2.702665 1.225947 -v 0.371209 -2.702665 1.225947 -v -0.371209 -2.702665 1.780864 -vt 0.742537 0.847015 -vt 0.701493 0.578358 -vt 0.742537 0.578358 -vt 0.615672 0.432836 -vt 0.630597 0.410448 -vt 0.630597 0.432836 -vt 0.589552 0.432836 -vt 0.604478 0.410448 -vt 0.604478 0.432836 -vt 0.611940 0.421642 -vt 0.611940 0.432836 -vt 0.608209 0.421642 -vt 0.608209 0.708955 -vt 0.619403 0.723881 -vt 0.608209 0.723881 -vt 0.828358 0.992537 -vt 0.839552 0.992537 -vt 0.833955 1.000000 -vt 0.835821 0.421642 -vt 0.839552 0.429104 -vt 0.828358 0.429104 -vt 0.839552 0.742537 -vt 0.839552 0.679105 -vt 0.828358 0.731343 -vt 0.839552 0.697761 -vt 0.839552 0.723881 -vt 0.597015 0.708955 -vt 0.488806 0.466418 -vt 0.500000 0.477612 -vt 0.488806 0.473881 -vt 0.488806 0.458955 -vt 0.500000 0.447761 -vt 0.500000 0.462687 -vt 0.488806 0.436567 -vt 0.488806 0.444030 -vt 0.488806 0.429104 -vt 0.500000 0.417910 -vt 0.500000 0.432836 -vt 0.488806 0.391791 -vt 0.500000 0.402985 -vt 0.488806 0.399254 -vt 0.488806 0.406716 -vt 0.488806 0.414179 -vt 0.764925 0.880597 -vt 0.776119 0.895522 -vt 0.757463 0.884328 -vt 0.757463 0.906716 -vt 0.753731 0.895522 -vt 0.776119 0.895522 -vt 0.664179 0.850746 -vt 0.742537 0.880597 -vt 0.664179 0.880597 -vt 0.787313 0.798507 -vt 0.828358 0.813433 -vt 0.787313 0.813433 -vt 0.630597 0.455224 -vt 0.623134 0.458955 -vt 0.615672 0.436567 -vt 0.604478 0.436567 -vt 0.597015 0.458955 -vt 0.634328 0.238806 -vt 0.636194 0.235075 -vt 0.641791 0.235075 -vt 0.634328 0.414179 -vt 0.636194 0.410448 -vt 0.641791 0.410448 -vt 0.623134 0.410448 -vt 0.634328 0.253731 -vt 0.634328 0.410448 -vt 0.802239 0.369403 -vt 0.742537 0.369403 -vt 0.802239 0.630597 -vt 0.809702 0.656716 -vt 0.787313 0.656716 -vt 0.772388 0.798507 -vt 0.772388 0.847015 -vt 0.634328 0.656716 -vt 0.641791 0.630597 -vt 0.656716 0.656716 -vt 0.641791 0.369403 -vt 0.671642 0.798507 -vt 0.656716 0.798507 -vt 0.701493 0.847015 -vt 0.828358 0.656716 -vt 0.828358 0.798507 -vt 0.514925 0.574627 -vt 0.567164 0.600746 -vt 0.514925 0.600746 -vt 0.488806 0.600746 -vt 0.492537 0.604478 -vt 0.436567 0.600746 -vt 0.488806 0.608209 -vt 0.436567 0.619403 -vt 0.462687 0.597015 -vt 0.410448 0.600746 -vt 0.410448 0.597015 -vt 0.410448 0.544776 -vt 0.462687 0.548507 -vt 0.410448 0.548507 -vt 0.514925 0.608209 -vt 0.552239 0.574627 -vt 0.541045 0.563433 -vt 0.552239 0.563433 -vt 0.462687 0.582090 -vt 0.410448 0.585821 -vt 0.410448 0.582090 -vt 0.410448 0.559702 -vt 0.462687 0.563433 -vt 0.410448 0.563433 -vt 0.507463 0.555970 -vt 0.496269 0.552239 -vt 0.507463 0.552239 -vt 0.410448 0.600746 -vt 0.414179 0.604478 -vt 0.511194 0.563433 -vt 0.541045 0.552239 -vt 0.496269 0.555970 -vt 0.501866 0.557836 -vt 0.500546 0.558382 -vt 0.503185 0.558382 -vt 0.507463 0.567164 -vt 0.503731 0.559702 -vt 0.500000 0.559702 -vt 0.496269 0.567164 -vt 0.500546 0.561021 -vt 0.503185 0.561021 -vt 0.501866 0.561567 -vt 0.496269 0.541045 -vt 0.501866 0.543044 -vt 0.507463 0.541045 -vt 0.503185 0.543590 -vt 0.500546 0.543590 -vt 0.500000 0.544909 -vt 0.473881 0.582090 -vt 0.481343 0.600746 -vt 0.473881 0.600746 -vt 0.470149 0.582090 -vt 0.462687 0.585821 -vt 0.462687 0.582090 -vt 0.462687 0.597015 -vt 0.470149 0.600746 -vt 0.462687 0.600746 -vt 0.470149 0.585821 -vt 0.503185 0.546229 -vt 0.507463 0.552239 -vt 0.503731 0.544909 -vt 0.496269 0.552239 -vt 0.507463 0.567164 -vt 0.511194 0.555970 -vt 0.511194 0.567164 -vt 0.492537 0.555970 -vt 0.496269 0.555970 -vt 0.496269 0.567164 -vt 0.511194 0.589552 -vt 0.514925 0.593284 -vt 0.511194 0.597015 -vt 0.477612 0.552239 -vt 0.470149 0.544776 -vt 0.462687 0.552239 -vt 0.313433 0.531716 -vt 0.321828 0.546258 -vt 0.338619 0.546258 -vt 0.320896 0.447761 -vt 0.324627 0.455224 -vt 0.320896 0.455224 -vt 0.324627 0.440298 -vt 0.320896 0.440298 -vt 0.320896 0.436567 -vt 0.324627 0.432836 -vt 0.324627 0.462687 -vt 0.320896 0.458955 -vt 0.320896 0.425373 -vt 0.320896 0.432836 -vt 0.320896 0.470149 -vt 0.320896 0.462687 -vt 0.324627 0.477612 -vt 0.320896 0.477612 -vt 0.324627 0.485075 -vt 0.320896 0.481343 -vt 0.320896 0.492537 -vt 0.320896 0.485075 -vt 0.324627 0.500000 -vt 0.320896 0.500000 -vt 0.324627 0.507463 -vt 0.320896 0.503731 -vt 0.320896 0.514925 -vt 0.320896 0.507463 -vt 0.541045 0.679105 -vt 0.537313 0.690298 -vt 0.541045 0.694030 -vt 0.537313 0.701493 -vt 0.541045 0.701493 -vt 0.537313 0.671642 -vt 0.537313 0.679105 -vt 0.779851 0.850746 -vt 0.798507 0.843284 -vt 0.798507 0.854478 -vt 0.798507 0.843284 -vt 0.779851 0.835821 -vt 0.798507 0.832090 -vt 0.764925 0.876866 -vt 0.742537 0.880597 -vt 0.764925 0.858209 -vt 0.567164 0.679105 -vt 0.570895 0.671642 -vt 0.567164 0.671642 -vt 0.570895 0.690298 -vt 0.567164 0.694030 -vt 0.570895 0.701493 -vt 0.570895 0.694030 -vt 0.496269 0.537313 -vt 0.429104 0.533582 -vt 0.421642 0.537313 -vt 0.541045 0.671642 -vt 0.537313 0.645522 -vt 0.402581 0.489807 -vt 0.392969 0.485076 -vt 0.414179 0.481343 -vt 0.407109 0.500000 -vt 0.407109 0.511194 -vt 0.414179 0.533582 -vt 0.392969 0.526118 -vt 0.537313 0.712687 -vt 0.541045 0.735075 -vt 0.347015 0.533580 -vt 0.364690 0.526118 -vt 0.570895 0.645522 -vt 0.567164 0.623134 -vt 0.450314 0.485075 -vt 0.440703 0.489807 -vt 0.429104 0.481343 -vt 0.436174 0.500000 -vt 0.570895 0.712687 -vt 0.567164 0.701493 -vt 0.567164 0.735075 -vt 0.496269 0.533580 -vt 0.450314 0.526118 -vt 0.478594 0.526118 -vt 0.429104 0.533580 -vt 0.436174 0.511194 -vt 0.414179 0.533582 -vt 0.347015 0.537313 -vt 0.421642 0.537313 -vt 0.742537 0.328358 -vt 0.802239 0.328358 -vt 0.500000 0.481343 -vt 0.488806 0.481343 -vt 0.500000 0.388060 -vt 0.488806 0.384328 -vt 0.500000 0.384328 -vt 0.369403 0.507463 -vt 0.369403 0.511194 -vt 0.350746 0.511194 -vt 0.451493 0.481343 -vt 0.462687 0.429104 -vt 0.462687 0.481343 -vt 0.488806 0.462687 -vt 0.425373 0.432836 -vt 0.429104 0.429104 -vt 0.451493 0.429104 -vt 0.514925 0.384328 -vt 0.518657 0.365672 -vt 0.518657 0.384328 -vt 0.488806 0.361940 -vt 0.500000 0.365672 -vt 0.488806 0.365672 -vt 0.503731 0.365672 -vt 0.488806 0.384328 -vt 0.526119 0.365672 -vt 0.500000 0.361940 -vt 0.526119 0.361940 -vt 0.529851 0.365672 -vt 0.544776 0.384328 -vt 0.476066 0.374680 -vt 0.481343 0.376866 -vt 0.481343 0.361940 -vt 0.656716 0.865672 -vt 0.500546 0.546229 -vt 0.501866 0.546775 -vt 0.623134 0.708955 -vt 0.597015 0.458955 -vt 0.597015 0.708955 -vt 0.858209 0.421642 -vt 0.858209 0.406716 -vt 0.888060 0.421642 -vt 0.615672 0.410448 -vt 0.589552 0.410448 -vt 0.608209 0.432836 -vt 0.619403 0.708955 -vt 0.828358 0.690298 -vt 0.597015 0.723881 -vt 0.488806 0.451493 -vt 0.488806 0.421642 -vt 0.802239 0.880597 -vt 0.783582 0.888060 -vt 0.802239 0.884328 -vt 0.753731 0.895522 -vt 0.783582 0.902985 -vt 0.802239 0.906716 -vt 0.802239 0.910448 -vt 0.764925 0.910448 -vt 0.742537 0.850746 -vt 0.589552 0.455224 -vt 0.641791 0.253731 -vt 0.636194 0.253731 -vt 0.634328 0.250000 -vt 0.641791 0.429104 -vt 0.636194 0.429104 -vt 0.634328 0.425373 -vt 0.623134 0.253731 -vt 0.809702 0.634328 -vt 0.634328 0.634328 -vt 0.701493 0.369403 -vt 0.671642 0.847015 -vt 0.567164 0.574627 -vt 0.492537 0.608209 -vt 0.511194 0.604478 -vt 0.511194 0.608209 -vt 0.462687 0.600746 -vt 0.462687 0.544776 -vt 0.567164 0.619403 -vt 0.541045 0.574627 -vt 0.432836 0.604478 -vt 0.432836 0.619403 -vt 0.414179 0.619403 -vt 0.410448 0.619403 -vt 0.511194 0.552239 -vt 0.481343 0.582090 -vt 0.470149 0.597015 -vt 0.507463 0.574627 -vt 0.507463 0.555970 -vt 0.496269 0.574627 -vt 0.492537 0.567164 -vt 0.462687 0.574627 -vt 0.462687 0.563433 -vt 0.508556 0.595922 -vt 0.507463 0.593284 -vt 0.508556 0.590645 -vt 0.513832 0.590645 -vt 0.513832 0.595922 -vt 0.464872 0.557516 -vt 0.470149 0.559702 -vt 0.475426 0.557516 -vt 0.475426 0.546962 -vt 0.464872 0.546962 -vt 0.344765 0.540112 -vt 0.347015 0.531716 -vt 0.344765 0.523321 -vt 0.338619 0.517175 -vt 0.330224 0.514925 -vt 0.321828 0.517175 -vt 0.315682 0.523321 -vt 0.315682 0.540112 -vt 0.330224 0.548507 -vt 0.324627 0.447761 -vt 0.324627 0.425373 -vt 0.324627 0.470149 -vt 0.324627 0.492537 -vt 0.324627 0.514925 -vt 0.537313 0.682836 -vt 0.537313 0.694030 -vt 0.772388 0.843284 -vt 0.772388 0.843284 -vt 0.791045 0.858209 -vt 0.791045 0.876866 -vt 0.764925 0.880597 -vt 0.742537 0.854478 -vt 0.764925 0.854478 -vt 0.570895 0.679105 -vt 0.570895 0.682836 -vt 0.496269 0.533582 -vt 0.541045 0.623134 -vt 0.347015 0.533582 -vt 0.350746 0.492537 -vt 0.369403 0.496269 -vt 0.369403 0.492537 -vt 0.485075 0.429104 -vt 0.488806 0.432836 -vt 0.425373 0.462687 -vt 0.514925 0.365672 -vt 0.486620 0.374680 -vt 0.488806 0.369403 -vt 0.486620 0.364126 -vt 0.476066 0.364126 -vt 0.473881 0.369403 -vt 0.660448 0.876866 -vt 0.660448 0.854478 -vt 0.623134 0.458955 -vt 0.776119 0.876866 -vt 0.794776 0.880597 -vt 0.776119 0.880597 -vt 0.552239 0.447761 -vt 0.552239 0.477612 -vt 0.552239 0.432836 -vt 0.552239 0.462687 -vt 0.552239 0.481343 -vt 0.552239 0.402985 -vt 0.552239 0.417910 -vt 0.552239 0.384328 -vt 0.231343 0.279851 -vt 0.212687 0.291045 -vt 0.212687 0.279851 -vt 0.231343 0.291045 -vt 0.212687 0.302239 -vt 0.212687 0.253731 -vt 0.313433 0.257463 -vt 0.212687 0.257463 -vt 0.309702 0.268657 -vt 0.212687 0.268657 -vt 0.309702 0.313433 -vt 0.212687 0.324627 -vt 0.212687 0.313433 -vt 0.649251 0.864581 -vt 0.656716 0.860243 -vt 0.656716 0.864583 -vt 0.639900 0.861656 -vt 0.638062 0.864582 -vt 0.638060 0.863421 -vt 0.212687 0.328358 -vt 0.313433 0.324627 -vt 0.320896 0.328358 -vt 0.656716 0.871099 -vt 0.649259 0.866761 -vt 0.656716 0.866761 -vt 0.639900 0.869687 -vt 0.649252 0.872045 -vt 0.000000 0.291045 -vt 0.000000 0.302239 -vt 0.000000 0.263060 -vt 0.858209 0.350746 -vt 0.854478 0.358209 -vt 0.850746 0.350746 -vt 0.809702 0.350746 -vt 0.809702 0.373134 -vt 0.805970 0.358209 -vt 0.899254 0.399254 -vt 0.906716 0.089552 -vt 0.906716 0.399254 -vt 0.966418 0.089552 -vt 0.988806 0.399254 -vt 0.951493 0.399254 -vt 0.802239 0.350746 -vt 0.809702 0.055970 -vt 0.944030 0.089552 -vt 0.944030 0.399254 -vt 0.861940 0.399254 -vt 0.884328 0.089552 -vt 0.850746 0.055970 -vt 0.567164 0.473881 -vt 0.552239 0.373134 -vt 0.567164 0.384328 -vt 0.552239 0.388060 -vt 0.567164 0.414179 -vt 0.567164 0.444030 -vt 0.567164 0.451493 -vt 0.567164 0.458955 -vt 0.552239 0.492537 -vt 0.567164 0.481343 -vt 0.567164 0.488806 -vt 0.567164 0.391791 -vt 0.567164 0.399254 -vt 0.567164 0.429104 -vt 0.511194 0.291045 -vt 0.320896 0.283582 -vt 0.511194 0.283582 -vt 0.511194 0.298507 -vt 0.320896 0.291045 -vt 0.492537 0.305970 -vt 0.320896 0.313433 -vt 0.320896 0.305970 -vt 0.511194 0.328358 -vt 0.320896 0.320896 -vt 0.511194 0.320896 -vt 0.320896 0.276119 -vt 0.511194 0.276119 -vt 0.320896 0.298507 -vt 0.511194 0.313433 -vt 0.511194 0.335821 -vt 0.320896 0.328358 -vt 0.638060 0.253731 -vt 0.641791 0.585821 -vt 0.638060 0.429104 -vt 0.638060 0.410448 -vt 0.638060 0.585821 -vt 0.634328 0.429104 -vt 0.000000 0.319030 -vt 0.850746 0.373134 -vt 0.850746 0.421642 -vt 0.000000 0.257463 -vt 0.000000 0.250000 -vt 0.492537 0.582090 -vt 0.488806 0.578358 -vt 0.492537 0.578358 -vt 0.481343 0.582090 -vt 0.477612 0.578358 -vt 0.481343 0.578358 -vt 0.473881 0.582090 -vt 0.470149 0.578358 -vt 0.473881 0.578358 -vt 0.466418 0.582090 -vt 0.462687 0.578358 -vt 0.466418 0.578358 -vt 0.488806 0.582090 -vt 0.485075 0.578358 -vt 0.485075 0.582090 -vt 0.477612 0.582090 -vt 0.470149 0.582090 -vt 0.500000 0.597015 -vt 0.503731 0.600746 -vt 0.500000 0.600746 -vt 0.507463 0.597015 -vt 0.511194 0.600746 -vt 0.507463 0.600746 -vt 0.488806 0.597015 -vt 0.492537 0.600746 -vt 0.488806 0.600746 -vt 0.496269 0.597015 -vt 0.496269 0.600746 -vt 0.503731 0.597015 -vt 0.511194 0.597015 -vt 0.514925 0.600746 -vt 0.485075 0.597015 -vt 0.485075 0.600746 -vt 0.492537 0.597015 -vt 0.417910 0.537313 -vt 0.410448 0.541045 -vt 0.410448 0.537313 -vt 0.432836 0.541045 -vt 0.425373 0.537313 -vt 0.432836 0.537313 -vt 0.447761 0.537313 -vt 0.440298 0.541045 -vt 0.440298 0.537313 -vt 0.462687 0.541045 -vt 0.455224 0.537313 -vt 0.462687 0.537313 -vt 0.470149 0.541045 -vt 0.470149 0.537313 -vt 0.417910 0.541045 -vt 0.447761 0.541045 -vt 0.462687 0.544776 -vt 0.410448 0.544776 -vt 0.425373 0.544776 -vt 0.425373 0.541045 -vt 0.440298 0.544776 -vt 0.455224 0.544776 -vt 0.455224 0.541045 -vt 0.417910 0.544776 -vt 0.432836 0.544776 -vt 0.447761 0.544776 -vt 0.320896 0.485075 -vt 0.313433 0.477612 -vt 0.320896 0.477612 -vt 0.320896 0.500000 -vt 0.313433 0.492537 -vt 0.320896 0.492537 -vt 0.320896 0.514925 -vt 0.313433 0.507463 -vt 0.320896 0.507463 -vt 0.320896 0.470149 -vt 0.313433 0.462687 -vt 0.320896 0.462687 -vt 0.313433 0.470149 -vt 0.313433 0.485075 -vt 0.313433 0.500000 -vt 0.313433 0.455224 -vt 0.320896 0.455224 -vt 0.339552 0.440298 -vt 0.339552 0.492537 -vt 0.339552 0.507463 -vt 0.339552 0.470149 -vt 0.339552 0.447761 -vt 0.339552 0.514925 -vt 0.339552 0.477612 -vt 0.339552 0.455224 -vt 0.339552 0.432836 -vt 0.339552 0.485075 -vt 0.339552 0.500000 -vt 0.339552 0.462687 -vt 0.794776 0.854478 -vt 0.776119 0.858209 -vt 0.776119 0.854478 -vt 0.570895 0.656716 -vt 0.597015 0.649254 -vt 0.570895 0.649254 -vt 0.597015 0.656716 -vt 0.570895 0.667910 -vt 0.597015 0.667910 -vt 0.597015 0.675373 -vt 0.570895 0.675373 -vt 0.489199 0.517656 -vt 0.570895 0.686567 -vt 0.597015 0.686567 -vt 0.570895 0.694030 -vt 0.597015 0.694030 -vt 0.597015 0.708955 -vt 0.570895 0.708955 -vt 0.597015 0.738806 -vt 0.570895 0.738806 -vt 0.597015 0.567164 -vt 0.570895 0.589552 -vt 0.597015 0.589552 -vt 0.597015 0.600746 -vt 0.570895 0.600746 -vt 0.597015 0.611940 -vt 0.570895 0.611940 -vt 0.597015 0.623134 -vt 0.570895 0.623134 -vt 0.492734 0.511194 -vt 0.000000 0.324627 -vt -0.000000 0.332090 -vt 0.858209 0.970149 -vt 0.880597 0.996269 -vt 0.854478 0.996269 -vt 0.970149 0.910448 -vt 0.988806 0.925373 -vt 0.970149 0.925373 -vt 0.858209 0.679105 -vt 0.873134 0.694030 -vt 0.861940 0.694030 -vt 0.858209 0.940298 -vt 0.876866 0.955224 -vt 0.858209 0.955224 -vt 0.973881 0.895522 -vt 0.988806 0.910448 -vt 0.861940 0.667910 -vt 0.876866 0.679105 -vt 0.854478 0.921642 -vt 0.876866 0.940298 -vt 0.977612 0.888060 -vt 0.985075 0.895522 -vt 0.861940 0.652985 -vt 0.873134 0.667910 -vt 0.854478 0.858209 -vt 0.880597 0.921642 -vt 0.988806 0.585821 -vt 0.970149 0.585821 -vt 0.880597 0.641791 -vt 0.873134 0.652985 -vt 0.854478 0.843284 -vt 0.880597 0.858209 -vt 0.902985 0.977612 -vt 0.906716 1.000000 -vt 0.891791 0.977612 -vt 0.847015 0.626866 -vt 0.854478 0.641791 -vt 0.854478 0.817164 -vt 0.880597 0.843284 -vt 0.902985 0.880597 -vt 0.929105 0.977612 -vt 0.854478 0.791045 -vt 0.880597 0.817164 -vt 0.902985 0.847015 -vt 0.929105 0.880597 -vt 0.854478 0.772388 -vt 0.880597 0.791045 -vt 0.910448 0.824627 -vt 0.929105 0.847015 -vt 0.858209 0.757463 -vt 0.880597 0.772388 -vt 0.947761 0.899254 -vt 0.958955 0.973881 -vt 0.947761 0.973881 -vt 0.861940 0.746269 -vt 0.876866 0.757463 -vt 0.940298 0.682836 -vt 0.958955 0.899254 -vt 0.861940 0.731343 -vt 0.873134 0.746269 -vt 0.940298 0.634328 -vt 0.966418 0.682836 -vt 0.966418 0.992537 -vt 1.000000 1.000000 -vt 0.958955 1.000000 -vt 0.858209 0.720149 -vt 0.873134 0.731343 -vt 0.940298 0.585821 -vt 0.966418 0.634328 -vt 0.966418 0.973881 -vt 0.992537 0.992537 -vt 0.861940 0.708955 -vt 0.876866 0.720149 -vt 0.940298 0.458955 -vt 0.966418 0.585821 -vt 0.992537 0.973881 -vt 0.873134 0.708955 -vt 0.843284 0.843284 -vt 0.925373 1.000000 -vt 0.839552 0.817164 -vt 0.891791 0.884328 -vt 0.839552 0.772388 -vt 0.854478 0.757463 -vt 0.839552 0.764925 -vt 0.839552 0.757463 -vt 0.679105 0.022388 -vt 0.761194 0.022388 -vt 0.682836 0.048507 -vt 0.858209 0.746269 -vt 0.847015 0.757463 -vt 0.843284 0.746269 -vt 0.492537 0.130597 -vt 0.500000 0.149254 -vt 0.858209 0.731343 -vt 0.843284 0.731343 -vt 0.447761 0.149254 -vt 0.451493 0.167910 -vt 0.847015 0.720149 -vt 0.406716 0.179104 -vt 0.399254 0.160448 -vt 0.402985 0.246269 -vt 0.384328 0.238806 -vt 0.399254 0.235075 -vt 0.858209 0.708955 -vt 0.843284 0.708955 -vt 0.406716 0.179104 -vt 0.399254 0.160448 -vt 0.276119 0.182836 -vt 0.447761 0.208955 -vt 0.858209 0.694030 -vt 0.843284 0.694030 -vt 0.843284 1.000000 -vt 0.843284 0.955224 -vt 0.462687 0.223881 -vt 0.462687 0.201493 -vt 0.847015 0.679105 -vt 0.843284 0.940298 -vt 0.477612 0.197761 -vt 0.477612 0.231343 -vt 0.858209 0.667910 -vt 0.843284 0.667910 -vt 0.891791 0.921642 -vt 0.485075 0.235075 -vt 0.858209 0.652985 -vt 0.843284 0.652985 -vt 0.843284 0.858209 -vt 0.843284 0.921642 -vt 0.779851 0.182836 -vt 0.768657 0.156716 -vt 0.384328 0.250000 -vt 0.376866 0.246269 -vt 0.847015 0.638060 -vt 0.895522 0.764925 -vt 0.936567 0.817164 -vt 0.895522 0.817164 -vt 0.936567 0.824627 -vt 0.895522 0.824627 -vt 0.447761 0.227612 -vt 0.895522 0.847015 -vt 0.902985 0.824627 -vt 0.936567 0.847015 -vt 0.940298 0.884328 -vt 0.768657 0.067164 -vt 0.376866 0.194030 -vt 0.167910 0.194030 -vt 0.276119 0.182836 -vt 0.839552 0.791045 -vt 0.839552 0.802239 -vt 0.276119 0.063433 -vt 0.235075 0.059701 -vt 0.268657 0.052239 -vt 0.227612 0.070896 -vt 0.276119 0.078358 -vt 0.242537 0.123134 -vt 0.216418 0.070896 -vt 0.216418 0.085821 -vt 0.197761 0.119403 -vt 0.235075 0.145522 -vt 0.190299 0.134328 -vt 0.197761 0.104478 -vt 0.208955 0.097015 -vt 0.175373 0.141791 -vt 0.160448 0.190299 -vt 0.160448 0.138060 -vt 0.238806 0.164179 -vt 0.768657 0.067164 -vt 0.761194 0.022388 -vt 0.768657 0.156716 -vt 0.682836 0.048507 -vt 0.500000 0.149254 -vt 0.451493 0.167910 -vt 0.477612 0.197761 -vt 0.462687 0.201493 -vt 0.447761 0.208955 -vt 0.399254 0.235075 -vt 0.276119 0.063433 -vt 0.235075 0.059701 -vt 0.276119 0.078358 -vt 0.227612 0.070896 -vt 0.242537 0.123134 -vt 0.216418 0.070896 -vt 0.216418 0.085821 -vt 0.197761 0.119403 -vt 0.190299 0.134328 -vt 0.235075 0.145522 -vt 0.197761 0.104478 -vt 0.208955 0.097015 -vt 0.175373 0.141791 -vt 0.238806 0.164179 -vt 0.940298 0.977612 -vt 0.779851 0.182836 -vt 0.485075 0.235075 -vt 0.477612 0.231343 -vt 0.462687 0.223881 -vt 0.447761 0.227612 -vt 0.402985 0.246269 -vt 0.384328 0.238806 -vt 0.384328 0.250000 -vt 0.376866 0.246269 -vt 0.929105 0.824627 -vt 0.679105 0.022388 -vt 0.750000 0.003731 -vt 0.492537 0.130597 -vt 0.447761 0.149254 -vt 0.966418 0.458955 -vt 0.977612 0.458955 -vt 0.376866 0.194030 -vt 0.167910 0.194030 -vt 0.876866 0.970149 -vt 0.891791 1.000000 -vt 0.891791 0.955224 -vt 0.891791 0.940298 -vt 0.891791 0.858209 -vt 0.891791 0.843284 -vt 0.895522 0.817164 -vt 0.895522 0.772388 -vt 0.880597 0.757463 -vt 0.895522 0.764925 -vt 0.876866 0.746269 -vt 0.888060 0.757463 -vt 0.876866 0.731343 -vt 0.891791 0.746269 -vt 0.888060 0.720149 -vt 0.876866 0.708955 -vt 0.876866 0.694030 -vt 0.891791 0.708955 -vt 0.888060 0.679105 -vt 0.876866 0.667910 -vt 0.876866 0.652985 -vt 0.891791 0.667910 -vt 0.888060 0.638060 -vt 0.891791 0.652985 -vt 0.888060 0.626866 -vt 0.160448 0.190299 -vt 0.160448 0.138060 -vt 0.235075 0.048507 -vt 0.238806 0.044776 -vt 0.257463 0.041045 -vt 0.895522 0.791045 -vt 0.895522 0.802239 -vt 0.257463 0.041045 -vt 0.238806 0.044776 -vt 0.268657 0.052239 -vt 0.235075 0.048507 -vt 0.339552 0.436567 -vt 0.343284 0.430970 -vt 0.350746 0.440298 -vt 0.350746 0.369403 -vt 0.369403 0.421642 -vt 0.350746 0.421642 -vt 0.429104 0.354478 -vt 0.451493 0.358209 -vt 0.429104 0.358209 -vt 0.369403 0.436567 -vt 0.369403 0.440298 -vt 0.455224 0.354478 -vt 0.485075 0.358209 -vt 0.455224 0.358209 -vt 0.395523 0.417910 -vt 0.391791 0.421642 -vt 0.429104 0.361940 -vt 0.451493 0.358209 -vt 0.451493 0.361940 -vt 0.455224 0.361940 -vt 0.455224 0.358209 -vt 0.485075 0.361940 -vt 0.395523 0.473881 -vt 0.395523 0.444030 -vt 0.485075 0.354478 -vt 0.514925 0.358209 -vt 0.514925 0.354478 -vt 0.485075 0.358209 -vt 0.514925 0.358209 -vt 0.514925 0.361940 -vt 0.451493 0.429104 -vt 0.458955 0.376866 -vt 0.458955 0.429104 -vt 0.436567 0.429104 -vt 0.444030 0.376866 -vt 0.444030 0.429104 -vt 0.481343 0.429104 -vt 0.488806 0.376866 -vt 0.488806 0.429104 -vt 0.466418 0.376866 -vt 0.466418 0.429104 -vt 0.451493 0.376866 -vt 0.429104 0.429104 -vt 0.436567 0.376866 -vt 0.473881 0.429104 -vt 0.481343 0.376866 -vt 0.473881 0.376866 -vt 0.309702 0.272388 -vt 0.231343 0.272388 -vt 0.231343 0.309702 -vt 0.902985 0.414179 -vt 0.899254 0.402985 -vt 0.891791 0.406716 -vt 0.962687 0.421642 -vt 0.958955 0.406716 -vt 0.992537 0.406716 -vt 0.951493 0.402985 -vt 0.947761 0.414179 -vt 0.904851 0.429104 -vt 0.906716 0.055970 -vt 0.951493 0.063433 -vt 0.899254 0.063433 -vt 0.354085 0.517656 -vt 0.350550 0.511194 -vt 0.929105 0.458955 -vt 0.339552 0.425373 -vt 0.638060 0.866761 -vt 0.649252 0.859298 -vt 0.000000 0.313433 -vt 0.000000 0.279851 -vt 0.000000 0.268657 -vt 0.992537 0.421642 -vt 0.794776 0.876866 -vt 0.231343 0.302239 -vt 0.320896 0.253731 -vt 0.899254 0.089552 -vt 0.988806 0.089552 -vt 0.802239 0.048507 -vt 0.861940 0.089552 -vt 0.951493 0.089552 -vt 0.858209 0.048507 -vt 0.567164 0.466418 -vt 0.567164 0.376866 -vt 0.567164 0.406716 -vt 0.567164 0.436567 -vt 0.567164 0.421642 -vt 0.320896 0.335821 -vt 0.634328 0.585821 -vt 0.809702 0.421642 -vt 0.462687 0.582090 -vt 0.514925 0.597015 -vt 0.470149 0.544776 -vt 0.313433 0.514925 -vt 0.339552 0.425373 -vt 0.794776 0.858209 -vt 0.537313 0.738806 -vt 0.570895 0.738806 -vt 0.570895 0.567164 -vt 0.981343 0.888060 -vt 0.921642 0.824627 -vt 0.750000 0.003731 -vt 0.936567 0.764925 -vt 0.895522 0.757463 -vt 0.891791 0.731343 -vt 0.891791 0.694030 -vt 0.369403 0.369403 -vt 0.451493 0.354478 -vt 0.369403 0.425373 -vt 0.395523 0.388060 -vt 0.429104 0.358209 -vt 0.391791 0.440298 -vt 0.429104 0.376866 -vt 0.309702 0.309702 -vt 0.945896 0.429104 -vt 0.944030 0.055970 -vt 0.899254 0.085821 -vt 0.951493 0.085821 -vt 0.638060 0.867922 -vn 0.0000 0.0000 -1.0000 -vn 0.0000 -1.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 1.0000 0.0000 0.0000 -vn 0.4082 0.8165 0.4082 -vn -0.4082 0.8165 0.4082 -vn 0.7071 0.0000 0.7071 -vn -0.7071 0.0000 0.7071 -vn 0.0000 0.5547 0.8321 -vn 0.0000 -0.9487 0.3162 -vn 0.0000 0.0000 1.0000 -vn 0.0000 1.0000 0.0000 -vn 0.0000 -0.2095 0.9778 -vn 0.0000 -0.1240 0.9923 -vn 0.7071 0.0000 -0.7071 -vn -0.7071 0.0000 -0.7071 -vn -0.9852 0.0000 0.1716 -vn 0.9852 0.0025 0.1712 -vn -0.9991 0.0000 0.0416 -vn 0.0000 -0.8321 0.5547 -vn 0.9991 0.0000 0.0416 -vn 0.9947 0.1030 0.0000 -vn -0.9852 0.0025 0.1712 -vn 0.9852 0.0000 0.1716 -vn 0.0000 0.4698 0.8828 -vn 0.0000 0.1748 0.9846 -vn 0.3827 0.0000 0.9239 -vn -0.3827 0.0000 0.9239 -vn 0.5000 0.0000 0.8660 -vn -0.0000 -0.0175 0.9998 -vn 0.4997 -0.0171 0.8660 -vn -0.4997 -0.0171 0.8660 -vn 0.9654 -0.0171 -0.2604 -vn 0.9950 0.0000 -0.1001 -vn 0.9998 -0.0175 -0.0000 -vn 0.8892 0.0000 0.4576 -vn 0.8660 -0.0171 0.4997 -vn -0.8817 0.0000 0.4718 -vn -0.9998 -0.0175 -0.0000 -vn -0.8660 -0.0171 0.4997 -vn 0.0048 0.7466 0.6652 -vn 0.0000 0.4835 0.8754 -vn 0.0336 0.9306 0.3645 -vn 0.0308 0.9389 0.3429 -vn 0.0000 0.9550 0.2967 -vn -0.9654 -0.0171 -0.2604 -vn -0.9945 0.0000 -0.1050 -vn -0.9659 0.0000 -0.2588 -vn -0.0217 0.7322 0.6807 -vn -0.1528 0.9265 0.3440 -vn 0.0000 0.7195 0.6945 -vn 0.0000 -0.0207 0.9998 -vn -0.7070 -0.0208 0.7070 -vn 0.9998 -0.0198 -0.0006 -vn 0.8932 0.1902 0.4073 -vn 0.5547 0.0000 0.8320 -vn 0.2903 -0.0009 0.9569 -vn -0.2903 -0.0009 0.9569 -vn -0.0212 0.0000 0.9998 -vn -0.5547 0.0000 0.8320 -vn 0.4468 -0.0431 -0.8936 -vn 0.2311 -0.0468 -0.9718 -vn 0.2279 -0.0469 -0.9725 -vn -0.8932 0.1902 0.4073 -vn -0.9817 0.1905 0.0000 -vn -0.1753 -0.1753 0.9688 -vn -0.2311 -0.0468 -0.9718 -vn -0.2279 -0.0469 -0.9725 -vn 0.9817 0.1905 0.0000 -vn -0.4468 -0.0431 -0.8936 -vn 0.1753 -0.1753 0.9688 -vn 0.8321 0.5547 -0.0000 -vn 0.5883 0.5547 0.5883 -vn -0.5883 0.5547 0.5883 -vn -0.8321 0.5547 0.0000 -vn -0.5883 0.5547 -0.5883 -vn 0.0000 0.5547 -0.8321 -vn 0.5883 0.5547 -0.5883 -vn 0.0000 0.5547 0.8320 -vn -0.9998 -0.0198 -0.0006 -vn -0.8917 -0.0158 -0.4523 -vn 0.7070 -0.0208 0.7070 -vn 0.8917 -0.0158 -0.4523 -vn -0.8507 0.0000 0.5257 -vn 0.8507 0.0000 0.5257 -vn -0.4472 0.0000 0.8944 -vn 0.4472 0.0000 0.8944 -vn 0.0212 0.0000 0.9998 -vn 0.0000 -0.7071 -0.7071 -vn 0.0000 -0.7071 0.7071 -vn 0.0000 0.7071 0.7071 -vn 0.0000 0.7071 -0.7071 -vn 0.4472 0.6325 0.6325 -vn 0.4472 0.6325 -0.6325 -vn 0.4472 0.8944 -0.0000 -vn 0.4472 -0.6325 -0.6325 -vn 0.4472 -0.0000 -0.8944 -vn 0.4472 -0.6325 0.6325 -vn 0.4472 -0.8944 0.0000 -vn -0.7071 0.7071 0.0000 -vn 0.7071 0.7071 0.0000 -vn 0.7071 -0.7071 0.0000 -vn -0.7071 -0.7071 0.0000 -vn 0.5000 -0.8660 0.0000 -vn 0.8660 -0.5000 0.0000 -vn -0.8660 0.5000 0.0000 -vn -0.8660 -0.5000 0.0000 -vn -0.5000 -0.8660 0.0000 -vn 0.5000 0.8660 0.0000 -vn -0.5000 0.8660 0.0000 -vn 0.8660 0.5000 0.0000 -vn 0.0000 -0.1305 -0.9914 -vn 0.0000 -0.4762 -0.8793 -vn 0.0000 -0.7764 -0.6302 -vn 0.0000 -0.9659 -0.2588 -vn 0.0000 0.7190 0.6950 -vn 0.0000 0.4636 0.8860 -vn 0.0000 0.1305 0.9914 -vn 0.0000 0.7674 0.6412 -vn 0.0000 0.9659 0.2588 -vn 0.0000 0.9659 -0.2588 -vn 0.0000 0.7495 -0.6620 -vn 0.0000 0.6031 -0.7977 -vn 0.0000 -0.3827 -0.9239 -vn 0.0000 -0.9239 -0.3827 -vn 0.0000 -0.7064 0.7079 -vn 0.0000 -0.9054 0.4245 -vn 0.0000 -0.2164 0.9763 -vn 0.3617 0.6378 -0.6800 -vn -0.4283 0.3974 -0.8116 -vn 0.4283 0.3974 -0.8116 -vn 0.0000 -0.1041 0.9946 -vn 0.0000 0.3037 0.9528 -vn 0.2707 -0.4515 -0.8502 -vn -0.2581 -0.6804 -0.6859 -vn 0.2581 -0.6804 -0.6859 -vn 0.4210 0.9013 -0.1018 -vn -0.3617 0.6378 -0.6800 -vn 0.0000 -0.5101 0.8601 -vn 0.2571 -0.9525 -0.1631 -vn -0.2939 -0.9508 0.0980 -vn 0.2939 -0.9508 0.0980 -vn 0.4989 0.7867 0.3637 -vn -0.4210 0.9013 -0.1018 -vn 0.0000 -0.6428 0.7660 -vn 0.2599 -0.7251 -0.6377 -vn -0.2571 -0.9525 -0.1631 -vn 0.3812 0.8498 0.3641 -vn -0.4989 0.7867 0.3637 -vn 0.0000 0.1564 0.9877 -vn -0.3656 -0.3258 -0.8719 -vn -0.2599 -0.7251 -0.6377 -vn 0.4369 0.8990 -0.0300 -vn -0.3812 0.8498 0.3641 -vn 0.4071 0.9127 -0.0353 -vn 0.1358 0.9818 -0.1326 -vn 0.7071 0.7071 0.0028 -vn 0.3053 -0.1999 -0.9310 -vn 0.3656 -0.3258 -0.8719 -vn 0.4786 0.6610 -0.5779 -vn -0.4369 0.8990 -0.0300 -vn 0.3801 0.9206 -0.0892 -vn -0.4071 0.9127 -0.0353 -vn 0.4872 0.1771 -0.8552 -vn -0.4786 0.6610 -0.5779 -vn 0.2373 0.8958 -0.3758 -vn -0.3801 0.9206 -0.0892 -vn 0.4942 -0.3475 -0.7969 -vn -0.4872 0.1771 -0.8552 -vn 0.0464 0.8093 -0.5855 -vn -0.2373 0.8958 -0.3758 -vn 0.3436 -0.6108 -0.7133 -vn -0.4942 -0.3475 -0.7969 -vn 0.0000 -0.3718 -0.9283 -vn 0.0000 -0.2588 -0.9659 -vn 0.2689 -0.9341 -0.2349 -vn -0.2532 -0.9637 0.0844 -vn 0.2532 -0.9637 0.0844 -vn 0.5452 -0.3421 -0.7653 -vn 0.2726 -0.6088 -0.7450 -vn -0.2689 -0.9341 -0.2349 -vn 0.5496 -0.2536 -0.7960 -vn -0.5452 -0.3421 -0.7653 -vn 0.0000 0.1044 0.9945 -vn 0.2686 -0.4020 -0.8754 -vn -0.2726 -0.6088 -0.7450 -vn 0.5439 -0.1401 -0.8274 -vn -0.5496 -0.2536 -0.7960 -vn 0.0000 0.3400 0.9404 -vn 0.2611 -0.9480 -0.1819 -vn 0.3902 -0.0962 -0.9157 -vn -0.5439 -0.1401 -0.8274 -vn -0.2611 -0.9480 -0.1819 -vn 0.8328 0.5481 -0.0769 -vn -0.1358 0.9818 -0.1326 -vn 0.8962 0.3092 -0.3180 -vn 0.7188 0.6948 -0.0240 -vn 0.8128 -0.2521 -0.5252 -vn 0.6507 -0.2640 -0.7120 -vn 0.8077 -0.2161 -0.5485 -vn 0.9322 -0.0980 -0.3484 -vn 0.9464 -0.1306 -0.2954 -vn 0.4576 -0.8874 0.0558 -vn 0.5398 -0.7906 -0.2890 -vn 0.9747 -0.0886 -0.2052 -vn 0.5706 -0.4631 -0.6782 -vn 0.9789 -0.0638 -0.1943 -vn 0.4954 -0.2102 -0.8429 -vn 0.9793 -0.0343 -0.1994 -vn 0.7293 0.2627 0.6317 -vn 0.9364 0.1634 0.3106 -vn 0.9284 0.1432 0.3428 -vn 0.4718 -0.8793 0.0643 -vn 0.5046 -0.8174 -0.2779 -vn -0.9793 -0.0343 -0.1994 -vn -0.7249 -0.0697 -0.6853 -vn 0.9300 0.1376 0.3408 -vn 0.4666 -0.6159 -0.6348 -vn 0.6337 0.3235 -0.7027 -vn 0.7008 0.6044 -0.3789 -vn 0.8048 0.1191 0.5815 -vn 0.9451 0.1184 0.3045 -vn 0.4634 -0.4187 -0.7810 -vn 0.7152 0.6967 0.0555 -vn 0.9654 0.0474 0.2563 -vn 0.8634 0.1052 0.4934 -vn 0.5213 -0.8252 -0.2174 -vn -0.7979 0.5218 0.3019 -vn 0.8618 0.0885 0.4995 -vn 0.6057 -0.5382 -0.5861 -vn 0.6936 0.6709 0.2622 -vn 0.7979 0.5218 0.3019 -vn 0.9003 0.0461 0.4329 -vn 0.9716 0.0255 0.2354 -vn 0.6590 0.3626 0.6590 -vn 0.8518 0.3705 0.3705 -vn 0.7047 -0.0827 -0.7047 -vn 0.0000 -0.8507 0.5257 -vn 0.0000 -0.4472 0.8944 -vn 0.6830 0.2589 0.6830 -vn 0.4122 0.8008 -0.4345 -vn -0.4122 0.8008 -0.4345 -vn -0.7188 0.6948 -0.0240 -vn 0.8812 0.1711 -0.4406 -vn -0.9322 -0.0980 -0.3484 -vn -0.9716 0.0255 0.2354 -vn -0.9464 -0.1306 -0.2954 -vn -0.9747 -0.0886 -0.2052 -vn -0.9789 -0.0638 -0.1943 -vn -0.9654 0.0474 0.2563 -vn -0.9451 0.1184 0.3045 -vn -0.9291 0.1345 0.3446 -vn -0.9266 0.1522 0.3439 -vn -0.7071 0.7071 0.0028 -vn -0.9003 0.0461 0.4329 -vn -0.8618 0.0885 0.4995 -vn -0.8634 0.1052 0.4934 -vn -0.8048 0.1191 0.5815 -vn -0.6914 0.2443 0.6800 -vn -0.7374 0.2737 0.6175 -vn -0.9364 0.1634 0.3106 -vn -0.6590 0.3626 0.6590 -vn -0.8518 0.3705 0.3705 -vn -0.0464 0.8093 -0.5855 -vn -0.8077 -0.2161 -0.5485 -vn -0.7385 -0.1745 -0.6513 -vn -0.3902 -0.0962 -0.9157 -vn -0.6337 0.3235 -0.7027 -vn -0.7008 0.6044 -0.3789 -vn -0.7152 0.6967 0.0555 -vn -0.6936 0.6709 0.2622 -vn -0.8328 0.5481 -0.0769 -vn -0.8962 0.3092 -0.3180 -vn -0.8128 -0.2521 -0.5252 -vn -0.3436 -0.6109 -0.7133 -vn -0.4576 -0.8874 0.0558 -vn -0.5398 -0.7906 -0.2890 -vn -0.4954 -0.2102 -0.8429 -vn -0.2686 -0.4020 -0.8754 -vn -0.4718 -0.8793 0.0643 -vn -0.5046 -0.8174 -0.2779 -vn -0.4634 -0.4187 -0.7810 -vn -0.2707 -0.4515 -0.8502 -vn -0.5213 -0.8252 -0.2174 -vn -0.7047 -0.0827 -0.7047 -vn -0.6057 -0.5382 -0.5861 -vn -0.3053 -0.1999 -0.9310 -vn -0.8812 0.1711 -0.4406 -vn -0.9978 0.0000 -0.0657 -vn 0.9962 -0.0000 -0.0872 -vn 0.0665 -0.9238 0.3772 -vn 0.1604 -0.3827 0.9098 -vn 0.1540 0.4625 0.8732 -vn 0.9848 -0.0000 -0.1736 -vn 0.9848 -0.0000 -0.1737 -vn -0.0665 -0.9238 0.3772 -vn -0.0665 -0.9239 0.3769 -vn -0.1604 -0.3827 0.9098 -vn -0.1499 0.4623 0.8739 -vn -0.9848 0.0000 -0.1736 -vn -0.9962 -0.0000 -0.0872 -vn 0.1499 0.4623 0.8739 -vn 0.0079 0.8107 0.5854 -vn 0.0000 0.8095 0.5871 -vn -0.1540 0.4625 0.8732 -vn -0.0079 0.8107 0.5854 -vn 0.0960 0.8309 -0.5481 -vn 0.0622 0.6288 -0.7750 -vn 0.2862 0.7684 -0.5725 -vn 0.9144 0.4049 0.0000 -vn 0.9269 0.3754 0.0000 -vn -0.9947 0.1030 0.0000 -vn -0.9269 0.3754 0.0000 -vn -0.9577 0.2879 0.0000 -vn -0.0960 0.8309 -0.5481 -vn -0.2862 0.7684 -0.5725 -vn -0.0622 0.6288 -0.7750 -vn 0.0000 0.2662 -0.9639 -vn 0.0000 -0.9328 0.3604 -vn 0.7249 -0.0697 -0.6853 -vn -0.1469 0.9586 0.2439 -vn 0.0000 0.7360 0.6769 -vn -0.5000 0.0000 0.8660 -vn 0.9659 0.0000 -0.2588 -vn -0.9328 0.0000 0.3604 -vn 0.9328 0.0000 0.3604 -vn 0.7385 -0.1745 -0.6513 -vn -0.6507 -0.2640 -0.7120 -vn -0.5706 -0.4631 -0.6782 -vn -0.4666 -0.6159 -0.6348 -vn 0.9978 0.0000 -0.0657 -vn 0.0665 -0.9239 0.3769 -vn -0.9848 -0.0000 -0.1737 -usemtl Material.001 -s off -f 1/1/1 4/2/1 2/3/1 -f 23/4/2 7/5/2 11/6/2 -f 12/7/2 19/8/2 24/9/2 -f 21/10/3 23/4/3 25/11/3 -f 22/12/4 24/9/4 19/8/4 -f 21/13/2 26/14/2 22/15/2 -f 15/16/5 17/17/5 13/18/5 -f 14/19/6 18/20/6 16/21/6 -f 15/16/7 29/22/7 17/17/7 -f 30/23/8 16/21/8 18/20/8 -f 27/24/9 30/25/9 29/26/9 -f 22/15/10 20/27/10 21/13/10 -f 49/28/2 55/29/2 48/30/2 -f 49/31/2 57/32/2 56/33/2 -f 51/34/2 57/32/2 50/35/2 -f 51/36/2 59/37/2 58/38/2 -f 46/39/2 53/40/2 45/41/2 -f 45/42/2 59/37/2 52/43/2 -f 77/44/4 35/45/4 90/46/4 -f 102/47/3 97/48/3 36/49/3 -f 96/50/11 93/51/11 95/52/11 -f 5/53/2 34/54/2 33/55/2 -f 13/56/11 17/57/11 25/58/11 -f 12/7/11 24/9/11 26/59/11 -f 25/58/11 18/60/11 26/59/11 -f 139/61/12 135/62/12 131/63/12 -f 140/64/2 136/65/2 132/66/2 -f 138/67/11 141/68/11 140/69/11 -f 27/70/4 2/3/4 31/71/4 -f 15/72/4 11/73/4 7/74/4 -f 15/72/4 7/74/4 2/3/4 -f 7/74/4 33/75/4 2/3/4 -f 1/1/4 33/75/4 104/76/4 -f 12/77/3 16/78/3 8/79/3 -f 28/80/3 4/2/3 16/78/3 -f 16/78/3 4/2/3 8/79/3 -f 8/79/3 34/81/3 6/82/3 -f 3/83/3 34/81/3 4/2/3 -f 5/53/11 8/84/11 6/85/11 -f 144/86/1 143/87/1 142/88/1 -f 144/89/2 142/88/2 152/90/2 -f 145/91/3 150/92/3 154/93/3 -f 155/94/13 150/95/13 151/96/13 -f 146/97/13 153/98/13 147/99/13 -f 143/87/4 146/100/4 142/88/4 -f 159/101/12 161/102/12 160/103/12 -f 156/104/4 151/105/4 152/106/4 -f 147/107/3 157/108/3 149/109/3 -f 166/110/11 165/111/11 164/112/11 -f 157/108/11 152/106/11 149/109/11 -f 143/113/12 145/91/12 157/114/12 -f 169/115/14 160/116/14 161/102/14 -f 167/117/12 166/110/12 172/118/12 -f 171/119/12 167/117/12 172/118/12 -f 166/110/12 173/120/12 172/118/12 -f 166/110/12 168/121/12 174/122/12 -f 167/117/12 170/123/12 169/124/12 -f 177/125/12 169/124/12 170/123/12 -f 168/121/12 175/126/12 174/122/12 -f 168/121/12 169/124/12 176/127/12 -f 165/128/2 180/129/2 164/130/2 -f 181/131/2 164/130/2 180/129/2 -f 179/132/2 165/128/2 178/133/2 -f 192/134/2 190/135/2 191/136/2 -f 189/137/12 162/138/12 187/139/12 -f 163/140/12 188/141/12 186/142/12 -f 194/143/13 189/137/13 192/134/13 -f 183/144/2 195/145/2 182/146/2 -f 164/130/2 182/146/2 195/145/2 -f 165/128/2 194/147/2 178/133/2 -f 194/148/3 167/149/3 169/150/3 -f 166/151/4 164/152/4 195/153/4 -f 208/154/4 210/155/4 204/156/4 -f 234/157/3 232/158/3 230/159/3 -f 270/160/1 268/161/1 266/162/1 -f 248/163/11 259/164/11 249/165/11 -f 257/166/11 248/163/11 247/167/11 -f 257/166/11 247/168/11 256/169/11 -f 259/164/11 260/170/11 249/171/11 -f 246/172/11 256/169/11 247/173/11 -f 260/170/11 250/174/11 249/175/11 -f 250/174/11 262/176/11 251/177/11 -f 262/176/11 263/178/11 251/179/11 -f 263/178/11 244/180/11 251/181/11 -f 244/180/11 253/182/11 245/183/11 -f 253/182/11 254/184/11 245/185/11 -f 254/184/11 246/186/11 245/187/11 -f 283/188/4 292/189/4 282/190/4 -f 282/190/4 290/191/4 279/192/4 -f 283/188/4 288/193/4 293/194/4 -f 40/195/3 9/196/3 42/197/3 -f 10/198/4 305/199/4 304/200/4 -f 303/201/11 97/202/11 306/203/11 -f 285/204/3 289/205/3 286/206/3 -f 311/207/3 285/204/3 284/208/3 -f 284/208/3 291/209/3 311/210/3 -f 277/211/15 308/212/15 280/213/15 -f 287/214/4 298/215/4 288/193/4 -f 299/216/4 298/217/4 281/218/4 -f 301/219/4 299/216/4 281/218/4 -f 300/220/4 281/218/4 308/221/4 -f 300/220/4 308/221/4 297/222/4 -f 279/192/4 294/223/4 302/224/4 -f 297/222/4 302/225/4 295/226/4 -f 286/206/3 319/227/3 320/228/3 -f 319/229/3 318/230/3 320/231/3 -f 318/230/3 317/232/3 320/231/3 -f 312/233/3 278/234/3 307/235/3 -f 307/236/3 315/237/3 314/238/3 -f 315/237/3 309/239/3 316/240/3 -f 316/240/3 320/231/3 317/232/3 -f 309/241/16 276/242/16 321/243/16 -f 27/70/12 32/244/12 28/245/12 -f 55/29/2 458/246/2 48/247/2 -f 54/248/2 46/249/2 460/250/2 -f 468/251/12 463/252/12 459/253/12 -f 469/254/11 467/255/11 468/256/11 -f 473/257/17 468/256/17 467/255/17 -f 479/258/18 477/259/18 466/260/18 -f 485/261/12 486/262/12 483/263/12 -f 487/264/11 488/265/11 486/266/11 -f 489/267/19 485/261/19 484/268/19 -f 482/269/20 489/270/20 484/271/20 -f 483/263/21 488/272/21 482/273/21 -f 493/274/2 492/275/2 496/276/2 -f 95/52/12 87/277/12 96/50/12 -f 185/278/2 194/147/2 184/279/2 -f 194/147/2 195/145/2 184/279/2 -f 30/280/11 17/281/11 29/282/11 -f 104/283/22 498/284/22 1/285/22 -f 1/1/1 3/83/1 4/2/1 -f 23/4/2 20/286/2 7/5/2 -f 12/7/2 8/287/2 19/8/2 -f 21/10/3 20/286/3 23/4/3 -f 22/12/4 26/288/4 24/9/4 -f 21/13/2 25/289/2 26/14/2 -f 15/16/7 27/24/7 29/22/7 -f 30/23/8 28/290/8 16/21/8 -f 27/24/9 28/290/9 30/25/9 -f 22/15/10 19/291/10 20/27/10 -f 49/28/2 56/33/2 55/29/2 -f 49/31/2 50/292/2 57/32/2 -f 51/34/2 58/38/2 57/32/2 -f 51/36/2 52/293/2 59/37/2 -f 46/39/2 54/248/2 53/40/2 -f 45/42/2 53/40/2 59/37/2 -f 77/44/4 37/294/4 39/295/4 -f 37/294/4 38/296/4 39/295/4 -f 39/295/4 35/45/4 77/44/4 -f 35/45/4 76/297/4 90/46/4 -f 41/298/3 43/299/3 44/300/3 -f 44/300/3 103/301/3 41/298/3 -f 103/301/3 102/47/3 36/49/3 -f 41/298/3 103/301/3 36/49/3 -f 96/50/11 94/302/11 93/51/11 -f 5/53/2 6/85/2 34/54/2 -f 23/4/11 11/6/11 25/58/11 -f 11/6/11 13/56/11 25/58/11 -f 18/60/11 14/303/11 26/59/11 -f 14/303/11 12/7/11 26/59/11 -f 25/58/11 17/57/11 18/60/11 -f 131/63/12 133/304/12 139/61/12 -f 133/304/12 137/305/12 141/306/12 -f 139/61/12 133/304/12 141/306/12 -f 132/66/2 130/307/2 140/64/2 -f 130/307/2 134/308/2 138/309/2 -f 140/64/2 130/307/2 138/309/2 -f 138/67/11 139/310/11 141/68/11 -f 27/70/4 15/72/4 2/3/4 -f 15/72/4 13/311/4 11/73/4 -f 7/74/4 5/53/4 33/75/4 -f 1/1/4 2/3/4 33/75/4 -f 12/77/3 14/312/3 16/78/3 -f 28/80/3 32/313/3 4/2/3 -f 8/79/3 4/2/3 34/81/3 -f 3/83/3 109/314/3 34/81/3 -f 5/53/11 7/74/11 8/84/11 -f 144/86/1 145/315/1 143/87/1 -f 151/316/2 150/92/2 152/90/2 -f 150/92/2 144/89/2 152/90/2 -f 142/88/2 146/100/2 149/317/2 -f 146/100/2 147/318/2 149/317/2 -f 142/88/2 149/317/2 152/90/2 -f 145/91/3 144/89/3 150/92/3 -f 155/94/13 154/319/13 150/95/13 -f 146/97/13 148/320/13 153/98/13 -f 143/87/4 148/321/4 146/100/4 -f 159/101/12 158/322/12 161/102/12 -f 156/104/4 155/94/4 151/105/4 -f 147/107/3 153/98/3 157/108/3 -f 166/110/11 167/117/11 165/111/11 -f 157/108/11 156/104/11 152/106/11 -f 145/91/12 154/93/12 156/323/12 -f 154/93/12 155/324/12 156/323/12 -f 153/325/12 148/326/12 157/114/12 -f 148/326/12 143/113/12 157/114/12 -f 145/91/12 156/323/12 157/114/12 -f 169/115/14 168/327/14 160/116/14 -f 171/119/12 170/123/12 167/117/12 -f 166/110/12 174/122/12 173/120/12 -f 177/125/12 176/127/12 169/124/12 -f 168/121/12 176/127/12 175/126/12 -f 181/131/2 182/146/2 164/130/2 -f 179/132/2 180/129/2 165/128/2 -f 192/134/2 193/328/2 190/135/2 -f 189/137/12 194/143/12 162/138/12 -f 163/140/12 195/329/12 188/141/12 -f 192/134/13 191/136/13 195/329/13 -f 191/136/13 188/141/13 195/329/13 -f 195/329/13 194/143/13 192/134/13 -f 183/144/2 184/279/2 195/145/2 -f 169/150/3 161/102/3 158/322/3 -f 158/322/3 162/330/3 169/150/3 -f 162/330/3 194/148/3 169/150/3 -f 194/148/3 165/331/3 167/149/3 -f 195/153/4 163/332/4 168/333/4 -f 163/332/4 159/334/4 168/333/4 -f 159/334/4 160/335/4 168/333/4 -f 168/333/4 166/151/4 195/153/4 -f 204/156/4 205/336/4 206/337/4 -f 206/337/4 207/338/4 208/154/4 -f 208/154/4 209/339/4 210/155/4 -f 210/155/4 211/340/4 204/156/4 -f 204/156/4 206/337/4 208/154/4 -f 230/159/3 229/341/3 228/342/3 -f 228/342/3 235/343/3 234/157/3 -f 234/157/3 233/344/3 232/158/3 -f 232/158/3 231/345/3 230/159/3 -f 230/159/3 228/342/3 234/157/3 -f 266/162/1 265/346/1 264/347/1 -f 264/347/1 275/348/1 274/349/1 -f 274/349/1 273/350/1 272/351/1 -f 272/351/1 271/352/1 270/160/1 -f 270/160/1 269/353/1 268/161/1 -f 268/161/1 267/354/1 266/162/1 -f 266/162/1 264/347/1 270/160/1 -f 264/347/1 274/349/1 270/160/1 -f 274/349/1 272/351/1 270/160/1 -f 248/163/11 258/355/11 259/164/11 -f 257/166/11 258/355/11 248/163/11 -f 246/172/11 255/356/11 256/169/11 -f 260/170/11 261/357/11 250/174/11 -f 250/174/11 261/357/11 262/176/11 -f 263/178/11 252/358/11 244/180/11 -f 244/180/11 252/358/11 253/182/11 -f 254/184/11 255/359/11 246/186/11 -f 283/188/4 293/360/4 292/189/4 -f 282/190/4 292/361/4 290/191/4 -f 283/188/4 287/214/4 288/193/4 -f 40/195/3 303/362/3 9/196/3 -f 10/198/4 306/363/4 305/199/4 -f 10/364/11 9/365/11 303/201/11 -f 303/201/11 36/366/11 97/202/11 -f 97/202/11 76/367/11 306/203/11 -f 76/367/11 35/368/11 306/203/11 -f 306/203/11 10/364/11 303/201/11 -f 285/204/3 310/369/3 289/205/3 -f 311/207/3 310/370/3 285/204/3 -f 284/208/3 278/234/3 291/209/3 -f 277/211/15 302/371/15 308/212/15 -f 287/214/4 281/372/4 298/215/4 -f 300/220/4 301/219/4 281/218/4 -f 279/192/4 290/191/4 294/223/4 -f 297/222/4 308/221/4 302/225/4 -f 286/206/3 289/205/3 319/227/3 -f 312/233/3 291/209/3 278/234/3 -f 307/236/3 309/239/3 315/237/3 -f 316/240/3 309/239/3 320/231/3 -f 309/241/16 307/373/16 276/242/16 -f 27/70/12 31/71/12 32/244/12 -f 459/253/12 461/374/12 469/375/12 -f 461/374/12 465/376/12 469/375/12 -f 469/375/12 468/251/12 459/253/12 -f 469/254/11 466/260/11 467/255/11 -f 467/255/23 475/377/23 471/378/23 -f 471/378/17 473/257/17 467/255/17 -f 466/260/24 469/254/24 481/379/24 -f 481/379/24 479/258/24 466/260/24 -f 485/261/12 487/380/12 486/262/12 -f 487/264/11 489/270/11 488/265/11 -f 489/267/19 487/380/19 485/261/19 -f 482/269/20 488/265/20 489/270/20 -f 483/263/21 486/262/21 488/272/21 -f 492/275/2 491/381/2 490/382/2 -f 490/382/2 497/383/2 492/275/2 -f 497/383/2 496/276/2 492/275/2 -f 496/276/2 495/384/2 494/385/2 -f 494/385/2 493/274/2 496/276/2 -f 86/386/12 87/277/12 95/52/12 -f 87/277/12 88/387/12 96/50/12 -f 185/278/2 178/133/2 194/147/2 -f 30/280/11 18/388/11 17/281/11 -s 1 -f 40/389/25 43/390/26 41/391/25 -f 58/38/1 65/392/15 57/32/15 -f 56/33/4 63/393/7 55/29/7 -f 59/37/16 66/394/1 58/38/1 -f 57/32/15 64/395/4 56/33/4 -f 459/396/27 55/29/7 63/393/7 -f 54/248/8 60/397/3 53/40/3 -f 53/40/3 67/398/16 59/37/16 -f 461/399/28 54/248/8 460/250/28 -f 88/400/29 81/401/30 82/402/31 -f 87/403/11 80/404/32 81/401/30 -f 98/405/33 89/406/34 84/407/35 -f 84/407/35 92/408/36 83/409/37 -f 91/410/38 78/411/39 79/412/40 -f 90/413/41 99/414/42 77/415/42 -f 92/416/43 76/417/44 94/418/45 -f 100/419/46 85/420/47 101/421/48 -f 101/422/42 102/423/49 103/424/42 -f 91/425/50 102/423/49 85/426/51 -f 81/401/30 80/404/32 70/427/52 -f 69/428/53 70/427/52 80/404/32 -f 83/409/37 72/429/54 84/407/35 -f 106/430/55 498/431/56 105/432/57 -f 110/433/58 109/434/59 501/435/60 -f 107/436/61 117/437/62 108/438/63 -f 120/439/3 111/440/64 112/441/65 -f 111/442/64 118/443/66 110/433/58 -f 108/438/63 121/444/67 113/445/68 -f 106/446/55 116/447/4 107/436/69 -f 121/444/67 112/441/70 113/445/68 -f 114/448/71 106/430/55 105/432/57 -f 64/395/72 125/449/73 63/393/73 -f 62/450/9 123/451/74 61/452/74 -f 60/397/75 129/453/76 67/398/76 -f 66/394/77 127/454/78 65/392/78 -f 64/395/72 127/455/78 126/456/72 -f 62/457/9 125/458/73 124/459/79 -f 60/397/75 123/460/74 122/461/75 -f 67/398/76 128/462/77 66/394/77 -f 68/463/80 123/464/8 69/465/53 -f 75/466/81 122/467/3 68/463/80 -f 74/468/1 127/469/15 128/470/1 -f 71/471/82 126/472/4 72/473/54 -f 69/465/53 124/474/11 70/475/52 -f 74/468/1 129/476/16 75/466/81 -f 72/473/54 127/469/15 73/477/83 -f 70/478/52 125/479/7 71/471/82 -f 132/66/3 137/480/84 133/304/3 -f 131/481/4 134/482/85 130/307/4 -f 136/483/84 141/68/86 137/480/84 -f 135/484/85 138/485/87 134/482/85 -f 79/412/40 78/411/39 68/486/80 -f 104/487/88 33/488/11 109/434/59 -f 98/405/33 72/489/54 73/490/83 -f 180/491/1 171/492/15 172/493/1 -f 185/494/7 176/495/11 177/496/7 -f 183/497/8 174/498/3 175/499/8 -f 181/500/16 172/501/1 173/502/16 -f 179/503/15 170/504/4 171/492/15 -f 178/505/4 177/496/7 170/504/4 -f 184/506/11 175/499/8 176/495/11 -f 182/507/3 173/502/16 174/498/3 -f 208/508/1 199/509/89 200/510/1 -f 206/511/2 197/512/90 198/513/2 -f 211/514/91 202/515/12 203/516/91 -f 209/517/92 200/510/1 201/518/92 -f 207/519/89 198/513/2 199/509/89 -f 205/520/90 196/521/11 197/512/90 -f 204/522/11 203/516/91 196/523/11 -f 210/524/12 201/518/92 202/515/12 -f 219/525/93 220/526/87 212/527/87 -f 225/528/94 218/529/95 217/530/94 -f 215/531/96 224/532/97 216/533/97 -f 221/534/98 214/535/99 213/536/98 -f 220/537/87 213/536/98 212/538/87 -f 218/529/95 227/539/93 219/525/93 -f 224/532/97 217/530/94 216/533/97 -f 214/535/99 223/540/96 215/531/96 -f 220/537/11 229/541/90 221/534/90 -f 227/539/91 228/542/11 220/526/11 -f 225/528/92 234/543/12 226/544/12 -f 223/540/89 232/545/1 224/532/1 -f 221/534/90 230/546/2 222/547/2 -f 226/544/12 235/548/91 227/539/91 -f 224/532/1 233/549/92 225/528/92 -f 222/547/2 231/550/89 223/540/89 -f 242/551/12 251/552/100 243/553/100 -f 240/554/4 249/555/101 241/556/101 -f 238/557/2 247/558/102 239/559/102 -f 236/560/3 245/561/103 237/562/103 -f 243/553/100 244/563/3 236/560/3 -f 241/556/101 250/564/12 242/551/12 -f 239/559/102 248/565/4 240/554/4 -f 237/562/103 246/566/2 238/567/2 -f 256/169/104 269/568/105 257/166/105 -f 263/178/106 264/569/3 252/358/3 -f 253/182/107 266/570/108 254/184/108 -f 260/170/109 273/571/12 261/357/12 -f 257/166/105 270/572/4 258/355/4 -f 254/184/108 267/573/2 255/359/2 -f 261/357/12 274/574/110 262/176/110 -f 258/355/4 271/575/111 259/164/111 -f 255/356/2 268/576/104 256/169/104 -f 262/176/110 275/577/106 263/178/106 -f 252/358/3 265/578/107 253/182/107 -f 259/164/111 272/579/109 260/170/109 -f 286/206/112 283/188/113 285/204/113 -f 283/188/113 284/208/114 285/204/113 -f 284/208/114 279/192/115 278/234/115 -f 40/389/25 36/366/116 303/201/116 -f 38/580/26 305/581/25 39/582/25 -f 35/368/116 305/581/25 306/203/116 -f 310/583/117 288/584/118 289/585/118 -f 293/586/117 311/587/119 292/588/119 -f 290/589/120 311/587/119 291/590/120 -f 307/235/2 279/192/115 302/224/2 -f 314/238/3 313/591/3 307/236/3 -f 312/592/121 290/589/120 291/590/120 -f 294/593/121 313/594/122 296/595/122 -f 295/596/123 313/594/122 314/597/123 -f 297/598/124 314/597/1 315/599/124 -f 297/600/124 316/601/125 300/602/125 -f 301/603/2 316/601/125 317/604/2 -f 299/605/126 317/604/127 318/606/126 -f 298/607/128 318/606/126 319/608/128 -f 288/584/118 319/608/128 289/585/118 -f 320/228/1 287/214/112 286/206/112 -f 312/609/3 307/236/3 313/591/3 -f 68/610/80 100/419/46 75/611/81 -f 338/612/129 373/613/130 337/614/131 -f 326/615/132 360/616/133 325/617/133 -f 353/618/134 388/619/135 352/620/136 -f 339/621/137 374/622/138 338/623/129 -f 327/624/139 361/625/132 326/615/132 -f 354/626/140 389/627/141 353/618/142 -f 340/628/143 375/629/144 339/621/137 -f 328/630/145 362/631/139 327/624/139 -f 355/632/146 390/633/147 354/626/140 -f 341/634/148 376/635/149 340/628/143 -f 364/636/150 328/630/150 398/637/150 -f 355/632/146 392/638/151 391/639/152 -f 342/640/153 377/641/154 341/634/148 -f 329/642/155 398/643/156 399/644/157 -f 347/645/158 392/638/151 356/646/159 -f 343/647/160 378/648/161 342/640/153 -f 330/649/162 365/650/163 329/642/155 -f 344/651/164 379/652/165 343/647/160 -f 331/653/166 366/654/167 330/649/162 -f 345/655/168 380/656/169 344/651/164 -f 332/657/170 367/658/171 331/653/166 -f 346/659/172 381/660/173 345/655/168 -f 333/661/174 368/662/175 332/663/175 -f 348/664/176 382/665/177 346/659/178 -f 334/666/179 369/667/174 333/661/174 -f 349/668/180 384/669/181 348/664/176 -f 335/670/182 370/671/183 334/666/179 -f 323/672/184 357/673/11 322/674/11 -f 350/675/185 385/676/186 349/668/180 -f 336/677/187 371/678/188 335/670/182 -f 324/679/189 358/680/184 323/672/184 -f 351/681/190 386/682/141 350/675/142 -f 337/683/191 372/684/192 336/677/187 -f 325/617/133 359/685/189 324/679/189 -f 352/620/136 387/686/193 351/681/190 -f 341/634/148 411/687/194 342/640/153 -f 398/643/156 365/650/163 364/688/195 -f 343/647/160 411/687/194 412/689/196 -f 329/642/155 400/690/197 330/649/162 -f 345/655/168 344/651/164 413/691/198 -f 346/692/172 413/693/198 414/694/199 -f 333/695/200 401/696/201 402/697/202 -f 348/698/176 414/699/203 415/700/204 -f 334/701/179 333/695/200 403/702/205 -f 349/703/180 415/700/204 416/704/206 -f 335/705/182 334/701/179 404/706/207 -f 349/703/180 417/707/208 350/675/185 -f 335/705/182 405/708/209 336/709/187 -f 324/710/210 393/711/211 394/712/212 -f 351/713/190 417/707/213 418/714/214 -f 437/715/215 372/716/192 438/717/216 -f 395/718/217 324/710/210 394/712/212 -f 352/719/136 418/714/214 419/720/218 -f 338/612/129 406/721/219 407/722/220 -f 326/723/221 395/718/217 396/724/222 -f 352/719/136 420/725/223 353/618/134 -f 408/726/224 339/621/137 407/722/220 -f 326/723/221 397/727/225 327/728/226 -f 354/729/140 420/725/213 421/730/227 -f 376/635/149 441/731/228 375/629/144 -f 327/728/226 397/727/225 328/732/229 -f 355/733/146 421/730/227 422/734/230 -f 410/735/231 340/628/143 409/736/232 -f 398/737/233 328/732/229 399/738/234 -f 323/739/235 322/740/236 393/711/211 -f 356/646/159 423/741/237 347/645/158 -f 383/742/2 424/743/238 425/744/238 -f 425/744/238 2/745/239 4/746/239 -f 399/738/234 328/732/229 397/727/225 -f 324/710/210 395/718/217 325/747/240 -f 331/653/166 401/748/241 332/749/170 -f 367/658/171 433/750/242 366/654/167 -f 433/750/242 432/751/243 366/654/167 -f 400/752/4 399/738/234 401/696/201 -f 338/623/129 407/722/220 339/621/137 -f 340/628/143 410/735/231 341/634/148 -f 404/706/207 334/701/179 403/702/205 -f 401/696/201 399/738/234 402/697/202 -f 399/738/234 403/702/205 402/697/202 -f 404/706/207 403/702/205 397/727/225 -f 397/727/225 396/724/222 404/706/207 -f 395/718/217 404/706/207 396/724/222 -f 395/718/217 394/712/212 405/708/209 -f 322/740/236 31/753/4 393/711/211 -f 31/753/4 394/712/212 393/711/211 -f 31/753/4 2/754/4 406/755/4 -f 343/647/160 412/689/196 344/651/164 -f 413/691/198 344/651/164 456/756/244 -f 344/651/164 412/689/196 456/757/244 -f 411/758/4 415/759/4 412/760/4 -f 416/761/4 410/762/4 409/763/4 -f 417/764/4 416/761/4 418/765/4 -f 416/761/4 409/763/4 418/765/4 -f 421/766/4 408/767/4 422/768/4 -f 420/769/4 419/770/4 421/766/4 -f 418/765/4 409/763/4 419/770/4 -f 421/766/4 419/770/4 409/763/4 -f 409/763/4 408/767/4 421/766/4 -f 423/771/4 422/768/4 408/767/4 -f 423/771/4 424/772/4 347/773/4 -f 423/771/4 407/774/4 2/754/4 -f 406/755/4 2/754/4 407/774/4 -f 408/767/4 407/774/4 423/771/4 -f 406/755/4 405/708/209 31/753/4 -f 403/702/205 333/695/200 402/697/202 -f 432/775/3 433/776/245 431/777/246 -f 433/776/245 434/778/247 431/777/246 -f 435/779/248 431/777/246 434/778/247 -f 436/780/249 430/781/250 435/779/248 -f 430/781/250 436/780/249 429/782/251 -f 428/783/252 436/780/249 437/715/215 -f 428/783/252 437/715/215 427/784/253 -f 443/785/3 447/786/3 442/787/3 -f 442/787/3 448/788/3 441/789/3 -f 449/790/3 450/791/3 448/788/3 -f 448/788/3 450/791/3 441/789/3 -f 453/792/3 454/793/3 440/794/3 -f 452/795/3 453/792/3 451/796/3 -f 450/791/3 451/796/3 441/789/3 -f 453/792/3 441/789/3 451/796/3 -f 441/789/3 453/792/3 440/794/3 -f 455/797/3 440/794/3 454/793/3 -f 440/794/3 455/797/3 439/798/3 -f 431/799/254 364/688/195 365/650/163 -f 364/800/255 431/777/246 363/801/256 -f 431/777/246 430/781/250 363/801/256 -f 363/801/256 430/781/250 362/802/257 -f 430/781/250 361/803/258 362/802/257 -f 361/803/258 428/783/252 360/804/259 -f 360/804/259 427/784/253 359/805/260 -f 426/806/261 359/805/260 427/784/253 -f 358/807/262 426/806/261 357/808/263 -f 432/751/243 365/650/163 366/654/167 -f 331/653/166 330/649/162 401/748/241 -f 330/649/162 400/690/197 401/748/241 -f 367/658/171 368/809/264 433/750/242 -f 369/810/265 433/776/245 368/811/266 -f 434/778/247 369/810/265 435/779/248 -f 369/810/265 370/812/183 435/779/248 -f 435/779/248 370/812/183 436/780/249 -f 370/812/183 371/813/188 436/780/249 -f 437/715/215 371/813/188 372/716/192 -f 373/814/267 438/815/216 372/684/192 -f 32/816/3 357/808/263 426/806/261 -f 427/784/253 32/816/3 426/806/261 -f 438/717/3 32/816/3 437/715/215 -f 32/816/3 438/717/3 4/817/3 -f 374/818/138 438/819/268 373/613/130 -f 375/629/144 439/820/269 374/622/138 -f 439/820/269 375/629/144 440/821/270 -f 340/628/143 339/621/137 409/736/232 -f 441/731/228 376/635/149 442/822/271 -f 376/635/149 377/641/154 442/822/271 -f 443/823/272 377/641/154 378/648/161 -f 379/652/165 443/823/272 378/648/161 -f 380/656/169 444/824/273 379/652/165 -f 380/656/169 381/660/173 445/825/274 -f 382/826/275 445/827/274 381/660/173 -f 384/828/181 446/829/276 382/665/177 -f 385/830/186 447/831/277 384/828/181 -f 449/832/278 385/830/186 386/682/279 -f 387/833/193 449/832/280 386/682/141 -f 388/834/135 450/835/281 387/833/193 -f 452/836/282 388/834/135 389/627/283 -f 390/837/147 452/836/280 389/627/141 -f 391/838/152 453/839/284 390/837/147 -f 455/840/285 454/841/286 392/638/151 -f 392/638/151 383/842/287 455/840/285 -f 425/843/3 455/797/3 383/844/3 -f 455/797/3 4/817/3 439/798/3 -f 438/717/3 439/798/3 4/817/3 -f 414/845/4 413/846/4 415/759/4 -f 415/759/4 413/846/4 412/760/4 -f 413/846/4 456/847/4 412/760/4 -f 445/825/274 457/848/288 380/656/169 -f 444/824/273 380/656/169 457/849/288 -f 457/850/3 445/851/3 444/852/3 -f 446/853/3 447/786/3 445/851/3 -f 447/786/3 444/852/3 445/851/3 -f 441/731/228 440/821/270 375/629/144 -f 409/736/232 339/621/137 408/726/224 -f 46/854/2 47/855/2 460/856/2 -f 460/856/3 465/376/289 461/374/3 -f 459/857/4 462/858/290 458/859/4 -f 462/860/2 475/861/291 467/862/2 -f 466/863/2 464/864/2 460/856/2 -f 470/865/292 473/866/293 471/867/292 -f 475/861/291 470/865/292 471/867/292 -f 470/868/294 474/869/295 462/858/290 -f 464/870/2 477/871/296 476/872/297 -f 477/871/296 478/873/298 476/872/297 -f 479/874/298 480/875/299 478/873/298 -f 480/876/300 464/864/301 478/877/300 -f 473/866/293 472/878/302 468/879/303 -f 468/879/303 472/878/302 463/880/304 -f 481/881/305 469/882/306 480/875/299 -f 469/882/306 465/883/304 480/875/299 -f 50/884/8 496/885/11 51/886/11 -f 48/887/16 494/888/3 49/889/3 -f 46/890/15 492/891/1 47/892/1 -f 51/886/11 497/893/7 52/894/7 -f 49/889/3 495/895/8 50/884/8 -f 47/896/1 493/897/16 48/887/16 -f 45/898/4 491/899/15 46/890/15 -f 52/894/7 490/900/4 45/898/4 -f 92/408/36 94/901/7 96/902/7 -f 79/412/40 95/903/8 91/410/38 -f 498/431/56 104/487/88 105/432/57 -f 108/438/307 500/904/308 107/905/309 -f 498/284/310 106/446/55 500/906/311 -f 498/284/310 500/906/311 1/285/22 -f 111/442/64 110/433/58 501/435/60 -f 3/907/312 499/908/313 501/909/314 -f 501/909/314 499/908/313 111/440/64 -f 113/445/315 112/910/316 499/911/317 -f 499/911/317 108/438/307 113/445/315 -f 499/911/317 1/912/318 500/904/308 -f 107/436/69 500/906/311 106/446/55 -f 112/441/65 111/440/64 499/908/313 -f 114/913/71 119/914/319 115/915/319 -f 121/444/2 117/437/2 115/915/319 -f 296/916/4 302/225/4 294/917/4 -f 296/916/4 295/226/4 302/225/4 -f 337/683/191 336/677/187 406/918/320 -f 406/755/320 336/709/187 405/708/209 -f 48/919/2 458/859/2 47/855/2 -f 460/856/2 47/855/2 458/859/2 -f 91/425/50 97/920/321 102/423/49 -f 90/413/41 92/416/43 89/921/322 -f 68/922/80 69/428/53 79/412/40 -f 80/404/32 79/412/40 69/428/53 -f 82/402/31 71/923/82 83/409/37 -f 71/923/82 72/924/54 83/409/37 -f 81/401/30 70/427/52 82/402/31 -f 70/427/52 71/923/82 82/402/31 -f 423/741/237 356/646/159 422/734/230 -f 355/733/146 422/734/230 356/646/159 -f 392/638/151 454/841/286 391/838/152 -f 501/909/314 109/925/312 3/907/312 -f 40/389/25 42/926/26 43/390/26 -f 58/38/1 66/394/1 65/392/15 -f 56/33/4 64/395/4 63/393/7 -f 59/37/16 67/398/16 66/394/1 -f 57/32/15 65/392/15 64/395/4 -f 459/396/27 458/246/27 55/29/7 -f 54/248/8 61/452/8 60/397/3 -f 53/40/3 60/397/3 67/398/16 -f 461/399/28 61/452/8 54/248/8 -f 88/400/29 87/403/11 81/401/30 -f 87/403/11 86/927/323 80/404/32 -f 98/405/33 99/928/324 89/406/34 -f 84/407/35 89/406/34 92/408/36 -f 91/410/38 85/420/47 78/411/39 -f 90/413/41 89/921/322 99/414/42 -f 92/416/43 90/413/41 76/417/44 -f 100/419/46 78/411/39 85/420/47 -f 101/422/42 85/426/51 102/423/49 -f 107/436/61 116/929/61 117/437/62 -f 120/439/3 119/930/325 111/440/64 -f 111/442/64 119/931/325 118/443/66 -f 108/438/63 117/437/62 121/444/67 -f 106/446/55 115/932/326 116/447/4 -f 121/444/67 120/933/70 112/441/70 -f 114/448/71 115/934/326 106/430/55 -f 64/395/72 126/935/72 125/449/73 -f 62/450/9 124/936/79 123/451/74 -f 60/397/75 122/937/75 129/453/76 -f 66/394/77 128/938/77 127/454/78 -f 64/395/72 65/392/78 127/455/78 -f 62/457/9 63/393/73 125/458/73 -f 60/397/75 61/452/74 123/460/74 -f 67/398/76 129/939/76 128/462/77 -f 68/463/80 122/467/3 123/464/8 -f 75/466/81 129/476/16 122/467/3 -f 74/468/1 73/477/83 127/469/15 -f 71/471/82 125/479/7 126/472/4 -f 69/465/53 123/464/8 124/474/11 -f 74/468/1 128/470/1 129/476/16 -f 72/473/54 126/472/4 127/469/15 -f 70/478/52 124/940/11 125/479/7 -f 132/66/3 136/483/84 137/480/84 -f 131/481/4 135/484/85 134/482/85 -f 136/483/84 140/69/86 141/68/86 -f 135/484/85 139/941/87 138/485/87 -f 33/488/11 34/942/11 109/434/59 -f 109/434/59 110/433/58 104/487/88 -f 110/433/58 118/443/66 105/432/57 -f 104/487/88 110/433/58 105/432/57 -f 118/443/66 114/448/71 105/432/57 -f 98/405/33 84/407/35 72/489/54 -f 180/491/1 179/503/15 171/492/15 -f 185/494/7 184/506/11 176/495/11 -f 183/497/8 182/507/3 174/498/3 -f 181/500/16 180/943/1 172/501/1 -f 179/503/15 178/505/4 170/504/4 -f 178/505/4 185/494/7 177/496/7 -f 184/506/11 183/497/8 175/499/8 -f 182/507/3 181/500/16 173/502/16 -f 208/508/1 207/519/89 199/509/89 -f 206/511/2 205/520/90 197/512/90 -f 211/514/91 210/524/12 202/515/12 -f 209/517/92 208/508/1 200/510/1 -f 207/519/89 206/511/2 198/513/2 -f 205/520/90 204/944/11 196/521/11 -f 204/522/11 211/514/91 203/516/91 -f 210/524/12 209/517/92 201/518/92 -f 219/525/93 227/539/93 220/526/87 -f 225/528/94 226/544/95 218/529/95 -f 215/531/96 223/540/96 224/532/97 -f 221/534/98 222/547/99 214/535/99 -f 220/537/87 221/534/98 213/536/98 -f 218/529/95 226/544/95 227/539/93 -f 224/532/97 225/528/94 217/530/94 -f 214/535/99 222/547/99 223/540/96 -f 220/537/11 228/945/11 229/541/90 -f 227/539/91 235/548/91 228/542/11 -f 225/528/92 233/549/92 234/543/12 -f 223/540/89 231/550/89 232/545/1 -f 221/534/90 229/541/90 230/546/2 -f 226/544/12 234/543/12 235/548/91 -f 224/532/1 232/545/1 233/549/92 -f 222/547/2 230/546/2 231/550/89 -f 242/551/12 250/564/12 251/552/100 -f 240/554/4 248/565/4 249/555/101 -f 238/557/2 246/946/2 247/558/102 -f 236/560/3 244/563/3 245/561/103 -f 243/553/100 251/552/100 244/563/3 -f 241/556/101 249/555/101 250/564/12 -f 239/559/102 247/558/102 248/565/4 -f 237/562/103 245/561/103 246/566/2 -f 256/169/104 268/576/104 269/568/105 -f 263/178/106 275/577/106 264/569/3 -f 253/182/107 265/578/107 266/570/108 -f 260/170/109 272/579/109 273/571/12 -f 257/166/105 269/568/105 270/572/4 -f 254/184/108 266/570/108 267/573/2 -f 261/357/12 273/571/12 274/574/110 -f 258/355/4 270/572/4 271/575/111 -f 255/356/2 267/947/2 268/576/104 -f 262/176/110 274/574/110 275/577/106 -f 252/358/3 264/569/3 265/578/107 -f 259/164/111 271/575/111 272/579/109 -f 286/206/112 287/214/112 283/188/113 -f 283/188/113 282/190/114 284/208/114 -f 284/208/114 282/190/114 279/192/115 -f 40/389/25 41/391/25 36/366/116 -f 38/580/26 304/948/26 305/581/25 -f 35/368/116 39/582/25 305/581/25 -f 310/583/117 293/586/117 288/584/118 -f 293/586/117 310/583/117 311/587/119 -f 290/589/120 292/588/119 311/587/119 -f 302/224/2 277/949/2 276/950/2 -f 307/235/2 278/234/115 279/192/115 -f 302/224/2 276/950/2 307/235/2 -f 312/592/121 294/593/121 290/589/120 -f 294/593/121 312/592/121 313/594/122 -f 295/596/123 296/595/122 313/594/122 -f 297/598/124 295/596/1 314/597/1 -f 297/600/124 315/951/124 316/601/125 -f 301/603/2 300/602/125 316/601/125 -f 299/605/126 301/603/127 317/604/127 -f 298/607/128 299/605/126 318/606/126 -f 288/584/118 298/607/128 319/608/128 -f 320/228/1 281/372/1 287/214/112 -f 68/610/80 78/411/39 100/419/46 -f 338/612/129 374/818/138 373/613/130 -f 326/615/132 361/625/132 360/616/133 -f 353/618/134 389/627/283 388/619/135 -f 339/621/137 375/629/144 374/622/138 -f 327/624/139 362/631/139 361/625/132 -f 354/626/140 390/633/147 389/627/141 -f 340/628/143 376/635/149 375/629/144 -f 328/630/145 363/952/145 362/631/139 -f 355/632/146 391/639/152 390/633/147 -f 341/634/148 377/641/154 376/635/149 -f 364/636/150 363/952/150 328/630/150 -f 355/632/146 356/646/159 392/638/151 -f 342/640/153 378/648/161 377/641/154 -f 347/645/158 383/842/287 392/638/151 -f 343/647/160 379/652/165 378/648/161 -f 330/649/162 366/654/167 365/650/163 -f 344/651/164 380/656/169 379/652/165 -f 331/653/166 367/658/171 366/654/167 -f 345/655/168 381/660/173 380/656/169 -f 332/657/170 368/953/264 367/658/171 -f 346/659/172 382/665/275 381/660/173 -f 333/661/174 369/667/174 368/662/175 -f 348/664/176 384/669/181 382/665/177 -f 334/666/179 370/671/183 369/667/174 -f 349/668/180 385/676/186 384/669/181 -f 335/670/182 371/678/188 370/671/183 -f 323/672/184 358/680/184 357/673/11 -f 350/675/185 386/682/279 385/676/186 -f 336/677/187 372/684/192 371/678/188 -f 324/679/189 359/685/189 358/680/184 -f 351/681/190 387/686/193 386/682/141 -f 337/683/191 373/814/267 372/684/192 -f 325/617/133 360/616/133 359/685/189 -f 352/620/136 388/619/135 387/686/193 -f 341/634/148 410/735/231 411/687/194 -f 398/643/156 329/642/155 365/650/163 -f 343/647/160 342/640/153 411/687/194 -f 329/642/155 399/644/157 400/690/197 -f 346/692/172 345/655/168 413/693/198 -f 333/695/200 332/954/327 401/696/201 -f 348/698/176 346/659/178 414/699/203 -f 349/703/180 348/698/176 415/700/204 -f 349/703/180 416/704/206 417/707/208 -f 335/705/182 404/706/207 405/708/209 -f 324/710/210 323/739/235 393/711/211 -f 351/713/190 350/675/142 417/707/213 -f 352/719/136 351/713/190 418/714/214 -f 338/612/129 337/614/131 406/721/219 -f 326/723/221 325/747/240 395/718/217 -f 352/719/136 419/720/218 420/725/223 -f 326/723/221 396/724/222 397/727/225 -f 354/729/140 353/618/142 420/725/213 -f 355/733/146 354/729/140 421/730/227 -f 383/742/2 347/955/2 424/743/238 -f 425/744/238 424/743/238 2/745/239 -f 399/738/234 397/727/225 403/702/205 -f 395/718/217 405/708/209 404/706/207 -f 31/753/4 405/708/209 394/712/212 -f 411/758/4 410/762/4 415/759/4 -f 416/761/4 415/759/4 410/762/4 -f 423/771/4 2/754/4 424/772/4 -f 435/779/248 430/781/250 431/777/246 -f 428/783/252 429/782/251 436/780/249 -f 443/785/3 444/852/3 447/786/3 -f 442/787/3 447/786/3 448/788/3 -f 430/781/250 429/782/251 361/803/258 -f 361/803/258 429/782/251 428/783/252 -f 360/804/259 428/783/252 427/784/253 -f 426/806/261 358/807/262 359/805/260 -f 432/751/243 431/799/254 365/650/163 -f 369/810/265 434/778/247 433/776/245 -f 437/715/215 436/780/249 371/813/188 -f 427/784/253 437/715/215 32/816/3 -f 374/818/138 439/820/269 438/819/268 -f 443/823/272 442/822/271 377/641/154 -f 379/652/165 444/824/273 443/823/272 -f 382/826/275 446/956/328 445/827/274 -f 384/828/181 447/831/277 446/829/276 -f 385/830/186 448/957/329 447/831/277 -f 449/832/278 448/957/329 385/830/186 -f 387/833/193 450/835/281 449/832/280 -f 388/834/135 451/958/330 450/835/281 -f 452/836/282 451/958/330 388/834/135 -f 390/837/147 453/839/284 452/836/280 -f 391/838/152 454/841/286 453/839/284 -f 425/843/3 4/817/3 455/797/3 -f 460/856/3 464/864/301 465/376/289 -f 459/857/4 463/959/331 462/858/290 -f 462/860/2 474/960/332 475/861/291 -f 460/856/2 458/859/2 467/961/2 -f 458/859/2 462/858/2 467/961/2 -f 467/961/2 466/863/2 460/856/2 -f 470/865/292 472/878/302 473/866/293 -f 475/861/291 474/960/332 470/865/292 -f 462/858/290 463/959/331 472/962/294 -f 472/962/294 470/868/294 462/858/290 -f 464/870/2 466/963/2 477/871/296 -f 477/871/296 479/874/298 478/873/298 -f 479/874/298 481/881/305 480/875/299 -f 465/376/289 464/864/301 480/876/300 -f 464/864/301 476/964/333 478/877/300 -f 50/884/8 495/895/8 496/885/11 -f 48/887/16 493/897/16 494/888/3 -f 46/890/15 491/899/15 492/891/1 -f 51/886/11 496/885/11 497/893/7 -f 49/889/3 494/888/3 495/895/8 -f 47/896/1 492/965/1 493/897/16 -f 45/898/4 490/900/4 491/899/15 -f 52/894/7 497/893/7 490/900/4 -f 88/400/29 82/402/31 96/902/7 -f 82/402/31 83/409/37 96/902/7 -f 83/409/37 92/408/36 96/902/7 -f 79/412/40 80/404/32 95/903/8 -f 80/404/32 86/927/323 95/903/8 -f 95/903/8 93/966/8 91/410/38 -f 499/911/317 500/904/308 108/438/307 -f 499/911/317 3/967/318 1/912/318 -f 114/913/71 118/968/66 119/914/319 -f 117/437/2 116/969/2 115/915/319 -f 115/915/319 119/914/319 121/444/2 -f 119/914/319 120/970/2 121/444/2 -f 91/425/50 93/971/12 97/920/321 -l 355 423 -o Trigger_Plane.002 -v 0.125000 1.562500 1.111670 -v -0.125000 1.812500 0.861670 -v -0.125000 1.562500 1.111670 -v 0.125000 1.812500 0.861670 -v 0.125000 1.641741 0.941738 -v -0.125000 1.641741 0.941738 -v 0.125000 1.641741 0.754238 -v -0.125000 1.641741 0.754238 -v 0.125000 1.534195 0.600647 -v -0.125000 1.534195 0.600647 -v 0.125000 1.431801 0.528950 -v -0.125000 1.431801 0.528950 -v -0.125000 1.750000 0.754238 -v 0.125000 1.750000 0.754238 -v -0.125000 1.589303 0.562727 -v 0.125000 1.589303 0.562727 -vt 0.582090 0.358209 -vt 0.578358 0.365672 -vt 0.582090 0.365672 -vt 0.582090 0.376866 -vt 0.597015 0.365672 -vt 0.600746 0.365672 -vt 0.597015 0.358209 -vt 0.597015 0.376866 -vt 0.574627 0.380597 -vt 0.582090 0.391791 -vt 0.582090 0.380597 -vt 0.574627 0.391791 -vt 0.582090 0.410448 -vt 0.582090 0.399254 -vt 0.597015 0.391791 -vt 0.604478 0.380597 -vt 0.597015 0.380597 -vt 0.604478 0.391791 -vt 0.597015 0.399254 -vt 0.597015 0.410448 -vt 0.570895 0.391791 -vt 0.608209 0.391791 -vt 0.582090 0.324627 -vt 0.597015 0.332090 -vt 0.597015 0.324627 -vt 0.582090 0.347015 -vt 0.597015 0.347015 -vt 0.582090 0.332090 -vn 1.0000 0.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 0.0000 -0.9763 -0.2164 -vn 0.0000 -0.9063 -0.4226 -vn 0.0000 -0.9537 0.3007 -vn 0.0000 -0.7071 0.7071 -vn 0.0000 -0.5736 0.8192 -vn 0.0000 0.8644 -0.5029 -vn 0.0000 0.8182 -0.5749 -vn 0.0000 0.5158 -0.8567 -vn 0.0000 0.2097 -0.9778 -usemtl Material.001 -s off -f 512/972/334 517/973/334 510/974/334 -f 517/973/334 508/975/334 510/974/334 -f 511/976/335 516/977/335 513/978/335 -f 509/979/335 516/977/335 511/976/335 -f 515/980/334 506/981/334 508/982/334 -f 505/983/334 502/984/334 506/985/334 -f 507/986/335 514/987/335 509/988/335 -f 503/989/335 507/990/335 504/991/335 -f 517/973/334 515/980/334 508/975/334 -f 509/979/335 514/987/335 516/977/335 -f 515/980/334 505/992/334 506/981/334 -f 507/986/335 503/993/335 514/987/335 -s 1 -f 507/990/336 502/984/337 504/991/337 -f 509/988/338 506/981/336 507/986/336 -f 511/976/339 508/975/338 509/979/338 -f 513/978/340 510/974/339 511/976/339 -f 505/994/341 514/995/342 503/996/341 -f 514/995/342 517/997/343 516/998/343 -f 513/978/344 517/997/343 512/972/344 -f 507/990/336 506/985/336 502/984/337 -f 509/988/338 508/982/338 506/981/336 -f 511/976/339 510/974/339 508/975/338 -f 513/978/340 512/972/340 510/974/339 -f 505/994/341 515/999/342 514/995/342 -f 514/995/342 515/999/342 517/997/343 -f 513/978/344 516/998/343 517/997/343 -o Bolt_Plane.001 -v 0.343750 1.312500 1.674170 -v 0.343750 3.250000 1.674170 -v 0.343750 1.312500 1.986670 -v 0.343750 3.250000 1.986670 -v 0.343750 3.341529 1.765699 -v 0.343750 3.341529 1.895141 -v 0.343750 1.220971 1.895141 -v 0.343750 1.220971 1.765699 -v 0.375000 1.338388 1.736670 -v 0.375000 3.224112 1.736670 -v 0.375000 1.338388 1.924170 -v 0.375000 3.224112 1.924170 -v 0.375000 3.279029 1.791587 -v 0.375000 3.279029 1.869253 -v 0.375000 1.283471 1.869253 -v 0.375000 1.283471 1.791587 -v 0.375000 1.619638 1.947047 -v 0.375000 1.557138 1.947047 -v 0.375000 1.503012 1.915797 -v 0.375000 1.471762 1.861670 -v 0.375000 1.471762 1.799170 -v 0.375000 1.503012 1.745044 -v 0.375000 1.557138 1.713794 -v 0.375000 1.619638 1.713794 -v 0.375000 1.673765 1.745044 -v 0.375000 1.705015 1.799170 -v 0.375000 1.705015 1.861670 -v 0.375000 1.673765 1.915797 -v 0.625000 1.619638 1.947047 -v 0.625000 1.557138 1.947047 -v 0.625000 1.503012 1.915797 -v 0.625000 1.471762 1.861670 -v 0.625000 1.471762 1.799170 -v 0.625000 1.503012 1.745043 -v 0.625000 1.557138 1.713793 -v 0.625000 1.619638 1.713793 -v 0.625000 1.673765 1.745043 -v 0.625000 1.705015 1.799170 -v 0.625000 1.705015 1.861670 -v 0.625000 1.673765 1.915797 -vt 0.595015 0.509462 -vt 0.587553 0.507463 -vt 0.582090 0.512926 -vt 0.597015 0.500000 -vt 0.593284 0.507463 -vt 0.597015 0.503731 -vt 0.593284 0.507463 -vt 0.589552 0.500000 -vt 0.589552 0.503731 -vt 0.582090 0.516925 -vt 0.584089 0.520388 -vt 0.587553 0.522388 -vt 0.591552 0.522388 -vt 0.595015 0.520388 -vt 0.597015 0.516925 -vt 0.597015 0.512926 -vt 0.591552 0.507463 -vt 0.584089 0.509462 -vt 0.593284 0.496269 -vt 0.593284 0.496269 -vt 0.570895 0.507463 -vt 0.567164 0.500000 -vt 0.570895 0.500000 -vt 0.570895 0.492537 -vt 0.567164 0.492537 -vt 0.570895 0.485075 -vt 0.570895 0.369403 -vt 0.567164 0.361940 -vt 0.570895 0.361940 -vt 0.567164 0.354478 -vt 0.570895 0.354478 -vt 0.570895 0.347015 -vt 0.567164 0.623134 -vt 0.570895 0.623134 -vt 0.567164 0.485075 -vt 0.574627 0.567164 -vt 0.582090 0.563433 -vt 0.570895 0.563433 -vt 0.597015 0.529851 -vt 0.582090 0.526119 -vt 0.582090 0.529851 -vt 0.597015 0.555970 -vt 0.582090 0.552239 -vt 0.582090 0.555970 -vt 0.597015 0.544776 -vt 0.582090 0.541045 -vt 0.582090 0.544776 -vt 0.597015 0.533582 -vt 0.582090 0.533582 -vt 0.597015 0.559702 -vt 0.582090 0.559702 -vt 0.597015 0.567164 -vt 0.582090 0.563433 -vt 0.582090 0.567164 -vt 0.597015 0.548507 -vt 0.582090 0.548507 -vt 0.597015 0.537313 -vt 0.582090 0.537313 -vt 0.597015 0.563433 -vt 0.597015 0.526119 -vt 0.582090 0.522388 -vt 0.597015 0.552239 -vt 0.597015 0.541045 -vt 0.582090 0.451493 -vt 0.574627 0.447761 -vt 0.578358 0.447761 -vt 0.567164 0.507463 -vt 0.567164 0.369403 -vt 0.567164 0.347015 -vt 0.578358 0.567164 -vt 0.597015 0.522388 -vt 0.570895 0.451493 -vn 1.0000 0.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn 0.9078 0.1605 0.3874 -vn 0.9644 0.2444 0.1012 -vn 0.9078 0.3874 0.1605 -vn 0.9078 0.3874 -0.1605 -vn 0.9644 0.2444 -0.1012 -vn 0.9078 0.1605 -0.3874 -vn 0.9078 -0.1605 -0.3874 -vn 0.9644 -0.2444 -0.1012 -vn 0.9078 -0.3874 -0.1605 -vn 0.9644 -0.2444 0.1012 -vn 0.9078 -0.3874 0.1605 -vn 0.9078 -0.1605 0.3874 -vn 0.9644 -0.1012 0.2444 -vn 0.9644 0.1012 -0.2444 -vn 0.9644 -0.1012 -0.2444 -vn 0.0000 -0.9659 0.2588 -vn 0.0000 -0.7071 0.7071 -vn 0.0000 0.9659 0.2588 -vn 0.0000 0.9659 -0.2588 -vn -0.0000 0.2588 -0.9659 -vn -0.0000 -0.2588 -0.9659 -vn 0.0000 -0.9659 -0.2588 -vn 0.0000 0.7071 0.7071 -vn 0.0000 -0.2588 0.9659 -vn 0.0000 0.2588 0.9659 -vn -0.0000 0.7071 -0.7071 -vn -0.0000 -0.7071 -0.7071 -vn 0.9644 0.1012 0.2444 -usemtl Material.001 -s off -f 554/1000/345 556/1001/345 546/1002/345 -f 534/1003/346 536/1004/346 535/1005/346 -f 539/1006/346 541/1007/346 540/1008/346 -f 546/1002/345 547/1009/345 548/1010/345 -f 548/1010/345 549/1011/345 550/1012/345 -f 550/1012/345 551/1013/345 554/1000/345 -f 551/1013/345 552/1014/345 554/1000/345 -f 552/1014/345 553/1015/345 554/1000/345 -f 554/1000/345 555/1016/345 556/1001/345 -f 556/1001/345 557/1017/345 546/1002/345 -f 546/1002/345 548/1010/345 554/1000/345 -f 548/1010/345 550/1012/345 554/1000/345 -f 534/1003/346 545/1018/346 536/1004/346 -f 539/1006/346 542/1019/346 541/1007/346 -s 1 -f 521/1020/347 531/1021/348 523/1022/349 -f 522/1023/350 531/1021/348 530/1024/351 -f 530/1024/351 519/1025/352 522/1023/350 -f 518/1026/353 533/1027/354 525/1028/355 -f 525/1028/355 532/1029/356 524/1030/357 -f 532/1029/356 520/1031/358 524/1030/357 -f 528/1032/359 521/1020/347 520/1033/358 -f 527/1034/360 518/1026/353 519/1025/352 -f 532/1035/356 526/1036/361 528/1037/359 -f 549/1038/362 536/1039/363 537/1040/362 -f 556/1041/364 543/1042/365 544/1043/364 -f 553/1044/366 540/1045/367 541/1046/366 -f 550/1047/368 537/1040/362 538/1048/368 -f 557/1049/369 544/1043/364 545/1050/369 -f 547/1051/370 534/1052/371 535/1053/370 -f 554/1054/372 541/1046/366 542/1055/372 -f 551/1056/373 538/1048/368 539/1057/373 -f 546/1058/371 545/1050/369 534/1052/371 -f 548/1059/363 535/1060/370 536/1039/363 -f 555/1061/365 542/1055/372 543/1042/365 -f 552/1062/367 539/1057/373 540/1045/367 -f 527/1063/360 528/1037/359 526/1036/361 -f 531/1064/348 527/1063/360 530/1065/351 -f 521/1020/347 529/1066/374 531/1021/348 -f 522/1023/350 523/1022/349 531/1021/348 -f 530/1024/351 527/1034/360 519/1025/352 -f 518/1026/353 526/1067/361 533/1027/354 -f 525/1028/355 533/1027/354 532/1029/356 -f 532/1029/356 528/1068/359 520/1031/358 -f 528/1032/359 529/1066/374 521/1020/347 -f 527/1034/360 526/1067/361 518/1026/353 -f 532/1035/356 533/1069/354 526/1036/361 -f 549/1038/362 548/1059/363 536/1039/363 -f 556/1041/364 555/1061/365 543/1042/365 -f 553/1044/366 552/1062/367 540/1045/367 -f 550/1047/368 549/1038/362 537/1040/362 -f 557/1049/369 556/1041/364 544/1043/364 -f 547/1051/370 546/1058/371 534/1052/371 -f 554/1054/372 553/1044/366 541/1046/366 -f 551/1056/373 550/1047/368 538/1048/368 -f 546/1058/371 557/1049/369 545/1050/369 -f 548/1059/363 547/1070/370 535/1060/370 -f 555/1061/365 554/1054/372 542/1055/372 -f 552/1062/367 551/1056/373 539/1057/373 -f 527/1063/360 529/1071/374 528/1037/359 -f 531/1064/348 529/1071/374 527/1063/360 -o Suppressor_Circle -v -0.125000 -16.750000 1.861670 -v -0.088388 -16.750000 1.950058 -v 0.000000 -16.750000 1.986670 -v 0.088388 -16.750000 1.950058 -v 0.125000 -16.750000 1.861670 -v 0.088388 -16.750000 1.773282 -v -0.000000 -16.750000 1.736670 -v -0.088388 -16.750000 1.773282 -v -0.125000 -11.875000 1.861670 -v -0.088388 -11.875000 1.950058 -v 0.000000 -11.875000 1.986670 -v 0.088388 -11.875000 1.950058 -v 0.125000 -11.875000 1.861670 -v 0.088388 -11.875000 1.773282 -v -0.000000 -11.875000 1.736670 -v -0.088388 -11.875000 1.773282 -v -0.562500 -11.875000 1.861670 -v -0.487139 -11.875000 2.142920 -v -0.281250 -11.875000 2.348809 -v 0.000000 -11.875000 2.424170 -v 0.281250 -11.875000 2.348809 -v 0.487139 -11.875000 2.142920 -v 0.562500 -11.875000 1.861670 -v 0.487139 -11.875000 1.580420 -v 0.281250 -11.875000 1.374531 -v -0.000000 -11.875000 1.299170 -v -0.281250 -11.875000 1.374531 -v -0.487139 -11.875000 1.580420 -v -0.562500 -16.750000 1.861670 -v -0.487139 -16.750000 2.142920 -v -0.281250 -16.750000 2.348809 -v 0.000000 -16.750000 2.424170 -v 0.281250 -16.750000 2.348809 -v 0.487139 -16.750000 2.142920 -v 0.562500 -16.750000 1.861670 -v 0.487139 -16.750000 1.580420 -v 0.281250 -16.750000 1.374531 -v -0.000000 -16.750000 1.299170 -v -0.281250 -16.750000 1.374531 -v -0.487139 -16.750000 1.580420 -vt 0.287313 0.361940 -vt -0.000000 0.354478 -vt 0.287313 0.354478 -vt 0.287313 0.376866 -vt -0.000000 0.369403 -vt 0.287313 0.369403 -vt 0.287313 0.391791 -vt -0.000000 0.384328 -vt 0.287313 0.384328 -vt 0.287313 0.347015 -vt -0.000000 0.339552 -vt 0.287313 0.339552 -vt -0.000000 0.347015 -vt -0.000000 0.361940 -vt -0.000000 0.376866 -vt -0.000000 0.332090 -vt 0.287313 0.332090 -vt 0.026119 0.410448 -vt 0.026119 0.429104 -vt -0.000000 0.421642 -vt 0.026119 0.485075 -vt -0.000000 0.500000 -vt -0.000000 0.492537 -vt 0.026119 0.522388 -vt 0.026119 0.541045 -vt 0.000000 0.533582 -vt 0.000000 0.511194 -vt 0.026119 0.503731 -vt 0.000000 0.555970 -vt 0.026119 0.559702 -vt -0.000000 0.611940 -vt 0.026119 0.597015 -vt 0.026119 0.615672 -vt 0.000000 0.444030 -vt 0.000000 0.436567 -vt 0.000000 0.399254 -vt 0.026119 0.391791 -vt 0.026119 0.466418 -vt -0.000000 0.455224 -vt 0.026119 0.447761 -vt 0.313433 0.615672 -vt 0.313433 0.597015 -vt 0.313433 0.466418 -vt 0.313433 0.447761 -vt 0.313433 0.429104 -vt 0.313433 0.541045 -vt 0.313433 0.522388 -vt 0.026119 0.578358 -vt 0.313433 0.578358 -vt 0.313433 0.410448 -vt 0.313433 0.503731 -vt 0.313433 0.559702 -vt 0.313433 0.391791 -vt 0.313433 0.485075 -vt 0.376007 0.565419 -vt 0.376007 0.598760 -vt 0.347015 0.615672 -vt 0.000000 0.477612 -vt -0.000000 0.589552 -vt -0.000000 0.567164 -vt -0.000000 0.574627 -vt -0.000000 0.391791 -vt -0.000000 0.518657 -vt 0.000000 0.548507 -vt 0.000000 0.604478 -vt 0.000000 0.406716 -vt 0.000000 0.462687 -vt 0.330345 0.611081 -vt 0.318023 0.598760 -vt 0.313433 0.582090 -vt 0.318023 0.565419 -vt 0.330345 0.553098 -vt 0.347015 0.548507 -vt 0.363685 0.553098 -vt 0.380597 0.582090 -vt 0.363685 0.611081 -vn 0.0000 0.0000 1.0000 -vn 0.7071 0.0000 0.7071 -vn -1.0000 0.0000 0.0000 -vn -0.7071 0.0000 0.7071 -vn -0.0000 0.0000 -1.0000 -vn -0.7071 0.0000 -0.7071 -vn 1.0000 0.0000 0.0000 -vn 0.7071 0.0000 -0.7071 -vn 0.0000 -1.0000 -0.0000 -vn 0.5000 0.0000 0.8660 -vn -0.8660 0.0000 -0.5000 -vn -0.5000 0.0000 -0.8660 -vn -0.8660 0.0000 0.5000 -vn 0.8660 0.0000 -0.5000 -vn 0.5000 0.0000 -0.8660 -vn 0.8660 0.0000 0.5000 -vn -0.5000 0.0000 0.8660 -vn 0.0000 1.0000 -0.0000 -usemtl Material.001 -s 1 -f 564/1072/375 573/1073/376 565/1074/376 -f 562/1075/377 571/1076/378 563/1077/378 -f 560/1078/379 569/1079/380 561/1080/380 -f 558/1081/381 567/1082/382 559/1083/382 -f 558/1081/381 573/1073/376 566/1084/381 -f 563/1077/378 572/1085/375 564/1072/375 -f 562/1075/377 569/1079/380 570/1086/377 -f 559/1083/382 568/1087/379 560/1088/379 -f 588/1089/383 587/1090/383 559/1091/383 -f 596/1092/383 564/1093/383 565/1094/383 -f 594/1095/383 593/1096/383 563/1097/383 -f 594/1095/383 564/1098/383 595/1099/383 -f 562/1100/383 593/1096/383 592/1101/383 -f 560/1102/383 590/1103/383 589/1104/383 -f 587/1090/383 558/1105/383 559/1106/383 -f 588/1089/383 560/1107/383 589/1108/383 -f 597/1109/383 558/1110/383 586/1111/383 -f 577/1112/375 590/1103/384 578/1113/384 -f 585/1114/385 596/1092/386 597/1109/385 -f 574/1115/377 587/1090/387 575/1116/387 -f 581/1117/388 594/1095/389 582/1118/389 -f 578/1113/384 591/1119/390 579/1120/390 -f 585/1114/385 586/1111/377 574/1115/377 -f 575/1116/387 588/1089/391 576/1121/391 -f 582/1118/389 595/1099/379 583/1122/379 -f 579/1120/390 592/1101/381 580/1123/381 -f 577/1124/375 588/1089/391 589/1108/375 -f 583/1122/379 596/1092/386 584/1125/386 -f 580/1123/381 593/1096/388 581/1117/388 -f 582/1126/392 584/1127/392 574/1128/392 -f 597/1109/383 596/1092/383 565/1129/383 -f 591/1119/383 590/1103/383 561/1130/383 -f 562/1131/383 591/1119/383 561/1132/383 -f 564/1072/375 572/1085/375 573/1073/376 -f 562/1075/377 570/1086/377 571/1076/378 -f 560/1078/379 568/1133/379 569/1079/380 -f 558/1081/381 566/1084/381 567/1082/382 -f 558/1081/381 565/1074/376 573/1073/376 -f 563/1077/378 571/1076/378 572/1085/375 -f 562/1075/377 561/1080/380 569/1079/380 -f 559/1083/382 567/1082/382 568/1087/379 -f 596/1092/383 595/1099/383 564/1093/383 -f 594/1095/383 563/1134/383 564/1098/383 -f 562/1100/383 563/1135/383 593/1096/383 -f 560/1102/383 561/1136/383 590/1103/383 -f 587/1090/383 586/1111/383 558/1105/383 -f 588/1089/383 559/1137/383 560/1107/383 -f 597/1109/383 565/1138/383 558/1110/383 -f 577/1112/375 589/1104/375 590/1103/384 -f 585/1114/385 584/1125/386 596/1092/386 -f 574/1115/377 586/1111/377 587/1090/387 -f 581/1117/388 593/1096/388 594/1095/389 -f 578/1113/384 590/1103/384 591/1119/390 -f 585/1114/385 597/1109/385 586/1111/377 -f 575/1116/387 587/1090/387 588/1089/391 -f 582/1118/389 594/1095/389 595/1099/379 -f 579/1120/390 591/1119/390 592/1101/381 -f 577/1124/375 576/1121/391 588/1089/391 -f 583/1122/379 595/1099/379 596/1092/386 -f 580/1123/381 592/1101/381 593/1096/388 -f 574/1128/392 575/1139/392 576/1140/392 -f 576/1140/392 577/1141/392 578/1142/392 -f 578/1142/392 579/1143/392 580/1144/392 -f 580/1144/392 581/1145/392 578/1142/392 -f 581/1145/392 582/1126/392 578/1142/392 -f 582/1126/392 583/1146/392 584/1127/392 -f 584/1127/392 585/1147/392 574/1128/392 -f 574/1128/392 576/1140/392 582/1126/392 -f 576/1140/392 578/1142/392 582/1126/392 -f 562/1131/383 592/1101/383 591/1119/383 -o Mag_Lower_Circle.001 -v 0.239382 -3.780985 2.049170 -v -0.239382 -3.780985 2.049170 -v -0.239382 -3.780985 2.111670 -v 0.239382 -3.780985 2.111670 -v -2.250000 -1.500000 2.049170 -v -2.173333 -2.082343 2.049170 -v -1.948557 -2.625000 2.049170 -v -1.590990 -3.090990 2.049170 -v -1.125000 -3.448557 2.049170 -v -0.582343 -3.673333 2.049170 -v -2.250000 -1.500000 2.111670 -v 0.582343 -3.673333 2.049170 -v 1.125000 -3.448557 2.049170 -v 1.590990 -3.090990 2.049170 -v 1.948557 -2.625000 2.049170 -v 2.173333 -2.082343 2.049170 -v 2.250000 -1.500000 2.049170 -v 2.173333 -0.917657 2.049170 -v 1.948557 -0.375000 2.049170 -v 1.590990 0.090990 2.049170 -v 1.125000 0.448557 2.049170 -v 0.582343 0.673333 2.049170 -v -0.000000 0.750000 2.049170 -v -0.582343 0.673333 2.049170 -v -1.125000 0.448557 2.049170 -v -1.590990 0.090991 2.049170 -v -1.948557 -0.375000 2.049170 -v -2.173333 -0.917658 2.049170 -v -1.948557 -2.625000 2.111670 -v 0.239382 -3.718485 2.049170 -v -2.173333 -2.082343 2.111670 -v -0.239382 -3.718485 2.049170 -v -1.590990 -3.090990 2.111670 -v -1.125000 -3.448557 2.111670 -v -0.582343 -3.673333 2.111670 -v 0.582343 -3.673333 2.111670 -v 1.125000 -3.448557 2.111670 -v 1.590990 -3.090990 2.111670 -v 1.948557 -2.625000 2.111670 -v 2.173333 -2.082343 2.111670 -v 2.250000 -1.500000 2.111670 -v 2.173333 -0.917657 2.111670 -v 1.948557 -0.375000 2.111670 -v 1.590990 0.090990 2.111670 -v 1.125000 0.448557 2.111670 -v 0.582343 0.673333 2.111670 -v -0.000000 0.750000 2.111670 -v -0.582343 0.673333 2.111670 -v -1.125000 0.448557 2.111670 -v -1.590990 0.090991 2.111670 -v -1.948557 -0.375000 2.111670 -v -2.173333 -0.917658 2.111670 -v 0.239382 -3.718485 2.111670 -v -0.239382 -3.718485 2.111670 -vt 0.148620 0.891768 -vt 0.148620 0.895526 -vt 0.120037 0.891768 -vt 0.308001 0.854042 -vt 0.286653 0.826028 -vt 0.388694 0.891765 -vt 0.022388 0.619403 -vt 0.018657 0.623134 -vt 0.022388 0.623134 -vt 0.018657 0.619403 -vt 0.000000 0.623134 -vt 0.391791 0.615672 -vt 0.388060 0.619403 -vt 0.391791 0.619403 -vt 0.120037 0.895526 -vt 0.099562 0.889054 -vt 0.067164 0.875541 -vt 0.039344 0.854046 -vt 0.017997 0.826032 -vt 0.004577 0.793409 -vt 0.000000 0.758400 -vt 0.004577 0.723392 -vt 0.017997 0.690770 -vt 0.039344 0.662756 -vt 0.067164 0.641260 -vt 0.099562 0.627747 -vt 0.134328 0.623138 -vt 0.169095 0.627747 -vt 0.201493 0.641260 -vt 0.229313 0.662756 -vt 0.250660 0.690770 -vt 0.264080 0.723392 -vt 0.268657 0.758403 -vt 0.264080 0.793409 -vt 0.250660 0.826032 -vt 0.229313 0.854046 -vt 0.201493 0.875541 -vt 0.169095 0.889054 -vt 0.417277 0.891765 -vt 0.417276 0.895522 -vt 0.388694 0.895522 -vt 0.368218 0.889050 -vt 0.335821 0.875538 -vt 0.470149 0.875538 -vt 0.437752 0.889050 -vt 0.519317 0.826028 -vt 0.497970 0.854042 -vt 0.537313 0.758398 -vt 0.532736 0.793405 -vt 0.519317 0.690766 -vt 0.532736 0.723389 -vt 0.470149 0.641256 -vt 0.497970 0.662752 -vt 0.402985 0.623134 -vt 0.437752 0.627744 -vt 0.335821 0.641256 -vt 0.368218 0.627744 -vt 0.286653 0.690766 -vt 0.308001 0.662752 -vt 0.268657 0.758395 -vt 0.273234 0.723389 -vt 0.273234 0.793405 -vt 0.000000 0.619403 -vt 0.388060 0.615672 -vt 0.302239 0.615672 -vt 0.268657 0.619403 -vt 0.302239 0.619403 -vt 0.410448 0.619403 -vt 0.376866 0.623134 -vt 0.410448 0.623134 -vt 0.175373 0.619403 -vt 0.141791 0.623134 -vt 0.175373 0.623134 -vt 0.335821 0.615672 -vt 0.335821 0.619403 -vt 0.033582 0.615672 -vt -0.000000 0.619403 -vt 0.033582 0.619403 -vt 0.208955 0.619403 -vt 0.208955 0.623134 -vt 0.369403 0.615672 -vt 0.369403 0.619403 -vt 0.067164 0.615672 -vt 0.067164 0.619403 -vt 0.242537 0.619403 -vt 0.242537 0.623134 -vt 0.100746 0.615672 -vt 0.100746 0.619403 -vt 0.276119 0.619403 -vt 0.276119 0.623134 -vt 0.041045 0.619403 -vt 0.041045 0.623134 -vt 0.134328 0.615672 -vt 0.134328 0.619403 -vt 0.309702 0.619403 -vt 0.309702 0.623134 -vt 0.074627 0.619403 -vt 0.074627 0.623134 -vt 0.167910 0.615672 -vt 0.167910 0.619403 -vt 0.235075 0.615672 -vt 0.201493 0.619403 -vt 0.235075 0.619403 -vt 0.343284 0.619403 -vt 0.343284 0.623134 -vt 0.108209 0.619403 -vt 0.108209 0.623134 -vt 0.201493 0.615672 -vt 0.268657 0.615672 -vt 0.376866 0.619403 -vt 0.141791 0.619403 -vt 0.000000 0.615672 -vn 0.0000 0.0000 1.0000 -vn 0.0000 0.0000 -1.0000 -vn 1.0000 0.0000 0.0000 -vn 0.0000 -1.0000 0.0000 -vn -1.0000 0.0000 0.0000 -vn -0.7071 -0.7071 0.0000 -vn -0.8660 -0.5000 0.0000 -vn -0.0000 1.0000 0.0000 -vn 0.2588 0.9659 0.0000 -vn 0.9659 -0.2588 0.0000 -vn 0.8660 -0.5000 0.0000 -vn -0.5000 -0.8660 0.0000 -vn -0.2588 0.9659 0.0000 -vn -0.2588 -0.9659 0.0000 -vn -0.5000 0.8660 0.0000 -vn 0.9659 0.2588 0.0000 -vn -0.7071 0.7071 0.0000 -vn 0.8660 0.5000 0.0000 -vn 0.2588 -0.9659 0.0000 -vn 0.1305 -0.9914 0.0000 -vn -0.8660 0.5000 0.0000 -vn 0.7071 0.7071 0.0000 -vn 0.5000 -0.8660 0.0000 -vn -0.9659 0.2588 0.0000 -vn -0.9659 -0.2588 0.0000 -vn 0.5000 0.8660 0.0000 -vn -0.1305 -0.9914 0.0000 -vn 0.7071 -0.7071 0.0000 -usemtl Material.001 -s off -f 651/1148/393 600/1149/393 650/1150/393 -f 605/1151/394 604/1152/394 629/1153/394 -f 650/1154/395 598/1155/395 627/1156/395 -f 601/1157/396 599/1158/396 598/1155/396 -f 600/1159/397 629/1160/397 599/1161/397 -f 600/1149/393 601/1162/393 650/1150/393 -f 650/1150/393 633/1163/393 634/1164/393 -f 634/1164/393 635/1165/393 650/1150/393 -f 635/1165/393 636/1166/393 650/1150/393 -f 636/1166/393 637/1167/393 650/1150/393 -f 637/1167/393 638/1168/393 650/1150/393 -f 638/1168/393 639/1169/393 650/1150/393 -f 639/1169/393 640/1170/393 650/1150/393 -f 640/1170/393 641/1171/393 650/1150/393 -f 641/1171/393 642/1172/393 650/1150/393 -f 642/1172/393 643/1173/393 650/1150/393 -f 643/1173/393 644/1174/393 650/1150/393 -f 650/1150/393 644/1174/393 651/1148/393 -f 644/1174/393 645/1175/393 651/1148/393 -f 645/1175/393 646/1176/393 651/1148/393 -f 646/1176/393 647/1177/393 651/1148/393 -f 647/1177/393 648/1178/393 651/1148/393 -f 648/1178/393 649/1179/393 651/1148/393 -f 649/1179/393 608/1180/393 651/1148/393 -f 608/1180/393 628/1181/393 651/1148/393 -f 628/1181/393 626/1182/393 651/1148/393 -f 626/1182/393 630/1183/393 651/1148/393 -f 630/1183/393 631/1184/393 651/1148/393 -f 631/1184/393 632/1185/393 651/1148/393 -f 627/1186/394 598/1187/394 599/1188/394 -f 629/1153/394 607/1189/394 606/1190/394 -f 627/1186/394 599/1188/394 629/1153/394 -f 610/1191/394 609/1192/394 627/1186/394 -f 612/1193/394 611/1194/394 627/1186/394 -f 611/1194/394 610/1191/394 627/1186/394 -f 614/1195/394 613/1196/394 627/1186/394 -f 613/1196/394 612/1193/394 627/1186/394 -f 616/1197/394 615/1198/394 627/1186/394 -f 615/1198/394 614/1195/394 627/1186/394 -f 618/1199/394 617/1200/394 627/1186/394 -f 617/1200/394 616/1197/394 627/1186/394 -f 620/1201/394 619/1202/394 627/1186/394 -f 619/1202/394 618/1199/394 627/1186/394 -f 622/1203/394 621/1204/394 629/1153/394 -f 621/1204/394 620/1201/394 629/1153/394 -f 629/1153/394 620/1201/394 627/1186/394 -f 624/1205/394 623/1206/394 629/1153/394 -f 623/1206/394 622/1203/394 629/1153/394 -f 602/1207/394 625/1208/394 629/1153/394 -f 625/1208/394 624/1205/394 629/1153/394 -f 604/1152/394 603/1209/394 629/1153/394 -f 603/1209/394 602/1207/394 629/1153/394 -f 606/1190/394 605/1151/394 629/1153/394 -f 650/1154/395 601/1157/395 598/1155/395 -f 601/1157/396 600/1210/396 599/1158/396 -f 600/1159/397 651/1211/397 629/1160/397 -s 1 -f 630/1212/398 604/1213/399 605/1214/398 -f 644/1215/400 619/1216/401 620/1217/400 -f 637/1218/402 612/1219/403 613/1220/402 -f 631/1221/404 605/1214/398 606/1222/404 -f 645/1223/405 620/1224/400 621/1225/405 -f 638/1226/395 613/1220/402 614/1227/395 -f 632/1228/406 606/1222/404 607/1229/406 -f 646/1230/407 621/1225/405 622/1231/407 -f 639/1232/408 614/1227/395 615/1233/408 -f 647/1234/409 622/1231/407 623/1235/409 -f 640/1236/410 615/1233/408 616/1237/410 -f 633/1238/411 627/1156/412 609/1239/411 -f 648/1240/413 623/1235/409 624/1241/413 -f 641/1242/414 616/1237/410 617/1243/414 -f 634/1244/415 609/1239/411 610/1245/415 -f 649/1246/416 624/1241/413 625/1247/416 -f 628/1248/417 602/1249/397 603/1250/417 -f 642/1251/418 617/1243/414 618/1252/418 -f 651/1211/419 607/1229/406 629/1160/419 -f 635/1253/420 610/1245/415 611/1254/420 -f 608/1255/397 625/1247/416 602/1249/397 -f 626/1256/399 603/1250/417 604/1213/399 -f 643/1257/401 618/1252/418 619/1216/401 -f 636/1258/403 611/1254/420 612/1219/403 -f 630/1212/398 626/1256/399 604/1213/399 -f 644/1215/400 643/1257/401 619/1216/401 -f 637/1218/402 636/1258/403 612/1219/403 -f 631/1221/404 630/1212/398 605/1214/398 -f 645/1223/405 644/1259/400 620/1224/400 -f 638/1226/395 637/1218/402 613/1220/402 -f 632/1228/406 631/1221/404 606/1222/404 -f 646/1230/407 645/1223/405 621/1225/405 -f 639/1232/408 638/1226/395 614/1227/395 -f 647/1234/409 646/1230/407 622/1231/407 -f 640/1236/410 639/1232/408 615/1233/408 -f 633/1238/411 650/1154/412 627/1156/412 -f 648/1240/413 647/1234/409 623/1235/409 -f 641/1242/414 640/1236/410 616/1237/410 -f 634/1244/415 633/1238/411 609/1239/411 -f 649/1246/416 648/1240/413 624/1241/413 -f 628/1248/417 608/1255/397 602/1249/397 -f 642/1251/418 641/1242/414 617/1243/414 -f 651/1211/419 632/1228/406 607/1229/406 -f 635/1253/420 634/1244/415 610/1245/415 -f 608/1255/397 649/1246/416 625/1247/416 -f 626/1256/399 628/1248/417 603/1250/417 -f 643/1257/401 642/1251/418 618/1252/418 -f 636/1258/403 635/1253/420 611/1254/420 -o Mag_Upper_Circle.002 -v -2.143148 -0.925746 2.611670 -v -1.921494 -0.390625 2.611670 -v -1.568893 0.068893 2.611670 -v -1.109375 0.421494 2.611670 -v -0.574255 0.643148 2.611670 -v -0.000000 0.718750 2.611670 -v 0.574255 0.643148 2.611670 -v 1.109375 0.421494 2.611670 -v 1.568893 0.068893 2.611670 -v 1.921494 -0.390625 2.611670 -v 2.143148 -0.925745 2.611670 -v 2.218750 -1.500000 2.611670 -v 2.143148 -2.074255 2.611670 -v 1.921494 -2.609375 2.611670 -v 1.568893 -3.068893 2.611670 -v 1.109375 -3.421494 2.611670 -v 0.574255 -3.643148 2.611670 -v 0.000000 -3.718750 2.611670 -v -0.574255 -3.643148 2.611670 -v -1.109375 -3.421494 2.611670 -v -1.568893 -3.068893 2.611670 -v -1.921494 -2.609375 2.611670 -v -2.143148 -2.074255 2.611670 -v -2.218750 -1.500000 2.611670 -v -2.218750 -1.500000 2.111670 -v -2.143148 -2.074255 2.111670 -v -1.921494 -2.609375 2.111670 -v -1.568893 -3.068893 2.111670 -v -1.109375 -3.421494 2.111670 -v -0.574255 -3.643148 2.111670 -v 0.000000 -3.718750 2.111670 -v 0.574255 -3.643148 2.111670 -v 1.109375 -3.421494 2.111670 -v 1.568893 -3.068893 2.111670 -v 1.921494 -2.609375 2.111670 -v 2.143148 -2.074255 2.111670 -v 2.218750 -1.500000 2.111670 -v 2.143148 -0.925745 2.111670 -v 1.921494 -0.390625 2.111670 -v 1.568893 0.068893 2.111670 -v 1.109375 0.421494 2.111670 -v 0.574255 0.643148 2.111670 -v -0.000000 0.718750 2.111670 -v -0.574255 0.643148 2.111670 -v -1.109375 0.421494 2.111670 -v -1.568893 0.068893 2.111670 -v -1.921494 -0.390625 2.111670 -v -2.143148 -0.925746 2.111670 -v -1.437500 -1.500000 2.611670 -v -1.388518 -1.872052 2.611670 -v -1.244912 -2.218750 2.611670 -v -1.016466 -2.516466 2.611670 -v -0.718750 -2.744912 2.611670 -v -0.372052 -2.888518 2.611670 -v 0.000000 -2.937500 2.611670 -v 0.372052 -2.888518 2.611670 -v 0.718750 -2.744912 2.611670 -v 1.016466 -2.516466 2.611670 -v 1.244912 -2.218750 2.611670 -v 1.388518 -1.872052 2.611670 -v 1.437500 -1.500000 2.611670 -v 1.388518 -1.127948 2.611670 -v 1.244912 -0.781250 2.611670 -v 1.016466 -0.483534 2.611670 -v 0.718750 -0.255088 2.611670 -v 0.372052 -0.111482 2.611670 -v 0.000000 -0.062500 2.611670 -v -0.372052 -0.111482 2.611670 -v -0.718750 -0.255088 2.611670 -v -1.016466 -0.483534 2.611670 -v -1.244911 -0.781250 2.611670 -v -1.388518 -1.127948 2.611670 -v -1.437500 -1.500000 2.111670 -v -1.388518 -1.872052 2.111670 -v -1.244912 -2.218750 2.111670 -v -1.016466 -2.516466 2.111670 -v -0.718750 -2.744912 2.111670 -v -0.372052 -2.888518 2.111670 -v 0.000000 -2.937500 2.111670 -v 0.372052 -2.888518 2.111670 -v 0.718750 -2.744912 2.111670 -v 1.016466 -2.516466 2.111670 -v 1.244912 -2.218750 2.111670 -v 1.388518 -1.872052 2.111670 -v 1.437500 -1.500000 2.111670 -v 1.388518 -1.127948 2.111670 -v 1.244912 -0.781250 2.111670 -v 1.016466 -0.483534 2.111670 -v 0.718750 -0.255088 2.111670 -v 0.372052 -0.111482 2.111670 -v 0.000000 -0.062500 2.111670 -v -0.372052 -0.111482 2.111670 -v -0.718750 -0.255088 2.111670 -v -1.016466 -0.483534 2.111670 -v -1.244911 -0.781250 2.111670 -v -1.388518 -1.127948 2.111670 -v -1.000000 -1.500000 2.111670 -v -0.866025 -2.000000 2.111670 -v -0.500000 -2.366026 2.111670 -v 0.000000 -2.500000 2.111670 -v 0.500000 -2.366026 2.111670 -v 0.866025 -2.000000 2.111670 -v 1.000000 -1.500000 2.111670 -v 0.866025 -1.000000 2.111670 -v 0.500000 -0.633975 2.111670 -v 0.000000 -0.500000 2.111670 -v -0.500000 -0.633975 2.111670 -v -0.866025 -1.000000 2.111670 -v -1.000000 -1.500000 2.486670 -v -0.866025 -2.000000 2.486670 -v -0.550430 -2.315596 2.424170 -v -0.500000 -2.366026 2.424170 -v 0.500000 -2.366026 2.424170 -v 0.866025 -2.000000 2.486670 -v 1.000000 -1.500000 2.486670 -v 0.866025 -1.000000 2.486670 -v 0.500000 -0.633975 2.424170 -v 0.000000 -0.500000 2.424170 -v -0.500000 -0.633975 2.486670 -v -0.866025 -1.000000 2.486670 -v 0.815595 -0.949570 2.486670 -v 0.550430 -0.684405 2.486670 -v 0.883884 -0.350952 2.111670 -v 1.149048 -0.616117 2.486670 -v 0.883884 -0.350952 2.486670 -v 0.550430 -0.684405 2.111670 -v 0.815595 -0.949570 2.111670 -v 1.149048 -0.616117 2.111670 -v -1.149048 -2.383884 2.111670 -v -0.883883 -2.649049 2.111670 -v -0.550430 -2.315596 2.111670 -v -0.815595 -2.050431 2.111670 -v -0.550430 -2.315596 2.486670 -v -0.815595 -2.050431 2.486670 -v -1.149048 -2.383884 2.486670 -v -0.883883 -2.649049 2.486670 -v -0.500000 -0.633975 2.424170 -v 0.550430 -0.684405 2.424170 -v -0.156677 -0.684405 2.424170 -v 0.067467 -0.813814 2.424170 -v 0.326286 -0.813814 2.424170 -v 0.326286 -0.813814 2.486670 -v 0.067467 -0.813814 2.486670 -v -0.156677 -0.684405 2.486670 -v 0.000000 -2.500000 2.424170 -v 0.500000 -2.366026 2.486670 -v 0.156677 -2.315596 2.486670 -v 0.156677 -2.315596 2.424170 -v -0.067467 -2.186186 2.424170 -v -0.326286 -2.186186 2.424170 -v -0.326286 -2.186186 2.486670 -v -0.067467 -2.186186 2.486670 -v -0.125000 -1.500000 2.486670 -v -0.062500 -1.608253 2.486670 -v 0.062500 -1.608253 2.486670 -v 0.125000 -1.500000 2.486670 -v 0.062500 -1.391747 2.486670 -v -0.062500 -1.391747 2.486670 -v -0.125000 -1.500000 2.549170 -v -0.062500 -1.608253 2.549170 -v 0.062500 -1.608253 2.549170 -v 0.125000 -1.500000 2.549170 -v 0.062500 -1.391747 2.549170 -v -0.062500 -1.391747 2.549170 -v 0.250000 -1.125000 2.486670 -v 0.312500 -1.233253 2.486670 -v 0.437500 -1.233253 2.486670 -v 0.500000 -1.125000 2.486670 -v 0.437500 -1.016747 2.486670 -v 0.312500 -1.016747 2.486670 -v 0.250000 -1.125000 2.549170 -v 0.312500 -1.233253 2.549170 -v 0.437500 -1.233253 2.549170 -v 0.500000 -1.125000 2.549170 -v 0.437500 -1.016747 2.549170 -v 0.312500 -1.016747 2.549170 -v -0.500000 -1.875000 2.486670 -v -0.437500 -1.983253 2.486670 -v -0.312500 -1.983253 2.486670 -v -0.250000 -1.875000 2.486670 -v -0.312500 -1.766747 2.486670 -v -0.437500 -1.766747 2.486670 -v -0.500000 -1.875000 2.549170 -v -0.437500 -1.983253 2.549170 -v -0.312500 -1.983253 2.549170 -v -0.250000 -1.875000 2.549170 -v -0.312500 -1.766747 2.549170 -v -0.437500 -1.766747 2.549170 -v -0.062500 -1.500000 2.611670 -v -0.031250 -1.554127 2.611670 -v 0.031250 -1.554127 2.611670 -v 0.062500 -1.500000 2.611670 -v 0.031250 -1.445874 2.611670 -v -0.031250 -1.445874 2.611670 -vt 0.033582 0.955224 -vt 0.005597 1.000000 -vt 0.000000 0.955224 -vt 0.061567 1.000000 -vt 0.039179 1.000000 -vt 0.100746 0.955224 -vt 0.072761 1.000000 -vt 0.067164 0.955224 -vt 0.134328 0.955224 -vt 0.106343 1.000000 -vt 0.167910 0.955224 -vt 0.139925 1.000000 -vt 0.201493 0.955224 -vt 0.173507 1.000000 -vt 0.229478 1.000000 -vt 0.207089 1.000000 -vt 0.235075 0.955224 -vt 0.263060 1.000000 -vt 0.240672 1.000000 -vt 0.302239 0.955224 -vt 0.274254 1.000000 -vt 0.268657 0.955224 -vt 0.335821 0.955224 -vt 0.307836 1.000000 -vt 0.369403 0.955224 -vt 0.341418 1.000000 -vt 0.402985 0.955224 -vt 0.375000 1.000000 -vt 0.436567 0.955224 -vt 0.408582 1.000000 -vt 0.470149 0.955224 -vt 0.442164 1.000000 -vt 0.503731 0.955224 -vt 0.475746 1.000000 -vt 0.537313 0.955224 -vt 0.509328 1.000000 -vt 0.570895 0.955224 -vt 0.542910 1.000000 -vt 0.604478 0.955224 -vt 0.576492 1.000000 -vt 0.638060 0.955224 -vt 0.610075 1.000000 -vt 0.671642 0.955224 -vt 0.643657 1.000000 -vt 0.705224 0.955224 -vt 0.677239 1.000000 -vt 0.738806 0.955224 -vt 0.710821 1.000000 -vt 0.766791 1.000000 -vt 0.744403 1.000000 -vt 0.805970 0.955224 -vt 0.777986 1.000000 -vt 0.772388 0.955224 -vt 0.201493 0.895522 -vt 0.179104 0.925373 -vt 0.201493 0.925373 -vt 0.223881 0.895522 -vt 0.223881 0.925373 -vt 0.567164 0.902985 -vt 0.597015 0.925373 -vt 0.567164 0.925373 -vt 0.597015 0.880597 -vt 0.567164 0.880597 -vt 0.567164 0.902985 -vt 0.537313 0.925373 -vt 0.537313 0.902985 -vt 0.537313 0.880597 -vt 0.566630 0.343284 -vt 0.563619 0.322787 -vt 0.574627 0.313433 -vt 0.563619 0.280571 -vt 0.566630 0.283582 -vt 0.555892 0.293953 -vt 0.555892 0.309405 -vt 0.545310 0.283582 -vt 0.548321 0.304079 -vt 0.537312 0.313433 -vt 0.556049 0.317459 -vt 0.548321 0.346295 -vt 0.545310 0.343284 -vt 0.556047 0.332913 -vt 0.637981 0.779028 -vt 0.637981 0.794480 -vt 0.556049 0.802535 -vt 0.619403 0.876866 -vt 0.611940 0.880597 -vt 0.619403 0.880597 -vt 0.604478 0.876866 -vt 0.597015 0.880597 -vt 0.604478 0.880597 -vt 0.626866 0.876866 -vt 0.626866 0.880597 -vt 0.611940 0.876866 -vt 0.641791 0.876866 -vt 0.634328 0.880597 -vt 0.641791 0.880597 -vt 0.634328 0.876866 -vt 0.619403 0.876866 -vt 0.611940 0.880597 -vt 0.619403 0.880597 -vt 0.604478 0.876866 -vt 0.597015 0.880597 -vt 0.604478 0.880597 -vt 0.626866 0.876866 -vt 0.626866 0.880597 -vt 0.611940 0.876866 -vt 0.641791 0.876866 -vt 0.634328 0.880597 -vt 0.641791 0.880597 -vt 0.634328 0.876866 -vt 0.600746 0.872135 -vt 0.600746 0.859209 -vt 0.611940 0.865672 -vt 0.619403 0.876866 -vt 0.611940 0.880597 -vt 0.619403 0.880597 -vt 0.604478 0.876866 -vt 0.597015 0.880597 -vt 0.604478 0.880597 -vt 0.626866 0.876866 -vt 0.626866 0.880597 -vt 0.611940 0.876866 -vt 0.641791 0.876866 -vt 0.634328 0.880597 -vt 0.641791 0.880597 -vt 0.634328 0.876866 -vt 0.600746 0.872135 -vt 0.600746 0.859209 -vt 0.611940 0.865672 -vt 0.027985 1.000000 -vt 0.095149 1.000000 -vt 0.128731 1.000000 -vt 0.162313 1.000000 -vt 0.195895 1.000000 -vt 0.296642 1.000000 -vt 0.330224 1.000000 -vt 0.363807 1.000000 -vt 0.397388 1.000000 -vt 0.430970 1.000000 -vt 0.464552 1.000000 -vt 0.498134 1.000000 -vt 0.531716 1.000000 -vt 0.565298 1.000000 -vt 0.598881 1.000000 -vt 0.632463 1.000000 -vt 0.666045 1.000000 -vt 0.699627 1.000000 -vt 0.733209 1.000000 -vt 0.800373 1.000000 -vt 0.179104 0.895522 -vt 0.597015 0.902985 -vt 0.567164 0.925373 -vt 0.567164 0.880597 -vt 0.597015 0.858209 -vt 0.567164 0.850210 -vt 0.556049 0.817987 -vt 0.564153 0.847200 -vt 0.548323 0.831369 -vt 0.548323 0.789154 -vt 0.567164 0.746804 -vt 0.545312 0.768657 -vt 0.626866 0.850210 -vt 0.645707 0.807861 -vt 0.648718 0.828358 -vt 0.597015 0.738806 -vt 0.626866 0.746804 -vt 0.629876 0.749815 -vt 0.645707 0.765646 -vt 0.597015 0.876866 -vt 0.597015 0.876866 -vt 0.608209 0.872135 -vt 0.597015 0.865672 -vt 0.608209 0.859209 -vt 0.597015 0.876866 -vt 0.608209 0.872135 -vt 0.597015 0.865672 -vt 0.608209 0.859209 -vt 0.033582 0.925373 -vt 0.000000 0.925373 -vt 0.268657 0.925373 -vt 0.235075 0.925373 -vt 0.503731 0.925373 -vt 0.470149 0.925373 -vt 0.805970 0.925373 -vt 0.772388 0.925373 -vt 0.201493 0.925373 -vt 0.436567 0.925373 -vt 0.738806 0.925373 -vt 0.167910 0.925373 -vt 0.402985 0.925373 -vt 0.705224 0.925373 -vt 0.134328 0.925373 -vt 0.369403 0.925373 -vt 0.671642 0.925373 -vt 0.100746 0.925373 -vt 0.335821 0.925373 -vt 0.638060 0.925373 -vt 0.604478 0.925373 -vt 0.570895 0.925373 -vt 0.067164 0.925373 -vt 0.302239 0.925373 -vt 0.537313 0.925373 -vt 0.313433 0.925373 -vt 0.291045 0.895522 -vt 0.291045 0.925373 -vt 0.156716 0.925373 -vt 0.134328 0.895522 -vt 0.134328 0.925373 -vt 0.537313 0.925373 -vt 0.514925 0.895522 -vt 0.514925 0.925373 -vt 0.335821 0.925373 -vt 0.313433 0.895522 -vt 0.156716 0.895522 -vt 0.022388 0.925373 -vt 0.000000 0.895522 -vt 0.000000 0.925373 -vt 0.358209 0.925373 -vt 0.335821 0.895522 -vt 0.044776 0.925373 -vt 0.022388 0.895522 -vt 0.380597 0.925373 -vt 0.358209 0.895522 -vt 0.425373 0.925373 -vt 0.402985 0.895522 -vt 0.402985 0.925373 -vt 0.067164 0.925373 -vt 0.044776 0.895522 -vt 0.380597 0.895522 -vt 0.447761 0.925373 -vt 0.425373 0.895522 -vt 0.246269 0.925373 -vt 0.089552 0.925373 -vt 0.067164 0.895522 -vt 0.268657 0.925373 -vt 0.246269 0.895522 -vt 0.111940 0.925373 -vt 0.089552 0.895522 -vt 0.268657 0.895522 -vt 0.111940 0.895522 -vt 0.492537 0.895522 -vt 0.492537 0.925373 -vt 0.720149 0.902985 -vt 0.690298 0.925373 -vt 0.690298 0.902985 -vt 0.660448 0.925373 -vt 0.660448 0.921642 -vt 0.690298 0.902985 -vt 0.660448 0.902985 -vt 0.660448 0.899254 -vt 0.750000 0.902985 -vt 0.720149 0.925373 -vt 0.567164 0.876866 -vt 0.537313 0.858209 -vt 0.630597 0.880597 -vt 0.660448 0.880597 -vt 0.750000 0.880597 -vt 0.720149 0.902985 -vt 0.720149 0.880597 -vt 0.630597 0.921642 -vt 0.660448 0.902985 -vt 0.690298 0.880597 -vt 0.600746 0.899254 -vt 0.600746 0.880597 -vt 0.597015 0.880597 -vt 0.597015 0.899254 -vt 0.567164 0.858209 -vt 0.597015 0.858209 -vt 0.597015 0.876866 -vt 0.753731 0.902985 -vt 0.750000 0.902985 -vt 0.600746 0.902985 -vt 0.600746 0.921642 -vt 0.470149 0.925373 -vt 0.470149 0.895522 -vt 0.597015 0.921642 -vt 0.597015 0.902985 -vt 0.750000 0.925373 -vt 0.753731 0.902985 -vt 0.753731 0.925373 -vt 0.597015 0.902985 -vt 0.611940 0.899254 -vt 0.611940 0.902985 -vt 0.626866 0.902985 -vt 0.626866 0.899254 -vt 0.641791 0.902985 -vt 0.641791 0.899254 -vt 0.641791 0.925373 -vt 0.626866 0.925373 -vt 0.641791 0.921642 -vt 0.611940 0.925373 -vt 0.626866 0.921642 -vt 0.597015 0.925373 -vt 0.619403 0.873134 -vt 0.611940 0.873134 -vt 0.634328 0.873134 -vt 0.597015 0.873134 -vt 0.626866 0.873134 -vt 0.604478 0.873134 -vt 0.617537 0.858709 -vt 0.619403 0.861940 -vt 0.613806 0.865172 -vt 0.537313 0.895522 -vt 0.447761 0.895522 -vt 0.567164 0.858209 -vt 0.630597 0.899254 -vt 0.630597 0.902985 -vt 0.753731 0.880597 -vt 0.611940 0.921642 -vt 0.641791 0.873134 -vt 0.617537 0.865172 -vt 0.611940 0.861940 -vt 0.613806 0.858709 -vn 0.0000 -0.0000 1.0000 -vn -0.7934 -0.6088 0.0000 -vn -0.6088 -0.7934 0.0000 -vn 0.7071 -0.7071 0.0000 -vn -0.7071 0.7071 0.0000 -vn 0.8660 0.5000 0.0000 -vn 0.0000 -1.0000 0.0000 -vn 0.0000 1.0000 0.0000 -vn 0.8660 -0.5000 0.0000 -vn -0.8660 -0.5000 0.0000 -vn -0.8660 0.5000 0.0000 -vn 0.2588 -0.9659 0.0000 -vn 0.9659 0.2588 0.0000 -vn -0.5000 0.8660 0.0000 -vn -0.2588 -0.9659 0.0000 -vn 1.0000 0.0000 0.0000 -vn -0.2588 0.9659 0.0000 -vn -0.5000 -0.8660 0.0000 -vn 0.9659 -0.2588 0.0000 -vn -0.7071 -0.7071 0.0000 -vn 0.2588 0.9659 0.0000 -vn 0.5000 0.8660 0.0000 -vn -0.9659 -0.2588 0.0000 -vn -1.0000 0.0000 0.0000 -vn -0.9659 0.2588 0.0000 -vn 0.5000 -0.8660 0.0000 -vn 0.7071 0.7071 0.0000 -vn -0.9239 -0.3827 0.0000 -vn -0.3827 -0.9239 0.0000 -vn 0.3144 -0.9493 0.0000 -vn 0.4129 -0.9108 0.0000 -vn -0.3144 0.9493 0.0000 -vn -0.4129 0.9108 0.0000 -vn 0.6430 -0.7659 0.0000 -vn -0.6430 0.7659 0.0000 -vn -0.6088 0.7934 0.0000 -vn 0.3285 0.9445 0.0000 -vn -0.3285 -0.9445 0.0000 -vn 0.6088 -0.7934 0.0000 -vn -0.3536 0.6124 0.7071 -vn 0.2400 0.4156 0.8773 -vn 0.3536 0.6124 0.7071 -vn 0.4799 0.0000 0.8773 -vn 0.7071 0.0000 0.7071 -vn -0.3536 -0.6124 0.7071 -vn -0.4799 0.0000 0.8773 -vn -0.7071 0.0000 0.7071 -vn 0.3536 -0.6124 0.7071 -vn -0.2400 -0.4156 0.8773 -vn -0.2400 0.4156 0.8773 -vn 0.2400 -0.4156 0.8773 -usemtl Material.001 -s off -f 668/1260/421 706/1261/421 669/1262/421 -f 668/1260/421 708/1263/421 707/1264/421 -f 666/1265/421 708/1266/421 667/1267/421 -f 665/1268/421 709/1269/421 666/1265/421 -f 664/1270/421 710/1271/421 665/1268/421 -f 663/1272/421 711/1273/421 664/1270/421 -f 663/1272/421 713/1274/421 712/1275/421 -f 662/1276/421 714/1277/421 713/1278/421 -f 660/1279/421 714/1280/421 661/1281/421 -f 659/1282/421 715/1283/421 660/1279/421 -f 658/1284/421 716/1285/421 659/1282/421 -f 657/1286/421 717/1287/421 658/1284/421 -f 656/1288/421 718/1289/421 657/1286/421 -f 655/1290/421 719/1291/421 656/1288/421 -f 654/1292/421 720/1293/421 655/1290/421 -f 653/1294/421 721/1295/421 654/1292/421 -f 652/1296/421 722/1297/421 653/1294/421 -f 675/1298/421 723/1299/421 652/1296/421 -f 674/1300/421 700/1301/421 675/1298/421 -f 673/1302/421 701/1303/421 674/1300/421 -f 672/1304/421 702/1305/421 673/1302/421 -f 671/1306/421 703/1307/421 672/1304/421 -f 671/1306/421 705/1308/421 704/1309/421 -f 669/1310/421 705/1311/421 670/1312/421 -f 739/1313/422 714/1314/422 715/1315/422 -f 740/1316/423 715/1315/423 716/1317/423 -f 775/1318/424 778/1319/424 779/1320/424 -f 773/1321/421 775/1318/421 776/1322/421 -f 785/1323/425 780/1324/425 786/1325/425 -f 787/1326/421 785/1323/421 786/1325/421 -f 788/1327/421 790/1328/421 769/1329/421 -f 789/1330/421 768/1331/421 792/1332/421 -f 769/1329/421 792/1332/421 768/1331/421 -f 791/1333/421 769/1329/421 790/1328/421 -f 764/1334/421 799/1335/421 796/1336/421 -f 800/1337/421 796/1336/421 799/1335/421 -f 762/1338/421 763/1339/421 801/1340/421 -f 796/1336/421 801/1340/421 763/1339/421 -f 793/1341/421 794/1342/421 803/1343/421 -f 814/1344/426 807/1345/426 808/1346/426 -f 812/1347/427 805/1348/427 806/1349/427 -f 815/1350/428 808/1346/428 809/1351/428 -f 813/1352/429 806/1349/429 807/1345/429 -f 811/1353/430 804/1354/430 805/1355/430 -f 810/1356/431 809/1351/431 804/1354/431 -f 826/1357/426 819/1358/426 820/1359/426 -f 824/1360/427 817/1361/427 818/1362/427 -f 827/1363/428 820/1359/428 821/1364/428 -f 825/1365/429 818/1362/429 819/1358/429 -f 823/1366/430 816/1367/430 817/1368/430 -f 822/1369/431 821/1364/431 816/1367/431 -f 824/1370/421 826/1371/421 822/1372/421 -f 838/1373/426 831/1374/426 832/1375/426 -f 836/1376/427 829/1377/427 830/1378/427 -f 839/1379/428 832/1375/428 833/1380/428 -f 837/1381/429 830/1378/429 831/1374/429 -f 835/1382/430 828/1383/430 829/1384/430 -f 834/1385/431 833/1380/431 828/1383/431 -f 836/1386/421 838/1387/421 834/1388/421 -f 668/1260/421 707/1389/421 706/1261/421 -f 668/1260/421 667/1267/421 708/1263/421 -f 666/1265/421 709/1390/421 708/1266/421 -f 665/1268/421 710/1391/421 709/1269/421 -f 664/1270/421 711/1392/421 710/1271/421 -f 663/1272/421 712/1393/421 711/1273/421 -f 663/1272/421 662/1276/421 713/1274/421 -f 662/1276/421 661/1281/421 714/1277/421 -f 660/1279/421 715/1394/421 714/1280/421 -f 659/1282/421 716/1395/421 715/1283/421 -f 658/1284/421 717/1396/421 716/1285/421 -f 657/1286/421 718/1397/421 717/1287/421 -f 656/1288/421 719/1398/421 718/1289/421 -f 655/1290/421 720/1399/421 719/1291/421 -f 654/1292/421 721/1400/421 720/1293/421 -f 653/1294/421 722/1401/421 721/1295/421 -f 652/1296/421 723/1402/421 722/1297/421 -f 675/1298/421 700/1403/421 723/1299/421 -f 674/1300/421 701/1404/421 700/1301/421 -f 673/1302/421 702/1405/421 701/1303/421 -f 672/1304/421 703/1406/421 702/1305/421 -f 671/1306/421 704/1407/421 703/1307/421 -f 671/1306/421 670/1312/421 705/1308/421 -f 669/1310/421 706/1408/421 705/1311/421 -f 739/1313/422 738/1409/422 714/1314/422 -f 740/1316/423 739/1313/423 715/1315/423 -f 775/1318/424 772/1410/424 778/1319/424 -f 773/1321/421 772/1410/421 775/1318/421 -f 785/1323/425 783/1411/425 780/1324/425 -f 787/1326/421 784/1412/421 785/1323/421 -f 769/1329/421 791/1333/421 792/1332/421 -f 796/1336/421 800/1337/421 801/1340/421 -f 760/1413/421 761/1414/421 802/1415/421 -f 761/1414/421 785/1416/421 802/1415/421 -f 785/1416/421 784/1417/421 802/1415/421 -f 803/1343/421 798/1418/421 765/1419/421 -f 798/1418/421 797/1420/421 765/1419/421 -f 802/1415/421 803/1343/421 794/1342/421 -f 760/1413/421 802/1415/421 794/1342/421 -f 771/1421/421 760/1413/421 794/1342/421 -f 795/1422/421 770/1423/421 771/1421/421 -f 794/1342/421 795/1422/421 771/1421/421 -f 765/1419/421 766/1424/421 803/1343/421 -f 766/1424/421 767/1425/421 793/1341/421 -f 803/1343/421 766/1424/421 793/1341/421 -f 767/1425/421 772/1426/421 793/1341/421 -f 772/1426/421 773/1427/421 793/1341/421 -f 814/1344/426 813/1352/426 807/1345/426 -f 812/1347/427 811/1428/427 805/1348/427 -f 815/1350/428 814/1344/428 808/1346/428 -f 813/1352/429 812/1347/429 806/1349/429 -f 811/1353/430 810/1356/430 804/1354/430 -f 810/1356/431 815/1350/431 809/1351/431 -f 826/1357/426 825/1365/426 819/1358/426 -f 824/1360/427 823/1429/427 817/1361/427 -f 827/1363/428 826/1357/428 820/1359/428 -f 825/1365/429 824/1360/429 818/1362/429 -f 823/1366/430 822/1369/430 816/1367/430 -f 822/1369/431 827/1363/431 821/1364/431 -f 822/1372/421 823/1430/421 824/1370/421 -f 824/1370/421 825/1431/421 826/1371/421 -f 826/1371/421 827/1432/421 822/1372/421 -f 838/1373/426 837/1381/426 831/1374/426 -f 836/1376/427 835/1433/427 829/1377/427 -f 839/1379/428 838/1373/428 832/1375/428 -f 837/1381/429 836/1376/429 830/1378/429 -f 835/1382/430 834/1385/430 828/1383/430 -f 834/1385/431 839/1379/431 833/1380/431 -f 834/1388/421 835/1434/421 836/1386/421 -f 836/1386/421 837/1435/421 838/1387/421 -f 838/1387/421 839/1436/421 834/1388/421 -s 1 -f 683/1437/432 669/1262/427 682/1438/427 -f 690/1439/426 662/1276/433 689/1440/433 -f 697/1441/425 655/1290/434 696/1442/434 -f 682/1443/427 670/1312/435 681/1444/435 -f 689/1440/433 663/1272/436 688/1445/436 -f 696/1442/434 656/1288/437 695/1446/437 -f 681/1444/435 671/1306/438 680/1447/438 -f 688/1445/436 664/1270/439 687/1448/439 -f 695/1446/437 657/1286/428 694/1449/428 -f 680/1447/438 672/1304/440 679/1450/440 -f 687/1448/439 665/1268/429 686/1451/429 -f 694/1449/428 658/1284/441 693/1452/441 -f 679/1450/440 673/1302/430 678/1453/430 -f 686/1451/429 666/1265/424 685/1454/424 -f 693/1452/441 659/1282/442 692/1455/442 -f 678/1453/430 674/1300/443 677/1456/443 -f 676/1457/444 652/1296/445 699/1458/445 -f 685/1454/424 667/1267/446 684/1459/446 -f 692/1455/442 660/1279/447 691/1460/447 -f 677/1456/443 675/1298/444 676/1457/444 -f 699/1458/445 653/1294/431 698/1461/431 -f 684/1459/446 668/1260/432 683/1437/432 -f 691/1460/447 661/1281/426 690/1439/426 -f 698/1461/431 654/1292/425 697/1441/425 -f 720/1462/446 743/1463/432 719/1464/432 -f 713/1465/443 736/1466/444 712/1467/444 -f 706/1468/428 729/1469/441 705/1470/441 -f 721/1471/424 744/1472/446 720/1462/446 -f 714/1314/448 737/1473/443 713/1465/443 -f 707/1474/437 730/1475/428 706/1476/428 -f 722/1477/429 745/1478/424 721/1471/424 -f 708/1479/434 731/1480/437 707/1474/437 -f 723/1481/439 746/1482/429 722/1477/429 -f 701/1483/433 724/1484/436 700/1485/436 -f 709/1486/425 732/1487/434 708/1479/434 -f 700/1485/436 747/1488/439 723/1481/439 -f 702/1489/426 725/1490/433 701/1483/433 -f 717/1491/435 740/1316/449 716/1317/449 -f 710/1492/431 733/1493/425 709/1486/425 -f 718/1494/427 741/1495/435 717/1491/435 -f 711/1496/445 734/1497/431 710/1492/431 -f 719/1464/432 742/1498/427 718/1494/427 -f 712/1467/444 735/1499/445 711/1496/445 -f 705/1470/441 728/1500/442 704/1501/442 -f 754/1502/436 765/1503/429 753/1504/429 -f 765/1503/429 797/1505/450 764/1506/451 -f 771/1507/431 770/1508/452 788/1509/453 -f 755/1510/426 766/1511/436 754/1502/436 -f 762/1512/454 787/1326/424 781/1513/424 -f 788/1509/453 757/1514/428 758/1515/434 -f 749/1516/430 760/1517/444 748/1518/444 -f 796/1519/427 752/1520/446 764/1506/451 -f 748/1518/444 771/1507/431 759/1521/431 -f 757/1514/428 768/1522/442 756/1523/442 -f 777/1524/447 768/1522/442 789/1525/447 -f 774/1526/425 777/1527/425 789/1528/455 -f 749/1516/430 785/1529/440 761/1530/430 -f 750/1531/438 796/1519/427 763/1532/438 -f 703/1533/447 728/1500/442 727/1534/447 -f 727/1534/447 702/1489/426 703/1533/447 -f 750/1531/438 762/1535/440 782/1536/440 -f 767/1537/426 778/1538/447 772/1539/447 -f 773/1540/456 792/1541/437 793/1542/437 -f 794/1543/441 792/1541/437 791/1544/441 -f 795/1545/457 791/1544/441 790/1546/457 -f 795/1545/457 788/1509/453 770/1508/452 -f 798/1547/458 764/1506/451 797/1505/450 -f 803/1548/435 799/1549/458 798/1547/458 -f 802/1550/432 800/1551/435 803/1548/435 -f 762/1535/454 802/1550/432 784/1552/459 -f 815/1350/460 844/1553/461 814/1344/462 -f 814/1344/462 843/1554/463 813/1352/464 -f 811/1353/465 840/1555/466 810/1356/467 -f 812/1347/468 841/1556/469 811/1428/465 -f 815/1350/460 840/1555/466 845/1557/470 -f 813/1352/464 842/1558/471 812/1347/468 -f 845/1559/470 840/1560/466 842/1561/471 -f 683/1437/432 668/1260/432 669/1262/427 -f 690/1439/426 661/1281/426 662/1276/433 -f 697/1441/425 654/1292/425 655/1290/434 -f 682/1443/427 669/1310/427 670/1312/435 -f 689/1440/433 662/1276/433 663/1272/436 -f 696/1442/434 655/1290/434 656/1288/437 -f 681/1444/435 670/1312/435 671/1306/438 -f 688/1445/436 663/1272/436 664/1270/439 -f 695/1446/437 656/1288/437 657/1286/428 -f 680/1447/438 671/1306/438 672/1304/440 -f 687/1448/439 664/1270/439 665/1268/429 -f 694/1449/428 657/1286/428 658/1284/441 -f 679/1450/440 672/1304/440 673/1302/430 -f 686/1451/429 665/1268/429 666/1265/424 -f 693/1452/441 658/1284/441 659/1282/442 -f 678/1453/430 673/1302/430 674/1300/443 -f 676/1457/444 675/1298/444 652/1296/445 -f 685/1454/424 666/1265/424 667/1267/446 -f 692/1455/442 659/1282/442 660/1279/447 -f 677/1456/443 674/1300/443 675/1298/444 -f 699/1458/445 652/1296/445 653/1294/431 -f 684/1459/446 667/1267/446 668/1260/432 -f 691/1460/447 660/1279/447 661/1281/426 -f 698/1461/431 653/1294/431 654/1292/425 -f 720/1462/446 744/1472/446 743/1463/432 -f 713/1465/443 737/1473/443 736/1466/444 -f 706/1468/428 730/1562/428 729/1469/441 -f 721/1471/424 745/1478/424 744/1472/446 -f 714/1314/448 738/1409/448 737/1473/443 -f 707/1474/437 731/1480/437 730/1475/428 -f 722/1477/429 746/1482/429 745/1478/424 -f 708/1479/434 732/1487/434 731/1480/437 -f 723/1481/439 747/1488/439 746/1482/429 -f 701/1483/433 725/1490/433 724/1484/436 -f 709/1486/425 733/1493/425 732/1487/434 -f 700/1485/436 724/1484/436 747/1488/439 -f 702/1489/426 726/1563/426 725/1490/433 -f 717/1491/435 741/1495/435 740/1316/449 -f 710/1492/431 734/1497/431 733/1493/425 -f 718/1494/427 742/1498/427 741/1495/435 -f 711/1496/445 735/1499/445 734/1497/431 -f 719/1464/432 743/1463/432 742/1498/427 -f 712/1467/444 736/1466/444 735/1499/445 -f 705/1470/441 729/1469/441 728/1500/442 -f 754/1502/436 766/1511/436 765/1503/429 -f 752/1520/446 753/1504/429 764/1506/451 -f 753/1504/429 765/1503/429 764/1506/451 -f 788/1509/453 758/1515/434 759/1521/431 -f 759/1521/431 771/1507/431 788/1509/453 -f 755/1510/426 767/1537/426 766/1511/436 -f 781/1513/424 782/1564/424 762/1512/454 -f 762/1512/454 784/1412/459 787/1326/424 -f 788/1509/453 769/1565/428 757/1514/428 -f 749/1516/430 761/1530/430 760/1517/444 -f 796/1519/427 751/1566/427 752/1520/446 -f 748/1518/444 760/1517/444 771/1507/431 -f 757/1514/428 769/1565/428 768/1522/442 -f 777/1524/447 756/1523/442 768/1522/442 -f 789/1528/455 773/1321/456 776/1322/425 -f 776/1322/425 774/1526/425 789/1528/455 -f 749/1516/430 783/1567/440 785/1529/440 -f 750/1531/438 751/1566/427 796/1519/427 -f 703/1533/447 704/1501/442 728/1500/442 -f 727/1534/447 726/1563/426 702/1489/426 -f 750/1531/438 763/1532/438 762/1535/440 -f 767/1537/426 755/1510/426 778/1538/447 -f 773/1540/456 789/1525/455 792/1541/437 -f 794/1543/441 793/1542/437 792/1541/437 -f 795/1545/457 794/1543/441 791/1544/441 -f 795/1545/457 790/1546/457 788/1509/453 -f 798/1547/458 799/1549/458 764/1506/451 -f 803/1548/435 800/1551/435 799/1549/458 -f 802/1550/432 801/1568/432 800/1551/435 -f 762/1535/454 801/1568/432 802/1550/432 -f 815/1350/460 845/1557/470 844/1553/461 -f 814/1344/462 844/1553/461 843/1554/463 -f 811/1353/465 841/1569/469 840/1555/466 -f 812/1347/468 842/1558/471 841/1556/469 -f 815/1350/460 810/1356/467 840/1555/466 -f 813/1352/464 843/1554/463 842/1558/471 -f 840/1560/466 841/1570/469 842/1561/471 -f 842/1561/471 843/1571/463 844/1572/461 -f 844/1572/461 845/1559/470 842/1561/471 diff --git a/src/main/resources/assets/hbm/models/weapons/am180.obj b/src/main/resources/assets/hbm/models/weapons/am180.obj new file mode 100644 index 000000000..ed63feb9a --- /dev/null +++ b/src/main/resources/assets/hbm/models/weapons/am180.obj @@ -0,0 +1,4369 @@ +# Blender v2.79 (sub 0) OBJ File: 'am180.blend' +# www.blender.org +o Mag +v 0.574255 2.611670 3.643148 +v 0.000000 2.611670 2.937500 +v 0.000000 2.611670 3.718750 +v 0.718750 2.611670 2.744912 +v 0.372052 2.611670 2.888518 +v 1.568893 2.611670 3.068893 +v 1.109375 2.611670 3.421494 +v 1.921494 2.611670 2.609375 +v 1.016466 2.611670 2.516466 +v 2.143148 2.611670 2.074255 +v 1.244912 2.611670 2.218750 +v 2.218750 2.611670 1.500000 +v 1.388518 2.611670 1.872052 +v 1.388518 2.611670 1.127948 +v 1.437500 2.611670 1.500000 +v 2.143148 2.611670 0.925745 +v 1.244912 2.611670 0.781250 +v 1.568893 2.611670 -0.068893 +v 1.921494 2.611670 0.390625 +v 1.109375 2.611670 -0.421494 +v 1.016466 2.611670 0.483534 +v 0.574255 2.611670 -0.643148 +v 0.718750 2.611670 0.255088 +v 0.000000 2.611670 -0.718750 +v 0.372052 2.611670 0.111482 +v -0.574255 2.611670 -0.643148 +v 0.000000 2.611670 0.062500 +v -1.109375 2.611670 -0.421494 +v -0.372052 2.611670 0.111482 +v -1.568893 2.611670 -0.068893 +v -0.718750 2.611670 0.255088 +v -1.921494 2.611670 0.390625 +v -1.016466 2.611670 0.483534 +v -2.143148 2.611670 0.925746 +v -1.244911 2.611670 0.781250 +v -2.218750 2.611670 1.500000 +v -1.388518 2.611670 1.127948 +v -2.143148 2.611670 2.074255 +v -1.437500 2.611670 1.500000 +v -1.921494 2.611670 2.609375 +v -1.388518 2.611670 1.872052 +v -1.568893 2.611670 3.068893 +v -1.244912 2.611670 2.218750 +v -1.109375 2.611670 3.421494 +v -1.016466 2.611670 2.516466 +v -0.372052 2.611670 2.888518 +v -0.718750 2.611670 2.744912 +v -0.574255 2.611670 3.643148 +v 1.016466 2.111670 0.483534 +v 0.718750 2.111670 0.255088 +v 1.149048 2.486670 0.616117 +v 0.815595 2.111670 0.949570 +v 1.149048 2.111670 0.616117 +v 0.550430 2.486670 0.684405 +v 0.883884 2.486670 0.350952 +v -0.815595 2.486670 2.050431 +v -1.149048 2.111670 2.383884 +v -1.149048 2.486670 2.383884 +v -0.883883 2.486670 2.649049 +v -0.500000 2.424170 0.633975 +v -0.156677 2.424170 0.684405 +v 0.000000 2.424170 0.500000 +v 0.550430 2.424170 0.684405 +v 0.500000 2.424170 0.633975 +v 0.326286 2.424170 0.813814 +v 0.067467 2.424170 0.813814 +v 0.500000 2.424170 2.366026 +v 0.156677 2.424170 2.315596 +v 0.000000 2.424170 2.500000 +v -0.067467 2.424170 2.186186 +v -0.550430 2.424170 2.315596 +v -0.500000 2.424170 2.366026 +v -0.326286 2.424170 2.186186 +v 0.326286 2.486670 0.813814 +v 0.067467 2.486670 0.813814 +v -0.067467 2.486670 2.186186 +v 0.062500 2.549170 1.391747 +v 0.125000 2.486670 1.500000 +v 0.062500 2.486670 1.391747 +v 0.062500 2.549170 1.608253 +v -0.062500 2.486670 1.608253 +v 0.062500 2.486670 1.608253 +v -0.062500 2.549170 1.391747 +v -0.062500 2.486670 1.391747 +v 0.125000 2.549170 1.500000 +v -0.062500 2.549170 1.608253 +v -0.125000 2.486670 1.500000 +v -0.125000 2.549170 1.500000 +v 0.437500 2.549170 1.016747 +v 0.500000 2.486670 1.125000 +v 0.437500 2.486670 1.016747 +v 0.437500 2.549170 1.233253 +v 0.312500 2.486670 1.233253 +v 0.437500 2.486670 1.233253 +v 0.312500 2.549170 1.016747 +v 0.312500 2.486670 1.016747 +v 0.500000 2.549170 1.125000 +v 0.312500 2.549170 1.233253 +v 0.250000 2.486670 1.125000 +v 0.250000 2.549170 1.125000 +v -0.312500 2.549170 1.766747 +v -0.250000 2.486670 1.875000 +v -0.312500 2.486670 1.766747 +v -0.312500 2.549170 1.983253 +v -0.437500 2.486670 1.983253 +v -0.312500 2.486670 1.983253 +v -0.437500 2.549170 1.766747 +v -0.437500 2.486670 1.766747 +v -0.250000 2.549170 1.875000 +v -0.437500 2.549170 1.983253 +v -0.500000 2.486670 1.875000 +v -0.500000 2.549170 1.875000 +v 1.244912 2.111670 0.781250 +v 0.815595 2.486670 0.949570 +v -0.815595 2.111670 2.050431 +v -0.550430 2.486670 2.315596 +v -1.000000 2.486670 1.500000 +v -0.866025 2.486670 2.000000 +v -0.326286 2.486670 2.186186 +v 0.156677 2.486670 2.315596 +v 0.866025 2.486670 2.000000 +v 0.500000 2.486670 2.366026 +v -0.866025 2.486670 1.000000 +v -0.156677 2.486670 0.684405 +v -0.500000 2.486670 0.633975 +v 1.000000 2.486670 1.500000 +v 0.866025 2.486670 1.000000 +v 0.574255 2.111670 3.643148 +v 0.000000 2.111670 3.718750 +v 1.921494 2.111670 0.390625 +v 2.143148 2.111670 0.925745 +v -1.568893 2.111670 -0.068893 +v -1.109375 2.111670 -0.421494 +v -0.574255 2.111670 3.643148 +v 2.218750 2.111670 1.500000 +v -0.574255 2.111670 -0.643148 +v -1.109375 2.111670 3.421494 +v 2.143148 2.111670 2.074255 +v 0.000000 2.111670 -0.718750 +v -1.568893 2.111670 3.068893 +v 1.921494 2.111670 2.609375 +v 0.574255 2.111670 -0.643148 +v -1.921494 2.111670 2.609375 +v 1.568893 2.111670 3.068893 +v 1.109375 2.111670 -0.421494 +v -2.143148 2.111670 2.074255 +v -2.218750 2.111670 1.500000 +v -2.143148 2.111670 0.925746 +v 1.109375 2.111670 3.421494 +v 1.568893 2.111670 -0.068893 +v -1.921494 2.111670 0.390625 +v -0.372052 2.111670 0.111482 +v 1.437500 2.111670 1.500000 +v -0.372052 2.111670 2.888518 +v -0.718750 2.111670 0.255088 +v 1.388518 2.111670 1.127948 +v 0.000000 2.111670 2.937500 +v -1.016466 2.111670 0.483534 +v 0.372052 2.111670 2.888518 +v -1.244911 2.111670 0.781250 +v -1.437500 2.111670 1.500000 +v 0.718750 2.111670 2.744912 +v -1.388518 2.111670 1.127948 +v -1.388518 2.111670 1.872052 +v 1.016466 2.111670 2.516466 +v 0.372052 2.111670 0.111482 +v 1.244912 2.111670 2.218750 +v 0.000000 2.111670 0.062500 +v 1.388518 2.111670 1.872052 +v -0.718750 2.111670 2.744912 +v 1.000000 2.111670 1.500000 +v 0.866025 2.111670 2.000000 +v 0.866025 2.111670 1.000000 +v -0.883883 2.111670 2.649049 +v 0.000000 2.111670 0.500000 +v -0.500000 2.111670 0.633975 +v -0.866025 2.111670 2.000000 +v -1.000000 2.111670 1.500000 +v 0.500000 2.111670 2.366026 +v -0.866025 2.111670 1.000000 +v 0.500000 2.111670 0.633975 +v 0.550430 2.111670 0.684405 +v 0.883884 2.111670 0.350952 +v -0.500000 2.111670 2.366026 +v -1.016466 2.111670 2.516466 +v -0.550430 2.111670 2.315596 +v 0.031250 2.611670 1.445874 +v 0.062500 2.611670 1.500000 +v -0.062500 2.611670 1.500000 +v -0.031250 2.611670 1.554127 +v -0.031250 2.611670 1.445874 +v 0.031250 2.611670 1.554127 +v -1.244912 2.111670 2.218750 +v 0.000000 2.111670 2.500000 +vt 0.033582 0.955224 +vt 0.005597 1.000000 +vt 0.000000 0.955224 +vt 0.061567 1.000000 +vt 0.039179 1.000000 +vt 0.100746 0.955224 +vt 0.072761 1.000000 +vt 0.067164 0.955224 +vt 0.134328 0.955224 +vt 0.106343 1.000000 +vt 0.167910 0.955224 +vt 0.139925 1.000000 +vt 0.201493 0.955224 +vt 0.173507 1.000000 +vt 0.229478 1.000000 +vt 0.207089 1.000000 +vt 0.235075 0.955224 +vt 0.263060 1.000000 +vt 0.240672 1.000000 +vt 0.302239 0.955224 +vt 0.274254 1.000000 +vt 0.268657 0.955224 +vt 0.335821 0.955224 +vt 0.307836 1.000000 +vt 0.369403 0.955224 +vt 0.341418 1.000000 +vt 0.402985 0.955224 +vt 0.375000 1.000000 +vt 0.436567 0.955224 +vt 0.408582 1.000000 +vt 0.470149 0.955224 +vt 0.442164 1.000000 +vt 0.503731 0.955224 +vt 0.475746 1.000000 +vt 0.537313 0.955224 +vt 0.509328 1.000000 +vt 0.570895 0.955224 +vt 0.542910 1.000000 +vt 0.604478 0.955224 +vt 0.576492 1.000000 +vt 0.638060 0.955224 +vt 0.610075 1.000000 +vt 0.671642 0.955224 +vt 0.643657 1.000000 +vt 0.705224 0.955224 +vt 0.677239 1.000000 +vt 0.738806 0.955224 +vt 0.710821 1.000000 +vt 0.766791 1.000000 +vt 0.744403 1.000000 +vt 0.805970 0.955224 +vt 0.777986 1.000000 +vt 0.772388 0.955224 +vt 0.201493 0.895522 +vt 0.179104 0.925373 +vt 0.201493 0.925373 +vt 0.223881 0.895522 +vt 0.223881 0.925373 +vt 0.567164 0.902985 +vt 0.597015 0.925373 +vt 0.567164 0.925373 +vt 0.597015 0.880597 +vt 0.567164 0.880597 +vt 0.567164 0.902985 +vt 0.537313 0.925373 +vt 0.537313 0.902985 +vt 0.537313 0.880597 +vt 0.566630 0.343284 +vt 0.563619 0.322787 +vt 0.574627 0.313433 +vt 0.563619 0.280571 +vt 0.566630 0.283582 +vt 0.555892 0.293953 +vt 0.555892 0.309405 +vt 0.545310 0.283582 +vt 0.548321 0.304079 +vt 0.537312 0.313433 +vt 0.556049 0.317459 +vt 0.548321 0.346295 +vt 0.545310 0.343284 +vt 0.556047 0.332913 +vt 0.637981 0.779028 +vt 0.637981 0.794480 +vt 0.556049 0.802535 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.600746 0.872135 +vt 0.600746 0.859209 +vt 0.611940 0.865672 +vt 0.619403 0.876866 +vt 0.611940 0.880597 +vt 0.619403 0.880597 +vt 0.604478 0.876866 +vt 0.597015 0.880597 +vt 0.604478 0.880597 +vt 0.626866 0.876866 +vt 0.626866 0.880597 +vt 0.611940 0.876866 +vt 0.641791 0.876866 +vt 0.634328 0.880597 +vt 0.641791 0.880597 +vt 0.634328 0.876866 +vt 0.600746 0.872135 +vt 0.600746 0.859209 +vt 0.611940 0.865672 +vt 0.027985 1.000000 +vt 0.095149 1.000000 +vt 0.128731 1.000000 +vt 0.162313 1.000000 +vt 0.195895 1.000000 +vt 0.296642 1.000000 +vt 0.330224 1.000000 +vt 0.363807 1.000000 +vt 0.397388 1.000000 +vt 0.430970 1.000000 +vt 0.464552 1.000000 +vt 0.498134 1.000000 +vt 0.531716 1.000000 +vt 0.565298 1.000000 +vt 0.598881 1.000000 +vt 0.632463 1.000000 +vt 0.666045 1.000000 +vt 0.699627 1.000000 +vt 0.733209 1.000000 +vt 0.800373 1.000000 +vt 0.179104 0.895522 +vt 0.597015 0.902985 +vt 0.567164 0.925373 +vt 0.567164 0.880597 +vt 0.597015 0.858209 +vt 0.567164 0.850210 +vt 0.556049 0.817987 +vt 0.564153 0.847200 +vt 0.548323 0.831369 +vt 0.548323 0.789154 +vt 0.567164 0.746804 +vt 0.545312 0.768657 +vt 0.626866 0.850210 +vt 0.645707 0.807861 +vt 0.648718 0.828358 +vt 0.597015 0.738806 +vt 0.626866 0.746804 +vt 0.629876 0.749815 +vt 0.645707 0.765646 +vt 0.597015 0.876866 +vt 0.597015 0.876866 +vt 0.608209 0.872135 +vt 0.597015 0.865672 +vt 0.608209 0.859209 +vt 0.597015 0.876866 +vt 0.608209 0.872135 +vt 0.597015 0.865672 +vt 0.608209 0.859209 +vt 0.033582 0.925373 +vt 0.000000 0.925373 +vt 0.268657 0.925373 +vt 0.235075 0.925373 +vt 0.503731 0.925373 +vt 0.470149 0.925373 +vt 0.805970 0.925373 +vt 0.772388 0.925373 +vt 0.201493 0.925373 +vt 0.436567 0.925373 +vt 0.738806 0.925373 +vt 0.167910 0.925373 +vt 0.402985 0.925373 +vt 0.705224 0.925373 +vt 0.134328 0.925373 +vt 0.369403 0.925373 +vt 0.671642 0.925373 +vt 0.100746 0.925373 +vt 0.335821 0.925373 +vt 0.638060 0.925373 +vt 0.604478 0.925373 +vt 0.570895 0.925373 +vt 0.067164 0.925373 +vt 0.302239 0.925373 +vt 0.537313 0.925373 +vt 0.313433 0.925373 +vt 0.291045 0.895522 +vt 0.291045 0.925373 +vt 0.156716 0.925373 +vt 0.134328 0.895522 +vt 0.134328 0.925373 +vt 0.537313 0.925373 +vt 0.514925 0.895522 +vt 0.514925 0.925373 +vt 0.335821 0.925373 +vt 0.313433 0.895522 +vt 0.156716 0.895522 +vt 0.022388 0.925373 +vt 0.000000 0.895522 +vt 0.000000 0.925373 +vt 0.358209 0.925373 +vt 0.335821 0.895522 +vt 0.044776 0.925373 +vt 0.022388 0.895522 +vt 0.380597 0.925373 +vt 0.358209 0.895522 +vt 0.425373 0.925373 +vt 0.402985 0.895522 +vt 0.402985 0.925373 +vt 0.067164 0.925373 +vt 0.044776 0.895522 +vt 0.380597 0.895522 +vt 0.447761 0.925373 +vt 0.425373 0.895522 +vt 0.246269 0.925373 +vt 0.089552 0.925373 +vt 0.067164 0.895522 +vt 0.268657 0.925373 +vt 0.246269 0.895522 +vt 0.111940 0.925373 +vt 0.089552 0.895522 +vt 0.268657 0.895522 +vt 0.111940 0.895522 +vt 0.492537 0.895522 +vt 0.492537 0.925373 +vt 0.720149 0.902985 +vt 0.690298 0.925373 +vt 0.690298 0.902985 +vt 0.660448 0.925373 +vt 0.660448 0.921642 +vt 0.690298 0.902985 +vt 0.660448 0.902985 +vt 0.660448 0.899254 +vt 0.750000 0.902985 +vt 0.720149 0.925373 +vt 0.567164 0.876866 +vt 0.537313 0.858209 +vt 0.630597 0.880597 +vt 0.660448 0.880597 +vt 0.750000 0.880597 +vt 0.720149 0.902985 +vt 0.720149 0.880597 +vt 0.630597 0.921642 +vt 0.660448 0.902985 +vt 0.690298 0.880597 +vt 0.600746 0.899254 +vt 0.600746 0.880597 +vt 0.597015 0.880597 +vt 0.597015 0.899254 +vt 0.567164 0.858209 +vt 0.597015 0.858209 +vt 0.597015 0.876866 +vt 0.753731 0.902985 +vt 0.750000 0.902985 +vt 0.600746 0.902985 +vt 0.600746 0.921642 +vt 0.470149 0.925373 +vt 0.470149 0.895522 +vt 0.597015 0.921642 +vt 0.597015 0.902985 +vt 0.750000 0.925373 +vt 0.753731 0.902985 +vt 0.753731 0.925373 +vt 0.597015 0.902985 +vt 0.611940 0.899254 +vt 0.611940 0.902985 +vt 0.626866 0.902985 +vt 0.626866 0.899254 +vt 0.641791 0.902985 +vt 0.641791 0.899254 +vt 0.641791 0.925373 +vt 0.626866 0.925373 +vt 0.641791 0.921642 +vt 0.611940 0.925373 +vt 0.626866 0.921642 +vt 0.597015 0.925373 +vt 0.619403 0.873134 +vt 0.611940 0.873134 +vt 0.634328 0.873134 +vt 0.597015 0.873134 +vt 0.626866 0.873134 +vt 0.604478 0.873134 +vt 0.617537 0.858709 +vt 0.619403 0.861940 +vt 0.613806 0.865172 +vt 0.537313 0.895522 +vt 0.447761 0.895522 +vt 0.567164 0.858209 +vt 0.630597 0.899254 +vt 0.630597 0.902985 +vt 0.753731 0.880597 +vt 0.611940 0.921642 +vt 0.641791 0.873134 +vt 0.617537 0.865172 +vt 0.611940 0.861940 +vt 0.613806 0.858709 +vn 0.0000 1.0000 0.0000 +vn -0.7934 0.0000 0.6088 +vn -0.6088 0.0000 0.7934 +vn 0.7071 0.0000 0.7071 +vn -0.7071 0.0000 -0.7071 +vn 0.8660 0.0000 -0.5000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.8660 0.0000 0.5000 +vn -0.8660 0.0000 0.5000 +vn -0.8660 0.0000 -0.5000 +vn 0.2588 0.0000 0.9659 +vn 0.9659 0.0000 -0.2588 +vn -0.5000 0.0000 -0.8660 +vn -0.2588 0.0000 0.9659 +vn 1.0000 0.0000 -0.0000 +vn -0.2588 0.0000 -0.9659 +vn -0.5000 0.0000 0.8660 +vn 0.9659 0.0000 0.2588 +vn -0.7071 0.0000 0.7071 +vn 0.2588 0.0000 -0.9659 +vn 0.5000 0.0000 -0.8660 +vn -0.9659 0.0000 0.2588 +vn -1.0000 0.0000 -0.0000 +vn -0.9659 0.0000 -0.2588 +vn 0.5000 0.0000 0.8660 +vn 0.7071 0.0000 -0.7071 +vn -0.9239 0.0000 0.3827 +vn -0.3827 0.0000 0.9239 +vn 0.3144 0.0000 0.9493 +vn 0.4129 0.0000 0.9108 +vn -0.3144 0.0000 -0.9493 +vn -0.4129 0.0000 -0.9108 +vn 0.6430 0.0000 0.7659 +vn -0.6430 0.0000 -0.7659 +vn -0.6088 0.0000 -0.7934 +vn 0.3285 0.0000 -0.9445 +vn -0.3285 0.0000 0.9445 +vn 0.6088 0.0000 0.7934 +vn -0.3536 0.7071 -0.6124 +vn 0.2400 0.8773 -0.4156 +vn 0.3536 0.7071 -0.6124 +vn 0.4799 0.8773 -0.0000 +vn 0.7071 0.7071 -0.0000 +vn -0.3536 0.7071 0.6124 +vn -0.4799 0.8773 -0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.3536 0.7071 0.6124 +vn -0.2400 0.8773 0.4157 +vn -0.2400 0.8773 -0.4156 +vn 0.2400 0.8773 0.4157 +s off +f 1/1/1 2/2/1 3/3/1 +f 1/1/1 4/4/1 5/5/1 +f 6/6/1 4/7/1 7/8/1 +f 8/9/1 9/10/1 6/6/1 +f 10/11/1 11/12/1 8/9/1 +f 12/13/1 13/14/1 10/11/1 +f 12/13/1 14/15/1 15/16/1 +f 16/17/1 17/18/1 14/19/1 +f 18/20/1 17/21/1 19/22/1 +f 20/23/1 21/24/1 18/20/1 +f 22/25/1 23/26/1 20/23/1 +f 24/27/1 25/28/1 22/25/1 +f 26/29/1 27/30/1 24/27/1 +f 28/31/1 29/32/1 26/29/1 +f 30/33/1 31/34/1 28/31/1 +f 32/35/1 33/36/1 30/33/1 +f 34/37/1 35/38/1 32/35/1 +f 36/39/1 37/40/1 34/37/1 +f 38/41/1 39/42/1 36/39/1 +f 40/43/1 41/44/1 38/41/1 +f 42/45/1 43/46/1 40/43/1 +f 44/47/1 45/48/1 42/45/1 +f 44/47/1 46/49/1 47/50/1 +f 3/51/1 46/52/1 48/53/1 +f 49/54/2 17/55/2 21/56/2 +f 50/57/3 21/56/3 23/58/3 +f 51/59/4 52/60/4 53/61/4 +f 54/62/1 51/59/1 55/63/1 +f 56/64/5 57/65/5 58/66/5 +f 59/67/1 56/64/1 58/66/1 +f 60/68/1 61/69/1 62/70/1 +f 63/71/1 64/72/1 65/73/1 +f 62/70/1 65/73/1 64/72/1 +f 66/74/1 62/70/1 61/69/1 +f 67/75/1 68/76/1 69/77/1 +f 70/78/1 69/77/1 68/76/1 +f 71/79/1 72/80/1 73/81/1 +f 69/77/1 73/81/1 72/80/1 +f 74/82/1 75/83/1 76/84/1 +f 77/85/6 78/86/6 79/87/6 +f 80/88/7 81/89/7 82/90/7 +f 83/91/8 79/87/8 84/92/8 +f 85/93/9 82/90/9 78/86/9 +f 86/94/10 87/95/10 81/96/10 +f 88/97/11 84/92/11 87/95/11 +f 89/98/6 90/99/6 91/100/6 +f 92/101/7 93/102/7 94/103/7 +f 95/104/8 91/100/8 96/105/8 +f 97/106/9 94/103/9 90/99/9 +f 98/107/10 99/108/10 93/109/10 +f 100/110/11 96/105/11 99/108/11 +f 92/111/1 89/112/1 100/113/1 +f 101/114/6 102/115/6 103/116/6 +f 104/117/7 105/118/7 106/119/7 +f 107/120/8 103/116/8 108/121/8 +f 109/122/9 106/119/9 102/115/9 +f 110/123/10 111/124/10 105/125/10 +f 112/126/11 108/121/11 111/124/11 +f 104/127/1 101/128/1 112/129/1 +f 1/1/1 5/130/1 2/2/1 +f 1/1/1 7/8/1 4/4/1 +f 6/6/1 9/131/1 4/7/1 +f 8/9/1 11/132/1 9/10/1 +f 10/11/1 13/133/1 11/12/1 +f 12/13/1 15/134/1 13/14/1 +f 12/13/1 16/17/1 14/15/1 +f 16/17/1 19/22/1 17/18/1 +f 18/20/1 21/135/1 17/21/1 +f 20/23/1 23/136/1 21/24/1 +f 22/25/1 25/137/1 23/26/1 +f 24/27/1 27/138/1 25/28/1 +f 26/29/1 29/139/1 27/30/1 +f 28/31/1 31/140/1 29/32/1 +f 30/33/1 33/141/1 31/34/1 +f 32/35/1 35/142/1 33/36/1 +f 34/37/1 37/143/1 35/38/1 +f 36/39/1 39/144/1 37/40/1 +f 38/41/1 41/145/1 39/42/1 +f 40/43/1 43/146/1 41/44/1 +f 42/45/1 45/147/1 43/46/1 +f 44/47/1 47/148/1 45/48/1 +f 44/47/1 48/53/1 46/49/1 +f 3/51/1 2/149/1 46/52/1 +f 49/54/2 113/150/2 17/55/2 +f 50/57/3 49/54/3 21/56/3 +f 51/59/4 114/151/4 52/60/4 +f 54/62/1 114/151/1 51/59/1 +f 56/64/5 115/152/5 57/65/5 +f 59/67/1 116/153/1 56/64/1 +f 62/70/1 66/74/1 65/73/1 +f 69/77/1 70/78/1 73/81/1 +f 117/154/1 118/155/1 119/156/1 +f 118/155/1 56/157/1 119/156/1 +f 56/157/1 116/158/1 119/156/1 +f 76/84/1 120/159/1 121/160/1 +f 120/159/1 122/161/1 121/160/1 +f 119/156/1 76/84/1 75/83/1 +f 117/154/1 119/156/1 75/83/1 +f 123/162/1 117/154/1 75/83/1 +f 124/163/1 125/164/1 123/162/1 +f 75/83/1 124/163/1 123/162/1 +f 121/160/1 126/165/1 76/84/1 +f 126/165/1 127/166/1 74/82/1 +f 76/84/1 126/165/1 74/82/1 +f 127/166/1 114/167/1 74/82/1 +f 114/167/1 54/168/1 74/82/1 +f 77/85/6 85/93/6 78/86/6 +f 80/88/7 86/169/7 81/89/7 +f 83/91/8 77/85/8 79/87/8 +f 85/93/9 80/88/9 82/90/9 +f 86/94/10 88/97/10 87/95/10 +f 88/97/11 83/91/11 84/92/11 +f 89/98/6 97/106/6 90/99/6 +f 92/101/7 98/170/7 93/102/7 +f 95/104/8 89/98/8 91/100/8 +f 97/106/9 92/101/9 94/103/9 +f 98/107/10 100/110/10 99/108/10 +f 100/110/11 95/104/11 96/105/11 +f 100/113/1 98/171/1 92/111/1 +f 92/111/1 97/172/1 89/112/1 +f 89/112/1 95/173/1 100/113/1 +f 101/114/6 109/122/6 102/115/6 +f 104/117/7 110/174/7 105/118/7 +f 107/120/8 101/114/8 103/116/8 +f 109/122/9 104/117/9 106/119/9 +f 110/123/10 112/126/10 111/124/10 +f 112/126/11 107/120/11 108/121/11 +f 112/129/1 110/175/1 104/127/1 +f 104/127/1 109/176/1 101/128/1 +f 101/128/1 107/177/1 112/129/1 +s 1 +f 128/178/12 3/3/7 129/179/7 +f 130/180/6 16/17/13 131/181/13 +f 132/182/5 28/31/14 133/183/14 +f 129/184/7 48/53/15 134/185/15 +f 131/181/13 12/13/16 135/186/16 +f 133/183/14 26/29/17 136/187/17 +f 134/185/15 44/47/18 137/188/18 +f 135/186/16 10/11/19 138/189/19 +f 136/187/17 24/27/8 139/190/8 +f 137/188/18 42/45/20 140/191/20 +f 138/189/19 8/9/9 141/192/9 +f 139/190/8 22/25/21 142/193/21 +f 140/191/20 40/43/10 143/194/10 +f 141/192/9 6/6/4 144/195/4 +f 142/193/21 20/23/22 145/196/22 +f 143/194/10 38/41/23 146/197/23 +f 147/198/24 34/37/25 148/199/25 +f 144/195/4 7/8/26 149/200/26 +f 145/196/22 18/20/27 150/201/27 +f 146/197/23 36/39/24 147/198/24 +f 148/199/25 32/35/11 151/202/11 +f 149/200/26 1/1/12 128/178/12 +f 150/201/27 19/22/6 130/180/6 +f 151/202/11 30/33/5 132/182/5 +f 31/203/26 152/204/12 29/205/12 +f 14/206/23 153/207/24 15/208/24 +f 2/209/8 154/210/21 46/211/21 +f 33/212/4 155/213/26 31/203/26 +f 17/55/28 156/214/23 14/206/23 +f 5/215/17 157/216/8 2/217/8 +f 35/218/9 158/219/4 33/212/4 +f 4/220/14 159/221/17 5/215/17 +f 37/222/19 160/223/9 35/218/9 +f 41/224/13 161/225/16 39/226/16 +f 9/227/5 162/228/14 4/220/14 +f 39/226/16 163/229/19 37/222/19 +f 43/230/6 164/231/13 41/224/13 +f 25/232/15 50/57/29 23/58/29 +f 11/233/11 165/234/5 9/227/5 +f 27/235/7 166/236/15 25/232/15 +f 13/237/25 167/238/11 11/233/11 +f 29/205/12 168/239/7 27/235/7 +f 15/208/24 169/240/25 13/237/25 +f 46/211/21 170/241/22 47/242/22 +f 171/243/16 121/244/9 172/245/9 +f 121/244/9 122/246/30 67/247/31 +f 123/248/11 125/249/32 60/250/33 +f 173/251/6 126/252/16 171/243/16 +f 71/253/34 59/67/4 174/254/4 +f 60/250/33 175/255/8 176/256/14 +f 177/257/10 117/258/24 178/259/24 +f 69/260/7 179/261/26 67/247/31 +f 178/259/24 123/248/11 180/262/11 +f 175/255/8 64/263/22 181/264/22 +f 182/265/27 64/263/22 63/266/27 +f 183/267/5 182/268/5 63/269/35 +f 177/257/10 56/270/20 118/271/10 +f 184/272/18 69/260/7 72/273/18 +f 45/274/27 170/241/22 185/275/27 +f 185/275/27 43/230/6 45/274/27 +f 184/272/18 71/276/20 186/277/20 +f 127/278/6 52/279/27 114/280/27 +f 54/281/36 65/282/17 74/283/17 +f 75/284/21 65/282/17 66/285/21 +f 124/286/37 66/285/21 61/287/37 +f 124/286/37 60/250/33 125/249/32 +f 120/288/38 67/247/31 122/246/30 +f 76/289/15 68/290/38 120/288/38 +f 119/291/12 70/292/15 76/289/15 +f 71/276/34 119/291/12 116/293/39 +f 83/91/40 187/294/41 77/85/42 +f 77/85/42 188/295/43 85/93/44 +f 86/94/45 189/296/46 88/97/47 +f 80/88/48 190/297/49 86/169/45 +f 83/91/40 189/296/46 191/298/50 +f 85/93/44 192/299/51 80/88/48 +f 191/300/50 189/301/46 192/302/51 +f 128/178/12 1/1/12 3/3/7 +f 130/180/6 19/22/6 16/17/13 +f 132/182/5 30/33/5 28/31/14 +f 129/184/7 3/51/7 48/53/15 +f 131/181/13 16/17/13 12/13/16 +f 133/183/14 28/31/14 26/29/17 +f 134/185/15 48/53/15 44/47/18 +f 135/186/16 12/13/16 10/11/19 +f 136/187/17 26/29/17 24/27/8 +f 137/188/18 44/47/18 42/45/20 +f 138/189/19 10/11/19 8/9/9 +f 139/190/8 24/27/8 22/25/21 +f 140/191/20 42/45/20 40/43/10 +f 141/192/9 8/9/9 6/6/4 +f 142/193/21 22/25/21 20/23/22 +f 143/194/10 40/43/10 38/41/23 +f 147/198/24 36/39/24 34/37/25 +f 144/195/4 6/6/4 7/8/26 +f 145/196/22 20/23/22 18/20/27 +f 146/197/23 38/41/23 36/39/24 +f 148/199/25 34/37/25 32/35/11 +f 149/200/26 7/8/26 1/1/12 +f 150/201/27 18/20/27 19/22/6 +f 151/202/11 32/35/11 30/33/5 +f 31/203/26 155/213/26 152/204/12 +f 14/206/23 156/214/23 153/207/24 +f 2/209/8 157/303/8 154/210/21 +f 33/212/4 158/219/4 155/213/26 +f 17/55/28 113/150/28 156/214/23 +f 5/215/17 159/221/17 157/216/8 +f 35/218/9 160/223/9 158/219/4 +f 4/220/14 162/228/14 159/221/17 +f 37/222/19 163/229/19 160/223/9 +f 41/224/13 164/231/13 161/225/16 +f 9/227/5 165/234/5 162/228/14 +f 39/226/16 161/225/16 163/229/19 +f 43/230/6 193/304/6 164/231/13 +f 25/232/15 166/236/15 50/57/29 +f 11/233/11 167/238/11 165/234/5 +f 27/235/7 168/239/7 166/236/15 +f 13/237/25 169/240/25 167/238/11 +f 29/205/12 152/204/12 168/239/7 +f 15/208/24 153/207/24 169/240/25 +f 46/211/21 154/210/21 170/241/22 +f 171/243/16 126/252/16 121/244/9 +f 179/261/26 172/245/9 67/247/31 +f 172/245/9 121/244/9 67/247/31 +f 60/250/33 176/256/14 180/262/11 +f 180/262/11 123/248/11 60/250/33 +f 173/251/6 127/278/6 126/252/16 +f 174/254/4 186/305/4 71/253/34 +f 71/253/34 116/153/39 59/67/4 +f 60/250/33 62/306/8 175/255/8 +f 177/257/10 118/271/10 117/258/24 +f 69/260/7 194/307/7 179/261/26 +f 178/259/24 117/258/24 123/248/11 +f 175/255/8 62/306/8 64/263/22 +f 182/265/27 181/264/22 64/263/22 +f 63/269/35 54/62/36 55/63/5 +f 55/63/5 183/267/5 63/269/35 +f 177/257/10 115/308/20 56/270/20 +f 184/272/18 194/307/7 69/260/7 +f 45/274/27 47/242/22 170/241/22 +f 185/275/27 193/304/6 43/230/6 +f 184/272/18 72/273/18 71/276/20 +f 127/278/6 173/251/6 52/279/27 +f 54/281/36 63/266/35 65/282/17 +f 75/284/21 74/283/17 65/282/17 +f 124/286/37 75/284/21 66/285/21 +f 124/286/37 61/287/37 60/250/33 +f 120/288/38 68/290/38 67/247/31 +f 76/289/15 70/292/15 68/290/38 +f 119/291/12 73/309/12 70/292/15 +f 71/276/34 73/309/12 119/291/12 +f 83/91/40 191/298/50 187/294/41 +f 77/85/42 187/294/41 188/295/43 +f 86/94/45 190/310/49 189/296/46 +f 80/88/48 192/299/51 190/297/49 +f 83/91/40 88/97/47 189/296/46 +f 85/93/44 188/295/43 192/299/51 +f 189/301/46 190/311/49 192/302/51 +f 192/302/51 188/312/43 187/313/41 +f 187/313/41 191/300/50 192/302/51 +o MagPlate +v -0.239382 2.111670 3.718485 +v -0.239382 2.111670 3.780985 +v 0.239382 2.111670 3.718485 +v -1.590990 2.049170 3.090990 +v -1.948557 2.049170 2.625000 +v -0.239382 2.049170 3.718485 +v 0.239382 2.049170 3.780985 +v 0.239382 2.049170 3.718485 +v 0.239382 2.111670 3.780985 +v -0.239382 2.049170 3.780985 +v 0.582343 2.111670 3.673333 +v 1.125000 2.111670 3.448557 +v 1.590990 2.111670 3.090990 +v 1.948557 2.111670 2.625000 +v 2.173333 2.111670 2.082343 +v 2.250000 2.111670 1.500000 +v 2.173333 2.111670 0.917657 +v 1.948557 2.111670 0.375000 +v 1.590990 2.111670 -0.090990 +v 1.125000 2.111670 -0.448557 +v 0.582343 2.111670 -0.673333 +v 0.000000 2.111670 -0.750000 +v -0.582343 2.111670 -0.673333 +v -1.125000 2.111670 -0.448557 +v -1.590990 2.111670 -0.090991 +v -1.948557 2.111670 0.375000 +v -2.173333 2.111670 0.917658 +v -2.250000 2.111670 1.500000 +v -2.173333 2.111670 2.082343 +v -1.948557 2.111670 2.625000 +v -1.590990 2.111670 3.090990 +v -1.125000 2.111670 3.448557 +v -0.582343 2.111670 3.673333 +v -0.582343 2.049170 3.673333 +v -1.125000 2.049170 3.448557 +v 1.125000 2.049170 3.448557 +v 0.582343 2.049170 3.673333 +v 1.948557 2.049170 2.625000 +v 1.590990 2.049170 3.090990 +v 2.250000 2.049170 1.500000 +v 2.173333 2.049170 2.082343 +v 1.948557 2.049170 0.375000 +v 2.173333 2.049170 0.917657 +v 1.125000 2.049170 -0.448557 +v 1.590990 2.049170 -0.090990 +v 0.000000 2.049170 -0.750000 +v 0.582343 2.049170 -0.673333 +v -1.125000 2.049170 -0.448557 +v -0.582343 2.049170 -0.673333 +v -1.948557 2.049170 0.375000 +v -1.590990 2.049170 -0.090991 +v -2.250000 2.049170 1.500000 +v -2.173333 2.049170 0.917658 +v -2.173333 2.049170 2.082343 +vt 0.148620 0.891768 +vt 0.148620 0.895526 +vt 0.120037 0.891768 +vt 0.308001 0.854042 +vt 0.286653 0.826028 +vt 0.388694 0.891765 +vt 0.022388 0.619403 +vt 0.018657 0.623134 +vt 0.022388 0.623134 +vt 0.018657 0.619403 +vt 0.000000 0.623134 +vt 0.391791 0.615672 +vt 0.388060 0.619403 +vt 0.391791 0.619403 +vt 0.120037 0.895526 +vt 0.099562 0.889054 +vt 0.067164 0.875541 +vt 0.039344 0.854046 +vt 0.017997 0.826032 +vt 0.004577 0.793409 +vt 0.000000 0.758400 +vt 0.004577 0.723392 +vt 0.017997 0.690770 +vt 0.039344 0.662756 +vt 0.067164 0.641260 +vt 0.099562 0.627747 +vt 0.134328 0.623138 +vt 0.169095 0.627747 +vt 0.201493 0.641260 +vt 0.229313 0.662756 +vt 0.250660 0.690770 +vt 0.264080 0.723392 +vt 0.268657 0.758403 +vt 0.264080 0.793409 +vt 0.250660 0.826032 +vt 0.229313 0.854046 +vt 0.201493 0.875541 +vt 0.169095 0.889054 +vt 0.417277 0.891765 +vt 0.417276 0.895522 +vt 0.388694 0.895522 +vt 0.368218 0.889050 +vt 0.335821 0.875538 +vt 0.470149 0.875538 +vt 0.437752 0.889050 +vt 0.519317 0.826028 +vt 0.497970 0.854042 +vt 0.537313 0.758398 +vt 0.532736 0.793405 +vt 0.519317 0.690766 +vt 0.532736 0.723389 +vt 0.470149 0.641256 +vt 0.497970 0.662752 +vt 0.402985 0.623134 +vt 0.437752 0.627744 +vt 0.335821 0.641256 +vt 0.368218 0.627744 +vt 0.286653 0.690766 +vt 0.308001 0.662752 +vt 0.268657 0.758395 +vt 0.273234 0.723389 +vt 0.273234 0.793405 +vt 0.000000 0.619403 +vt 0.388060 0.615672 +vt 0.302239 0.615672 +vt 0.268657 0.619403 +vt 0.302239 0.619403 +vt 0.410448 0.619403 +vt 0.376866 0.623134 +vt 0.410448 0.623134 +vt 0.175373 0.619403 +vt 0.141791 0.623134 +vt 0.175373 0.623134 +vt 0.335821 0.615672 +vt 0.335821 0.619403 +vt 0.033582 0.615672 +vt -0.000000 0.619403 +vt 0.033582 0.619403 +vt 0.208955 0.619403 +vt 0.208955 0.623134 +vt 0.369403 0.615672 +vt 0.369403 0.619403 +vt 0.067164 0.615672 +vt 0.067164 0.619403 +vt 0.242537 0.619403 +vt 0.242537 0.623134 +vt 0.100746 0.615672 +vt 0.100746 0.619403 +vt 0.276119 0.619403 +vt 0.276119 0.623134 +vt 0.041045 0.619403 +vt 0.041045 0.623134 +vt 0.134328 0.615672 +vt 0.134328 0.619403 +vt 0.309702 0.619403 +vt 0.309702 0.623134 +vt 0.074627 0.619403 +vt 0.074627 0.623134 +vt 0.167910 0.615672 +vt 0.167910 0.619403 +vt 0.235075 0.615672 +vt 0.201493 0.619403 +vt 0.235075 0.619403 +vt 0.343284 0.619403 +vt 0.343284 0.623134 +vt 0.108209 0.619403 +vt 0.108209 0.623134 +vt 0.201493 0.615672 +vt 0.268657 0.615672 +vt 0.376866 0.619403 +vt 0.141791 0.619403 +vt 0.000000 0.615672 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.0000 0.7071 +vn -0.8660 0.0000 0.5000 +vn -0.0000 0.0000 -1.0000 +vn 0.2588 0.0000 -0.9659 +vn 0.9659 0.0000 0.2588 +vn 0.8660 0.0000 0.5000 +vn -0.5000 0.0000 0.8660 +vn -0.2588 0.0000 -0.9659 +vn -0.2588 0.0000 0.9659 +vn -0.5000 0.0000 -0.8660 +vn 0.9659 0.0000 -0.2588 +vn -0.7071 0.0000 -0.7071 +vn 0.8660 0.0000 -0.5000 +vn 0.2588 0.0000 0.9659 +vn 0.1305 0.0000 0.9914 +vn -0.8660 0.0000 -0.5000 +vn 0.7071 0.0000 -0.7071 +vn 0.5000 0.0000 0.8660 +vn -0.9659 0.0000 -0.2588 +vn -0.9659 0.0000 0.2588 +vn 0.5000 0.0000 -0.8660 +vn -0.1305 0.0000 0.9914 +vn 0.7071 0.0000 0.7071 +s off +f 195/314/52 196/315/52 197/316/52 +f 198/317/53 199/318/53 200/319/53 +f 197/320/54 201/321/54 202/322/54 +f 203/323/55 204/324/55 201/321/55 +f 196/325/56 200/326/56 204/327/56 +f 196/315/52 203/328/52 197/316/52 +f 197/316/52 205/329/52 206/330/52 +f 206/330/52 207/331/52 197/316/52 +f 207/331/52 208/332/52 197/316/52 +f 208/332/52 209/333/52 197/316/52 +f 209/333/52 210/334/52 197/316/52 +f 210/334/52 211/335/52 197/316/52 +f 211/335/52 212/336/52 197/316/52 +f 212/336/52 213/337/52 197/316/52 +f 213/337/52 214/338/52 197/316/52 +f 214/338/52 215/339/52 197/316/52 +f 215/339/52 216/340/52 197/316/52 +f 197/316/52 216/340/52 195/314/52 +f 216/340/52 217/341/52 195/314/52 +f 217/341/52 218/342/52 195/314/52 +f 218/342/52 219/343/52 195/314/52 +f 219/343/52 220/344/52 195/314/52 +f 220/344/52 221/345/52 195/314/52 +f 221/345/52 222/346/52 195/314/52 +f 222/346/52 223/347/52 195/314/52 +f 223/347/52 224/348/52 195/314/52 +f 224/348/52 225/349/52 195/314/52 +f 225/349/52 226/350/52 195/314/52 +f 226/350/52 227/351/52 195/314/52 +f 202/352/53 201/353/53 204/354/53 +f 200/319/53 228/355/53 229/356/53 +f 202/352/53 204/354/53 200/319/53 +f 230/357/53 231/358/53 202/352/53 +f 232/359/53 233/360/53 202/352/53 +f 233/360/53 230/357/53 202/352/53 +f 234/361/53 235/362/53 202/352/53 +f 235/362/53 232/359/53 202/352/53 +f 236/363/53 237/364/53 202/352/53 +f 237/364/53 234/361/53 202/352/53 +f 238/365/53 239/366/53 202/352/53 +f 239/366/53 236/363/53 202/352/53 +f 240/367/53 241/368/53 202/352/53 +f 241/368/53 238/365/53 202/352/53 +f 242/369/53 243/370/53 200/319/53 +f 243/370/53 240/367/53 200/319/53 +f 200/319/53 240/367/53 202/352/53 +f 244/371/53 245/372/53 200/319/53 +f 245/372/53 242/369/53 200/319/53 +f 246/373/53 247/374/53 200/319/53 +f 247/374/53 244/371/53 200/319/53 +f 199/318/53 248/375/53 200/319/53 +f 248/375/53 246/373/53 200/319/53 +f 229/356/53 198/317/53 200/319/53 +f 197/320/54 203/323/54 201/321/54 +f 203/323/55 196/376/55 204/324/55 +f 196/325/56 195/377/56 200/326/56 +s 1 +f 225/378/57 199/379/58 198/380/57 +f 216/381/59 241/382/60 240/383/59 +f 209/384/61 232/385/62 235/386/61 +f 226/387/63 198/380/57 229/388/63 +f 217/389/64 240/390/59 243/391/64 +f 210/392/54 235/386/61 234/393/54 +f 227/394/65 229/388/63 228/395/65 +f 218/396/66 243/391/64 242/397/66 +f 211/398/67 234/393/54 237/399/67 +f 219/400/68 242/397/66 245/401/68 +f 212/402/69 237/399/67 236/403/69 +f 205/404/70 202/322/71 231/405/70 +f 220/406/72 245/401/68 244/407/72 +f 213/408/73 236/403/69 239/409/73 +f 206/410/74 231/405/70 230/411/74 +f 221/412/75 244/407/72 247/413/75 +f 223/414/76 246/415/56 248/416/76 +f 214/417/77 239/409/73 238/418/77 +f 195/377/78 228/395/65 200/326/78 +f 207/419/79 230/411/74 233/420/79 +f 222/421/56 247/413/75 246/415/56 +f 224/422/58 248/416/76 199/379/58 +f 215/423/60 238/418/77 241/382/60 +f 208/424/62 233/420/79 232/385/62 +f 225/378/57 224/422/58 199/379/58 +f 216/381/59 215/423/60 241/382/60 +f 209/384/61 208/424/62 232/385/62 +f 226/387/63 225/378/57 198/380/57 +f 217/389/64 216/425/59 240/390/59 +f 210/392/54 209/384/61 235/386/61 +f 227/394/65 226/387/63 229/388/63 +f 218/396/66 217/389/64 243/391/64 +f 211/398/67 210/392/54 234/393/54 +f 219/400/68 218/396/66 242/397/66 +f 212/402/69 211/398/67 237/399/67 +f 205/404/70 197/320/71 202/322/71 +f 220/406/72 219/400/68 245/401/68 +f 213/408/73 212/402/69 236/403/69 +f 206/410/74 205/404/70 231/405/70 +f 221/412/75 220/406/72 244/407/72 +f 223/414/76 222/421/56 246/415/56 +f 214/417/77 213/408/73 239/409/73 +f 195/377/78 227/394/65 228/395/65 +f 207/419/79 206/410/74 230/411/74 +f 222/421/56 221/412/75 247/413/75 +f 224/422/58 223/414/76 248/416/76 +f 215/423/60 214/417/77 238/418/77 +f 208/424/62 207/419/79 233/420/79 +o Silencer +v 0.000000 1.736670 16.750000 +v -0.088388 1.773282 11.875000 +v -0.088388 1.773282 16.750000 +v 0.125000 1.861670 16.750000 +v 0.088388 1.773282 11.875000 +v 0.088388 1.773282 16.750000 +v 0.000000 1.986670 16.750000 +v 0.088388 1.950058 11.875000 +v 0.088388 1.950058 16.750000 +v -0.125000 1.861670 16.750000 +v -0.088388 1.950058 11.875000 +v -0.088388 1.950058 16.750000 +v -0.125000 1.861670 11.875000 +v 0.000000 1.736670 11.875000 +v 0.125000 1.861670 11.875000 +v 0.000000 1.986670 11.875000 +v -0.281250 2.348809 16.750000 +v -0.487139 2.142920 16.750000 +v -0.281250 1.374531 16.750000 +v 0.281250 1.374531 16.750000 +v 0.487139 1.580420 16.750000 +v 0.000000 1.299170 16.750000 +v 0.562500 1.861670 16.750000 +v 0.281250 2.348809 16.750000 +v 0.000000 2.424170 16.750000 +v -0.487139 1.580420 16.750000 +v -0.562500 1.861670 16.750000 +v 0.000000 2.424170 11.875000 +v 0.281250 2.348809 11.875000 +v -0.487139 1.580420 11.875000 +v -0.562500 1.861670 11.875000 +v -0.487139 2.142920 11.875000 +v 0.487139 1.580420 11.875000 +v 0.281250 1.374531 11.875000 +v 0.487139 2.142920 16.750000 +v 0.487139 2.142920 11.875000 +v -0.281250 2.348809 11.875000 +v 0.000000 1.299170 11.875000 +v 0.562500 1.861670 11.875000 +v -0.281250 1.374531 11.875000 +vt 0.287313 0.361940 +vt -0.000000 0.354478 +vt 0.287313 0.354478 +vt 0.287313 0.376866 +vt -0.000000 0.369403 +vt 0.287313 0.369403 +vt 0.287313 0.391791 +vt -0.000000 0.384328 +vt 0.287313 0.384328 +vt 0.287313 0.347015 +vt -0.000000 0.339552 +vt 0.287313 0.339552 +vt -0.000000 0.347015 +vt -0.000000 0.361940 +vt -0.000000 0.376866 +vt -0.000000 0.332090 +vt 0.287313 0.332090 +vt 0.026119 0.410448 +vt 0.026119 0.429104 +vt -0.000000 0.421642 +vt 0.026119 0.485075 +vt -0.000000 0.500000 +vt -0.000000 0.492537 +vt 0.026119 0.522388 +vt 0.026119 0.541045 +vt 0.000000 0.533582 +vt 0.000000 0.511194 +vt 0.026119 0.503731 +vt 0.000000 0.555970 +vt 0.026119 0.559702 +vt -0.000000 0.611940 +vt 0.026119 0.597015 +vt 0.026119 0.615672 +vt 0.000000 0.444030 +vt 0.000000 0.436567 +vt 0.000000 0.399254 +vt 0.026119 0.391791 +vt 0.026119 0.466418 +vt -0.000000 0.455224 +vt 0.026119 0.447761 +vt 0.313433 0.615672 +vt 0.313433 0.597015 +vt 0.313433 0.466418 +vt 0.313433 0.447761 +vt 0.313433 0.429104 +vt 0.313433 0.541045 +vt 0.313433 0.522388 +vt 0.026119 0.578358 +vt 0.313433 0.578358 +vt 0.313433 0.410448 +vt 0.313433 0.503731 +vt 0.313433 0.559702 +vt 0.313433 0.391791 +vt 0.313433 0.485075 +vt 0.376007 0.565419 +vt 0.376007 0.598760 +vt 0.347015 0.615672 +vt 0.000000 0.477612 +vt -0.000000 0.589552 +vt -0.000000 0.567164 +vt -0.000000 0.574627 +vt -0.000000 0.391791 +vt -0.000000 0.518657 +vt 0.000000 0.548507 +vt 0.000000 0.604478 +vt 0.000000 0.406716 +vt 0.000000 0.462687 +vt 0.330345 0.611081 +vt 0.318023 0.598760 +vt 0.313433 0.582090 +vt 0.318023 0.565419 +vt 0.330345 0.553098 +vt 0.347015 0.548507 +vt 0.363685 0.553098 +vt 0.380597 0.582090 +vt 0.363685 0.611081 +vn 0.0000 1.0000 0.0000 +vn 0.7071 0.7071 0.0000 +vn -1.0000 0.0000 0.0000 +vn -0.7071 0.7071 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.7071 -0.7071 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.7071 -0.7071 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.5000 0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 0.0000 -1.0000 +s 1 +f 249/426/80 250/427/81 251/428/81 +f 252/429/82 253/430/83 254/431/83 +f 255/432/84 256/433/85 257/434/85 +f 258/435/86 259/436/87 260/437/87 +f 258/435/86 250/427/81 261/438/86 +f 254/431/83 262/439/80 249/426/80 +f 252/429/82 256/433/85 263/440/82 +f 260/437/87 264/441/84 255/442/84 +f 265/443/88 266/444/88 260/445/88 +f 267/446/88 249/447/88 251/448/88 +f 268/449/88 269/450/88 254/451/88 +f 268/449/88 249/452/88 270/453/88 +f 252/454/88 269/450/88 271/455/88 +f 255/456/88 272/457/88 273/458/88 +f 266/444/88 258/459/88 260/460/88 +f 265/443/88 255/461/88 273/462/88 +f 274/463/88 258/464/88 275/465/88 +f 276/466/80 272/457/89 277/467/89 +f 278/468/90 267/446/91 274/463/90 +f 279/469/82 266/444/92 280/470/92 +f 281/471/93 268/449/94 282/472/94 +f 277/467/89 283/473/95 284/474/95 +f 278/468/90 275/465/82 279/469/82 +f 280/470/92 265/443/96 285/475/96 +f 282/472/94 270/453/84 286/476/84 +f 284/474/95 271/455/86 287/477/86 +f 276/478/80 265/443/96 273/462/80 +f 286/476/84 267/446/91 288/479/91 +f 287/477/86 269/450/93 281/471/93 +f 282/480/97 288/481/97 279/482/97 +f 274/463/88 267/446/88 251/483/88 +f 283/473/88 272/457/88 257/484/88 +f 252/485/88 283/473/88 257/486/88 +f 249/426/80 262/439/80 250/427/81 +f 252/429/82 263/440/82 253/430/83 +f 255/432/84 264/487/84 256/433/85 +f 258/435/86 261/438/86 259/436/87 +f 258/435/86 251/428/81 250/427/81 +f 254/431/83 253/430/83 262/439/80 +f 252/429/82 257/434/85 256/433/85 +f 260/437/87 259/436/87 264/441/84 +f 267/446/88 270/453/88 249/447/88 +f 268/449/88 254/488/88 249/452/88 +f 252/454/88 254/489/88 269/450/88 +f 255/456/88 257/490/88 272/457/88 +f 266/444/88 275/465/88 258/459/88 +f 265/443/88 260/491/88 255/461/88 +f 274/463/88 251/492/88 258/464/88 +f 276/466/80 273/458/80 272/457/89 +f 278/468/90 288/479/91 267/446/91 +f 279/469/82 275/465/82 266/444/92 +f 281/471/93 269/450/93 268/449/94 +f 277/467/89 272/457/89 283/473/95 +f 278/468/90 274/463/90 275/465/82 +f 280/470/92 266/444/92 265/443/96 +f 282/472/94 268/449/94 270/453/84 +f 284/474/95 283/473/95 271/455/86 +f 276/478/80 285/475/96 265/443/96 +f 286/476/84 270/453/84 267/446/91 +f 287/477/86 271/455/86 269/450/93 +f 279/482/97 280/493/97 285/494/97 +f 285/494/97 276/495/97 277/496/97 +f 277/496/97 284/497/97 287/498/97 +f 287/498/97 281/499/97 277/496/97 +f 281/499/97 282/480/97 277/496/97 +f 282/480/97 286/500/97 288/481/97 +f 288/481/97 278/501/97 279/482/97 +f 279/482/97 285/494/97 282/480/97 +f 285/494/97 277/496/97 282/480/97 +f 252/485/88 271/455/88 283/473/88 +o Bolt +v 0.625000 1.745043 -1.673765 +v 0.625000 1.861670 -1.705015 +v 0.625000 1.947047 -1.619638 +v 0.375000 1.947047 -1.619638 +v 0.375000 1.915797 -1.503012 +v 0.375000 1.947047 -1.557138 +v 0.375000 1.745044 -1.503012 +v 0.375000 1.713794 -1.619638 +v 0.375000 1.713794 -1.557138 +v 0.625000 1.947047 -1.557138 +v 0.625000 1.915797 -1.503012 +v 0.625000 1.861670 -1.471762 +v 0.625000 1.799170 -1.471762 +v 0.625000 1.745043 -1.503012 +v 0.625000 1.713793 -1.557138 +v 0.625000 1.713793 -1.619638 +v 0.625000 1.799170 -1.705015 +v 0.625000 1.915797 -1.673765 +v 0.375000 1.915797 -1.673765 +v 0.375000 1.745044 -1.673765 +v 0.343750 1.986670 -3.250000 +v 0.375000 1.869253 -3.279029 +v 0.343750 1.895141 -3.341529 +v 0.343750 1.765699 -3.341529 +v 0.375000 1.791587 -3.279029 +v 0.343750 1.674170 -3.250000 +v 0.343750 1.674170 -1.312500 +v 0.375000 1.791587 -1.283471 +v 0.343750 1.765699 -1.220971 +v 0.375000 1.869253 -1.283471 +v 0.343750 1.895141 -1.220971 +v 0.343750 1.986670 -1.312500 +v 0.375000 1.924170 -1.338388 +v 0.375000 1.736670 -3.224112 +v 0.375000 1.736670 -1.338388 +v 0.375000 1.861670 -1.471762 +v 0.375000 1.799170 -1.705015 +v 0.375000 1.861670 -1.705015 +v 0.375000 1.799170 -1.471762 +v 0.375000 1.924170 -3.224112 +vt 0.595015 0.509462 +vt 0.587553 0.507463 +vt 0.582090 0.512926 +vt 0.597015 0.500000 +vt 0.593284 0.507463 +vt 0.597015 0.503731 +vt 0.593284 0.507463 +vt 0.589552 0.500000 +vt 0.589552 0.503731 +vt 0.582090 0.516925 +vt 0.584089 0.520388 +vt 0.587553 0.522388 +vt 0.591552 0.522388 +vt 0.595015 0.520388 +vt 0.597015 0.516925 +vt 0.597015 0.512926 +vt 0.591552 0.507463 +vt 0.584089 0.509462 +vt 0.593284 0.496269 +vt 0.593284 0.496269 +vt 0.570895 0.507463 +vt 0.567164 0.500000 +vt 0.570895 0.500000 +vt 0.570895 0.492537 +vt 0.567164 0.492537 +vt 0.570895 0.485075 +vt 0.570895 0.369403 +vt 0.567164 0.361940 +vt 0.570895 0.361940 +vt 0.567164 0.354478 +vt 0.570895 0.354478 +vt 0.570895 0.347015 +vt 0.567164 0.623134 +vt 0.570895 0.623134 +vt 0.567164 0.485075 +vt 0.574627 0.567164 +vt 0.582090 0.563433 +vt 0.570895 0.563433 +vt 0.597015 0.529851 +vt 0.582090 0.526119 +vt 0.582090 0.529851 +vt 0.597015 0.555970 +vt 0.582090 0.552239 +vt 0.582090 0.555970 +vt 0.597015 0.544776 +vt 0.582090 0.541045 +vt 0.582090 0.544776 +vt 0.597015 0.533582 +vt 0.582090 0.533582 +vt 0.597015 0.559702 +vt 0.582090 0.559702 +vt 0.597015 0.567164 +vt 0.582090 0.563433 +vt 0.582090 0.567164 +vt 0.597015 0.548507 +vt 0.582090 0.548507 +vt 0.597015 0.537313 +vt 0.582090 0.537313 +vt 0.597015 0.563433 +vt 0.597015 0.526119 +vt 0.582090 0.522388 +vt 0.597015 0.552239 +vt 0.597015 0.541045 +vt 0.582090 0.451493 +vt 0.574627 0.447761 +vt 0.578358 0.447761 +vt 0.567164 0.507463 +vt 0.567164 0.369403 +vt 0.567164 0.347015 +vt 0.578358 0.567164 +vt 0.597015 0.522388 +vt 0.570895 0.451493 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.9078 0.3874 -0.1605 +vn 0.9644 0.1012 -0.2444 +vn 0.9078 0.1605 -0.3874 +vn 0.9078 -0.1605 -0.3874 +vn 0.9644 -0.1012 -0.2444 +vn 0.9078 -0.3874 -0.1605 +vn 0.9078 -0.3874 0.1605 +vn 0.9644 -0.1012 0.2444 +vn 0.9078 -0.1605 0.3874 +vn 0.9644 0.1012 0.2444 +vn 0.9078 0.1605 0.3874 +vn 0.9078 0.3874 0.1605 +vn 0.9644 0.2444 0.1012 +vn 0.9644 -0.2444 -0.1012 +vn 0.9644 -0.2444 0.1012 +vn 0.0000 0.2588 0.9659 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.2588 -0.9659 +vn 0.0000 -0.2588 -0.9659 +vn -0.0000 -0.9659 -0.2588 +vn -0.0000 -0.9659 0.2588 +vn 0.0000 -0.2588 0.9659 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.9659 0.2588 +vn 0.0000 0.9659 -0.2588 +vn -0.0000 -0.7071 -0.7071 +vn -0.0000 -0.7071 0.7071 +vn 0.9644 0.2444 -0.1012 +s off +f 289/502/98 290/503/98 291/504/98 +f 292/505/99 293/506/99 294/507/99 +f 295/508/99 296/509/99 297/510/99 +f 291/504/98 298/511/98 299/512/98 +f 299/512/98 300/513/98 301/514/98 +f 301/514/98 302/515/98 289/502/98 +f 302/515/98 303/516/98 289/502/98 +f 303/516/98 304/517/98 289/502/98 +f 289/502/98 305/518/98 290/503/98 +f 290/503/98 306/519/98 291/504/98 +f 291/504/98 299/512/98 289/502/98 +f 299/512/98 301/514/98 289/502/98 +f 292/505/99 307/520/99 293/506/99 +f 295/508/99 308/521/99 296/509/99 +s 1 +f 309/522/100 310/523/101 311/524/102 +f 312/525/103 310/523/101 313/526/104 +f 313/526/104 314/527/105 312/525/103 +f 315/528/106 316/529/107 317/530/108 +f 317/530/108 318/531/109 319/532/110 +f 318/531/109 320/533/111 319/532/110 +f 321/534/112 309/522/100 320/535/111 +f 322/536/113 315/528/106 314/527/105 +f 318/537/109 323/538/114 321/539/112 +f 300/540/115 293/541/116 324/542/115 +f 290/543/117 325/544/118 326/545/117 +f 304/546/119 297/547/120 296/548/119 +f 301/549/121 324/542/115 327/550/121 +f 306/551/122 326/545/117 307/552/122 +f 298/553/123 292/554/124 294/555/123 +f 289/556/125 296/548/119 308/557/125 +f 302/558/126 327/550/121 295/559/126 +f 291/560/124 307/552/122 292/554/124 +f 299/561/116 294/562/123 293/541/116 +f 305/563/118 308/557/125 325/544/118 +f 303/564/120 295/559/126 297/547/120 +f 322/565/113 321/539/112 323/538/114 +f 310/566/101 322/565/113 313/567/104 +f 309/522/100 328/568/127 310/523/101 +f 312/525/103 311/524/102 310/523/101 +f 313/526/104 322/536/113 314/527/105 +f 315/528/106 323/569/114 316/529/107 +f 317/530/108 316/529/107 318/531/109 +f 318/531/109 321/570/112 320/533/111 +f 321/534/112 328/568/127 309/522/100 +f 322/536/113 323/569/114 315/528/106 +f 318/537/109 316/571/107 323/538/114 +f 300/540/115 299/561/116 293/541/116 +f 290/543/117 305/563/118 325/544/118 +f 304/546/119 303/564/120 297/547/120 +f 301/549/121 300/540/115 324/542/115 +f 306/551/122 290/543/117 326/545/117 +f 298/553/123 291/560/124 292/554/124 +f 289/556/125 304/546/119 296/548/119 +f 302/558/126 301/549/121 327/550/121 +f 291/560/124 306/551/122 307/552/122 +f 299/561/116 298/572/123 294/562/123 +f 305/563/118 289/556/125 308/557/125 +f 303/564/120 302/558/126 295/559/126 +f 322/565/113 328/573/127 321/539/112 +f 310/566/101 328/573/127 322/565/113 +o Trigger +v 0.125000 0.528950 -1.431801 +v 0.125000 0.562727 -1.589303 +v 0.125000 0.600647 -1.534195 +v 0.125000 0.754238 -1.641741 +v -0.125000 0.600647 -1.534195 +v -0.125000 0.562727 -1.589303 +v -0.125000 0.528950 -1.431801 +v -0.125000 0.754238 -1.641741 +v 0.125000 0.754238 -1.750000 +v 0.125000 0.941738 -1.641741 +v 0.125000 0.861670 -1.812500 +v 0.125000 1.111670 -1.562500 +v -0.125000 0.941738 -1.641741 +v -0.125000 0.754238 -1.750000 +v -0.125000 0.861670 -1.812500 +v -0.125000 1.111670 -1.562500 +vt 0.582090 0.358209 +vt 0.578358 0.365672 +vt 0.582090 0.365672 +vt 0.582090 0.376866 +vt 0.597015 0.365672 +vt 0.600746 0.365672 +vt 0.597015 0.358209 +vt 0.597015 0.376866 +vt 0.574627 0.380597 +vt 0.582090 0.391791 +vt 0.582090 0.380597 +vt 0.574627 0.391791 +vt 0.582090 0.410448 +vt 0.582090 0.399254 +vt 0.597015 0.391791 +vt 0.604478 0.380597 +vt 0.597015 0.380597 +vt 0.604478 0.391791 +vt 0.597015 0.399254 +vt 0.597015 0.410448 +vt 0.570895 0.391791 +vt 0.608209 0.391791 +vt 0.582090 0.324627 +vt 0.597015 0.332090 +vt 0.597015 0.324627 +vt 0.582090 0.347015 +vt 0.597015 0.347015 +vt 0.582090 0.332090 +vn 1.0000 0.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -0.2164 0.9763 +vn 0.0000 -0.4226 0.9063 +vn 0.0000 0.3007 0.9537 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.8192 0.5736 +vn 0.0000 -0.5029 -0.8644 +vn 0.0000 -0.5749 -0.8182 +vn 0.0000 -0.8567 -0.5158 +vn 0.0000 -0.9778 -0.2097 +s off +f 329/574/128 330/575/128 331/576/128 +f 330/575/128 332/577/128 331/576/128 +f 333/578/129 334/579/129 335/580/129 +f 336/581/129 334/579/129 333/578/129 +f 337/582/128 338/583/128 332/584/128 +f 339/585/128 340/586/128 338/587/128 +f 341/588/129 342/589/129 336/590/129 +f 343/591/129 341/592/129 344/593/129 +f 330/575/128 337/582/128 332/577/128 +f 336/581/129 342/589/129 334/579/129 +f 337/582/128 339/594/128 338/583/128 +f 341/588/129 343/595/129 342/589/129 +s 1 +f 341/592/130 340/586/131 344/593/131 +f 336/590/132 338/583/130 341/588/130 +f 333/578/133 332/577/132 336/581/132 +f 335/580/134 331/576/133 333/578/133 +f 339/596/135 342/597/136 343/598/135 +f 342/597/136 330/599/137 334/600/137 +f 335/580/138 330/599/137 329/574/138 +f 341/592/130 338/587/130 340/586/131 +f 336/590/132 332/584/132 338/583/130 +f 333/578/133 331/576/133 332/577/132 +f 335/580/134 329/574/134 331/576/133 +f 339/596/135 337/601/136 342/597/136 +f 342/597/136 337/601/136 330/599/137 +f 335/580/138 334/600/137 330/599/137 +o Gun +v 0.343750 1.299170 2.437500 +v -0.343750 1.299170 -2.062500 +v 0.343750 1.299170 -2.062500 +v 0.125000 2.424170 -0.750000 +v 0.343750 2.049170 -0.750000 +v 0.343750 2.424170 -0.750000 +v -0.343750 2.424170 -0.750000 +v -0.125000 2.049170 -0.750000 +v -0.125000 2.424170 -0.750000 +v 0.125000 2.236670 -0.812500 +v 0.125000 2.424170 -0.812500 +v -0.125000 2.236670 -0.812500 +v -0.125000 2.424170 -0.812500 +v 0.343750 2.299170 -1.187500 +v 0.218750 2.424170 -1.187500 +v 0.343750 2.424170 -1.125000 +v -0.343750 2.424170 -1.125000 +v -0.218750 2.424170 -1.187500 +v -0.343750 2.299170 -1.187500 +v 0.218750 2.424170 -5.375000 +v -0.218750 2.424170 -5.375000 +v 0.343750 2.299170 -5.562500 +v 0.125000 2.049170 -0.750000 +v 0.125000 1.861670 11.875000 +v 0.220971 2.082641 11.875000 +v 0.088388 1.950058 11.875000 +v 0.220971 1.640699 11.875000 +v 0.312500 1.861670 11.875000 +v 0.000000 1.736670 11.875000 +v 0.088388 1.773282 11.875000 +v -0.220971 1.640699 11.875000 +v 0.000000 1.549170 11.875000 +v -0.088388 1.950058 11.875000 +v -0.312500 1.861670 11.875000 +v -0.125000 1.861670 11.875000 +v -0.088388 1.773282 11.875000 +v 0.218750 1.799170 2.250000 +v 0.218750 2.049170 2.062500 +v 0.218750 1.861670 2.363165 +v -0.218750 1.861670 2.363165 +v -0.218750 2.049170 2.437500 +v -0.218750 2.049170 2.062500 +v 0.239382 2.049170 3.750000 +v -0.239382 2.049170 2.437500 +v -0.239382 2.049170 3.750000 +v 0.343750 2.049170 1.625000 +v -0.343750 1.799170 1.625000 +v 0.343750 1.799170 1.625000 +v 0.093750 2.517920 -5.031250 +v 0.156250 2.486670 -5.031250 +v 0.156250 2.424170 -5.031250 +v -0.093750 2.517920 -2.406250 +v -0.156250 2.486670 -2.406250 +v -0.156250 2.424170 -2.406250 +v 0.093750 2.517920 -2.406250 +v -0.093750 2.517920 -5.031250 +v 0.343750 1.299170 -5.562500 +v 0.343750 1.799170 2.437500 +v -0.343750 2.049170 -0.750000 +v -0.343750 2.299170 -5.562500 +v -0.343750 2.049170 1.625000 +v -0.343750 1.299170 2.437500 +v -0.218750 2.486670 -4.093750 +v 0.218750 2.486670 -4.968750 +v 0.218750 2.486670 -4.093750 +v -0.156250 2.549170 -4.093750 +v -0.218750 2.486670 -4.968750 +v -0.218750 2.611670 -4.093750 +v -0.218750 2.799170 -4.968750 +v -0.156250 2.799170 -4.968750 +v -0.156250 2.611670 -4.093750 +v 0.218750 2.611670 -4.093750 +v 0.156250 2.799170 -4.968750 +v 0.156250 2.611670 -4.093750 +v 0.093750 2.549170 -4.968750 +v -0.093750 2.736670 -4.968750 +v 0.093750 2.736670 -4.968750 +v -0.156250 2.549170 -4.968750 +v 0.156250 2.549170 -4.968750 +v 0.156250 2.549170 -4.093750 +v 0.093750 2.861670 -4.468750 +v -0.093750 2.861670 -4.406250 +v 0.093750 2.861670 -4.406250 +v -0.093750 2.674170 -4.468750 +v -0.093750 2.861670 -4.468750 +v 0.000000 2.830420 -4.468750 +v -0.022097 2.821268 -4.468750 +v 0.022097 2.821268 -4.468750 +v 0.093750 2.674170 -4.468750 +v 0.031250 2.799170 -4.468750 +v -0.031250 2.799170 -4.468750 +v -0.022097 2.777073 -4.468750 +v 0.022097 2.777073 -4.468750 +v 0.000000 2.767920 -4.468750 +v 0.000000 2.830420 -4.406250 +v 0.022097 2.821268 -4.406250 +v -0.022097 2.821268 -4.406250 +v -0.031250 2.799170 -4.406250 +v -0.156250 2.665242 -4.343750 +v 0.156250 2.549170 -4.343750 +v 0.156250 2.665242 -4.343750 +v -0.156250 2.678635 -4.406250 +v -0.093750 2.549170 -4.406250 +v -0.156250 2.549170 -4.406250 +v 0.093750 2.549170 -4.406250 +v 0.156250 2.678635 -4.406250 +v 0.156250 2.549170 -4.406250 +v -0.093750 2.678635 -4.406250 +v 0.022097 2.777073 -4.406250 +v 0.093750 2.678635 -4.406250 +v 0.031250 2.799170 -4.406250 +v 0.250000 2.580420 -4.781250 +v 0.250000 2.642920 -4.843750 +v 0.250000 2.705420 -4.781250 +v -0.343750 2.642920 -4.906250 +v -0.343750 2.517920 -4.781250 +v -0.343750 2.642920 -4.656250 +v 0.281250 0.924170 0.812500 +v 0.140625 0.924170 1.056070 +v -0.140625 0.924170 1.056070 +v 0.187500 1.174170 0.812500 +v 0.243570 1.174170 0.671875 +v 0.132583 1.174170 0.679918 +v 0.243570 1.174170 0.953125 +v 0.132583 1.174170 0.945082 +v 0.140625 1.174170 1.056070 +v 0.140625 1.174170 0.568930 +v 0.000000 1.174170 1.000000 +v 0.000000 1.174170 0.625000 +v -0.140625 1.174170 0.568930 +v -0.132583 1.174170 0.679917 +v -0.243570 1.174170 0.671875 +v -0.187500 1.174170 0.812500 +v -0.243570 1.174170 0.953125 +v -0.132583 1.174170 0.945082 +v -0.140625 1.174170 1.056070 +v 0.218750 0.394023 -1.004259 +v 0.218750 0.565917 -0.875000 +v 0.218750 0.565917 -0.812500 +v 0.218750 0.674170 -0.812500 +v 0.218750 0.674170 -0.750000 +v 0.218750 0.424170 -1.125000 +v 0.218750 0.456523 -1.004259 +v -0.156250 1.916588 1.934359 +v -0.156250 2.049170 1.625000 +v -0.156250 1.861670 1.625000 +v 0.156250 2.049170 1.625000 +v 0.156250 1.916588 1.934359 +v 0.156250 1.861670 1.625000 +v -0.156250 2.049170 2.062500 +v 0.156250 2.049170 2.062500 +v -0.218750 0.394023 -1.004259 +v -0.218750 0.424170 -1.125000 +v -0.218750 0.361670 -1.125000 +v -0.218750 0.565917 -0.875000 +v -0.218750 0.565917 -0.812500 +v -0.218750 0.674170 -0.812500 +v 0.281250 1.299170 -0.750000 +v 0.218750 1.236670 -1.937500 +v 0.281250 1.299170 -2.062500 +v 0.218750 0.361670 -1.125000 +v 0.218750 0.424170 -1.562500 +v 0.218750 0.503411 -1.732433 +v 0.218750 0.361670 -1.937500 +v 0.218750 0.674170 -1.812500 +v 0.218750 0.861670 -1.812500 +v 0.218750 1.111670 -1.562500 +v 0.218750 0.861670 -0.812500 +v 0.218750 1.236670 -0.750000 +v 0.218750 1.111670 -1.062500 +v -0.218750 0.424170 -1.562500 +v -0.218750 0.361670 -1.937500 +v -0.218750 0.503411 -1.732433 +v -0.218750 0.674170 -1.812500 +v -0.218750 0.861670 -0.812500 +v -0.218750 0.674170 -0.750000 +v -0.218750 1.236670 -0.750000 +v -0.218750 1.111670 -1.562500 +v -0.218750 1.111670 -1.062500 +v -0.218750 1.236670 -1.937500 +v -0.218750 0.861670 -1.812500 +v -0.281250 1.299170 -0.750000 +v -0.281250 1.299170 -2.062500 +v -0.343750 1.299170 -5.562500 +v 0.156250 2.109449 11.875000 +v -0.220971 2.082641 11.875000 +v -0.156250 2.109449 11.875000 +v 0.093750 2.421949 11.000000 +v 0.156250 2.421949 11.000000 +v 0.156250 2.109449 11.000000 +v -0.093750 2.421949 11.000000 +v 0.093750 2.421949 11.875000 +v 0.170671 2.863656 11.312500 +v -0.170671 2.863656 11.812500 +v -0.159818 2.802105 11.875000 +v -0.093750 2.421949 11.875000 +v -0.031250 2.421949 11.437500 +v 0.015625 2.796949 11.437500 +v 0.031250 2.421949 11.437500 +v -0.015625 2.796949 11.437500 +v 0.015625 2.796949 11.625000 +v -0.015625 2.796949 11.625000 +v -0.031250 2.421949 11.875000 +v 0.031250 2.421949 11.875000 +v 0.088388 1.950058 11.000000 +v 0.000000 1.986670 11.000000 +v 0.000000 1.736670 11.000000 +v 0.000000 2.174170 3.750000 +v -0.022097 2.777073 -4.406250 +v 0.000000 2.767920 -4.406250 +v 0.371209 1.780864 2.702665 +v 0.218750 1.799170 1.625000 +v 0.218750 1.916588 1.934359 +v 0.218750 1.861670 1.625000 +v 0.218750 2.049170 2.437500 +v -0.218750 1.916588 1.934359 +v -0.218750 1.861670 1.625000 +v -0.218750 1.799170 1.625000 +v -0.218750 1.799170 2.250000 +v 0.239382 2.049170 2.437500 +v -0.156250 2.424170 -5.031250 +v -0.156250 2.486670 -5.031250 +v 0.156250 2.424170 -2.406250 +v 0.156250 2.486670 -2.406250 +v -0.343750 1.799170 2.437500 +v 0.218750 2.799170 -4.968750 +v -0.093750 2.549170 -4.968750 +v -0.156250 2.549170 -4.343750 +v 0.250000 2.687115 -4.737056 +v 0.250000 2.642920 -4.718750 +v 0.250000 2.598726 -4.737056 +v 0.250000 2.598726 -4.825444 +v 0.250000 2.687115 -4.825444 +v -0.343750 2.731309 -4.692862 +v -0.343750 2.767920 -4.781250 +v -0.343750 2.731309 -4.869638 +v -0.343750 2.554532 -4.869638 +v -0.343750 2.554532 -4.692862 +v -0.243570 0.924170 0.953125 +v -0.281250 0.924170 0.812500 +v -0.243570 0.924170 0.671875 +v -0.140625 0.924170 0.568930 +v 0.000000 0.924170 0.531250 +v 0.140625 0.924170 0.568930 +v 0.243570 0.924170 0.671875 +v 0.243570 0.924170 0.953125 +v 0.000000 0.924170 1.093750 +v 0.281250 1.174170 0.812500 +v 0.000000 1.174170 1.093750 +v 0.000000 1.174170 0.531250 +v -0.281250 1.174170 0.812500 +v -0.218750 0.456523 -1.004259 +v -0.156250 2.109449 11.000000 +v -0.156250 2.421949 11.000000 +v 0.159818 2.802105 11.875000 +v 0.170671 2.863656 11.812500 +v -0.170671 2.863656 11.312500 +v -0.088388 1.950058 11.000000 +v -0.125000 1.861670 11.000000 +v -0.088388 1.773282 11.000000 +v 0.088388 1.773282 11.000000 +v 0.125000 1.861670 11.000000 +v -0.156250 2.132303 3.750000 +v 0.156250 2.132303 3.750000 +v 0.220971 1.640699 11.000000 +v 0.220971 2.082641 11.000000 +v 0.000000 1.549170 11.000000 +v 0.312500 1.861670 11.000000 +v -0.312500 1.861670 11.000000 +v -0.220971 1.640699 11.000000 +v 0.000000 2.174170 4.062500 +v 0.156250 2.132303 4.062500 +v -0.156250 2.132303 4.062500 +v 0.295753 1.799170 4.062500 +v 0.312500 1.861670 2.363165 +v 0.312500 1.861670 4.062500 +v 0.270633 2.017920 2.427792 +v 0.270633 2.017920 4.062500 +v -0.270633 2.017920 2.437500 +v -0.312500 1.861670 4.062500 +v -0.270633 2.017920 4.062500 +v 0.295753 1.799170 2.250000 +v -0.295753 1.799170 4.062500 +v -0.312500 1.861670 2.363165 +v -0.295753 1.799170 2.250000 +v 0.000000 2.049170 7.625000 +v -0.132583 1.994253 7.625000 +v 0.187500 1.861670 7.625000 +v 0.437500 1.736670 2.812500 +v 0.343750 1.799170 2.812500 +v -0.343750 1.799170 2.812500 +v -0.371209 1.780864 2.702665 +v 0.437500 1.111670 2.812500 +v 0.312500 1.299170 8.000000 +v 0.312500 1.049170 2.812500 +v -0.437500 1.361670 8.000000 +v -0.437500 1.736670 2.812500 +v -0.437500 1.111670 2.812500 +v -0.312500 1.799170 7.875000 +v -0.312500 1.299170 8.000000 +v -0.312500 1.049170 2.812500 +v 0.437500 1.361670 8.000000 +v 0.312500 1.799170 7.875000 +v 0.132583 1.994253 10.812500 +v 0.000000 2.174170 11.000000 +v -0.132583 1.994253 10.812500 +v -0.220971 2.082641 11.000000 +v -0.132583 1.729087 10.812500 +v 0.132583 1.729087 10.812500 +v 0.187500 1.861670 10.812500 +v 0.000000 2.049170 10.812500 +v -0.187500 1.861670 10.812500 +v 0.000000 1.674170 10.812500 +v -0.187500 1.861670 7.625000 +v -0.132583 1.729087 7.625000 +v 0.000000 1.674170 8.000000 +v 0.132583 1.994253 7.625000 +v 0.132583 1.729087 7.625000 +v 0.218750 2.598726 -4.737056 +v 0.218750 2.580420 -4.781250 +v 0.218750 2.687115 -4.737056 +v 0.218750 2.642920 -4.718750 +v 0.218750 2.642920 -4.843750 +v 0.218750 2.687115 -4.825444 +v 0.218750 2.598726 -4.825444 +v 0.218750 2.705420 -4.781250 +v -0.218750 2.709212 -4.847541 +v -0.281250 2.767920 -4.781250 +v -0.218750 2.736670 -4.781250 +v -0.281250 2.554532 -4.869638 +v -0.218750 2.642920 -4.875000 +v -0.218750 2.576629 -4.847541 +v -0.218750 2.576629 -4.714959 +v -0.281250 2.517920 -4.781250 +v -0.218750 2.549170 -4.781250 +v -0.281250 2.731309 -4.692862 +v -0.218750 2.642920 -4.687500 +v -0.218750 2.709212 -4.714959 +v -0.281250 2.731309 -4.869638 +v -0.281250 2.554532 -4.692862 +v -0.281250 2.642920 -4.906250 +v -0.281250 2.642920 -4.656250 +v 0.000000 1.299170 0.625000 +v -0.132583 1.299170 0.679917 +v 0.187500 1.299170 0.812500 +v 0.132583 1.299170 0.679918 +v 0.000000 1.299170 1.000000 +v 0.132583 1.299170 0.945082 +v -0.187500 1.299170 0.812500 +v -0.132583 1.299170 0.945082 +v -0.218750 0.969924 -0.875000 +v 0.218750 0.969924 -0.875000 +v 0.156250 0.799411 -3.472389 +v -0.218750 1.017962 -3.851390 +v 0.218750 1.017962 -3.851390 +v 0.156250 1.706500 -6.971929 +v -0.156250 1.749912 -6.725727 +v 0.156250 1.749912 -6.725727 +v 0.156250 -0.261926 -2.410389 +v -0.093750 -0.394406 -2.622401 +v 0.093750 -0.394406 -2.622401 +v 0.156250 0.572834 -3.366735 +v -0.156250 0.799411 -3.472389 +v 0.093750 1.812155 -7.198505 +v -0.156250 1.706500 -6.971929 +v 0.093750 -0.074426 -2.410389 +v -0.156250 -0.261926 -2.410389 +v 0.218750 0.262663 -3.404819 +v -0.156250 0.572834 -3.366735 +v 0.031250 1.892503 -7.294261 +v -0.093750 1.812155 -7.198505 +v 0.093750 0.152151 -2.304735 +v -0.093750 -0.074426 -2.410389 +v 0.218750 -0.607686 -4.014244 +v -0.218750 0.262663 -3.404819 +v -0.156250 1.100554 -12.294434 +v 0.156250 1.100554 -12.294434 +v -0.218750 0.272674 -2.161101 +v -0.093750 0.152151 -2.304735 +v 0.218750 -0.848001 -4.083153 +v -0.218750 -0.607686 -4.014244 +v 0.218750 0.730171 -12.235770 +v 0.343750 0.730171 -12.110770 +v 0.343750 0.361670 -1.937500 +v 0.218750 0.272674 -2.161101 +v 0.218750 -1.259117 -3.933519 +v -0.218750 -0.848001 -4.083153 +v 0.218750 -0.894829 -12.235770 +v -0.218750 0.730171 -12.235770 +v 0.218750 -1.474552 -3.552739 +v -0.218750 -1.259117 -3.933519 +v 0.218750 -1.445037 -12.118820 +v -0.218750 -0.894829 -12.235770 +v 0.218750 -1.441887 -3.241951 +v -0.218750 -1.474552 -3.552739 +v 0.093750 -1.752219 -11.903729 +v -0.218750 -1.445037 -12.118820 +v 0.156250 -1.289697 -3.043612 +v -0.218750 -1.441887 -3.241951 +v 0.093750 -1.428696 -10.696322 +v -0.093750 -1.752219 -11.903729 +v 0.093750 -1.102197 -3.043612 +v -0.156250 -1.289697 -3.043612 +v 0.218750 0.301005 -7.510611 +v -0.093750 -1.428696 -10.696322 +v 0.093750 -0.897409 -2.900218 +v -0.093750 -1.102197 -3.043612 +v 0.218750 0.585548 -6.749564 +v -0.218750 0.301005 -7.510611 +v 0.218750 2.174170 -5.687500 +v -0.343750 2.174170 -5.562500 +v 0.343750 2.174170 -5.562500 +v 0.156250 -0.803659 -2.737838 +v -0.093750 -0.897409 -2.900218 +v 0.218750 0.795839 -5.964749 +v -0.218750 0.585548 -6.749564 +v 0.218750 2.093290 -5.989352 +v -0.218750 2.174170 -5.687500 +v 0.093750 -0.616159 -2.737838 +v -0.156250 -0.803659 -2.737838 +v -0.218750 0.795839 -5.964749 +v -0.218750 2.093290 -5.989352 +v -0.093750 -0.616159 -2.737838 +v 0.343750 -0.848001 -3.895653 +v 0.343750 -1.071617 -3.746019 +v 0.343750 -0.769829 -12.110770 +v 0.343750 -1.191887 -3.241951 +v 0.343750 -1.164697 -3.168612 +v 0.343750 -1.502219 -12.028729 +v 0.343750 -1.053696 -10.696322 +v 0.343750 -0.977197 -3.168612 +v 0.343750 0.551005 -7.573111 +v 0.343750 -0.772409 -3.025218 +v 0.343750 0.835548 -6.874564 +v 0.343750 -0.741159 -2.862838 +v 0.343750 1.045839 -6.089749 +v 0.343750 2.049170 -5.687500 +v 0.343750 1.968290 -5.926852 +v 0.343750 -0.491159 -2.862838 +v -0.343750 1.045839 -6.089749 +v -0.343750 1.142962 -3.851390 +v 0.343750 1.562412 -6.725727 +v 0.343750 -0.331906 -2.747401 +v 0.343750 1.142962 -3.851390 +v 0.343750 0.799411 -3.222389 +v 0.343750 1.456500 -6.971929 +v 0.343750 -0.199426 -2.535389 +v 0.343750 0.510334 -3.179235 +v 0.343750 1.374655 -7.198505 +v 0.343750 0.050574 -2.535389 +v -0.343750 0.137663 -3.279819 +v 0.343750 0.277151 -2.429735 +v 0.343750 -0.607686 -3.889244 +v 0.343750 0.137663 -3.279819 +v 0.343750 0.397674 -2.161101 +v -0.343750 0.361670 -1.937500 +v 0.343750 1.236670 -1.937500 +v -0.343750 1.236670 -1.937500 +v -0.343750 -1.502219 -12.028729 +v -0.343750 -0.769829 -12.110770 +v 0.343750 -1.224552 -3.552739 +v -0.343750 0.730171 -12.110770 +v -0.343750 -1.053696 -10.696322 +v -0.343750 0.551005 -7.573111 +v -0.343750 0.835548 -6.874564 +v -0.343750 1.374655 -7.198505 +v -0.343750 1.456500 -6.971929 +v -0.343750 1.562412 -6.725727 +v -0.343750 1.968290 -5.926852 +v -0.343750 -0.848001 -3.895653 +v -0.343750 -0.977197 -3.168612 +v -0.343750 -0.607686 -3.889244 +v -0.343750 -0.772409 -3.025218 +v -0.343750 -0.741159 -2.862838 +v -0.343750 -0.491159 -2.862838 +v -0.343750 0.050574 -2.535389 +v -0.343750 0.277151 -2.429735 +v -0.343750 0.510334 -3.179235 +v -0.343750 -0.199426 -2.535389 +v -0.343750 -0.331906 -2.747401 +v -0.343750 0.397674 -2.161101 +v -0.343750 0.799411 -3.222389 +v -0.031250 1.892503 -7.294261 +v -0.343750 2.049170 -5.687500 +v -0.343750 -1.071617 -3.746019 +v -0.343750 -1.191887 -3.241951 +v -0.343750 -1.164697 -3.168612 +v -0.343750 -1.224552 -3.552739 +v 0.000000 1.986670 11.875000 +v 0.156250 2.421949 11.875000 +v -0.156250 2.421949 11.875000 +v 0.232221 2.852803 11.812500 +v 0.221368 2.791252 11.875000 +v -0.221368 2.791252 11.875000 +v -0.232221 2.852803 11.812500 +v -0.232221 2.852803 11.312500 +v 0.232221 2.852803 11.312500 +v 0.371209 1.225947 2.702665 +v -0.371209 1.225947 2.702665 +v -0.437500 1.736670 8.000000 +v 0.437500 1.736670 8.000000 +vt 0.742537 0.847015 +vt 0.701493 0.578358 +vt 0.742537 0.578358 +vt 0.615672 0.432836 +vt 0.630597 0.410448 +vt 0.630597 0.432836 +vt 0.589552 0.432836 +vt 0.604478 0.410448 +vt 0.604478 0.432836 +vt 0.611940 0.421642 +vt 0.611940 0.432836 +vt 0.608209 0.421642 +vt 0.608209 0.708955 +vt 0.619403 0.723881 +vt 0.608209 0.723881 +vt 0.828358 0.992537 +vt 0.839552 0.992537 +vt 0.833955 1.000000 +vt 0.835821 0.421642 +vt 0.839552 0.429104 +vt 0.828358 0.429104 +vt 0.839552 0.742537 +vt 0.839552 0.679105 +vt 0.828358 0.731343 +vt 0.839552 0.697761 +vt 0.839552 0.723881 +vt 0.597015 0.708955 +vt 0.488806 0.466418 +vt 0.500000 0.477612 +vt 0.488806 0.473881 +vt 0.488806 0.458955 +vt 0.500000 0.447761 +vt 0.500000 0.462687 +vt 0.488806 0.436567 +vt 0.488806 0.444030 +vt 0.488806 0.429104 +vt 0.500000 0.417910 +vt 0.500000 0.432836 +vt 0.488806 0.391791 +vt 0.500000 0.402985 +vt 0.488806 0.399254 +vt 0.488806 0.406716 +vt 0.488806 0.414179 +vt 0.764925 0.880597 +vt 0.776119 0.895522 +vt 0.757463 0.884328 +vt 0.757463 0.906716 +vt 0.753731 0.895522 +vt 0.776119 0.895522 +vt 0.664179 0.850746 +vt 0.742537 0.880597 +vt 0.664179 0.880597 +vt 0.787313 0.798507 +vt 0.828358 0.813433 +vt 0.787313 0.813433 +vt 0.630597 0.455224 +vt 0.623134 0.458955 +vt 0.615672 0.436567 +vt 0.604478 0.436567 +vt 0.597015 0.458955 +vt 0.634328 0.238806 +vt 0.636194 0.235075 +vt 0.641791 0.235075 +vt 0.634328 0.414179 +vt 0.636194 0.410448 +vt 0.641791 0.410448 +vt 0.623134 0.410448 +vt 0.634328 0.253731 +vt 0.634328 0.410448 +vt 0.802239 0.369403 +vt 0.742537 0.369403 +vt 0.802239 0.630597 +vt 0.809702 0.656716 +vt 0.787313 0.656716 +vt 0.772388 0.798507 +vt 0.772388 0.847015 +vt 0.634328 0.656716 +vt 0.641791 0.630597 +vt 0.656716 0.656716 +vt 0.641791 0.369403 +vt 0.671642 0.798507 +vt 0.656716 0.798507 +vt 0.701493 0.847015 +vt 0.828358 0.656716 +vt 0.828358 0.798507 +vt 0.514925 0.574627 +vt 0.567164 0.600746 +vt 0.514925 0.600746 +vt 0.488806 0.600746 +vt 0.492537 0.604478 +vt 0.436567 0.600746 +vt 0.488806 0.608209 +vt 0.436567 0.619403 +vt 0.462687 0.597015 +vt 0.410448 0.600746 +vt 0.410448 0.597015 +vt 0.410448 0.544776 +vt 0.462687 0.548507 +vt 0.410448 0.548507 +vt 0.514925 0.608209 +vt 0.552239 0.574627 +vt 0.541045 0.563433 +vt 0.552239 0.563433 +vt 0.462687 0.582090 +vt 0.410448 0.585821 +vt 0.410448 0.582090 +vt 0.410448 0.559702 +vt 0.462687 0.563433 +vt 0.410448 0.563433 +vt 0.507463 0.555970 +vt 0.496269 0.552239 +vt 0.507463 0.552239 +vt 0.410448 0.600746 +vt 0.414179 0.604478 +vt 0.511194 0.563433 +vt 0.541045 0.552239 +vt 0.496269 0.555970 +vt 0.501866 0.557836 +vt 0.500546 0.558382 +vt 0.503185 0.558382 +vt 0.507463 0.567164 +vt 0.503731 0.559702 +vt 0.500000 0.559702 +vt 0.496269 0.567164 +vt 0.500546 0.561021 +vt 0.503185 0.561021 +vt 0.501866 0.561567 +vt 0.496269 0.541045 +vt 0.501866 0.543044 +vt 0.507463 0.541045 +vt 0.503185 0.543590 +vt 0.500546 0.543590 +vt 0.500000 0.544909 +vt 0.473881 0.582090 +vt 0.481343 0.600746 +vt 0.473881 0.600746 +vt 0.470149 0.582090 +vt 0.462687 0.585821 +vt 0.462687 0.582090 +vt 0.462687 0.597015 +vt 0.470149 0.600746 +vt 0.462687 0.600746 +vt 0.470149 0.585821 +vt 0.503185 0.546229 +vt 0.507463 0.552239 +vt 0.503731 0.544909 +vt 0.496269 0.552239 +vt 0.507463 0.567164 +vt 0.511194 0.555970 +vt 0.511194 0.567164 +vt 0.492537 0.555970 +vt 0.496269 0.555970 +vt 0.496269 0.567164 +vt 0.511194 0.589552 +vt 0.514925 0.593284 +vt 0.511194 0.597015 +vt 0.477612 0.552239 +vt 0.470149 0.544776 +vt 0.462687 0.552239 +vt 0.313433 0.531716 +vt 0.321828 0.546258 +vt 0.338619 0.546258 +vt 0.320896 0.447761 +vt 0.324627 0.455224 +vt 0.320896 0.455224 +vt 0.324627 0.440298 +vt 0.320896 0.440298 +vt 0.320896 0.436567 +vt 0.324627 0.432836 +vt 0.324627 0.462687 +vt 0.320896 0.458955 +vt 0.320896 0.425373 +vt 0.320896 0.432836 +vt 0.320896 0.470149 +vt 0.320896 0.462687 +vt 0.324627 0.477612 +vt 0.320896 0.477612 +vt 0.324627 0.485075 +vt 0.320896 0.481343 +vt 0.320896 0.492537 +vt 0.320896 0.485075 +vt 0.324627 0.500000 +vt 0.320896 0.500000 +vt 0.324627 0.507463 +vt 0.320896 0.503731 +vt 0.320896 0.514925 +vt 0.320896 0.507463 +vt 0.541045 0.679105 +vt 0.537313 0.690298 +vt 0.541045 0.694030 +vt 0.537313 0.701493 +vt 0.541045 0.701493 +vt 0.537313 0.671642 +vt 0.537313 0.679105 +vt 0.779851 0.850746 +vt 0.798507 0.843284 +vt 0.798507 0.854478 +vt 0.798507 0.843284 +vt 0.779851 0.835821 +vt 0.798507 0.832090 +vt 0.764925 0.876866 +vt 0.742537 0.880597 +vt 0.764925 0.858209 +vt 0.567164 0.679105 +vt 0.570895 0.671642 +vt 0.567164 0.671642 +vt 0.570895 0.690298 +vt 0.567164 0.694030 +vt 0.570895 0.701493 +vt 0.570895 0.694030 +vt 0.496269 0.537313 +vt 0.429104 0.533582 +vt 0.421642 0.537313 +vt 0.541045 0.671642 +vt 0.537313 0.645522 +vt 0.402581 0.489807 +vt 0.392969 0.485076 +vt 0.414179 0.481343 +vt 0.407109 0.500000 +vt 0.407109 0.511194 +vt 0.414179 0.533582 +vt 0.392969 0.526118 +vt 0.537313 0.712687 +vt 0.541045 0.735075 +vt 0.347015 0.533580 +vt 0.364690 0.526118 +vt 0.570895 0.645522 +vt 0.567164 0.623134 +vt 0.450314 0.485075 +vt 0.440703 0.489807 +vt 0.429104 0.481343 +vt 0.436174 0.500000 +vt 0.570895 0.712687 +vt 0.567164 0.701493 +vt 0.567164 0.735075 +vt 0.496269 0.533580 +vt 0.450314 0.526118 +vt 0.478594 0.526118 +vt 0.429104 0.533580 +vt 0.436174 0.511194 +vt 0.414179 0.533582 +vt 0.347015 0.537313 +vt 0.421642 0.537313 +vt 0.742537 0.328358 +vt 0.802239 0.328358 +vt 0.500000 0.481343 +vt 0.488806 0.481343 +vt 0.500000 0.388060 +vt 0.488806 0.384328 +vt 0.500000 0.384328 +vt 0.369403 0.507463 +vt 0.369403 0.511194 +vt 0.350746 0.511194 +vt 0.451493 0.481343 +vt 0.462687 0.429104 +vt 0.462687 0.481343 +vt 0.488806 0.462687 +vt 0.425373 0.432836 +vt 0.429104 0.429104 +vt 0.451493 0.429104 +vt 0.514925 0.384328 +vt 0.518657 0.365672 +vt 0.518657 0.384328 +vt 0.488806 0.361940 +vt 0.500000 0.365672 +vt 0.488806 0.365672 +vt 0.503731 0.365672 +vt 0.488806 0.384328 +vt 0.526119 0.365672 +vt 0.500000 0.361940 +vt 0.526119 0.361940 +vt 0.529851 0.365672 +vt 0.544776 0.384328 +vt 0.476066 0.374680 +vt 0.481343 0.376866 +vt 0.481343 0.361940 +vt 0.656716 0.865672 +vt 0.500546 0.546229 +vt 0.501866 0.546775 +vt 0.623134 0.708955 +vt 0.597015 0.458955 +vt 0.597015 0.708955 +vt 0.858209 0.421642 +vt 0.858209 0.406716 +vt 0.888060 0.421642 +vt 0.615672 0.410448 +vt 0.589552 0.410448 +vt 0.608209 0.432836 +vt 0.619403 0.708955 +vt 0.828358 0.690298 +vt 0.597015 0.723881 +vt 0.488806 0.451493 +vt 0.488806 0.421642 +vt 0.802239 0.880597 +vt 0.783582 0.888060 +vt 0.802239 0.884328 +vt 0.753731 0.895522 +vt 0.783582 0.902985 +vt 0.802239 0.906716 +vt 0.802239 0.910448 +vt 0.764925 0.910448 +vt 0.742537 0.850746 +vt 0.589552 0.455224 +vt 0.641791 0.253731 +vt 0.636194 0.253731 +vt 0.634328 0.250000 +vt 0.641791 0.429104 +vt 0.636194 0.429104 +vt 0.634328 0.425373 +vt 0.623134 0.253731 +vt 0.809702 0.634328 +vt 0.634328 0.634328 +vt 0.701493 0.369403 +vt 0.671642 0.847015 +vt 0.567164 0.574627 +vt 0.492537 0.608209 +vt 0.511194 0.604478 +vt 0.511194 0.608209 +vt 0.462687 0.600746 +vt 0.462687 0.544776 +vt 0.567164 0.619403 +vt 0.541045 0.574627 +vt 0.432836 0.604478 +vt 0.432836 0.619403 +vt 0.414179 0.619403 +vt 0.410448 0.619403 +vt 0.511194 0.552239 +vt 0.481343 0.582090 +vt 0.470149 0.597015 +vt 0.507463 0.574627 +vt 0.507463 0.555970 +vt 0.496269 0.574627 +vt 0.492537 0.567164 +vt 0.462687 0.574627 +vt 0.462687 0.563433 +vt 0.508556 0.595922 +vt 0.507463 0.593284 +vt 0.508556 0.590645 +vt 0.513832 0.590645 +vt 0.513832 0.595922 +vt 0.464872 0.557516 +vt 0.470149 0.559702 +vt 0.475426 0.557516 +vt 0.475426 0.546962 +vt 0.464872 0.546962 +vt 0.344765 0.540112 +vt 0.347015 0.531716 +vt 0.344765 0.523321 +vt 0.338619 0.517175 +vt 0.330224 0.514925 +vt 0.321828 0.517175 +vt 0.315682 0.523321 +vt 0.315682 0.540112 +vt 0.330224 0.548507 +vt 0.324627 0.447761 +vt 0.324627 0.425373 +vt 0.324627 0.470149 +vt 0.324627 0.492537 +vt 0.324627 0.514925 +vt 0.537313 0.682836 +vt 0.537313 0.694030 +vt 0.772388 0.843284 +vt 0.772388 0.843284 +vt 0.791045 0.858209 +vt 0.791045 0.876866 +vt 0.764925 0.880597 +vt 0.742537 0.854478 +vt 0.764925 0.854478 +vt 0.570895 0.679105 +vt 0.570895 0.682836 +vt 0.496269 0.533582 +vt 0.541045 0.623134 +vt 0.347015 0.533582 +vt 0.350746 0.492537 +vt 0.369403 0.496269 +vt 0.369403 0.492537 +vt 0.485075 0.429104 +vt 0.488806 0.432836 +vt 0.425373 0.462687 +vt 0.514925 0.365672 +vt 0.486620 0.374680 +vt 0.488806 0.369403 +vt 0.486620 0.364126 +vt 0.476066 0.364126 +vt 0.473881 0.369403 +vt 0.660448 0.876866 +vt 0.660448 0.854478 +vt 0.623134 0.458955 +vt 0.776119 0.876866 +vt 0.794776 0.880597 +vt 0.776119 0.880597 +vt 0.552239 0.447761 +vt 0.552239 0.477612 +vt 0.552239 0.432836 +vt 0.552239 0.462687 +vt 0.552239 0.481343 +vt 0.552239 0.402985 +vt 0.552239 0.417910 +vt 0.552239 0.384328 +vt 0.231343 0.279851 +vt 0.212687 0.291045 +vt 0.212687 0.279851 +vt 0.231343 0.291045 +vt 0.212687 0.302239 +vt 0.212687 0.253731 +vt 0.313433 0.257463 +vt 0.212687 0.257463 +vt 0.309702 0.268657 +vt 0.212687 0.268657 +vt 0.309702 0.313433 +vt 0.212687 0.324627 +vt 0.212687 0.313433 +vt 0.649251 0.864581 +vt 0.656716 0.860243 +vt 0.656716 0.864583 +vt 0.639900 0.861656 +vt 0.638062 0.864582 +vt 0.638060 0.863421 +vt 0.212687 0.328358 +vt 0.313433 0.324627 +vt 0.320896 0.328358 +vt 0.656716 0.871099 +vt 0.649259 0.866761 +vt 0.656716 0.866761 +vt 0.639900 0.869687 +vt 0.649252 0.872045 +vt 0.000000 0.291045 +vt 0.000000 0.302239 +vt 0.000000 0.263060 +vt 0.858209 0.350746 +vt 0.854478 0.358209 +vt 0.850746 0.350746 +vt 0.809702 0.350746 +vt 0.809702 0.373134 +vt 0.805970 0.358209 +vt 0.899254 0.399254 +vt 0.906716 0.089552 +vt 0.906716 0.399254 +vt 0.966418 0.089552 +vt 0.988806 0.399254 +vt 0.951493 0.399254 +vt 0.802239 0.350746 +vt 0.809702 0.055970 +vt 0.944030 0.089552 +vt 0.944030 0.399254 +vt 0.861940 0.399254 +vt 0.884328 0.089552 +vt 0.850746 0.055970 +vt 0.567164 0.473881 +vt 0.552239 0.373134 +vt 0.567164 0.384328 +vt 0.552239 0.388060 +vt 0.567164 0.414179 +vt 0.567164 0.444030 +vt 0.567164 0.451493 +vt 0.567164 0.458955 +vt 0.552239 0.492537 +vt 0.567164 0.481343 +vt 0.567164 0.488806 +vt 0.567164 0.391791 +vt 0.567164 0.399254 +vt 0.567164 0.429104 +vt 0.511194 0.291045 +vt 0.320896 0.283582 +vt 0.511194 0.283582 +vt 0.511194 0.298507 +vt 0.320896 0.291045 +vt 0.492537 0.305970 +vt 0.320896 0.313433 +vt 0.320896 0.305970 +vt 0.511194 0.328358 +vt 0.320896 0.320896 +vt 0.511194 0.320896 +vt 0.320896 0.276119 +vt 0.511194 0.276119 +vt 0.320896 0.298507 +vt 0.511194 0.313433 +vt 0.511194 0.335821 +vt 0.320896 0.328358 +vt 0.638060 0.253731 +vt 0.641791 0.585821 +vt 0.638060 0.429104 +vt 0.638060 0.410448 +vt 0.638060 0.585821 +vt 0.634328 0.429104 +vt 0.000000 0.319030 +vt 0.850746 0.373134 +vt 0.850746 0.421642 +vt 0.000000 0.257463 +vt 0.000000 0.250000 +vt 0.492537 0.582090 +vt 0.488806 0.578358 +vt 0.492537 0.578358 +vt 0.481343 0.582090 +vt 0.477612 0.578358 +vt 0.481343 0.578358 +vt 0.473881 0.582090 +vt 0.470149 0.578358 +vt 0.473881 0.578358 +vt 0.466418 0.582090 +vt 0.462687 0.578358 +vt 0.466418 0.578358 +vt 0.488806 0.582090 +vt 0.485075 0.578358 +vt 0.485075 0.582090 +vt 0.477612 0.582090 +vt 0.470149 0.582090 +vt 0.500000 0.597015 +vt 0.503731 0.600746 +vt 0.500000 0.600746 +vt 0.507463 0.597015 +vt 0.511194 0.600746 +vt 0.507463 0.600746 +vt 0.488806 0.597015 +vt 0.492537 0.600746 +vt 0.488806 0.600746 +vt 0.496269 0.597015 +vt 0.496269 0.600746 +vt 0.503731 0.597015 +vt 0.511194 0.597015 +vt 0.514925 0.600746 +vt 0.485075 0.597015 +vt 0.485075 0.600746 +vt 0.492537 0.597015 +vt 0.417910 0.537313 +vt 0.410448 0.541045 +vt 0.410448 0.537313 +vt 0.432836 0.541045 +vt 0.425373 0.537313 +vt 0.432836 0.537313 +vt 0.447761 0.537313 +vt 0.440298 0.541045 +vt 0.440298 0.537313 +vt 0.462687 0.541045 +vt 0.455224 0.537313 +vt 0.462687 0.537313 +vt 0.470149 0.541045 +vt 0.470149 0.537313 +vt 0.417910 0.541045 +vt 0.447761 0.541045 +vt 0.462687 0.544776 +vt 0.410448 0.544776 +vt 0.425373 0.544776 +vt 0.425373 0.541045 +vt 0.440298 0.544776 +vt 0.455224 0.544776 +vt 0.455224 0.541045 +vt 0.417910 0.544776 +vt 0.432836 0.544776 +vt 0.447761 0.544776 +vt 0.320896 0.485075 +vt 0.313433 0.477612 +vt 0.320896 0.477612 +vt 0.320896 0.500000 +vt 0.313433 0.492537 +vt 0.320896 0.492537 +vt 0.320896 0.514925 +vt 0.313433 0.507463 +vt 0.320896 0.507463 +vt 0.320896 0.470149 +vt 0.313433 0.462687 +vt 0.320896 0.462687 +vt 0.313433 0.470149 +vt 0.313433 0.485075 +vt 0.313433 0.500000 +vt 0.313433 0.455224 +vt 0.320896 0.455224 +vt 0.339552 0.440298 +vt 0.339552 0.492537 +vt 0.339552 0.507463 +vt 0.339552 0.470149 +vt 0.339552 0.447761 +vt 0.339552 0.514925 +vt 0.339552 0.477612 +vt 0.339552 0.455224 +vt 0.339552 0.432836 +vt 0.339552 0.485075 +vt 0.339552 0.500000 +vt 0.339552 0.462687 +vt 0.794776 0.854478 +vt 0.776119 0.858209 +vt 0.776119 0.854478 +vt 0.570895 0.656716 +vt 0.597015 0.649254 +vt 0.570895 0.649254 +vt 0.597015 0.656716 +vt 0.570895 0.667910 +vt 0.597015 0.667910 +vt 0.597015 0.675373 +vt 0.570895 0.675373 +vt 0.489199 0.517656 +vt 0.570895 0.686567 +vt 0.597015 0.686567 +vt 0.570895 0.694030 +vt 0.597015 0.694030 +vt 0.597015 0.708955 +vt 0.570895 0.708955 +vt 0.597015 0.738806 +vt 0.570895 0.738806 +vt 0.597015 0.567164 +vt 0.570895 0.589552 +vt 0.597015 0.589552 +vt 0.597015 0.600746 +vt 0.570895 0.600746 +vt 0.597015 0.611940 +vt 0.570895 0.611940 +vt 0.597015 0.623134 +vt 0.570895 0.623134 +vt 0.492734 0.511194 +vt 0.000000 0.324627 +vt -0.000000 0.332090 +vt 0.858209 0.970149 +vt 0.880597 0.996269 +vt 0.854478 0.996269 +vt 0.970149 0.910448 +vt 0.988806 0.925373 +vt 0.970149 0.925373 +vt 0.858209 0.679105 +vt 0.873134 0.694030 +vt 0.861940 0.694030 +vt 0.858209 0.940298 +vt 0.876866 0.955224 +vt 0.858209 0.955224 +vt 0.973881 0.895522 +vt 0.988806 0.910448 +vt 0.861940 0.667910 +vt 0.876866 0.679105 +vt 0.854478 0.921642 +vt 0.876866 0.940298 +vt 0.977612 0.888060 +vt 0.985075 0.895522 +vt 0.861940 0.652985 +vt 0.873134 0.667910 +vt 0.854478 0.858209 +vt 0.880597 0.921642 +vt 0.988806 0.585821 +vt 0.970149 0.585821 +vt 0.880597 0.641791 +vt 0.873134 0.652985 +vt 0.854478 0.843284 +vt 0.880597 0.858209 +vt 0.902985 0.977612 +vt 0.906716 1.000000 +vt 0.891791 0.977612 +vt 0.847015 0.626866 +vt 0.854478 0.641791 +vt 0.854478 0.817164 +vt 0.880597 0.843284 +vt 0.902985 0.880597 +vt 0.929105 0.977612 +vt 0.854478 0.791045 +vt 0.880597 0.817164 +vt 0.902985 0.847015 +vt 0.929105 0.880597 +vt 0.854478 0.772388 +vt 0.880597 0.791045 +vt 0.910448 0.824627 +vt 0.929105 0.847015 +vt 0.858209 0.757463 +vt 0.880597 0.772388 +vt 0.947761 0.899254 +vt 0.958955 0.973881 +vt 0.947761 0.973881 +vt 0.861940 0.746269 +vt 0.876866 0.757463 +vt 0.940298 0.682836 +vt 0.958955 0.899254 +vt 0.861940 0.731343 +vt 0.873134 0.746269 +vt 0.940298 0.634328 +vt 0.966418 0.682836 +vt 0.966418 0.992537 +vt 1.000000 1.000000 +vt 0.958955 1.000000 +vt 0.858209 0.720149 +vt 0.873134 0.731343 +vt 0.940298 0.585821 +vt 0.966418 0.634328 +vt 0.966418 0.973881 +vt 0.992537 0.992537 +vt 0.861940 0.708955 +vt 0.876866 0.720149 +vt 0.940298 0.458955 +vt 0.966418 0.585821 +vt 0.992537 0.973881 +vt 0.873134 0.708955 +vt 0.843284 0.843284 +vt 0.925373 1.000000 +vt 0.839552 0.817164 +vt 0.891791 0.884328 +vt 0.839552 0.772388 +vt 0.854478 0.757463 +vt 0.839552 0.764925 +vt 0.839552 0.757463 +vt 0.679105 0.022388 +vt 0.761194 0.022388 +vt 0.682836 0.048507 +vt 0.858209 0.746269 +vt 0.847015 0.757463 +vt 0.843284 0.746269 +vt 0.492537 0.130597 +vt 0.500000 0.149254 +vt 0.858209 0.731343 +vt 0.843284 0.731343 +vt 0.447761 0.149254 +vt 0.451493 0.167910 +vt 0.847015 0.720149 +vt 0.406716 0.179104 +vt 0.399254 0.160448 +vt 0.402985 0.246269 +vt 0.384328 0.238806 +vt 0.399254 0.235075 +vt 0.858209 0.708955 +vt 0.843284 0.708955 +vt 0.406716 0.179104 +vt 0.399254 0.160448 +vt 0.276119 0.182836 +vt 0.447761 0.208955 +vt 0.858209 0.694030 +vt 0.843284 0.694030 +vt 0.843284 1.000000 +vt 0.843284 0.955224 +vt 0.462687 0.223881 +vt 0.462687 0.201493 +vt 0.847015 0.679105 +vt 0.843284 0.940298 +vt 0.477612 0.197761 +vt 0.477612 0.231343 +vt 0.858209 0.667910 +vt 0.843284 0.667910 +vt 0.891791 0.921642 +vt 0.485075 0.235075 +vt 0.858209 0.652985 +vt 0.843284 0.652985 +vt 0.843284 0.858209 +vt 0.843284 0.921642 +vt 0.779851 0.182836 +vt 0.768657 0.156716 +vt 0.384328 0.250000 +vt 0.376866 0.246269 +vt 0.847015 0.638060 +vt 0.895522 0.764925 +vt 0.936567 0.817164 +vt 0.895522 0.817164 +vt 0.936567 0.824627 +vt 0.895522 0.824627 +vt 0.447761 0.227612 +vt 0.895522 0.847015 +vt 0.902985 0.824627 +vt 0.936567 0.847015 +vt 0.940298 0.884328 +vt 0.768657 0.067164 +vt 0.376866 0.194030 +vt 0.167910 0.194030 +vt 0.276119 0.182836 +vt 0.839552 0.791045 +vt 0.839552 0.802239 +vt 0.276119 0.063433 +vt 0.235075 0.059701 +vt 0.268657 0.052239 +vt 0.227612 0.070896 +vt 0.276119 0.078358 +vt 0.242537 0.123134 +vt 0.216418 0.070896 +vt 0.216418 0.085821 +vt 0.197761 0.119403 +vt 0.235075 0.145522 +vt 0.190299 0.134328 +vt 0.197761 0.104478 +vt 0.208955 0.097015 +vt 0.175373 0.141791 +vt 0.160448 0.190299 +vt 0.160448 0.138060 +vt 0.238806 0.164179 +vt 0.768657 0.067164 +vt 0.761194 0.022388 +vt 0.768657 0.156716 +vt 0.682836 0.048507 +vt 0.500000 0.149254 +vt 0.451493 0.167910 +vt 0.477612 0.197761 +vt 0.462687 0.201493 +vt 0.447761 0.208955 +vt 0.399254 0.235075 +vt 0.276119 0.063433 +vt 0.235075 0.059701 +vt 0.276119 0.078358 +vt 0.227612 0.070896 +vt 0.242537 0.123134 +vt 0.216418 0.070896 +vt 0.216418 0.085821 +vt 0.197761 0.119403 +vt 0.190299 0.134328 +vt 0.235075 0.145522 +vt 0.197761 0.104478 +vt 0.208955 0.097015 +vt 0.175373 0.141791 +vt 0.238806 0.164179 +vt 0.940298 0.977612 +vt 0.779851 0.182836 +vt 0.485075 0.235075 +vt 0.477612 0.231343 +vt 0.462687 0.223881 +vt 0.447761 0.227612 +vt 0.402985 0.246269 +vt 0.384328 0.238806 +vt 0.384328 0.250000 +vt 0.376866 0.246269 +vt 0.929105 0.824627 +vt 0.679105 0.022388 +vt 0.750000 0.003731 +vt 0.492537 0.130597 +vt 0.447761 0.149254 +vt 0.966418 0.458955 +vt 0.977612 0.458955 +vt 0.376866 0.194030 +vt 0.167910 0.194030 +vt 0.876866 0.970149 +vt 0.891791 1.000000 +vt 0.891791 0.955224 +vt 0.891791 0.940298 +vt 0.891791 0.858209 +vt 0.891791 0.843284 +vt 0.895522 0.817164 +vt 0.895522 0.772388 +vt 0.880597 0.757463 +vt 0.895522 0.764925 +vt 0.876866 0.746269 +vt 0.888060 0.757463 +vt 0.876866 0.731343 +vt 0.891791 0.746269 +vt 0.888060 0.720149 +vt 0.876866 0.708955 +vt 0.876866 0.694030 +vt 0.891791 0.708955 +vt 0.888060 0.679105 +vt 0.876866 0.667910 +vt 0.876866 0.652985 +vt 0.891791 0.667910 +vt 0.888060 0.638060 +vt 0.891791 0.652985 +vt 0.888060 0.626866 +vt 0.160448 0.190299 +vt 0.160448 0.138060 +vt 0.235075 0.048507 +vt 0.238806 0.044776 +vt 0.257463 0.041045 +vt 0.895522 0.791045 +vt 0.895522 0.802239 +vt 0.257463 0.041045 +vt 0.238806 0.044776 +vt 0.268657 0.052239 +vt 0.235075 0.048507 +vt 0.339552 0.436567 +vt 0.343284 0.430970 +vt 0.350746 0.440298 +vt 0.350746 0.369403 +vt 0.369403 0.421642 +vt 0.350746 0.421642 +vt 0.429104 0.354478 +vt 0.451493 0.358209 +vt 0.429104 0.358209 +vt 0.369403 0.436567 +vt 0.369403 0.440298 +vt 0.455224 0.354478 +vt 0.485075 0.358209 +vt 0.455224 0.358209 +vt 0.395523 0.417910 +vt 0.391791 0.421642 +vt 0.429104 0.361940 +vt 0.451493 0.358209 +vt 0.451493 0.361940 +vt 0.455224 0.361940 +vt 0.455224 0.358209 +vt 0.485075 0.361940 +vt 0.395523 0.473881 +vt 0.395523 0.444030 +vt 0.485075 0.354478 +vt 0.514925 0.358209 +vt 0.514925 0.354478 +vt 0.485075 0.358209 +vt 0.514925 0.358209 +vt 0.514925 0.361940 +vt 0.451493 0.429104 +vt 0.458955 0.376866 +vt 0.458955 0.429104 +vt 0.436567 0.429104 +vt 0.444030 0.376866 +vt 0.444030 0.429104 +vt 0.481343 0.429104 +vt 0.488806 0.376866 +vt 0.488806 0.429104 +vt 0.466418 0.376866 +vt 0.466418 0.429104 +vt 0.451493 0.376866 +vt 0.429104 0.429104 +vt 0.436567 0.376866 +vt 0.473881 0.429104 +vt 0.481343 0.376866 +vt 0.473881 0.376866 +vt 0.309702 0.272388 +vt 0.231343 0.272388 +vt 0.231343 0.309702 +vt 0.902985 0.414179 +vt 0.899254 0.402985 +vt 0.891791 0.406716 +vt 0.962687 0.421642 +vt 0.958955 0.406716 +vt 0.992537 0.406716 +vt 0.951493 0.402985 +vt 0.947761 0.414179 +vt 0.904851 0.429104 +vt 0.906716 0.055970 +vt 0.951493 0.063433 +vt 0.899254 0.063433 +vt 0.354085 0.517656 +vt 0.350550 0.511194 +vt 0.929105 0.458955 +vt 0.339552 0.425373 +vt 0.638060 0.866761 +vt 0.649252 0.859298 +vt 0.000000 0.313433 +vt 0.000000 0.279851 +vt 0.000000 0.268657 +vt 0.992537 0.421642 +vt 0.794776 0.876866 +vt 0.231343 0.302239 +vt 0.320896 0.253731 +vt 0.899254 0.089552 +vt 0.988806 0.089552 +vt 0.802239 0.048507 +vt 0.861940 0.089552 +vt 0.951493 0.089552 +vt 0.858209 0.048507 +vt 0.567164 0.466418 +vt 0.567164 0.376866 +vt 0.567164 0.406716 +vt 0.567164 0.436567 +vt 0.567164 0.421642 +vt 0.320896 0.335821 +vt 0.634328 0.585821 +vt 0.809702 0.421642 +vt 0.462687 0.582090 +vt 0.514925 0.597015 +vt 0.470149 0.544776 +vt 0.313433 0.514925 +vt 0.339552 0.425373 +vt 0.794776 0.858209 +vt 0.537313 0.738806 +vt 0.570895 0.738806 +vt 0.570895 0.567164 +vt 0.981343 0.888060 +vt 0.921642 0.824627 +vt 0.750000 0.003731 +vt 0.936567 0.764925 +vt 0.895522 0.757463 +vt 0.891791 0.731343 +vt 0.891791 0.694030 +vt 0.369403 0.369403 +vt 0.451493 0.354478 +vt 0.369403 0.425373 +vt 0.395523 0.388060 +vt 0.429104 0.358209 +vt 0.391791 0.440298 +vt 0.429104 0.376866 +vt 0.309702 0.309702 +vt 0.945896 0.429104 +vt 0.944030 0.055970 +vt 0.899254 0.085821 +vt 0.951493 0.085821 +vt 0.638060 0.867922 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn -1.0000 0.0000 0.0000 +vn 1.0000 0.0000 0.0000 +vn 0.4082 0.4082 -0.8165 +vn -0.4082 0.4082 -0.8165 +vn 0.7071 0.7071 0.0000 +vn -0.7071 0.7071 0.0000 +vn 0.0000 0.8320 -0.5547 +vn 0.0000 0.3162 0.9487 +vn 0.0000 1.0000 0.0000 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 0.9778 0.2095 +vn 0.0000 0.9923 0.1240 +vn 0.7071 -0.7071 0.0000 +vn -0.7071 -0.7071 0.0000 +vn -0.9852 0.1716 0.0000 +vn 0.9852 0.1712 -0.0025 +vn -0.9991 0.0416 0.0000 +vn 0.0000 0.5547 0.8321 +vn 0.9991 0.0416 0.0000 +vn 0.9947 0.0000 -0.1030 +vn 0.0000 0.8321 -0.5547 +vn -0.9852 0.1712 -0.0025 +vn 0.9852 0.1716 0.0000 +vn 0.0000 0.8828 -0.4698 +vn 0.0000 0.9846 -0.1748 +vn 0.3827 0.9239 0.0000 +vn -0.3827 0.9239 0.0000 +vn 0.5000 0.8660 0.0000 +vn 0.0000 0.9998 0.0175 +vn 0.4997 0.8660 0.0171 +vn -0.4997 0.8660 0.0171 +vn 0.9654 -0.2604 0.0171 +vn 0.9950 -0.1001 0.0000 +vn 0.9998 -0.0000 0.0175 +vn 0.8892 0.4576 0.0000 +vn 0.8660 0.4997 0.0171 +vn -0.8817 0.4718 0.0000 +vn -0.9998 -0.0000 0.0175 +vn -0.8660 0.4997 0.0171 +vn 0.0048 0.6652 -0.7466 +vn 0.0000 0.8754 -0.4835 +vn 0.0336 0.3645 -0.9306 +vn 0.0308 0.3429 -0.9389 +vn 0.0000 0.2967 -0.9550 +vn -0.9654 -0.2604 0.0171 +vn -0.9945 -0.1050 0.0000 +vn -0.9659 -0.2588 0.0000 +vn -0.0217 0.6807 -0.7322 +vn -0.1528 0.3440 -0.9265 +vn 0.0000 0.6945 -0.7195 +vn 0.0000 0.9998 0.0207 +vn -0.7070 0.7070 0.0208 +vn 0.9998 -0.0006 0.0198 +vn 0.8932 0.4073 -0.1902 +vn 0.5547 0.8321 0.0000 +vn 0.2903 0.9569 0.0009 +vn -0.2903 0.9569 0.0009 +vn -0.0212 0.9998 0.0000 +vn -0.5547 0.8321 0.0000 +vn 0.4468 -0.8936 0.0431 +vn 0.2311 -0.9718 0.0468 +vn 0.2279 -0.9725 0.0469 +vn -0.8932 0.4073 -0.1902 +vn -0.9817 0.0000 -0.1905 +vn -0.1753 0.9688 0.1753 +vn -0.2311 -0.9718 0.0468 +vn -0.2279 -0.9725 0.0469 +vn 0.9817 0.0000 -0.1905 +vn -0.4468 -0.8936 0.0431 +vn 0.1753 0.9688 0.1753 +vn 0.8321 -0.0000 -0.5547 +vn 0.5883 0.5883 -0.5547 +vn -0.5883 0.5883 -0.5547 +vn -0.8321 -0.0000 -0.5547 +vn -0.5883 -0.5883 -0.5547 +vn 0.0000 -0.8321 -0.5547 +vn 0.5883 -0.5883 -0.5547 +vn 0.8320 0.0000 -0.5547 +vn -0.8320 0.0000 -0.5547 +vn -0.9998 -0.0006 0.0198 +vn -0.8917 -0.4523 0.0158 +vn 0.7070 0.7070 0.0208 +vn 0.8917 -0.4523 0.0158 +vn -0.8507 0.5257 0.0000 +vn 0.8507 0.5257 0.0000 +vn -0.4472 0.8944 0.0000 +vn 0.4472 0.8944 0.0000 +vn 0.0212 0.9998 0.0000 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.4472 0.6325 -0.6325 +vn 0.4472 -0.6325 -0.6325 +vn 0.4472 -0.0000 -0.8944 +vn 0.4472 -0.6325 0.6325 +vn 0.4472 -0.8944 -0.0000 +vn 0.4472 0.6325 0.6325 +vn 0.4472 -0.0000 0.8944 +vn -0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 0.7071 +vn -0.7071 0.0000 0.7071 +vn 0.5000 0.0000 0.8660 +vn 0.8660 0.0000 0.5000 +vn -0.8660 0.0000 -0.5000 +vn -0.8660 0.0000 0.5000 +vn -0.5000 0.0000 0.8660 +vn 0.5000 0.0000 -0.8660 +vn -0.5000 0.0000 -0.8660 +vn 0.8660 0.0000 -0.5000 +vn 0.0000 -0.9914 0.1305 +vn 0.0000 -0.8793 0.4762 +vn 0.0000 -0.6302 0.7764 +vn 0.0000 -0.2588 0.9659 +vn 0.0000 0.6950 -0.7190 +vn 0.0000 0.8860 -0.4636 +vn 0.0000 0.9914 -0.1305 +vn 0.0000 0.6412 -0.7674 +vn 0.0000 0.2588 -0.9659 +vn 0.0000 -0.2588 -0.9659 +vn 0.0000 -0.6620 -0.7495 +vn 0.0000 -0.7977 -0.6030 +vn 0.0000 -0.9239 0.3827 +vn 0.0000 -0.3827 0.9239 +vn 0.0000 0.7079 0.7064 +vn 0.0000 0.4245 0.9054 +vn 0.0000 0.9763 0.2164 +vn 0.3617 -0.6800 -0.6378 +vn -0.4283 -0.8116 -0.3974 +vn 0.4283 -0.8116 -0.3974 +vn 0.0000 0.9946 0.1041 +vn 0.0000 0.9528 -0.3037 +vn 0.2707 -0.8502 0.4515 +vn -0.2581 -0.6859 0.6804 +vn 0.2581 -0.6859 0.6804 +vn 0.4210 -0.1018 -0.9013 +vn -0.3617 -0.6800 -0.6378 +vn 0.0000 0.8601 0.5101 +vn 0.2571 -0.1631 0.9525 +vn -0.2939 0.0980 0.9508 +vn 0.2939 0.0980 0.9508 +vn 0.4989 0.3637 -0.7867 +vn -0.4210 -0.1018 -0.9013 +vn 0.0000 0.7660 0.6428 +vn 0.2599 -0.6377 0.7251 +vn -0.2571 -0.1631 0.9525 +vn 0.3812 0.3641 -0.8498 +vn -0.4989 0.3637 -0.7867 +vn 0.0000 0.9877 -0.1564 +vn -0.3656 -0.8719 0.3258 +vn -0.2599 -0.6377 0.7251 +vn 0.4369 -0.0300 -0.8990 +vn -0.3812 0.3641 -0.8498 +vn 0.4071 -0.0353 -0.9127 +vn 0.1358 -0.1326 -0.9818 +vn 0.7071 0.0028 -0.7071 +vn 0.3053 -0.9310 0.1999 +vn 0.3656 -0.8719 0.3258 +vn 0.4786 -0.5779 -0.6610 +vn -0.4369 -0.0300 -0.8990 +vn 0.3801 -0.0892 -0.9206 +vn -0.4071 -0.0353 -0.9127 +vn 0.4872 -0.8552 -0.1771 +vn -0.4786 -0.5779 -0.6610 +vn 0.2373 -0.3758 -0.8958 +vn -0.3801 -0.0892 -0.9206 +vn 0.4942 -0.7969 0.3475 +vn -0.4872 -0.8552 -0.1771 +vn 0.0464 -0.5855 -0.8093 +vn -0.2373 -0.3758 -0.8958 +vn 0.3436 -0.7133 0.6108 +vn -0.4942 -0.7969 0.3475 +vn 0.0000 -0.9283 0.3718 +vn 0.0000 -0.9659 0.2588 +vn 0.2689 -0.2349 0.9341 +vn -0.2532 0.0844 0.9637 +vn 0.2532 0.0844 0.9637 +vn 0.5452 -0.7653 0.3421 +vn 0.2726 -0.7450 0.6088 +vn -0.2689 -0.2349 0.9341 +vn 0.5496 -0.7960 0.2536 +vn -0.5452 -0.7653 0.3421 +vn 0.0000 0.9945 -0.1044 +vn 0.2686 -0.8754 0.4020 +vn -0.2726 -0.7450 0.6088 +vn 0.5439 -0.8274 0.1401 +vn -0.5496 -0.7960 0.2536 +vn 0.0000 0.9404 -0.3400 +vn 0.2611 -0.1819 0.9480 +vn 0.3902 -0.9157 0.0962 +vn -0.5439 -0.8274 0.1401 +vn -0.2611 -0.1819 0.9480 +vn 0.8328 -0.0769 -0.5481 +vn -0.1358 -0.1326 -0.9818 +vn 0.8962 -0.3180 -0.3092 +vn 0.7188 -0.0240 -0.6948 +vn 0.8128 -0.5252 0.2521 +vn 0.6507 -0.7120 0.2640 +vn 0.8077 -0.5485 0.2161 +vn 0.9322 -0.3484 0.0980 +vn 0.9464 -0.2954 0.1306 +vn 0.4576 0.0558 0.8874 +vn 0.5398 -0.2890 0.7906 +vn 0.9747 -0.2052 0.0886 +vn 0.5706 -0.6782 0.4631 +vn 0.9789 -0.1943 0.0638 +vn 0.4954 -0.8429 0.2102 +vn 0.9793 -0.1994 0.0343 +vn 0.7293 0.6317 -0.2627 +vn 0.9364 0.3106 -0.1634 +vn 0.9284 0.3428 -0.1432 +vn 0.4718 0.0643 0.8793 +vn 0.5046 -0.2779 0.8174 +vn -0.9793 -0.1994 0.0343 +vn -0.7249 -0.6853 0.0697 +vn 0.9300 0.3408 -0.1376 +vn 0.4666 -0.6348 0.6159 +vn 0.6337 -0.7027 -0.3235 +vn 0.7008 -0.3789 -0.6044 +vn 0.8048 0.5815 -0.1191 +vn 0.9451 0.3045 -0.1184 +vn 0.4634 -0.7810 0.4187 +vn 0.7152 0.0555 -0.6967 +vn 0.9654 0.2563 -0.0474 +vn 0.8634 0.4934 -0.1052 +vn 0.5213 -0.2174 0.8252 +vn -0.7979 0.3019 -0.5218 +vn 0.8618 0.4995 -0.0885 +vn 0.6057 -0.5861 0.5382 +vn 0.6936 0.2622 -0.6709 +vn 0.7979 0.3019 -0.5218 +vn 0.9003 0.4329 -0.0461 +vn 0.9716 0.2354 -0.0255 +vn 0.6590 0.6590 -0.3626 +vn 0.8518 0.3705 -0.3705 +vn 0.7047 -0.7047 0.0827 +vn 0.0000 0.5257 0.8507 +vn 0.0000 0.8944 0.4472 +vn 0.6830 0.6830 -0.2589 +vn 0.4122 -0.4345 -0.8008 +vn -0.4122 -0.4345 -0.8008 +vn -0.7188 -0.0240 -0.6948 +vn 0.8812 -0.4406 -0.1711 +vn -0.9322 -0.3484 0.0980 +vn -0.9716 0.2354 -0.0255 +vn -0.9464 -0.2954 0.1306 +vn -0.9747 -0.2052 0.0886 +vn -0.9789 -0.1943 0.0638 +vn -0.9654 0.2563 -0.0474 +vn -0.9451 0.3045 -0.1184 +vn -0.9291 0.3446 -0.1345 +vn -0.9266 0.3439 -0.1522 +vn -0.7071 0.0028 -0.7071 +vn -0.9003 0.4329 -0.0461 +vn -0.8618 0.4995 -0.0885 +vn -0.8634 0.4934 -0.1052 +vn -0.8048 0.5815 -0.1191 +vn -0.6914 0.6800 -0.2443 +vn -0.7374 0.6175 -0.2737 +vn -0.9364 0.3106 -0.1634 +vn -0.6590 0.6590 -0.3626 +vn -0.8517 0.3705 -0.3705 +vn -0.0464 -0.5855 -0.8093 +vn -0.8077 -0.5485 0.2161 +vn -0.7385 -0.6513 0.1745 +vn -0.3902 -0.9157 0.0962 +vn -0.6337 -0.7027 -0.3235 +vn -0.7008 -0.3789 -0.6044 +vn -0.7152 0.0555 -0.6967 +vn -0.6936 0.2622 -0.6709 +vn -0.8328 -0.0769 -0.5481 +vn -0.8962 -0.3180 -0.3092 +vn -0.8128 -0.5252 0.2521 +vn -0.3436 -0.7133 0.6108 +vn -0.4576 0.0558 0.8874 +vn -0.5398 -0.2890 0.7906 +vn -0.4954 -0.8429 0.2102 +vn -0.2686 -0.8754 0.4020 +vn -0.4718 0.0643 0.8793 +vn -0.5046 -0.2779 0.8174 +vn -0.4634 -0.7810 0.4187 +vn -0.2707 -0.8502 0.4515 +vn -0.5213 -0.2174 0.8252 +vn -0.7047 -0.7047 0.0827 +vn -0.6057 -0.5861 0.5382 +vn -0.3053 -0.9310 0.1999 +vn -0.8812 -0.4406 -0.1711 +vn -0.9978 -0.0657 0.0000 +vn 0.9962 -0.0872 0.0000 +vn 0.0665 0.3772 0.9238 +vn 0.1604 0.9098 0.3827 +vn 0.1540 0.8732 -0.4625 +vn 0.9848 -0.1736 -0.0000 +vn 0.9848 -0.1737 -0.0000 +vn -0.0665 0.3772 0.9238 +vn -0.0665 0.3769 0.9239 +vn -0.1604 0.9098 0.3827 +vn -0.1499 0.8739 -0.4623 +vn -0.9848 -0.1736 0.0000 +vn -0.9962 -0.0872 -0.0000 +vn 0.1499 0.8739 -0.4623 +vn 0.0079 0.5854 -0.8107 +vn 0.0000 0.5871 -0.8095 +vn -0.1540 0.8732 -0.4625 +vn -0.0079 0.5854 -0.8107 +vn 0.0960 -0.5481 -0.8309 +vn 0.0622 -0.7750 -0.6288 +vn 0.2862 -0.5725 -0.7684 +vn 0.9144 -0.0000 -0.4049 +vn 0.9269 0.0000 -0.3754 +vn -0.9947 0.0000 -0.1030 +vn -0.9269 0.0000 -0.3754 +vn -0.9577 0.0000 -0.2879 +vn -0.0960 -0.5481 -0.8309 +vn -0.2862 -0.5725 -0.7684 +vn -0.0622 -0.7750 -0.6288 +vn 0.0000 -0.9639 -0.2662 +vn 0.0000 0.3604 0.9328 +vn 0.7249 -0.6853 0.0697 +vn -0.1469 0.2439 -0.9586 +vn 0.0000 0.6769 -0.7360 +vn -0.5000 0.8660 0.0000 +vn 0.9659 -0.2588 0.0000 +vn -0.9328 0.3604 0.0000 +vn 0.9328 0.3604 0.0000 +vn 0.7385 -0.6513 0.1745 +vn -0.6507 -0.7120 0.2640 +vn -0.5706 -0.6782 0.4631 +vn -0.4666 -0.6348 0.6159 +vn 0.9978 -0.0657 -0.0000 +vn 0.0665 0.3769 0.9239 +vn -0.9848 -0.1737 -0.0000 +vn -0.0622 -0.7751 -0.6288 +s off +f 345/602/139 346/603/139 347/604/139 +f 348/605/140 349/606/140 350/607/140 +f 351/608/140 352/609/140 353/610/140 +f 354/611/141 348/605/141 355/612/141 +f 356/613/142 353/610/142 352/609/142 +f 354/614/140 357/615/140 356/616/140 +f 358/617/143 359/618/143 360/619/143 +f 361/620/144 362/621/144 363/622/144 +f 358/617/145 364/623/145 359/618/145 +f 365/624/146 363/622/146 362/621/146 +f 366/625/147 365/626/147 364/627/147 +f 356/616/148 367/628/148 354/614/148 +f 368/629/140 369/630/140 370/631/140 +f 368/632/140 371/633/140 372/634/140 +f 373/635/140 371/633/140 374/636/140 +f 373/637/140 375/638/140 376/639/140 +f 377/640/140 378/641/140 379/642/140 +f 379/643/140 375/638/140 380/644/140 +f 381/645/142 382/646/142 383/647/142 +f 384/648/141 385/649/141 386/650/141 +f 387/651/149 388/652/149 389/653/149 +f 390/654/140 391/655/140 392/656/140 +f 360/657/149 359/658/149 355/659/149 +f 351/608/149 353/610/149 357/660/149 +f 355/659/149 362/661/149 357/660/149 +f 393/662/150 394/663/150 395/664/150 +f 396/665/140 397/666/140 398/667/140 +f 399/668/149 400/669/149 396/670/149 +f 366/671/142 347/604/142 401/672/142 +f 358/673/142 350/674/142 349/675/142 +f 358/673/142 349/675/142 347/604/142 +f 349/675/142 392/676/142 347/604/142 +f 345/602/142 392/676/142 402/677/142 +f 351/678/141 363/679/141 403/680/141 +f 404/681/141 346/603/141 363/679/141 +f 363/679/141 346/603/141 403/680/141 +f 403/680/141 391/682/141 405/683/141 +f 406/684/141 391/682/141 346/603/141 +f 390/654/149 403/685/149 405/686/149 +f 407/687/139 408/688/139 409/689/139 +f 407/690/140 409/689/140 410/691/140 +f 411/692/141 412/693/141 413/694/141 +f 414/695/151 412/696/151 415/697/151 +f 416/698/151 417/699/151 418/700/151 +f 408/688/142 416/701/142 409/689/142 +f 419/702/150 420/703/150 421/704/150 +f 422/705/142 415/706/142 410/707/142 +f 418/708/141 423/709/141 424/710/141 +f 425/711/149 426/712/149 427/713/149 +f 423/709/149 410/707/149 424/710/149 +f 408/714/150 411/692/150 423/715/150 +f 428/716/152 421/717/152 420/703/152 +f 429/718/150 425/711/150 430/719/150 +f 431/720/150 429/718/150 430/719/150 +f 425/711/150 432/721/150 430/719/150 +f 425/711/150 433/722/150 434/723/150 +f 429/718/150 435/724/150 428/725/150 +f 436/726/150 428/725/150 435/724/150 +f 433/722/150 437/727/150 434/723/150 +f 433/722/150 428/725/150 438/728/150 +f 426/729/140 439/730/140 427/731/140 +f 440/732/140 427/731/140 439/730/140 +f 441/733/140 426/729/140 442/734/140 +f 443/735/140 444/736/140 445/737/140 +f 446/738/150 447/739/150 448/740/150 +f 449/741/150 450/742/150 451/743/150 +f 452/744/151 446/738/151 443/735/151 +f 453/745/140 454/746/140 455/747/140 +f 427/731/140 455/747/140 454/746/140 +f 426/729/140 452/748/140 442/734/140 +f 452/749/141 429/750/141 428/751/141 +f 425/752/142 427/753/142 454/754/142 +f 456/755/142 457/756/142 458/757/142 +f 459/758/141 460/759/141 461/760/141 +f 462/761/139 463/762/139 464/763/139 +f 465/764/149 466/765/149 467/766/149 +f 468/767/149 465/764/149 469/768/149 +f 468/767/149 469/769/149 470/770/149 +f 466/765/149 471/771/149 467/772/149 +f 472/773/149 470/770/149 469/774/149 +f 471/771/149 473/775/149 467/776/149 +f 473/775/149 474/777/149 475/778/149 +f 474/777/149 476/779/149 475/780/149 +f 476/779/149 477/781/149 475/782/149 +f 477/781/149 478/783/149 479/784/149 +f 478/783/149 480/785/149 479/786/149 +f 480/785/149 472/787/149 479/788/149 +f 481/789/142 482/790/142 483/791/142 +f 483/791/142 484/792/142 485/793/142 +f 481/789/142 486/794/142 487/795/142 +f 488/796/141 489/797/141 490/798/141 +f 491/799/142 492/800/142 493/801/142 +f 494/802/149 385/803/149 495/804/149 +f 496/805/141 497/806/141 498/807/141 +f 499/808/141 496/805/141 500/809/141 +f 500/809/141 501/810/141 499/811/141 +f 502/812/153 503/813/153 504/814/153 +f 505/815/142 506/816/142 486/794/142 +f 507/817/142 506/818/142 508/819/142 +f 509/820/142 507/817/142 508/819/142 +f 510/821/142 508/819/142 503/822/142 +f 510/821/142 503/822/142 511/823/142 +f 485/793/142 512/824/142 513/825/142 +f 511/823/142 513/826/142 514/827/142 +f 498/807/141 515/828/141 516/829/141 +f 515/830/141 517/831/141 516/832/141 +f 517/831/141 518/833/141 516/832/141 +f 519/834/141 520/835/141 521/836/141 +f 521/837/141 522/838/141 523/839/141 +f 522/838/141 524/840/141 525/841/141 +f 525/841/141 516/832/141 518/833/141 +f 524/842/154 526/843/154 527/844/154 +f 366/671/150 528/845/150 404/846/150 +f 369/630/140 529/847/140 370/848/140 +f 530/849/140 377/850/140 531/851/140 +f 532/852/150 533/853/150 534/854/150 +f 535/855/149 536/856/149 532/857/149 +f 537/858/155 532/857/155 536/856/155 +f 538/859/156 539/860/156 540/861/156 +f 541/862/150 542/863/150 543/864/150 +f 544/865/149 545/866/149 542/867/149 +f 546/868/157 541/862/157 547/869/157 +f 548/870/158 546/871/158 547/872/158 +f 543/864/159 545/873/159 548/874/159 +f 549/875/140 550/876/140 551/877/140 +f 389/653/150 552/878/150 387/651/150 +f 553/879/140 452/748/140 554/880/140 +f 452/748/140 454/746/140 554/880/140 +f 365/881/149 359/882/149 364/883/149 +f 402/884/160 555/885/160 345/886/160 +f 345/602/139 406/684/139 346/603/139 +f 348/605/140 367/887/140 349/606/140 +f 351/608/140 403/888/140 352/609/140 +f 354/611/141 367/887/141 348/605/141 +f 356/613/142 357/889/142 353/610/142 +f 354/614/140 355/890/140 357/615/140 +f 358/617/145 366/625/145 364/623/145 +f 365/624/146 404/891/146 363/622/146 +f 366/625/161 404/891/161 365/626/161 +f 356/616/148 352/892/148 367/628/148 +f 368/629/140 372/634/140 369/630/140 +f 368/632/140 374/893/140 371/633/140 +f 373/635/140 376/639/140 371/633/140 +f 373/637/140 380/894/140 375/638/140 +f 377/640/140 530/849/140 378/641/140 +f 379/643/140 378/641/140 375/638/140 +f 381/645/142 556/895/142 557/896/142 +f 556/895/142 558/897/142 557/896/142 +f 557/896/142 382/646/142 381/645/142 +f 382/646/142 559/898/142 383/647/142 +f 560/899/141 561/900/141 562/901/141 +f 562/901/141 563/902/141 560/899/141 +f 563/902/141 384/648/141 386/650/141 +f 560/899/141 563/902/141 386/650/141 +f 387/651/149 564/903/149 388/652/149 +f 390/654/140 405/686/140 391/655/140 +f 348/605/149 350/607/149 355/659/149 +f 350/607/149 360/657/149 355/659/149 +f 362/661/149 361/904/149 357/660/149 +f 361/904/149 351/608/149 357/660/149 +f 355/659/149 359/658/149 362/661/149 +f 395/664/150 565/905/150 393/662/150 +f 565/905/150 566/906/150 400/907/150 +f 393/662/150 565/905/150 400/907/150 +f 398/667/140 567/908/140 396/665/140 +f 567/908/140 568/909/140 399/910/140 +f 396/665/140 567/908/140 399/910/140 +f 399/668/149 393/911/149 400/669/149 +f 366/671/142 358/673/142 347/604/142 +f 358/673/142 360/912/142 350/674/142 +f 349/675/142 390/654/142 392/676/142 +f 345/602/142 347/604/142 392/676/142 +f 351/678/141 361/913/141 363/679/141 +f 404/681/141 528/914/141 346/603/141 +f 403/680/141 346/603/141 391/682/141 +f 406/684/141 569/915/141 391/682/141 +f 390/654/149 349/675/149 403/685/149 +f 407/687/139 411/916/139 408/688/139 +f 415/917/140 412/693/140 410/691/140 +f 412/693/140 407/690/140 410/691/140 +f 409/689/140 416/701/140 424/918/140 +f 416/701/140 418/919/140 424/918/140 +f 409/689/140 424/918/140 410/691/140 +f 411/692/141 407/690/141 412/693/141 +f 414/695/151 413/920/151 412/696/151 +f 416/698/151 570/921/151 417/699/151 +f 408/688/142 570/922/142 416/701/142 +f 419/702/150 571/923/150 420/703/150 +f 422/705/142 414/695/142 415/706/142 +f 418/708/141 417/699/141 423/709/141 +f 425/711/149 429/718/149 426/712/149 +f 423/709/149 422/705/149 410/707/149 +f 411/692/150 413/694/150 422/924/150 +f 413/694/150 414/925/150 422/924/150 +f 417/926/150 570/927/150 423/715/150 +f 570/927/150 408/714/150 423/715/150 +f 411/692/150 422/924/150 423/715/150 +f 428/716/152 433/928/152 421/717/152 +f 431/720/150 435/724/150 429/718/150 +f 425/711/150 434/723/150 432/721/150 +f 436/726/150 438/728/150 428/725/150 +f 433/722/150 438/728/150 437/727/150 +f 440/732/140 455/747/140 427/731/140 +f 441/733/140 439/730/140 426/729/140 +f 443/735/140 572/929/140 444/736/140 +f 446/738/150 452/744/150 447/739/150 +f 449/741/150 454/930/150 450/742/150 +f 443/735/151 445/737/151 454/930/151 +f 445/737/151 450/742/151 454/930/151 +f 454/930/151 452/744/151 443/735/151 +f 453/745/140 554/880/140 454/746/140 +f 428/751/141 420/703/141 571/923/141 +f 571/923/141 447/931/141 428/751/141 +f 447/931/141 452/749/141 428/751/141 +f 452/749/141 426/932/141 429/750/141 +f 454/754/142 449/933/142 433/934/142 +f 449/933/142 419/935/142 433/934/142 +f 419/935/142 421/936/142 433/934/142 +f 433/934/142 425/752/142 454/754/142 +f 458/757/142 573/937/142 574/938/142 +f 574/938/142 575/939/142 456/755/142 +f 456/755/142 576/940/142 457/756/142 +f 457/756/142 577/941/142 458/757/142 +f 458/757/142 574/938/142 456/755/142 +f 461/760/141 578/942/141 579/943/141 +f 579/943/141 580/944/141 459/758/141 +f 459/758/141 581/945/141 460/759/141 +f 460/759/141 582/946/141 461/760/141 +f 461/760/141 579/943/141 459/758/141 +f 464/763/139 583/947/139 584/948/139 +f 584/948/139 585/949/139 586/950/139 +f 586/950/139 587/951/139 588/952/139 +f 588/952/139 589/953/139 462/761/139 +f 462/761/139 590/954/139 463/762/139 +f 463/762/139 591/955/139 464/763/139 +f 464/763/139 584/948/139 462/761/139 +f 584/948/139 586/950/139 462/761/139 +f 586/950/139 588/952/139 462/761/139 +f 465/764/149 592/956/149 466/765/149 +f 468/767/149 592/956/149 465/764/149 +f 472/773/149 593/957/149 470/770/149 +f 471/771/149 594/958/149 473/775/149 +f 473/775/149 594/958/149 474/777/149 +f 476/779/149 595/959/149 477/781/149 +f 477/781/149 595/959/149 478/783/149 +f 480/785/149 593/960/149 472/787/149 +f 481/789/142 487/961/142 482/790/142 +f 483/791/142 482/962/142 484/792/142 +f 481/789/142 505/815/142 486/794/142 +f 488/796/141 494/963/141 489/797/141 +f 491/799/142 495/964/142 492/800/142 +f 491/965/149 489/966/149 494/802/149 +f 494/802/149 386/967/149 385/803/149 +f 385/803/149 559/968/149 495/804/149 +f 559/968/149 382/969/149 495/804/149 +f 495/804/149 491/965/149 494/802/149 +f 496/805/141 596/970/141 497/806/141 +f 499/808/141 596/971/141 496/805/141 +f 500/809/141 520/835/141 501/810/141 +f 502/812/153 513/972/153 503/813/153 +f 505/815/142 508/973/142 506/816/142 +f 510/821/142 509/820/142 508/819/142 +f 485/793/142 484/792/142 512/824/142 +f 511/823/142 503/822/142 513/826/142 +f 498/807/141 497/806/141 515/828/141 +f 519/834/141 501/810/141 520/835/141 +f 521/837/141 524/840/141 522/838/141 +f 525/841/141 524/840/141 516/832/141 +f 524/842/154 521/974/154 526/843/154 +f 366/671/150 401/672/150 528/845/150 +f 534/854/150 597/975/150 535/976/150 +f 597/975/150 598/977/150 535/976/150 +f 535/976/150 532/852/150 534/854/150 +f 535/855/149 540/861/149 536/856/149 +f 536/856/162 599/978/162 600/979/162 +f 600/979/155 537/858/155 536/856/155 +f 540/861/163 535/855/163 601/980/163 +f 601/980/163 538/859/163 540/861/163 +f 541/862/150 544/981/150 542/863/150 +f 544/865/149 546/871/149 545/866/149 +f 546/868/157 544/981/157 541/862/157 +f 548/870/158 545/866/158 546/871/158 +f 543/864/159 542/863/159 545/873/159 +f 550/876/140 602/982/140 603/983/140 +f 603/983/140 604/984/140 550/876/140 +f 604/984/140 551/877/140 550/876/140 +f 551/877/140 605/985/140 606/986/140 +f 606/986/140 549/875/140 551/877/140 +f 607/987/150 552/878/150 389/653/150 +f 552/878/150 608/988/150 387/651/150 +f 553/879/140 442/734/140 452/748/140 +f 365/881/149 362/989/149 359/882/149 +s 1 +f 488/990/164 561/991/165 560/992/164 +f 376/639/139 609/993/153 371/633/153 +f 372/634/142 610/994/145 369/630/145 +f 375/638/154 611/995/139 376/639/139 +f 371/633/153 612/996/142 372/634/142 +f 534/997/166 369/630/145 610/994/145 +f 530/849/146 613/998/141 378/641/141 +f 378/641/141 614/999/154 375/638/154 +f 597/1000/167 530/849/146 531/851/167 +f 608/1001/168 615/1002/169 616/1003/170 +f 552/1004/149 617/1005/171 615/1002/169 +f 618/1006/172 619/1007/173 620/1008/174 +f 620/1008/174 621/1009/175 622/1010/176 +f 623/1011/177 624/1012/178 625/1013/179 +f 383/1014/180 626/1015/181 381/1016/181 +f 621/1017/182 559/1018/183 564/1019/184 +f 627/1020/185 628/1021/186 629/1022/187 +f 629/1023/181 384/1024/188 563/1025/181 +f 623/1026/189 384/1024/188 628/1027/190 +f 615/1002/169 617/1005/171 630/1028/191 +f 631/1029/192 630/1028/191 617/1005/171 +f 622/1010/176 632/1030/193 620/1008/174 +f 633/1031/194 555/1032/195 634/1033/196 +f 635/1034/197 569/1035/198 636/1036/199 +f 637/1037/200 638/1038/201 639/1039/202 +f 640/1040/141 641/1041/203 642/1042/204 +f 641/1043/203 643/1044/205 635/1034/197 +f 639/1039/202 644/1045/206 645/1046/207 +f 633/1047/194 646/1048/142 637/1037/208 +f 644/1045/206 642/1042/209 645/1046/207 +f 647/1049/210 633/1031/194 634/1033/196 +f 612/996/211 648/1050/212 610/994/212 +f 649/1051/161 650/1052/213 651/1053/213 +f 613/998/214 652/1054/215 614/999/215 +f 611/995/216 653/1055/217 609/993/217 +f 612/996/211 653/1056/217 654/1057/218 +f 649/1058/161 648/1059/212 655/1060/161 +f 613/998/214 650/1061/213 656/1062/219 +f 614/999/215 657/1063/216 611/995/216 +f 658/1064/220 650/1065/146 631/1066/192 +f 659/1067/221 656/1068/141 658/1064/220 +f 660/1069/139 653/1070/153 657/1071/139 +f 661/1072/222 654/1073/142 632/1074/193 +f 631/1066/192 655/1075/149 630/1076/191 +f 660/1069/139 652/1077/154 659/1067/221 +f 632/1074/193 653/1070/153 662/1078/223 +f 630/1079/191 648/1080/145 661/1072/222 +f 398/667/141 566/1081/224 565/905/141 +f 395/1082/142 568/1083/225 567/908/142 +f 397/1084/224 400/669/226 566/1081/224 +f 394/1085/225 399/1086/227 568/1083/225 +f 625/1013/179 624/1012/178 658/1087/220 +f 402/1088/228 392/1089/149 569/1035/198 +f 618/1006/172 632/1090/193 662/1091/223 +f 439/1092/139 431/1093/153 430/1094/139 +f 553/1095/145 438/1096/149 436/1097/145 +f 453/1098/146 434/1099/141 437/1100/146 +f 440/1101/154 430/1102/139 432/1103/154 +f 441/1104/153 435/1105/142 431/1093/153 +f 442/1106/142 436/1097/145 435/1105/142 +f 554/1107/149 437/1100/146 438/1096/149 +f 455/1108/141 432/1103/154 434/1099/141 +f 456/1109/139 663/1110/229 664/1111/139 +f 574/1112/140 665/1113/230 666/1114/140 +f 577/1115/231 667/1116/150 668/1117/231 +f 576/1118/232 664/1111/139 669/1119/232 +f 575/1120/229 666/1114/140 663/1110/229 +f 573/1121/230 670/1122/149 665/1113/230 +f 458/1123/149 668/1117/231 670/1124/149 +f 457/1125/150 669/1119/232 667/1116/150 +f 671/1126/233 672/1127/227 673/1128/227 +f 674/1129/234 675/1130/235 676/1131/234 +f 677/1132/236 678/1133/237 679/1134/237 +f 680/1135/238 681/1136/239 682/1137/238 +f 672/1138/227 682/1137/238 673/1139/227 +f 675/1130/235 683/1140/233 671/1126/233 +f 678/1133/237 676/1131/234 679/1134/237 +f 681/1136/239 684/1141/236 677/1132/236 +f 672/1138/149 578/1142/230 680/1135/230 +f 683/1140/231 579/1143/149 672/1127/149 +f 674/1129/232 459/1144/150 685/1145/150 +f 684/1141/229 460/1146/139 678/1133/139 +f 680/1135/230 461/1147/140 686/1148/140 +f 685/1145/150 580/1149/231 683/1140/231 +f 678/1133/139 581/1150/232 674/1129/232 +f 686/1148/140 582/1151/229 684/1141/229 +f 687/1152/150 475/1153/240 688/1154/240 +f 689/1155/142 467/1156/241 690/1157/241 +f 691/1158/140 469/1159/242 692/1160/242 +f 693/1161/141 479/1162/243 694/1163/243 +f 688/1154/240 477/1164/141 693/1161/141 +f 690/1157/241 473/1165/150 687/1152/150 +f 692/1160/242 465/1166/142 689/1155/142 +f 694/1163/243 472/1167/140 691/1168/140 +f 470/770/244 590/1169/245 468/767/245 +f 476/779/246 584/1170/141 595/959/141 +f 478/783/247 464/1171/248 480/785/248 +f 471/771/249 587/1172/150 594/958/150 +f 468/767/245 462/1173/142 592/956/142 +f 480/785/248 591/1174/140 593/960/140 +f 594/958/150 586/1175/250 474/777/250 +f 592/956/142 589/1176/251 466/765/251 +f 593/957/140 463/1177/244 470/770/244 +f 474/777/250 585/1178/246 476/779/246 +f 595/959/141 583/1179/247 478/783/247 +f 466/765/251 588/1180/249 471/771/249 +f 498/807/252 481/789/253 496/805/253 +f 481/789/253 500/809/254 496/805/253 +f 500/809/254 485/793/255 520/835/255 +f 488/990/164 386/967/256 494/802/256 +f 558/1181/165 492/1182/164 557/1183/164 +f 382/969/256 492/1182/164 495/804/256 +f 596/1184/257 486/1185/258 497/1186/258 +f 487/1187/257 499/1188/259 482/1189/259 +f 484/1190/260 499/1188/259 501/1191/260 +f 521/836/140 485/793/255 513/825/140 +f 523/839/141 695/1192/141 521/837/141 +f 519/1193/261 484/1190/260 501/1191/260 +f 512/1194/261 695/1195/262 696/1196/262 +f 514/1197/263 695/1195/262 523/1198/263 +f 511/1199/264 523/1198/139 522/1200/264 +f 511/1201/264 525/1202/265 510/1203/265 +f 509/1204/140 525/1202/265 518/1205/140 +f 507/1206/266 518/1205/267 517/1207/266 +f 506/1208/268 517/1207/266 515/1209/268 +f 486/1185/258 515/1209/268 497/1186/258 +f 516/829/139 505/815/252 498/807/252 +f 519/1210/141 521/837/141 695/1192/141 +f 658/1211/220 627/1020/185 659/1212/221 +f 697/1213/269 698/1214/270 699/1215/271 +f 700/1216/272 701/1217/273 702/1218/273 +f 703/1219/274 704/1220/275 705/1221/276 +f 706/1222/277 707/1223/278 697/1224/269 +f 708/1225/279 709/1226/272 700/1216/272 +f 710/1227/280 711/1228/281 703/1219/282 +f 712/1229/283 713/1230/284 706/1222/277 +f 714/1231/285 715/1232/279 708/1225/279 +f 716/1233/286 717/1234/287 710/1227/280 +f 718/1235/288 719/1236/289 712/1229/283 +f 720/1237/290 714/1231/290 721/1238/290 +f 716/1233/286 722/1239/291 723/1240/292 +f 724/1241/293 725/1242/294 718/1235/288 +f 726/1243/295 721/1244/296 727/1245/297 +f 728/1246/298 722/1239/291 729/1247/299 +f 730/1248/300 731/1249/301 724/1241/293 +f 732/1250/302 733/1251/303 726/1243/295 +f 734/1252/304 735/1253/305 730/1248/300 +f 736/1254/306 737/1255/307 732/1250/302 +f 738/1256/308 739/1257/309 734/1252/304 +f 740/1258/310 741/1259/311 736/1254/306 +f 742/1260/312 743/1261/313 738/1256/308 +f 744/1262/314 745/1263/315 740/1264/315 +f 746/1265/316 747/1266/317 742/1260/318 +f 748/1267/319 749/1268/314 744/1262/314 +f 750/1269/320 751/1270/321 746/1265/316 +f 752/1271/322 753/1272/323 748/1267/319 +f 754/1273/324 755/1274/149 756/1275/149 +f 757/1276/325 758/1277/326 750/1269/320 +f 759/1278/327 760/1279/328 752/1271/322 +f 761/1280/329 762/1281/324 754/1273/324 +f 763/1282/330 764/1283/281 757/1276/282 +f 699/1284/331 765/1285/332 759/1278/327 +f 702/1218/273 766/1286/329 761/1280/329 +f 705/1221/276 767/1287/333 763/1282/330 +f 718/1235/288 768/1288/334 724/1241/293 +f 721/1244/296 733/1251/303 720/1289/335 +f 730/1248/300 768/1288/334 769/1290/336 +f 726/1243/295 770/1291/337 732/1250/302 +f 738/1256/308 734/1252/304 771/1292/338 +f 742/1293/312 771/1294/338 772/1295/339 +f 744/1296/340 773/1297/341 774/1298/342 +f 746/1299/316 772/1300/343 775/1301/344 +f 748/1302/319 744/1296/340 776/1303/345 +f 750/1304/320 775/1301/344 777/1305/346 +f 752/1306/322 748/1302/319 778/1307/347 +f 750/1304/320 779/1308/348 757/1276/325 +f 752/1306/322 780/1309/349 759/1310/327 +f 761/1311/350 781/1312/351 782/1313/352 +f 763/1314/330 779/1308/353 783/1315/354 +f 784/1316/355 765/1317/332 785/1318/356 +f 786/1319/357 761/1311/350 782/1313/352 +f 705/1320/276 783/1315/354 787/1321/358 +f 697/1213/269 788/1322/359 789/1323/360 +f 700/1324/361 786/1319/357 790/1325/362 +f 705/1320/276 791/1326/363 703/1219/274 +f 792/1327/364 706/1222/277 789/1323/360 +f 700/1324/361 793/1328/365 708/1329/366 +f 710/1330/280 791/1326/353 794/1331/367 +f 719/1236/289 795/1332/368 713/1230/284 +f 708/1329/366 793/1328/365 714/1333/369 +f 716/1334/286 794/1331/367 796/1335/370 +f 797/1336/371 712/1229/283 798/1337/372 +f 721/1338/373 714/1333/369 727/1339/374 +f 754/1340/375 756/1341/376 781/1312/351 +f 729/1247/299 799/1342/377 728/1246/298 +f 800/1343/140 801/1344/378 802/1345/378 +f 802/1345/378 347/1346/379 346/1347/379 +f 727/1339/374 714/1333/369 793/1328/365 +f 761/1311/350 786/1319/357 702/1348/380 +f 736/1254/306 773/1349/381 740/1350/310 +f 741/1259/311 803/1351/382 737/1255/307 +f 803/1351/382 804/1352/383 737/1255/307 +f 770/1353/142 727/1339/374 773/1297/341 +f 697/1224/269 789/1323/360 706/1222/277 +f 712/1229/283 797/1336/371 718/1235/288 +f 778/1307/347 748/1302/319 776/1303/345 +f 773/1297/341 727/1339/374 774/1298/342 +f 727/1339/374 776/1303/345 774/1298/342 +f 778/1307/347 776/1303/345 793/1328/365 +f 793/1328/365 790/1325/362 778/1307/347 +f 786/1319/357 778/1307/347 790/1325/362 +f 786/1319/357 782/1313/352 780/1309/349 +f 756/1341/376 401/1354/142 781/1312/351 +f 401/1354/142 782/1313/352 781/1312/351 +f 401/1354/142 347/1355/142 788/1356/142 +f 730/1248/300 769/1290/336 734/1252/304 +f 771/1292/338 734/1252/304 805/1357/384 +f 734/1252/304 769/1290/336 805/1358/384 +f 768/1359/142 775/1360/142 769/1361/142 +f 777/1362/142 797/1363/142 798/1364/142 +f 779/1365/142 777/1362/142 783/1366/142 +f 777/1362/142 798/1364/142 783/1366/142 +f 794/1367/142 792/1368/142 796/1369/142 +f 791/1370/142 787/1371/142 794/1367/142 +f 783/1366/142 798/1364/142 787/1371/142 +f 794/1367/142 787/1371/142 798/1364/142 +f 798/1364/142 792/1368/142 794/1367/142 +f 799/1372/142 796/1369/142 792/1368/142 +f 799/1372/142 801/1373/142 728/1374/142 +f 799/1372/142 789/1375/142 347/1355/142 +f 788/1356/142 347/1355/142 789/1375/142 +f 792/1368/142 789/1375/142 799/1372/142 +f 788/1356/142 780/1309/349 401/1354/142 +f 776/1303/345 744/1296/340 774/1298/342 +f 804/1376/141 803/1377/385 806/1378/386 +f 803/1377/385 807/1379/387 806/1378/386 +f 808/1380/388 806/1378/386 807/1379/387 +f 809/1381/389 810/1382/390 808/1380/388 +f 810/1382/390 809/1381/389 811/1383/391 +f 812/1384/392 809/1381/389 784/1316/355 +f 812/1384/392 784/1316/355 813/1385/393 +f 814/1386/141 815/1387/141 816/1388/141 +f 816/1388/141 817/1389/141 795/1390/141 +f 818/1391/141 819/1392/141 817/1389/141 +f 817/1389/141 819/1392/141 795/1390/141 +f 820/1393/141 821/1394/141 822/1395/141 +f 823/1396/141 820/1393/141 824/1397/141 +f 819/1392/141 824/1397/141 795/1390/141 +f 820/1393/141 795/1390/141 824/1397/141 +f 795/1390/141 820/1393/141 822/1395/141 +f 825/1398/141 822/1395/141 821/1394/141 +f 822/1395/141 825/1398/141 826/1399/141 +f 806/1400/394 720/1289/335 733/1251/303 +f 720/1401/395 806/1378/386 827/1402/396 +f 806/1378/386 810/1382/390 827/1402/396 +f 827/1402/396 810/1382/390 715/1403/397 +f 810/1382/390 709/1404/398 715/1403/397 +f 709/1404/398 812/1384/392 701/1405/399 +f 701/1405/399 813/1385/393 766/1406/400 +f 828/1407/401 766/1406/400 813/1385/393 +f 762/1408/402 828/1407/401 755/1409/403 +f 804/1352/383 733/1251/303 737/1255/307 +f 736/1254/306 732/1250/302 773/1349/381 +f 732/1250/302 770/1291/337 773/1349/381 +f 741/1259/311 745/1410/404 803/1351/382 +f 749/1411/405 803/1377/385 745/1412/406 +f 807/1379/387 749/1411/405 808/1380/388 +f 749/1411/405 753/1413/323 808/1380/388 +f 808/1380/388 753/1413/323 809/1381/389 +f 753/1413/323 760/1414/328 809/1381/389 +f 784/1316/355 760/1414/328 765/1317/332 +f 698/1415/407 785/1416/356 765/1285/332 +f 528/1417/141 755/1409/403 828/1407/401 +f 813/1385/393 528/1417/141 828/1407/401 +f 785/1318/141 528/1417/141 784/1316/355 +f 528/1417/141 785/1318/141 346/1418/141 +f 707/1419/278 785/1420/408 698/1214/270 +f 713/1230/284 826/1421/409 707/1223/278 +f 826/1421/409 713/1230/284 822/1422/410 +f 712/1229/283 706/1222/277 798/1337/372 +f 795/1332/368 719/1236/289 816/1423/411 +f 719/1236/289 725/1242/294 816/1423/411 +f 814/1424/412 725/1242/294 731/1249/301 +f 735/1253/305 814/1424/412 731/1249/301 +f 739/1257/309 829/1425/413 735/1253/305 +f 739/1257/309 743/1261/313 830/1426/414 +f 747/1427/415 830/1428/414 743/1261/313 +f 751/1429/321 831/1430/416 747/1266/317 +f 758/1431/326 815/1432/417 751/1429/321 +f 818/1433/418 758/1431/326 764/1283/419 +f 767/1434/333 818/1433/420 764/1283/281 +f 704/1435/275 819/1436/421 767/1434/333 +f 823/1437/422 704/1435/275 711/1228/423 +f 717/1438/287 823/1437/420 711/1228/281 +f 723/1439/292 820/1440/424 717/1438/287 +f 825/1441/425 821/1442/426 722/1239/291 +f 722/1239/291 800/1443/427 825/1441/425 +f 802/1444/141 825/1398/141 800/1445/141 +f 825/1398/141 346/1418/141 826/1399/141 +f 785/1318/141 826/1399/141 346/1418/141 +f 772/1446/142 771/1447/142 775/1360/142 +f 775/1360/142 771/1447/142 769/1361/142 +f 771/1447/142 805/1448/142 769/1361/142 +f 830/1426/414 832/1449/428 739/1257/309 +f 829/1425/413 739/1257/309 832/1450/428 +f 832/1451/141 830/1452/141 829/1453/141 +f 831/1454/141 815/1387/141 830/1452/141 +f 815/1387/141 829/1453/141 830/1452/141 +f 795/1332/368 822/1422/410 713/1230/284 +f 798/1337/372 706/1222/277 792/1327/364 +f 377/1455/140 833/1456/140 531/1457/140 +f 531/1457/141 598/977/429 597/975/141 +f 534/1458/142 834/1459/430 529/1460/142 +f 834/1461/140 599/1462/431 536/1463/140 +f 540/1464/140 835/1465/140 531/1457/140 +f 836/1466/432 537/1467/433 600/1468/432 +f 599/1462/431 836/1466/432 600/1468/432 +f 836/1469/434 837/1470/435 834/1459/430 +f 835/1471/140 539/1472/436 838/1473/437 +f 539/1472/436 839/1474/438 838/1473/437 +f 538/1475/438 840/1476/439 839/1474/438 +f 840/1477/440 835/1465/441 839/1478/440 +f 537/1467/433 841/1479/442 532/1480/443 +f 532/1480/443 841/1479/442 533/1481/444 +f 601/1482/445 535/1483/446 840/1476/439 +f 535/1483/446 598/1484/444 840/1476/439 +f 374/1485/146 551/1486/149 373/1487/149 +f 370/1488/154 606/1489/141 368/1490/141 +f 377/1491/153 550/1492/139 833/1493/139 +f 373/1487/149 604/1494/145 380/1495/145 +f 368/1490/141 605/1496/146 374/1485/146 +f 833/1497/139 549/1498/154 370/1488/154 +f 379/1499/142 602/1500/153 377/1491/153 +f 380/1495/145 603/1501/142 379/1499/142 +f 621/1009/175 564/1502/145 387/1503/145 +f 625/1013/179 389/1504/146 623/1011/177 +f 555/1032/195 402/1088/228 634/1033/196 +f 639/1039/447 842/1505/448 637/1506/449 +f 555/885/450 633/1047/194 842/1507/451 +f 555/885/450 842/1507/451 345/886/160 +f 641/1043/203 635/1034/197 636/1036/199 +f 406/1508/452 843/1509/453 636/1510/454 +f 636/1510/454 843/1509/453 641/1041/203 +f 645/1046/455 642/1511/456 843/1512/457 +f 843/1512/457 639/1039/447 645/1046/455 +f 843/1512/457 345/1513/458 842/1505/448 +f 637/1037/208 842/1507/451 633/1047/194 +f 642/1042/204 641/1041/203 843/1509/453 +f 647/1514/210 844/1515/459 845/1516/459 +f 644/1045/140 638/1038/140 845/1516/459 +f 696/1517/142 513/826/142 512/1518/142 +f 696/1517/142 514/827/142 513/826/142 +f 699/1284/331 759/1278/327 788/1519/460 +f 788/1356/460 759/1310/327 780/1309/349 +f 370/1520/140 529/1460/140 833/1456/140 +f 531/1457/140 833/1456/140 529/1460/140 +f 623/1026/189 385/1521/461 384/1024/188 +f 383/1014/180 621/1017/182 619/1522/462 +f 658/1523/220 631/1029/192 625/1013/179 +f 617/1005/171 625/1013/179 631/1029/192 +f 616/1003/170 661/1524/222 622/1010/176 +f 661/1524/222 632/1525/193 622/1010/176 +f 615/1002/169 630/1028/191 616/1003/170 +f 630/1028/191 661/1524/222 616/1003/170 +f 799/1342/377 729/1247/299 796/1335/370 +f 716/1334/286 796/1335/370 729/1247/299 +f 722/1239/291 821/1442/426 723/1439/292 +f 636/1510/454 569/1526/452 406/1508/452 +f 488/990/164 490/1527/165 561/991/165 +f 376/639/139 611/995/139 609/993/153 +f 372/634/142 612/996/142 610/994/145 +f 375/638/154 614/999/154 611/995/139 +f 371/633/153 609/993/153 612/996/142 +f 534/997/166 529/847/166 369/630/145 +f 530/849/146 651/1053/146 613/998/141 +f 378/641/141 613/998/141 614/999/154 +f 597/1000/167 651/1053/146 530/849/146 +f 608/1001/168 552/1004/149 615/1002/169 +f 552/1004/149 607/1528/463 617/1005/171 +f 618/1006/172 626/1529/464 619/1007/173 +f 620/1008/174 619/1007/173 621/1009/175 +f 623/1011/177 628/1021/186 624/1012/178 +f 383/1014/180 619/1522/462 626/1015/181 +f 621/1017/182 383/1014/180 559/1018/183 +f 627/1020/185 624/1012/178 628/1021/186 +f 629/1023/181 628/1027/190 384/1024/188 +f 637/1037/200 646/1530/200 638/1038/201 +f 640/1040/141 844/1531/465 641/1041/203 +f 641/1043/203 844/1532/465 643/1044/205 +f 639/1039/202 638/1038/201 644/1045/206 +f 633/1047/194 845/1533/466 646/1048/142 +f 644/1045/206 640/1534/209 642/1042/209 +f 647/1049/210 845/1535/466 633/1031/194 +f 612/996/211 654/1536/218 648/1050/212 +f 649/1051/161 655/1537/161 650/1052/213 +f 613/998/214 656/1538/219 652/1054/215 +f 611/995/216 657/1539/216 653/1055/217 +f 612/996/211 609/993/217 653/1056/217 +f 649/1058/161 610/994/212 648/1059/212 +f 613/998/214 651/1053/213 650/1061/213 +f 614/999/215 652/1540/215 657/1063/216 +f 658/1064/220 656/1068/141 650/1065/146 +f 659/1067/221 652/1077/154 656/1068/141 +f 660/1069/139 662/1078/223 653/1070/153 +f 661/1072/222 648/1080/145 654/1073/142 +f 631/1066/192 650/1065/146 655/1075/149 +f 660/1069/139 657/1071/139 652/1077/154 +f 632/1074/193 654/1073/142 653/1070/153 +f 630/1079/191 655/1541/149 648/1080/145 +f 398/667/141 397/1084/224 566/1081/224 +f 395/1082/142 394/1085/225 568/1083/225 +f 397/1084/224 396/670/226 400/669/226 +f 394/1085/225 393/1542/227 399/1086/227 +f 392/1089/149 391/1543/149 569/1035/198 +f 569/1035/198 635/1034/197 402/1088/228 +f 635/1034/197 643/1044/205 634/1033/196 +f 402/1088/228 635/1034/197 634/1033/196 +f 643/1044/205 647/1049/210 634/1033/196 +f 618/1006/172 620/1008/174 632/1090/193 +f 439/1092/139 441/1104/153 431/1093/153 +f 553/1095/145 554/1107/149 438/1096/149 +f 453/1098/146 455/1108/141 434/1099/141 +f 440/1101/154 439/1544/139 430/1102/139 +f 441/1104/153 442/1106/142 435/1105/142 +f 442/1106/142 553/1095/145 436/1097/145 +f 554/1107/149 453/1098/146 437/1100/146 +f 455/1108/141 440/1101/154 432/1103/154 +f 456/1109/139 575/1120/229 663/1110/229 +f 574/1112/140 573/1121/230 665/1113/230 +f 577/1115/231 457/1125/150 667/1116/150 +f 576/1118/232 456/1109/139 664/1111/139 +f 575/1120/229 574/1112/140 666/1114/140 +f 573/1121/230 458/1545/149 670/1122/149 +f 458/1123/149 577/1115/231 668/1117/231 +f 457/1125/150 576/1118/232 669/1119/232 +f 671/1126/233 683/1140/233 672/1127/227 +f 674/1129/234 685/1145/235 675/1130/235 +f 677/1132/236 684/1141/236 678/1133/237 +f 680/1135/238 686/1148/239 681/1136/239 +f 672/1138/227 680/1135/238 682/1137/238 +f 675/1130/235 685/1145/235 683/1140/233 +f 678/1133/237 674/1129/234 676/1131/234 +f 681/1136/239 686/1148/239 684/1141/236 +f 672/1138/149 579/1546/149 578/1142/230 +f 683/1140/231 580/1149/231 579/1143/149 +f 674/1129/232 581/1150/232 459/1144/150 +f 684/1141/229 582/1151/229 460/1146/139 +f 680/1135/230 578/1142/230 461/1147/140 +f 685/1145/150 459/1144/150 580/1149/231 +f 678/1133/139 460/1146/139 581/1150/232 +f 686/1148/140 461/1147/140 582/1151/229 +f 687/1152/150 473/1165/150 475/1153/240 +f 689/1155/142 465/1166/142 467/1156/241 +f 691/1158/140 472/1547/140 469/1159/242 +f 693/1161/141 477/1164/141 479/1162/243 +f 688/1154/240 475/1153/240 477/1164/141 +f 690/1157/241 467/1156/241 473/1165/150 +f 692/1160/242 469/1159/242 465/1166/142 +f 694/1163/243 479/1162/243 472/1167/140 +f 470/770/244 463/1177/244 590/1169/245 +f 476/779/246 585/1178/246 584/1170/141 +f 478/783/247 583/1179/247 464/1171/248 +f 471/771/249 588/1180/249 587/1172/150 +f 468/767/245 590/1169/245 462/1173/142 +f 480/785/248 464/1171/248 591/1174/140 +f 594/958/150 587/1172/150 586/1175/250 +f 592/956/142 462/1173/142 589/1176/251 +f 593/957/140 591/1548/140 463/1177/244 +f 474/777/250 586/1175/250 585/1178/246 +f 595/959/141 584/1170/141 583/1179/247 +f 466/765/251 589/1176/251 588/1180/249 +f 498/807/252 505/815/252 481/789/253 +f 481/789/253 483/791/254 500/809/254 +f 500/809/254 483/791/254 485/793/255 +f 488/990/164 560/992/164 386/967/256 +f 558/1181/165 493/1549/165 492/1182/164 +f 382/969/256 557/1183/164 492/1182/164 +f 596/1184/257 487/1187/257 486/1185/258 +f 487/1187/257 596/1184/257 499/1188/259 +f 484/1190/260 482/1189/259 499/1188/259 +f 513/825/140 502/1550/140 526/1551/140 +f 521/836/140 520/835/255 485/793/255 +f 513/825/140 526/1551/140 521/836/140 +f 519/1193/261 512/1194/261 484/1190/260 +f 512/1194/261 519/1193/261 695/1195/262 +f 514/1197/263 696/1196/262 695/1195/262 +f 511/1199/264 514/1197/139 523/1198/139 +f 511/1201/264 522/1552/264 525/1202/265 +f 509/1204/140 510/1203/265 525/1202/265 +f 507/1206/266 509/1204/267 518/1205/267 +f 506/1208/268 507/1206/266 517/1207/266 +f 486/1185/258 506/1208/268 515/1209/268 +f 516/829/139 508/973/139 505/815/252 +f 658/1211/220 624/1012/178 627/1020/185 +f 697/1213/269 707/1419/278 698/1214/270 +f 700/1216/272 709/1226/272 701/1217/273 +f 703/1219/274 711/1228/423 704/1220/275 +f 706/1222/277 713/1230/284 707/1223/278 +f 708/1225/279 715/1232/279 709/1226/272 +f 710/1227/280 717/1234/287 711/1228/281 +f 712/1229/283 719/1236/289 713/1230/284 +f 714/1231/285 827/1553/285 715/1232/279 +f 716/1233/286 723/1240/292 717/1234/287 +f 718/1235/288 725/1242/294 719/1236/289 +f 720/1237/290 827/1553/290 714/1231/290 +f 716/1233/286 729/1247/299 722/1239/291 +f 724/1241/293 731/1249/301 725/1242/294 +f 728/1246/298 800/1443/427 722/1239/291 +f 730/1248/300 735/1253/305 731/1249/301 +f 732/1250/302 737/1255/307 733/1251/303 +f 734/1252/304 739/1257/309 735/1253/305 +f 736/1254/306 741/1259/311 737/1255/307 +f 738/1256/308 743/1261/313 739/1257/309 +f 740/1258/310 745/1554/404 741/1259/311 +f 742/1260/312 747/1266/415 743/1261/313 +f 744/1262/314 749/1268/314 745/1263/315 +f 746/1265/316 751/1270/321 747/1266/317 +f 748/1267/319 753/1272/323 749/1268/314 +f 750/1269/320 758/1277/326 751/1270/321 +f 752/1271/322 760/1279/328 753/1272/323 +f 754/1273/324 762/1281/324 755/1274/149 +f 757/1276/325 764/1283/419 758/1277/326 +f 759/1278/327 765/1285/332 760/1279/328 +f 761/1280/329 766/1286/329 762/1281/324 +f 763/1282/330 767/1287/333 764/1283/281 +f 699/1284/331 698/1415/407 765/1285/332 +f 702/1218/273 701/1217/273 766/1286/329 +f 705/1221/276 704/1220/275 767/1287/333 +f 718/1235/288 797/1336/371 768/1288/334 +f 721/1244/296 726/1243/295 733/1251/303 +f 730/1248/300 724/1241/293 768/1288/334 +f 726/1243/295 727/1245/297 770/1291/337 +f 742/1293/312 738/1256/308 771/1294/338 +f 744/1296/340 740/1555/467 773/1297/341 +f 746/1299/316 742/1260/318 772/1300/343 +f 750/1304/320 746/1299/316 775/1301/344 +f 750/1304/320 777/1305/346 779/1308/348 +f 752/1306/322 778/1307/347 780/1309/349 +f 761/1311/350 754/1340/375 781/1312/351 +f 763/1314/330 757/1276/282 779/1308/353 +f 705/1320/276 763/1314/330 783/1315/354 +f 697/1213/269 699/1215/271 788/1322/359 +f 700/1324/361 702/1348/380 786/1319/357 +f 705/1320/276 787/1321/358 791/1326/363 +f 700/1324/361 790/1325/362 793/1328/365 +f 710/1330/280 703/1219/282 791/1326/353 +f 716/1334/286 710/1330/280 794/1331/367 +f 800/1343/140 728/1556/140 801/1344/378 +f 802/1345/378 801/1344/378 347/1346/379 +f 727/1339/374 793/1328/365 776/1303/345 +f 786/1319/357 780/1309/349 778/1307/347 +f 401/1354/142 780/1309/349 782/1313/352 +f 768/1359/142 797/1363/142 775/1360/142 +f 777/1362/142 775/1360/142 797/1363/142 +f 799/1372/142 347/1355/142 801/1373/142 +f 808/1380/388 810/1382/390 806/1378/386 +f 812/1384/392 811/1383/391 809/1381/389 +f 814/1386/141 829/1453/141 815/1387/141 +f 816/1388/141 815/1387/141 817/1389/141 +f 810/1382/390 811/1383/391 709/1404/398 +f 709/1404/398 811/1383/391 812/1384/392 +f 701/1405/399 812/1384/392 813/1385/393 +f 828/1407/401 762/1408/402 766/1406/400 +f 804/1352/383 806/1400/394 733/1251/303 +f 749/1411/405 807/1379/387 803/1377/385 +f 784/1316/355 809/1381/389 760/1414/328 +f 813/1385/393 784/1316/355 528/1417/141 +f 707/1419/278 826/1421/409 785/1420/408 +f 814/1424/412 816/1423/411 725/1242/294 +f 735/1253/305 829/1425/413 814/1424/412 +f 747/1427/415 831/1557/468 830/1428/414 +f 751/1429/321 815/1432/417 831/1430/416 +f 758/1431/326 817/1558/469 815/1432/417 +f 818/1433/418 817/1558/469 758/1431/326 +f 767/1434/333 819/1436/421 818/1433/420 +f 704/1435/275 824/1559/470 819/1436/421 +f 823/1437/422 824/1559/470 704/1435/275 +f 717/1438/287 820/1440/424 823/1437/420 +f 723/1439/292 821/1442/426 820/1440/424 +f 802/1444/141 346/1418/141 825/1398/141 +f 531/1457/141 835/1465/441 598/977/429 +f 534/1458/142 533/1560/471 834/1459/430 +f 834/1461/140 837/1561/472 599/1462/431 +f 531/1457/140 529/1460/140 536/1562/140 +f 529/1460/140 834/1459/140 536/1562/140 +f 536/1562/140 540/1464/140 531/1457/140 +f 836/1466/432 841/1479/442 537/1467/433 +f 599/1462/431 837/1561/472 836/1466/432 +f 834/1459/430 533/1560/471 841/1563/434 +f 841/1563/434 836/1469/434 834/1459/430 +f 835/1471/140 540/1564/140 539/1472/436 +f 539/1472/436 538/1475/438 839/1474/438 +f 538/1475/438 601/1482/445 840/1476/439 +f 598/977/429 835/1465/441 840/1477/440 +f 835/1465/441 838/1565/473 839/1478/440 +f 374/1485/146 605/1496/146 551/1486/149 +f 370/1488/154 549/1498/154 606/1489/141 +f 377/1491/153 602/1500/153 550/1492/139 +f 373/1487/149 551/1486/149 604/1494/145 +f 368/1490/141 606/1489/141 605/1496/146 +f 833/1497/139 550/1566/139 549/1498/154 +f 379/1499/142 603/1501/142 602/1500/153 +f 380/1495/145 604/1494/145 603/1501/142 +f 608/1001/168 616/1003/170 387/1503/145 +f 616/1003/170 622/1010/176 387/1503/145 +f 622/1010/176 621/1009/175 387/1503/145 +f 625/1013/179 617/1005/171 389/1504/146 +f 617/1005/171 607/1528/463 389/1504/146 +f 389/1504/146 388/1567/146 623/1011/177 +f 843/1512/457 842/1505/448 639/1039/447 +f 843/1512/474 406/1568/458 345/1513/458 +f 647/1514/210 643/1569/205 844/1515/459 +f 638/1038/140 646/1570/140 845/1516/459 +f 845/1516/459 844/1515/459 644/1045/140 +f 844/1515/459 640/1571/140 644/1045/140 +f 623/1026/189 388/1572/150 385/1521/461 +l 716 799 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.p22_ap.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.p22_ap.png new file mode 100644 index 0000000000000000000000000000000000000000..2a751e0762fad6c1eb4f38e41e7537324b3f823b GIT binary patch literal 187 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfZj$B425y4ekegmJ8|yZzxtiip8o&;{oDVOMk)0whyO44KJxFs%`)RGj#-K! ooHzbX_}KH;dQ$O!eOb`I`km9B{{R2|+y9eBDfKFc|1bAG^6$URGUF_c rS&AW?H~voKS(5E$){=A9gqh+0qzvf~d!Bs*x`M&e)z4*}Q$iB}t9MT7 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/items/ammo_standard.p22_sp.png b/src/main/resources/assets/hbm/textures/items/ammo_standard.p22_sp.png new file mode 100644 index 0000000000000000000000000000000000000000..40470f1337df2479570f35a4fe5cece44ca65354 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`EX7WqAsj$Z!;#VfU2n|DV)um*kW@(4zO@&1w5K z_4oUXK5%y##H>qIyrrtKZUyJIKlMAOJ^lax`?vomjZ*4W4*y^7edOPNn`OpX9J3Td oIB)!&$g?Ed&8#KotO+xNtWsv7-Gh~ZKqoMGy85}Sb4q9e0B>DQ82|tP literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/am-180.png b/src/main/resources/assets/hbm/textures/models/weapons/am180.png similarity index 100% rename from src/main/resources/assets/hbm/textures/models/weapons/am-180.png rename to src/main/resources/assets/hbm/textures/models/weapons/am180.png From 9ae58dfdb3327918106a0d97b7fec2dcffe859f2 Mon Sep 17 00:00:00 2001 From: George Paton Date: Tue, 8 Oct 2024 19:07:57 +1100 Subject: [PATCH 54/63] Support for ALL Blender fcurve functionality!! --- ntm-animator.blend | Bin 1100788 -> 1108248 bytes .../com/hbm/render/anim/AnimationLoader.java | 72 ++- .../hbm/render/anim/BusAnimationKeyframe.java | 547 +++++++++++++++++- .../hbm/render/anim/BusAnimationSequence.java | 22 +- 4 files changed, 598 insertions(+), 43 deletions(-) diff --git a/ntm-animator.blend b/ntm-animator.blend index 252086d2796f63c88c44c762fb86322434eec3e6..6b88f25a523016862059b0cf10a74ec71fb1b7f1 100644 GIT binary patch delta 149021 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 offsets = new HashMap(); - for (Map.Entry root : json.getAsJsonObject("offset").entrySet()) { + for(Map.Entry root : json.getAsJsonObject("offset").entrySet()) { double[] offset = new double[3]; - for (int i = 0; i < 3; i++) { + for(int i = 0; i < 3; i++) { offset[i] = root.getValue().getAsJsonArray().get(i).getAsDouble(); } @@ -61,12 +63,12 @@ public class AnimationLoader { // Top level parsing, this is for the animation name as set in Blender - for (Map.Entry root : json.getAsJsonObject("anim").entrySet()) { + for(Map.Entry root : json.getAsJsonObject("anim").entrySet()) { BusAnimation animation = new BusAnimation(); // Loading the buses for this animation JsonObject entryObject = root.getValue().getAsJsonObject(); - for (Map.Entry model : entryObject.entrySet()) { + for(Map.Entry model : entryObject.entrySet()) { String modelName = model.getKey(); double[] offset = new double[3]; if (offsets.containsKey(modelName)) offset = offsets.get(modelName); @@ -83,46 +85,46 @@ public class AnimationLoader { BusAnimationSequence sequence = new BusAnimationSequence(); // Location fcurves - if (json.has("location")) { + if(json.has("location")) { JsonObject location = json.getAsJsonObject("location"); - if (location.has("x")) { + if(location.has("x")) { addToSequence(sequence, Dimension.TX, location.getAsJsonArray("x")); } - if (location.has("y")) { + if(location.has("y")) { addToSequence(sequence, Dimension.TY, location.getAsJsonArray("y")); } - if (location.has("z")) { + if(location.has("z")) { addToSequence(sequence, Dimension.TZ, location.getAsJsonArray("z")); } } // Rotation fcurves, only euler at the moment - if (json.has("rotation_euler")) { + if(json.has("rotation_euler")) { JsonObject rotation = json.getAsJsonObject("rotation_euler"); - if (rotation.has("x")) { + if(rotation.has("x")) { addToSequence(sequence, Dimension.RX, rotation.getAsJsonArray("x")); } - if (rotation.has("y")) { + if(rotation.has("y")) { addToSequence(sequence, Dimension.RY, rotation.getAsJsonArray("y")); } - if (rotation.has("z")) { + if(rotation.has("z")) { addToSequence(sequence, Dimension.RZ, rotation.getAsJsonArray("z")); } } // Scale fcurves - if (json.has("scale")) { + if(json.has("scale")) { JsonObject scale = json.getAsJsonObject("scale"); - if (scale.has("x")) { + if(scale.has("x")) { addToSequence(sequence, Dimension.SX, scale.getAsJsonArray("x")); } - if (scale.has("y")) { + if(scale.has("y")) { addToSequence(sequence, Dimension.SY, scale.getAsJsonArray("y")); } - if (scale.has("z")) { + if(scale.has("z")) { addToSequence(sequence, Dimension.SZ, scale.getAsJsonArray("z")); } } @@ -133,19 +135,49 @@ public class AnimationLoader { } private static void addToSequence(BusAnimationSequence sequence, Dimension dimension, JsonArray array) { - for (JsonElement element : array) { - sequence.addKeyframe(dimension, loadKeyframe(element)); + IType prevInterp = null; + for(JsonElement element : array) { + BusAnimationKeyframe keyframe = loadKeyframe(element, prevInterp); + prevInterp = keyframe.interpolationType; + sequence.addKeyframe(dimension, keyframe); } } - private static BusAnimationKeyframe loadKeyframe(JsonElement element) { + private static BusAnimationKeyframe loadKeyframe(JsonElement element, IType prevInterp) { JsonArray array = element.getAsJsonArray(); double value = array.get(0).getAsDouble(); int duration = array.get(1).getAsInt(); IType interpolation = array.size() >= 3 ? IType.valueOf(array.get(2).getAsString()) : IType.LINEAR; + EType easing = array.size() >= 4 ? EType.valueOf(array.get(3).getAsString()) : EType.AUTO; - return new BusAnimationKeyframe(value, duration, interpolation); + BusAnimationKeyframe keyframe = new BusAnimationKeyframe(value, duration, interpolation, easing); + + int i = 4; + + if(prevInterp == IType.BEZIER) { + keyframe.leftX = array.get(i++).getAsDouble(); + keyframe.leftY = array.get(i++).getAsDouble(); + keyframe.leftType = HType.valueOf(array.get(i++).getAsString()); + } + + if(interpolation == IType.LINEAR || interpolation == IType.CONSTANT) + return keyframe; + + if(interpolation == IType.BEZIER) { + keyframe.rightX = array.get(i++).getAsDouble(); + keyframe.rightY = array.get(i++).getAsDouble(); + keyframe.rightType = HType.valueOf(array.get(i++).getAsString()); + } + + if(interpolation == IType.ELASTIC) { + keyframe.amplitude = array.get(i++).getAsDouble(); + keyframe.period = array.get(i++).getAsDouble(); + } else if(interpolation == IType.BACK) { + keyframe.back = array.get(i++).getAsDouble(); + } + + return keyframe; } } diff --git a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java index 8762d0d42..9c24d1299 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationKeyframe.java @@ -2,10 +2,10 @@ package com.hbm.render.anim; //"pieces" that make up a bus public class BusAnimationKeyframe { - - //whether the next frame "snaps" to the intended value or has interpolation - //it's an enum so stuff like accelerated animations between just - //two frames could be implemented + + // whether the next frame "snaps" to the intended value or has interpolation + // it's an enum so stuff like accelerated animations between just + // two frames could be implemented public static enum IType { /** Teleport */ CONSTANT, @@ -17,17 +17,68 @@ public class BusAnimationKeyframe { SIN_DOWN, /** "Sine wave", first half of a sine peak, accelerating up and then decelerating, makes for smooth movement */ SIN_FULL, + + // blender magic curves + BEZIER, + + // blender inertial + SINE, + QUAD, + CUBIC, + QUART, + QUINT, + EXPO, + CIRC, + + // blendor dynamic + BOUNCE, + ELASTIC, + BACK, + } + + // Easing + public static enum EType { + AUTO, + EASE_IN, + EASE_OUT, + EASE_IN_OUT, + } + + // Handle type + public static enum HType { + FREE, + ALIGNED, + VECTOR, + AUTO, + AUTO_CLAMPED, } public double value; public IType interpolationType; + public EType easingType; public int duration; - - //this one can be used for "reset" type keyframes + + // bezier handles + public double leftX; + public double leftY; + public HType leftType; + public double rightX; + public double rightY; + public HType rightType; + + // elastics + public double amplitude; + public double period; + + // back (overshoot) + public double back; + + // this one can be used for "reset" type keyframes public BusAnimationKeyframe() { this.value = 0; this.duration = 1; this.interpolationType = IType.LINEAR; + this.easingType = EType.AUTO; } public BusAnimationKeyframe(double value, int duration) { @@ -41,4 +92,488 @@ public class BusAnimationKeyframe { this.interpolationType = interpolation; } + public BusAnimationKeyframe(double value, int duration, IType interpolation, EType easing) { + this(value, duration, interpolation); + this.easingType = easing; + } + + public double interpolate(double startTime, double currentTime, BusAnimationKeyframe previous) { + if(previous == null) + previous = new BusAnimationKeyframe(); + + double a = value; + double b = previous.value; + double t = time(startTime, currentTime, duration); + + double begin = previous.value; + double change = value - previous.value; + double time = currentTime - startTime; + + if(previous.interpolationType == IType.BEZIER) { + double v1x = startTime; + double v1y = previous.value; + double v2x = previous.rightX; + double v2y = previous.rightY; + + double v3x = leftX; + double v3y = leftY; + double v4x = startTime + duration; + double v4y = value; + + double curveT = findZero(currentTime, v1x, v2x, v3x, v4x); + return cubicBezier(v1y, v2y, v3y, v4y, curveT); + } else if(previous.interpolationType == IType.BACK) { + switch (previous.easingType) { + case EASE_IN: return BLI_easing_back_ease_in(time, begin, change, duration, previous.back); + case EASE_IN_OUT: return BLI_easing_back_ease_in_out(time, begin, change, duration, previous.back); + default: return BLI_easing_back_ease_out(time, begin, change, duration, previous.back); + } + } else if(previous.interpolationType == IType.BOUNCE) { + switch (previous.easingType) { + case EASE_IN: return BLI_easing_bounce_ease_in(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_bounce_ease_in_out(time, begin, change, duration); + default: return BLI_easing_bounce_ease_out(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.CIRC) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_circ_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_circ_ease_in_out(time, begin, change, duration); + default: return BLI_easing_circ_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.CUBIC) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_cubic_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_cubic_ease_in_out(time, begin, change, duration); + default: return BLI_easing_cubic_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.ELASTIC) { + switch (previous.easingType) { + case EASE_IN: return BLI_easing_elastic_ease_in(time, begin, change, duration, previous.amplitude, previous.period); + case EASE_IN_OUT: return BLI_easing_elastic_ease_in_out(time, begin, change, duration, previous.amplitude, previous.period); + default: return BLI_easing_elastic_ease_out(time, begin, change, duration, previous.amplitude, previous.period); + } + } else if(previous.interpolationType == IType.EXPO) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_expo_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_expo_ease_in_out(time, begin, change, duration); + default: return BLI_easing_expo_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.QUAD) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_quad_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_quad_ease_in_out(time, begin, change, duration); + default: return BLI_easing_quad_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.QUART) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_quart_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_quart_ease_in_out(time, begin, change, duration); + default: return BLI_easing_quart_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.QUINT) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_quint_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_quint_ease_in_out(time, begin, change, duration); + default: return BLI_easing_quint_ease_in(time, begin, change, duration); + } + } else if(previous.interpolationType == IType.SINE) { + switch (previous.easingType) { + case EASE_OUT: return BLI_easing_sine_ease_out(time, begin, change, duration); + case EASE_IN_OUT: return BLI_easing_sine_ease_in_out(time, begin, change, duration); + default: return BLI_easing_sine_ease_in(time, begin, change, duration); + } + } + + return (a - b) * t + b; + } + + private double sqrt3(double d) { + return Math.exp(Math.log(d) / 3.0); + } + + private double time(double start, double end, double duration) { + if(interpolationType == IType.SIN_UP) return -Math.sin(((end - start) / duration * Math.PI + Math.PI) / 2) + 1; + if(interpolationType == IType.SIN_DOWN) return Math.sin((end - start) / duration * Math.PI / 2); + if(interpolationType == IType.SIN_FULL) return (-Math.cos((end - start) / duration * Math.PI) + 1) / 2D; + return (end - start) / duration; + } + + // Blender bezier solvers, but rewritten (pain) + private double solveCubic(double c0, double c1, double c2, double c3) { + if(c3 != 0) { + double a = c2 / c3; + double b = c1 / c3; + double c = c0 / c3; + a = a / 3; + + double p = b / 3 - a * a; + double q = (2 * a * a * a - a * b + c) / 2; + double d = q * q + p * p * p; + + if(d > 0) { + double t = Math.sqrt(d); + return sqrt3(-q + t) + sqrt3(-q - t) - a; + } + + if(d == 0) { + double t = sqrt3(-q); + double result = 2 * t - a; + if(result < 0.000001 || result > 1.000001) { + result = -t - a; + } + return result; + } + + double phi = Math.acos(-q / Math.sqrt(-(p * p * p))); + double t = Math.sqrt(-p); + p = Math.cos(phi / 3); + q = Math.sqrt(3 - 3 * p * p); + double result = 2 * t * p - a; + if(result < 0.000001 || result > 1.000001) { + result = -t * (p + q) - a; + } + if(result < 0.000001 || result > 1.000001) { + result = -t * (p - q) - a; + } + return result; + } + + double a = c2; + double b = c1; + double c = c0; + + if(a != 0) { + double p = b * b - 4 * a * c; + + if(p > 0) { + p = Math.sqrt(p); + double result = (-b - p) / (2 * a); + if(result < 0.000001 || result > 1.000001) { + result = (-b + p) / (2 * a); + } + return result; + } + + if(p == 0) { + return -b / (2 * a); + } + } + + if(b != 0) { + return -c / b; + } + + if(c == 0) { + return 0; + } + + return 0; + } + + private double findZero(double t, double x1, double x2, double x3, double x4) { + double c0 = x1 - t; + double c1 = 3.0f * (x2 - x1); + double c2 = 3.0f * (x1 - 2.0f * x2 + x3); + double c3 = x4 - x1 + 3.0f * (x2 - x3); + + return solveCubic(c0, c1, c2, c3); + } + + private double cubicBezier(double y1, double y2, double y3, double y4, double t) { + double c0 = y1; + double c1 = 3.0f * (y2 - y1); + double c2 = 3.0f * (y1 - 2.0f * y2 + y3); + double c3 = y4 - y1 + 3.0f * (y2 - y3); + + return c0 + t * c1 + t * t * c2 + t * t * t * c3; + } + + /** + * EASING FUNCTIONS, taken directly from Blender `easing.c` + */ + + double BLI_easing_back_ease_in(double time, double begin, double change, double duration, double overshoot) { + time /= duration; + return change * time * time * ((overshoot + 1) * time - overshoot) + begin; + } + + double BLI_easing_back_ease_out(double time, double begin, double change, double duration, double overshoot) { + time = time / duration - 1; + return change * (time * time * ((overshoot + 1) * time + overshoot) + 1) + begin; + } + + double BLI_easing_back_ease_in_out(double time, double begin, double change, double duration, double overshoot) { + overshoot *= 1.525f; + if((time /= duration / 2) < 1.0f) { + return change / 2 * (time * time * ((overshoot + 1) * time - overshoot)) + begin; + } + time -= 2.0f; + return change / 2 * (time * time * ((overshoot + 1) * time + overshoot) + 2) + begin; + } + + double BLI_easing_bounce_ease_out(double time, double begin, double change, double duration) { + time /= duration; + if(time < (1 / 2.75f)) { + return change * (7.5625f * time * time) + begin; + } + if(time < (2 / 2.75f)) { + time -= (1.5f / 2.75f); + return change * ((7.5625f * time) * time + 0.75f) + begin; + } + if(time < (2.5f / 2.75f)) { + time -= (2.25f / 2.75f); + return change * ((7.5625f * time) * time + 0.9375f) + begin; + } + time -= (2.625f / 2.75f); + return change * ((7.5625f * time) * time + 0.984375f) + begin; + } + + double BLI_easing_bounce_ease_in(double time, double begin, double change, double duration) { + return change - BLI_easing_bounce_ease_out(duration - time, 0, change, duration) + begin; + } + + double BLI_easing_bounce_ease_in_out(double time, double begin, double change, double duration) { + if(time < duration / 2) { + return BLI_easing_bounce_ease_in(time * 2, 0, change, duration) * 0.5f + begin; + } + return BLI_easing_bounce_ease_out(time * 2 - duration, 0, change, duration) * 0.5f + change * 0.5f + begin; + } + + double BLI_easing_circ_ease_in(double time, double begin, double change, double duration) { + time /= duration; + return -change * (Math.sqrt(1 - time * time) - 1) + begin; + } + + double BLI_easing_circ_ease_out(double time, double begin, double change, double duration) { + time = time / duration - 1; + return change * Math.sqrt(1 - time * time) + begin; + } + + double BLI_easing_circ_ease_in_out(double time, double begin, double change, double duration) { + if((time /= duration / 2) < 1.0f) { + return -change / 2 * (Math.sqrt(1 - time * time) - 1) + begin; + } + time -= 2.0f; + return change / 2 * (Math.sqrt(1 - time * time) + 1) + begin; + } + + double BLI_easing_cubic_ease_in(double time, double begin, double change, double duration) { + time /= duration; + return change * time * time * time + begin; + } + + double BLI_easing_cubic_ease_out(double time, double begin, double change, double duration) { + time = time / duration - 1; + return change * (time * time * time + 1) + begin; + } + + double BLI_easing_cubic_ease_in_out(double time, double begin, double change, double duration) { + if((time /= duration / 2) < 1.0f) { + return change / 2 * time * time * time + begin; + } + time -= 2.0f; + return change / 2 * (time * time * time + 2) + begin; + } + + double elastic_blend(double time, double change, double duration, double amplitude, double s, double f) { + if(change != 0) { + /* + * Looks like a magic number, + * but this is a part of the sine curve we need to blend from + */ + double t = Math.abs(s); + if(amplitude != 0) { + f *= amplitude / Math.abs(change); + } else { + f = 0.0f; + } + + if(Math.abs(time * duration) < t) { + double l = Math.abs(time * duration) / t; + f = (f * l) + (1.0f - l); + } + } + + return f; + } + + double BLI_easing_elastic_ease_in(double time, double begin, double change, double duration, double amplitude, double period) { + double s; + double f = 1.0f; + + if(time == 0.0f) { + return begin; + } + + if((time /= duration) == 1.0f) { + return begin + change; + } + time -= 1.0f; + if(period == 0) { + period = duration * 0.3f; + } + if(amplitude == 0 || amplitude < Math.abs(change)) { + s = period / 4; + f = elastic_blend(time, change, duration, amplitude, s, f); + amplitude = change; + } else { + s = period / (2 * (double) Math.PI) * Math.asin(change / amplitude); + } + + return (-f * (amplitude * Math.pow(2, 10 * time) * Math.sin((time * duration - s) * (2 * (double) Math.PI) / period))) + begin; + } + + double BLI_easing_elastic_ease_out(double time, double begin, double change, double duration, double amplitude, double period) { + double s; + double f = 1.0f; + + if(time == 0.0f) { + return begin; + } + if((time /= duration) == 1.0f) { + return begin + change; + } + time = -time; + if(period == 0) { + period = duration * 0.3f; + } + if(amplitude == 0 || amplitude < Math.abs(change)) { + s = period / 4; + f = elastic_blend(time, change, duration, amplitude, s, f); + amplitude = change; + } else { + s = period / (2 * (double) Math.PI) * Math.asin(change / amplitude); + } + + return (f * (amplitude * Math.pow(2, 10 * time) * Math.sin((time * duration - s) * (2 * (double) Math.PI) / period))) + change + begin; + } + + double BLI_easing_elastic_ease_in_out(double time, double begin, double change, double duration, double amplitude, double period) { + double s; + double f = 1.0f; + + if(time == 0.0f) { + return begin; + } + if((time /= duration / 2) == 2.0f) { + return begin + change; + } + time -= 1.0f; + if(period == 0) { + period = duration * (0.3f * 1.5f); + } + if(amplitude == 0 || amplitude < Math.abs(change)) { + s = period / 4; + f = elastic_blend(time, change, duration, amplitude, s, f); + amplitude = change; + } else { + s = period / (2 * (double) Math.PI) * Math.asin(change / amplitude); + } + + if(time < 0.0f) { + f *= -0.5f; + return (f * (amplitude * Math.pow(2, 10 * time) * Math.sin((time * duration - s) * (2 * (double) Math.PI) / period))) + begin; + } + + time = -time; + f *= 0.5f; + return (f * (amplitude * Math.pow(2, 10 * time) * Math.sin((time * duration - s) * (2 * (double) Math.PI) / period))) + change + begin; + } + + static final double pow_min = 0.0009765625f; /* = 2^(-10) */ + static final double pow_scale = 1.0f / (1.0f - 0.0009765625f); + + double BLI_easing_expo_ease_in(double time, double begin, double change, double duration) { + if(time == 0.0) { + return begin; + } + return change * (Math.pow(2, 10 * (time / duration - 1)) - pow_min) * pow_scale + begin; + } + + double BLI_easing_expo_ease_out(double time, double begin, double change, double duration) { + if(time == 0.0) { + return begin; + } + return change * (1 - (Math.pow(2, -10 * time / duration) - pow_min) * pow_scale) + begin; + } + + double BLI_easing_expo_ease_in_out(double time, double begin, double change, double duration) { + double duration_half = duration / 2.0f; + double change_half = change / 2.0f; + if(time <= duration_half) { + return BLI_easing_expo_ease_in(time, begin, change_half, duration_half); + } + return BLI_easing_expo_ease_out(time - duration_half, begin + change_half, change_half, duration_half); + } + + double BLI_easing_linear_ease(double time, double begin, double change, double duration) { + return change * time / duration + begin; + } + + double BLI_easing_quad_ease_in(double time, double begin, double change, double duration) { + time /= duration; + return change * time * time + begin; + } + + double BLI_easing_quad_ease_out(double time, double begin, double change, double duration) { + time /= duration; + return -change * time * (time - 2) + begin; + } + + double BLI_easing_quad_ease_in_out(double time, double begin, double change, double duration) { + if((time /= duration / 2) < 1.0f) { + return change / 2 * time * time + begin; + } + time -= 1.0f; + return -change / 2 * (time * (time - 2) - 1) + begin; + } + + double BLI_easing_quart_ease_in(double time, double begin, double change, double duration) { + time /= duration; + return change * time * time * time * time + begin; + } + + double BLI_easing_quart_ease_out(double time, double begin, double change, double duration) { + time = time / duration - 1; + return -change * (time * time * time * time - 1) + begin; + } + + double BLI_easing_quart_ease_in_out(double time, double begin, double change, double duration) { + if((time /= duration / 2) < 1.0f) { + return change / 2 * time * time * time * time + begin; + } + time -= 2.0f; + return -change / 2 * (time * time * time * time - 2) + begin; + } + + double BLI_easing_quint_ease_in(double time, double begin, double change, double duration) { + time /= duration; + return change * time * time * time * time * time + begin; + } + + double BLI_easing_quint_ease_out(double time, double begin, double change, double duration) { + time = time / duration - 1; + return change * (time * time * time * time * time + 1) + begin; + } + + double BLI_easing_quint_ease_in_out(double time, double begin, double change, double duration) { + if((time /= duration / 2) < 1.0f) { + return change / 2 * time * time * time * time * time + begin; + } + time -= 2.0f; + return change / 2 * (time * time * time * time * time + 2) + begin; + } + + double BLI_easing_sine_ease_in(double time, double begin, double change, double duration) { + return -change * Math.cos(time / duration * (double) Math.PI * 2) + change + begin; + } + + double BLI_easing_sine_ease_out(double time, double begin, double change, double duration) { + return change * Math.sin(time / duration * (double) Math.PI * 2) + begin; + } + + double BLI_easing_sine_ease_in_out(double time, double begin, double change, double duration) { + return -change / 2 * (Math.cos((double) Math.PI * time / duration) - 1) + begin; + } + } diff --git a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java index 0a08dad9d..db89a2974 100644 --- a/src/main/java/com/hbm/render/anim/BusAnimationSequence.java +++ b/src/main/java/com/hbm/render/anim/BusAnimationSequence.java @@ -29,7 +29,7 @@ public class BusAnimationSequence { public BusAnimationSequence() { // Initialise our keyframe storage, since it's multidimensional - for (int i = 0; i < 9; i++) { + for(int i = 0; i < 9; i++) { transformKeyframes.add(new ArrayList()); } } @@ -70,7 +70,7 @@ public class BusAnimationSequence { public double[] getTransformation(int millis) { double[] transform = new double[12]; - for (int i = 0; i < 9; i++) { + for(int i = 0; i < 9; i++) { List keyframes = transformKeyframes.get(i); BusAnimationKeyframe currentFrame = null; @@ -102,11 +102,7 @@ public class BusAnimationSequence { continue; } - double a = currentFrame.value; - double b = previousFrame != null ? previousFrame.value : 0; - double t = interpolate(startTime, millis, currentFrame.duration, currentFrame.interpolationType); - - transform[i] = (a - b) * t + b; + transform[i] = currentFrame.interpolate(startTime, millis, previousFrame); } transform[9] = offset[0]; @@ -116,20 +112,12 @@ public class BusAnimationSequence { return transform; } - public double interpolate(double start, double end, double duration, IType interp) { - if(interp == IType.LINEAR) return (end - start) / duration; - if(interp == IType.SIN_UP) return -Math.sin(((end - start) / duration * Math.PI + Math.PI) / 2) + 1; - if(interp == IType.SIN_DOWN) return Math.sin((end - start) / duration * Math.PI / 2); - if(interp == IType.SIN_FULL) return (-Math.cos((end - start) / duration * Math.PI) + 1) / 2D; - return end - start; - } - public int getTotalTime() { int highestTime = 0; - for (List keyframes: transformKeyframes) { + for(List keyframes : transformKeyframes) { int time = 0; - for (BusAnimationKeyframe frame: keyframes) { + for(BusAnimationKeyframe frame : keyframes) { time += frame.duration; } From 142fec169ef83af604c23d44cff3eaaea0d69b91 Mon Sep 17 00:00:00 2001 From: George Paton Date: Tue, 8 Oct 2024 19:10:17 +1100 Subject: [PATCH 55/63] taces -> spabs --- .../com/hbm/render/anim/AnimationLoader.java | 248 +++++++++--------- 1 file changed, 124 insertions(+), 124 deletions(-) diff --git a/src/main/java/com/hbm/render/anim/AnimationLoader.java b/src/main/java/com/hbm/render/anim/AnimationLoader.java index dfa2ec0eb..1b23e2941 100644 --- a/src/main/java/com/hbm/render/anim/AnimationLoader.java +++ b/src/main/java/com/hbm/render/anim/AnimationLoader.java @@ -21,163 +21,163 @@ import com.hbm.render.anim.BusAnimationSequence.Dimension; public class AnimationLoader { - // The collada loader is great, but is not so backwards compatible and spews keyframes rather than doing interpolation - // Yeah - more animation loading is not so great, but 3mb for a single door opening is maybe overkill on a 50mb mod - // and even though the format supports multiple animations, no fucking animation software will actually export multiple animations, - // (even though blender even has a fucking toggle for it, but it doesn't _do_ anything) - // This instead just loads transformation data from a JSON file, turning it into a set of BusAnimations - // See ntm-animator.blend for a JSON format creation script + // The collada loader is great, but is not so backwards compatible and spews keyframes rather than doing interpolation + // Yeah - more animation loading is not so great, but 3mb for a single door opening is maybe overkill on a 50mb mod + // and even though the format supports multiple animations, no fucking animation software will actually export multiple animations, + // (even though blender even has a fucking toggle for it, but it doesn't _do_ anything) + // This instead just loads transformation data from a JSON file, turning it into a set of BusAnimations + // See ntm-animator.blend for a JSON format creation script - // "How do I make animations?" - // See ntm-animator.blend, it has the Colt/Python already setup and animated as an example, it'll generate JSON data that this can load + // "How do I make animations?" + // See ntm-animator.blend, it has the Colt/Python already setup and animated as an example, it'll generate JSON data that this can load public static final Gson gson = new Gson(); - public static HashMap load(ResourceLocation file) { - HashMap animations = new HashMap(); + public static HashMap load(ResourceLocation file) { + HashMap animations = new HashMap(); - InputStream in; - try { - in = Minecraft.getMinecraft().getResourceManager().getResource(file).getInputStream(); - } catch (IOException ex) { - return null; - } + InputStream in; + try { + in = Minecraft.getMinecraft().getResourceManager().getResource(file).getInputStream(); + } catch (IOException ex) { + return null; + } - InputStreamReader reader = new InputStreamReader(in); - JsonObject json = gson.fromJson(reader, JsonObject.class); + InputStreamReader reader = new InputStreamReader(in); + JsonObject json = gson.fromJson(reader, JsonObject.class); - // Load our model offsets, we'll place these into all the sequences that share the name of the offset - // The offsets are only required when sequences are played for an object, which is why we don't globally offset! The obj rendering handles the non-animated case fine - // Effectively, this removes double translation AND ensures that rotations occur around the individual object origin, rather than the weapon origin - HashMap offsets = new HashMap(); - for(Map.Entry root : json.getAsJsonObject("offset").entrySet()) { - double[] offset = new double[3]; + // Load our model offsets, we'll place these into all the sequences that share the name of the offset + // The offsets are only required when sequences are played for an object, which is why we don't globally offset! The obj rendering handles the non-animated case fine + // Effectively, this removes double translation AND ensures that rotations occur around the individual object origin, rather than the weapon origin + HashMap offsets = new HashMap(); + for(Map.Entry root : json.getAsJsonObject("offset").entrySet()) { + double[] offset = new double[3]; - for(int i = 0; i < 3; i++) { - offset[i] = root.getValue().getAsJsonArray().get(i).getAsDouble(); - } + for(int i = 0; i < 3; i++) { + offset[i] = root.getValue().getAsJsonArray().get(i).getAsDouble(); + } - offsets.put(root.getKey(), offset); - } + offsets.put(root.getKey(), offset); + } - // Top level parsing, this is for the animation name as set in Blender - for(Map.Entry root : json.getAsJsonObject("anim").entrySet()) { - BusAnimation animation = new BusAnimation(); + // Top level parsing, this is for the animation name as set in Blender + for(Map.Entry root : json.getAsJsonObject("anim").entrySet()) { + BusAnimation animation = new BusAnimation(); - // Loading the buses for this animation - JsonObject entryObject = root.getValue().getAsJsonObject(); - for(Map.Entry model : entryObject.entrySet()) { - String modelName = model.getKey(); - double[] offset = new double[3]; - if (offsets.containsKey(modelName)) offset = offsets.get(modelName); - animation.addBus(modelName, loadSequence(model.getValue().getAsJsonObject(), offset)); - } + // Loading the buses for this animation + JsonObject entryObject = root.getValue().getAsJsonObject(); + for(Map.Entry model : entryObject.entrySet()) { + String modelName = model.getKey(); + double[] offset = new double[3]; + if (offsets.containsKey(modelName)) offset = offsets.get(modelName); + animation.addBus(modelName, loadSequence(model.getValue().getAsJsonObject(), offset)); + } - animations.put(root.getKey(), animation); - } + animations.put(root.getKey(), animation); + } - return animations; - } + return animations; + } - private static BusAnimationSequence loadSequence(JsonObject json, double[] offset) { - BusAnimationSequence sequence = new BusAnimationSequence(); + private static BusAnimationSequence loadSequence(JsonObject json, double[] offset) { + BusAnimationSequence sequence = new BusAnimationSequence(); - // Location fcurves - if(json.has("location")) { - JsonObject location = json.getAsJsonObject("location"); + // Location fcurves + if(json.has("location")) { + JsonObject location = json.getAsJsonObject("location"); - if(location.has("x")) { - addToSequence(sequence, Dimension.TX, location.getAsJsonArray("x")); - } - if(location.has("y")) { - addToSequence(sequence, Dimension.TY, location.getAsJsonArray("y")); - } - if(location.has("z")) { - addToSequence(sequence, Dimension.TZ, location.getAsJsonArray("z")); - } - } + if(location.has("x")) { + addToSequence(sequence, Dimension.TX, location.getAsJsonArray("x")); + } + if(location.has("y")) { + addToSequence(sequence, Dimension.TY, location.getAsJsonArray("y")); + } + if(location.has("z")) { + addToSequence(sequence, Dimension.TZ, location.getAsJsonArray("z")); + } + } - // Rotation fcurves, only euler at the moment - if(json.has("rotation_euler")) { - JsonObject rotation = json.getAsJsonObject("rotation_euler"); + // Rotation fcurves, only euler at the moment + if(json.has("rotation_euler")) { + JsonObject rotation = json.getAsJsonObject("rotation_euler"); - if(rotation.has("x")) { - addToSequence(sequence, Dimension.RX, rotation.getAsJsonArray("x")); - } - if(rotation.has("y")) { - addToSequence(sequence, Dimension.RY, rotation.getAsJsonArray("y")); - } - if(rotation.has("z")) { - addToSequence(sequence, Dimension.RZ, rotation.getAsJsonArray("z")); - } - } + if(rotation.has("x")) { + addToSequence(sequence, Dimension.RX, rotation.getAsJsonArray("x")); + } + if(rotation.has("y")) { + addToSequence(sequence, Dimension.RY, rotation.getAsJsonArray("y")); + } + if(rotation.has("z")) { + addToSequence(sequence, Dimension.RZ, rotation.getAsJsonArray("z")); + } + } - // Scale fcurves - if(json.has("scale")) { - JsonObject scale = json.getAsJsonObject("scale"); + // Scale fcurves + if(json.has("scale")) { + JsonObject scale = json.getAsJsonObject("scale"); - if(scale.has("x")) { - addToSequence(sequence, Dimension.SX, scale.getAsJsonArray("x")); - } - if(scale.has("y")) { - addToSequence(sequence, Dimension.SY, scale.getAsJsonArray("y")); - } - if(scale.has("z")) { - addToSequence(sequence, Dimension.SZ, scale.getAsJsonArray("z")); - } - } + if(scale.has("x")) { + addToSequence(sequence, Dimension.SX, scale.getAsJsonArray("x")); + } + if(scale.has("y")) { + addToSequence(sequence, Dimension.SY, scale.getAsJsonArray("y")); + } + if(scale.has("z")) { + addToSequence(sequence, Dimension.SZ, scale.getAsJsonArray("z")); + } + } - sequence.offset = offset; + sequence.offset = offset; - return sequence; - } + return sequence; + } - private static void addToSequence(BusAnimationSequence sequence, Dimension dimension, JsonArray array) { - IType prevInterp = null; - for(JsonElement element : array) { - BusAnimationKeyframe keyframe = loadKeyframe(element, prevInterp); - prevInterp = keyframe.interpolationType; - sequence.addKeyframe(dimension, keyframe); - } - } + private static void addToSequence(BusAnimationSequence sequence, Dimension dimension, JsonArray array) { + IType prevInterp = null; + for(JsonElement element : array) { + BusAnimationKeyframe keyframe = loadKeyframe(element, prevInterp); + prevInterp = keyframe.interpolationType; + sequence.addKeyframe(dimension, keyframe); + } + } - private static BusAnimationKeyframe loadKeyframe(JsonElement element, IType prevInterp) { - JsonArray array = element.getAsJsonArray(); + private static BusAnimationKeyframe loadKeyframe(JsonElement element, IType prevInterp) { + JsonArray array = element.getAsJsonArray(); - double value = array.get(0).getAsDouble(); - int duration = array.get(1).getAsInt(); - IType interpolation = array.size() >= 3 ? IType.valueOf(array.get(2).getAsString()) : IType.LINEAR; - EType easing = array.size() >= 4 ? EType.valueOf(array.get(3).getAsString()) : EType.AUTO; + double value = array.get(0).getAsDouble(); + int duration = array.get(1).getAsInt(); + IType interpolation = array.size() >= 3 ? IType.valueOf(array.get(2).getAsString()) : IType.LINEAR; + EType easing = array.size() >= 4 ? EType.valueOf(array.get(3).getAsString()) : EType.AUTO; - BusAnimationKeyframe keyframe = new BusAnimationKeyframe(value, duration, interpolation, easing); + BusAnimationKeyframe keyframe = new BusAnimationKeyframe(value, duration, interpolation, easing); - int i = 4; + int i = 4; - if(prevInterp == IType.BEZIER) { - keyframe.leftX = array.get(i++).getAsDouble(); - keyframe.leftY = array.get(i++).getAsDouble(); - keyframe.leftType = HType.valueOf(array.get(i++).getAsString()); - } + if(prevInterp == IType.BEZIER) { + keyframe.leftX = array.get(i++).getAsDouble(); + keyframe.leftY = array.get(i++).getAsDouble(); + keyframe.leftType = HType.valueOf(array.get(i++).getAsString()); + } - if(interpolation == IType.LINEAR || interpolation == IType.CONSTANT) - return keyframe; + if(interpolation == IType.LINEAR || interpolation == IType.CONSTANT) + return keyframe; - if(interpolation == IType.BEZIER) { - keyframe.rightX = array.get(i++).getAsDouble(); - keyframe.rightY = array.get(i++).getAsDouble(); - keyframe.rightType = HType.valueOf(array.get(i++).getAsString()); - } + if(interpolation == IType.BEZIER) { + keyframe.rightX = array.get(i++).getAsDouble(); + keyframe.rightY = array.get(i++).getAsDouble(); + keyframe.rightType = HType.valueOf(array.get(i++).getAsString()); + } - if(interpolation == IType.ELASTIC) { - keyframe.amplitude = array.get(i++).getAsDouble(); - keyframe.period = array.get(i++).getAsDouble(); - } else if(interpolation == IType.BACK) { - keyframe.back = array.get(i++).getAsDouble(); - } + if(interpolation == IType.ELASTIC) { + keyframe.amplitude = array.get(i++).getAsDouble(); + keyframe.period = array.get(i++).getAsDouble(); + } else if(interpolation == IType.BACK) { + keyframe.back = array.get(i++).getAsDouble(); + } - return keyframe; - } + return keyframe; + } } From 9f56791abf0ba545a384f42ae34f10987c594af7 Mon Sep 17 00:00:00 2001 From: George Paton Date: Tue, 8 Oct 2024 22:23:31 +1100 Subject: [PATCH 56/63] fixes: * NaN in `solveCubic` * degenerate fcurves now autofix * fix missing swizzle multiplier on export --- ntm-animator.blend | Bin 1108248 -> 1131292 bytes .../hbm/render/anim/BusAnimationKeyframe.java | 37 ++++++++++++++---- .../hbm/models/weapons/animations/python.json | 2 +- 3 files changed, 30 insertions(+), 9 deletions(-) diff --git a/ntm-animator.blend b/ntm-animator.blend index 6b88f25a523016862059b0cf10a74ec71fb1b7f1..b7b0b3e191906626d2fcdc5652d7434821e60ebf 100644 GIT binary patch delta 159966 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 Uk+Y{+e`$7C&)Dp)IkOJ`FFQa=C;$Ke delta 134458 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 len) { + double fac = len / len1; + v2x = v1x - fac * h1x; + v2y = v1y - fac * h1y; + } + + if(len2 > len) { + double fac = len / len2; + v3x = v4x - fac * h2x; + v3y = v4y - fac * h2y; + } + } + double curveT = findZero(currentTime, v1x, v2x, v3x, v4x); return cubicBezier(v1y, v2y, v3y, v4y, curveT); } else if(previous.interpolationType == IType.BACK) { @@ -200,7 +225,7 @@ public class BusAnimationKeyframe { // Blender bezier solvers, but rewritten (pain) private double solveCubic(double c0, double c1, double c2, double c3) { - if(c3 != 0) { + if(c3 > 0.000001) { double a = c2 / c3; double b = c1 / c3; double c = c0 / c3; @@ -242,10 +267,10 @@ public class BusAnimationKeyframe { double b = c1; double c = c0; - if(a != 0) { + if(a > 0.000001) { double p = b * b - 4 * a * c; - if(p > 0) { + if(p > 0.000001) { p = Math.sqrt(p); double result = (-b - p) / (2 * a); if(result < 0.000001 || result > 1.000001) { @@ -259,14 +284,10 @@ public class BusAnimationKeyframe { } } - if(b != 0) { + if(b > 0.000001) { return -c / b; } - if(c == 0) { - return 0; - } - return 0; } diff --git a/src/main/resources/assets/hbm/models/weapons/animations/python.json b/src/main/resources/assets/hbm/models/weapons/animations/python.json index 8659ec6c1..2a65e9774 100644 --- a/src/main/resources/assets/hbm/models/weapons/animations/python.json +++ b/src/main/resources/assets/hbm/models/weapons/animations/python.json @@ -1 +1 @@ -{"anim": {"Fire": {"Body": {"location": {"z": [[-0.0, 0.0], [0.1901400089263916, 50.0], [-0.0, 283.3333333333333]], "y": [[0.0, 0.0], [0.22623062133789062, 50.0], [0.0, 283.3333333333333]]}, "rotation_euler": {"x": [[0.0, 16.666666666666668], [50.512076610560676, 66.66666666666666], [0.0, 250.0]]}}, "Hammer": {"rotation_euler": {"x": [[0.0, 0.0], [-44.61753114928588, 16.666666666666668], [-44.61753114928588, 183.33333333333334], [0.0, 300.0]]}, "location": {"x": [[0.00012800097465515137, 0.0]], "z": [[0.1478099822998047, 0.0]], "y": [[0.1151699647307396, 0.0]]}}}, "Reload": {"Body": {"location": {"x": [[0.0, 0.0], [0.1266033947467804, 216.66666666666669], [-0.1256844699382782, 66.66666666666663], [-0.10699314624071121, 100.0], [-0.05540347099304199, 183.33333333333331], [-0.04984791576862335, 83.33333333333337], [-0.04814600944519043, 100.0], [-0.0495946928858757, 50.0], [-0.1901838481426239, 216.66666666666663], [-0.209717258810997, 366.66666666666663], [-0.2682616710662842, 83.33333333333326], [0.06351689994335175, 100.00000000000023], [0.059162016957998276, 83.33333333333326], [0.0, 199.99999999999977]], "z": [[-0.0, 0.0], [0.018239933997392654, 216.66666666666669], [-0.003715081140398979, 66.66666666666663], [0.003378540277481079, 100.0], [0.06673367321491241, 183.33333333333331], [0.13605912029743195, 83.33333333333337], [0.11836071312427521, 100.0], [0.13753235340118408, 50.0], [0.2322661280632019, 216.66666666666663], [0.20868675410747528, 366.66666666666663], [0.15863937139511108, 83.33333333333326], [0.2003980427980423, 100.00000000000023], [0.09448619186878204, 83.33333333333326], [-0.0, 199.99999999999977]], "y": [[0.0, 0.0], [0.04348362237215042, 216.66666666666669], [0.04043026641011238, 66.66666666666663], [0.0498494915664196, 100.0], [0.21255171298980713, 183.33333333333331], [0.027551360428333282, 83.33333333333337], [0.09703753143548965, 100.0], [0.024584002792835236, 50.0], [-0.3309659957885742, 216.66666666666663], [-0.3340303301811218, 366.66666666666663], [-0.1700890064239502, 83.33333333333326], [0.016301512718200684, 100.00000000000023], [-0.015913818031549454, 83.33333333333326], [0.0, 199.99999999999977]]}, "rotation_euler": {"x": [[0.0, 0.0], [3.3686347844983024, 150.0], [0.02222707974050119, 166.66666666666663], [4.537149524119608, 100.00000000000006], [61.414745582626026, 233.33333333333331], [52.280518454609116, 133.33333333333337], [-71.68136001842309, 199.9999999999999], [-67.29034068404862, 366.66666666666674], [-53.072130549224426, 116.66666666666652], [-7.130840436898373, 100.00000000000023], [-2.7997762896148553, 83.33333333333326], [0.0, 199.99999999999977]], "z": [[0.0, 0.0], [-17.712562234959403, 150.0], [13.30397138517142, 166.66666666666663], [5.758366003376731, 100.00000000000006], [5.603675025280636, 233.33333333333331], [6.040763589705493, 133.33333333333337], [-1.4811513876747122, 199.9999999999999], [-0.9937320130296772, 366.66666666666674], [5.75973417564485, 116.66666666666652], [-7.87355264592462, 100.00000000000023], [-5.935155631645579, 83.33333333333326], [-0.0, 199.99999999999977]], "y": [[0.0, 0.0], [-3.362418245136533, 150.0], [5.488280686800564, 166.66666666666663], [2.9251945710321565, 100.00000000000006], [-3.2122371128833507, 233.33333333333331], [-2.2836878362589266, 133.33333333333337], [6.285038902068653, 199.9999999999999], [6.379913644734715, 366.66666666666674], [24.273973215848397, 116.66666666666652], [-30.381999654726528, 100.00000000000023], [-9.056688259237983, 83.33333333333326], [0.0, 199.99999999999977]]}}, "Cylinder": {"location": {"x": [[-0.0010489225387573242, 0.0], [-0.0010489225387573242, 283.3333333333333], [-0.07956840097904205, 83.33333333333331], [-0.07956840097904205, 1200.0], [-0.0010489225387573242, 83.33333333333326]], "z": [[0.07426249980926514, 0.0], [0.07426249980926514, 283.3333333333333], [0.07129553705453873, 83.33333333333331], [0.07129553705453873, 1200.0], [0.07426249980926514, 83.33333333333326]], "y": [[0.10388392210006714, 0.0], [0.10388392210006714, 283.3333333333333], [0.07195358723402023, 83.33333333333331], [0.07195358723402023, 1200.0], [0.10388392210006714, 83.33333333333326]]}}}}, "offset": {"Cylinder": [-0.0010489225387573242, 0.10388392210006714, 0.07426249980926514], "Grip": [0.0, -1.8214237229585706e-08, -0.0], "Hammer": [0.00012800097465515137, 0.1151699647307396, 0.1478099822998047]}} \ No newline at end of file +{"anim": {"Fire": {"Body": {"location": {"z": [[-0.0, 0.0, "LINEAR", "AUTO"], [0.1901400089263916, 50.0, "LINEAR", "AUTO"], [-0.0, 283.3333333333333, "LINEAR", "AUTO"]], "y": [[0.0, 0.0, "LINEAR", "AUTO"], [0.22623062133789062, 50.0, "LINEAR", "AUTO"], [0.0, 283.3333333333333, "LINEAR", "AUTO"]]}, "rotation_euler": {"x": [[0.0, 16.666666666666668, "LINEAR", "AUTO"], [50.512076610560676, 66.66666666666666, "LINEAR", "AUTO"], [0.0, 250.0, "LINEAR", "AUTO"]]}}, "Hammer": {"rotation_euler": {"x": [[0.0, 0.0, "LINEAR", "AUTO"], [-44.61753114928588, 16.666666666666668, "LINEAR", "AUTO"], [-44.61753114928588, 183.33333333333334, "LINEAR", "AUTO"], [0.0, 300.0, "LINEAR", "AUTO"]]}, "location": {"x": [[0.00012800097465515137, 0.0, "LINEAR", "AUTO"]], "z": [[0.1478099822998047, 0.0, "LINEAR", "AUTO"]], "y": [[0.1151699647307396, 0.0, "LINEAR", "AUTO"]]}}}, "Reload": {"Body": {"location": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 72.22222487131755, 0.0, "AUTO_CLAMPED"], [0.1266033947467804, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.1266033947467804, "AUTO_CLAMPED", 238.88888359069824, 0.1266033947467804, "AUTO_CLAMPED"], [-0.1256844699382782, 66.66666666666663, "BEZIER", "AUTO", 261.11111640930176, -0.1256844699382782, "AUTO_CLAMPED", 316.66666666666663, -0.1256844699382782, "AUTO_CLAMPED"], [-0.10699314624071121, 100.0, "BEZIER", "AUTO", 350.0, -0.11716071516275406, "AUTO_CLAMPED", 444.44443384806317, -0.08835260570049286, "AUTO_CLAMPED"], [-0.05540347099304199, 183.33333333333331, "BEZIER", "AUTO", 505.5555661519369, -0.06418702006340027, "AUTO_CLAMPED", 594.444465637207, -0.05141094699501991, "AUTO_CLAMPED"], [-0.04984791576862335, 83.33333333333337, "BEZIER", "AUTO", 622.2222010294596, -0.05059652775526047, "AUTO_CLAMPED", 683.3333333333334, -0.048949580639600754, "AUTO_CLAMPED"], [-0.04814600944519043, 100.0, "BEZIER", "AUTO", 716.6666666666666, -0.04814600944519043, "AUTO_CLAMPED", 766.6666666666666, -0.04814600944519043, "AUTO_CLAMPED"], [-0.0495946928858757, 50.0, "BEZIER", "AUTO", 783.3333333333334, -0.04814600944519043, "AUTO_CLAMPED", 872.2222010294596, -0.055872321128845215, "AUTO_CLAMPED"], [-0.1901838481426239, 216.66666666666663, "BEZIER", "AUTO", 944.4444656372069, -0.17864137887954712, "AUTO_CLAMPED", 1138.888931274414, -0.209717258810997, "AUTO_CLAMPED"], [-0.209717258810997, 366.66666666666663, "BEZIER", "AUTO", 1261.111068725586, -0.1901838481426239, "AUTO_CLAMPED", 1411.111068725586, -0.21415667235851288, "AUTO_CLAMPED"], [-0.2682616710662842, 83.33333333333326, "BEZIER", "AUTO", 1438.888931274414, -0.2682616710662842, "AUTO_CLAMPED", 1500.0, -0.2682616710662842, "AUTO_CLAMPED"], [0.06351689994335175, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, 0.06351689994335175, "AUTO_CLAMPED", 1594.4444020589192, 0.06351689994335175, "AUTO_CLAMPED"], [0.059162016957998276, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, 0.06351689994335175, "AUTO_CLAMPED", 1716.6666666666665, 0.04871029779314995, "AUTO_CLAMPED"], [0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, 0.0, "AUTO_CLAMPED", 1916.6666666666667, 0.0, "AUTO_CLAMPED"]], "z": [[-0.0, 0.0, "BEZIER", "AUTO", 72.22222487131755, -0.0, "AUTO_CLAMPED"], [0.018239933997392654, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.018239933997392654, "AUTO_CLAMPED", 238.88888359069824, 0.018239933997392654, "AUTO_CLAMPED"], [-0.003715081140398979, 66.66666666666663, "BEZIER", "AUTO", 261.11111640930176, -0.003715081140398979, "AUTO_CLAMPED", 316.66666666666663, -0.003715081140398979, "AUTO_CLAMPED"], [0.003378540277481079, 100.0, "BEZIER", "AUTO", 350.0, 0.0009166612289845943, "AUTO_CLAMPED", 444.44443384806317, 0.007891984656453133, "AUTO_CLAMPED"], [0.06673367321491241, 183.33333333333331, "BEZIER", "AUTO", 505.5555661519369, 0.0051122792065143585, "AUTO_CLAMPED", 594.444465637207, 0.09474340081214905, "AUTO_CLAMPED"], [0.13605912029743195, 83.33333333333337, "BEZIER", "AUTO", 622.2222010294596, 0.13605912029743195, "AUTO_CLAMPED", 683.3333333333334, 0.13605912029743195, "AUTO_CLAMPED"], [0.11836071312427521, 100.0, "BEZIER", "AUTO", 716.6666666666666, 0.11836071312427521, "AUTO_CLAMPED", 766.6666666666666, 0.11836071312427521, "AUTO_CLAMPED"], [0.13753235340118408, 50.0, "BEZIER", "AUTO", 783.3333333333334, 0.12769433856010437, "AUTO_CLAMPED", 872.2222010294596, 0.18016371130943298, "AUTO_CLAMPED"], [0.2322661280632019, 216.66666666666663, "BEZIER", "AUTO", 944.4444656372069, 0.2322661280632019, "AUTO_CLAMPED", 1138.888931274414, 0.2322661280632019, "AUTO_CLAMPED"], [0.20868675410747528, 366.66666666666663, "BEZIER", "AUTO", 1261.111068725586, 0.2322661280632019, "AUTO_CLAMPED", 1411.111068725586, 0.20332780480384827, "AUTO_CLAMPED"], [0.15863937139511108, 83.33333333333326, "BEZIER", "AUTO", 1438.888931274414, 0.15863937139511108, "AUTO_CLAMPED", 1500.0, 0.15863937139511108, "AUTO_CLAMPED"], [0.2003980427980423, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, 0.2003980427980423, "AUTO_CLAMPED", 1594.4444020589192, 0.2003980427980423, "AUTO_CLAMPED"], [0.09448619186878204, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, 0.1338554322719574, "AUTO_CLAMPED", 1716.6666666666665, -0.0, "AUTO_CLAMPED"], [-0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, -0.0, "AUTO_CLAMPED", 1916.6666666666667, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 72.22222487131755, 0.0, "AUTO_CLAMPED"], [0.04348362237215042, 216.66666666666669, "BEZIER", "AUTO", 144.44443384806317, 0.04348362237215042, "AUTO_CLAMPED", 238.88888359069824, 0.04348362237215042, "AUTO_CLAMPED"], [0.04043026641011238, 66.66666666666663, "BEZIER", "AUTO", 261.11111640930176, 0.04043026641011238, "AUTO_CLAMPED", 316.66666666666663, 0.04043026641011238, "AUTO_CLAMPED"], [0.0498494915664196, 100.0, "BEZIER", "AUTO", 350.0, 0.04043026641011238, "AUTO_CLAMPED", 444.44443384806317, 0.0671180710196495, "AUTO_CLAMPED"], [0.21255171298980713, 183.33333333333331, "BEZIER", "AUTO", 505.5555661519369, 0.21255171298980713, "AUTO_CLAMPED", 594.444465637207, 0.21255171298980713, "AUTO_CLAMPED"], [0.027551360428333282, 83.33333333333337, "BEZIER", "AUTO", 622.2222010294596, 0.027551360428333282, "AUTO_CLAMPED", 683.3333333333334, 0.027551360428333282, "AUTO_CLAMPED"], [0.09703753143548965, 100.0, "BEZIER", "AUTO", 716.6666666666666, 0.09703753143548965, "AUTO_CLAMPED", 766.6666666666666, 0.09703753143548965, "AUTO_CLAMPED"], [0.024584002792835236, 50.0, "BEZIER", "AUTO", 783.3333333333334, 0.06167126074433327, "AUTO_CLAMPED", 872.2222010294596, -0.13612744212150574, "AUTO_CLAMPED"], [-0.3309659957885742, 216.66666666666663, "BEZIER", "AUTO", 944.4444656372069, -0.3291552662849426, "AUTO_CLAMPED", 1138.888931274414, -0.3340303301811218, "AUTO_CLAMPED"], [-0.3340303301811218, 366.66666666666663, "BEZIER", "AUTO", 1261.111068725586, -0.3340303301811218, "AUTO_CLAMPED", 1411.111068725586, -0.3340303301811218, "AUTO_CLAMPED"], [-0.1700890064239502, 83.33333333333326, "BEZIER", "AUTO", 1438.888931274414, -0.2501014769077301, "AUTO_CLAMPED", 1500.0, -0.07407404482364655, "AUTO_CLAMPED"], [0.016301512718200684, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, 0.016301512718200684, "AUTO_CLAMPED", 1594.4444020589192, 0.016301512718200684, "AUTO_CLAMPED"], [-0.015913818031549454, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, -0.015913818031549454, "AUTO_CLAMPED", 1716.6666666666665, -0.015913818031549454, "AUTO_CLAMPED"], [0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, 0.0, "AUTO_CLAMPED", 1916.6666666666667, 0.0, "AUTO_CLAMPED"]]}, "rotation_euler": {"x": [[0.0, 0.0, "BEZIER", "AUTO", 50.0, 0.0, "AUTO_CLAMPED"], [3.3686347844983024, 150.0, "BEZIER", "AUTO", 100.0, 3.3686347844983024, "AUTO_CLAMPED", 205.5555502573649, 3.3686347844983024, "AUTO_CLAMPED"], [0.02222707974050119, 166.66666666666663, "BEZIER", "AUTO", 261.11111640930176, 0.02222707974050119, "AUTO_CLAMPED", 350.0, 0.02222707974050119, "AUTO_CLAMPED"], [4.537149524119608, 100.00000000000006, "BEZIER", "AUTO", 383.3333333333333, 0.022227143106513993, "AUTO_CLAMPED", 494.4444338480631, 15.07196841315016, "AUTO_CLAMPED"], [61.414745582626026, 233.33333333333331, "BEZIER", "AUTO", 572.2222010294596, 61.414745582626026, "AUTO_CLAMPED", 694.444465637207, 61.414745582626026, "AUTO_CLAMPED"], [52.280518454609116, 133.33333333333337, "BEZIER", "AUTO", 738.8888676961262, 61.414745582626026, "AUTO_CLAMPED", 850.0, 38.57917605503646, "AUTO_CLAMPED"], [-71.68136001842309, 199.9999999999999, "BEZIER", "AUTO", 916.6666666666666, -71.68136001842309, "AUTO_CLAMPED", 1105.5555979410808, -71.68136001842309, "AUTO_CLAMPED"], [-67.29034068404862, 366.66666666666674, "BEZIER", "AUTO", 1227.7777353922525, -67.82028823156074, "AUTO_CLAMPED", 1388.888931274414, -67.12171697381935, "AUTO_CLAMPED"], [-53.072130549224426, 116.66666666666652, "BEZIER", "AUTO", 1427.7777353922525, -67.29034068404862, "AUTO_CLAMPED", 1500.0, -40.88509231506237, "AUTO_CLAMPED"], [-7.130840436898373, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, -12.328117499015958, "AUTO_CLAMPED", 1594.4444020589192, -2.7997765030582666, "AUTO_CLAMPED"], [-2.7997762896148553, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, -2.971331431658535, "AUTO_CLAMPED", 1716.6666666666665, -2.388044162153436, "AUTO_CLAMPED"], [0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, 0.0, "AUTO_CLAMPED", 1916.6666666666667, 0.0, "AUTO_CLAMPED"]], "z": [[0.0, 0.0, "BEZIER", "AUTO", 50.0, 0.0, "AUTO_CLAMPED"], [-17.712562234959403, 150.0, "BEZIER", "AUTO", 100.0, -17.712562234959403, "AUTO_CLAMPED", 205.5555502573649, -17.712562234959403, "AUTO_CLAMPED"], [13.30397138517142, 166.66666666666663, "BEZIER", "AUTO", 261.11111640930176, 13.30397138517142, "AUTO_CLAMPED", 350.0, 13.30397138517142, "AUTO_CLAMPED"], [5.758366003376731, 100.00000000000006, "BEZIER", "AUTO", 383.3333333333333, 5.82466195389499, "AUTO_CLAMPED", 494.4444338480631, 5.603675025280636, "AUTO_CLAMPED"], [5.603675025280636, 233.33333333333331, "BEZIER", "AUTO", 572.2222010294596, 5.603675025280636, "AUTO_CLAMPED", 694.444465637207, 5.603675025280636, "AUTO_CLAMPED"], [6.040763589705493, 133.33333333333337, "BEZIER", "AUTO", 738.8888676961262, 6.040763589705493, "AUTO_CLAMPED", 850.0, 6.040763589705493, "AUTO_CLAMPED"], [-1.4811513876747122, 199.9999999999999, "BEZIER", "AUTO", 916.6666666666666, -1.4811513876747122, "AUTO_CLAMPED", 1105.5555979410808, -1.4811513876747122, "AUTO_CLAMPED"], [-0.9937320130296772, 366.66666666666674, "BEZIER", "AUTO", 1227.7777353922525, -1.4811513876747122, "AUTO_CLAMPED", 1388.888931274414, -0.8386440301880752, "AUTO_CLAMPED"], [5.75973417564485, 116.66666666666652, "BEZIER", "AUTO", 1427.7777353922525, 5.75973417564485, "AUTO_CLAMPED", 1500.0, 5.75973417564485, "AUTO_CLAMPED"], [-7.87355264592462, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, -7.87355264592462, "AUTO_CLAMPED", 1594.4444020589192, -7.87355264592462, "AUTO_CLAMPED"], [-5.935155631645579, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, -6.982968975801712, "AUTO_CLAMPED", 1716.6666666666665, -3.4204037764255912, "AUTO_CLAMPED"], [-0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, -0.0, "AUTO_CLAMPED", 1916.6666666666667, -0.0, "AUTO_CLAMPED"]], "y": [[0.0, 0.0, "BEZIER", "AUTO", 50.0, 0.0, "AUTO_CLAMPED"], [-3.362418245136533, 150.0, "BEZIER", "AUTO", 100.0, -3.362418245136533, "AUTO_CLAMPED", 205.5555502573649, -3.362418245136533, "AUTO_CLAMPED"], [5.488280686800564, 166.66666666666663, "BEZIER", "AUTO", 261.11111640930176, 5.488280686800564, "AUTO_CLAMPED", 350.0, 5.488280686800564, "AUTO_CLAMPED"], [2.9251945710321565, 100.00000000000006, "BEZIER", "AUTO", 383.3333333333333, 4.216823897329765, "AUTO_CLAMPED", 494.4444338480631, -0.08860740377234073, "AUTO_CLAMPED"], [-3.2122371128833507, 233.33333333333331, "BEZIER", "AUTO", 572.2222010294596, -3.2122371128833507, "AUTO_CLAMPED", 694.444465637207, -3.2122371128833507, "AUTO_CLAMPED"], [-2.2836878362589266, 133.33333333333337, "BEZIER", "AUTO", 738.8888676961262, -3.2122371128833507, "AUTO_CLAMPED", 850.0, -0.8908639213222903, "AUTO_CLAMPED"], [6.285038902068653, 199.9999999999999, "BEZIER", "AUTO", 916.6666666666666, 6.233289120048405, "AUTO_CLAMPED", 1105.5555979410808, 6.379913644734715, "AUTO_CLAMPED"], [6.379913644734715, 366.66666666666674, "BEZIER", "AUTO", 1227.7777353922525, 6.285038902068653, "AUTO_CLAMPED", 1388.888931274414, 6.410100946432055, "AUTO_CLAMPED"], [24.273973215848397, 116.66666666666652, "BEZIER", "AUTO", 1427.7777353922525, 24.273973215848397, "AUTO_CLAMPED", 1500.0, 24.273973215848397, "AUTO_CLAMPED"], [-30.381999654726528, 100.00000000000023, "BEZIER", "AUTO", 1533.3333333333333, -30.381999654726528, "AUTO_CLAMPED", 1594.4444020589192, -30.381999654726528, "AUTO_CLAMPED"], [-9.056688259237983, 83.33333333333326, "BEZIER", "AUTO", 1622.2222646077473, -12.830308011514791, "AUTO_CLAMPED", 1716.6666666666665, 0.0, "AUTO_CLAMPED"], [0.0, 199.99999999999977, "BEZIER", "AUTO", 1783.3333333333333, 0.0, "AUTO_CLAMPED", 1916.6666666666667, 0.0, "AUTO_CLAMPED"]]}}, "Cylinder": {"location": {"x": [[-0.0010489225387573242, 0.0, "LINEAR", "AUTO"], [-0.0010489225387573242, 283.3333333333333, "LINEAR", "AUTO"], [-0.07956840097904205, 83.33333333333331, "LINEAR", "AUTO"], [-0.07956840097904205, 1200.0, "LINEAR", "AUTO"], [-0.0010489225387573242, 83.33333333333326, "LINEAR", "AUTO"]], "z": [[0.07426249980926514, 0.0, "LINEAR", "AUTO"], [0.07426249980926514, 283.3333333333333, "LINEAR", "AUTO"], [0.07129553705453873, 83.33333333333331, "LINEAR", "AUTO"], [0.07129553705453873, 1200.0, "LINEAR", "AUTO"], [0.07426249980926514, 83.33333333333326, "LINEAR", "AUTO"]], "y": [[0.10388392210006714, 0.0, "LINEAR", "AUTO"], [0.10388392210006714, 283.3333333333333, "LINEAR", "AUTO"], [0.07195358723402023, 83.33333333333331, "LINEAR", "AUTO"], [0.07195358723402023, 1200.0, "LINEAR", "AUTO"], [0.10388392210006714, 83.33333333333326, "LINEAR", "AUTO"]]}}}}, "offset": {"Cylinder": [-0.0010489225387573242, 0.10388392210006714, 0.07426249980926514], "Grip": [0.0, -1.8214237229585706e-08, -0.0], "Hammer": [0.00012800097465515137, 0.1151699647307396, 0.1478099822998047]}} \ No newline at end of file From 86918a33e6d05610362f15d4a3f06751ccac932b Mon Sep 17 00:00:00 2001 From: Boblet Date: Tue, 8 Oct 2024 16:54:52 +0200 Subject: [PATCH 57/63] thorium recipe autogen --- changelog | 6 ++++-- .../hbm/inventory/fluid/tank/FluidTank.java | 8 +++++--- .../inventory/material/MatDistribution.java | 2 +- .../inventory/recipes/AssemblerRecipes.java | 10 +++++----- .../inventory/recipes/CentrifugeRecipes.java | 4 +++- .../inventory/recipes/CrystallizerRecipes.java | 4 +++- src/main/java/com/hbm/lib/HbmWorldGen.java | 18 ++++++++++-------- 7 files changed, 31 insertions(+), 21 deletions(-) diff --git a/changelog b/changelog index f272bd3e8..6a367159f 100644 --- a/changelog +++ b/changelog @@ -1,7 +1,7 @@ ## Changed * Updated russian and chinese localization * The fine soot recipe in the pyrolysis oven now only needs 4 tar -* Overdrive upgrades now use fullerite instead of lithium crystals +* Overdrive upgrades now use hard plastic/fullerite instead of lithium crystals * Machines now only send their sync packets once a second instead of once per tick if the values haven't changed, reducing network traffic by a considerable amount * Tom's explosion no longer causes any block updates on the millions of blocks it deletes which hopefully fixes a majority of the lag caused by the crater * Overdrive upgrades now increase power usage in pyrolysis ovens (equivalent to 2 speed upgrades per level) @@ -11,10 +11,12 @@ * Updated the shredder's textures * The strand caster will now cast its remaining buffer after 10 seconds of inactivity, even if the buffer is not full enough for a batch of 9 * The soldering station now has a toggle for the "refuse to do recipes with no fluid if fluid is present" behavior +* Recipes using the ore dictionary "oreThorium232" are now also generated for "oreThorium" ## Fixed * The conveyor grabber should no longer skip over items when used in long lines * Fixed a potential crash regarding crucibles * Fixed compatibility with EndlessIDs, biome changes should no longer crash the game * Fixed GL state leak caused by fluid tanks, causing some tile entities to be rendered without face culling -* Fixed a bug where using too many PWR heatsinks would cause an overflow, making the heat capacity negative \ No newline at end of file +* Fixed a bug where using too many PWR heatsinks would cause an overflow, making the heat capacity negative +* Fixed landmines generating into the floor on superflat worlds \ No newline at end of file diff --git a/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java b/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java index 135582280..1cbf80cc2 100644 --- a/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java +++ b/src/main/java/com/hbm/inventory/fluid/tank/FluidTank.java @@ -13,6 +13,8 @@ import com.hbm.inventory.gui.GuiInfoContainer; import com.hbm.items.ModItems; import com.hbm.items.machine.IItemFluidIdentifier; +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; import io.netty.buffer.ByteBuf; import net.minecraft.client.Minecraft; import net.minecraft.client.renderer.Tessellator; @@ -183,11 +185,11 @@ public class FluidTank { * @param width * @param height */ - public void renderTank(int x, int y, double z, int width, int height) { + @SideOnly(Side.CLIENT) public void renderTank(int x, int y, double z, int width, int height) { renderTank(x, y, z, width, height, 0); } - public void renderTank(int x, int y, double z, int width, int height, int orientation) { + @SideOnly(Side.CLIENT) public void renderTank(int x, int y, double z, int width, int height, int orientation) { GL11.glEnable(GL11.GL_BLEND); @@ -242,7 +244,7 @@ public class FluidTank { GL11.glDisable(GL11.GL_BLEND); } - public void renderTankInfo(GuiInfoContainer gui, int mouseX, int mouseY, int x, int y, int width, int height) { + @SideOnly(Side.CLIENT) public void renderTankInfo(GuiInfoContainer gui, int mouseX, int mouseY, int x, int y, int width, int height) { if(x <= mouseX && x + width > mouseX && y < mouseY && y + height >= mouseY) { List list = new ArrayList(); diff --git a/src/main/java/com/hbm/inventory/material/MatDistribution.java b/src/main/java/com/hbm/inventory/material/MatDistribution.java index 12e6d4f6e..6db7f5da2 100644 --- a/src/main/java/com/hbm/inventory/material/MatDistribution.java +++ b/src/main/java/com/hbm/inventory/material/MatDistribution.java @@ -68,7 +68,7 @@ public class MatDistribution extends SerializableRecipe { registerOre(OreDictManager.COAL.ore(), MAT_CARBON, GEM.q(3), MAT_STONE, QUART.q(1)); registerOre(OreDictManager.GOLD.ore(), MAT_GOLD, INGOT.q(2), MAT_LEAD, NUGGET.q(3), MAT_STONE, QUART.q(1)); registerOre(OreDictManager.U.ore(), MAT_URANIUM, INGOT.q(2), MAT_LEAD, NUGGET.q(3), MAT_STONE, QUART.q(1)); - registerOre(OreDictManager.TH232.ore(), MAT_THORIUM, INGOT.q(2), MAT_URANIUM, NUGGET.q(3), MAT_STONE, QUART.q(1)); + for(String ore : OreDictManager.TH232.all(MaterialShapes.ORE)) registerOre(ore, MAT_THORIUM, INGOT.q(2), MAT_URANIUM, NUGGET.q(3), MAT_STONE, QUART.q(1)); registerOre(OreDictManager.CU.ore(), MAT_COPPER, INGOT.q(2), MAT_STONE, QUART.q(1)); registerOre(OreDictManager.PB.ore(), MAT_LEAD, INGOT.q(2), MAT_GOLD, NUGGET.q(1), MAT_STONE, QUART.q(1)); registerOre(OreDictManager.BE.ore(), MAT_BERYLLIUM, INGOT.q(2), MAT_STONE, QUART.q(1)); diff --git a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java index 5b52a30fd..01475b4ac 100644 --- a/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/AssemblerRecipes.java @@ -362,8 +362,8 @@ public class AssemblerRecipes extends SerializableRecipe { makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_1, 1), new AStack[] { new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), - new OreDictStack(DESH.ingot(), 16), - new ComparableStack(ModItems.ingot_cft, 2), + new OreDictStack(BIGMT.ingot(), 16), + new OreDictStack(ANY_HARDPLASTIC.ingot(), 16), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.ADVANCED), }, 200); makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_2, 1), new AStack[] { @@ -371,15 +371,15 @@ public class AssemblerRecipes extends SerializableRecipe { new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), new OreDictStack(BIGMT.ingot(), 16), - new ComparableStack(ModItems.ingot_cft, 6), + new ComparableStack(ModItems.ingot_cft, 8), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.CAPACITOR_BOARD), }, 300); makeRecipe(new ComparableStack(ModItems.upgrade_overdrive_3, 1), new AStack[] { new ComparableStack(ModItems.upgrade_overdrive_2, 1), new ComparableStack(ModItems.upgrade_speed_3, 1), new ComparableStack(ModItems.upgrade_effect_3, 1), - new OreDictStack(STAR.ingot(), 16), - new ComparableStack(ModItems.ingot_cft, 8), + new OreDictStack(ANY_BISMOIDBRONZE.ingot(), 16), + new ComparableStack(ModItems.ingot_cft, 16), new ComparableStack(ModItems.circuit, 16, EnumCircuitType.BISMOID), }, 500); diff --git a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java index 2c91e4e4a..4878cfb24 100644 --- a/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CentrifugeRecipes.java @@ -15,10 +15,12 @@ import com.hbm.config.GeneralConfig; import com.hbm.handler.imc.IMCCentrifuge; import static com.hbm.inventory.OreDictManager.*; import com.hbm.inventory.OreDictManager.DictFrame; +import com.hbm.inventory.OreDictManager; import com.hbm.inventory.RecipesCommon; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; +import com.hbm.inventory.material.MaterialShapes; import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ItemEnums.EnumAshType; import com.hbm.items.ItemEnums.EnumChunkType; @@ -395,7 +397,7 @@ public class CentrifugeRecipes extends SerializableRecipe { lbs ? new ItemStack(ModItems.nugget_ra226, 2) : new ItemStack(ModItems.nugget_ra226, 1), new ItemStack(Blocks.gravel, 1) }); - recipes.put(new OreDictStack(TH232.ore()), new ItemStack[] { + for(String ore : OreDictManager.TH232.all(MaterialShapes.ORE)) recipes.put(new OreDictStack(ore), new ItemStack[] { new ItemStack(ModItems.powder_thorium, 1), new ItemStack(ModItems.powder_thorium, 1), new ItemStack(ModItems.powder_uranium, 1), diff --git a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java index 5930101dd..135524cba 100644 --- a/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java +++ b/src/main/java/com/hbm/inventory/recipes/CrystallizerRecipes.java @@ -13,11 +13,13 @@ import com.google.gson.stream.JsonWriter; import com.hbm.blocks.ModBlocks; import com.hbm.handler.imc.IMCCrystallizer; import com.hbm.inventory.FluidStack; +import com.hbm.inventory.OreDictManager; import com.hbm.inventory.RecipesCommon.AStack; import com.hbm.inventory.RecipesCommon.ComparableStack; import com.hbm.inventory.RecipesCommon.OreDictStack; import com.hbm.inventory.fluid.FluidType; import com.hbm.inventory.fluid.Fluids; +import com.hbm.inventory.material.MaterialShapes; import com.hbm.inventory.recipes.loader.SerializableRecipe; import com.hbm.items.ItemEnums.EnumAshType; import com.hbm.items.ItemEnums.EnumPlantType; @@ -63,7 +65,7 @@ public class CrystallizerRecipes extends SerializableRecipe { registerRecipe(LAPIS.ore(), new CrystallizerRecipe(ModItems.crystal_lapis, baseTime)); registerRecipe(DIAMOND.ore(), new CrystallizerRecipe(ModItems.crystal_diamond, baseTime)); registerRecipe(U.ore(), new CrystallizerRecipe(ModItems.crystal_uranium, baseTime), sulfur); - registerRecipe(TH232.ore(), new CrystallizerRecipe(ModItems.crystal_thorium, baseTime), sulfur); + for(String ore : OreDictManager.TH232.all(MaterialShapes.ORE)) registerRecipe(ore, new CrystallizerRecipe(ModItems.crystal_thorium, baseTime), sulfur); registerRecipe(PU.ore(), new CrystallizerRecipe(ModItems.crystal_plutonium, baseTime), sulfur); registerRecipe(TI.ore(), new CrystallizerRecipe(ModItems.crystal_titanium, baseTime), sulfur); registerRecipe(S.ore(), new CrystallizerRecipe(ModItems.crystal_sulfur, baseTime)); diff --git a/src/main/java/com/hbm/lib/HbmWorldGen.java b/src/main/java/com/hbm/lib/HbmWorldGen.java index e17c1b0fd..e060239d9 100644 --- a/src/main/java/com/hbm/lib/HbmWorldGen.java +++ b/src/main/java/com/hbm/lib/HbmWorldGen.java @@ -403,14 +403,16 @@ public class HbmWorldGen implements IWorldGenerator { int x = i + rand.nextInt(16) + 8; int z = j + rand.nextInt(16) + 8; int y = world.getHeightValue(x, z); - - if(world.getBlock(x, y - 1, z).canPlaceTorchOnTop(world, x, y - 1, z)) { - world.setBlock(x, y, z, ModBlocks.mine_ap); - TileEntityLandmine landmine = (TileEntityLandmine) world.getTileEntity(x, y, z); - landmine.waitingForPlayer = true; - - if(GeneralConfig.enableDebugMode) - MainRegistry.logger.info("[Debug] Successfully spawned landmine at " + x + " " + (y) + " " + z); + + for(int g = y + 2; g >= y; g--) { + + if(world.getBlock(x, g - 1, z).canPlaceTorchOnTop(world, x, g - 1, z)) { + world.setBlock(x, g, z, ModBlocks.mine_ap); + TileEntityLandmine landmine = (TileEntityLandmine) world.getTileEntity(x, g, z); + landmine.waitingForPlayer = true; + if(GeneralConfig.enableDebugMode) MainRegistry.logger.info("[Debug] Successfully spawned landmine at " + x + " " + g + " " + z); + break; + } } } From f2b64a82fee60858b554570c4615436122205f3e Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 9 Oct 2024 00:20:08 +0200 Subject: [PATCH 58/63] cursed 60s quad barrel shotgun from hell --- src/main/java/com/hbm/items/ModItems.java | 2 + .../sedna/factory/GunFactoryClient.java | 2 + .../weapon/sedna/factory/GunStateDecider.java | 2 + .../weapon/sedna/factory/Orchestras.java | 47 + .../weapon/sedna/factory/XFactory12ga.java | 112 +- .../weapon/sedna/factory/XFactory22lr.java | 12 +- .../items/weapon/sedna/mags/IMagazine.java | 6 +- .../sedna/mags/MagazineSingleTypeBase.java | 3 + .../java/com/hbm/main/ResourceManager.java | 2 + .../item/weapon/sedna/ItemRenderAm180.java | 1 + .../weapon/sedna/ItemRenderLiberator.java | 145 + .../machine/TileEntityHeaterElectric.java | 17 +- .../assets/hbm/models/weapons/liberator.obj | 7218 +++++++++-------- src/main/resources/assets/hbm/sounds.json | 1 + .../hbm/sounds/weapon/reload/impact1.ogg | Bin 0 -> 7896 bytes .../hbm/sounds/weapon/reload/impact2.ogg | Bin 0 -> 8876 bytes .../hbm/sounds/weapon/reload/impact3.ogg | Bin 0 -> 7736 bytes .../hbm/textures/models/weapons/liberator.png | Bin 4100 -> 8441 bytes 18 files changed, 4002 insertions(+), 3568 deletions(-) create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/impact1.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/impact2.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/reload/impact3.ogg diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 0781542c6..292babf98 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1632,6 +1632,7 @@ public class ModItems { public static Item gun_heavy_revolver; public static Item gun_carbine; public static Item gun_am180; + public static Item gun_liberator; public static Item ammo_standard; @@ -7048,6 +7049,7 @@ public class ModItems { GameRegistry.registerItem(gun_heavy_revolver, gun_heavy_revolver.getUnlocalizedName()); GameRegistry.registerItem(gun_carbine, gun_carbine.getUnlocalizedName()); GameRegistry.registerItem(gun_am180, gun_am180.getUnlocalizedName()); + GameRegistry.registerItem(gun_liberator, gun_liberator.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 956fd6314..9fd1933ca 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -40,6 +40,7 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_heavy_revolver, new ItemRenderHeavyRevolver()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_carbine, new ItemRenderCarbine()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_am180, new ItemRenderAm180()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_liberator, new ItemRenderLiberator()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); @@ -82,6 +83,7 @@ public class GunFactoryClient { ((ItemGunBaseNT) ModItems.gun_heavy_revolver).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_carbine).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); ((ItemGunBaseNT) ModItems.gun_am180).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_liberator).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index 2bc9c4325..5920f85c2 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -80,6 +80,8 @@ public class GunStateDecider { ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END); } } + + mag.setAmountAfterReload(stack, mag.getAmount(stack)); } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 9287f699a..7d160c89c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -319,6 +319,7 @@ public class Orchestras { } if(type == AnimType.RELOAD) { if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magRemove", 1F, 1F); + if(timer == 20) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.impact", 0.25F, 1F); if(timer == 32) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.pistolCock", 1F, 0.9F); } @@ -330,4 +331,50 @@ public class Orchestras { if(timer == 35) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magInsert", 1F, 1F); } }; + + public static BiConsumer ORCHESTRA_LIBERATOR = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack); + int timer = ItemGunBaseNT.getAnimTimer(stack); + + if(type == AnimType.RELOAD) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); + if(timer == 4) { + IMagazine mag = ctx.config.getReceivers(stack)[0].getMagazine(stack); + int ammo = mag.getAmount(stack); + int prev = mag.getAmountAfterReload(stack); + int toEject = prev - ammo; + SpentCasing casing = mag.getCasing(stack); + for(int i = 0; i < toEject; i++) CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.1875, -0.375D, -0.12, 0.18, 0, 0.01, casing.getName(), true, 60, 0.5D, 20); + } + if(timer == 15) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.RELOAD_CYCLE) { + if(timer == 5) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); + } + if(type == AnimType.RELOAD_END) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); + } + if(type == AnimType.JAMMED) { + if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); + if(timer == 12) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); + if(timer == 26) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); + } + if(type == AnimType.CYCLE_DRY) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.dryFireClick", 1F, 1F); + } + if(type == AnimType.INSPECT) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); + IMagazine mag = ctx.config.getReceivers(stack)[0].getMagazine(stack); + int ammo = mag.getAmount(stack); + int prev = mag.getAmountAfterReload(stack); + int toEject = prev - ammo; + if(timer == 4 && toEject <= 0) { + SpentCasing casing = mag.getCasing(stack); + for(int i = 0; i < toEject; i++) CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.1875, -0.375D, -0.12, 0.18, 0, 0.01, casing.getName(), true, 60, 0.5D, 20); + mag.setAmountAfterReload(stack, 0); + } + if(timer == 20) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java index 7c4deea2c..5dbd70369 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java @@ -35,14 +35,24 @@ public class XFactory12ga { g12 = new BulletConfig().setItem(EnumAmmo.G12).setProjectiles(8, 8).setSpread(0.05F).setRicochetAngle(15).setCasing(new SpentCasing(CasingType.SHOTGUN).setColor(0xB52B2B, SpentCasing.COLOR_CASE_BRASS).setScale(0.75F).register("12GA")); ModItems.gun_maresleg = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(20).inspect(39).jam(45).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_MARESLEG) + .dura(600).draw(20).inspect(39).jam(24).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_MARESLEG) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(22, 10, 13, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(22, 10, 13, 39).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 6).addConfigs(g12_bp, g12_bp_magnum, g12_bp_slug, g12)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) .setupStandardConfiguration().anim(LAMBDA_MARESLEG_ANIMS) ).setUnlocalizedName("gun_maresleg").setTextureName(RefStrings.MODID + ":gun_darter"); + + ModItems.gun_liberator = new ItemGunBaseNT(new GunConfig() + .dura(200).draw(20).inspect(21).jam(45).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_LIBERATOR) + .rec(new Receiver(0) + .dmg(12F).delay(20).rounds(4).reload(25, 15, 7, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 4).addConfigs(g12_bp, g12_bp_magnum, g12_bp_slug, g12)) + .offset(0.75, -0.0625, -0.1875D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration().anim(LAMBDA_LIBERATOR_ANIMS) + ).setUnlocalizedName("gun_liberator").setTextureName(RefStrings.MODID + ":gun_darter"); } @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_MARESLEG_ANIMS = (stack, type) -> { @@ -87,4 +97,102 @@ public class XFactory12ga { return null; }; + + /** This fucking sucks */ + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_LIBERATOR_ANIMS = (stack, type) -> { + int ammo = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); + switch(type) { + case EQUIP: return new BusAnimation() + .addBus("EQUIP", new BusAnimationSequence().addPos(60, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_DOWN)); + case CYCLE: return new BusAnimation() + .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, -2.5, 50, IType.SIN_DOWN).addPos(0, 0, 0, 350, IType.SIN_FULL)); + case CYCLE_DRY: return new BusAnimation(); + case RELOAD: if(ammo == 0) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 100)) + .addBus("BREAK", new BusAnimationSequence().addPos(0, 0, 0, 100).addPos(60, 0, 0, 350, IType.SIN_DOWN)) + .addBus("SHELL1", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(2, -4, -2, 400).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)) + .addBus("SHELL2", new BusAnimationSequence().addPos(2, -4, -2, 0)) + .addBus("SHELL3", new BusAnimationSequence().addPos(2, -4, -2, 0)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0)); + if(ammo == 1) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 100)) + .addBus("BREAK", new BusAnimationSequence().addPos(0, 0, 0, 100).addPos(60, 0, 0, 350, IType.SIN_DOWN)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(2, -4, -2, 400).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)) + .addBus("SHELL3", new BusAnimationSequence().addPos(2, -4, -2, 0)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0)); + if(ammo == 2) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 100)) + .addBus("BREAK", new BusAnimationSequence().addPos(0, 0, 0, 100).addPos(60, 0, 0, 350, IType.SIN_DOWN)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL3", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(2, -4, -2, 400).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0)); + if(ammo == 3) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 100)) + .addBus("BREAK", new BusAnimationSequence().addPos(0, 0, 0, 100).addPos(60, 0, 0, 350, IType.SIN_DOWN)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL3", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(2, -4, -2, 400).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)); + case RELOAD_CYCLE: + if(ammo == 0) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 0)) + .addBus("BREAK", new BusAnimationSequence().addPos(60, 0, 0, 0)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)) + .addBus("SHELL3", new BusAnimationSequence().addPos(2, -4, -2, 0)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0)); + if(ammo == 1) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 0)) + .addBus("BREAK", new BusAnimationSequence().addPos(60, 0, 0, 0)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL3", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0)); + if(ammo == 2) return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 0)) + .addBus("BREAK", new BusAnimationSequence().addPos(60, 0, 0, 0)) + .addBus("SHELL1", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL2", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL3", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus("SHELL4", new BusAnimationSequence().addPos(2, -4, -2, 0).addPos(0, 0, -2, 450, IType.SIN_FULL).addPos(0, 0, 0, 50, IType.SIN_UP)); + return null; + case RELOAD_END: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 0).addPos(15, 0, 0, 250).addPos(0, 0, 0, 50)) + .addBus("BREAK", new BusAnimationSequence().addPos(60, 0, 0, 0).addPos(0, 0, 0, 250, IType.SIN_UP)) + .addBus(ammo >= 0 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 1 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 2 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 3 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo < 0 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 1 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 2 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 3 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)); + case JAMMED: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 0).addPos(15, 0, 0, 250).addPos(0, 0, 0, 50).addPos(0, 0, 0, 550).addPos(15, 0, 0, 100).addPos(15, 0, 0, 600).addPos(0, 0, 0, 50)) + .addBus("BREAK", new BusAnimationSequence().addPos(60, 0, 0, 0).addPos(0, 0, 0, 250, IType.SIN_UP).addPos(0, 0, 0, 600).addPos(45, 0, 0, 250, IType.SIN_DOWN).addPos(45, 0, 0, 300).addPos(0, 0, 0, 150, IType.SIN_UP)) + .addBus(ammo >= 0 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 1 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 2 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo >= 3 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo < 0 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 1 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 2 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 3 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)); + case INSPECT: return new BusAnimation() + .addBus("LATCH", new BusAnimationSequence().addPos(15, 0, 0, 100).addPos(15, 0, 0, 1100).addPos(0, 0, 0, 50)) + .addBus("BREAK", new BusAnimationSequence().addPos(0, 0, 0, 100).addPos(60, 0, 0, 350, IType.SIN_DOWN).addPos(60, 0, 0, 500).addPos(0, 0, 0, 250, IType.SIN_UP)) + .addBus(ammo > 0 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo > 1 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo > 2 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo > 3 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(0, 0, 0, 0)) + .addBus(ammo < 1 ? "SHELL1" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 2 ? "SHELL2" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 3 ? "SHELL3" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)) + .addBus(ammo < 4 ? "SHELL4" : "NULL", new BusAnimationSequence().addPos(2, -8, -2, 0)); + } + + return null; + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java index 77bd7ad96..b7f4bba93 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java @@ -43,7 +43,7 @@ public class XFactory22lr { ModItems.gun_am180 = new ItemGunBaseNT(new GunConfig() .dura(177 * 25).draw(15).inspect(38).jam(55).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_AM180) .rec(new Receiver(0) - .dmg(5F).delay(1).dry(10).auto(true).spread(0.02F).reload(44).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(1).dry(10).auto(true).spread(0.02F).reload(53).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 177).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap)) .offset(1, -0.0625 * 1.5, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) @@ -62,19 +62,21 @@ public class XFactory22lr { case CYCLE: return new BusAnimation() .addBus("RECOIL", new BusAnimationSequence().addPos(0, 0, ItemGunBaseNT.getIsAiming(stack) ? -0.125 : -0.25, 15, IType.SIN_DOWN).addPos(0, 0, 0, 35, IType.SIN_FULL)); case CYCLE_DRY: return new BusAnimation() - .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)); + .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 550).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 300).addPos(0, 0, 15, 250, IType.SIN_FULL).addPos(0, 0, 15, 400).addPos(0, 0, 0, 250, IType.SIN_FULL)); case RELOAD: return new BusAnimation() .addBus("MAGTURN", new BusAnimationSequence().addPos(15, 0, 0, 250, IType.SIN_FULL).addPos(15, 0, 0, 250).addPos(15, 0, 70, 300, IType.SIN_FULL).addPos(15, 0, 0, 0).addPos(15, 0, 0, 750).addPos(0, 0, 0, 250, IType.SIN_FULL)) .addBus("MAG", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(2, 0, -4, 250, IType.SIN_FULL).addPos(-10, 2, -4, 300, IType.SIN_UP).addPos(3, -6, -4, 0).addPos(2, 0, -4, 500, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)) - .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 2000).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)); + .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 2250).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)) + .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 2000).addPos(0, 0, 15, 250, IType.SIN_FULL).addPos(0, 0, 15, 400).addPos(0, 0, 0, 250, IType.SIN_FULL)); case JAMMED: return new BusAnimation() .addBus("BOLT", new BusAnimationSequence().addPos(0, 0, 0, 750).addPos(0, 0, -1.5, 100, IType.SIN_UP).addPos(0, 0, 0, 100, IType.SIN_UP)) .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 45, 250, IType.SIN_FULL).addPos(0, 0, 45, 400).addPos(0, 0, 0, 250, IType.SIN_FULL)); case INSPECT: return new BusAnimation() .addBus("MAGTURN", new BusAnimationSequence().addPos(15, 0, 0, 250, IType.SIN_FULL).addPos(15, 0, 0, 1400).addPos(0, 0, 0, 250, IType.SIN_FULL)) - .addBus("MAG", new BusAnimationSequence().addPos(0, 0, 0, 250).addPos(4, 0, -4, 250, IType.SIN_FULL).addPos(4, 0, -4, 100).addPos(4, 6, -4, 250, IType.SIN_FULL).addPos(4, 0, -4, 150, IType.SIN_UP).addPos(4, -1, -4, 100, IType.SIN_DOWN).addPos(4, -1, -4, 250).addPos(0, 0, 0, 250, IType.SIN_FULL)) - .addBus("MAGSPIN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(680, 0, 0, 500, IType.SIN_FULL).addPos(680, 0, 0, 250).addPos(720, 0, 0, 250)); + .addBus("MAG", new BusAnimationSequence().addPos(0, 0, 0, 200).addPos(4, -1, -4, 200, IType.SIN_FULL).addPos(4, -1.5, -4, 50).addPos(4, 0, -4, 100).addPos(4, 6, -4, 250, IType.SIN_DOWN).addPos(4, 0, -4, 150, IType.SIN_UP).addPos(4, -1, -4, 100, IType.SIN_DOWN).addPos(4, -1, -4, 250).addPos(0, 0, 0, 250, IType.SIN_FULL)) + .addBus("MAGSPIN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(-400, 0, 0, 500, IType.SIN_FULL).addPos(-400, 0, 0, 250).addPos(-360, 0, 0, 250)); } return null; diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java index b2337387b..f36e9767f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/IMagazine.java @@ -35,7 +35,11 @@ public interface IMagazine { public SpentCasing getCasing(ItemStack stack); /** When reloading, remember the amount before reload is initiated */ public void setAmountBeforeReload(ItemStack stack, int amount); - /** Amount of rouns before reload has started. Do note that the NBT stack sync likely arrives + /** Amount of rounds before reload has started. Do note that the NBT stack sync likely arrives * after the animation packets, so for RELOAD type anims, use the live ammo count instead! */ public int getAmountBeforeReload(ItemStack stack); + /** Sets amount of ammo after each reload operation */ + public void setAmountAfterReload(ItemStack stack, int amount); + /** Cached amount of ammo after the most recent reload */ + public int getAmountAfterReload(ItemStack stack); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java index 7e2f32edc..52ebea6e3 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleTypeBase.java @@ -15,6 +15,7 @@ public abstract class MagazineSingleTypeBase implements IMagazine public static final String KEY_MAG_COUNT = "magcount"; public static final String KEY_MAG_TYPE = "magtype"; public static final String KEY_MAG_PREV = "magprev"; + public static final String KEY_MAG_AFTER = "magafter"; protected List acceptedBullets = new ArrayList(); @@ -70,6 +71,8 @@ public abstract class MagazineSingleTypeBase implements IMagazine @Override public void setAmountBeforeReload(ItemStack stack, int amount) { ItemGunBaseNT.setValueInt(stack, KEY_MAG_PREV + index, amount); } @Override public int getAmountBeforeReload(ItemStack stack) { return ItemGunBaseNT.getValueInt(stack, KEY_MAG_PREV + index); } + @Override public void setAmountAfterReload(ItemStack stack, int amount) { ItemGunBaseNT.setValueInt(stack, KEY_MAG_AFTER + index, amount); } + @Override public int getAmountAfterReload(ItemStack stack) { return ItemGunBaseNT.getValueInt(stack, KEY_MAG_AFTER + index); } // MAG TYPE // public static int getMagType(ItemStack stack, int index) { return ItemGunBaseNT.getValueInt(stack, KEY_MAG_TYPE + index); } //TODO: replace with named tags to avoid ID shifting diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 9f049318a..5a8a8fd8b 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -858,6 +858,7 @@ public class ResourceManager { public static final IModelCustom flaregun = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/flaregun.obj")).asVBO(); public static final IModelCustom carbine = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/carbine.obj")).asVBO(); public static final IModelCustom am180 = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/am180.obj")).asVBO(); + public static final IModelCustom liberator = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/weapons/liberator.obj")).asVBO(); public static final HashMap python_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/python.json")); public static final HashMap cursed_anim = AnimationLoader.load(new ResourceLocation(RefStrings.MODID, "models/weapons/animations/cursed.json")); @@ -977,6 +978,7 @@ public class ResourceManager { public static final ResourceLocation heavy_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/heavy_revolver.png"); public static final ResourceLocation carbine_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/huntsman.png"); public static final ResourceLocation am180_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/am180.png"); + public static final ResourceLocation liberator_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/liberator.png"); public static final ResourceLocation lance_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/lance.png"); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java index f124948dd..235589e89 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java @@ -84,6 +84,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 1.875, 17); + GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); this.renderSmokeNodes(gun.smokeNodes, 0.25D); GL11.glPopMatrix(); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java new file mode 100644 index 000000000..249846d3b --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java @@ -0,0 +1,145 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderLiberator extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.5F * offset, -1.25F * offset, 1.25F * offset, + 0, -4.625 / 8D, 0.25); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.liberator_tex); + double scale = 0.375D; + GL11.glScaled(scale, scale, scale); + + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP"); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL"); + double[] lift = HbmAnimations.getRelevantTransformation("LIFT"); + double[] latch = HbmAnimations.getRelevantTransformation("LATCH"); + double[] brk = HbmAnimations.getRelevantTransformation("BREAK"); + double[] shell1 = HbmAnimations.getRelevantTransformation("SHELL1"); + double[] shell2 = HbmAnimations.getRelevantTransformation("SHELL2"); + double[] shell3 = HbmAnimations.getRelevantTransformation("SHELL3"); + double[] shell4 = HbmAnimations.getRelevantTransformation("SHELL4"); + + GL11.glTranslated(0, -1, -3); + GL11.glRotated(equip[0], 1, 0, 0); + GL11.glTranslated(0, 1, 3); + + GL11.glTranslated(0, -3, -3); + GL11.glRotated(lift[0], 1, 0, 0); + GL11.glTranslated(0, 3, 3); + + GL11.glTranslated(recoil[0] * 2, recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 10, 1, 0, 0); + + GL11.glShadeModel(GL11.GL_SMOOTH); + + ResourceManager.liberator.renderPart("Gun"); + + GL11.glPushMatrix(); + + GL11.glTranslated(0, -0.5, 0.75); + GL11.glRotated(brk[0], 1, 0, 0); + GL11.glTranslated(0, 0.5, -0.75); + ResourceManager.liberator.renderPart("Barrel"); + + GL11.glPushMatrix(); + GL11.glTranslated(shell1[0], shell1[1], shell1[2]); + ResourceManager.liberator.renderPart("Shell1"); + GL11.glPopMatrix(); + GL11.glPushMatrix(); + GL11.glTranslated(shell2[0], shell2[1], shell2[2]); + ResourceManager.liberator.renderPart("Shell2"); + GL11.glPopMatrix(); + GL11.glPushMatrix(); + GL11.glTranslated(shell3[0], shell3[1], shell3[2]); + ResourceManager.liberator.renderPart("Shell3"); + GL11.glPopMatrix(); + GL11.glPushMatrix(); + GL11.glTranslated(shell4[0], shell4[1], shell4[2]); + ResourceManager.liberator.renderPart("Shell4"); + GL11.glPopMatrix(); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.15625, 0.75); + GL11.glRotated(latch[0], 1, 0, 0); + GL11.glTranslated(0, -1.15625, -0.75); + ResourceManager.liberator.renderPart("Latch"); + GL11.glPopMatrix(); + GL11.glPopMatrix(); + + double smokeScale = 0.375; + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.25, 7.25); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(smokeScale, smokeScale, smokeScale); + GL11.glTranslated(0, 0, 0.25 / smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glTranslated(0, 0, -0.5 / smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glTranslated(0, 0.5 / smokeScale, 0); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glTranslated(0, 0, 0.5 / smokeScale); + this.renderSmokeNodes(gun.smokeNodes, 1D); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 0.5, 8); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + GL11.glScaled(1.5, 1.5, 1.5); + this.renderMuzzleFlash(gun.lastShot, 75, 5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 1.5D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(-0.5, 0.5, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.liberator_tex); + ResourceManager.liberator.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterElectric.java b/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterElectric.java index 7c8a19797..79a69a00a 100644 --- a/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterElectric.java +++ b/src/main/java/com/hbm/tileentity/machine/TileEntityHeaterElectric.java @@ -1,6 +1,7 @@ package com.hbm.tileentity.machine; import com.hbm.blocks.BlockDummyable; +import com.hbm.interfaces.ICopiable; import com.hbm.main.MainRegistry; import com.hbm.sound.AudioWrapper; import com.hbm.tileentity.INBTPacketReceiver; @@ -12,12 +13,14 @@ import api.hbm.tile.IHeatSource; import api.hbm.tile.IInfoProviderEC; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; +import net.minecraft.world.World; import net.minecraftforge.common.util.ForgeDirection; -public class TileEntityHeaterElectric extends TileEntityLoadedBase implements IHeatSource, IEnergyReceiverMK2, INBTPacketReceiver, IInfoProviderEC { +public class TileEntityHeaterElectric extends TileEntityLoadedBase implements IHeatSource, IEnergyReceiverMK2, INBTPacketReceiver, ICopiable, IInfoProviderEC { public long power; public int heatEnergy; @@ -209,4 +212,16 @@ public class TileEntityHeaterElectric extends TileEntityLoadedBase implements IH data.setLong(CompatEnergyControl.L_ENERGY_TU, getHeatStored()); data.setLong(CompatEnergyControl.D_OUTPUT_TU, getHeatGen()); } + + @Override + public NBTTagCompound getSettings(World world, int x, int y, int z) { + NBTTagCompound nbt = new NBTTagCompound(); + nbt.setInteger("setting", setting); + return nbt; + } + + @Override + public void pasteSettings(NBTTagCompound nbt, int index, World world, EntityPlayer player, int x, int y, int z) { + this.setting = nbt.getInteger("setting"); + } } diff --git a/src/main/resources/assets/hbm/models/weapons/liberator.obj b/src/main/resources/assets/hbm/models/weapons/liberator.obj index c78b00ba7..c98168d16 100644 --- a/src/main/resources/assets/hbm/models/weapons/liberator.obj +++ b/src/main/resources/assets/hbm/models/weapons/liberator.obj @@ -1,6 +1,938 @@ # Blender v2.79 (sub 0) OBJ File: 'liberator.blend' # www.blender.org -o Cube_Cube.001 +o Shell4 +v -0.250000 0.437500 0.000000 +v -0.343750 0.412380 0.000000 +v -0.412380 0.343750 0.000000 +v -0.437500 0.250000 0.000000 +v -0.412380 0.156250 0.000000 +v -0.343750 0.087620 0.000000 +v -0.250000 0.062500 0.000000 +v -0.156250 0.087620 0.000000 +v -0.087620 0.156250 0.000000 +v -0.062500 0.250000 0.000000 +v -0.087620 0.343750 0.000000 +v -0.156250 0.412380 0.000000 +v -0.250000 0.437500 1.000000 +v -0.343750 0.412380 1.000000 +v -0.412380 0.343750 1.000000 +v -0.437500 0.250000 1.000000 +v -0.412380 0.156250 1.000000 +v -0.343750 0.087620 1.000000 +v -0.250000 0.062500 1.000000 +v -0.156250 0.087620 1.000000 +v -0.087620 0.156250 1.000000 +v -0.062500 0.250000 1.000000 +v -0.087620 0.343750 1.000000 +v -0.156250 0.412380 1.000000 +v -0.250000 0.460938 0.000000 +v -0.355469 0.432677 0.000000 +v -0.432677 0.355469 0.000000 +v -0.460938 0.250000 0.000000 +v -0.432677 0.144531 0.000000 +v -0.355469 0.067323 0.000000 +v -0.250000 0.039062 0.000000 +v -0.144531 0.067322 0.000000 +v -0.067323 0.144531 0.000000 +v -0.039062 0.250000 0.000000 +v -0.067323 0.355469 0.000000 +v -0.144531 0.432677 0.000000 +v -0.250000 0.460938 -0.062500 +v -0.355469 0.432677 -0.062500 +v -0.432677 0.355469 -0.062500 +v -0.460938 0.250000 -0.062500 +v -0.432677 0.144531 -0.062500 +v -0.355469 0.067323 -0.062500 +v -0.250000 0.039062 -0.062500 +v -0.144531 0.067322 -0.062500 +v -0.067323 0.144531 -0.062500 +v -0.039062 0.250000 -0.062500 +v -0.067323 0.355469 -0.062500 +v -0.144531 0.432677 -0.062500 +vt 0.185185 0.500000 +vt 0.189815 0.488636 +vt 0.189815 0.500000 +vt 0.185185 0.431818 +vt 0.189815 0.443182 +vt 0.185185 0.443182 +vt 0.185185 0.409091 +vt 0.189815 0.397727 +vt 0.189815 0.409091 +vt 0.189815 0.511364 +vt 0.185185 0.511364 +vt 0.189815 0.454545 +vt 0.185185 0.454545 +vt 0.185185 0.465909 +vt 0.189815 0.477273 +vt 0.185185 0.477273 +vt 0.189815 0.420455 +vt 0.185185 0.420455 +vt 0.189815 0.522727 +vt 0.185185 0.522727 +vt 0.189815 0.465909 +vt 0.185185 0.488636 +vt 0.189815 0.431818 +vt 0.185185 0.534091 +vt 0.189815 0.534091 +vt 0.210648 0.437320 +vt 0.196742 0.427467 +vt 0.210648 0.397907 +vt 0.196303 0.446021 +vt 0.220365 0.446021 +vt 0.208334 0.471595 +vt 0.185185 0.397727 +vt 0.224554 0.427467 +vt 0.218677 0.434680 +vt 0.202619 0.434680 +vt 0.194591 0.417614 +vt 0.196742 0.407760 +vt 0.202619 0.400547 +vt 0.218677 0.400547 +vt 0.224554 0.407760 +vt 0.226705 0.417614 +vt 0.201388 0.469311 +vt 0.196303 0.463070 +vt 0.194441 0.454545 +vt 0.201388 0.439780 +vt 0.208334 0.437496 +vt 0.215280 0.439780 +vt 0.222226 0.454545 +vt 0.220365 0.463070 +vt 0.215280 0.469311 +vt 0.111111 0.488636 +vt 0.111111 0.431818 +vt 0.111111 0.397727 +vt 0.111111 0.500000 +vt 0.111111 0.443182 +vt 0.111111 0.465909 +vt 0.111111 0.409091 +vt 0.111111 0.511364 +vt 0.111111 0.454545 +vt 0.111111 0.477273 +vt 0.111111 0.420455 +vt 0.111111 0.522727 +vt 0.194444 0.454545 +vt 0.194444 0.477273 +vt 0.194444 0.420455 +vt 0.194444 0.522727 +vt 0.194444 0.465909 +vt 0.194444 0.488636 +vt 0.194444 0.431818 +vt 0.194444 0.534091 +vt 0.194444 0.500000 +vt 0.194444 0.443182 +vt 0.194444 0.409091 +vt 0.194444 0.511364 +vt 0.111111 0.534091 +vt 0.194444 0.397727 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +s off +f 4/1/1 27/2/1 28/3/1 +f 10/4/1 35/5/1 11/6/1 +f 8/7/1 31/8/1 32/9/1 +f 4/1/1 29/10/1 5/11/1 +f 11/6/1 36/12/1 12/13/1 +f 1/14/1 26/15/1 2/16/1 +f 8/7/1 33/17/1 9/18/1 +f 5/11/1 30/19/1 6/20/1 +f 1/14/1 36/12/1 25/21/1 +f 2/16/1 27/2/1 3/22/1 +f 10/4/1 33/17/1 34/23/1 +f 7/24/1 30/19/1 31/25/1 +f 37/26/2 47/27/2 43/28/2 +f 17/29/1 21/30/1 13/31/1 +f 4/1/1 3/22/1 27/2/1 +f 10/4/1 34/23/1 35/5/1 +f 8/7/1 7/32/1 31/8/1 +f 4/1/1 28/3/1 29/10/1 +f 11/6/1 35/5/1 36/12/1 +f 1/14/1 25/21/1 26/15/1 +f 8/7/1 32/9/1 33/17/1 +f 5/11/1 29/10/1 30/19/1 +f 1/14/1 12/13/1 36/12/1 +f 2/16/1 26/15/1 27/2/1 +f 10/4/1 9/18/1 33/17/1 +f 7/24/1 6/20/1 30/19/1 +f 39/33/2 38/34/2 37/26/2 +f 37/26/2 48/35/2 47/27/2 +f 47/27/2 46/36/2 43/28/2 +f 46/36/2 45/37/2 43/28/2 +f 45/37/2 44/38/2 43/28/2 +f 43/28/2 42/39/2 41/40/2 +f 41/40/2 40/41/2 43/28/2 +f 40/41/2 39/33/2 43/28/2 +f 39/33/2 37/26/2 43/28/2 +f 13/31/1 14/42/1 15/43/1 +f 15/43/1 16/44/1 17/29/1 +f 17/29/1 18/45/1 21/30/1 +f 18/45/1 19/46/1 21/30/1 +f 19/46/1 20/47/1 21/30/1 +f 21/30/1 22/48/1 23/49/1 +f 23/49/1 24/50/1 13/31/1 +f 13/31/1 15/43/1 17/29/1 +f 21/30/1 23/49/1 13/31/1 +s 1 +f 4/1/3 15/51/4 3/22/4 +f 11/6/5 22/52/6 10/4/6 +f 8/7/7 19/53/8 7/32/8 +f 5/11/9 16/54/3 4/1/3 +f 12/13/10 23/55/5 11/6/5 +f 2/16/11 13/56/12 1/14/12 +f 9/18/13 20/57/7 8/7/7 +f 6/20/14 17/58/9 5/11/9 +f 1/14/12 24/59/10 12/13/10 +f 3/22/4 14/60/11 2/16/11 +f 10/4/6 21/61/13 9/18/13 +f 7/24/8 18/62/14 6/20/14 +f 35/5/5 48/63/10 36/12/10 +f 25/21/12 38/64/11 26/15/11 +f 32/9/7 45/65/13 33/17/13 +f 29/10/9 42/66/14 30/19/14 +f 36/12/10 37/67/12 25/21/12 +f 26/15/11 39/68/4 27/2/4 +f 33/17/13 46/69/6 34/23/6 +f 30/19/14 43/70/8 31/25/8 +f 27/2/4 40/71/3 28/3/3 +f 34/23/6 47/72/5 35/5/5 +f 31/8/8 44/73/7 32/9/7 +f 28/3/3 41/74/9 29/10/9 +f 4/1/3 16/54/3 15/51/4 +f 11/6/5 23/55/5 22/52/6 +f 8/7/7 20/57/7 19/53/8 +f 5/11/9 17/58/9 16/54/3 +f 12/13/10 24/59/10 23/55/5 +f 2/16/11 14/60/11 13/56/12 +f 9/18/13 21/61/13 20/57/7 +f 6/20/14 18/62/14 17/58/9 +f 1/14/12 13/56/12 24/59/10 +f 3/22/4 15/51/4 14/60/11 +f 10/4/6 22/52/6 21/61/13 +f 7/24/8 19/75/8 18/62/14 +f 35/5/5 47/72/5 48/63/10 +f 25/21/12 37/67/12 38/64/11 +f 32/9/7 44/73/7 45/65/13 +f 29/10/9 41/74/9 42/66/14 +f 36/12/10 48/63/10 37/67/12 +f 26/15/11 38/64/11 39/68/4 +f 33/17/13 45/65/13 46/69/6 +f 30/19/14 42/66/14 43/70/8 +f 27/2/4 39/68/4 40/71/3 +f 34/23/6 46/69/6 47/72/5 +f 31/8/8 43/76/8 44/73/7 +f 28/3/3 40/71/3 41/74/9 +o Shell2 +v -0.250000 0.937500 0.000000 +v -0.343750 0.912380 0.000000 +v -0.412380 0.843750 0.000000 +v -0.437500 0.750000 0.000000 +v -0.412380 0.656250 0.000000 +v -0.343750 0.587620 0.000000 +v -0.250000 0.562500 0.000000 +v -0.156250 0.587620 0.000000 +v -0.087620 0.656250 0.000000 +v -0.062500 0.750000 0.000000 +v -0.087620 0.843750 0.000000 +v -0.156250 0.912380 0.000000 +v -0.250000 0.937500 1.000000 +v -0.343750 0.912380 1.000000 +v -0.412380 0.843750 1.000000 +v -0.437500 0.750000 1.000000 +v -0.412380 0.656250 1.000000 +v -0.343750 0.587620 1.000000 +v -0.250000 0.562500 1.000000 +v -0.156250 0.587620 1.000000 +v -0.087620 0.656250 1.000000 +v -0.062500 0.750000 1.000000 +v -0.087620 0.843750 1.000000 +v -0.156250 0.912380 1.000000 +v -0.250000 0.960938 0.000000 +v -0.355469 0.932677 0.000000 +v -0.432677 0.855469 0.000000 +v -0.460938 0.750000 0.000000 +v -0.432677 0.644531 0.000000 +v -0.355469 0.567323 0.000000 +v -0.250000 0.539062 0.000000 +v -0.144531 0.567322 0.000000 +v -0.067323 0.644531 0.000000 +v -0.039062 0.750000 0.000000 +v -0.067323 0.855469 0.000000 +v -0.144531 0.932677 0.000000 +v -0.250000 0.960938 -0.062500 +v -0.355469 0.932677 -0.062500 +v -0.432677 0.855469 -0.062500 +v -0.460938 0.750000 -0.062500 +v -0.432677 0.644531 -0.062500 +v -0.355469 0.567323 -0.062500 +v -0.250000 0.539062 -0.062500 +v -0.144531 0.567322 -0.062500 +v -0.067323 0.644531 -0.062500 +v -0.039062 0.750000 -0.062500 +v -0.067323 0.855469 -0.062500 +v -0.144531 0.932677 -0.062500 +vt 0.185185 0.500000 +vt 0.189815 0.488636 +vt 0.189815 0.500000 +vt 0.185185 0.431818 +vt 0.189815 0.443182 +vt 0.185185 0.443182 +vt 0.185185 0.409091 +vt 0.189815 0.397727 +vt 0.189815 0.409091 +vt 0.189815 0.511364 +vt 0.185185 0.511364 +vt 0.189815 0.454545 +vt 0.185185 0.454545 +vt 0.185185 0.465909 +vt 0.189815 0.477273 +vt 0.185185 0.477273 +vt 0.189815 0.420455 +vt 0.185185 0.420455 +vt 0.189815 0.522727 +vt 0.185185 0.522727 +vt 0.189815 0.465909 +vt 0.185185 0.488636 +vt 0.189815 0.431818 +vt 0.185185 0.534091 +vt 0.189815 0.534091 +vt 0.210648 0.437320 +vt 0.196742 0.427467 +vt 0.210648 0.397907 +vt 0.196303 0.446021 +vt 0.220365 0.446021 +vt 0.208334 0.471595 +vt 0.185185 0.397727 +vt 0.224554 0.427467 +vt 0.218677 0.434680 +vt 0.202619 0.434680 +vt 0.194591 0.417614 +vt 0.196742 0.407760 +vt 0.202619 0.400547 +vt 0.218677 0.400547 +vt 0.224554 0.407760 +vt 0.226705 0.417614 +vt 0.201388 0.469311 +vt 0.196303 0.463070 +vt 0.194441 0.454545 +vt 0.201388 0.439780 +vt 0.208334 0.437496 +vt 0.215280 0.439780 +vt 0.222226 0.454545 +vt 0.220365 0.463070 +vt 0.215280 0.469311 +vt 0.111111 0.488636 +vt 0.111111 0.431818 +vt 0.111111 0.397727 +vt 0.111111 0.500000 +vt 0.111111 0.443182 +vt 0.111111 0.465909 +vt 0.111111 0.409091 +vt 0.111111 0.511364 +vt 0.111111 0.454545 +vt 0.111111 0.477273 +vt 0.111111 0.420455 +vt 0.111111 0.522727 +vt 0.194444 0.454545 +vt 0.194444 0.477273 +vt 0.194444 0.420455 +vt 0.194444 0.522727 +vt 0.194444 0.465909 +vt 0.194444 0.488636 +vt 0.194444 0.431818 +vt 0.194444 0.534091 +vt 0.194444 0.500000 +vt 0.194444 0.443182 +vt 0.194444 0.409091 +vt 0.194444 0.511364 +vt 0.111111 0.534091 +vt 0.194444 0.397727 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +s off +f 52/77/15 75/78/15 76/79/15 +f 58/80/15 83/81/15 59/82/15 +f 56/83/15 79/84/15 80/85/15 +f 52/77/15 77/86/15 53/87/15 +f 59/82/15 84/88/15 60/89/15 +f 49/90/15 74/91/15 50/92/15 +f 56/83/15 81/93/15 57/94/15 +f 53/87/15 78/95/15 54/96/15 +f 49/90/15 84/88/15 73/97/15 +f 50/92/15 75/78/15 51/98/15 +f 58/80/15 81/93/15 82/99/15 +f 55/100/15 78/95/15 79/101/15 +f 85/102/16 95/103/16 91/104/16 +f 65/105/15 69/106/15 61/107/15 +f 52/77/15 51/98/15 75/78/15 +f 58/80/15 82/99/15 83/81/15 +f 56/83/15 55/108/15 79/84/15 +f 52/77/15 76/79/15 77/86/15 +f 59/82/15 83/81/15 84/88/15 +f 49/90/15 73/97/15 74/91/15 +f 56/83/15 80/85/15 81/93/15 +f 53/87/15 77/86/15 78/95/15 +f 49/90/15 60/89/15 84/88/15 +f 50/92/15 74/91/15 75/78/15 +f 58/80/15 57/94/15 81/93/15 +f 55/100/15 54/96/15 78/95/15 +f 87/109/16 86/110/16 85/102/16 +f 85/102/16 96/111/16 95/103/16 +f 95/103/16 94/112/16 91/104/16 +f 94/112/16 93/113/16 91/104/16 +f 93/113/16 92/114/16 91/104/16 +f 91/104/16 90/115/16 89/116/16 +f 89/116/16 88/117/16 91/104/16 +f 88/117/16 87/109/16 91/104/16 +f 87/109/16 85/102/16 91/104/16 +f 61/107/15 62/118/15 63/119/15 +f 63/119/15 64/120/15 65/105/15 +f 65/105/15 66/121/15 69/106/15 +f 66/121/15 67/122/15 69/106/15 +f 67/122/15 68/123/15 69/106/15 +f 69/106/15 70/124/15 71/125/15 +f 71/125/15 72/126/15 61/107/15 +f 61/107/15 63/119/15 65/105/15 +f 69/106/15 71/125/15 61/107/15 +s 1 +f 52/77/17 63/127/18 51/98/18 +f 59/82/19 70/128/20 58/80/20 +f 56/83/21 67/129/22 55/108/22 +f 53/87/23 64/130/17 52/77/17 +f 60/89/24 71/131/19 59/82/19 +f 50/92/25 61/132/26 49/90/26 +f 57/94/27 68/133/21 56/83/21 +f 54/96/28 65/134/23 53/87/23 +f 49/90/26 72/135/24 60/89/24 +f 51/98/18 62/136/25 50/92/25 +f 58/80/20 69/137/27 57/94/27 +f 55/100/22 66/138/28 54/96/28 +f 83/81/19 96/139/24 84/88/24 +f 73/97/26 86/140/25 74/91/25 +f 80/85/21 93/141/27 81/93/27 +f 77/86/23 90/142/28 78/95/28 +f 84/88/24 85/143/26 73/97/26 +f 74/91/25 87/144/18 75/78/18 +f 81/93/27 94/145/20 82/99/20 +f 78/95/28 91/146/22 79/101/22 +f 75/78/18 88/147/17 76/79/17 +f 82/99/20 95/148/19 83/81/19 +f 79/84/22 92/149/21 80/85/21 +f 76/79/17 89/150/23 77/86/23 +f 52/77/17 64/130/17 63/127/18 +f 59/82/19 71/131/19 70/128/20 +f 56/83/21 68/133/21 67/129/22 +f 53/87/23 65/134/23 64/130/17 +f 60/89/24 72/135/24 71/131/19 +f 50/92/25 62/136/25 61/132/26 +f 57/94/27 69/137/27 68/133/21 +f 54/96/28 66/138/28 65/134/23 +f 49/90/26 61/132/26 72/135/24 +f 51/98/18 63/127/18 62/136/25 +f 58/80/20 70/128/20 69/137/27 +f 55/100/22 67/151/22 66/138/28 +f 83/81/19 95/148/19 96/139/24 +f 73/97/26 85/143/26 86/140/25 +f 80/85/21 92/149/21 93/141/27 +f 77/86/23 89/150/23 90/142/28 +f 84/88/24 96/139/24 85/143/26 +f 74/91/25 86/140/25 87/144/18 +f 81/93/27 93/141/27 94/145/20 +f 78/95/28 90/142/28 91/146/22 +f 75/78/18 87/144/18 88/147/17 +f 82/99/20 94/145/20 95/148/19 +f 79/84/22 91/152/22 92/149/21 +f 76/79/17 88/147/17 89/150/23 +o Shell1 +v 0.250000 0.937500 0.000000 +v 0.156250 0.912380 0.000000 +v 0.087620 0.843750 0.000000 +v 0.062500 0.750000 0.000000 +v 0.087620 0.656250 0.000000 +v 0.156250 0.587620 0.000000 +v 0.250000 0.562500 0.000000 +v 0.343750 0.587620 0.000000 +v 0.412380 0.656250 0.000000 +v 0.437500 0.750000 0.000000 +v 0.412380 0.843750 0.000000 +v 0.343750 0.912380 0.000000 +v 0.250000 0.937500 1.000000 +v 0.156250 0.912380 1.000000 +v 0.087620 0.843750 1.000000 +v 0.062500 0.750000 1.000000 +v 0.087620 0.656250 1.000000 +v 0.156250 0.587620 1.000000 +v 0.250000 0.562500 1.000000 +v 0.343750 0.587620 1.000000 +v 0.412380 0.656250 1.000000 +v 0.437500 0.750000 1.000000 +v 0.412380 0.843750 1.000000 +v 0.343750 0.912380 1.000000 +v 0.250000 0.960938 0.000000 +v 0.144531 0.932677 0.000000 +v 0.067323 0.855469 0.000000 +v 0.039062 0.750000 0.000000 +v 0.067323 0.644531 0.000000 +v 0.144531 0.567323 0.000000 +v 0.250000 0.539062 0.000000 +v 0.355469 0.567322 0.000000 +v 0.432677 0.644531 0.000000 +v 0.460938 0.750000 0.000000 +v 0.432677 0.855469 0.000000 +v 0.355469 0.932677 0.000000 +v 0.250000 0.960938 -0.062500 +v 0.144531 0.932677 -0.062500 +v 0.067323 0.855469 -0.062500 +v 0.039062 0.750000 -0.062500 +v 0.067323 0.644531 -0.062500 +v 0.144531 0.567323 -0.062500 +v 0.250000 0.539062 -0.062500 +v 0.355469 0.567322 -0.062500 +v 0.432677 0.644531 -0.062500 +v 0.460938 0.750000 -0.062500 +v 0.432677 0.855469 -0.062500 +v 0.355469 0.932677 -0.062500 +vt 0.185185 0.500000 +vt 0.189815 0.488636 +vt 0.189815 0.500000 +vt 0.185185 0.431818 +vt 0.189815 0.443182 +vt 0.185185 0.443182 +vt 0.185185 0.409091 +vt 0.189815 0.397727 +vt 0.189815 0.409091 +vt 0.189815 0.511364 +vt 0.185185 0.511364 +vt 0.189815 0.454545 +vt 0.185185 0.454545 +vt 0.185185 0.465909 +vt 0.189815 0.477273 +vt 0.185185 0.477273 +vt 0.189815 0.420455 +vt 0.185185 0.420455 +vt 0.189815 0.522727 +vt 0.185185 0.522727 +vt 0.189815 0.465909 +vt 0.185185 0.488636 +vt 0.189815 0.431818 +vt 0.185185 0.534091 +vt 0.189815 0.534091 +vt 0.210648 0.437320 +vt 0.196742 0.427467 +vt 0.210648 0.397907 +vt 0.196303 0.446021 +vt 0.220365 0.446021 +vt 0.208334 0.471595 +vt 0.185185 0.397727 +vt 0.224554 0.427467 +vt 0.218677 0.434680 +vt 0.202619 0.434680 +vt 0.194591 0.417614 +vt 0.196742 0.407760 +vt 0.202619 0.400547 +vt 0.218677 0.400547 +vt 0.224554 0.407760 +vt 0.226705 0.417614 +vt 0.201388 0.469311 +vt 0.196303 0.463070 +vt 0.194441 0.454545 +vt 0.201388 0.439780 +vt 0.208334 0.437496 +vt 0.215280 0.439780 +vt 0.222226 0.454545 +vt 0.220365 0.463070 +vt 0.215280 0.469311 +vt 0.111111 0.488636 +vt 0.111111 0.431818 +vt 0.111111 0.397727 +vt 0.111111 0.500000 +vt 0.111111 0.443182 +vt 0.111111 0.465909 +vt 0.111111 0.409091 +vt 0.111111 0.511364 +vt 0.111111 0.454545 +vt 0.111111 0.477273 +vt 0.111111 0.420455 +vt 0.111111 0.522727 +vt 0.194444 0.454545 +vt 0.194444 0.477273 +vt 0.194444 0.420455 +vt 0.194444 0.522727 +vt 0.194444 0.465909 +vt 0.194444 0.488636 +vt 0.194444 0.431818 +vt 0.194444 0.534091 +vt 0.194444 0.500000 +vt 0.194444 0.443182 +vt 0.194444 0.409091 +vt 0.194444 0.511364 +vt 0.111111 0.534091 +vt 0.194444 0.397727 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +s off +f 100/153/29 123/154/29 124/155/29 +f 106/156/29 131/157/29 107/158/29 +f 104/159/29 127/160/29 128/161/29 +f 100/153/29 125/162/29 101/163/29 +f 107/158/29 132/164/29 108/165/29 +f 97/166/29 122/167/29 98/168/29 +f 104/159/29 129/169/29 105/170/29 +f 101/163/29 126/171/29 102/172/29 +f 97/166/29 132/164/29 121/173/29 +f 98/168/29 123/154/29 99/174/29 +f 106/156/29 129/169/29 130/175/29 +f 103/176/29 126/171/29 127/177/29 +f 133/178/30 143/179/30 139/180/30 +f 113/181/29 117/182/29 109/183/29 +f 100/153/29 99/174/29 123/154/29 +f 106/156/29 130/175/29 131/157/29 +f 104/159/29 103/184/29 127/160/29 +f 100/153/29 124/155/29 125/162/29 +f 107/158/29 131/157/29 132/164/29 +f 97/166/29 121/173/29 122/167/29 +f 104/159/29 128/161/29 129/169/29 +f 101/163/29 125/162/29 126/171/29 +f 97/166/29 108/165/29 132/164/29 +f 98/168/29 122/167/29 123/154/29 +f 106/156/29 105/170/29 129/169/29 +f 103/176/29 102/172/29 126/171/29 +f 135/185/30 134/186/30 133/178/30 +f 133/178/30 144/187/30 143/179/30 +f 143/179/30 142/188/30 139/180/30 +f 142/188/30 141/189/30 139/180/30 +f 141/189/30 140/190/30 139/180/30 +f 139/180/30 138/191/30 137/192/30 +f 137/192/30 136/193/30 139/180/30 +f 136/193/30 135/185/30 139/180/30 +f 135/185/30 133/178/30 139/180/30 +f 109/183/29 110/194/29 111/195/29 +f 111/195/29 112/196/29 113/181/29 +f 113/181/29 114/197/29 117/182/29 +f 114/197/29 115/198/29 117/182/29 +f 115/198/29 116/199/29 117/182/29 +f 117/182/29 118/200/29 119/201/29 +f 119/201/29 120/202/29 109/183/29 +f 109/183/29 111/195/29 113/181/29 +f 117/182/29 119/201/29 109/183/29 +s 1 +f 100/153/31 111/203/32 99/174/32 +f 107/158/33 118/204/34 106/156/34 +f 104/159/35 115/205/36 103/184/36 +f 101/163/37 112/206/31 100/153/31 +f 108/165/38 119/207/33 107/158/33 +f 98/168/39 109/208/40 97/166/40 +f 105/170/41 116/209/35 104/159/35 +f 102/172/42 113/210/37 101/163/37 +f 97/166/40 120/211/38 108/165/38 +f 99/174/32 110/212/39 98/168/39 +f 106/156/34 117/213/41 105/170/41 +f 103/176/36 114/214/42 102/172/42 +f 131/157/33 144/215/38 132/164/38 +f 121/173/40 134/216/39 122/167/39 +f 128/161/35 141/217/41 129/169/41 +f 125/162/37 138/218/42 126/171/42 +f 132/164/38 133/219/40 121/173/40 +f 122/167/39 135/220/32 123/154/32 +f 129/169/41 142/221/34 130/175/34 +f 126/171/42 139/222/36 127/177/36 +f 123/154/32 136/223/31 124/155/31 +f 130/175/34 143/224/33 131/157/33 +f 127/160/36 140/225/35 128/161/35 +f 124/155/31 137/226/37 125/162/37 +f 100/153/31 112/206/31 111/203/32 +f 107/158/33 119/207/33 118/204/34 +f 104/159/35 116/209/35 115/205/36 +f 101/163/37 113/210/37 112/206/31 +f 108/165/38 120/211/38 119/207/33 +f 98/168/39 110/212/39 109/208/40 +f 105/170/41 117/213/41 116/209/35 +f 102/172/42 114/214/42 113/210/37 +f 97/166/40 109/208/40 120/211/38 +f 99/174/32 111/203/32 110/212/39 +f 106/156/34 118/204/34 117/213/41 +f 103/176/36 115/227/36 114/214/42 +f 131/157/33 143/224/33 144/215/38 +f 121/173/40 133/219/40 134/216/39 +f 128/161/35 140/225/35 141/217/41 +f 125/162/37 137/226/37 138/218/42 +f 132/164/38 144/215/38 133/219/40 +f 122/167/39 134/216/39 135/220/32 +f 129/169/41 141/217/41 142/221/34 +f 126/171/42 138/218/42 139/222/36 +f 123/154/32 135/220/32 136/223/31 +f 130/175/34 142/221/34 143/224/33 +f 127/160/36 139/228/36 140/225/35 +f 124/155/31 136/223/31 137/226/37 +o Shell3 +v 0.250000 0.437500 0.000000 +v 0.156250 0.412380 0.000000 +v 0.087620 0.343750 0.000000 +v 0.062500 0.250000 0.000000 +v 0.087620 0.156250 0.000000 +v 0.156250 0.087620 0.000000 +v 0.250000 0.062500 0.000000 +v 0.343750 0.087620 0.000000 +v 0.412380 0.156250 0.000000 +v 0.437500 0.250000 0.000000 +v 0.412380 0.343750 0.000000 +v 0.343750 0.412380 0.000000 +v 0.250000 0.437500 1.000000 +v 0.156250 0.412380 1.000000 +v 0.087620 0.343750 1.000000 +v 0.062500 0.250000 1.000000 +v 0.087620 0.156250 1.000000 +v 0.156250 0.087620 1.000000 +v 0.250000 0.062500 1.000000 +v 0.343750 0.087620 1.000000 +v 0.412380 0.156250 1.000000 +v 0.437500 0.250000 1.000000 +v 0.412380 0.343750 1.000000 +v 0.343750 0.412380 1.000000 +v 0.250000 0.460938 0.000000 +v 0.144531 0.432677 0.000000 +v 0.067323 0.355469 0.000000 +v 0.039062 0.250000 0.000000 +v 0.067323 0.144531 0.000000 +v 0.144531 0.067323 0.000000 +v 0.250000 0.039062 0.000000 +v 0.355469 0.067322 0.000000 +v 0.432677 0.144531 0.000000 +v 0.460938 0.250000 0.000000 +v 0.432677 0.355469 0.000000 +v 0.355469 0.432677 0.000000 +v 0.250000 0.460938 -0.062500 +v 0.144531 0.432677 -0.062500 +v 0.067323 0.355469 -0.062500 +v 0.039062 0.250000 -0.062500 +v 0.067323 0.144531 -0.062500 +v 0.144531 0.067323 -0.062500 +v 0.250000 0.039062 -0.062500 +v 0.355469 0.067322 -0.062500 +v 0.432677 0.144531 -0.062500 +v 0.460938 0.250000 -0.062500 +v 0.432677 0.355469 -0.062500 +v 0.355469 0.432677 -0.062500 +vt 0.185185 0.500000 +vt 0.189815 0.488636 +vt 0.189815 0.500000 +vt 0.185185 0.431818 +vt 0.189815 0.443182 +vt 0.185185 0.443182 +vt 0.185185 0.409091 +vt 0.189815 0.397727 +vt 0.189815 0.409091 +vt 0.189815 0.511364 +vt 0.185185 0.511364 +vt 0.189815 0.454545 +vt 0.185185 0.454545 +vt 0.185185 0.465909 +vt 0.189815 0.477273 +vt 0.185185 0.477273 +vt 0.189815 0.420455 +vt 0.185185 0.420455 +vt 0.189815 0.522727 +vt 0.185185 0.522727 +vt 0.189815 0.465909 +vt 0.185185 0.488636 +vt 0.189815 0.431818 +vt 0.185185 0.534091 +vt 0.189815 0.534091 +vt 0.210648 0.437320 +vt 0.196742 0.427467 +vt 0.210648 0.397907 +vt 0.196303 0.446021 +vt 0.220365 0.446021 +vt 0.208334 0.471595 +vt 0.185185 0.397727 +vt 0.224554 0.427467 +vt 0.218677 0.434680 +vt 0.202619 0.434680 +vt 0.194591 0.417614 +vt 0.196742 0.407760 +vt 0.202619 0.400547 +vt 0.218677 0.400547 +vt 0.224554 0.407760 +vt 0.226705 0.417614 +vt 0.201388 0.469311 +vt 0.196303 0.463070 +vt 0.194441 0.454545 +vt 0.201388 0.439780 +vt 0.208334 0.437496 +vt 0.215280 0.439780 +vt 0.222226 0.454545 +vt 0.220365 0.463070 +vt 0.215280 0.469311 +vt 0.111111 0.488636 +vt 0.111111 0.431818 +vt 0.111111 0.397727 +vt 0.111111 0.500000 +vt 0.111111 0.443182 +vt 0.111111 0.465909 +vt 0.111111 0.409091 +vt 0.111111 0.511364 +vt 0.111111 0.454545 +vt 0.111111 0.477273 +vt 0.111111 0.420455 +vt 0.111111 0.522727 +vt 0.194444 0.454545 +vt 0.194444 0.477273 +vt 0.194444 0.420455 +vt 0.194444 0.522727 +vt 0.194444 0.465909 +vt 0.194444 0.488636 +vt 0.194444 0.431818 +vt 0.194444 0.534091 +vt 0.194444 0.500000 +vt 0.194444 0.443182 +vt 0.194444 0.409091 +vt 0.194444 0.511364 +vt 0.111111 0.534091 +vt 0.194444 0.397727 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn -1.0000 -0.0000 0.0000 +vn -0.8660 0.5000 0.0000 +vn 0.8660 0.5000 0.0000 +vn 1.0000 -0.0000 0.0000 +vn 0.5000 -0.8660 0.0000 +vn -0.0000 -1.0000 0.0000 +vn -0.8660 -0.5000 0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.8660 -0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +s off +f 148/229/43 171/230/43 172/231/43 +f 154/232/43 179/233/43 155/234/43 +f 152/235/43 175/236/43 176/237/43 +f 148/229/43 173/238/43 149/239/43 +f 155/234/43 180/240/43 156/241/43 +f 145/242/43 170/243/43 146/244/43 +f 152/235/43 177/245/43 153/246/43 +f 149/239/43 174/247/43 150/248/43 +f 145/242/43 180/240/43 169/249/43 +f 146/244/43 171/230/43 147/250/43 +f 154/232/43 177/245/43 178/251/43 +f 151/252/43 174/247/43 175/253/43 +f 181/254/44 191/255/44 187/256/44 +f 161/257/43 165/258/43 157/259/43 +f 148/229/43 147/250/43 171/230/43 +f 154/232/43 178/251/43 179/233/43 +f 152/235/43 151/260/43 175/236/43 +f 148/229/43 172/231/43 173/238/43 +f 155/234/43 179/233/43 180/240/43 +f 145/242/43 169/249/43 170/243/43 +f 152/235/43 176/237/43 177/245/43 +f 149/239/43 173/238/43 174/247/43 +f 145/242/43 156/241/43 180/240/43 +f 146/244/43 170/243/43 171/230/43 +f 154/232/43 153/246/43 177/245/43 +f 151/252/43 150/248/43 174/247/43 +f 183/261/44 182/262/44 181/254/44 +f 181/254/44 192/263/44 191/255/44 +f 191/255/44 190/264/44 187/256/44 +f 190/264/44 189/265/44 187/256/44 +f 189/265/44 188/266/44 187/256/44 +f 187/256/44 186/267/44 185/268/44 +f 185/268/44 184/269/44 187/256/44 +f 184/269/44 183/261/44 187/256/44 +f 183/261/44 181/254/44 187/256/44 +f 157/259/43 158/270/43 159/271/43 +f 159/271/43 160/272/43 161/257/43 +f 161/257/43 162/273/43 165/258/43 +f 162/273/43 163/274/43 165/258/43 +f 163/274/43 164/275/43 165/258/43 +f 165/258/43 166/276/43 167/277/43 +f 167/277/43 168/278/43 157/259/43 +f 157/259/43 159/271/43 161/257/43 +f 165/258/43 167/277/43 157/259/43 +s 1 +f 148/229/45 159/279/46 147/250/46 +f 155/234/47 166/280/48 154/232/48 +f 152/235/49 163/281/50 151/260/50 +f 149/239/51 160/282/45 148/229/45 +f 156/241/52 167/283/47 155/234/47 +f 146/244/53 157/284/54 145/242/54 +f 153/246/55 164/285/49 152/235/49 +f 150/248/56 161/286/51 149/239/51 +f 145/242/54 168/287/52 156/241/52 +f 147/250/46 158/288/53 146/244/53 +f 154/232/48 165/289/55 153/246/55 +f 151/252/50 162/290/56 150/248/56 +f 179/233/47 192/291/52 180/240/52 +f 169/249/54 182/292/53 170/243/53 +f 176/237/49 189/293/55 177/245/55 +f 173/238/51 186/294/56 174/247/56 +f 180/240/52 181/295/54 169/249/54 +f 170/243/53 183/296/46 171/230/46 +f 177/245/55 190/297/48 178/251/48 +f 174/247/56 187/298/50 175/253/50 +f 171/230/46 184/299/45 172/231/45 +f 178/251/48 191/300/47 179/233/47 +f 175/236/50 188/301/49 176/237/49 +f 172/231/45 185/302/51 173/238/51 +f 148/229/45 160/282/45 159/279/46 +f 155/234/47 167/283/47 166/280/48 +f 152/235/49 164/285/49 163/281/50 +f 149/239/51 161/286/51 160/282/45 +f 156/241/52 168/287/52 167/283/47 +f 146/244/53 158/288/53 157/284/54 +f 153/246/55 165/289/55 164/285/49 +f 150/248/56 162/290/56 161/286/51 +f 145/242/54 157/284/54 168/287/52 +f 147/250/46 159/279/46 158/288/53 +f 154/232/48 166/280/48 165/289/55 +f 151/252/50 163/303/50 162/290/56 +f 179/233/47 191/300/47 192/291/52 +f 169/249/54 181/295/54 182/292/53 +f 176/237/49 188/301/49 189/293/55 +f 173/238/51 185/302/51 186/294/56 +f 180/240/52 192/291/52 181/295/54 +f 170/243/53 182/292/53 183/296/46 +f 177/245/55 189/293/55 190/297/48 +f 174/247/56 186/294/56 187/298/50 +f 171/230/46 183/296/46 184/299/45 +f 178/251/48 190/297/48 191/300/47 +f 175/236/50 187/304/50 188/301/49 +f 172/231/45 184/299/45 185/302/51 +o Barrel v 0.466506 0.375000 0.000000 v 0.466506 0.375000 7.250000 v 0.500000 0.250000 0.000000 @@ -141,12 +1073,6 @@ v 0.375000 0.500000 0.000000 v 0.375000 0.500000 7.250000 v -0.375000 0.500000 0.000000 v -0.375000 0.500000 7.250000 -v -0.500000 0.000000 0.000000 -v 0.500000 0.000000 0.000000 -v -0.500000 1.000000 -0.750000 -v -0.500000 1.000000 0.000000 -v 0.500000 1.000000 0.000000 -v 0.500000 1.000000 -0.750000 v 0.187500 -0.750000 0.500000 v -0.187500 -0.750000 0.500000 v -0.625000 -0.500000 0.656250 @@ -173,32 +1099,6 @@ v 0.187500 -0.250000 1.375000 v -0.187500 -0.250000 1.375000 v 0.187500 0.000000 1.875000 v -0.187500 0.000000 1.875000 -v 0.500000 0.500000 0.000000 -v 0.500000 0.500000 -0.750000 -v 0.500000 0.000000 1.000000 -v -0.500000 0.000000 1.000000 -v -0.500000 0.500000 0.000000 -v -0.500000 0.500000 -0.750000 -v 0.625000 0.500000 0.000000 -v 0.625000 0.500000 -0.750000 -v 0.625000 0.000000 1.000000 -v -0.625000 0.000000 1.000000 -v -0.625000 0.500000 0.000000 -v -0.625000 0.500000 -0.750000 -v 0.500000 -0.125000 1.000000 -v -0.500000 -0.125000 1.000000 -v 0.625000 0.000000 -0.750000 -v -0.625000 0.000000 -0.750000 -v 0.500000 -0.125000 -0.750000 -v -0.500000 -0.125000 -0.750000 -v 0.500000 1.000000 0.000000 -v 0.125000 1.000000 0.000000 -v 0.500000 1.312500 -0.312500 -v 0.125000 1.312500 -0.312500 -v 0.500000 1.312500 -0.625000 -v 0.125000 1.312500 -0.625000 -v 0.500000 1.000000 -0.625000 -v 0.125000 1.000000 -0.625000 v -0.500000 1.000000 1.000000 v -0.500000 1.000000 0.000000 v -0.250000 1.000000 1.000000 @@ -227,50 +1127,6 @@ v 0.250000 1.000000 0.500000 v 0.250000 1.312500 0.500000 v 0.250000 1.000000 0.000000 v 0.250000 1.312500 0.000000 -v 0.125000 1.000000 1.000000 -v -0.125000 1.000000 1.000000 -v 0.125000 1.000000 -0.625000 -v -0.125000 1.000000 -0.625000 -v 0.125000 1.312500 1.000000 -v -0.125000 1.312500 1.000000 -v 0.125000 1.312500 -0.625000 -v -0.125000 1.312500 -0.625000 -v 0.500000 1.312500 -0.625000 -v 0.500000 1.000000 -0.625000 -v -0.500000 1.312500 -0.625000 -v -0.500000 1.000000 -0.625000 -v 0.500000 1.000000 -0.875000 -v 0.500000 1.312500 -0.875000 -v -0.500000 1.312500 -0.875000 -v -0.500000 1.000000 -0.875000 -v 0.500000 1.062500 -0.937500 -v 0.500000 1.250000 -0.937500 -v -0.500000 1.250000 -0.937500 -v -0.500000 1.062500 -0.937500 -v 0.187500 -0.750000 0.500000 -v 0.187500 -0.125000 0.250000 -v 0.187500 -0.750000 1.000000 -v 0.187500 -0.125000 1.000000 -v 0.437500 -0.750000 0.500000 -v 0.437500 -0.125000 0.250000 -v 0.437500 -0.750000 1.000000 -v 0.437500 -0.125000 1.000000 -v 0.437500 -0.500000 0.500000 -v 0.437500 -0.323223 0.573223 -v 0.437500 -0.250000 0.750000 -v 0.437500 -0.323223 0.926777 -v 0.437500 -0.500000 1.000000 -v 0.437500 -0.676777 0.926777 -v 0.437500 -0.750000 0.750000 -v 0.437500 -0.676777 0.573223 -v 0.559000 -0.323223 0.573223 -v 0.559000 -0.500000 0.500000 -v 0.559000 -0.250000 0.750000 -v 0.559000 -0.323223 0.926777 -v 0.559000 -0.500000 1.000000 -v 0.559000 -0.676777 0.926777 -v 0.559000 -0.750000 0.750000 -v 0.559000 -0.676777 0.573223 v 0.250000 1.000000 1.000000 v 0.250000 1.312500 1.000000 v 0.250000 1.000000 2.000000 @@ -333,38 +1189,6 @@ v -0.250000 0.000000 4.875000 v -0.250000 -0.250000 6.125000 v -0.250000 -0.250000 6.000000 v -0.250000 0.000000 6.000000 -v -0.500000 0.125000 -0.750000 -v -0.250000 -0.125000 -0.750000 -v 0.250000 -0.125000 -0.750000 -v 0.500000 0.125000 -0.750000 -v -0.250000 0.875000 -0.750000 -v -0.500000 0.625000 -0.750000 -v 0.500000 0.625000 -0.750000 -v 0.250000 0.875000 -0.750000 -v -0.250000 -0.125000 -2.500000 -v -0.500000 0.125000 -2.500000 -v 0.500000 0.125000 -2.500000 -v 0.250000 -0.125000 -2.500000 -v -0.500000 0.625000 -2.500000 -v -0.250000 0.875000 -2.500000 -v 0.250000 0.875000 -2.500000 -v 0.500000 0.625000 -2.500000 -v 0.695083 0.632582 -0.687500 -v 0.750000 0.500000 -0.687500 -v 0.695083 0.367418 -0.687500 -v 0.562500 0.312500 -0.687500 -v 0.429917 0.367417 -0.687500 -v 0.375000 0.500000 -0.687500 -v 0.429917 0.632583 -0.687500 -v 0.562500 0.687500 -0.687500 -v 0.695083 0.632582 -2.562500 -v 0.750000 0.500000 -2.562500 -v 0.562500 0.312500 -2.562500 -v 0.429917 0.367417 -2.562500 -v 0.375000 0.500000 -2.562500 -v 0.429917 0.632583 -2.562500 -v 0.562500 0.687500 -2.562500 -v 0.695083 0.367418 -2.562500 v -0.536612 1.062500 1.224112 v -0.500000 1.062500 1.312500 v -0.536612 1.062500 1.400888 @@ -397,58 +1221,6 @@ v -0.757583 0.187500 1.445082 v -0.812500 0.187500 1.312500 v -0.757583 0.187500 1.179918 v -0.625000 0.187500 1.125000 -v 0.125000 -0.125000 -0.500000 -v -0.125000 -0.125000 -0.500000 -v 0.125000 -2.125000 -1.250000 -v -0.125000 -2.125000 -1.250000 -v 0.125000 -2.125000 -2.000000 -v -0.125000 -2.125000 -2.000000 -v 0.125000 -1.875000 -2.250000 -v -0.125000 -1.875000 -2.250000 -v 0.125000 -0.500000 -1.625000 -v -0.125000 -0.500000 -1.625000 -v 0.125000 -0.250000 -1.625000 -v -0.125000 -0.250000 -1.625000 -v 0.125000 -0.250000 -2.500000 -v -0.125000 -0.250000 -2.500000 -v 0.125000 -0.125000 -2.500000 -v -0.125000 -0.125000 -2.500000 -v 0.125000 -0.125000 -1.500000 -v -0.125000 -0.125000 -1.500000 -v 0.250000 -0.125000 -0.625000 -v 0.250000 -2.125000 -1.375000 -v 0.250000 -2.125000 -1.875000 -v 0.250000 -1.875000 -2.125000 -v 0.250000 -0.500000 -1.500000 -v 0.250000 -0.250000 -1.500000 -v 0.250000 -0.125000 -1.375000 -v -0.250000 -2.125000 -1.375000 -v -0.250000 -0.125000 -0.625000 -v -0.250000 -2.125000 -1.875000 -v -0.250000 -1.875000 -2.125000 -v -0.250000 -0.500000 -1.500000 -v -0.250000 -0.250000 -1.500000 -v -0.250000 -0.125000 -1.375000 -v 0.062500 -2.125000 -1.250000 -v -0.062500 -2.125000 -1.250000 -v 0.062500 -0.375000 0.250000 -v -0.062500 -0.375000 0.250000 -v 0.062500 -0.125000 0.250000 -v -0.062500 -0.125000 0.250000 -v 0.062500 -0.125000 -0.500000 -v -0.062500 -0.125000 -0.500000 -v 0.093750 -0.750000 0.875000 -v -0.093750 -0.750000 0.875000 -v 0.093750 -0.750000 0.687500 -v -0.093750 -0.750000 0.687500 -v 0.093750 -1.750000 0.375000 -v -0.093750 -1.750000 0.375000 -v 0.093750 -1.625000 0.250000 -v -0.093750 -1.625000 0.250000 -v 0.093750 -2.125000 -1.250000 -v -0.093750 -2.125000 -1.250000 -v 0.093750 -2.000000 -1.250000 -v -0.093750 -2.000000 -1.250000 v 0.125000 0.000000 4.750000 v -0.125000 0.000000 4.750000 v 0.125000 -0.750000 3.500000 @@ -459,30 +1231,6 @@ v 0.125000 -0.375000 3.250000 v -0.125000 -0.375000 3.250000 v 0.125000 -0.375000 3.750000 v -0.125000 -0.375000 3.750000 -v 0.000000 0.687500 0.000000 -v -0.093750 0.662380 0.000000 -v -0.162380 0.593750 0.000000 -v -0.187500 0.500000 0.000000 -v -0.162380 0.406250 0.000000 -v -0.093750 0.337620 0.000000 -v 0.000000 0.312500 0.000000 -v 0.093750 0.337620 0.000000 -v 0.162380 0.406250 0.000000 -v 0.187500 0.500000 0.000000 -v 0.162380 0.593750 0.000000 -v 0.093750 0.662380 0.000000 -v 0.062500 0.608253 -0.062500 -v 0.108253 0.562500 -0.062500 -v 0.125000 0.500000 -0.062500 -v 0.108253 0.437500 -0.062500 -v 0.062500 0.391747 -0.062500 -v 0.000000 0.375000 -0.062500 -v -0.062500 0.391747 -0.062500 -v -0.108253 0.437500 -0.062500 -v -0.125000 0.500000 -0.062500 -v -0.108253 0.562500 -0.062500 -v -0.062500 0.608253 -0.062500 -v 0.000000 0.625000 -0.062500 v 0.625000 0.187500 1.125000 v 0.492417 0.187500 1.179918 v 0.437500 0.187500 1.312500 @@ -555,6 +1303,1919 @@ v 0.125000 1.187500 7.000000 v 0.125000 1.187500 6.500000 v -0.125000 1.187500 6.500000 v -0.125000 1.187500 7.000000 +v 0.510000 1.000000 1.000000 +v 0.510000 0.750000 0.000000 +v 0.510000 0.750000 1.000000 +v 0.510000 1.000000 0.000000 +v -0.510000 1.000000 1.000000 +v -0.510000 1.000000 0.000000 +v -0.510000 0.750000 1.000000 +v -0.510000 0.750000 0.000000 +v -0.125000 1.000000 1.000000 +v -0.125000 1.312500 1.000000 +v -0.125000 1.000000 2.000000 +v -0.125000 1.312500 1.250000 +v -0.250000 1.312500 1.000000 +v -0.250000 1.000000 2.000000 +v -0.250000 1.312500 1.250000 +v -0.250000 1.000000 1.000000 +v -0.125000 1.000000 1.000000 +v -0.500000 1.000000 1.000000 +v -0.125000 1.312500 1.000000 +v -0.500000 1.312500 1.000000 +v -0.125000 1.437500 0.875000 +v -0.500000 1.437500 0.875000 +v -0.125000 1.437500 0.625000 +v -0.500000 1.437500 0.625000 +v -0.125000 1.312500 0.500000 +v -0.500000 1.312500 0.500000 +v -0.125000 1.000000 0.500000 +v -0.500000 1.000000 0.500000 +v -0.187500 1.437500 0.875000 +v -0.187500 1.437500 0.625000 +v -0.187500 1.562500 0.875000 +v -0.187500 1.562500 0.625000 +v -0.125000 1.437500 0.625000 +v -0.125000 1.437500 0.875000 +v -0.125000 1.562500 0.625000 +v -0.125000 1.562500 0.875000 +v -0.250000 1.312500 0.500000 +v -0.250000 1.000000 0.500000 +v -0.250000 1.312500 0.000000 +v -0.250000 1.000000 0.000000 +v -0.125000 1.000000 0.500000 +v -0.125000 1.312500 0.500000 +v -0.125000 1.000000 0.000000 +v -0.125000 1.312500 0.000000 +v 0.000000 0.687500 0.000000 +v -0.093750 0.662380 0.000000 +v -0.162380 0.593750 0.000000 +v -0.187500 0.500000 0.000000 +v -0.162380 0.406250 0.000000 +v -0.093750 0.337620 0.000000 +v 0.000000 0.312500 0.000000 +v 0.093750 0.337620 0.000000 +v 0.162380 0.406250 0.000000 +v 0.187500 0.500000 0.000000 +v 0.162380 0.593750 0.000000 +v 0.093750 0.662380 0.000000 +v 0.062500 0.608253 -0.062500 +v 0.108253 0.562500 -0.062500 +v 0.125000 0.500000 -0.062500 +v 0.108253 0.437500 -0.062500 +v 0.062500 0.391747 -0.062500 +v 0.000000 0.375000 -0.062500 +v -0.062500 0.391747 -0.062500 +v -0.108253 0.437500 -0.062500 +v -0.125000 0.500000 -0.062500 +v -0.108253 0.562500 -0.062500 +v -0.062500 0.608253 -0.062500 +v 0.000000 0.625000 -0.062500 +vt 0.055443 0.000276 +vt 0.062346 0.008193 +vt 0.055443 0.005923 +vt 0.071383 0.011570 +vt 0.064646 0.003302 +vt 0.069248 0.022865 +vt 0.067398 0.014394 +vt 0.071383 0.034160 +vt 0.073849 0.022865 +vt 0.002691 0.102479 +vt 0.004826 0.113774 +vt 0.000225 0.113774 +vt 0.002691 0.125069 +vt 0.018631 0.091185 +vt 0.011729 0.099102 +vt 0.009428 0.094211 +vt 0.006676 0.105303 +vt 0.009428 0.003302 +vt 0.006676 0.014394 +vt 0.002691 0.011570 +vt 0.018631 0.005923 +vt 0.011729 0.008193 +vt 0.002691 0.034160 +vt 0.004826 0.022865 +vt 0.006676 0.031336 +vt 0.000225 0.022865 +vt 0.071383 0.125069 +vt 0.069248 0.113774 +vt 0.073849 0.113774 +vt 0.071383 0.102479 +vt 0.067398 0.105303 +vt 0.064646 0.094211 +vt 0.055443 0.096832 +vt 0.055443 0.091185 +vt 0.087963 0.329545 +vt 0.092593 0.340909 +vt 0.083333 0.335227 +vt 0.071383 0.056749 +vt 0.069248 0.068044 +vt 0.067398 0.059573 +vt 0.071383 0.079339 +vt 0.073849 0.068044 +vt 0.064646 0.087607 +vt 0.067398 0.076515 +vt 0.055443 0.084986 +vt 0.062346 0.082716 +vt 0.002691 0.147658 +vt 0.004826 0.158953 +vt 0.000225 0.158953 +vt 0.111111 0.431818 +vt 0.111111 0.340909 +vt 0.074074 0.340909 +vt 0.092593 0.431818 +vt 0.074074 0.431818 +vt 0.037037 0.431818 +vt 0.037037 0.340909 +vt 0.018631 0.181542 +vt 0.025533 0.173625 +vt 0.048541 0.173625 +vt 0.069248 0.158953 +vt 0.071383 0.147658 +vt 0.073849 0.158953 +vt 0.073849 0.181542 +vt 0.062346 0.173625 +vt 0.067398 0.167424 +vt 0.009428 0.087607 +vt 0.018631 0.084986 +vt 0.018631 0.090633 +vt 0.006676 0.076515 +vt 0.011729 0.082716 +vt 0.002691 0.079339 +vt 0.004826 0.068044 +vt 0.002691 0.056749 +vt 0.000225 0.068044 +vt 0.000225 0.181542 +vt 0.006676 0.167424 +vt 0.011729 0.173625 +vt 0.011729 0.053372 +vt 0.009428 0.045455 +vt 0.011729 0.037537 +vt 0.048541 0.037537 +vt 0.043488 0.059573 +vt 0.025533 0.053372 +vt 0.018631 0.039807 +vt 0.018631 0.051102 +vt 0.041639 0.068044 +vt 0.030586 0.059573 +vt 0.055443 0.039807 +vt 0.048541 0.053372 +vt 0.043488 0.031336 +vt 0.032436 0.022865 +vt 0.041639 0.022865 +vt 0.062346 0.053372 +vt 0.062346 0.037537 +vt 0.064646 0.045455 +vt 0.055443 0.051102 +vt 0.030586 0.014394 +vt 0.043488 0.014394 +vt 0.025533 0.008193 +vt 0.048541 0.008193 +vt 0.043488 0.076515 +vt 0.032436 0.068044 +vt 0.048541 0.082716 +vt 0.055443 0.090633 +vt 0.025533 0.082716 +vt 0.011729 0.128446 +vt 0.006676 0.122245 +vt 0.011729 0.144281 +vt 0.009428 0.136364 +vt 0.062346 0.144281 +vt 0.064646 0.136364 +vt 0.062346 0.128446 +vt 0.018631 0.142011 +vt 0.055443 0.142011 +vt 0.055443 0.130716 +vt 0.043488 0.105303 +vt 0.032435 0.113774 +vt 0.030586 0.105303 +vt 0.025533 0.099102 +vt 0.048541 0.099102 +vt 0.041639 0.158953 +vt 0.030586 0.167424 +vt 0.032435 0.158953 +vt 0.043488 0.150482 +vt 0.030586 0.150482 +vt 0.048541 0.144281 +vt 0.048541 0.128446 +vt 0.041639 0.113774 +vt 0.030586 0.122245 +vt 0.025533 0.144281 +vt 0.018631 0.130716 +vt 0.025533 0.128446 +vt 0.502268 0.673238 +vt 0.506944 0.670861 +vt 0.506944 0.687094 +vt 0.486111 0.670455 +vt 0.430556 0.704545 +vt 0.430556 0.670455 +vt 0.497732 0.673238 +vt 0.497732 0.684717 +vt 0.488379 0.684717 +vt 0.384259 0.704545 +vt 0.347222 0.704545 +vt 0.384259 0.670455 +vt 0.310185 0.704545 +vt 0.347222 0.670455 +vt 0.365741 0.625000 +vt 0.328704 0.602273 +vt 0.467593 0.602273 +vt 0.467593 0.772727 +vt 0.328704 0.772727 +vt 0.365741 0.750000 +vt 0.018519 0.340909 +vt 0.018519 0.431818 +vt 0.000000 0.340909 +vt 0.023148 0.329545 +vt 0.027778 0.335227 +vt -0.000000 0.607955 +vt 0.023148 0.642045 +vt -0.000000 0.642045 +vt 0.023148 0.607955 +vt 0.032407 0.642045 +vt 0.032407 0.607955 +vt 0.050926 0.642045 +vt 0.050926 0.607955 +vt 0.060185 0.642045 +vt 0.060185 0.607955 +vt 0.083333 0.642045 +vt 0.060185 0.653409 +vt 0.060185 0.681818 +vt 0.023148 0.681818 +vt 0.023148 0.596591 +vt 0.120370 0.642045 +vt 0.083333 0.670455 +vt 0.083333 0.642045 +vt 0.083333 0.602273 +vt 0.120370 0.630682 +vt 0.083333 0.630682 +vt 0.143519 0.630682 +vt 0.143519 0.642045 +vt 0.166667 0.562500 +vt 0.185185 0.534091 +vt 0.185185 0.562500 +vt 0.185185 0.573864 +vt 0.166667 0.573864 +vt 0.111111 0.562500 +vt 0.185185 0.602273 +vt 0.648148 0.329545 +vt 0.611111 0.352273 +vt 0.611111 0.329545 +vt 0.134259 0.369318 +vt 0.555556 0.346591 +vt 0.555556 0.369318 +vt 0.555556 0.318182 +vt 0.134259 0.346591 +vt 0.111111 0.318182 +vt 0.111111 0.346591 +vt 0.111111 0.369318 +vt 0.555556 0.397727 +vt 0.578704 0.369318 +vt 0.578704 0.346591 +vt 0.722222 0.375000 +vt 0.722222 0.397727 +vt 0.648148 0.397727 +vt 0.722222 0.306818 +vt 0.722222 0.329545 +vt 0.648148 0.352273 +vt 0.907407 0.034091 +vt 0.916667 0.000000 +vt 0.944444 0.011364 +vt 0.740741 0.284091 +vt 0.722222 0.284091 +vt 0.740741 0.375000 +vt 0.740741 0.397727 +vt 0.750000 0.397727 +vt 0.731481 0.363636 +vt 0.740741 0.363636 +vt 0.750000 0.306818 +vt 0.740741 0.306818 +vt 0.731481 0.318182 +vt 0.805556 0.601731 +vt 0.796738 0.590909 +vt 0.805556 0.580087 +vt 0.736111 0.669642 +vt 0.722884 0.653409 +vt 0.736111 0.637176 +vt 0.777277 0.653381 +vt 0.764050 0.669614 +vt 0.750823 0.653381 +vt 0.726852 0.534091 +vt 0.837963 0.568182 +vt 0.763889 0.534091 +vt 0.763889 0.534091 +vt 0.652778 0.568182 +vt 0.726852 0.534091 +vt 0.777277 0.653381 +vt 0.764050 0.669614 +vt 0.750823 0.653381 +vt 0.736111 0.669642 +vt 0.722884 0.653409 +vt 0.736111 0.637176 +vt 0.805556 0.601731 +vt 0.796738 0.590909 +vt 0.805556 0.580087 +vt 0.069444 0.585227 +vt 0.087963 0.596591 +vt 0.069444 0.596591 +vt 0.087963 0.568182 +vt 0.069444 0.579545 +vt 0.069444 0.568182 +vt 0.087963 0.585227 +vt 0.097222 0.579545 +vt 0.097222 0.585227 +vt 0.087963 0.579545 +vt 0.060185 0.585227 +vt 0.083333 0.477273 +vt 0.101852 0.488636 +vt 0.083333 0.488636 +vt 0.083333 0.443182 +vt 0.101852 0.454545 +vt 0.083333 0.454545 +vt 0.101852 0.477273 +vt 0.111111 0.488636 +vt 0.074074 0.477273 +vt 0.101852 0.465909 +vt 0.083333 0.500000 +vt 0.101852 0.443182 +vt 0.111111 0.454545 +vt 0.074074 0.443182 +vt 0.101852 0.431818 +vt 0.083333 0.465909 +vt 0.083333 0.443182 +vt 0.101852 0.454545 +vt 0.083333 0.454545 +vt 0.101852 0.443182 +vt 0.111111 0.454545 +vt 0.074074 0.443182 +vt 0.101852 0.431818 +vt 0.083333 0.465909 +vt 0.055556 0.562500 +vt 0.037037 0.505682 +vt 0.055556 0.505682 +vt 0.111111 0.522727 +vt 0.074074 0.545455 +vt 0.074074 0.522727 +vt 0.018519 0.545455 +vt 0.018519 0.522727 +vt 0.092593 0.500000 +vt 0.074074 0.500000 +vt 0.092593 0.568182 +vt 0.111111 0.545455 +vt 1.000000 0.863636 +vt 0.555556 1.000000 +vt 0.555556 0.863636 +vt 0.555556 1.000000 +vt 1.000000 0.863636 +vt 1.000000 1.000000 +vt 0.166667 0.562500 +vt 0.185185 0.534091 +vt 0.185185 0.562500 +vt 0.185185 0.573864 +vt 0.166667 0.573864 +vt 0.111111 0.562500 +vt 0.185185 0.602273 +vt -0.000000 0.607955 +vt 0.023148 0.642045 +vt -0.000000 0.642045 +vt 0.023148 0.607955 +vt 0.032407 0.642045 +vt 0.032407 0.607955 +vt 0.050926 0.642045 +vt 0.050926 0.607955 +vt 0.060185 0.642045 +vt 0.060185 0.607955 +vt 0.083333 0.642045 +vt 0.060185 0.653409 +vt 0.060185 0.681818 +vt 0.023148 0.681818 +vt 0.023148 0.596591 +vt 0.069444 0.585227 +vt 0.087963 0.596591 +vt 0.069444 0.596591 +vt 0.087963 0.568182 +vt 0.069444 0.579545 +vt 0.069444 0.568182 +vt 0.087963 0.585227 +vt 0.097222 0.579545 +vt 0.097222 0.585227 +vt 0.087963 0.579545 +vt 0.060185 0.585227 +vt 0.120370 0.642045 +vt 0.083333 0.670455 +vt 0.083333 0.642045 +vt 0.083333 0.602273 +vt 0.120370 0.630682 +vt 0.083333 0.630682 +vt 0.143519 0.630682 +vt 0.143519 0.642045 +vt 0.196368 0.480158 +vt 0.220299 0.480158 +vt 0.208333 0.505593 +vt 0.211665 0.522687 +vt 0.203704 0.528328 +vt 0.195742 0.511404 +vt 0.067398 0.031336 +vt 0.018631 0.096832 +vt 0.018631 0.000276 +vt 0.067398 0.122245 +vt 0.062346 0.099102 +vt 0.092593 0.318182 +vt 0.006676 0.150482 +vt 0.055443 0.175895 +vt 0.055443 0.181542 +vt 0.018631 0.175895 +vt 0.043488 0.167424 +vt 0.067398 0.150482 +vt 0.006676 0.059573 +vt 0.030586 0.031336 +vt 0.025533 0.037537 +vt 0.030586 0.076515 +vt 0.043488 0.122245 +vt 0.511621 0.673238 +vt 0.513558 0.678977 +vt 0.511621 0.684717 +vt 0.502268 0.684717 +vt 0.500331 0.678977 +vt 0.486111 0.704545 +vt 0.486442 0.678978 +vt 0.488379 0.673238 +vt 0.493056 0.670861 +vt 0.499669 0.678978 +vt 0.493056 0.687094 +vt 0.310185 0.670455 +vt 0.000000 0.431818 +vt 0.018519 0.318182 +vt 0.083333 0.607955 +vt 0.023148 0.653409 +vt 0.023148 0.568182 +vt 0.060185 0.568182 +vt 0.060185 0.596591 +vt 0.120370 0.670455 +vt 0.120370 0.602273 +vt 0.111111 0.534091 +vt 0.111111 0.573864 +vt 0.111111 0.602273 +vt 0.111111 0.397727 +vt 0.722222 0.352273 +vt 0.648148 0.284091 +vt 0.944444 0.034091 +vt 0.935185 0.045455 +vt 0.916667 0.045455 +vt 0.907407 0.011364 +vt 0.935185 0.000000 +vt 0.750000 0.375000 +vt 0.750000 0.284091 +vt 0.740741 0.318182 +vt 0.811791 0.583257 +vt 0.814373 0.590909 +vt 0.811791 0.598561 +vt 0.799320 0.598561 +vt 0.799320 0.583257 +vt 0.745464 0.641931 +vt 0.749338 0.653409 +vt 0.745464 0.664888 +vt 0.726758 0.664888 +vt 0.726758 0.641931 +vt 0.754698 0.641903 +vt 0.764050 0.637148 +vt 0.773403 0.641903 +vt 0.773403 0.664860 +vt 0.754698 0.664860 +vt 0.745370 0.500000 +vt 0.652778 0.568182 +vt 0.745370 0.500000 +vt 0.837963 0.568182 +vt 0.754698 0.641903 +vt 0.764050 0.637148 +vt 0.773403 0.641903 +vt 0.773403 0.664860 +vt 0.754698 0.664860 +vt 0.745464 0.641931 +vt 0.749338 0.653409 +vt 0.745464 0.664888 +vt 0.726758 0.664888 +vt 0.726758 0.641931 +vt 0.811791 0.583257 +vt 0.814373 0.590909 +vt 0.811791 0.598561 +vt 0.799320 0.598561 +vt 0.799320 0.583257 +vt 0.060185 0.579545 +vt 0.111111 0.477273 +vt 0.074074 0.488636 +vt 0.083333 0.465909 +vt 0.101852 0.500000 +vt 0.111111 0.443182 +vt 0.074074 0.454545 +vt 0.083333 0.431818 +vt 0.101852 0.465909 +vt 0.111111 0.443182 +vt 0.074074 0.454545 +vt 0.083333 0.431818 +vt 0.101852 0.465909 +vt 0.037037 0.562500 +vt 0.074074 0.568182 +vt 1.000000 1.000000 +vt 0.555556 0.863636 +vt 0.111111 0.534091 +vt 0.111111 0.573864 +vt 0.111111 0.602273 +vt 0.083333 0.607955 +vt 0.023148 0.653409 +vt 0.023148 0.568182 +vt 0.060185 0.568182 +vt 0.060185 0.596591 +vt 0.060185 0.579545 +vt 0.120370 0.670455 +vt 0.120370 0.602273 +vt 0.201425 0.503321 +vt 0.196368 0.497115 +vt 0.194517 0.488636 +vt 0.201425 0.473951 +vt 0.208333 0.471680 +vt 0.215242 0.473951 +vt 0.222150 0.488636 +vt 0.220299 0.497115 +vt 0.215242 0.503321 +vt 0.199107 0.526816 +vt 0.195742 0.522687 +vt 0.194510 0.517045 +vt 0.199107 0.507274 +vt 0.203704 0.505763 +vt 0.208300 0.507274 +vt 0.211665 0.511404 +vt 0.212897 0.517045 +vt 0.208300 0.526816 +vt 0.074074 0.090909 +vt 0.611111 0.079545 +vt 0.611111 0.090909 +vt 0.074074 0.079545 +vt 0.611111 0.068182 +vt 0.074074 0.068182 +vt 0.611111 0.056818 +vt 0.074074 0.056818 +vt 0.611111 0.045455 +vt -0.000000 0.863636 +vt 0.532407 0.869318 +vt -0.000000 0.869318 +vt -0.000000 0.880682 +vt 0.532407 0.886364 +vt -0.000000 0.886364 +vt -0.000000 0.909091 +vt 0.532407 0.914773 +vt -0.000000 0.914773 +vt -0.000000 0.926136 +vt 0.532407 0.931818 +vt -0.000000 0.931818 +vt -0.000000 0.875000 +vt 0.532407 0.880682 +vt -0.000000 0.903409 +vt 0.532407 0.909091 +vt -0.000000 0.892045 +vt 0.532407 0.897727 +vt -0.000000 0.897727 +vt -0.000000 0.920455 +vt 0.532407 0.926136 +vt 0.532407 0.875000 +vt 0.532407 0.903409 +vt 0.532407 0.892045 +vt 0.532407 0.920455 +vt 0.074074 0.318182 +vt 0.611111 0.306818 +vt 0.611111 0.318182 +vt 0.074074 0.306818 +vt 0.611111 0.295455 +vt 0.074074 0.295455 +vt 0.611111 0.284091 +vt 0.074074 0.284091 +vt 0.611111 0.272727 +vt -0.000000 0.863636 +vt 0.532407 0.869318 +vt -0.000000 0.869318 +vt -0.000000 0.880682 +vt 0.532407 0.886364 +vt -0.000000 0.886364 +vt -0.000000 0.909091 +vt 0.532407 0.914773 +vt -0.000000 0.914773 +vt -0.000000 0.926136 +vt 0.532407 0.931818 +vt -0.000000 0.931818 +vt -0.000000 0.875000 +vt 0.532407 0.880682 +vt -0.000000 0.903409 +vt 0.532407 0.909091 +vt -0.000000 0.892045 +vt 0.532407 0.897727 +vt -0.000000 0.897727 +vt -0.000000 0.920455 +vt 0.532407 0.926136 +vt 0.532407 0.875000 +vt 0.532407 0.903409 +vt 0.532407 0.892045 +vt 0.532407 0.920455 +vt 0.074074 0.136364 +vt 0.537037 0.147727 +vt 0.074074 0.147727 +vt 0.074074 0.159091 +vt 0.537037 0.159091 +vt 0.074074 0.204545 +vt 0.074074 0.113636 +vt 0.611111 0.102273 +vt 0.611111 0.113636 +vt 0.074074 0.045455 +vt 0.611111 0.000000 +vt -0.000000 0.863636 +vt 0.532407 0.869318 +vt -0.000000 0.869318 +vt -0.000000 0.880682 +vt 0.532407 0.886364 +vt -0.000000 0.886364 +vt -0.000000 0.909091 +vt 0.532407 0.914773 +vt -0.000000 0.914773 +vt -0.000000 0.926136 +vt 0.532407 0.931818 +vt -0.000000 0.931818 +vt -0.000000 0.875000 +vt 0.532407 0.880682 +vt -0.000000 0.903409 +vt 0.532407 0.909091 +vt -0.000000 0.892045 +vt 0.532407 0.897727 +vt -0.000000 0.897727 +vt -0.000000 0.920455 +vt 0.532407 0.926136 +vt 0.532407 0.875000 +vt 0.532407 0.903409 +vt 0.532407 0.892045 +vt 0.532407 0.920455 +vt 0.611111 0.261364 +vt 0.074074 0.250000 +vt 0.611111 0.250000 +vt 0.074074 0.272727 +vt -0.000000 0.863636 +vt 0.532407 0.869318 +vt -0.000000 0.869318 +vt -0.000000 0.880682 +vt 0.532407 0.886364 +vt -0.000000 0.886364 +vt -0.000000 0.909091 +vt 0.532407 0.914773 +vt -0.000000 0.914773 +vt -0.000000 0.926136 +vt 0.532407 0.931818 +vt -0.000000 0.931818 +vt -0.000000 0.875000 +vt 0.532407 0.880682 +vt -0.000000 0.903409 +vt 0.532407 0.909091 +vt -0.000000 0.892045 +vt 0.532407 0.897727 +vt -0.000000 0.897727 +vt -0.000000 0.920455 +vt 0.532407 0.926136 +vt 0.532407 0.875000 +vt 0.532407 0.903409 +vt 0.532407 0.892045 +vt 0.532407 0.920455 +vt 0.537037 0.125000 +vt 0.074074 0.125000 +vt 0.537037 0.215909 +vt 0.074074 0.215909 +vt 0.537037 0.227273 +vt 0.074074 0.227273 +vt 0.074074 0.238636 +vt 0.560185 0.659091 +vt 0.467593 0.664773 +vt 0.467593 0.659091 +vt 0.560185 0.664773 +vt 0.467593 0.670455 +vt 0.560185 0.625000 +vt 0.467593 0.630682 +vt 0.467593 0.625000 +vt 0.560185 0.630682 +vt 0.467593 0.636364 +vt 0.560185 0.636364 +vt 0.467593 0.642045 +vt 0.560185 0.642045 +vt 0.467593 0.647727 +vt 0.560185 0.647727 +vt 0.467593 0.653409 +vt 0.560185 0.653409 +vt 0.537037 0.238636 +vt 0.611111 0.238636 +vt 0.833333 0.204545 +vt 0.851852 0.045455 +vt 0.851852 0.204545 +vt 0.981481 0.045455 +vt 0.962963 0.068182 +vt 0.962963 0.045455 +vt 0.981481 0.068182 +vt 0.962963 0.181818 +vt 0.981481 0.181818 +vt 0.962963 0.204545 +vt 0.981481 0.204545 +vt 0.962963 0.250000 +vt 0.925926 0.181818 +vt 0.953704 0.068182 +vt 0.916667 0.181818 +vt 0.907407 0.045455 +vt 0.861111 0.204545 +vt 0.953704 0.068182 +vt 0.916667 0.181818 +vt 0.861111 0.227273 +vt 0.851852 0.227273 +vt 0.925926 0.204545 +vt 0.953704 0.250000 +vt 0.916667 0.204545 +vt 0.925926 0.181818 +vt 0.944444 0.045455 +vt 0.935185 0.045455 +vt 0.916667 0.045455 +vt 0.861111 0.204545 +vt 0.861111 0.227273 +vt 0.870370 0.227273 +vt 0.851852 0.227273 +vt 0.851852 0.204545 +vt 0.944444 0.045455 +vt 0.962963 0.068182 +vt 0.907407 0.045455 +vt 0.925926 0.204545 +vt 0.953704 0.250000 +vt 0.962963 0.250000 +vt 0.916667 0.204545 +vt 0.870370 0.250000 +vt 0.870370 0.227273 +vt 0.870370 0.250000 +vt 0.870370 0.568182 +vt 0.861111 0.579545 +vt 0.861111 0.568182 +vt 0.814815 0.568182 +vt 0.805556 0.579545 +vt 0.805556 0.568182 +vt 0.833333 0.568182 +vt 0.824074 0.579545 +vt 0.824074 0.568182 +vt 0.851852 0.568182 +vt 0.842593 0.579545 +vt 0.842593 0.568182 +vt 0.851852 0.579545 +vt 0.796296 0.579545 +vt 0.796296 0.568182 +vt 0.814815 0.579545 +vt 0.833333 0.579545 +vt 0.796296 0.568182 +vt 0.787037 0.636364 +vt 0.787037 0.568182 +vt 0.740741 0.568182 +vt 0.731481 0.636364 +vt 0.731481 0.568182 +vt 0.759259 0.568182 +vt 0.750000 0.636364 +vt 0.750000 0.568182 +vt 0.777778 0.568182 +vt 0.768519 0.636364 +vt 0.768519 0.568182 +vt 0.777778 0.636364 +vt 0.722222 0.636364 +vt 0.722222 0.568182 +vt 0.740741 0.636364 +vt 0.759259 0.636364 +vt 0.726852 0.477273 +vt 0.745370 0.477273 +vt 0.652778 0.500000 +vt 0.652778 0.477273 +vt 0.763889 0.477273 +vt 0.837963 0.500000 +vt 0.837963 0.477273 +vt 0.768519 0.568182 +vt 0.759259 0.636364 +vt 0.759259 0.568182 +vt 0.750000 0.568182 +vt 0.740741 0.636364 +vt 0.740741 0.568182 +vt 0.731481 0.568182 +vt 0.722222 0.636364 +vt 0.722222 0.568182 +vt 0.787037 0.568182 +vt 0.777778 0.636364 +vt 0.777778 0.568182 +vt 0.768519 0.636364 +vt 0.750000 0.636364 +vt 0.731481 0.636364 +vt 0.796296 0.568182 +vt 0.787037 0.636364 +vt 0.842593 0.568182 +vt 0.833333 0.579545 +vt 0.833333 0.568182 +vt 0.824074 0.568182 +vt 0.814815 0.579545 +vt 0.814815 0.568182 +vt 0.805556 0.568182 +vt 0.796296 0.579545 +vt 0.796296 0.568182 +vt 0.861111 0.568182 +vt 0.851852 0.579545 +vt 0.851852 0.568182 +vt 0.842593 0.579545 +vt 0.824074 0.579545 +vt 0.805556 0.579545 +vt 0.870370 0.568182 +vt 0.861111 0.579545 +vt 0.226852 0.488636 +vt 0.222222 0.494318 +vt 0.222222 0.488636 +vt 0.222222 0.448864 +vt 0.226852 0.454545 +vt 0.222222 0.454545 +vt 0.222222 0.500000 +vt 0.226852 0.505682 +vt 0.222222 0.505682 +vt 0.226852 0.500000 +vt 0.226852 0.471591 +vt 0.222222 0.477273 +vt 0.222222 0.471591 +vt 0.222222 0.460227 +vt 0.226852 0.437500 +vt 0.222222 0.443182 +vt 0.222222 0.437500 +vt 0.226852 0.477273 +vt 0.222222 0.482955 +vt 0.226852 0.465909 +vt 0.222222 0.465909 +vt 0.226852 0.443182 +vt 0.532407 0.863636 +vt 0.532407 0.863636 +vt 0.537037 0.136364 +vt 0.537037 0.204545 +vt 0.074074 0.102273 +vt 0.074074 0.000000 +vt 0.532407 0.863636 +vt 0.074074 0.261364 +vt 0.532407 0.863636 +vt 0.560185 0.670455 +vt 0.611111 0.125000 +vt 0.833333 0.045455 +vt 0.981481 0.250000 +vt 0.870370 0.579545 +vt 0.796296 0.636364 +vt 0.726852 0.500000 +vt 0.763889 0.500000 +vt 0.796296 0.636364 +vt 0.870370 0.579545 +vt 0.226852 0.494318 +vt 0.226852 0.448864 +vt 0.226852 0.460227 +vt 0.226852 0.482955 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.0000 -1.0000 +vn 1.0000 0.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn 0.0000 -0.5547 -0.8321 +vn -1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 -0.4472 0.8944 +vn 0.0000 -0.8944 0.4472 +vn 0.0000 0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.9231 0.3846 +vn 0.0000 0.7085 0.7057 +vn 0.8000 -0.6000 0.0000 +vn -0.8000 -0.6000 0.0000 +vn 0.9018 0.4321 0.0000 +vn 0.8660 -0.5000 0.0000 +vn 0.5000 -0.8660 -0.0000 +vn 0.1305 -0.9914 -0.0000 +vn 0.5000 0.8660 0.0000 +vn -0.8660 -0.5000 0.0000 +vn -0.5000 0.8660 0.0000 +vn 0.8660 0.5000 0.0000 +vn -0.5000 -0.8660 0.0000 +vn -0.8660 0.5000 0.0000 +vn -0.1305 -0.9914 -0.0000 +vn -0.9018 0.4321 0.0000 +vn 0.1305 0.9914 0.0000 +vn -0.1305 0.9914 0.0000 +vn 0.9018 -0.4321 0.0000 +vn 0.8069 -0.5907 0.0000 +vn 0.8069 0.5907 0.0000 +vn -0.8069 -0.5907 0.0000 +vn -0.9018 -0.4321 0.0000 +vn -0.8069 0.5907 0.0000 +vn 0.9960 -0.0890 0.0000 +vn 0.0000 -0.7071 -0.7071 +vn -0.0000 -0.7071 0.7071 +vn -0.9960 -0.0890 0.0000 +vn -0.9659 -0.2588 0.0000 +vn -0.4858 -0.2432 0.8396 +vn 0.3929 -0.3622 0.8452 +vn 0.4858 -0.2432 0.8396 +vn -0.3458 -0.6635 -0.6635 +vn 0.3395 -0.1767 -0.9239 +vn 0.3458 -0.6635 -0.6635 +vn -0.3395 -0.1767 -0.9239 +vn 0.3945 0.1811 -0.9009 +vn -0.3945 0.1811 -0.9009 +vn 0.3878 -0.3878 -0.8361 +vn -0.3878 -0.3878 -0.8361 +vn 0.2418 -0.6861 -0.6861 +vn -0.8661 -0.1385 -0.4802 +vn -0.9386 0.0604 -0.3398 +vn 0.9032 -0.0951 0.4186 +vn 0.9487 -0.1245 0.2905 +vn 0.8661 -0.1385 -0.4802 +vn 0.9386 0.0604 -0.3398 +vn 0.9239 0.0000 0.3827 +vn 0.7071 0.0000 0.7071 +vn 0.7592 -0.4602 -0.4602 +vn 0.9518 -0.1020 -0.2893 +vn 0.9607 -0.1962 -0.1962 +vn -0.9607 -0.1962 -0.1962 +vn -0.9487 -0.1245 0.2905 +vn -0.9032 -0.0951 0.4186 +vn -0.9239 0.0000 0.3827 +vn -0.7071 0.0000 0.7071 +vn -0.3929 -0.3622 0.8452 +vn -0.7592 -0.4602 -0.4602 +vn -0.2418 -0.6861 -0.6861 +vn -0.9518 -0.1020 -0.2893 +vn -0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 -0.7071 +vn 0.0000 -0.5547 0.8321 +vn 0.0000 -0.7833 0.6216 +vn 0.0000 -0.9363 0.3511 +vn 0.0000 -0.7833 -0.6216 +vn 0.0000 -0.9363 -0.3511 +vn -0.6124 -0.3536 -0.7071 +vn 0.6124 -0.3536 -0.7071 +vn -0.3536 -0.6124 -0.7071 +vn -0.3536 0.6124 -0.7071 +vn 0.6124 0.3536 -0.7071 +vn 0.3536 -0.6124 -0.7071 +vn -0.6124 0.3536 -0.7071 +vn 0.3536 0.6124 -0.7071 +vn 0.9659 -0.2588 0.0000 +s off +f 202/305/57 210/306/57 209/307/57 +f 198/308/57 210/306/57 200/309/57 +f 198/308/57 212/310/57 211/311/57 +f 194/312/57 212/310/57 196/313/57 +f 197/314/58 224/315/58 195/316/58 +f 224/315/58 193/317/58 195/316/58 +f 201/318/58 222/319/58 199/320/58 +f 199/320/58 223/321/58 197/314/58 +f 230/322/57 241/323/57 232/324/57 +f 230/322/57 243/325/57 242/326/57 +f 236/327/57 240/328/57 239/329/57 +f 232/324/57 240/328/57 234/330/57 +f 235/331/58 252/332/58 233/333/58 +f 252/332/58 231/334/58 233/333/58 +f 253/335/58 229/336/58 231/334/58 +f 229/336/58 255/337/58 227/338/58 +f 295/339/57 261/340/57 299/341/57 +f 270/342/57 280/343/57 279/344/57 +f 266/345/57 280/343/57 268/346/57 +f 264/347/57 281/348/57 266/345/57 +f 264/347/57 271/349/57 282/350/57 +f 269/351/58 292/352/58 267/353/58 +f 267/354/59 261/340/59 301/355/59 +f 265/356/60 303/357/60 263/358/60 +f 265/356/60 362/359/60 361/360/60 +f 263/361/58 284/362/58 328/363/58 +f 320/364/58 297/365/58 364/366/58 +f 360/367/58 318/368/58 319/369/58 +f 304/370/57 305/371/57 296/372/57 +f 304/370/57 307/373/57 306/374/57 +f 302/375/57 308/376/57 307/373/57 +f 298/377/57 308/376/57 300/378/57 +f 303/379/58 293/380/58 294/381/58 +f 310/382/57 298/377/57 332/383/57 +f 238/384/57 236/327/57 239/329/57 +f 204/385/57 275/386/57 312/387/57 +f 237/388/57 312/387/57 311/389/57 +f 311/389/57 310/382/57 332/383/57 +f 274/390/57 313/391/57 275/386/57 +f 203/392/57 276/393/57 204/385/57 +f 205/394/57 246/395/57 206/396/57 +f 278/397/57 270/342/57 279/344/57 +f 214/398/57 194/312/57 330/399/57 +f 330/399/57 277/400/57 203/392/57 +f 206/396/57 245/401/57 207/402/57 +f 244/403/57 202/305/57 208/404/57 +f 273/405/57 314/406/57 274/390/57 +f 272/407/57 262/408/57 316/409/57 +f 226/410/58 193/317/58 225/411/58 +f 290/412/58 269/351/58 329/413/58 +f 297/365/58 322/414/58 331/415/58 +f 250/416/58 235/331/58 331/415/58 +f 289/417/58 290/412/58 329/413/58 +f 331/415/58 323/418/58 249/419/58 +f 257/420/58 218/421/58 219/422/58 +f 220/423/58 201/318/58 256/424/58 +f 326/425/58 285/426/58 286/427/58 +f 325/428/58 286/427/58 287/429/58 +f 249/419/58 324/430/58 260/431/58 +f 258/432/58 217/433/58 218/421/58 +f 288/434/58 215/435/58 216/436/58 +f 288/434/58 216/436/58 324/430/58 +f 342/437/59 340/438/59 348/439/59 +f 351/440/61 333/441/61 334/442/61 +f 341/443/62 345/444/62 349/445/62 +f 353/446/63 334/442/63 333/441/63 +f 355/447/64 354/448/64 353/446/64 +f 357/449/65 356/450/65 355/447/65 +f 356/451/62 358/452/62 351/453/62 +f 352/454/59 357/455/59 355/456/59 +f 359/457/60 362/359/60 360/458/60 +f 360/458/62 363/459/62 359/457/62 +f 366/460/57 365/461/57 359/457/57 +f 367/462/57 370/463/57 368/464/57 +f 369/465/66 372/466/66 370/463/66 +f 371/467/60 374/468/60 372/466/60 +f 373/469/67 376/470/67 374/468/67 +f 375/471/58 378/472/58 376/470/58 +f 376/473/62 378/474/62 368/475/62 +f 373/469/59 371/467/59 369/476/59 +f 381/477/62 380/478/62 379/479/62 +f 383/480/59 386/481/59 384/482/59 +f 381/477/58 385/483/58 382/484/58 +f 379/479/60 386/481/60 381/477/60 +f 390/485/59 387/486/59 388/487/59 +f 391/488/60 390/485/60 388/487/60 +f 393/489/68 389/490/68 390/485/68 +f 394/491/62 393/489/62 391/488/62 +f 406/492/57 403/493/57 404/494/57 +f 402/495/60 399/496/60 400/497/60 +f 395/498/59 401/499/59 397/500/59 +f 397/501/69 402/495/69 398/502/69 +f 396/503/62 402/495/62 400/497/62 +f 396/504/58 399/496/58 395/505/58 +f 424/506/59 407/507/59 403/508/59 +f 423/509/62 410/510/62 406/492/62 +f 410/510/63 405/511/63 406/492/63 +f 411/512/63 440/513/63 414/514/63 +f 427/515/62 423/509/62 408/516/62 +f 407/507/59 426/517/59 428/518/59 +f 426/517/57 438/519/57 428/518/57 +f 426/517/60 429/520/60 437/521/60 +f 427/515/57 447/522/57 425/523/57 +f 425/523/60 446/524/60 423/509/60 +f 452/525/60 450/526/60 456/527/60 +f 468/528/60 466/529/60 472/530/60 +f 474/531/63 476/532/63 478/533/63 +f 490/534/62 486/535/62 488/536/62 +f 487/537/59 481/538/59 489/539/59 +f 497/540/63 495/541/63 493/542/63 +f 503/543/60 505/544/60 499/545/60 +f 519/546/60 521/547/60 515/548/60 +f 525/549/62 524/550/62 523/551/62 +f 527/552/59 530/553/59 528/554/59 +f 526/555/58 527/556/58 524/557/58 +f 525/549/60 529/558/60 526/555/60 +f 523/559/57 530/553/57 525/549/57 +f 532/560/60 533/561/60 531/562/60 +f 540/563/60 541/564/60 539/565/60 +f 534/566/58 535/567/58 533/561/58 +f 531/562/57 537/568/57 532/560/57 +f 532/560/59 538/569/59 534/566/59 +f 533/561/62 536/570/62 531/562/62 +f 542/571/58 543/572/58 541/564/58 +f 539/565/57 545/573/57 540/563/57 +f 540/563/59 546/574/59 542/571/59 +f 541/564/62 544/575/62 539/565/62 +f 548/576/60 549/577/60 547/578/60 +f 550/579/58 551/580/58 549/577/58 +f 547/578/57 553/581/57 548/576/57 +f 548/576/59 554/582/59 550/579/59 +f 549/577/62 552/583/62 547/578/62 +f 557/584/60 555/585/60 556/586/60 +f 559/587/63 561/588/63 560/589/63 +f 555/585/66 562/590/66 559/591/66 +f 555/592/70 560/589/70 556/593/70 +f 556/586/58 561/588/58 557/584/58 +f 558/594/71 561/588/71 562/595/71 +f 564/596/59 563/597/59 565/598/59 +f 568/599/62 569/600/62 567/601/62 +f 574/602/59 571/603/59 572/604/59 +f 575/605/60 574/602/60 572/604/60 +f 577/606/68 573/607/68 574/602/68 +f 578/608/62 577/606/62 575/605/62 +f 579/609/57 582/610/57 580/611/57 +f 581/612/66 584/613/66 582/610/66 +f 583/614/60 586/615/60 584/613/60 +f 585/616/67 588/617/67 586/615/67 +f 587/618/58 590/619/58 588/617/58 +f 588/620/62 590/621/62 580/622/62 +f 585/616/59 583/614/59 581/623/59 +f 593/624/62 592/625/62 591/626/62 +f 595/627/59 598/628/59 596/629/59 +f 594/630/58 595/631/58 592/632/58 +f 593/624/60 597/633/60 594/630/60 +f 591/634/57 598/628/57 593/624/57 +f 601/635/62 600/636/62 599/637/62 +f 603/638/59 606/639/59 604/640/59 +f 601/635/58 605/641/58 602/642/58 +f 599/637/60 606/639/60 601/635/60 +f 611/643/57 615/644/57 607/645/57 +f 628/646/58 630/647/58 622/648/58 +f 202/305/57 200/309/57 210/306/57 +f 198/308/57 211/311/57 210/306/57 +f 198/308/57 196/313/57 212/310/57 +f 194/312/57 213/649/57 212/310/57 +f 197/314/58 223/321/58 224/315/58 +f 224/315/58 225/411/58 193/317/58 +f 201/318/58 221/650/58 222/319/58 +f 199/320/58 222/319/58 223/321/58 +f 230/322/57 242/326/57 241/323/57 +f 230/322/57 228/651/57 243/325/57 +f 236/327/57 234/330/57 240/328/57 +f 232/324/57 241/323/57 240/328/57 +f 235/331/58 251/652/58 252/332/58 +f 252/332/58 253/335/58 231/334/58 +f 253/335/58 254/653/58 229/336/58 +f 229/336/58 254/653/58 255/337/58 +f 295/339/57 301/654/57 261/340/57 +f 261/340/57 265/356/57 299/341/57 +f 270/342/57 268/346/57 280/343/57 +f 266/345/57 281/348/57 280/343/57 +f 264/347/57 282/350/57 281/348/57 +f 264/347/57 262/408/57 271/349/57 +f 269/351/58 291/655/58 292/352/58 +f 267/354/59 303/357/59 261/340/59 +f 265/356/60 261/340/60 303/357/60 +f 265/356/60 263/358/60 362/359/60 +f 317/656/58 362/657/58 328/363/58 +f 362/657/58 263/361/58 328/363/58 +f 263/361/58 283/658/58 284/362/58 +f 284/362/58 285/426/58 327/659/58 +f 284/362/58 327/659/58 328/363/58 +f 320/364/58 321/660/58 297/365/58 +f 320/364/58 364/366/58 319/369/58 +f 364/366/58 360/367/58 319/369/58 +f 360/367/58 362/657/58 318/368/58 +f 362/657/58 317/656/58 318/368/58 +f 304/370/57 306/374/57 305/371/57 +f 304/370/57 302/375/57 307/373/57 +f 302/375/57 300/378/57 308/376/57 +f 298/377/57 309/661/57 308/376/57 +f 303/379/58 267/353/58 293/380/58 +f 267/353/58 292/352/58 293/380/58 +f 283/658/58 263/361/58 294/381/58 +f 263/361/58 303/379/58 294/381/58 +f 310/382/57 309/661/57 298/377/57 +f 238/384/57 332/383/57 236/327/57 +f 247/662/57 205/394/57 204/385/57 +f 204/385/57 276/393/57 275/386/57 +f 275/386/57 313/391/57 312/387/57 +f 312/387/57 248/663/57 247/662/57 +f 247/662/57 204/385/57 312/387/57 +f 237/388/57 248/663/57 312/387/57 +f 332/383/57 238/384/57 237/388/57 +f 237/388/57 311/389/57 332/383/57 +f 274/390/57 314/406/57 313/391/57 +f 203/392/57 277/400/57 276/393/57 +f 205/394/57 247/662/57 246/395/57 +f 278/397/57 330/399/57 270/342/57 +f 214/398/57 213/649/57 194/312/57 +f 203/392/57 214/398/57 330/399/57 +f 330/399/57 278/397/57 277/400/57 +f 206/396/57 246/395/57 245/401/57 +f 208/404/57 207/402/57 244/403/57 +f 207/402/57 245/401/57 244/403/57 +f 244/403/57 243/325/57 228/651/57 +f 202/305/57 209/307/57 208/404/57 +f 244/403/57 228/651/57 202/305/57 +f 273/405/57 315/664/57 314/406/57 +f 272/407/57 271/349/57 262/408/57 +f 262/408/57 296/372/57 316/409/57 +f 296/372/57 305/371/57 316/409/57 +f 316/409/57 315/664/57 273/405/57 +f 316/409/57 273/405/57 272/407/57 +f 226/410/58 329/413/58 193/317/58 +f 290/412/58 291/655/58 269/351/58 +f 297/365/58 321/660/58 322/414/58 +f 250/416/58 251/652/58 235/331/58 +f 226/410/58 215/435/58 329/413/58 +f 215/435/58 289/417/58 329/413/58 +f 249/419/58 250/416/58 331/415/58 +f 331/415/58 322/414/58 323/418/58 +f 257/420/58 258/432/58 218/421/58 +f 257/420/58 219/422/58 256/424/58 +f 219/422/58 220/423/58 256/424/58 +f 220/423/58 221/650/58 201/318/58 +f 201/318/58 227/338/58 256/424/58 +f 227/338/58 255/337/58 256/424/58 +f 326/425/58 327/659/58 285/426/58 +f 325/428/58 326/425/58 286/427/58 +f 249/419/58 323/418/58 324/430/58 +f 258/432/58 259/665/58 217/433/58 +f 288/434/58 289/417/58 215/435/58 +f 216/436/58 217/433/58 324/430/58 +f 217/433/58 259/665/58 324/430/58 +f 259/665/58 260/431/58 324/430/58 +f 324/430/58 325/428/58 287/429/58 +f 287/429/58 288/434/58 324/430/58 +f 340/438/59 338/666/59 336/667/59 +f 336/667/59 350/668/59 340/438/59 +f 350/668/59 348/439/59 340/438/59 +f 348/439/59 346/669/59 344/670/59 +f 344/670/59 342/437/59 348/439/59 +f 351/440/61 352/671/61 333/441/61 +f 349/445/62 335/672/62 337/673/62 +f 337/673/62 339/674/62 349/445/62 +f 339/674/62 341/443/62 349/445/62 +f 341/443/62 343/675/62 345/444/62 +f 345/444/62 347/676/62 349/445/62 +f 353/446/63 354/448/63 334/442/63 +f 355/447/64 356/450/64 354/448/64 +f 357/449/65 358/677/65 356/450/65 +f 351/453/62 334/442/62 356/451/62 +f 334/442/62 354/448/62 356/451/62 +f 353/446/59 333/441/59 355/456/59 +f 333/441/59 352/454/59 355/456/59 +f 359/457/60 361/360/60 362/359/60 +f 360/458/62 364/678/62 363/459/62 +f 365/461/57 361/360/57 359/457/57 +f 359/457/57 363/679/57 366/460/57 +f 367/462/57 369/465/57 370/463/57 +f 369/465/66 371/467/66 372/466/66 +f 371/467/60 373/469/60 374/468/60 +f 373/469/67 375/471/67 376/470/67 +f 375/471/58 377/680/58 378/472/58 +f 368/475/62 370/681/62 376/473/62 +f 370/681/62 372/466/62 376/473/62 +f 372/466/62 374/468/62 376/473/62 +f 369/476/59 367/682/59 377/683/59 +f 377/683/59 375/684/59 369/476/59 +f 375/684/59 373/469/59 369/476/59 +f 381/477/62 382/685/62 380/478/62 +f 383/480/59 385/686/59 386/481/59 +f 381/477/58 386/481/58 385/483/58 +f 379/479/60 384/482/60 386/481/60 +f 390/485/59 389/687/59 387/486/59 +f 391/488/60 393/489/60 390/485/60 +f 393/489/68 392/688/68 389/490/68 +f 394/491/62 392/689/62 393/489/62 +f 406/492/57 405/511/57 403/493/57 +f 402/495/60 401/499/60 399/496/60 +f 395/498/59 399/496/59 401/499/59 +f 397/501/69 401/499/69 402/495/69 +f 396/503/62 398/690/62 402/495/62 +f 396/504/58 400/497/58 399/496/58 +f 403/508/59 405/511/59 424/506/59 +f 405/511/59 409/691/59 424/506/59 +f 406/492/62 404/692/62 423/509/62 +f 404/692/62 408/516/62 423/509/62 +f 410/510/63 409/691/63 405/511/63 +f 414/514/63 413/693/63 432/694/63 +f 432/694/63 431/695/63 411/512/63 +f 411/512/63 412/696/63 440/513/63 +f 440/513/63 441/697/63 414/514/63 +f 414/514/63 432/694/63 411/512/63 +f 427/515/62 425/523/62 423/509/62 +f 407/507/59 424/506/59 426/517/59 +f 426/517/57 437/698/57 438/519/57 +f 426/517/60 424/506/60 429/520/60 +f 427/515/57 448/699/57 447/522/57 +f 425/523/60 447/700/60 446/524/60 +f 456/527/60 455/701/60 454/702/60 +f 454/702/60 453/703/60 452/525/60 +f 452/525/60 451/704/60 450/526/60 +f 450/526/60 449/705/60 456/527/60 +f 456/527/60 454/702/60 452/525/60 +f 472/530/60 471/706/60 470/707/60 +f 470/707/60 469/708/60 468/528/60 +f 468/528/60 467/709/60 466/529/60 +f 466/529/60 465/710/60 472/530/60 +f 472/530/60 470/707/60 468/528/60 +f 478/533/63 479/711/63 480/712/63 +f 480/712/63 473/713/63 474/531/63 +f 474/531/63 475/714/63 476/532/63 +f 476/532/63 477/715/63 478/533/63 +f 478/533/63 480/712/63 474/531/63 +f 488/536/62 484/716/62 490/534/62 +f 490/534/62 482/717/62 486/535/62 +f 489/539/59 483/718/59 487/537/59 +f 487/537/59 485/719/59 481/538/59 +f 493/542/63 492/720/63 491/721/63 +f 491/721/63 498/722/63 497/540/63 +f 497/540/63 496/723/63 495/541/63 +f 495/541/63 494/724/63 493/542/63 +f 493/542/63 491/721/63 497/540/63 +f 499/545/60 500/725/60 501/726/60 +f 501/726/60 502/727/60 503/543/60 +f 503/543/60 504/728/60 505/544/60 +f 505/544/60 506/729/60 499/545/60 +f 499/545/60 501/726/60 503/543/60 +f 515/548/60 516/730/60 517/731/60 +f 517/731/60 518/732/60 519/546/60 +f 519/546/60 520/733/60 521/547/60 +f 521/547/60 522/734/60 515/548/60 +f 515/548/60 517/731/60 519/546/60 +f 525/549/62 526/555/62 524/550/62 +f 527/552/59 529/558/59 530/553/59 +f 526/555/58 529/558/58 527/556/58 +f 525/549/60 530/553/60 529/558/60 +f 523/559/57 528/735/57 530/553/57 +f 532/560/60 534/566/60 533/561/60 +f 540/563/60 542/571/60 541/564/60 +f 534/566/58 538/736/58 535/567/58 +f 531/562/57 536/737/57 537/568/57 +f 532/560/59 537/738/59 538/569/59 +f 533/561/62 535/739/62 536/570/62 +f 542/571/58 546/740/58 543/572/58 +f 539/565/57 544/741/57 545/573/57 +f 540/563/59 545/742/59 546/574/59 +f 541/564/62 543/743/62 544/575/62 +f 548/576/60 550/579/60 549/577/60 +f 550/579/58 554/744/58 551/580/58 +f 547/578/57 552/745/57 553/581/57 +f 548/576/59 553/746/59 554/582/59 +f 549/577/62 551/747/62 552/583/62 +f 557/584/60 558/748/60 555/585/60 +f 559/587/63 562/595/63 561/588/63 +f 555/585/66 558/748/66 562/590/66 +f 555/592/70 559/587/70 560/589/70 +f 556/586/58 560/589/58 561/588/58 +f 558/594/71 557/749/71 561/588/71 +f 564/596/59 566/750/59 563/597/59 +f 568/599/62 570/751/62 569/600/62 +f 574/602/59 573/752/59 571/603/59 +f 575/605/60 577/606/60 574/602/60 +f 577/606/68 576/753/68 573/607/68 +f 578/608/62 576/754/62 577/606/62 +f 579/609/57 581/612/57 582/610/57 +f 581/612/66 583/614/66 584/613/66 +f 583/614/60 585/616/60 586/615/60 +f 585/616/67 587/618/67 588/617/67 +f 587/618/58 589/755/58 590/619/58 +f 580/622/62 582/756/62 588/620/62 +f 582/756/62 584/613/62 588/620/62 +f 584/613/62 586/615/62 588/620/62 +f 581/623/59 579/757/59 589/758/59 +f 589/758/59 587/759/59 581/623/59 +f 587/759/59 585/616/59 581/623/59 +f 593/624/62 594/630/62 592/625/62 +f 595/627/59 597/633/59 598/628/59 +f 594/630/58 597/633/58 595/631/58 +f 593/624/60 598/628/60 597/633/60 +f 591/634/57 596/760/57 598/628/57 +f 601/635/62 602/761/62 600/636/62 +f 603/638/59 605/762/59 606/639/59 +f 601/635/58 606/639/58 605/641/58 +f 599/637/60 604/640/60 606/639/60 +f 607/645/57 608/763/57 609/764/57 +f 609/764/57 610/765/57 611/643/57 +f 611/643/57 612/766/57 613/767/57 +f 613/767/57 614/768/57 611/643/57 +f 614/768/57 615/644/57 611/643/57 +f 615/644/57 616/769/57 617/770/57 +f 617/770/57 618/771/57 607/645/57 +f 607/645/57 609/764/57 611/643/57 +f 615/644/57 617/770/57 607/645/57 +f 630/647/58 619/772/58 622/648/58 +f 619/772/58 620/773/58 622/648/58 +f 620/773/58 621/774/58 622/648/58 +f 622/648/58 623/775/58 624/776/58 +f 624/776/58 625/777/58 622/648/58 +f 625/777/58 626/778/58 622/648/58 +f 626/778/58 627/779/58 628/646/58 +f 628/646/58 629/780/58 630/647/58 +f 626/778/58 628/646/58 622/648/58 +s 1 +f 194/781/72 195/782/59 193/783/72 +f 196/784/59 197/785/73 195/782/59 +f 198/786/73 199/787/74 197/785/73 +f 200/788/74 201/789/75 199/787/74 +f 209/790/60 220/791/76 208/792/76 +f 206/793/59 217/794/73 205/795/73 +f 213/796/77 224/797/62 212/798/62 +f 210/799/78 221/800/60 209/801/60 +f 207/802/79 218/803/59 206/793/59 +f 214/804/80 225/805/77 213/796/77 +f 204/806/74 215/807/63 203/808/63 +f 211/809/81 222/810/78 210/799/78 +f 208/792/76 219/811/79 207/802/79 +f 203/808/63 226/812/80 214/804/80 +f 205/795/73 216/813/74 204/806/74 +f 212/798/62 223/814/81 211/809/81 +f 228/815/82 229/816/80 227/817/82 +f 230/818/80 231/819/77 229/816/80 +f 232/820/77 233/821/62 231/819/77 +f 234/822/62 235/823/83 233/821/62 +f 243/824/60 254/825/76 242/826/76 +f 240/827/59 251/828/73 239/829/73 +f 247/830/77 258/831/62 246/832/62 +f 244/833/78 255/834/60 243/835/60 +f 241/836/79 252/837/59 240/827/59 +f 248/838/80 259/839/77 247/830/77 +f 238/840/74 249/841/63 237/842/63 +f 245/843/81 256/844/78 244/833/78 +f 242/826/76 253/845/79 241/836/79 +f 237/842/63 260/846/80 248/838/80 +f 239/829/73 250/847/74 238/840/74 +f 246/832/62 257/848/81 245/843/81 +f 266/849/79 299/850/76 264/851/76 +f 299/850/76 262/852/84 264/851/76 +f 265/853/84 296/854/85 262/852/84 +f 270/855/86 329/856/87 269/857/86 +f 202/858/75 227/859/82 201/789/75 +f 329/856/88 194/781/72 193/783/72 +f 277/860/60 288/861/76 276/862/76 +f 274/863/59 285/864/73 273/865/73 +f 281/866/77 292/867/62 280/868/62 +f 278/869/78 289/870/60 277/871/60 +f 275/872/79 286/873/59 274/863/59 +f 282/874/80 293/875/77 281/866/77 +f 272/876/74 283/877/63 271/878/63 +f 279/879/81 290/880/78 278/869/78 +f 276/862/76 287/881/79 275/872/79 +f 271/878/63 294/882/80 282/874/80 +f 273/865/73 284/883/74 272/876/74 +f 280/868/62 291/884/81 279/879/81 +f 331/885/89 298/886/90 297/887/90 +f 236/888/83 331/885/91 235/823/83 +f 311/889/60 322/890/76 310/891/76 +f 308/892/59 319/893/73 307/894/73 +f 315/895/77 326/896/62 314/897/62 +f 312/898/78 323/899/60 311/900/60 +f 309/901/79 320/902/59 308/892/59 +f 316/903/80 327/904/77 315/895/77 +f 306/905/74 317/906/63 305/907/63 +f 313/908/81 324/909/78 312/898/78 +f 310/891/76 321/910/79 309/901/79 +f 305/907/63 328/911/80 316/903/80 +f 307/894/73 318/912/74 306/905/74 +f 314/897/62 325/913/81 313/908/81 +f 301/914/92 266/849/79 268/915/59 +f 296/854/85 365/916/78 304/917/78 +f 304/917/78 366/918/81 302/919/81 +f 366/918/81 300/920/62 302/919/81 +f 336/921/58 337/922/93 335/923/58 +f 338/924/93 339/925/63 337/922/93 +f 340/926/63 341/927/94 339/928/63 +f 342/929/94 343/930/57 341/927/94 +f 344/931/57 345/932/66 343/930/57 +f 346/933/66 347/934/60 345/932/66 +f 348/935/60 349/936/67 347/934/60 +f 350/937/67 335/923/58 349/936/67 +f 363/938/95 364/939/96 297/887/90 +f 301/914/92 270/855/86 269/857/86 +f 410/940/97 411/941/98 409/942/99 +f 414/943/100 415/944/101 413/945/102 +f 416/946/103 417/947/104 415/944/101 +f 418/948/105 419/949/106 417/947/104 +f 420/950/107 421/951/108 419/949/106 +f 418/952/105 442/953/109 443/954/110 +f 411/955/98 430/956/111 409/942/99 +f 431/695/112 433/957/113 434/958/114 +f 409/942/99 429/959/115 424/960/116 +f 419/961/106 436/962/117 435/963/118 +f 419/961/106 434/958/114 417/964/104 +f 417/964/104 433/957/113 415/944/101 +f 413/965/102 433/957/113 432/694/119 +f 442/953/109 441/966/120 440/967/121 +f 439/968/122 446/969/123 447/970/62 +f 423/971/124 439/968/122 410/972/97 +f 414/973/100 442/953/109 416/974/103 +f 412/975/125 439/968/122 440/967/121 +f 420/976/107 445/977/126 422/978/127 +f 418/952/105 444/979/128 420/976/107 +f 435/963/118 430/956/111 434/958/114 +f 448/980/62 444/979/128 447/970/62 +f 430/956/111 437/981/59 429/959/115 +f 435/963/118 438/982/59 437/981/59 +f 444/979/128 439/968/122 447/970/62 +f 462/983/62 455/984/129 463/985/129 +f 460/986/57 453/987/124 461/988/124 +f 458/989/59 451/990/116 459/991/116 +f 464/992/58 449/993/130 457/994/130 +f 463/985/129 456/995/58 464/992/58 +f 461/988/124 454/996/62 462/997/62 +f 459/991/116 452/998/57 460/986/57 +f 457/994/130 450/999/59 458/989/59 +f 478/1000/62 471/1001/129 479/1002/129 +f 476/1003/57 469/1004/124 477/1005/124 +f 474/1006/59 467/1007/116 475/1008/116 +f 480/1009/58 465/1010/130 473/1011/130 +f 479/1002/129 472/1012/58 480/1009/58 +f 477/1005/124 470/1013/62 478/1014/62 +f 475/1008/116 468/1015/57 476/1003/57 +f 473/1011/130 466/1016/59 474/1006/59 +f 483/718/131 490/1017/132 484/1018/131 +f 490/1017/132 481/1019/133 482/1020/133 +f 488/1021/134 483/718/61 484/1018/61 +f 485/1022/135 488/1021/134 486/1023/135 +f 498/1024/130 505/1025/59 497/1026/59 +f 496/1027/116 503/1028/57 495/1029/57 +f 494/1030/124 501/1031/62 493/1032/62 +f 492/1033/129 499/1034/58 491/1035/58 +f 491/1035/58 506/1036/130 498/1024/130 +f 497/1026/59 504/1037/116 496/1027/116 +f 495/1029/57 502/1038/124 494/1030/124 +f 493/1039/62 500/1040/129 492/1033/129 +f 514/1041/130 521/1042/59 513/1043/59 +f 512/1044/116 519/1045/57 511/1046/57 +f 510/1047/124 517/1048/62 509/1049/62 +f 508/1050/129 515/1051/58 507/1052/58 +f 507/1052/58 522/1053/130 514/1041/130 +f 513/1043/59 520/1054/116 512/1044/116 +f 511/1046/57 518/1055/124 510/1047/124 +f 509/1056/62 516/1057/129 508/1050/129 +f 627/1058/129 611/1059/136 610/1060/129 +f 615/1061/137 621/1062/130 616/1063/130 +f 612/1064/138 624/1065/93 613/1066/93 +f 611/1059/136 625/1067/138 612/1064/138 +f 630/1068/67 608/1069/139 607/1070/67 +f 621/1062/130 617/1071/140 616/1063/130 +f 624/1072/93 614/1073/141 613/1074/93 +f 629/1075/139 609/1076/142 608/1069/139 +f 617/1071/140 619/1077/143 618/1078/143 +f 623/1079/141 615/1061/137 614/1073/141 +f 609/1076/142 627/1058/129 610/1060/129 +f 618/1078/143 630/1068/67 607/1070/67 +f 194/781/72 196/784/59 195/782/59 +f 196/784/59 198/786/73 197/785/73 +f 198/786/73 200/788/74 199/787/74 +f 200/788/74 202/858/75 201/789/75 +f 209/790/60 221/1080/60 220/791/76 +f 206/793/59 218/803/59 217/794/73 +f 213/796/77 225/805/77 224/797/62 +f 210/799/78 222/810/78 221/800/60 +f 207/802/79 219/811/79 218/803/59 +f 214/804/80 226/812/80 225/805/77 +f 204/806/74 216/813/74 215/807/63 +f 211/809/81 223/814/81 222/810/78 +f 208/792/76 220/791/76 219/811/79 +f 203/808/63 215/807/63 226/812/80 +f 205/795/73 217/794/73 216/813/74 +f 212/798/62 224/797/62 223/814/81 +f 228/815/82 230/818/80 229/816/80 +f 230/818/80 232/820/77 231/819/77 +f 232/820/77 234/822/62 233/821/62 +f 234/822/62 236/888/83 235/823/83 +f 243/824/60 255/1081/60 254/825/76 +f 240/827/59 252/837/59 251/828/73 +f 247/830/77 259/839/77 258/831/62 +f 244/833/78 256/844/78 255/834/60 +f 241/836/79 253/845/79 252/837/59 +f 248/838/80 260/846/80 259/839/77 +f 238/840/74 250/847/74 249/841/63 +f 245/843/81 257/848/81 256/844/78 +f 242/826/76 254/825/76 253/845/79 +f 237/842/63 249/841/63 260/846/80 +f 239/829/73 251/828/73 250/847/74 +f 246/832/62 258/831/62 257/848/81 +f 266/849/79 295/1082/79 299/850/76 +f 299/850/76 265/853/84 262/852/84 +f 265/853/84 361/1083/85 296/854/85 +f 270/855/86 330/1084/87 329/856/87 +f 202/858/75 228/1085/82 227/859/82 +f 329/856/88 330/1084/88 194/781/72 +f 277/860/60 289/1086/60 288/861/76 +f 274/863/59 286/873/59 285/864/73 +f 281/866/77 293/875/77 292/867/62 +f 278/869/78 290/880/78 289/870/60 +f 275/872/79 287/881/79 286/873/59 +f 282/874/80 294/882/80 293/875/77 +f 272/876/74 284/883/74 283/877/63 +f 279/879/81 291/884/81 290/880/78 +f 276/862/76 288/861/76 287/881/79 +f 271/878/63 283/877/63 294/882/80 +f 273/865/73 285/864/73 284/883/74 +f 280/868/62 292/867/62 291/884/81 +f 331/885/89 332/1087/89 298/886/90 +f 236/888/83 332/1087/91 331/885/91 +f 311/889/60 323/1088/60 322/890/76 +f 308/892/59 320/902/59 319/893/73 +f 315/895/77 327/904/77 326/896/62 +f 312/898/78 324/909/78 323/899/60 +f 309/901/79 321/910/79 320/902/59 +f 316/903/80 328/911/80 327/904/77 +f 306/905/74 318/912/74 317/906/63 +f 313/908/81 325/913/81 324/909/78 +f 310/891/76 322/890/76 321/910/79 +f 305/907/63 317/906/63 328/911/80 +f 307/894/73 319/893/73 318/912/74 +f 314/897/62 326/896/62 325/913/81 +f 301/914/92 295/1082/79 266/849/79 +f 296/854/85 361/1083/85 365/916/78 +f 304/917/78 365/916/78 366/918/81 +f 366/918/81 363/938/95 300/920/62 +f 336/921/58 338/924/93 337/922/93 +f 338/924/93 340/1089/63 339/925/63 +f 340/926/63 342/929/94 341/927/94 +f 342/929/94 344/931/57 343/930/57 +f 344/931/57 346/933/66 345/932/66 +f 346/933/66 348/935/60 347/934/60 +f 348/935/60 350/937/67 349/936/67 +f 350/937/67 336/921/58 335/923/58 +f 297/887/90 298/886/90 363/938/95 +f 298/886/90 300/920/62 363/938/95 +f 269/857/86 267/1090/144 301/914/92 +f 301/914/92 268/915/59 270/855/86 +f 410/940/97 412/1091/125 411/941/98 +f 414/943/100 416/946/103 415/944/101 +f 416/946/103 418/948/105 417/947/104 +f 418/948/105 420/950/107 419/949/106 +f 420/950/107 422/1092/127 421/951/108 +f 418/952/105 416/974/103 442/953/109 +f 411/955/98 431/695/112 430/956/111 +f 434/958/114 430/956/111 431/695/112 +f 431/695/112 432/694/119 433/957/113 +f 409/942/99 430/956/111 429/959/115 +f 419/961/106 421/951/108 436/962/117 +f 419/961/106 435/963/118 434/958/114 +f 417/964/104 434/958/114 433/957/113 +f 413/965/102 415/944/101 433/957/113 +f 439/968/122 443/954/110 440/967/121 +f 443/954/110 442/953/109 440/967/121 +f 423/971/124 446/969/123 439/968/122 +f 414/973/100 441/966/120 442/953/109 +f 412/975/125 410/972/97 439/968/122 +f 420/976/107 444/979/128 445/977/126 +f 418/952/105 443/954/110 444/979/128 +f 435/963/118 437/981/59 430/956/111 +f 448/980/62 445/977/126 444/979/128 +f 435/963/118 436/962/117 438/982/59 +f 444/979/128 443/954/110 439/968/122 +f 462/983/62 454/1093/62 455/984/129 +f 460/986/57 452/998/57 453/987/124 +f 458/989/59 450/999/59 451/990/116 +f 464/992/58 456/995/58 449/993/130 +f 463/985/129 455/984/129 456/995/58 +f 461/988/124 453/987/124 454/996/62 +f 459/991/116 451/990/116 452/998/57 +f 457/994/130 449/993/130 450/999/59 +f 478/1000/62 470/1094/62 471/1001/129 +f 476/1003/57 468/1015/57 469/1004/124 +f 474/1006/59 466/1016/59 467/1007/116 +f 480/1009/58 472/1012/58 465/1010/130 +f 479/1002/129 471/1001/129 472/1012/58 +f 477/1005/124 469/1004/124 470/1013/62 +f 475/1008/116 467/1007/116 468/1015/57 +f 473/1011/130 465/1010/130 466/1016/59 +f 483/718/131 489/1095/132 490/1017/132 +f 490/1017/132 489/1095/132 481/1019/133 +f 488/1021/134 487/1096/134 483/718/61 +f 485/1022/135 487/1096/134 488/1021/134 +f 498/1024/130 506/1036/130 505/1025/59 +f 496/1027/116 504/1037/116 503/1028/57 +f 494/1030/124 502/1038/124 501/1031/62 +f 492/1033/129 500/1040/129 499/1034/58 +f 491/1035/58 499/1034/58 506/1036/130 +f 497/1026/59 505/1025/59 504/1037/116 +f 495/1029/57 503/1028/57 502/1038/124 +f 493/1039/62 501/1097/62 500/1040/129 +f 514/1041/130 522/1053/130 521/1042/59 +f 512/1044/116 520/1054/116 519/1045/57 +f 510/1047/124 518/1055/124 517/1048/62 +f 508/1050/129 516/1057/129 515/1051/58 +f 507/1052/58 515/1051/58 522/1053/130 +f 513/1043/59 521/1042/59 520/1054/116 +f 511/1046/57 519/1045/57 518/1055/124 +f 509/1056/62 517/1098/62 516/1057/129 +f 627/1058/129 626/1099/136 611/1059/136 +f 615/1061/137 622/1100/137 621/1062/130 +f 612/1064/138 625/1067/138 624/1065/93 +f 611/1059/136 626/1099/136 625/1067/138 +f 630/1068/67 629/1075/139 608/1069/139 +f 621/1062/130 620/1101/140 617/1071/140 +f 624/1072/93 623/1079/141 614/1073/141 +f 629/1075/139 628/1102/142 609/1076/142 +f 617/1071/140 620/1101/140 619/1077/143 +f 623/1079/141 622/1100/137 615/1061/137 +f 609/1076/142 628/1102/142 627/1058/129 +f 618/1078/143 619/1077/143 630/1068/67 +o Latch +v 0.125000 1.000000 1.000000 +v -0.125000 1.000000 1.000000 +v 0.125000 1.000000 -0.625000 +v -0.125000 1.000000 -0.625000 +v 0.125000 1.312500 1.000000 +v -0.125000 1.312500 1.000000 +v 0.125000 1.312500 -0.625000 +v -0.125000 1.312500 -0.625000 +v 0.500000 1.312500 -0.625000 +v 0.500000 1.000000 -0.625000 +v -0.500000 1.312500 -0.625000 +v -0.500000 1.000000 -0.625000 +v 0.500000 1.000000 -0.875000 +v 0.500000 1.312500 -0.875000 +v -0.500000 1.312500 -0.875000 +v -0.500000 1.000000 -0.875000 +v 0.500000 1.062500 -0.937500 +v 0.500000 1.250000 -0.937500 +v -0.500000 1.250000 -0.937500 +v -0.500000 1.062500 -0.937500 +vt 0.953704 0.522727 +vt 0.972222 0.522727 +vt 0.972222 0.551136 +vt 1.000000 0.323864 +vt 0.981481 0.471591 +vt 0.981481 0.323864 +vt 0.958333 0.471591 +vt 0.939815 0.323864 +vt 0.958333 0.323864 +vt 0.916667 0.323864 +vt 0.939815 0.471591 +vt 0.916667 0.471591 +vt 0.958333 0.295455 +vt 0.939815 0.295455 +vt 0.875000 0.500000 +vt 0.949074 0.471591 +vt 0.949074 0.500000 +vt 0.949074 0.522727 +vt 0.875000 0.528409 +vt 0.875000 0.522727 +vt 0.875000 0.573864 +vt 0.949074 0.551136 +vt 0.949074 0.573864 +vt 0.870370 0.551136 +vt 0.851852 0.551136 +vt 0.851852 0.522727 +vt 0.949074 0.545455 +vt 0.949074 0.528409 +vt 0.875000 0.551136 +vt 0.953704 0.551136 +vt 1.000000 0.471591 +vt 0.875000 0.471591 +vt 0.870370 0.522727 +vt 0.875000 0.545455 +vn 1.0000 0.0000 0.0000 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 1.0000 0.0000 +vn -1.0000 0.0000 0.0000 +vn 0.0000 0.0000 1.0000 +vn 0.0000 0.7071 -0.7071 +vn 0.0000 0.0000 -1.0000 +vn 0.0000 -0.7071 -0.7071 +s off +f 644/1103/145 639/1104/145 640/1105/145 +f 632/1106/146 633/1107/146 631/1108/146 +f 637/1109/147 636/1110/147 635/1111/147 +f 632/1112/148 638/1113/148 634/1114/148 +f 631/1115/149 636/1110/149 632/1116/149 +f 633/1107/145 635/1111/145 631/1108/145 +f 641/1117/149 640/1118/149 639/1119/149 +f 644/1120/150 649/1121/150 645/1122/150 +f 639/1119/147 645/1122/147 641/1117/147 +f 642/1123/146 643/1124/146 640/1125/146 +f 646/1126/148 642/1127/148 641/1128/148 +f 647/1129/151 649/1121/151 648/1130/151 +f 646/1131/152 647/1129/152 643/1124/152 +f 640/1105/145 643/1132/145 644/1103/145 +f 643/1132/145 647/1129/145 644/1103/145 +f 647/1129/145 648/1130/145 644/1103/145 +f 632/1106/146 634/1133/146 633/1107/146 +f 637/1109/147 638/1113/147 636/1110/147 +f 632/1112/148 636/1110/148 638/1113/148 +f 631/1115/149 635/1111/149 636/1110/149 +f 633/1107/145 637/1109/145 635/1111/145 +f 641/1117/149 642/1134/149 640/1118/149 +f 644/1120/150 648/1130/150 649/1121/150 +f 639/1119/147 644/1120/147 645/1122/147 +f 642/1123/146 646/1131/146 643/1124/146 +f 641/1128/148 645/1135/148 646/1126/148 +f 645/1135/148 649/1121/148 646/1126/148 +f 649/1121/148 650/1136/148 646/1126/148 +f 647/1129/151 650/1136/151 649/1121/151 +f 646/1131/152 650/1136/152 647/1129/152 +o Gun +v -0.500000 0.000000 0.000000 +v 0.500000 0.000000 0.000000 +v -0.500000 1.000000 -0.750000 +v -0.500000 1.000000 0.000000 +v 0.500000 1.000000 0.000000 +v 0.500000 1.000000 -0.750000 +v 0.500000 0.500000 0.000000 +v 0.500000 0.500000 -0.750000 +v 0.500000 0.000000 1.000000 +v -0.500000 0.000000 1.000000 +v -0.500000 0.500000 0.000000 +v -0.500000 0.500000 -0.750000 +v 0.625000 0.500000 0.000000 +v 0.625000 0.500000 -0.750000 +v 0.625000 0.000000 1.000000 +v -0.625000 0.000000 1.000000 +v -0.625000 0.500000 0.000000 +v -0.625000 0.500000 -0.750000 +v 0.500000 -0.125000 1.000000 +v -0.500000 -0.125000 1.000000 +v 0.625000 0.000000 -0.750000 +v -0.625000 0.000000 -0.750000 +v 0.500000 -0.125000 -0.750000 +v -0.500000 -0.125000 -0.750000 +v 0.187500 -0.750000 0.500000 +v 0.187500 -0.125000 0.250000 +v 0.187500 -0.750000 1.000000 +v 0.187500 -0.125000 1.000000 +v 0.437500 -0.750000 0.500000 +v 0.437500 -0.125000 0.250000 +v 0.437500 -0.750000 1.000000 +v 0.437500 -0.125000 1.000000 +v 0.437500 -0.500000 0.500000 +v 0.437500 -0.323223 0.573223 +v 0.437500 -0.250000 0.750000 +v 0.437500 -0.323223 0.926777 +v 0.437500 -0.500000 1.000000 +v 0.437500 -0.676777 0.926777 +v 0.437500 -0.750000 0.750000 +v 0.437500 -0.676777 0.573223 +v 0.559000 -0.323223 0.573223 +v 0.559000 -0.500000 0.500000 +v 0.559000 -0.250000 0.750000 +v 0.559000 -0.323223 0.926777 +v 0.559000 -0.500000 1.000000 +v 0.559000 -0.676777 0.926777 +v 0.559000 -0.750000 0.750000 +v 0.559000 -0.676777 0.573223 +v -0.500000 0.125000 -0.750000 +v -0.250000 -0.125000 -0.750000 +v 0.250000 -0.125000 -0.750000 +v 0.500000 0.125000 -0.750000 +v -0.250000 0.875000 -0.750000 +v -0.500000 0.625000 -0.750000 +v 0.500000 0.625000 -0.750000 +v 0.250000 0.875000 -0.750000 +v -0.250000 -0.125000 -2.500000 +v -0.500000 0.125000 -2.500000 +v 0.500000 0.125000 -2.500000 +v 0.250000 -0.125000 -2.500000 +v -0.500000 0.625000 -2.500000 +v -0.250000 0.875000 -2.500000 +v 0.250000 0.875000 -2.500000 +v 0.500000 0.625000 -2.500000 +v 0.695083 0.632582 -0.687500 +v 0.750000 0.500000 -0.687500 +v 0.695083 0.367418 -0.687500 +v 0.562500 0.312500 -0.687500 +v 0.429917 0.367417 -0.687500 +v 0.375000 0.500000 -0.687500 +v 0.429917 0.632583 -0.687500 +v 0.562500 0.687500 -0.687500 +v 0.695083 0.632582 -2.562500 +v 0.750000 0.500000 -2.562500 +v 0.562500 0.312500 -2.562500 +v 0.429917 0.367417 -2.562500 +v 0.375000 0.500000 -2.562500 +v 0.429917 0.632583 -2.562500 +v 0.562500 0.687500 -2.562500 +v 0.695083 0.367418 -2.562500 +v 0.125000 -0.125000 -0.500000 +v -0.125000 -0.125000 -0.500000 +v 0.125000 -2.125000 -1.250000 +v -0.125000 -2.125000 -1.250000 +v 0.125000 -2.125000 -2.000000 +v -0.125000 -2.125000 -2.000000 +v 0.125000 -1.875000 -2.250000 +v -0.125000 -1.875000 -2.250000 +v 0.125000 -0.500000 -1.625000 +v -0.125000 -0.500000 -1.625000 +v 0.125000 -0.250000 -1.625000 +v -0.125000 -0.250000 -1.625000 +v 0.125000 -0.250000 -2.500000 +v -0.125000 -0.250000 -2.500000 +v 0.125000 -0.125000 -2.500000 +v -0.125000 -0.125000 -2.500000 +v 0.125000 -0.125000 -1.500000 +v -0.125000 -0.125000 -1.500000 +v 0.250000 -0.125000 -0.625000 +v 0.250000 -2.125000 -1.375000 +v 0.250000 -2.125000 -1.875000 +v 0.250000 -1.875000 -2.125000 +v 0.250000 -0.500000 -1.500000 +v 0.250000 -0.250000 -1.500000 +v 0.250000 -0.125000 -1.375000 +v -0.250000 -2.125000 -1.375000 +v -0.250000 -0.125000 -0.625000 +v -0.250000 -2.125000 -1.875000 +v -0.250000 -1.875000 -2.125000 +v -0.250000 -0.500000 -1.500000 +v -0.250000 -0.250000 -1.500000 +v -0.250000 -0.125000 -1.375000 +v 0.062500 -2.125000 -1.250000 +v -0.062500 -2.125000 -1.250000 +v 0.062500 -0.375000 0.250000 +v -0.062500 -0.375000 0.250000 +v 0.062500 -0.125000 0.250000 +v -0.062500 -0.125000 0.250000 +v 0.062500 -0.125000 -0.500000 +v -0.062500 -0.125000 -0.500000 +v 0.093750 -0.750000 0.875000 +v -0.093750 -0.750000 0.875000 +v 0.093750 -0.750000 0.687500 +v -0.093750 -0.750000 0.687500 +v 0.093750 -1.750000 0.375000 +v -0.093750 -1.750000 0.375000 +v 0.093750 -1.625000 0.250000 +v -0.093750 -1.625000 0.250000 +v 0.093750 -2.125000 -1.250000 +v -0.093750 -2.125000 -1.250000 +v 0.093750 -2.000000 -1.250000 +v -0.093750 -2.000000 -1.250000 v 0.562500 0.625000 -2.562500 v 0.474112 0.588388 -2.562500 v 0.437500 0.500000 -2.562500 @@ -672,106 +3333,6 @@ v 0.187500 -2.286612 -7.599112 v 0.187500 -2.463388 -7.599112 v 0.187500 -2.500000 -7.687500 v 0.187500 -2.463388 -7.775888 -v 0.250000 0.437500 0.000000 -v 0.156250 0.412380 0.000000 -v 0.087620 0.343750 0.000000 -v 0.062500 0.250000 0.000000 -v 0.087620 0.156250 0.000000 -v 0.156250 0.087620 0.000000 -v 0.250000 0.062500 0.000000 -v 0.343750 0.087620 0.000000 -v 0.412380 0.156250 0.000000 -v 0.437500 0.250000 0.000000 -v 0.412380 0.343750 0.000000 -v 0.343750 0.412380 0.000000 -v 0.250000 0.437500 1.000000 -v 0.156250 0.412380 1.000000 -v 0.087620 0.343750 1.000000 -v 0.062500 0.250000 1.000000 -v 0.087620 0.156250 1.000000 -v 0.156250 0.087620 1.000000 -v 0.250000 0.062500 1.000000 -v 0.343750 0.087620 1.000000 -v 0.412380 0.156250 1.000000 -v 0.437500 0.250000 1.000000 -v 0.412380 0.343750 1.000000 -v 0.343750 0.412380 1.000000 -v 0.250000 0.460938 0.000000 -v 0.144531 0.432677 0.000000 -v 0.067323 0.355469 0.000000 -v 0.039062 0.250000 0.000000 -v 0.067323 0.144531 0.000000 -v 0.144531 0.067323 0.000000 -v 0.250000 0.039062 0.000000 -v 0.355469 0.067322 0.000000 -v 0.432677 0.144531 0.000000 -v 0.460938 0.250000 0.000000 -v 0.432677 0.355469 0.000000 -v 0.355469 0.432677 0.000000 -v 0.250000 0.460938 -0.062500 -v 0.144531 0.432677 -0.062500 -v 0.067323 0.355469 -0.062500 -v 0.039062 0.250000 -0.062500 -v 0.067323 0.144531 -0.062500 -v 0.144531 0.067323 -0.062500 -v 0.250000 0.039062 -0.062500 -v 0.355469 0.067322 -0.062500 -v 0.432677 0.144531 -0.062500 -v 0.460938 0.250000 -0.062500 -v 0.432677 0.355469 -0.062500 -v 0.355469 0.432677 -0.062500 -v 0.510000 1.000000 1.000000 -v 0.510000 0.750000 0.000000 -v 0.510000 0.750000 1.000000 -v 0.510000 1.000000 0.000000 -v -0.510000 1.000000 1.000000 -v -0.510000 1.000000 0.000000 -v -0.510000 0.750000 1.000000 -v -0.510000 0.750000 0.000000 -v -0.125000 1.000000 1.000000 -v -0.125000 1.312500 1.000000 -v -0.125000 1.000000 2.000000 -v -0.125000 1.312500 1.250000 -v -0.250000 1.312500 1.000000 -v -0.250000 1.000000 2.000000 -v -0.250000 1.312500 1.250000 -v -0.250000 1.000000 1.000000 -v -0.125000 1.000000 1.000000 -v -0.500000 1.000000 1.000000 -v -0.125000 1.312500 1.000000 -v -0.500000 1.312500 1.000000 -v -0.125000 1.437500 0.875000 -v -0.500000 1.437500 0.875000 -v -0.125000 1.437500 0.625000 -v -0.500000 1.437500 0.625000 -v -0.125000 1.312500 0.500000 -v -0.500000 1.312500 0.500000 -v -0.125000 1.000000 0.500000 -v -0.500000 1.000000 0.500000 -v -0.187500 1.437500 0.875000 -v -0.187500 1.437500 0.625000 -v -0.187500 1.562500 0.875000 -v -0.187500 1.562500 0.625000 -v -0.125000 1.437500 0.625000 -v -0.125000 1.437500 0.875000 -v -0.125000 1.562500 0.625000 -v -0.125000 1.562500 0.875000 -v -0.125000 1.000000 0.000000 -v -0.500000 1.000000 0.000000 -v -0.125000 1.312500 -0.312500 -v -0.500000 1.312500 -0.312500 -v -0.125000 1.312500 -0.625000 -v -0.500000 1.312500 -0.625000 -v -0.125000 1.000000 -0.625000 -v -0.500000 1.000000 -0.625000 -v -0.250000 1.312500 0.500000 -v -0.250000 1.000000 0.500000 -v -0.250000 1.312500 0.000000 -v -0.250000 1.000000 0.000000 -v -0.125000 1.000000 0.500000 -v -0.125000 1.312500 0.500000 -v -0.125000 1.000000 0.000000 -v -0.125000 1.312500 0.000000 v -0.437500 -0.750000 0.500000 v -0.437500 -0.125000 0.250000 v -0.437500 -0.750000 1.000000 @@ -780,150 +3341,6 @@ v -0.187500 -0.750000 0.500000 v -0.187500 -0.125000 0.250000 v -0.187500 -0.750000 1.000000 v -0.187500 -0.125000 1.000000 -v -0.250000 0.437500 0.000000 -v -0.343750 0.412380 0.000000 -v -0.412380 0.343750 0.000000 -v -0.437500 0.250000 0.000000 -v -0.412380 0.156250 0.000000 -v -0.343750 0.087620 0.000000 -v -0.250000 0.062500 0.000000 -v -0.156250 0.087620 0.000000 -v -0.087620 0.156250 0.000000 -v -0.062500 0.250000 0.000000 -v -0.087620 0.343750 0.000000 -v -0.156250 0.412380 0.000000 -v -0.250000 0.437500 1.000000 -v -0.343750 0.412380 1.000000 -v -0.412380 0.343750 1.000000 -v -0.437500 0.250000 1.000000 -v -0.412380 0.156250 1.000000 -v -0.343750 0.087620 1.000000 -v -0.250000 0.062500 1.000000 -v -0.156250 0.087620 1.000000 -v -0.087620 0.156250 1.000000 -v -0.062500 0.250000 1.000000 -v -0.087620 0.343750 1.000000 -v -0.156250 0.412380 1.000000 -v -0.250000 0.460938 0.000000 -v -0.355469 0.432677 0.000000 -v -0.432677 0.355469 0.000000 -v -0.460938 0.250000 0.000000 -v -0.432677 0.144531 0.000000 -v -0.355469 0.067323 0.000000 -v -0.250000 0.039062 0.000000 -v -0.144531 0.067322 0.000000 -v -0.067323 0.144531 0.000000 -v -0.039062 0.250000 0.000000 -v -0.067323 0.355469 0.000000 -v -0.144531 0.432677 0.000000 -v -0.250000 0.460938 -0.062500 -v -0.355469 0.432677 -0.062500 -v -0.432677 0.355469 -0.062500 -v -0.460938 0.250000 -0.062500 -v -0.432677 0.144531 -0.062500 -v -0.355469 0.067323 -0.062500 -v -0.250000 0.039062 -0.062500 -v -0.144531 0.067322 -0.062500 -v -0.067323 0.144531 -0.062500 -v -0.039062 0.250000 -0.062500 -v -0.067323 0.355469 -0.062500 -v -0.144531 0.432677 -0.062500 -v 0.250000 0.937500 0.000000 -v 0.156250 0.912380 0.000000 -v 0.087620 0.843750 0.000000 -v 0.062500 0.750000 0.000000 -v 0.087620 0.656250 0.000000 -v 0.156250 0.587620 0.000000 -v 0.250000 0.562500 0.000000 -v 0.343750 0.587620 0.000000 -v 0.412380 0.656250 0.000000 -v 0.437500 0.750000 0.000000 -v 0.412380 0.843750 0.000000 -v 0.343750 0.912380 0.000000 -v 0.250000 0.937500 1.000000 -v 0.156250 0.912380 1.000000 -v 0.087620 0.843750 1.000000 -v 0.062500 0.750000 1.000000 -v 0.087620 0.656250 1.000000 -v 0.156250 0.587620 1.000000 -v 0.250000 0.562500 1.000000 -v 0.343750 0.587620 1.000000 -v 0.412380 0.656250 1.000000 -v 0.437500 0.750000 1.000000 -v 0.412380 0.843750 1.000000 -v 0.343750 0.912380 1.000000 -v 0.250000 0.960938 0.000000 -v 0.144531 0.932677 0.000000 -v 0.067323 0.855469 0.000000 -v 0.039062 0.750000 0.000000 -v 0.067323 0.644531 0.000000 -v 0.144531 0.567323 0.000000 -v 0.250000 0.539062 0.000000 -v 0.355469 0.567322 0.000000 -v 0.432677 0.644531 0.000000 -v 0.460938 0.750000 0.000000 -v 0.432677 0.855469 0.000000 -v 0.355469 0.932677 0.000000 -v 0.250000 0.960938 -0.062500 -v 0.144531 0.932677 -0.062500 -v 0.067323 0.855469 -0.062500 -v 0.039062 0.750000 -0.062500 -v 0.067323 0.644531 -0.062500 -v 0.144531 0.567323 -0.062500 -v 0.250000 0.539062 -0.062500 -v 0.355469 0.567322 -0.062500 -v 0.432677 0.644531 -0.062500 -v 0.460938 0.750000 -0.062500 -v 0.432677 0.855469 -0.062500 -v 0.355469 0.932677 -0.062500 -v -0.250000 0.937500 0.000000 -v -0.343750 0.912380 0.000000 -v -0.412380 0.843750 0.000000 -v -0.437500 0.750000 0.000000 -v -0.412380 0.656250 0.000000 -v -0.343750 0.587620 0.000000 -v -0.250000 0.562500 0.000000 -v -0.156250 0.587620 0.000000 -v -0.087620 0.656250 0.000000 -v -0.062500 0.750000 0.000000 -v -0.087620 0.843750 0.000000 -v -0.156250 0.912380 0.000000 -v -0.250000 0.937500 1.000000 -v -0.343750 0.912380 1.000000 -v -0.412380 0.843750 1.000000 -v -0.437500 0.750000 1.000000 -v -0.412380 0.656250 1.000000 -v -0.343750 0.587620 1.000000 -v -0.250000 0.562500 1.000000 -v -0.156250 0.587620 1.000000 -v -0.087620 0.656250 1.000000 -v -0.062500 0.750000 1.000000 -v -0.087620 0.843750 1.000000 -v -0.156250 0.912380 1.000000 -v -0.250000 0.960938 0.000000 -v -0.355469 0.932677 0.000000 -v -0.432677 0.855469 0.000000 -v -0.460938 0.750000 0.000000 -v -0.432677 0.644531 0.000000 -v -0.355469 0.567323 0.000000 -v -0.250000 0.539062 0.000000 -v -0.144531 0.567322 0.000000 -v -0.067323 0.644531 0.000000 -v -0.039062 0.750000 0.000000 -v -0.067323 0.855469 0.000000 -v -0.144531 0.932677 0.000000 -v -0.250000 0.960938 -0.062500 -v -0.355469 0.932677 -0.062500 -v -0.432677 0.855469 -0.062500 -v -0.460938 0.750000 -0.062500 -v -0.432677 0.644531 -0.062500 -v -0.355469 0.567323 -0.062500 -v -0.250000 0.539062 -0.062500 -v -0.144531 0.567322 -0.062500 -v -0.067323 0.644531 -0.062500 -v -0.039062 0.750000 -0.062500 -v -0.067323 0.855469 -0.062500 -v -0.144531 0.932677 -0.062500 v -0.437500 -0.500000 1.000000 v -0.437500 -0.323223 0.926777 v -0.437500 -0.250000 0.750000 @@ -1091,138 +3508,22 @@ v -0.474112 0.411612 -2.562500 v -0.437500 0.500000 -2.562500 v -0.474112 0.588388 -2.562500 v -0.562500 0.625000 -2.562500 -vt 0.055443 0.000276 -vt 0.062346 0.008193 -vt 0.055443 0.005923 -vt 0.071383 0.011570 -vt 0.064646 0.003302 -vt 0.069248 0.022865 -vt 0.067398 0.014394 -vt 0.071383 0.034160 -vt 0.073849 0.022865 -vt 0.002691 0.102479 -vt 0.004826 0.113774 -vt 0.000225 0.113774 -vt 0.002691 0.125069 -vt 0.018631 0.091185 -vt 0.011729 0.099102 -vt 0.009428 0.094211 -vt 0.006676 0.105303 -vt 0.009428 0.003302 -vt 0.006676 0.014394 -vt 0.002691 0.011570 -vt 0.018631 0.005923 -vt 0.011729 0.008193 -vt 0.002691 0.034160 -vt 0.004826 0.022865 -vt 0.006676 0.031336 -vt 0.000225 0.022865 -vt 0.071383 0.125069 -vt 0.069248 0.113774 -vt 0.073849 0.113774 -vt 0.071383 0.102479 -vt 0.067398 0.105303 -vt 0.064646 0.094211 -vt 0.055443 0.096832 -vt 0.055443 0.091185 -vt 0.087963 0.329545 -vt 0.092593 0.340909 -vt 0.083333 0.335227 -vt 0.071383 0.056749 -vt 0.069248 0.068044 -vt 0.067398 0.059573 -vt 0.071383 0.079339 -vt 0.073849 0.068044 -vt 0.064646 0.087607 -vt 0.067398 0.076515 -vt 0.055443 0.084986 -vt 0.062346 0.082716 -vt 0.002691 0.147658 -vt 0.004826 0.158953 -vt 0.000225 0.158953 -vt 0.111111 0.431818 -vt 0.111111 0.340909 -vt 0.074074 0.340909 -vt 0.092593 0.431818 -vt 0.074074 0.431818 -vt 0.037037 0.431818 -vt 0.037037 0.340909 -vt 0.018631 0.181542 -vt 0.025533 0.173625 -vt 0.048541 0.173625 -vt 0.069248 0.158953 -vt 0.071383 0.147658 -vt 0.073849 0.158953 -vt 0.073849 0.181542 -vt 0.062346 0.173625 -vt 0.067398 0.167424 -vt 0.009428 0.087607 -vt 0.018631 0.084986 -vt 0.018631 0.090633 -vt 0.006676 0.076515 -vt 0.011729 0.082716 -vt 0.002691 0.079339 -vt 0.004826 0.068044 -vt 0.002691 0.056749 -vt 0.000225 0.068044 -vt 0.000225 0.181542 -vt 0.006676 0.167424 -vt 0.011729 0.173625 -vt 0.011729 0.053372 -vt 0.009428 0.045455 -vt 0.011729 0.037537 -vt 0.048541 0.037537 -vt 0.043488 0.059573 -vt 0.025533 0.053372 -vt 0.018631 0.039807 -vt 0.018631 0.051102 -vt 0.041639 0.068044 -vt 0.030586 0.059573 -vt 0.055443 0.039807 -vt 0.048541 0.053372 -vt 0.043488 0.031336 -vt 0.032436 0.022865 -vt 0.041639 0.022865 -vt 0.062346 0.053372 -vt 0.062346 0.037537 -vt 0.064646 0.045455 -vt 0.055443 0.051102 -vt 0.030586 0.014394 -vt 0.043488 0.014394 -vt 0.025533 0.008193 -vt 0.048541 0.008193 -vt 0.043488 0.076515 -vt 0.032436 0.068044 -vt 0.048541 0.082716 -vt 0.055443 0.090633 -vt 0.025533 0.082716 -vt 0.011729 0.128446 -vt 0.006676 0.122245 -vt 0.011729 0.144281 -vt 0.009428 0.136364 -vt 0.062346 0.144281 -vt 0.064646 0.136364 -vt 0.062346 0.128446 -vt 0.018631 0.142011 -vt 0.055443 0.142011 -vt 0.055443 0.130716 -vt 0.043488 0.105303 -vt 0.032435 0.113774 -vt 0.030586 0.105303 -vt 0.025533 0.099102 -vt 0.048541 0.099102 -vt 0.041639 0.158953 -vt 0.030586 0.167424 -vt 0.032435 0.158953 -vt 0.043488 0.150482 -vt 0.030586 0.150482 -vt 0.048541 0.144281 -vt 0.048541 0.128446 -vt 0.041639 0.113774 -vt 0.030586 0.122245 -vt 0.025533 0.144281 -vt 0.018631 0.130716 -vt 0.025533 0.128446 +v 0.500000 1.000000 0.000000 +v 0.125000 1.000000 0.000000 +v 0.500000 1.312500 -0.312500 +v 0.125000 1.312500 -0.312500 +v 0.500000 1.312500 -0.625000 +v 0.125000 1.312500 -0.625000 +v 0.500000 1.000000 -0.625000 +v 0.125000 1.000000 -0.625000 +v -0.125000 1.000000 0.000000 +v -0.500000 1.000000 0.000000 +v -0.125000 1.312500 -0.312500 +v -0.500000 1.312500 -0.312500 +v -0.125000 1.312500 -0.625000 +v -0.500000 1.312500 -0.625000 +v -0.125000 1.000000 -0.625000 +v -0.500000 1.000000 -0.625000 vt 0.523148 0.568182 vt 0.578704 0.613636 vt 0.523148 0.613636 @@ -1238,26 +3539,6 @@ vt 0.439815 0.465909 vt 0.310185 0.420455 vt 0.310185 0.465909 vt 0.236111 0.465909 -vt 0.502268 0.673238 -vt 0.506944 0.670861 -vt 0.506944 0.687094 -vt 0.486111 0.670455 -vt 0.430556 0.704545 -vt 0.430556 0.670455 -vt 0.497732 0.673238 -vt 0.497732 0.684717 -vt 0.488379 0.684717 -vt 0.384259 0.704545 -vt 0.347222 0.704545 -vt 0.384259 0.670455 -vt 0.310185 0.704545 -vt 0.347222 0.670455 -vt 0.365741 0.625000 -vt 0.328704 0.602273 -vt 0.467593 0.602273 -vt 0.467593 0.772727 -vt 0.328704 0.772727 -vt 0.365741 0.750000 vt 0.652778 0.409091 vt 0.578704 0.397727 vt 0.652778 0.397727 @@ -1270,7 +3551,7 @@ vt 0.523148 0.625000 vt 0.226852 0.465909 vt 0.236111 0.568182 vt 0.226852 0.556818 -vt 0.237069 0.454560 +vt 0.236111 0.454545 vt 0.523148 0.465909 vt 0.652778 0.454545 vt 0.652778 0.465909 @@ -1283,73 +3564,6 @@ vt 0.347222 0.465909 vt 0.347222 0.556818 vt 0.476852 0.556818 vt 0.476852 0.465909 -vt 0.675926 0.596591 -vt 0.652778 0.630682 -vt 0.652778 0.596591 -vt 0.699074 0.596591 -vt 0.675926 0.630682 -vt 0.722222 0.596591 -vt 0.699074 0.630682 -vt 0.699074 0.659091 -vt 0.652778 0.659091 -vt 0.699074 0.568182 -vt 0.018519 0.340909 -vt 0.018519 0.431818 -vt 0.000000 0.340909 -vt 0.023148 0.329545 -vt 0.027778 0.335227 -vt -0.000000 0.607955 -vt 0.023148 0.642045 -vt -0.000000 0.642045 -vt 0.023148 0.607955 -vt 0.032407 0.642045 -vt 0.032407 0.607955 -vt 0.050926 0.642045 -vt 0.050926 0.607955 -vt 0.060185 0.642045 -vt 0.060185 0.607955 -vt 0.083333 0.642045 -vt 0.060185 0.653409 -vt 0.060185 0.681818 -vt 0.023148 0.681818 -vt 0.023148 0.596591 -vt 0.120370 0.642045 -vt 0.083333 0.670455 -vt 0.083333 0.642045 -vt 0.083333 0.602273 -vt 0.120370 0.630682 -vt 0.083333 0.630682 -vt 0.143519 0.630682 -vt 0.143519 0.642045 -vt 0.953704 0.522727 -vt 0.972222 0.522727 -vt 0.972222 0.551136 -vt 1.000000 0.323864 -vt 0.981481 0.471591 -vt 0.981481 0.323864 -vt 0.958333 0.471591 -vt 0.939815 0.323864 -vt 0.958333 0.323864 -vt 0.916667 0.323864 -vt 0.939815 0.471591 -vt 0.916667 0.471591 -vt 0.958333 0.295455 -vt 0.939815 0.295455 -vt 0.875000 0.500000 -vt 0.949074 0.471591 -vt 0.949074 0.500000 -vt 0.949074 0.522727 -vt 0.875000 0.528409 -vt 0.875000 0.522727 -vt 0.875000 0.573864 -vt 0.949074 0.551136 -vt 0.949074 0.573864 -vt 0.870370 0.551136 -vt 0.851852 0.551136 -vt 0.851852 0.522727 -vt 0.949074 0.545455 -vt 0.949074 0.528409 -vt 0.875000 0.551136 vt 0.263889 0.670455 vt 0.226852 0.613636 vt 0.282407 0.613636 @@ -1364,49 +3578,9 @@ vt 0.180556 0.670455 vt 0.162037 0.659195 vt 0.143434 0.636364 vt 0.162037 0.613532 -vt 0.166667 0.562500 -vt 0.185185 0.534091 -vt 0.185185 0.562500 -vt 0.185185 0.573864 -vt 0.166667 0.573864 -vt 0.111111 0.562500 -vt 0.185185 0.602273 -vt 0.648148 0.329545 -vt 0.611111 0.352273 -vt 0.611111 0.329545 -vt 0.134259 0.369318 -vt 0.555556 0.346591 -vt 0.555556 0.369318 -vt 0.555556 0.318182 -vt 0.134259 0.346591 -vt 0.111111 0.318182 -vt 0.111111 0.346591 -vt 0.111111 0.369318 -vt 0.555556 0.397727 -vt 0.578704 0.369318 -vt 0.578704 0.346591 -vt 0.722222 0.375000 -vt 0.722222 0.397727 -vt 0.648148 0.397727 -vt 0.722222 0.306818 -vt 0.722222 0.329545 -vt 0.648148 0.352273 -vt 0.907407 0.034091 -vt 0.916667 0.000000 -vt 0.944444 0.011364 -vt 0.740741 0.284091 -vt 0.722222 0.284091 -vt 0.740741 0.375000 -vt 0.740741 0.397727 -vt 0.750000 0.397727 -vt 0.731481 0.363636 -vt 0.740741 0.363636 -vt 0.750000 0.306818 -vt 0.740741 0.306818 vt 0.722222 -0.000000 vt 0.685185 0.159091 vt 0.685185 -0.000000 -vt 0.731481 0.318182 vt 0.666667 0.250000 vt 0.611111 0.227273 vt 0.629630 0.159091 @@ -1427,15 +3601,6 @@ vt 0.726852 0.283278 vt 0.685847 0.267046 vt 0.699074 0.250813 vt 0.712301 0.267045 -vt 0.805556 0.601731 -vt 0.796738 0.590909 -vt 0.805556 0.580087 -vt 0.736111 0.669642 -vt 0.722884 0.653409 -vt 0.736111 0.637176 -vt 0.777277 0.653381 -vt 0.764050 0.669614 -vt 0.750823 0.653381 vt 0.833333 0.295455 vt 0.824074 0.284091 vt 0.833333 0.250000 @@ -1469,162 +3634,6 @@ vt 0.699074 0.721591 vt 0.587963 0.738636 vt 0.587963 0.670455 vt 0.699074 0.687500 -vt 0.726852 0.534091 -vt 0.837963 0.568182 -vt 0.763889 0.534091 -vt 0.763889 0.534091 -vt 0.652778 0.568182 -vt 0.726852 0.534091 -vt 0.196368 0.480158 -vt 0.220299 0.480158 -vt 0.208333 0.505593 -vt 0.211665 0.522687 -vt 0.203704 0.528328 -vt 0.195742 0.511404 -vt 0.777277 0.653381 -vt 0.764050 0.669614 -vt 0.750823 0.653381 -vt 0.736111 0.669642 -vt 0.722884 0.653409 -vt 0.736111 0.637176 -vt 0.805556 0.601731 -vt 0.796738 0.590909 -vt 0.805556 0.580087 -vt 0.069444 0.585227 -vt 0.087963 0.596591 -vt 0.069444 0.596591 -vt 0.087963 0.568182 -vt 0.069444 0.579545 -vt 0.069444 0.568182 -vt 0.087963 0.585227 -vt 0.097222 0.579545 -vt 0.097222 0.585227 -vt 0.087963 0.579545 -vt 0.060185 0.585227 -vt 0.083333 0.477273 -vt 0.101852 0.488636 -vt 0.083333 0.488636 -vt 0.083333 0.443182 -vt 0.101852 0.454545 -vt 0.083333 0.454545 -vt 0.101852 0.477273 -vt 0.111111 0.488636 -vt 0.074074 0.477273 -vt 0.101852 0.465909 -vt 0.083333 0.500000 -vt 0.101852 0.443182 -vt 0.111111 0.454545 -vt 0.074074 0.443182 -vt 0.101852 0.431818 -vt 0.083333 0.465909 -vt 0.083333 0.443182 -vt 0.101852 0.454545 -vt 0.083333 0.454545 -vt 0.101852 0.443182 -vt 0.111111 0.454545 -vt 0.074074 0.443182 -vt 0.101852 0.431818 -vt 0.083333 0.465909 -vt 0.055556 0.562500 -vt 0.037037 0.505682 -vt 0.055556 0.505682 -vt 0.111111 0.522727 -vt 0.074074 0.545455 -vt 0.074074 0.522727 -vt 0.018519 0.545455 -vt 0.018519 0.522727 -vt 0.092593 0.500000 -vt 0.074074 0.500000 -vt 0.092593 0.568182 -vt 0.111111 0.545455 -vt 0.185185 0.500000 -vt 0.189815 0.488636 -vt 0.189815 0.500000 -vt 0.185185 0.431818 -vt 0.189815 0.443182 -vt 0.185185 0.443182 -vt 0.185185 0.409091 -vt 0.189815 0.397727 -vt 0.189815 0.409091 -vt 0.189815 0.511364 -vt 0.185185 0.511364 -vt 0.189815 0.454545 -vt 0.185185 0.454545 -vt 0.185185 0.465909 -vt 0.189815 0.477273 -vt 0.185185 0.477273 -vt 0.189815 0.420455 -vt 0.185185 0.420455 -vt 0.189815 0.522727 -vt 0.185185 0.522727 -vt 0.189815 0.465909 -vt 0.185185 0.488636 -vt 0.189815 0.431818 -vt 0.185185 0.534091 -vt 0.189815 0.534091 -vt 0.210648 0.437320 -vt 0.196742 0.427467 -vt 0.210648 0.397907 -vt 0.196303 0.446021 -vt 0.220365 0.446021 -vt 0.208334 0.471595 -vt 1.000000 0.863636 -vt 0.555556 1.000000 -vt 0.555556 0.863636 -vt 0.555556 1.000000 -vt 1.000000 0.863636 -vt 1.000000 1.000000 -vt 0.166667 0.562500 -vt 0.185185 0.534091 -vt 0.185185 0.562500 -vt 0.185185 0.573864 -vt 0.166667 0.573864 -vt 0.111111 0.562500 -vt 0.185185 0.602273 -vt -0.000000 0.607955 -vt 0.023148 0.642045 -vt -0.000000 0.642045 -vt 0.023148 0.607955 -vt 0.032407 0.642045 -vt 0.032407 0.607955 -vt 0.050926 0.642045 -vt 0.050926 0.607955 -vt 0.060185 0.642045 -vt 0.060185 0.607955 -vt 0.083333 0.642045 -vt 0.060185 0.653409 -vt 0.060185 0.681818 -vt 0.023148 0.681818 -vt 0.023148 0.596591 -vt 0.069444 0.585227 -vt 0.087963 0.596591 -vt 0.069444 0.596591 -vt 0.087963 0.568182 -vt 0.069444 0.579545 -vt 0.069444 0.568182 -vt 0.087963 0.585227 -vt 0.097222 0.579545 -vt 0.097222 0.585227 -vt 0.087963 0.579545 -vt 0.060185 0.585227 -vt 0.675926 0.596591 -vt 0.652778 0.630682 -vt 0.652778 0.596591 -vt 0.699074 0.596591 -vt 0.675926 0.630682 -vt 0.722222 0.596591 -vt 0.699074 0.630682 -vt 0.699074 0.659091 -vt 0.652778 0.659091 -vt 0.699074 0.568182 -vt 0.120370 0.642045 -vt 0.083333 0.670455 -vt 0.083333 0.642045 -vt 0.083333 0.602273 -vt 0.120370 0.630682 -vt 0.083333 0.630682 -vt 0.143519 0.630682 -vt 0.143519 0.642045 vt 0.263889 0.670455 vt 0.226852 0.613636 vt 0.282407 0.613636 @@ -1636,99 +3645,6 @@ vt 0.226852 0.693182 vt 0.226852 0.670455 vt 0.180556 0.693182 vt 0.180556 0.670455 -vt 0.185185 0.500000 -vt 0.189815 0.488636 -vt 0.189815 0.500000 -vt 0.185185 0.431818 -vt 0.189815 0.443182 -vt 0.185185 0.443182 -vt 0.185185 0.409091 -vt 0.189815 0.397727 -vt 0.189815 0.409091 -vt 0.189815 0.511364 -vt 0.185185 0.511364 -vt 0.189815 0.454545 -vt 0.185185 0.454545 -vt 0.185185 0.465909 -vt 0.189815 0.477273 -vt 0.185185 0.477273 -vt 0.189815 0.420455 -vt 0.185185 0.420455 -vt 0.189815 0.522727 -vt 0.185185 0.522727 -vt 0.189815 0.465909 -vt 0.185185 0.488636 -vt 0.189815 0.431818 -vt 0.185185 0.534091 -vt 0.189815 0.534091 -vt 0.210648 0.437320 -vt 0.196742 0.427467 -vt 0.210648 0.397907 -vt 0.196303 0.446021 -vt 0.220365 0.446021 -vt 0.208334 0.471595 -vt 0.185185 0.500000 -vt 0.189815 0.488636 -vt 0.189815 0.500000 -vt 0.185185 0.431818 -vt 0.189815 0.443182 -vt 0.185185 0.443182 -vt 0.185185 0.409091 -vt 0.189815 0.397727 -vt 0.189815 0.409091 -vt 0.189815 0.511364 -vt 0.185185 0.511364 -vt 0.189815 0.454545 -vt 0.185185 0.454545 -vt 0.185185 0.465909 -vt 0.189815 0.477273 -vt 0.185185 0.477273 -vt 0.189815 0.420455 -vt 0.185185 0.420455 -vt 0.189815 0.522727 -vt 0.185185 0.522727 -vt 0.189815 0.465909 -vt 0.185185 0.488636 -vt 0.189815 0.431818 -vt 0.185185 0.534091 -vt 0.189815 0.534091 -vt 0.210648 0.437320 -vt 0.196742 0.427467 -vt 0.210648 0.397907 -vt 0.196303 0.446021 -vt 0.220365 0.446021 -vt 0.208334 0.471595 -vt 0.185185 0.500000 -vt 0.189815 0.488636 -vt 0.189815 0.500000 -vt 0.185185 0.431818 -vt 0.189815 0.443182 -vt 0.185185 0.443182 -vt 0.185185 0.409091 -vt 0.189815 0.397727 -vt 0.189815 0.409091 -vt 0.189815 0.511364 -vt 0.185185 0.511364 -vt 0.189815 0.454545 -vt 0.185185 0.454545 -vt 0.185185 0.465909 -vt 0.189815 0.477273 -vt 0.185185 0.477273 -vt 0.189815 0.420455 -vt 0.185185 0.420455 -vt 0.189815 0.522727 -vt 0.185185 0.522727 -vt 0.189815 0.465909 -vt 0.185185 0.488636 -vt 0.189815 0.431818 -vt 0.185185 0.534091 -vt 0.189815 0.534091 -vt 0.210648 0.437320 -vt 0.196742 0.427467 -vt 0.210648 0.397907 -vt 0.196303 0.446021 -vt 0.220365 0.446021 -vt 0.208334 0.471595 vt 0.180640 0.636364 vt 0.162037 0.659195 vt 0.143434 0.636364 @@ -1747,77 +3663,38 @@ vt 0.726852 0.283278 vt 0.685847 0.267046 vt 0.699074 0.250813 vt 0.712301 0.267045 -vt 0.067398 0.031336 -vt 0.018631 0.096832 -vt 0.018631 0.000276 -vt 0.067398 0.122245 -vt 0.062346 0.099102 -vt 0.092593 0.318182 -vt 0.006676 0.150482 -vt 0.055443 0.175895 -vt 0.055443 0.181542 -vt 0.018631 0.175895 -vt 0.043488 0.167424 -vt 0.067398 0.150482 -vt 0.006676 0.059573 -vt 0.030586 0.031336 -vt 0.025533 0.037537 -vt 0.030586 0.076515 -vt 0.043488 0.122245 +vt 0.675926 0.596591 +vt 0.652778 0.630682 +vt 0.652778 0.596591 +vt 0.699074 0.596591 +vt 0.675926 0.630682 +vt 0.722222 0.596591 +vt 0.699074 0.630682 +vt 0.699074 0.659091 +vt 0.652778 0.659091 +vt 0.699074 0.568182 +vt 0.675926 0.596591 +vt 0.652778 0.630682 +vt 0.652778 0.596591 +vt 0.699074 0.596591 +vt 0.675926 0.630682 +vt 0.722222 0.596591 +vt 0.699074 0.630682 +vt 0.699074 0.659091 +vt 0.652778 0.659091 +vt 0.699074 0.568182 vt 0.384259 0.602273 vt 0.384259 0.420455 -vt 0.511621 0.673238 -vt 0.513558 0.678977 -vt 0.511621 0.684717 -vt 0.502268 0.684717 -vt 0.500331 0.678977 -vt 0.486111 0.704545 -vt 0.486442 0.678978 -vt 0.488379 0.673238 -vt 0.493056 0.670861 -vt 0.499669 0.678978 -vt 0.493056 0.687094 -vt 0.310185 0.670455 vt 0.476852 0.454545 vt 0.513889 0.454545 vt 0.513889 0.568182 vt 0.476852 0.568182 -vt 0.722222 0.630682 -vt 0.652778 0.568182 -vt 0.000000 0.431818 -vt 0.018519 0.318182 -vt 0.083333 0.607955 -vt 0.023148 0.653409 -vt 0.023148 0.568182 -vt 0.060185 0.568182 -vt 0.060185 0.596591 -vt 0.120370 0.670455 -vt 0.120370 0.602273 -vt 0.953704 0.551136 -vt 1.000000 0.471591 -vt 0.875000 0.471591 -vt 0.870370 0.522727 -vt 0.875000 0.545455 vt 0.310185 0.693182 vt 0.180640 0.636364 vt 0.175192 0.652508 vt 0.148882 0.652508 vt 0.148882 0.620219 vt 0.175192 0.620219 -vt 0.111111 0.534091 -vt 0.111111 0.573864 -vt 0.111111 0.602273 -vt 0.111111 0.397727 -vt 0.722222 0.352273 -vt 0.648148 0.284091 -vt 0.944444 0.034091 -vt 0.935185 0.045455 -vt 0.916667 0.045455 -vt 0.907407 0.011364 -vt 0.935185 0.000000 -vt 0.750000 0.375000 -vt 0.750000 0.284091 -vt 0.740741 0.318182 vt 0.685185 0.181818 vt 0.685185 0.227273 vt 0.629630 0.250000 @@ -1835,21 +3712,6 @@ vt 0.699074 0.283278 vt 0.689721 0.278524 vt 0.689721 0.255567 vt 0.708427 0.255567 -vt 0.811791 0.583257 -vt 0.814373 0.590909 -vt 0.811791 0.598561 -vt 0.799320 0.598561 -vt 0.799320 0.583257 -vt 0.745464 0.641931 -vt 0.749338 0.653409 -vt 0.745464 0.664888 -vt 0.726758 0.664888 -vt 0.726758 0.641931 -vt 0.754698 0.641903 -vt 0.764050 0.637148 -vt 0.773403 0.641903 -vt 0.773403 0.664860 -vt 0.754698 0.664860 vt 0.824074 0.261364 vt 0.870370 0.250000 vt 0.870370 0.295455 @@ -1861,150 +3723,7 @@ vt 0.009259 0.852273 vt 0.009259 0.852273 vt 0.699074 0.738636 vt 0.699074 0.670455 -vt 0.745370 0.500000 -vt 0.652778 0.568182 -vt 0.745370 0.500000 -vt 0.837963 0.568182 -vt 0.201425 0.503321 -vt 0.196368 0.497115 -vt 0.194517 0.488636 -vt 0.201425 0.473951 -vt 0.208333 0.471680 -vt 0.215242 0.473951 -vt 0.222150 0.488636 -vt 0.220299 0.497115 -vt 0.215242 0.503321 -vt 0.199107 0.526816 -vt 0.195742 0.522687 -vt 0.194510 0.517045 -vt 0.199107 0.507274 -vt 0.203704 0.505763 -vt 0.208300 0.507274 -vt 0.211665 0.511404 -vt 0.212897 0.517045 -vt 0.208300 0.526816 -vt 0.754698 0.641903 -vt 0.764050 0.637148 -vt 0.773403 0.641903 -vt 0.773403 0.664860 -vt 0.754698 0.664860 -vt 0.745464 0.641931 -vt 0.749338 0.653409 -vt 0.745464 0.664888 -vt 0.726758 0.664888 -vt 0.726758 0.641931 -vt 0.811791 0.583257 -vt 0.814373 0.590909 -vt 0.811791 0.598561 -vt 0.799320 0.598561 -vt 0.799320 0.583257 -vt 0.060185 0.579545 -vt 0.111111 0.477273 -vt 0.074074 0.488636 -vt 0.083333 0.465909 -vt 0.101852 0.500000 -vt 0.111111 0.443182 -vt 0.074074 0.454545 -vt 0.083333 0.431818 -vt 0.101852 0.465909 -vt 0.111111 0.443182 -vt 0.074074 0.454545 -vt 0.083333 0.431818 -vt 0.101852 0.465909 -vt 0.037037 0.562500 -vt 0.074074 0.568182 -vt 0.185185 0.397727 -vt 0.224554 0.427467 -vt 0.218677 0.434680 -vt 0.202619 0.434680 -vt 0.194591 0.417614 -vt 0.196742 0.407760 -vt 0.202619 0.400547 -vt 0.218677 0.400547 -vt 0.224554 0.407760 -vt 0.226705 0.417614 -vt 0.201388 0.469311 -vt 0.196303 0.463070 -vt 0.194441 0.454545 -vt 0.201388 0.439780 -vt 0.208334 0.437496 -vt 0.215280 0.439780 -vt 0.222226 0.454545 -vt 0.220365 0.463070 -vt 0.215280 0.469311 -vt 1.000000 1.000000 -vt 0.555556 0.863636 -vt 0.111111 0.534091 -vt 0.111111 0.573864 -vt 0.111111 0.602273 -vt 0.083333 0.607955 -vt 0.023148 0.653409 -vt 0.023148 0.568182 -vt 0.060185 0.568182 -vt 0.060185 0.596591 -vt 0.060185 0.579545 -vt 0.722222 0.630682 -vt 0.652778 0.568182 -vt 0.120370 0.670455 -vt 0.120370 0.602273 vt 0.310185 0.693182 -vt 0.185185 0.397727 -vt 0.224554 0.427467 -vt 0.218677 0.434680 -vt 0.202619 0.434680 -vt 0.194591 0.417614 -vt 0.196742 0.407760 -vt 0.202619 0.400547 -vt 0.218677 0.400547 -vt 0.224554 0.407760 -vt 0.226705 0.417614 -vt 0.201388 0.469311 -vt 0.196303 0.463070 -vt 0.194441 0.454545 -vt 0.201388 0.439780 -vt 0.208334 0.437496 -vt 0.215280 0.439780 -vt 0.222226 0.454545 -vt 0.220365 0.463070 -vt 0.215280 0.469311 -vt 0.185185 0.397727 -vt 0.224554 0.427467 -vt 0.218677 0.434680 -vt 0.202619 0.434680 -vt 0.194591 0.417614 -vt 0.196742 0.407760 -vt 0.202619 0.400547 -vt 0.218677 0.400547 -vt 0.224554 0.407760 -vt 0.226705 0.417614 -vt 0.201388 0.469311 -vt 0.196303 0.463070 -vt 0.194441 0.454545 -vt 0.201388 0.439780 -vt 0.208334 0.437496 -vt 0.215280 0.439780 -vt 0.222226 0.454545 -vt 0.220365 0.463070 -vt 0.215280 0.469311 -vt 0.185185 0.397727 -vt 0.224554 0.427467 -vt 0.218677 0.434680 -vt 0.202619 0.434680 -vt 0.194591 0.417614 -vt 0.196742 0.407760 -vt 0.202619 0.400547 -vt 0.218677 0.400547 -vt 0.224554 0.407760 -vt 0.226705 0.417614 -vt 0.201388 0.469311 -vt 0.196303 0.463070 -vt 0.194441 0.454545 -vt 0.201388 0.439780 -vt 0.208334 0.437496 -vt 0.215280 0.439780 -vt 0.222226 0.454545 -vt 0.220365 0.463070 -vt 0.215280 0.469311 vt 0.175192 0.652508 vt 0.148882 0.652508 vt 0.148882 0.620219 @@ -2035,165 +3754,10 @@ vt 0.699074 0.283278 vt 0.689721 0.278524 vt 0.689721 0.255567 vt 0.708427 0.255567 -vt 0.074074 0.090909 -vt 0.611111 0.079545 -vt 0.611111 0.090909 -vt 0.074074 0.079545 -vt 0.611111 0.068182 -vt 0.074074 0.068182 -vt 0.611111 0.056818 -vt 0.074074 0.056818 -vt 0.611111 0.045455 -vt -0.000000 0.863636 -vt 0.532407 0.869318 -vt -0.000000 0.869318 -vt -0.000000 0.880682 -vt 0.532407 0.886364 -vt -0.000000 0.886364 -vt -0.000000 0.909091 -vt 0.532407 0.914773 -vt -0.000000 0.914773 -vt -0.000000 0.926136 -vt 0.532407 0.931818 -vt -0.000000 0.931818 -vt -0.000000 0.875000 -vt 0.532407 0.880682 -vt -0.000000 0.903409 -vt 0.532407 0.909091 -vt -0.000000 0.892045 -vt 0.532407 0.897727 -vt -0.000000 0.897727 -vt -0.000000 0.920455 -vt 0.532407 0.926136 -vt 0.532407 0.875000 -vt 0.532407 0.903409 -vt 0.532407 0.892045 -vt 0.532407 0.920455 -vt 0.074074 0.318182 -vt 0.611111 0.306818 -vt 0.611111 0.318182 -vt 0.074074 0.306818 -vt 0.611111 0.295455 -vt 0.074074 0.295455 -vt 0.611111 0.284091 -vt 0.074074 0.284091 -vt 0.611111 0.272727 -vt -0.000000 0.863636 -vt 0.532407 0.869318 -vt -0.000000 0.869318 -vt -0.000000 0.880682 -vt 0.532407 0.886364 -vt -0.000000 0.886364 -vt -0.000000 0.909091 -vt 0.532407 0.914773 -vt -0.000000 0.914773 -vt -0.000000 0.926136 -vt 0.532407 0.931818 -vt -0.000000 0.931818 -vt -0.000000 0.875000 -vt 0.532407 0.880682 -vt -0.000000 0.903409 -vt 0.532407 0.909091 -vt -0.000000 0.892045 -vt 0.532407 0.897727 -vt -0.000000 0.897727 -vt -0.000000 0.920455 -vt 0.532407 0.926136 -vt 0.532407 0.875000 -vt 0.532407 0.903409 -vt 0.532407 0.892045 -vt 0.532407 0.920455 -vt 0.074074 0.136364 -vt 0.537037 0.147727 -vt 0.074074 0.147727 -vt 0.074074 0.159091 -vt 0.537037 0.159091 -vt 0.074074 0.204545 -vt 0.074074 0.113636 -vt 0.611111 0.102273 -vt 0.611111 0.113636 -vt 0.074074 0.045455 -vt 0.611111 0.000000 -vt -0.000000 0.863636 -vt 0.532407 0.869318 -vt -0.000000 0.869318 -vt -0.000000 0.880682 -vt 0.532407 0.886364 -vt -0.000000 0.886364 -vt -0.000000 0.909091 -vt 0.532407 0.914773 -vt -0.000000 0.914773 -vt -0.000000 0.926136 -vt 0.532407 0.931818 -vt -0.000000 0.931818 -vt -0.000000 0.875000 -vt 0.532407 0.880682 -vt -0.000000 0.903409 -vt 0.532407 0.909091 -vt -0.000000 0.892045 -vt 0.532407 0.897727 -vt -0.000000 0.897727 -vt -0.000000 0.920455 -vt 0.532407 0.926136 -vt 0.532407 0.875000 -vt 0.532407 0.903409 -vt 0.532407 0.892045 -vt 0.532407 0.920455 -vt 0.611111 0.261364 -vt 0.074074 0.250000 -vt 0.611111 0.250000 -vt 0.074074 0.272727 -vt -0.000000 0.863636 -vt 0.532407 0.869318 -vt -0.000000 0.869318 -vt -0.000000 0.880682 -vt 0.532407 0.886364 -vt -0.000000 0.886364 -vt -0.000000 0.909091 -vt 0.532407 0.914773 -vt -0.000000 0.914773 -vt -0.000000 0.926136 -vt 0.532407 0.931818 -vt -0.000000 0.931818 -vt -0.000000 0.875000 -vt 0.532407 0.880682 -vt -0.000000 0.903409 -vt 0.532407 0.909091 -vt -0.000000 0.892045 -vt 0.532407 0.897727 -vt -0.000000 0.897727 -vt -0.000000 0.920455 -vt 0.532407 0.926136 -vt 0.532407 0.875000 -vt 0.532407 0.903409 -vt 0.532407 0.892045 -vt 0.532407 0.920455 -vt 0.537037 0.125000 -vt 0.074074 0.125000 -vt 0.537037 0.215909 -vt 0.074074 0.215909 -vt 0.537037 0.227273 -vt 0.074074 0.227273 -vt 0.074074 0.238636 -vt 0.560185 0.659091 -vt 0.467593 0.664773 -vt 0.467593 0.659091 -vt 0.560185 0.664773 -vt 0.467593 0.670455 -vt 0.560185 0.625000 -vt 0.467593 0.630682 -vt 0.467593 0.625000 -vt 0.560185 0.630682 -vt 0.467593 0.636364 -vt 0.560185 0.636364 -vt 0.467593 0.642045 -vt 0.560185 0.642045 -vt 0.467593 0.647727 -vt 0.560185 0.647727 -vt 0.467593 0.653409 -vt 0.560185 0.653409 -vt 0.537037 0.238636 -vt 0.611111 0.238636 +vt 0.722222 0.630682 +vt 0.652778 0.568182 +vt 0.722222 0.630682 +vt 0.652778 0.568182 vt 0.226852 0.613636 vt 0.240741 0.602273 vt 0.240741 0.613636 @@ -2211,49 +3775,6 @@ vt 0.254630 0.613636 vt 0.171296 0.602273 vt 0.199074 0.602273 vt 0.226852 0.602273 -vt 0.833333 0.204545 -vt 0.851852 0.045455 -vt 0.851852 0.204545 -vt 0.981481 0.045455 -vt 0.962963 0.068182 -vt 0.962963 0.045455 -vt 0.981481 0.068182 -vt 0.962963 0.181818 -vt 0.981481 0.181818 -vt 0.962963 0.204545 -vt 0.981481 0.204545 -vt 0.962963 0.250000 -vt 0.925926 0.181818 -vt 0.953704 0.068182 -vt 0.916667 0.181818 -vt 0.907407 0.045455 -vt 0.861111 0.204545 -vt 0.953704 0.068182 -vt 0.916667 0.181818 -vt 0.861111 0.227273 -vt 0.851852 0.227273 -vt 0.925926 0.204545 -vt 0.953704 0.250000 -vt 0.916667 0.204545 -vt 0.925926 0.181818 -vt 0.944444 0.045455 -vt 0.935185 0.045455 -vt 0.916667 0.045455 -vt 0.861111 0.204545 -vt 0.861111 0.227273 -vt 0.870370 0.227273 -vt 0.851852 0.227273 -vt 0.851852 0.204545 -vt 0.944444 0.045455 -vt 0.962963 0.068182 -vt 0.907407 0.045455 -vt 0.925926 0.204545 -vt 0.953704 0.250000 -vt 0.962963 0.250000 -vt 0.916667 0.204545 -vt 0.870370 0.250000 -vt 0.870370 0.227273 -vt 0.870370 0.250000 vt 0.685185 0.181818 vt 0.824074 0.193182 vt 0.685185 0.193182 @@ -2271,40 +3792,6 @@ vt 0.685185 0.204545 vt 0.824074 0.181818 vt 0.824074 0.215909 vt 0.824074 0.238636 -vt 0.870370 0.568182 -vt 0.861111 0.579545 -vt 0.861111 0.568182 -vt 0.814815 0.568182 -vt 0.805556 0.579545 -vt 0.805556 0.568182 -vt 0.833333 0.568182 -vt 0.824074 0.579545 -vt 0.824074 0.568182 -vt 0.851852 0.568182 -vt 0.842593 0.579545 -vt 0.842593 0.568182 -vt 0.851852 0.579545 -vt 0.796296 0.579545 -vt 0.796296 0.568182 -vt 0.814815 0.579545 -vt 0.833333 0.579545 -vt 0.796296 0.568182 -vt 0.787037 0.636364 -vt 0.787037 0.568182 -vt 0.740741 0.568182 -vt 0.731481 0.636364 -vt 0.731481 0.568182 -vt 0.759259 0.568182 -vt 0.750000 0.636364 -vt 0.750000 0.568182 -vt 0.777778 0.568182 -vt 0.768519 0.636364 -vt 0.768519 0.568182 -vt 0.777778 0.636364 -vt 0.722222 0.636364 -vt 0.722222 0.568182 -vt 0.740741 0.636364 -vt 0.759259 0.636364 vt 0.750000 0.295455 vt 0.768519 0.477273 vt 0.750000 0.477273 @@ -2338,69 +3825,6 @@ vt 0.777778 0.477273 vt 0.851852 0.443182 vt 0.842593 0.443182 vt 0.833333 0.477273 -vt 0.726852 0.477273 -vt 0.745370 0.477273 -vt 0.652778 0.500000 -vt 0.652778 0.477273 -vt 0.763889 0.477273 -vt 0.837963 0.500000 -vt 0.837963 0.477273 -vt 0.226852 0.488636 -vt 0.222222 0.494318 -vt 0.222222 0.488636 -vt 0.222222 0.448864 -vt 0.226852 0.454545 -vt 0.222222 0.454545 -vt 0.222222 0.500000 -vt 0.226852 0.505682 -vt 0.222222 0.505682 -vt 0.226852 0.500000 -vt 0.226852 0.471591 -vt 0.222222 0.477273 -vt 0.222222 0.471591 -vt 0.222222 0.460227 -vt 0.226852 0.437500 -vt 0.222222 0.443182 -vt 0.222222 0.437500 -vt 0.226852 0.477273 -vt 0.222222 0.482955 -vt 0.226852 0.465909 -vt 0.222222 0.465909 -vt 0.226852 0.443182 -vt 0.768519 0.568182 -vt 0.759259 0.636364 -vt 0.759259 0.568182 -vt 0.750000 0.568182 -vt 0.740741 0.636364 -vt 0.740741 0.568182 -vt 0.731481 0.568182 -vt 0.722222 0.636364 -vt 0.722222 0.568182 -vt 0.787037 0.568182 -vt 0.777778 0.636364 -vt 0.777778 0.568182 -vt 0.768519 0.636364 -vt 0.750000 0.636364 -vt 0.731481 0.636364 -vt 0.796296 0.568182 -vt 0.787037 0.636364 -vt 0.842593 0.568182 -vt 0.833333 0.579545 -vt 0.833333 0.568182 -vt 0.824074 0.568182 -vt 0.814815 0.579545 -vt 0.814815 0.568182 -vt 0.805556 0.568182 -vt 0.796296 0.579545 -vt 0.796296 0.568182 -vt 0.861111 0.568182 -vt 0.851852 0.579545 -vt 0.851852 0.568182 -vt 0.842593 0.579545 -vt 0.824074 0.579545 -vt 0.805556 0.579545 -vt 0.870370 0.568182 -vt 0.861111 0.579545 vt 0.601852 0.852273 vt 0.305556 0.863636 vt 0.305556 0.852273 @@ -2572,102 +3996,6 @@ vt 0.958333 0.772727 vt 0.953704 0.784091 vt 0.962963 0.784091 vt 0.958333 0.863636 -vt 0.111111 0.488636 -vt 0.111111 0.431818 -vt 0.111111 0.397727 -vt 0.111111 0.500000 -vt 0.111111 0.443182 -vt 0.111111 0.465909 -vt 0.111111 0.409091 -vt 0.111111 0.511364 -vt 0.111111 0.454545 -vt 0.111111 0.477273 -vt 0.111111 0.420455 -vt 0.111111 0.522727 -vt 0.194444 0.454545 -vt 0.194444 0.477273 -vt 0.194444 0.420455 -vt 0.194444 0.522727 -vt 0.194444 0.465909 -vt 0.194444 0.488636 -vt 0.194444 0.431818 -vt 0.194444 0.534091 -vt 0.194444 0.500000 -vt 0.194444 0.443182 -vt 0.194444 0.409091 -vt 0.194444 0.511364 -vt 0.111111 0.488636 -vt 0.111111 0.431818 -vt 0.111111 0.397727 -vt 0.111111 0.500000 -vt 0.111111 0.443182 -vt 0.111111 0.465909 -vt 0.111111 0.409091 -vt 0.111111 0.511364 -vt 0.111111 0.454545 -vt 0.111111 0.477273 -vt 0.111111 0.420455 -vt 0.111111 0.522727 -vt 0.194444 0.454545 -vt 0.194444 0.477273 -vt 0.194444 0.420455 -vt 0.194444 0.522727 -vt 0.194444 0.465909 -vt 0.194444 0.488636 -vt 0.194444 0.431818 -vt 0.194444 0.534091 -vt 0.194444 0.500000 -vt 0.194444 0.443182 -vt 0.194444 0.409091 -vt 0.194444 0.511364 -vt 0.111111 0.488636 -vt 0.111111 0.431818 -vt 0.111111 0.397727 -vt 0.111111 0.500000 -vt 0.111111 0.443182 -vt 0.111111 0.465909 -vt 0.111111 0.409091 -vt 0.111111 0.511364 -vt 0.111111 0.454545 -vt 0.111111 0.477273 -vt 0.111111 0.420455 -vt 0.111111 0.522727 -vt 0.194444 0.454545 -vt 0.194444 0.477273 -vt 0.194444 0.420455 -vt 0.194444 0.522727 -vt 0.194444 0.465909 -vt 0.194444 0.488636 -vt 0.194444 0.431818 -vt 0.194444 0.534091 -vt 0.194444 0.500000 -vt 0.194444 0.443182 -vt 0.194444 0.409091 -vt 0.194444 0.511364 -vt 0.111111 0.488636 -vt 0.111111 0.431818 -vt 0.111111 0.397727 -vt 0.111111 0.500000 -vt 0.111111 0.443182 -vt 0.111111 0.465909 -vt 0.111111 0.409091 -vt 0.111111 0.511364 -vt 0.111111 0.454545 -vt 0.111111 0.477273 -vt 0.111111 0.420455 -vt 0.111111 0.522727 -vt 0.194444 0.454545 -vt 0.194444 0.477273 -vt 0.194444 0.420455 -vt 0.194444 0.522727 -vt 0.194444 0.465909 -vt 0.194444 0.488636 -vt 0.194444 0.431818 -vt 0.194444 0.534091 -vt 0.194444 0.500000 -vt 0.194444 0.443182 -vt 0.194444 0.409091 -vt 0.194444 0.511364 vt 0.226852 0.613636 vt 0.240741 0.602273 vt 0.240741 0.613636 @@ -2906,34 +4234,11 @@ vt 1.000000 0.772727 vt 0.972222 0.784091 vt 0.972222 0.772727 vt 1.000000 0.784091 -vt 0.532407 0.863636 -vt 0.532407 0.863636 -vt 0.537037 0.136364 -vt 0.537037 0.204545 -vt 0.074074 0.102273 -vt 0.074074 0.000000 -vt 0.532407 0.863636 -vt 0.074074 0.261364 -vt 0.532407 0.863636 -vt 0.560185 0.670455 -vt 0.611111 0.125000 vt 0.143519 0.602273 -vt 0.833333 0.045455 -vt 0.981481 0.250000 vt 0.824074 0.159091 -vt 0.870370 0.579545 -vt 0.796296 0.636364 vt 0.768519 0.295455 vt 0.898148 0.465909 vt 0.768519 0.477273 -vt 0.726852 0.500000 -vt 0.763889 0.500000 -vt 0.226852 0.494318 -vt 0.226852 0.448864 -vt 0.226852 0.460227 -vt 0.226852 0.482955 -vt 0.796296 0.636364 -vt 0.870370 0.579545 vt 0.601852 0.863636 vt 0.629630 0.772727 vt 0.787037 0.863636 @@ -2941,14 +4246,6 @@ vt 0.800926 0.772727 vt 0.944444 0.772727 vt 0.680556 0.772727 vt 0.703704 0.863636 -vt 0.111111 0.534091 -vt 0.194444 0.397727 -vt 0.111111 0.534091 -vt 0.194444 0.397727 -vt 0.111111 0.534091 -vt 0.194444 0.397727 -vt 0.111111 0.534091 -vt 0.194444 0.397727 vt 0.143519 0.602273 vt 0.888889 0.647727 vt 0.962963 0.590909 @@ -2963,94 +4260,33 @@ vt 0.675926 0.818182 vt 0.675926 0.772727 vt 0.601852 0.863636 vt 1.000000 0.863636 -vn 0.0000 0.0000 1.0000 -vn 0.0000 0.0000 -1.0000 -vn 1.0000 0.0000 0.0000 -vn 0.0000 1.0000 0.0000 vn -1.0000 0.0000 0.0000 -vn 0.0000 -0.5547 -0.8321 -vn 0.0000 -1.0000 0.0000 -vn 0.0000 -0.4472 0.8944 -vn 0.0000 -0.8944 0.4472 +vn 0.0000 1.0000 0.0000 +vn 1.0000 0.0000 0.0000 vn 0.0000 0.8944 0.4472 +vn 0.0000 0.0000 1.0000 vn 0.7071 -0.7071 0.0000 vn -0.7071 -0.7071 0.0000 -vn 0.0000 0.7071 0.7071 -vn 0.0000 0.7071 -0.7071 -vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -1.0000 0.0000 +vn 0.0000 0.0000 -1.0000 vn 0.0000 -0.3714 -0.9285 -vn 0.0000 0.9231 0.3846 -vn 0.0000 0.7085 0.7057 vn 0.7071 0.7071 0.0000 vn -0.7071 0.7071 0.0000 vn 0.0000 -0.6508 0.7593 +vn 0.0000 -0.4472 0.8944 vn 0.0000 0.4472 -0.8944 vn 0.0000 -0.9744 0.2249 vn 0.0000 0.9701 -0.2425 -vn 0.8000 -0.6000 0.0000 -vn -0.8000 -0.6000 0.0000 -vn 0.9018 0.4321 0.0000 -vn 0.8660 -0.5000 0.0000 -vn 0.5000 -0.8660 -0.0000 -vn 0.1305 -0.9914 -0.0000 -vn 0.5000 0.8660 0.0000 -vn -0.8660 -0.5000 0.0000 -vn -0.5000 0.8660 0.0000 -vn 0.8660 0.5000 0.0000 -vn -0.5000 -0.8660 0.0000 -vn -0.8660 0.5000 0.0000 -vn -0.1305 -0.9914 -0.0000 -vn -0.9018 0.4321 0.0000 -vn 0.1305 0.9914 0.0000 -vn -0.1305 0.9914 0.0000 -vn 0.9018 -0.4321 0.0000 -vn 0.8069 -0.5907 0.0000 -vn 0.8069 0.5907 0.0000 -vn -0.8069 -0.5907 0.0000 -vn -0.9018 -0.4321 0.0000 -vn -0.8069 0.5907 0.0000 -vn 0.9960 -0.0890 0.0000 -vn -0.0000 -0.7071 0.7071 -vn -0.9960 -0.0890 0.0000 -vn -0.9659 -0.2588 0.0000 -vn -0.4858 -0.2432 0.8396 -vn 0.3929 -0.3622 0.8452 -vn 0.4858 -0.2432 0.8396 -vn -0.3458 -0.6635 -0.6635 -vn 0.3395 -0.1767 -0.9239 -vn 0.3458 -0.6635 -0.6635 -vn -0.3395 -0.1767 -0.9239 -vn 0.3945 0.1811 -0.9009 -vn -0.3945 0.1811 -0.9009 -vn 0.3878 -0.3878 -0.8361 -vn -0.3878 -0.3878 -0.8361 -vn 0.2418 -0.6861 -0.6861 -vn -0.8661 -0.1385 -0.4802 -vn -0.9386 0.0604 -0.3398 -vn 0.9032 -0.0951 0.4186 -vn 0.9487 -0.1245 0.2905 -vn 0.8661 -0.1385 -0.4802 -vn 0.9386 0.0604 -0.3398 -vn 0.9239 0.0000 0.3827 -vn 0.7071 0.0000 0.7071 -vn 0.7592 -0.4602 -0.4602 -vn 0.9518 -0.1020 -0.2893 -vn 0.9607 -0.1962 -0.1962 -vn -0.9607 -0.1962 -0.1962 -vn -0.9487 -0.1245 0.2905 -vn -0.9032 -0.0951 0.4186 -vn -0.9239 0.0000 0.3827 -vn -0.7071 0.0000 0.7071 -vn -0.3929 -0.3622 0.8452 -vn -0.7592 -0.4602 -0.4602 -vn -0.2418 -0.6861 -0.6861 -vn -0.9518 -0.1020 -0.2893 -vn -0.7071 0.0000 -0.7071 -vn 0.7071 0.0000 -0.7071 +vn 0.0000 0.7071 0.7071 +vn 0.0000 -0.7071 -0.7071 +vn 0.0000 -0.7071 0.7071 +vn 0.0000 0.7071 -0.7071 vn -0.3945 -0.3227 0.8604 vn 0.3354 -0.3308 0.8821 vn -0.3354 -0.3308 0.8821 vn -0.3389 -0.1566 -0.9277 +vn 0.3458 -0.6635 -0.6635 +vn -0.3458 -0.6635 -0.6635 vn -0.3951 0.2038 -0.8957 vn 0.3389 -0.1566 -0.9277 vn -0.4567 0.1610 -0.8749 @@ -3065,25 +4301,14 @@ vn -0.8727 0.2257 -0.4330 vn -0.5774 0.5774 -0.5774 vn 0.4567 0.1610 -0.8749 vn 0.8652 -0.1255 -0.4854 +vn 0.9607 -0.1962 -0.1962 vn 0.3945 -0.3227 0.8604 vn -0.9467 -0.1131 0.3016 +vn -0.9607 -0.1962 -0.1962 vn -0.8795 -0.1671 0.4457 vn -0.9402 0.0662 -0.3342 vn 0.9467 -0.1131 0.3016 vn -0.9607 0.1962 -0.1962 -vn 0.0000 -0.5547 0.8321 -vn 0.0000 -0.7833 0.6216 -vn 0.0000 -0.9363 0.3511 -vn 0.0000 -0.7833 -0.6216 -vn 0.0000 -0.9363 -0.3511 -vn -0.6124 -0.3536 -0.7071 -vn 0.6124 -0.3536 -0.7071 -vn -0.3536 -0.6124 -0.7071 -vn -0.3536 0.6124 -0.7071 -vn 0.6124 0.3536 -0.7071 -vn 0.3536 -0.6124 -0.7071 -vn -0.6124 0.3536 -0.7071 -vn 0.3536 0.6124 -0.7071 vn -0.7263 -0.6737 0.1363 vn -0.6794 0.7194 -0.1448 vn 0.9987 0.0473 -0.0196 @@ -3139,6 +4364,7 @@ vn 0.4617 -0.7574 -0.4617 vn -0.0671 -0.9955 0.0671 vn 0.1673 -0.9846 0.0505 vn 0.2775 -0.7237 -0.6318 +vn -0.7071 0.0000 0.7071 vn -0.4617 0.4617 0.7574 vn -0.0671 0.9955 0.0671 vn 0.4617 0.7574 -0.4617 @@ -3151,6 +4377,9 @@ vn 0.1448 -0.7194 -0.6794 vn 0.0196 -0.0473 -0.9987 vn -0.1363 0.6737 -0.7263 vn -0.1363 0.6737 0.7263 +vn 0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 0.7071 +vn -0.7071 0.0000 -0.7071 vn -0.0671 -0.0671 -0.9955 vn -0.1448 -0.7194 -0.6794 vn -0.5293 -0.5294 -0.6630 @@ -3185,1888 +4414,759 @@ vn 0.0473 -0.9987 0.0196 vn 0.7194 -0.6794 0.1448 vn 0.0473 0.9987 0.0196 vn -0.1866 -0.9824 -0.0000 -vn 0.9659 -0.2588 0.0000 s off -f 10/1/1 18/2/1 17/3/1 -f 6/4/1 18/2/1 8/5/1 -f 6/4/1 20/6/1 19/7/1 -f 2/8/1 20/6/1 4/9/1 -f 5/10/2 32/11/2 3/12/2 -f 32/11/2 1/13/2 3/12/2 -f 9/14/2 30/15/2 7/16/2 -f 7/16/2 31/17/2 5/10/2 -f 38/18/1 49/19/1 40/20/1 -f 38/18/1 51/21/1 50/22/1 -f 44/23/1 48/24/1 47/25/1 -f 40/20/1 48/24/1 42/26/1 -f 43/27/2 60/28/2 41/29/2 -f 60/28/2 39/30/2 41/29/2 -f 61/31/2 37/32/2 39/30/2 -f 37/32/2 63/33/2 35/34/2 -f 103/35/1 69/36/1 107/37/1 -f 78/38/1 88/39/1 87/40/1 -f 74/41/1 88/39/1 76/42/1 -f 72/43/1 89/44/1 74/41/1 -f 72/43/1 79/45/1 90/46/1 -f 77/47/2 100/48/2 75/49/2 -f 75/50/3 69/36/3 109/51/3 -f 73/52/4 111/53/4 71/54/4 -f 73/52/4 202/55/4 201/56/4 -f 71/57/2 92/58/2 136/59/2 -f 128/60/2 105/61/2 204/62/2 -f 200/63/2 126/64/2 127/65/2 -f 112/66/1 113/67/1 104/68/1 -f 112/66/1 115/69/1 114/70/1 -f 110/71/1 116/72/1 115/69/1 -f 106/73/1 116/72/1 108/74/1 -f 111/75/2 101/76/2 102/77/2 -f 118/78/1 106/73/1 140/79/1 -f 46/80/1 44/23/1 47/25/1 -f 12/81/1 83/82/1 120/83/1 -f 45/84/1 120/83/1 119/85/1 -f 119/85/1 118/78/1 140/79/1 -f 82/86/1 121/87/1 83/82/1 -f 11/88/1 84/89/1 12/81/1 -f 13/90/1 54/91/1 14/92/1 -f 86/93/1 78/38/1 87/40/1 -f 22/94/1 2/8/1 138/95/1 -f 138/95/1 85/96/1 11/88/1 -f 14/92/1 53/97/1 15/98/1 -f 52/99/1 10/1/1 16/100/1 -f 81/101/1 122/102/1 82/86/1 -f 80/103/1 70/104/1 124/105/1 -f 34/106/2 1/13/2 33/107/2 -f 98/108/2 77/47/2 137/109/2 -f 105/61/2 130/110/2 139/111/2 -f 58/112/2 43/27/2 139/111/2 -f 97/113/2 98/108/2 137/109/2 -f 139/111/2 131/114/2 57/115/2 -f 65/116/2 26/117/2 27/118/2 -f 28/119/2 9/14/2 64/120/2 -f 134/121/2 93/122/2 94/123/2 -f 133/124/2 94/123/2 95/125/2 -f 57/115/2 132/126/2 68/127/2 -f 66/128/2 25/129/2 26/117/2 -f 96/130/2 23/131/2 24/132/2 -f 96/130/2 24/132/2 132/126/2 -f 188/133/5 183/134/5 184/135/5 -f 145/136/4 143/137/4 144/138/4 -f 178/139/5 144/138/5 143/137/5 -f 177/140/3 176/141/3 141/142/3 -f 145/136/3 174/143/3 146/144/3 -f 173/145/5 142/146/5 175/147/5 -f 156/148/3 154/149/3 162/150/3 -f 165/151/6 147/152/6 148/153/6 -f 155/154/5 159/155/5 163/156/5 -f 167/157/7 148/153/7 147/152/7 -f 169/158/8 168/159/8 167/157/8 -f 171/160/9 170/161/9 169/158/9 -f 170/162/5 172/163/5 165/164/5 -f 166/165/3 171/166/3 169/167/3 -f 181/168/10 173/169/10 175/170/10 -f 179/171/4 174/172/4 173/169/4 -f 177/173/10 182/174/10 176/175/10 -f 178/176/4 183/134/4 177/173/4 -f 141/142/4 175/147/4 142/146/4 -f 176/141/1 185/177/1 175/147/1 -f 176/141/1 182/178/1 186/179/1 -f 175/147/1 185/177/1 181/180/1 -f 189/181/11 181/182/11 185/183/11 -f 182/184/12 190/185/12 186/186/12 -f 186/186/7 189/181/7 185/183/7 -f 179/171/3 187/187/3 180/188/3 -f 173/189/1 144/138/1 177/190/1 -f 189/181/2 178/191/2 174/192/2 -f 193/193/13 192/194/13 191/195/13 -f 195/196/4 194/197/4 193/193/4 -f 197/198/2 196/199/2 195/196/2 -f 194/197/5 198/200/5 192/201/5 -f 193/193/3 197/202/3 195/196/3 -f 199/203/4 202/55/4 200/204/4 -f 200/204/5 203/205/5 199/203/5 -f 206/206/1 205/207/1 199/203/1 -f 207/208/1 210/209/1 208/210/1 -f 209/211/13 212/212/13 210/209/13 -f 211/213/4 214/214/4 212/212/4 -f 213/215/14 216/216/14 214/214/14 -f 215/217/2 218/218/2 216/216/2 -f 216/219/5 218/220/5 208/221/5 -f 213/215/3 211/213/3 209/222/3 -f 221/223/5 220/224/5 219/225/5 -f 223/226/3 226/227/3 224/228/3 -f 221/223/2 225/229/2 222/230/2 -f 219/225/4 226/227/4 221/223/4 -f 240/231/3 235/232/3 236/233/3 -f 228/234/7 229/235/7 227/236/7 -f 233/237/4 232/238/4 231/239/4 -f 228/240/5 234/241/5 230/242/5 -f 227/243/1 232/238/1 228/244/1 -f 229/235/3 231/239/3 227/236/3 -f 237/245/1 236/246/1 235/247/1 -f 240/248/14 245/249/14 241/250/14 -f 235/247/4 241/250/4 237/245/4 -f 238/251/7 239/252/7 236/253/7 -f 242/254/5 238/255/5 237/256/5 -f 243/257/2 245/249/2 244/258/2 -f 242/259/15 243/257/15 239/252/15 -f 247/260/5 250/261/5 248/262/5 -f 254/263/3 251/264/3 252/265/3 -f 248/266/16 251/264/16 247/260/16 -f 247/260/7 253/267/7 249/268/7 -f 249/268/1 254/269/1 250/270/1 -f 265/271/3 267/272/3 269/273/3 -f 274/274/3 271/275/3 272/276/3 -f 275/277/4 274/274/4 272/276/4 -f 277/278/17 273/279/17 274/274/17 -f 278/280/5 277/278/5 275/277/5 -f 290/281/1 287/282/1 288/283/1 -f 286/284/4 283/285/4 284/286/4 -f 279/287/3 285/288/3 281/289/3 -f 281/290/18 286/284/18 282/291/18 -f 280/292/5 286/284/5 284/286/5 -f 280/293/2 283/285/2 279/294/2 -f 308/295/3 291/296/3 287/297/3 -f 307/298/5 294/299/5 290/281/5 -f 294/299/7 289/300/7 290/281/7 -f 295/301/7 324/302/7 298/303/7 -f 311/304/5 307/298/5 292/305/5 -f 291/296/3 310/306/3 312/307/3 -f 310/306/1 322/308/1 312/307/1 -f 310/306/4 313/309/4 321/310/4 -f 311/304/1 331/311/1 309/312/1 -f 338/313/5 342/314/5 333/315/5 -f 309/312/4 330/316/4 307/298/4 -f 346/317/2 348/318/2 344/319/2 -f 336/320/3 348/321/3 339/322/3 -f 340/323/4 346/324/4 337/325/4 -f 348/321/19 340/323/19 339/322/19 -f 338/313/20 346/324/20 345/326/20 -f 334/327/12 342/314/12 341/328/12 -f 344/319/11 336/329/11 335/330/11 -f 334/327/7 344/319/7 335/330/7 -f 359/331/2 361/332/2 363/333/2 -f 354/334/1 352/335/1 350/336/1 -f 368/337/4 366/338/4 372/339/4 -f 384/340/4 382/341/4 388/342/4 -f 390/343/7 392/344/7 394/345/7 -f 416/346/7 399/347/7 422/348/7 -f 410/349/7 407/350/7 408/351/7 -f 412/352/2 409/353/2 410/349/2 -f 408/351/5 412/354/5 410/349/5 -f 407/350/3 411/355/3 413/356/3 -f 429/357/21 432/358/21 430/359/21 -f 432/360/5 436/361/5 430/362/5 -f 435/363/3 431/364/3 429/365/3 -f 441/366/3 439/367/3 437/368/3 -f 438/369/8 441/366/8 437/368/8 -f 440/370/5 442/371/5 438/369/5 -f 443/372/22 440/373/22 439/367/22 -f 442/371/23 445/374/23 441/366/23 -f 447/375/24 444/376/24 443/372/24 -f 444/377/5 446/378/5 442/371/5 -f 445/374/3 443/372/3 441/366/3 -f 458/379/5 454/380/5 456/381/5 -f 455/382/3 449/383/3 457/384/3 -f 463/385/1 467/386/1 459/387/1 -f 480/388/2 482/389/2 474/390/2 -f 489/391/7 487/392/7 485/393/7 -f 495/394/4 497/395/4 491/396/4 -f 511/397/4 513/398/4 507/399/4 -f 517/400/5 516/401/5 515/402/5 -f 519/403/3 522/404/3 520/405/3 -f 518/406/2 519/407/2 516/408/2 -f 517/400/4 521/409/4 518/406/4 -f 515/410/1 522/404/1 517/400/1 -f 524/411/4 525/412/4 523/413/4 -f 532/414/4 533/415/4 531/416/4 -f 526/417/2 527/418/2 525/412/2 -f 523/413/1 529/419/1 524/411/1 -f 524/411/3 530/420/3 526/417/3 -f 525/412/5 528/421/5 523/413/5 -f 534/422/2 535/423/2 533/415/2 -f 531/416/1 537/424/1 532/414/1 -f 532/414/3 538/425/3 534/422/3 -f 533/415/5 536/426/5 531/416/5 -f 540/427/4 541/428/4 539/429/4 -f 542/430/2 543/431/2 541/428/2 -f 539/429/1 545/432/1 540/427/1 -f 540/427/3 546/433/3 542/430/3 -f 541/428/5 544/434/5 539/429/5 -f 549/435/4 547/436/4 548/437/4 -f 551/438/7 553/439/7 552/440/7 -f 547/436/13 554/441/13 551/442/13 -f 547/443/25 552/440/25 548/444/25 -f 548/437/2 553/439/2 549/435/2 -f 550/445/26 553/439/26 554/446/26 -f 675/447/1 698/448/1 699/449/1 -f 681/450/1 706/451/1 682/452/1 -f 679/453/1 702/454/1 703/455/1 -f 675/447/1 700/456/1 676/457/1 -f 682/452/1 707/458/1 683/459/1 -f 672/460/1 697/461/1 673/462/1 -f 679/453/1 704/463/1 680/464/1 -f 676/457/1 701/465/1 677/466/1 -f 672/460/1 707/458/1 696/467/1 -f 673/462/1 698/448/1 674/468/1 -f 681/450/1 704/463/1 705/469/1 -f 678/470/1 701/465/1 702/471/1 -f 708/472/2 718/473/2 714/474/2 -f 688/475/1 692/476/1 684/477/1 -f 721/478/3 720/479/3 722/480/3 -f 725/481/5 726/482/5 724/483/5 -f 731/484/3 728/485/3 729/486/3 -f 732/487/4 731/484/4 729/486/4 -f 734/488/17 730/489/17 731/484/17 -f 735/490/5 734/488/5 732/487/5 -f 736/491/1 739/492/1 737/493/1 -f 738/494/13 741/495/13 739/492/13 -f 740/496/4 743/497/4 741/495/4 -f 742/498/14 745/499/14 743/497/14 -f 744/500/2 747/501/2 745/499/2 -f 745/502/5 747/503/5 737/504/5 -f 742/498/3 740/496/3 738/505/3 -f 750/506/5 749/507/5 748/508/5 -f 752/509/3 755/510/3 753/511/3 -f 751/512/2 752/513/2 749/514/2 -f 750/506/4 754/515/4 751/512/4 -f 748/516/1 755/510/1 750/506/1 -f 758/517/13 757/518/13 756/519/13 -f 760/520/4 759/521/4 758/517/4 -f 762/522/2 761/523/2 760/520/2 -f 759/521/5 763/524/5 757/525/5 -f 758/517/3 762/526/3 760/520/3 -f 766/527/5 765/528/5 764/529/5 -f 768/530/3 771/531/3 769/532/3 -f 766/527/2 770/533/2 767/534/2 -f 764/529/4 771/531/4 766/527/4 -f 772/535/5 775/536/5 773/537/5 -f 779/538/3 776/539/3 777/540/3 -f 773/541/16 776/539/16 772/535/16 -f 772/535/7 778/542/7 774/543/7 -f 774/543/1 779/544/1 775/545/1 -f 783/546/1 806/547/1 807/548/1 -f 789/549/1 814/550/1 790/551/1 -f 787/552/1 810/553/1 811/554/1 -f 783/546/1 808/555/1 784/556/1 -f 790/551/1 815/557/1 791/558/1 -f 780/559/1 805/560/1 781/561/1 -f 787/552/1 812/562/1 788/563/1 -f 784/556/1 809/564/1 785/565/1 -f 780/559/1 815/557/1 804/566/1 -f 781/561/1 806/547/1 782/567/1 -f 789/549/1 812/562/1 813/568/1 -f 786/569/1 809/564/1 810/570/1 -f 816/571/2 826/572/2 822/573/2 -f 796/574/1 800/575/1 792/576/1 -f 831/577/1 854/578/1 855/579/1 -f 837/580/1 862/581/1 838/582/1 -f 835/583/1 858/584/1 859/585/1 -f 831/577/1 856/586/1 832/587/1 -f 838/582/1 863/588/1 839/589/1 -f 828/590/1 853/591/1 829/592/1 -f 835/583/1 860/593/1 836/594/1 -f 832/587/1 857/595/1 833/596/1 -f 828/590/1 863/588/1 852/597/1 -f 829/592/1 854/578/1 830/598/1 -f 837/580/1 860/593/1 861/599/1 -f 834/600/1 857/595/1 858/601/1 -f 864/602/2 874/603/2 870/604/2 -f 844/605/1 848/606/1 840/607/1 -f 879/608/1 902/609/1 903/610/1 -f 885/611/1 910/612/1 886/613/1 -f 883/614/1 906/615/1 907/616/1 -f 879/608/1 904/617/1 880/618/1 -f 886/613/1 911/619/1 887/620/1 -f 876/621/1 901/622/1 877/623/1 -f 883/614/1 908/624/1 884/625/1 -f 880/618/1 905/626/1 881/627/1 -f 876/621/1 911/619/1 900/628/1 -f 877/623/1 902/609/1 878/629/1 -f 885/611/1 908/624/1 909/630/1 -f 882/631/1 905/626/1 906/632/1 -f 912/633/2 922/634/2 918/635/2 -f 892/636/1 896/637/1 888/638/1 -f 933/639/5 934/640/5 936/641/5 -f 946/642/7 944/643/7 942/644/7 -f 952/645/4 954/646/4 948/647/4 -f 968/648/4 970/649/4 964/650/4 -f 982/651/2 984/652/2 986/653/2 -f 977/654/1 975/655/1 973/656/1 -f 10/1/1 8/5/1 18/2/1 -f 6/4/1 19/7/1 18/2/1 -f 6/4/1 4/9/1 20/6/1 -f 2/8/1 21/657/1 20/6/1 -f 5/10/2 31/17/2 32/11/2 -f 32/11/2 33/107/2 1/13/2 -f 9/14/2 29/658/2 30/15/2 -f 7/16/2 30/15/2 31/17/2 -f 38/18/1 50/22/1 49/19/1 -f 38/18/1 36/659/1 51/21/1 -f 44/23/1 42/26/1 48/24/1 -f 40/20/1 49/19/1 48/24/1 -f 43/27/2 59/660/2 60/28/2 -f 60/28/2 61/31/2 39/30/2 -f 61/31/2 62/661/2 37/32/2 -f 37/32/2 62/661/2 63/33/2 -f 103/35/1 109/662/1 69/36/1 -f 69/36/1 73/52/1 107/37/1 -f 78/38/1 76/42/1 88/39/1 -f 74/41/1 89/44/1 88/39/1 -f 72/43/1 90/46/1 89/44/1 -f 72/43/1 70/104/1 79/45/1 -f 77/47/2 99/663/2 100/48/2 -f 75/50/3 111/53/3 69/36/3 -f 73/52/4 69/36/4 111/53/4 -f 73/52/4 71/54/4 202/55/4 -f 125/664/2 202/665/2 136/59/2 -f 202/665/2 71/57/2 136/59/2 -f 71/57/2 91/666/2 92/58/2 -f 92/58/2 93/122/2 135/667/2 -f 92/58/2 135/667/2 136/59/2 -f 128/60/2 129/668/2 105/61/2 -f 128/60/2 204/62/2 127/65/2 -f 204/62/2 200/63/2 127/65/2 -f 200/63/2 202/665/2 126/64/2 -f 202/665/2 125/664/2 126/64/2 -f 112/66/1 114/70/1 113/67/1 -f 112/66/1 110/71/1 115/69/1 -f 110/71/1 108/74/1 116/72/1 -f 106/73/1 117/669/1 116/72/1 -f 111/75/2 75/49/2 101/76/2 -f 75/49/2 100/48/2 101/76/2 -f 91/666/2 71/57/2 102/77/2 -f 71/57/2 111/75/2 102/77/2 -f 118/78/1 117/669/1 106/73/1 -f 46/80/1 140/79/1 44/23/1 -f 55/670/1 13/90/1 12/81/1 -f 12/81/1 84/89/1 83/82/1 -f 83/82/1 121/87/1 120/83/1 -f 120/83/1 56/671/1 55/670/1 -f 55/670/1 12/81/1 120/83/1 -f 45/84/1 56/671/1 120/83/1 -f 140/79/1 46/80/1 45/84/1 -f 45/84/1 119/85/1 140/79/1 -f 82/86/1 122/102/1 121/87/1 -f 11/88/1 85/96/1 84/89/1 -f 13/90/1 55/670/1 54/91/1 -f 86/93/1 138/95/1 78/38/1 -f 22/94/1 21/657/1 2/8/1 -f 11/88/1 22/94/1 138/95/1 -f 138/95/1 86/93/1 85/96/1 -f 14/92/1 54/91/1 53/97/1 -f 16/100/1 15/98/1 52/99/1 -f 15/98/1 53/97/1 52/99/1 -f 52/99/1 51/21/1 36/659/1 -f 10/1/1 17/3/1 16/100/1 -f 52/99/1 36/659/1 10/1/1 -f 81/101/1 123/672/1 122/102/1 -f 80/103/1 79/45/1 70/104/1 -f 70/104/1 104/68/1 124/105/1 -f 104/68/1 113/67/1 124/105/1 -f 124/105/1 123/672/1 81/101/1 -f 124/105/1 81/101/1 80/103/1 -f 34/106/2 137/109/2 1/13/2 -f 98/108/2 99/663/2 77/47/2 -f 105/61/2 129/668/2 130/110/2 -f 58/112/2 59/660/2 43/27/2 -f 34/106/2 23/131/2 137/109/2 -f 23/131/2 97/113/2 137/109/2 -f 57/115/2 58/112/2 139/111/2 -f 139/111/2 130/110/2 131/114/2 -f 65/116/2 66/128/2 26/117/2 -f 65/116/2 27/118/2 64/120/2 -f 27/118/2 28/119/2 64/120/2 -f 28/119/2 29/658/2 9/14/2 -f 9/14/2 35/34/2 64/120/2 -f 35/34/2 63/33/2 64/120/2 -f 134/121/2 135/667/2 93/122/2 -f 133/124/2 134/121/2 94/123/2 -f 57/115/2 131/114/2 132/126/2 -f 66/128/2 67/673/2 25/129/2 -f 96/130/2 97/113/2 23/131/2 -f 24/132/2 25/129/2 132/126/2 -f 25/129/2 67/673/2 132/126/2 -f 67/673/2 68/127/2 132/126/2 -f 132/126/2 133/124/2 95/125/2 -f 95/125/2 96/130/2 132/126/2 -f 188/133/5 182/184/5 183/134/5 -f 145/136/4 146/144/4 143/137/4 -f 178/139/5 177/674/5 144/138/5 -f 145/136/3 173/675/3 174/143/3 -f 154/149/3 152/676/3 150/677/3 -f 150/677/3 164/678/3 154/149/3 -f 164/678/3 162/150/3 154/149/3 -f 162/150/3 160/679/3 158/680/3 -f 158/680/3 156/148/3 162/150/3 -f 165/151/6 166/681/6 147/152/6 -f 163/156/5 149/682/5 151/683/5 -f 151/683/5 153/684/5 163/156/5 -f 153/684/5 155/154/5 163/156/5 -f 155/154/5 157/685/5 159/155/5 -f 159/155/5 161/686/5 163/156/5 -f 167/157/7 168/159/7 148/153/7 -f 169/158/8 170/161/8 168/159/8 -f 171/160/9 172/687/9 170/161/9 -f 165/164/5 148/153/5 170/162/5 -f 148/153/5 168/159/5 170/162/5 -f 167/157/3 147/152/3 169/167/3 -f 147/152/3 166/165/3 169/167/3 -f 181/168/10 179/171/10 173/169/10 -f 179/171/4 180/188/4 174/172/4 -f 177/173/10 183/134/10 182/174/10 -f 178/176/4 184/135/4 183/134/4 -f 141/142/4 176/141/4 175/147/4 -f 176/141/1 186/179/1 185/177/1 -f 189/181/11 187/187/11 181/182/11 -f 182/184/12 188/133/12 190/185/12 -f 186/186/7 190/185/7 189/181/7 -f 179/171/3 181/182/3 187/187/3 -f 141/142/1 142/146/1 173/189/1 -f 173/189/1 145/136/1 144/138/1 -f 177/190/1 141/142/1 173/189/1 -f 180/688/2 187/689/2 174/192/2 -f 187/689/2 189/181/2 174/192/2 -f 189/181/2 190/185/2 178/191/2 -f 190/185/2 188/690/2 178/191/2 -f 188/690/2 184/691/2 178/191/2 -f 178/191/2 143/137/2 146/144/2 -f 178/191/2 146/144/2 174/192/2 -f 193/193/13 194/197/13 192/194/13 -f 195/196/4 196/199/4 194/197/4 -f 197/198/2 198/692/2 196/199/2 -f 194/197/5 196/199/5 198/200/5 -f 193/193/3 191/693/3 197/202/3 -f 199/203/4 201/56/4 202/55/4 -f 200/204/5 204/694/5 203/205/5 -f 205/207/1 201/56/1 199/203/1 -f 199/203/1 203/695/1 206/206/1 -f 207/208/1 209/211/1 210/209/1 -f 209/211/13 211/213/13 212/212/13 -f 211/213/4 213/215/4 214/214/4 -f 213/215/14 215/217/14 216/216/14 -f 215/217/2 217/696/2 218/218/2 -f 208/221/5 210/697/5 216/219/5 -f 210/697/5 212/212/5 216/219/5 -f 212/212/5 214/214/5 216/219/5 -f 209/222/3 207/698/3 217/699/3 -f 217/699/3 215/700/3 209/222/3 -f 215/700/3 213/215/3 209/222/3 -f 221/223/5 222/701/5 220/224/5 -f 223/226/3 225/702/3 226/227/3 -f 221/223/2 226/227/2 225/229/2 -f 219/225/4 224/228/4 226/227/4 -f 236/233/3 239/703/3 240/231/3 -f 239/703/3 243/257/3 240/231/3 -f 243/257/3 244/258/3 240/231/3 -f 228/234/7 230/704/7 229/235/7 -f 233/237/4 234/241/4 232/238/4 -f 228/240/5 232/238/5 234/241/5 -f 227/243/1 231/239/1 232/238/1 -f 229/235/3 233/237/3 231/239/3 -f 237/245/1 238/705/1 236/246/1 -f 240/248/14 244/258/14 245/249/14 -f 235/247/4 240/248/4 241/250/4 -f 238/251/7 242/259/7 239/252/7 -f 237/256/5 241/706/5 242/254/5 -f 241/706/5 245/249/5 242/254/5 -f 245/249/5 246/707/5 242/254/5 -f 243/257/2 246/707/2 245/249/2 -f 242/259/15 246/707/15 243/257/15 -f 247/260/5 249/268/5 250/261/5 -f 254/263/3 253/267/3 251/264/3 -f 248/266/16 252/708/16 251/264/16 -f 247/260/7 251/264/7 253/267/7 -f 249/268/1 253/267/1 254/269/1 -f 264/709/3 263/710/3 265/271/3 -f 265/271/3 266/711/3 267/272/3 -f 267/272/3 268/712/3 269/273/3 -f 269/273/3 270/713/3 264/709/3 -f 264/709/3 265/271/3 269/273/3 -f 274/274/3 273/714/3 271/275/3 -f 275/277/4 277/278/4 274/274/4 -f 277/278/17 276/715/17 273/279/17 -f 278/280/5 276/716/5 277/278/5 -f 290/281/1 289/300/1 287/282/1 -f 286/284/4 285/288/4 283/285/4 -f 279/287/3 283/285/3 285/288/3 -f 281/290/18 285/288/18 286/284/18 -f 280/292/5 282/717/5 286/284/5 -f 280/293/2 284/286/2 283/285/2 -f 287/297/3 289/300/3 308/295/3 -f 289/300/3 293/718/3 308/295/3 -f 290/281/5 288/719/5 307/298/5 -f 288/719/5 292/305/5 307/298/5 -f 294/299/7 293/718/7 289/300/7 -f 298/303/7 297/720/7 316/721/7 -f 316/721/7 315/722/7 295/301/7 -f 295/301/7 296/723/7 324/302/7 -f 324/302/7 325/724/7 298/303/7 -f 298/303/7 316/721/7 295/301/7 -f 311/304/5 309/312/5 307/298/5 -f 291/296/3 308/295/3 310/306/3 -f 310/306/1 321/725/1 322/308/1 -f 310/306/4 308/295/4 313/309/4 -f 311/304/1 332/726/1 331/311/1 -f 338/313/5 345/326/5 342/314/5 -f 309/312/4 331/727/4 330/316/4 -f 344/319/2 341/328/2 342/728/2 -f 342/728/2 345/729/2 346/317/2 -f 346/317/2 347/730/2 348/318/2 -f 348/318/2 343/731/2 344/319/2 -f 344/319/2 342/728/2 346/317/2 -f 336/320/3 343/732/3 348/321/3 -f 340/323/4 347/733/4 346/324/4 -f 348/321/19 347/733/19 340/323/19 -f 338/313/20 337/325/20 346/324/20 -f 334/327/12 333/315/12 342/314/12 -f 344/319/11 343/734/11 336/329/11 -f 334/327/7 341/328/7 344/319/7 -f 363/333/2 357/735/2 358/736/2 -f 358/736/2 364/737/2 359/331/2 -f 359/331/2 360/738/2 361/332/2 -f 361/332/2 362/739/2 363/333/2 -f 363/333/2 358/736/2 359/331/2 -f 350/336/1 349/740/1 356/741/1 -f 356/741/1 355/742/1 354/334/1 -f 354/334/1 353/743/1 352/335/1 -f 352/335/1 351/744/1 350/336/1 -f 350/336/1 356/741/1 354/334/1 -f 372/339/4 371/745/4 370/746/4 -f 370/746/4 369/747/4 368/337/4 -f 368/337/4 367/748/4 366/338/4 -f 366/338/4 365/749/4 372/339/4 -f 372/339/4 370/746/4 368/337/4 -f 388/342/4 387/750/4 386/751/4 -f 386/751/4 385/752/4 384/340/4 -f 384/340/4 383/753/4 382/341/4 -f 382/341/4 381/754/4 388/342/4 -f 388/342/4 386/751/4 384/340/4 -f 394/345/7 395/755/7 396/756/7 -f 396/756/7 389/757/7 390/343/7 -f 390/343/7 391/758/7 392/344/7 -f 392/344/7 393/759/7 394/345/7 -f 394/345/7 396/756/7 390/343/7 -f 399/347/7 400/760/7 422/348/7 -f 422/348/7 424/761/7 417/762/7 -f 424/761/7 402/763/7 417/762/7 -f 402/763/7 401/764/7 417/762/7 -f 417/762/7 416/346/7 422/348/7 -f 410/349/7 409/353/7 407/350/7 -f 412/352/2 411/765/2 409/353/2 -f 408/351/5 414/766/5 412/354/5 -f 407/350/3 409/353/3 411/355/3 -f 429/357/21 431/364/21 432/358/21 -f 432/360/5 434/767/5 436/361/5 -f 435/363/3 433/768/3 431/364/3 -f 441/366/3 443/372/3 439/367/3 -f 438/369/8 442/371/8 441/366/8 -f 440/370/5 444/377/5 442/371/5 -f 443/372/22 444/376/22 440/373/22 -f 442/371/23 446/378/23 445/374/23 -f 447/375/24 448/769/24 444/376/24 -f 444/377/5 448/770/5 446/378/5 -f 445/374/3 447/375/3 443/372/3 -f 456/381/5 452/771/5 458/379/5 -f 458/379/5 450/772/5 454/380/5 -f 457/384/3 451/773/3 455/382/3 -f 455/382/3 453/774/3 449/383/3 -f 459/387/1 460/775/1 461/776/1 -f 461/776/1 462/777/1 463/385/1 -f 463/385/1 464/778/1 465/779/1 -f 465/779/1 466/780/1 463/385/1 -f 466/780/1 467/386/1 463/385/1 -f 467/386/1 468/781/1 469/782/1 -f 469/782/1 470/783/1 459/387/1 -f 459/387/1 461/776/1 463/385/1 -f 467/386/1 469/782/1 459/387/1 -f 482/389/2 471/784/2 474/390/2 -f 471/784/2 472/785/2 474/390/2 -f 472/785/2 473/786/2 474/390/2 -f 474/390/2 475/787/2 476/788/2 -f 476/788/2 477/789/2 474/390/2 -f 477/789/2 478/790/2 474/390/2 -f 478/790/2 479/791/2 480/388/2 -f 480/388/2 481/792/2 482/389/2 -f 478/790/2 480/388/2 474/390/2 -f 485/393/7 484/793/7 483/794/7 -f 483/794/7 490/795/7 489/391/7 -f 489/391/7 488/796/7 487/392/7 -f 487/392/7 486/797/7 485/393/7 -f 485/393/7 483/794/7 489/391/7 -f 491/396/4 492/798/4 493/799/4 -f 493/799/4 494/800/4 495/394/4 -f 495/394/4 496/801/4 497/395/4 -f 497/395/4 498/802/4 491/396/4 -f 491/396/4 493/799/4 495/394/4 -f 507/399/4 508/803/4 509/804/4 -f 509/804/4 510/805/4 511/397/4 -f 511/397/4 512/806/4 513/398/4 -f 513/398/4 514/807/4 507/399/4 -f 507/399/4 509/804/4 511/397/4 -f 517/400/5 518/406/5 516/401/5 -f 519/403/3 521/409/3 522/404/3 -f 518/406/2 521/409/2 519/407/2 -f 517/400/4 522/404/4 521/409/4 -f 515/410/1 520/808/1 522/404/1 -f 524/411/4 526/417/4 525/412/4 -f 532/414/4 534/422/4 533/415/4 -f 526/417/2 530/809/2 527/418/2 -f 523/413/1 528/810/1 529/419/1 -f 524/411/3 529/811/3 530/420/3 -f 525/412/5 527/812/5 528/421/5 -f 534/422/2 538/813/2 535/423/2 -f 531/416/1 536/814/1 537/424/1 -f 532/414/3 537/815/3 538/425/3 -f 533/415/5 535/816/5 536/426/5 -f 540/427/4 542/430/4 541/428/4 -f 542/430/2 546/817/2 543/431/2 -f 539/429/1 544/818/1 545/432/1 -f 540/427/3 545/819/3 546/433/3 -f 541/428/5 543/820/5 544/434/5 -f 549/435/4 550/821/4 547/436/4 -f 551/438/7 554/446/7 553/439/7 -f 547/436/13 550/821/13 554/441/13 -f 547/443/25 551/438/25 552/440/25 -f 548/437/2 552/440/2 553/439/2 -f 550/445/26 549/822/26 553/439/26 -f 675/447/1 674/468/1 698/448/1 -f 681/450/1 705/469/1 706/451/1 -f 679/453/1 678/823/1 702/454/1 -f 675/447/1 699/449/1 700/456/1 -f 682/452/1 706/451/1 707/458/1 -f 672/460/1 696/467/1 697/461/1 -f 679/453/1 703/455/1 704/463/1 -f 676/457/1 700/456/1 701/465/1 -f 672/460/1 683/459/1 707/458/1 -f 673/462/1 697/461/1 698/448/1 -f 681/450/1 680/464/1 704/463/1 -f 678/470/1 677/466/1 701/465/1 -f 710/824/2 709/825/2 708/472/2 -f 708/472/2 719/826/2 718/473/2 -f 718/473/2 717/827/2 714/474/2 -f 717/827/2 716/828/2 714/474/2 -f 716/828/2 715/829/2 714/474/2 -f 714/474/2 713/830/2 712/831/2 -f 712/831/2 711/832/2 714/474/2 -f 711/832/2 710/824/2 714/474/2 -f 710/824/2 708/472/2 714/474/2 -f 684/477/1 685/833/1 686/834/1 -f 686/834/1 687/835/1 688/475/1 -f 688/475/1 689/836/1 692/476/1 -f 689/836/1 690/837/1 692/476/1 -f 690/837/1 691/838/1 692/476/1 -f 692/476/1 693/839/1 694/840/1 -f 694/840/1 695/841/1 684/477/1 -f 684/477/1 686/834/1 688/475/1 -f 692/476/1 694/840/1 684/477/1 -f 721/478/3 723/842/3 720/479/3 -f 725/481/5 727/843/5 726/482/5 -f 731/484/3 730/844/3 728/485/3 -f 732/487/4 734/488/4 731/484/4 -f 734/488/17 733/845/17 730/489/17 -f 735/490/5 733/846/5 734/488/5 -f 736/491/1 738/494/1 739/492/1 -f 738/494/13 740/496/13 741/495/13 -f 740/496/4 742/498/4 743/497/4 -f 742/498/14 744/500/14 745/499/14 -f 744/500/2 746/847/2 747/501/2 -f 737/504/5 739/848/5 745/502/5 -f 739/848/5 741/495/5 745/502/5 -f 741/495/5 743/497/5 745/502/5 -f 738/505/3 736/849/3 746/850/3 -f 746/850/3 744/851/3 738/505/3 -f 744/851/3 742/498/3 738/505/3 -f 750/506/5 751/512/5 749/507/5 -f 752/509/3 754/515/3 755/510/3 -f 751/512/2 754/515/2 752/513/2 -f 750/506/4 755/510/4 754/515/4 -f 748/516/1 753/852/1 755/510/1 -f 758/517/13 759/521/13 757/518/13 -f 760/520/4 761/523/4 759/521/4 -f 762/522/2 763/853/2 761/523/2 -f 759/521/5 761/523/5 763/524/5 -f 758/517/3 756/854/3 762/526/3 -f 766/527/5 767/855/5 765/528/5 -f 768/530/3 770/856/3 771/531/3 -f 766/527/2 771/531/2 770/533/2 -f 764/529/4 769/532/4 771/531/4 -f 772/535/5 774/543/5 775/536/5 -f 779/538/3 778/542/3 776/539/3 -f 773/541/16 777/857/16 776/539/16 -f 772/535/7 776/539/7 778/542/7 -f 774/543/1 778/542/1 779/544/1 -f 783/546/1 782/567/1 806/547/1 -f 789/549/1 813/568/1 814/550/1 -f 787/552/1 786/858/1 810/553/1 -f 783/546/1 807/548/1 808/555/1 -f 790/551/1 814/550/1 815/557/1 -f 780/559/1 804/566/1 805/560/1 -f 787/552/1 811/554/1 812/562/1 -f 784/556/1 808/555/1 809/564/1 -f 780/559/1 791/558/1 815/557/1 -f 781/561/1 805/560/1 806/547/1 -f 789/549/1 788/563/1 812/562/1 -f 786/569/1 785/565/1 809/564/1 -f 818/859/2 817/860/2 816/571/2 -f 816/571/2 827/861/2 826/572/2 -f 826/572/2 825/862/2 822/573/2 -f 825/862/2 824/863/2 822/573/2 -f 824/863/2 823/864/2 822/573/2 -f 822/573/2 821/865/2 820/866/2 -f 820/866/2 819/867/2 822/573/2 -f 819/867/2 818/859/2 822/573/2 -f 818/859/2 816/571/2 822/573/2 -f 792/576/1 793/868/1 794/869/1 -f 794/869/1 795/870/1 796/574/1 -f 796/574/1 797/871/1 800/575/1 -f 797/871/1 798/872/1 800/575/1 -f 798/872/1 799/873/1 800/575/1 -f 800/575/1 801/874/1 802/875/1 -f 802/875/1 803/876/1 792/576/1 -f 792/576/1 794/869/1 796/574/1 -f 800/575/1 802/875/1 792/576/1 -f 831/577/1 830/598/1 854/578/1 -f 837/580/1 861/599/1 862/581/1 -f 835/583/1 834/877/1 858/584/1 -f 831/577/1 855/579/1 856/586/1 -f 838/582/1 862/581/1 863/588/1 -f 828/590/1 852/597/1 853/591/1 -f 835/583/1 859/585/1 860/593/1 -f 832/587/1 856/586/1 857/595/1 -f 828/590/1 839/589/1 863/588/1 -f 829/592/1 853/591/1 854/578/1 -f 837/580/1 836/594/1 860/593/1 -f 834/600/1 833/596/1 857/595/1 -f 866/878/2 865/879/2 864/602/2 -f 864/602/2 875/880/2 874/603/2 -f 874/603/2 873/881/2 870/604/2 -f 873/881/2 872/882/2 870/604/2 -f 872/882/2 871/883/2 870/604/2 -f 870/604/2 869/884/2 868/885/2 -f 868/885/2 867/886/2 870/604/2 -f 867/886/2 866/878/2 870/604/2 -f 866/878/2 864/602/2 870/604/2 -f 840/607/1 841/887/1 842/888/1 -f 842/888/1 843/889/1 844/605/1 -f 844/605/1 845/890/1 848/606/1 -f 845/890/1 846/891/1 848/606/1 -f 846/891/1 847/892/1 848/606/1 -f 848/606/1 849/893/1 850/894/1 -f 850/894/1 851/895/1 840/607/1 -f 840/607/1 842/888/1 844/605/1 -f 848/606/1 850/894/1 840/607/1 -f 879/608/1 878/629/1 902/609/1 -f 885/611/1 909/630/1 910/612/1 -f 883/614/1 882/896/1 906/615/1 -f 879/608/1 903/610/1 904/617/1 -f 886/613/1 910/612/1 911/619/1 -f 876/621/1 900/628/1 901/622/1 -f 883/614/1 907/616/1 908/624/1 -f 880/618/1 904/617/1 905/626/1 -f 876/621/1 887/620/1 911/619/1 -f 877/623/1 901/622/1 902/609/1 -f 885/611/1 884/625/1 908/624/1 -f 882/631/1 881/627/1 905/626/1 -f 914/897/2 913/898/2 912/633/2 -f 912/633/2 923/899/2 922/634/2 -f 922/634/2 921/900/2 918/635/2 -f 921/900/2 920/901/2 918/635/2 -f 920/901/2 919/902/2 918/635/2 -f 918/635/2 917/903/2 916/904/2 -f 916/904/2 915/905/2 918/635/2 -f 915/905/2 914/897/2 918/635/2 -f 914/897/2 912/633/2 918/635/2 -f 888/638/1 889/906/1 890/907/1 -f 890/907/1 891/908/1 892/636/1 -f 892/636/1 893/909/1 896/637/1 -f 893/909/1 894/910/1 896/637/1 -f 894/910/1 895/911/1 896/637/1 -f 896/637/1 897/912/1 898/913/1 -f 898/913/1 899/914/1 888/638/1 -f 888/638/1 890/907/1 892/636/1 -f 896/637/1 898/913/1 888/638/1 -f 933/639/5 932/915/5 934/640/5 -f 934/640/5 935/916/5 936/641/5 -f 936/641/5 937/917/5 933/639/5 -f 937/917/5 938/918/5 933/639/5 -f 938/918/5 939/919/5 933/639/5 -f 942/644/7 941/920/7 940/921/7 -f 940/921/7 947/922/7 946/642/7 -f 946/642/7 945/923/7 944/643/7 -f 944/643/7 943/924/7 942/644/7 -f 942/644/7 940/921/7 946/642/7 -f 948/647/4 949/925/4 950/926/4 -f 950/926/4 951/927/4 952/645/4 -f 952/645/4 953/928/4 954/646/4 -f 954/646/4 955/929/4 948/647/4 -f 948/647/4 950/926/4 952/645/4 -f 964/650/4 965/930/4 966/931/4 -f 966/931/4 967/932/4 968/648/4 -f 968/648/4 969/933/4 970/649/4 -f 970/649/4 971/934/4 964/650/4 -f 964/650/4 966/931/4 968/648/4 -f 986/653/2 980/935/2 981/936/2 -f 981/936/2 987/937/2 982/651/2 -f 982/651/2 983/938/2 984/652/2 -f 984/652/2 985/939/2 986/653/2 -f 986/653/2 981/936/2 982/651/2 -f 973/656/1 972/940/1 979/941/1 -f 979/941/1 978/942/1 977/654/1 -f 977/654/1 976/943/1 975/655/1 -f 975/655/1 974/944/1 973/656/1 -f 973/656/1 979/941/1 977/654/1 +f 672/1137/153 667/1138/153 668/1139/153 +f 655/1140/154 653/1141/154 654/1142/154 +f 662/1143/153 654/1142/153 653/1141/153 +f 661/1144/155 660/1145/155 651/1146/155 +f 655/1140/155 658/1147/155 656/1148/155 +f 657/1149/153 652/1150/153 659/1151/153 +f 665/1152/156 657/1153/156 659/1154/156 +f 663/1155/154 658/1156/154 657/1153/154 +f 661/1157/156 666/1158/156 660/1159/156 +f 662/1160/154 667/1138/154 661/1157/154 +f 651/1146/154 659/1151/154 652/1150/154 +f 660/1145/157 669/1161/157 659/1151/157 +f 660/1145/157 666/1162/157 670/1163/157 +f 659/1151/157 669/1161/157 665/1164/157 +f 673/1165/158 665/1166/158 669/1167/158 +f 666/1168/159 674/1169/159 670/1170/159 +f 670/1170/160 673/1165/160 669/1167/160 +f 663/1155/155 671/1171/155 664/1172/155 +f 657/1173/157 654/1142/157 661/1174/157 +f 673/1165/161 662/1175/161 658/1176/161 +f 675/1177/153 678/1178/153 676/1179/153 +f 682/1180/155 679/1181/155 680/1182/155 +f 676/1183/162 679/1181/162 675/1177/162 +f 675/1177/160 681/1184/160 677/1185/160 +f 677/1185/157 682/1186/157 678/1187/157 +f 693/1188/155 695/1189/155 697/1190/155 +f 704/1191/153 708/1192/153 699/1193/153 +f 712/1194/161 714/1195/161 710/1196/161 +f 702/1197/155 714/1198/155 705/1199/155 +f 706/1200/154 712/1201/154 703/1202/154 +f 714/1198/163 706/1200/163 705/1199/163 +f 704/1191/164 712/1201/164 711/1203/164 +f 700/1204/159 708/1192/159 707/1205/159 +f 710/1196/158 702/1206/158 701/1207/158 +f 700/1204/160 710/1196/160 701/1207/160 +f 725/1208/161 727/1209/161 729/1210/161 +f 720/1211/157 718/1212/157 716/1213/157 +f 750/1214/160 733/1215/160 756/1216/160 +f 744/1217/160 741/1218/160 742/1219/160 +f 746/1220/161 743/1221/161 744/1217/161 +f 742/1219/153 746/1222/153 744/1217/153 +f 741/1218/155 745/1223/155 747/1224/155 +f 763/1225/165 766/1226/165 764/1227/165 +f 766/1228/153 770/1229/153 764/1230/153 +f 769/1231/155 765/1232/155 763/1233/155 +f 775/1234/155 773/1235/155 771/1236/155 +f 772/1237/166 775/1234/166 771/1236/166 +f 774/1238/153 776/1239/153 772/1237/153 +f 777/1240/167 774/1241/167 773/1235/167 +f 776/1239/168 779/1242/168 775/1234/168 +f 781/1243/169 778/1244/169 777/1240/169 +f 778/1245/153 780/1246/153 776/1239/153 +f 779/1242/155 777/1240/155 775/1234/155 +f 900/1247/153 903/1248/153 901/1249/153 +f 907/1250/155 904/1251/155 905/1252/155 +f 901/1253/162 904/1251/162 900/1247/162 +f 900/1247/160 906/1254/160 902/1255/160 +f 902/1255/157 907/1256/157 903/1257/157 +f 917/1258/153 918/1259/153 920/1260/153 +f 930/1261/160 928/1262/160 926/1263/160 +f 936/1264/154 938/1265/154 932/1266/154 +f 952/1267/154 954/1268/154 948/1269/154 +f 966/1270/161 968/1271/161 970/1272/161 +f 961/1273/157 959/1274/157 957/1275/157 +f 1077/1276/170 1076/1277/170 1075/1278/170 +f 1079/1279/154 1078/1280/154 1077/1276/154 +f 1081/1281/161 1080/1282/161 1079/1279/161 +f 1078/1280/153 1082/1283/153 1076/1284/153 +f 1077/1276/155 1081/1285/155 1079/1279/155 +f 1085/1286/170 1084/1287/170 1083/1288/170 +f 1087/1289/154 1086/1290/154 1085/1286/154 +f 1089/1291/161 1088/1292/161 1087/1289/161 +f 1086/1290/153 1090/1293/153 1084/1294/153 +f 1085/1286/155 1089/1295/155 1087/1289/155 +f 672/1137/153 666/1168/153 667/1138/153 +f 655/1140/154 656/1148/154 653/1141/154 +f 662/1143/153 661/1296/153 654/1142/153 +f 655/1140/155 657/1297/155 658/1147/155 +f 665/1152/156 663/1155/156 657/1153/156 +f 663/1155/154 664/1172/154 658/1156/154 +f 661/1157/156 667/1138/156 666/1158/156 +f 662/1160/154 668/1139/154 667/1138/154 +f 651/1146/154 660/1145/154 659/1151/154 +f 660/1145/157 670/1163/157 669/1161/157 +f 673/1165/158 671/1171/158 665/1166/158 +f 666/1168/159 672/1137/159 674/1169/159 +f 670/1170/160 674/1169/160 673/1165/160 +f 663/1155/155 665/1166/155 671/1171/155 +f 651/1146/157 652/1150/157 657/1173/157 +f 657/1173/157 655/1140/157 654/1142/157 +f 661/1174/157 651/1146/157 657/1173/157 +f 664/1298/161 671/1299/161 658/1176/161 +f 671/1299/161 673/1165/161 658/1176/161 +f 673/1165/161 674/1169/161 662/1175/161 +f 674/1169/161 672/1300/161 662/1175/161 +f 672/1300/161 668/1301/161 662/1175/161 +f 662/1175/161 653/1141/161 656/1148/161 +f 662/1175/161 656/1148/161 658/1176/161 +f 675/1177/153 677/1185/153 678/1178/153 +f 682/1180/155 681/1184/155 679/1181/155 +f 676/1183/162 680/1302/162 679/1181/162 +f 675/1177/160 679/1181/160 681/1184/160 +f 677/1185/157 681/1184/157 682/1186/157 +f 692/1303/155 691/1304/155 693/1188/155 +f 693/1188/155 694/1305/155 695/1189/155 +f 695/1189/155 696/1306/155 697/1190/155 +f 697/1190/155 698/1307/155 692/1303/155 +f 692/1303/155 693/1188/155 697/1190/155 +f 704/1191/153 711/1203/153 708/1192/153 +f 710/1196/161 707/1205/161 708/1308/161 +f 708/1308/161 711/1309/161 712/1194/161 +f 712/1194/161 713/1310/161 714/1195/161 +f 714/1195/161 709/1311/161 710/1196/161 +f 710/1196/161 708/1308/161 712/1194/161 +f 702/1197/155 709/1312/155 714/1198/155 +f 706/1200/154 713/1313/154 712/1201/154 +f 714/1198/163 713/1313/163 706/1200/163 +f 704/1191/164 703/1202/164 712/1201/164 +f 700/1204/159 699/1193/159 708/1192/159 +f 710/1196/158 709/1314/158 702/1206/158 +f 700/1204/160 707/1205/160 710/1196/160 +f 729/1210/161 723/1315/161 724/1316/161 +f 724/1316/161 730/1317/161 725/1208/161 +f 725/1208/161 726/1318/161 727/1209/161 +f 727/1209/161 728/1319/161 729/1210/161 +f 729/1210/161 724/1316/161 725/1208/161 +f 716/1213/157 715/1320/157 722/1321/157 +f 722/1321/157 721/1322/157 720/1211/157 +f 720/1211/157 719/1323/157 718/1212/157 +f 718/1212/157 717/1324/157 716/1213/157 +f 716/1213/157 722/1321/157 720/1211/157 +f 733/1215/160 734/1325/160 756/1216/160 +f 756/1216/160 758/1326/160 751/1327/160 +f 758/1326/160 736/1328/160 751/1327/160 +f 736/1328/160 735/1329/160 751/1327/160 +f 751/1327/160 750/1214/160 756/1216/160 +f 744/1217/160 743/1221/160 741/1218/160 +f 746/1220/161 745/1330/161 743/1221/161 +f 742/1219/153 748/1331/153 746/1222/153 +f 741/1218/155 743/1221/155 745/1223/155 +f 763/1225/165 765/1232/165 766/1226/165 +f 766/1228/153 768/1332/153 770/1229/153 +f 769/1231/155 767/1333/155 765/1232/155 +f 775/1234/155 777/1240/155 773/1235/155 +f 772/1237/166 776/1239/166 775/1234/166 +f 774/1238/153 778/1245/153 776/1239/153 +f 777/1240/167 778/1244/167 774/1241/167 +f 776/1239/168 780/1246/168 779/1242/168 +f 781/1243/169 782/1334/169 778/1244/169 +f 778/1245/153 782/1335/153 780/1246/153 +f 779/1242/155 781/1243/155 777/1240/155 +f 900/1247/153 902/1255/153 903/1248/153 +f 907/1250/155 906/1254/155 904/1251/155 +f 901/1253/162 905/1336/162 904/1251/162 +f 900/1247/160 904/1251/160 906/1254/160 +f 902/1255/157 906/1254/157 907/1256/157 +f 917/1258/153 916/1337/153 918/1259/153 +f 918/1259/153 919/1338/153 920/1260/153 +f 920/1260/153 921/1339/153 917/1258/153 +f 921/1339/153 922/1340/153 917/1258/153 +f 922/1340/153 923/1341/153 917/1258/153 +f 926/1263/160 925/1342/160 924/1343/160 +f 924/1343/160 931/1344/160 930/1261/160 +f 930/1261/160 929/1345/160 928/1262/160 +f 928/1262/160 927/1346/160 926/1263/160 +f 926/1263/160 924/1343/160 930/1261/160 +f 932/1266/154 933/1347/154 934/1348/154 +f 934/1348/154 935/1349/154 936/1264/154 +f 936/1264/154 937/1350/154 938/1265/154 +f 938/1265/154 939/1351/154 932/1266/154 +f 932/1266/154 934/1348/154 936/1264/154 +f 948/1269/154 949/1352/154 950/1353/154 +f 950/1353/154 951/1354/154 952/1267/154 +f 952/1267/154 953/1355/154 954/1268/154 +f 954/1268/154 955/1356/154 948/1269/154 +f 948/1269/154 950/1353/154 952/1267/154 +f 970/1272/161 964/1357/161 965/1358/161 +f 965/1358/161 971/1359/161 966/1270/161 +f 966/1270/161 967/1360/161 968/1271/161 +f 968/1271/161 969/1361/161 970/1272/161 +f 970/1272/161 965/1358/161 966/1270/161 +f 957/1275/157 956/1362/157 963/1363/157 +f 963/1363/157 962/1364/157 961/1273/157 +f 961/1273/157 960/1365/157 959/1274/157 +f 959/1274/157 958/1366/157 957/1275/157 +f 957/1275/157 963/1363/157 961/1273/157 +f 1077/1276/170 1078/1280/170 1076/1277/170 +f 1079/1279/154 1080/1282/154 1078/1280/154 +f 1081/1281/161 1082/1367/161 1080/1282/161 +f 1078/1280/153 1080/1282/153 1082/1283/153 +f 1077/1276/155 1075/1368/155 1081/1285/155 +f 1085/1286/170 1086/1290/170 1084/1287/170 +f 1087/1289/154 1088/1292/154 1086/1290/154 +f 1089/1291/161 1090/1369/161 1088/1292/161 +f 1086/1290/153 1088/1292/153 1090/1293/153 +f 1085/1286/155 1083/1370/155 1089/1295/155 s 1 -f 2/945/27 3/946/3 1/947/27 -f 4/948/3 5/949/28 3/946/3 -f 6/950/28 7/951/29 5/949/28 -f 8/952/29 9/953/30 7/951/29 -f 17/954/4 28/955/31 16/956/31 -f 14/957/3 25/958/28 13/959/28 -f 21/960/32 32/961/5 20/962/5 -f 18/963/33 29/964/4 17/965/4 -f 15/966/34 26/967/3 14/957/3 -f 22/968/35 33/969/32 21/960/32 -f 12/970/29 23/971/7 11/972/7 -f 19/973/36 30/974/33 18/963/33 -f 16/956/31 27/975/34 15/966/34 -f 11/972/7 34/976/35 22/968/35 -f 13/959/28 24/977/29 12/970/29 -f 20/962/5 31/978/36 19/973/36 -f 36/979/37 37/980/35 35/981/37 -f 38/982/35 39/983/32 37/980/35 -f 40/984/32 41/985/5 39/983/32 -f 42/986/5 43/987/38 41/985/5 -f 51/988/4 62/989/31 50/990/31 -f 48/991/3 59/992/28 47/993/28 -f 55/994/32 66/995/5 54/996/5 -f 52/997/33 63/998/4 51/999/4 -f 49/1000/34 60/1001/3 48/991/3 -f 56/1002/35 67/1003/32 55/994/32 -f 46/1004/29 57/1005/7 45/1006/7 -f 53/1007/36 64/1008/33 52/997/33 -f 50/990/31 61/1009/34 49/1000/34 -f 45/1006/7 68/1010/35 56/1002/35 -f 47/993/28 58/1011/29 46/1004/29 -f 54/996/5 65/1012/36 53/1007/36 -f 74/1013/34 107/1014/31 72/1015/31 -f 107/1014/31 70/1016/39 72/1015/31 -f 73/1017/39 104/1018/40 70/1016/39 -f 78/1019/41 137/1020/42 77/1021/41 -f 10/1022/30 35/1023/37 9/953/30 -f 137/1020/43 2/945/27 1/947/27 -f 85/1024/4 96/1025/31 84/1026/31 -f 82/1027/3 93/1028/28 81/1029/28 -f 89/1030/32 100/1031/5 88/1032/5 -f 86/1033/33 97/1034/4 85/1035/4 -f 83/1036/34 94/1037/3 82/1027/3 -f 90/1038/35 101/1039/32 89/1030/32 -f 80/1040/29 91/1041/7 79/1042/7 -f 87/1043/36 98/1044/33 86/1033/33 -f 84/1026/31 95/1045/34 83/1036/34 -f 79/1042/7 102/1046/35 90/1038/35 -f 81/1029/28 92/1047/29 80/1040/29 -f 88/1032/5 99/1048/36 87/1043/36 -f 139/1049/44 106/1050/45 105/1051/45 -f 44/1052/38 139/1049/46 43/987/38 -f 119/1053/4 130/1054/31 118/1055/31 -f 116/1056/3 127/1057/28 115/1058/28 -f 123/1059/32 134/1060/5 122/1061/5 -f 120/1062/33 131/1063/4 119/1064/4 -f 117/1065/34 128/1066/3 116/1056/3 -f 124/1067/35 135/1068/32 123/1059/32 -f 114/1069/29 125/1070/7 113/1071/7 -f 121/1072/36 132/1073/33 120/1062/33 -f 118/1055/31 129/1074/34 117/1065/34 -f 113/1071/7 136/1075/35 124/1067/35 -f 115/1058/28 126/1076/29 114/1069/29 -f 122/1061/5 133/1077/36 121/1072/36 -f 109/1078/47 74/1013/34 76/1079/3 -f 104/1018/40 205/1080/33 112/1081/33 -f 112/1081/33 206/1082/36 110/1083/36 -f 206/1082/36 108/1084/5 110/1083/36 -f 150/1085/2 151/1086/15 149/1087/2 -f 152/1088/15 153/1089/7 151/1086/15 -f 154/1090/7 155/1091/48 153/1092/7 -f 156/1093/48 157/1094/1 155/1091/48 -f 158/1095/1 159/1096/13 157/1094/1 -f 160/1097/13 161/1098/4 159/1096/13 -f 162/1099/4 163/1100/14 161/1098/4 -f 164/1101/14 149/1087/2 163/1100/14 -f 203/1102/49 204/1103/50 105/1051/45 -f 109/1078/47 78/1019/41 77/1021/41 -f 255/1104/2 270/1105/15 262/1106/15 -f 261/1107/7 268/1108/48 260/1109/48 -f 259/1110/1 266/1111/13 258/1112/13 -f 257/1113/4 263/1114/14 256/1115/14 -f 262/1106/15 269/1116/7 261/1117/7 -f 260/1109/48 267/1118/1 259/1110/1 -f 258/1112/13 265/1119/4 257/1113/4 -f 256/1115/14 264/1120/2 255/1104/2 -f 294/1121/51 295/1122/52 293/1123/53 -f 298/1124/54 299/1125/55 297/1126/56 -f 300/1127/57 301/1128/58 299/1125/55 -f 302/1129/59 303/1130/60 301/1128/58 -f 304/1131/61 305/1132/62 303/1130/60 -f 302/1133/59 326/1134/63 327/1135/64 -f 295/1136/52 314/1137/65 293/1123/53 -f 315/722/66 317/1138/67 318/1139/68 -f 293/1123/53 313/1140/69 308/1141/70 -f 303/1142/60 320/1143/71 319/1144/72 -f 303/1142/60 318/1139/68 301/1145/58 -f 301/1145/58 317/1138/67 299/1125/55 -f 297/1146/56 317/1138/67 316/721/73 -f 326/1134/63 325/1147/74 324/1148/75 -f 323/1149/76 330/1150/77 331/1151/5 -f 307/1152/78 323/1149/76 294/1153/51 -f 298/1154/54 326/1134/63 300/1155/57 -f 296/1156/79 323/1149/76 324/1148/75 -f 304/1157/61 329/1158/80 306/1159/81 -f 302/1133/59 328/1160/82 304/1157/61 -f 319/1144/72 314/1137/65 318/1139/68 -f 332/1161/5 328/1160/82 331/1151/5 -f 314/1137/65 321/1162/3 313/1140/69 -f 319/1144/72 322/1163/3 321/1162/3 -f 328/1160/82 323/1149/76 331/1151/5 -f 350/1164/3 357/1165/19 349/1166/19 -f 352/1167/7 364/1168/11 351/1169/11 -f 355/1170/20 361/1171/5 354/1172/5 -f 353/1173/12 359/1174/7 352/1175/7 -f 349/1166/19 363/1176/4 356/1177/4 -f 351/1169/11 358/1178/3 350/1164/3 -f 356/1177/4 362/1179/20 355/1170/20 -f 354/1172/5 360/1180/12 353/1173/12 -f 378/1181/5 371/1182/83 379/1183/83 -f 376/1184/1 369/1185/78 377/1186/78 -f 374/1187/3 367/1188/70 375/1189/70 -f 380/1190/2 365/1191/84 373/1192/84 -f 379/1183/83 372/1193/2 380/1190/2 -f 377/1186/78 370/1194/5 378/1195/5 -f 375/1189/70 368/1196/1 376/1184/1 -f 373/1192/84 366/1197/3 374/1187/3 -f 394/1198/5 387/1199/83 395/1200/83 -f 392/1201/1 385/1202/78 393/1203/78 -f 390/1204/3 383/1205/70 391/1206/70 -f 396/1207/2 381/1208/84 389/1209/84 -f 395/1200/83 388/1210/2 396/1207/2 -f 393/1203/78 386/1211/5 394/1212/5 -f 391/1206/70 384/1213/1 392/1201/1 -f 389/1209/84 382/1214/3 390/1204/3 -f 400/1215/85 397/1216/86 398/1217/87 -f 404/1218/88 401/1219/56 402/1220/54 -f 406/1221/89 403/1222/90 404/1218/88 -f 408/1223/91 405/1224/92 406/1221/89 -f 402/1225/54 425/1226/93 404/1227/88 -f 420/1228/94 413/1229/95 421/1230/96 -f 419/1231/97 421/1230/96 415/1232/98 -f 427/1233/99 414/1234/100 408/1235/91 -f 407/1236/101 419/1231/97 405/1237/92 -f 407/1236/101 413/1229/95 420/1228/94 -f 401/1238/56 418/1239/102 417/762/73 -f 399/1240/103 415/1232/98 397/1216/86 -f 405/1237/92 418/1239/102 403/1222/90 -f 422/1241/104 425/1226/93 424/1242/74 -f 400/1243/85 423/1244/105 422/1241/104 -f 406/1245/89 425/1226/93 426/1246/106 -f 416/346/107 419/1231/97 415/1232/98 -f 406/1245/89 427/1233/99 408/1235/91 -f 414/1234/100 427/1233/99 428/1247/108 -f 416/346/107 418/1239/102 419/1231/97 -f 426/1246/106 422/1241/104 423/1244/105 -f 428/1247/108 426/1246/106 423/1244/105 -f 451/773/109 458/1248/110 452/1249/109 -f 458/1248/110 449/1250/111 450/1251/111 -f 456/1252/112 451/773/6 452/1249/6 -f 453/1253/113 456/1252/112 454/1254/113 -f 479/1255/83 463/1256/114 462/1257/83 -f 467/1258/115 473/1259/84 468/1260/84 -f 464/1261/116 476/1262/15 465/1263/15 -f 463/1256/114 477/1264/116 464/1261/116 -f 482/1265/14 460/1266/117 459/1267/14 -f 473/1259/84 469/1268/118 468/1260/84 -f 476/1269/15 466/1270/119 465/1271/15 -f 481/1272/117 461/1273/120 460/1266/117 -f 469/1268/118 471/1274/121 470/1275/121 -f 475/1276/119 467/1258/115 466/1270/119 -f 461/1273/120 479/1255/83 462/1257/83 -f 470/1275/121 482/1265/14 459/1267/14 -f 490/1277/84 497/1278/3 489/1279/3 -f 488/1280/70 495/1281/1 487/1282/1 -f 486/1283/78 493/1284/5 485/1285/5 -f 484/1286/83 491/1287/2 483/1288/2 -f 483/1288/2 498/1289/84 490/1277/84 -f 489/1279/3 496/1290/70 488/1280/70 -f 487/1282/1 494/1291/78 486/1283/78 -f 485/1292/5 492/1293/83 484/1286/83 -f 506/1294/84 513/1295/3 505/1296/3 -f 504/1297/70 511/1298/1 503/1299/1 -f 502/1300/78 509/1301/5 501/1302/5 -f 500/1303/83 507/1304/2 499/1305/2 -f 499/1305/2 514/1306/84 506/1294/84 -f 505/1296/3 512/1307/70 504/1297/70 -f 503/1299/1 510/1308/78 502/1300/78 -f 501/1309/5 508/1310/83 500/1303/83 -f 566/1311/122 559/1312/7 558/1313/12 -f 564/1314/123 557/1315/5 556/1316/20 -f 569/1317/124 562/1318/19 561/1319/3 -f 567/1320/48 560/1321/11 559/1322/7 -f 565/1323/125 558/1313/12 557/1315/5 -f 563/1324/126 556/1316/20 555/1325/4 -f 570/1326/127 555/1325/4 562/1318/19 -f 568/1327/128 561/1319/3 560/1321/11 -f 569/1328/124 577/1329/129 570/1326/127 -f 565/1330/125 574/1331/130 566/1332/122 -f 564/1314/123 571/1333/14 572/1334/131 -f 563/1324/126 577/1329/129 571/1333/14 -f 569/1328/124 575/1335/132 576/1336/133 -f 564/1314/123 573/1337/134 565/1330/125 -f 572/1334/131 580/1338/135 573/1337/134 -f 577/1329/129 583/1339/136 584/1340/137 -f 574/1331/130 580/1338/135 581/1341/138 -f 572/1334/131 578/1342/139 579/1343/140 -f 571/1333/14 584/1340/137 578/1342/139 -f 575/1335/132 583/1339/136 576/1336/133 -f 566/1332/122 574/1331/130 567/1344/48 -f 567/1345/48 575/1335/132 568/1346/128 -f 575/1335/132 567/1345/48 582/1347/141 -f 574/1331/130 581/1341/138 567/1344/48 -f 582/1348/141 585/1349/142 590/1350/143 -f 583/1351/136 592/1352/144 584/1340/137 -f 580/1353/135 589/1354/145 581/1355/138 -f 578/1342/139 587/1356/146 579/1343/140 -f 581/1355/138 585/1357/142 567/1358/48 -f 578/1342/139 592/1352/144 586/1359/147 -f 582/1348/141 591/1360/148 583/1351/136 -f 579/1343/140 588/1361/149 580/1353/135 -f 604/1362/122 597/1363/150 596/1364/151 -f 602/1365/123 595/1366/152 594/1367/153 -f 607/1368/124 600/1369/154 599/1370/155 -f 605/1371/48 598/1372/156 597/1363/150 -f 603/1373/125 596/1364/151 595/1374/152 -f 601/1375/126 594/1367/153 593/1376/157 -f 608/1377/127 593/1376/157 600/1369/154 -f 606/1378/128 599/1370/155 598/1372/156 -f 607/1379/124 615/1380/158 608/1377/127 -f 603/1381/125 612/1382/130 604/1383/122 -f 601/1375/126 610/1384/159 602/1365/123 -f 608/1377/127 609/1385/14 601/1375/126 -f 606/1386/128 614/1387/133 607/1379/124 -f 602/1365/123 611/1388/134 603/1389/125 -f 611/1388/134 617/1390/140 618/1391/135 -f 614/1387/133 622/1392/137 615/1380/158 -f 612/1382/130 618/1393/135 619/1394/138 -f 609/1385/14 617/1390/140 610/1384/159 -f 609/1385/14 622/1392/137 616/1395/139 -f 613/1396/132 621/1397/136 614/1387/133 -f 604/1383/122 612/1382/130 605/1398/48 -f 605/1398/48 613/1396/132 606/1386/128 -f 613/1396/132 605/1398/48 620/1399/141 -f 612/1382/130 619/1394/138 605/1398/48 -f 605/1400/48 628/1401/143 620/1402/141 -f 621/1403/136 630/1404/144 622/1392/137 -f 618/1405/135 627/1406/145 619/1407/138 -f 616/1395/139 625/1408/146 617/1390/140 -f 619/1407/138 623/1409/142 605/1400/48 -f 622/1392/137 624/1410/147 616/1395/139 -f 620/1402/141 629/1411/148 621/1403/136 -f 617/1390/140 626/1412/20 618/1413/135 -f 992/1414/160 1019/1415/19 635/1416/161 -f 1020/1417/162 1019/1415/19 992/1414/160 -f 991/1418/163 634/1419/164 1019/1420/19 -f 1019/1420/19 1018/1421/165 991/1418/163 -f 591/1360/148 644/1422/166 592/1352/144 -f 586/1423/147 640/1424/167 587/1425/146 -f 589/1426/145 638/1427/168 585/1428/142 -f 592/1352/144 639/1429/169 586/1423/147 -f 590/1350/143 643/1430/11 591/1360/148 -f 590/1350/143 638/1431/168 642/1432/170 -f 638/1427/168 648/1433/171 645/1434/172 -f 597/1435/150 656/1436/173 655/1437/174 -f 643/1430/11 649/1438/48 650/1439/175 -f 642/1432/170 645/1440/172 649/1438/48 -f 644/1422/166 650/1439/175 651/1441/176 -f 596/1364/151 653/1442/78 595/1374/152 -f 587/1425/146 640/1424/167 588/1443/149 -f 640/1424/167 647/1444/14 588/1443/149 -f 588/1443/149 641/1445/177 589/1426/145 -f 641/1445/177 588/1443/149 648/1433/171 -f 594/1367/153 646/1446/178 593/1447/157 -f 593/1447/157 657/1448/179 600/1449/154 -f 597/1435/150 654/1450/180 596/1364/151 -f 595/1366/152 652/1451/181 594/1367/153 -f 651/1441/176 639/1429/169 644/1422/166 -f 598/1452/156 599/1453/155 656/1436/173 -f 651/1454/176 656/1436/173 599/1453/155 -f 650/1455/175 656/1436/173 651/1454/176 -f 649/1438/48 655/1437/174 650/1455/175 -f 654/1450/180 645/1456/172 653/1442/78 -f 653/1457/78 648/1458/171 652/1451/181 -f 652/1451/181 588/1459/149 646/1446/178 -f 657/1448/179 588/1459/149 647/1460/14 -f 599/1461/155 640/1424/167 639/1429/169 -f 657/1448/179 647/1460/14 599/1453/155 -f 600/1449/154 657/1448/179 599/1453/155 -f 630/1404/144 663/1462/11 664/1463/166 -f 624/1464/147 660/1465/167 625/1466/146 -f 623/1467/142 661/1468/177 658/1469/168 -f 630/1404/144 659/1470/169 624/1464/147 -f 628/1401/143 663/1462/11 629/1411/148 -f 628/1401/143 658/1469/168 662/1471/170 -f 663/1462/11 669/1472/182 670/1473/183 -f 662/1471/170 665/1474/184 669/1472/182 -f 663/1462/11 671/1475/185 664/1463/166 -f 660/1465/167 666/1476/186 667/1477/187 -f 661/1468/177 665/1474/184 658/1469/168 -f 659/1470/169 671/1475/185 666/1476/186 -f 626/1478/20 661/1468/177 627/1479/145 -f 661/1468/177 626/1478/20 668/1480/188 -f 625/1466/146 660/1465/167 626/1481/20 -f 660/1465/167 667/1477/187 626/1481/20 -f 675/447/5 686/1482/36 674/468/36 -f 682/452/34 693/1483/3 681/450/3 -f 679/453/29 690/1484/7 678/823/7 -f 676/457/32 687/1485/5 675/447/5 -f 683/459/31 694/1486/34 682/452/34 -f 673/462/33 684/1487/4 672/460/4 -f 680/464/28 691/1488/29 679/453/29 -f 677/466/35 688/1489/32 676/457/32 -f 672/460/4 695/1490/31 683/459/31 -f 674/468/36 685/1491/33 673/462/33 -f 681/450/3 692/1492/28 680/464/28 -f 678/470/7 689/1493/35 677/466/35 -f 706/451/34 719/1494/31 707/458/31 -f 696/467/4 709/1495/33 697/461/33 -f 703/455/29 716/1496/28 704/463/28 -f 700/456/32 713/1497/35 701/465/35 -f 707/458/31 708/1498/4 696/467/4 -f 697/461/33 710/1499/36 698/448/36 -f 704/463/28 717/1500/3 705/469/3 -f 701/465/35 714/1501/7 702/471/7 -f 698/448/36 711/1502/5 699/449/5 -f 705/469/3 718/1503/34 706/451/34 -f 702/454/7 715/1504/29 703/455/29 -f 699/449/5 712/1505/32 700/456/32 -f 783/546/5 794/1506/36 782/567/36 -f 790/551/34 801/1507/3 789/549/3 -f 787/552/29 798/1508/7 786/858/7 -f 784/556/32 795/1509/5 783/546/5 -f 791/558/31 802/1510/34 790/551/34 -f 781/561/33 792/1511/4 780/559/4 -f 788/563/28 799/1512/29 787/552/29 -f 785/565/35 796/1513/32 784/556/32 -f 780/559/4 803/1514/31 791/558/31 -f 782/567/36 793/1515/33 781/561/33 -f 789/549/3 800/1516/28 788/563/28 -f 786/569/7 797/1517/35 785/565/35 -f 814/550/34 827/1518/31 815/557/31 -f 804/566/4 817/1519/33 805/560/33 -f 811/554/29 824/1520/28 812/562/28 -f 808/555/32 821/1521/35 809/564/35 -f 815/557/31 816/1522/4 804/566/4 -f 805/560/33 818/1523/36 806/547/36 -f 812/562/28 825/1524/3 813/568/3 -f 809/564/35 822/1525/7 810/570/7 -f 806/547/36 819/1526/5 807/548/5 -f 813/568/3 826/1527/34 814/550/34 -f 810/553/7 823/1528/29 811/554/29 -f 807/548/5 820/1529/32 808/555/32 -f 831/577/5 842/1530/36 830/598/36 -f 838/582/34 849/1531/3 837/580/3 -f 835/583/29 846/1532/7 834/877/7 -f 832/587/32 843/1533/5 831/577/5 -f 839/589/31 850/1534/34 838/582/34 -f 829/592/33 840/1535/4 828/590/4 -f 836/594/28 847/1536/29 835/583/29 -f 833/596/35 844/1537/32 832/587/32 -f 828/590/4 851/1538/31 839/589/31 -f 830/598/36 841/1539/33 829/592/33 -f 837/580/3 848/1540/28 836/594/28 -f 834/600/7 845/1541/35 833/596/35 -f 862/581/34 875/1542/31 863/588/31 -f 852/597/4 865/1543/33 853/591/33 -f 859/585/29 872/1544/28 860/593/28 -f 856/586/32 869/1545/35 857/595/35 -f 863/588/31 864/1546/4 852/597/4 -f 853/591/33 866/1547/36 854/578/36 -f 860/593/28 873/1548/3 861/599/3 -f 857/595/35 870/1549/7 858/601/7 -f 854/578/36 867/1550/5 855/579/5 -f 861/599/3 874/1551/34 862/581/34 -f 858/584/7 871/1552/29 859/585/29 -f 855/579/5 868/1553/32 856/586/32 -f 879/608/5 890/1554/36 878/629/36 -f 886/613/34 897/1555/3 885/611/3 -f 883/614/29 894/1556/7 882/896/7 -f 880/618/32 891/1557/5 879/608/5 -f 887/620/31 898/1558/34 886/613/34 -f 877/623/33 888/1559/4 876/621/4 -f 884/625/28 895/1560/29 883/614/29 -f 881/627/35 892/1561/32 880/618/32 -f 876/621/4 899/1562/31 887/620/31 -f 878/629/36 889/1563/33 877/623/33 -f 885/611/3 896/1564/28 884/625/28 -f 882/631/7 893/1565/35 881/627/35 -f 910/612/34 923/1566/31 911/619/31 -f 900/628/4 913/1567/33 901/622/33 -f 907/616/29 920/1568/28 908/624/28 -f 904/617/32 917/1569/35 905/626/35 -f 911/619/31 912/1570/4 900/628/4 -f 901/622/33 914/1571/36 902/609/36 -f 908/624/28 921/1572/3 909/630/3 -f 905/626/35 918/1573/7 906/632/7 -f 902/609/36 915/1574/5 903/610/5 -f 909/630/3 922/1575/34 910/612/34 -f 906/615/7 919/1576/29 907/616/29 -f 903/610/5 916/1577/32 904/617/32 -f 924/1578/1 939/1579/48 931/1580/48 -f 930/1581/7 937/1582/15 929/1583/15 -f 928/1584/2 935/1585/14 927/1586/14 -f 926/1587/4 932/1588/13 925/1589/13 -f 931/1580/48 938/1590/7 930/1591/7 -f 929/1583/15 936/1592/2 928/1584/2 -f 927/1586/14 934/1593/4 926/1587/4 -f 925/1589/13 933/1594/1 924/1578/1 -f 947/1595/84 954/1596/3 946/1597/3 -f 945/1598/70 952/1599/1 944/1600/1 -f 943/1601/78 950/1602/5 942/1603/5 -f 941/1604/83 948/1605/2 940/1606/2 -f 940/1606/2 955/1607/84 947/1595/84 -f 946/1597/3 953/1608/70 945/1598/70 -f 944/1600/1 951/1609/78 943/1601/78 -f 942/1610/5 949/1611/83 941/1604/83 -f 963/1612/84 970/1613/3 962/1614/3 -f 961/1615/70 968/1616/1 960/1617/1 -f 959/1618/78 966/1619/5 958/1620/5 -f 957/1621/83 964/1622/2 956/1623/2 -f 956/1623/2 971/1624/84 963/1612/84 -f 962/1614/3 969/1625/70 961/1615/70 -f 960/1617/1 967/1626/78 959/1618/78 -f 958/1627/5 965/1628/83 957/1621/83 -f 973/1629/3 980/1630/19 972/1631/19 -f 975/1632/7 987/1633/11 974/1634/11 -f 978/1635/20 984/1636/5 977/1637/5 -f 976/1638/12 982/1639/7 975/1640/7 -f 972/1631/19 986/1641/4 979/1642/4 -f 974/1634/11 981/1643/3 973/1629/3 -f 979/1642/4 985/1644/20 978/1635/20 -f 977/1637/5 983/1645/12 976/1638/12 -f 993/1646/189 631/1647/190 988/1648/191 -f 637/1649/192 991/1418/163 994/1650/193 -f 992/1414/160 636/1651/194 993/1646/189 -f 631/1647/190 989/1652/12 988/1648/191 -f 990/1653/195 637/1649/192 994/1650/193 -f 989/1652/12 633/1654/196 990/1653/195 -f 1017/1655/197 994/1650/193 1022/1656/198 -f 989/1652/12 1017/1655/197 1016/1657/199 -f 993/1646/189 1015/1658/200 1021/1659/201 -f 1022/1656/198 991/1418/163 1018/1421/165 -f 992/1414/160 1021/1659/201 1020/1417/162 -f 1015/1658/200 989/1652/12 1016/1657/199 -f 1045/1660/202 1046/1661/203 995/1662/204 -f 995/1662/204 1046/1661/203 1005/1663/14 -f 1013/1664/189 1005/1665/14 1046/1666/203 -f 1057/1667/205 995/1662/204 1005/1663/14 -f 1057/1667/205 1000/1668/206 1006/1669/207 -f 999/1670/70 1004/1671/208 1007/1672/209 -f 999/1673/70 1003/1674/48 998/1675/210 -f 1003/1674/48 997/1676/211 998/1675/210 -f 1002/1677/212 996/1678/213 997/1676/211 -f 1001/1679/214 1046/1661/203 996/1678/213 -f 1047/1680/215 996/1678/213 1046/1661/203 -f 1013/1664/189 1001/1681/214 1008/1682/216 -f 1000/1668/206 1050/1683/217 1051/1684/218 -f 998/1675/210 1048/1685/219 1049/1686/220 -f 995/1662/204 1052/1687/221 1045/1660/202 -f 1052/1687/221 1000/1668/206 1051/1684/218 -f 1011/1688/163 1004/1689/208 1057/1690/205 -f 1057/1690/205 1056/1691/165 1011/1688/163 -f 1012/1692/160 1057/1690/205 1005/1665/14 -f 1058/1693/162 1057/1690/205 1012/1692/160 -f 999/1673/70 1049/1686/220 1050/1694/217 -f 1008/1682/216 1002/1695/212 1009/1696/12 -f 1010/1697/195 1007/1698/209 1014/1699/193 -f 1009/1696/12 1003/1674/48 1010/1697/195 -f 1048/1685/219 996/1678/213 1047/1680/215 -f 1014/1700/193 1004/1689/208 1011/1688/163 -f 1010/1697/195 1060/1701/198 1055/1702/197 -f 1054/1703/199 1010/1697/195 1055/1702/197 -f 1059/1704/201 1008/1682/216 1053/1705/200 -f 1060/1706/198 1011/1688/163 1056/1691/165 -f 1012/1692/160 1059/1704/201 1058/1693/162 -f 1008/1682/216 1054/1703/199 1053/1705/200 -f 1019/1707/19 1028/1708/137 1027/1709/136 -f 1016/1657/199 1025/1710/138 1024/1711/135 -f 1021/1712/201 1023/1713/140 1029/1714/139 -f 1022/1715/198 1026/1716/141 1040/1717/48 -f 1020/1718/162 1029/1714/139 1028/1708/137 -f 1018/1719/165 1027/1720/136 1026/1716/141 -f 1015/1658/200 1024/1711/135 1023/1713/140 -f 1017/1655/197 1040/1717/48 1025/1710/138 -f 1033/1721/132 1040/1722/48 1026/1723/141 -f 1032/1724/130 1025/1725/138 1040/1722/48 -f 1040/1722/48 1039/1726/122 1032/1724/130 -f 1041/1727/128 1040/1722/48 1033/1721/132 -f 1024/1728/135 1032/1724/130 1031/1729/134 -f 1036/1730/14 1023/1713/140 1030/1731/159 -f 1028/1708/137 1036/1730/14 1035/1732/158 -f 1033/1721/132 1027/1733/136 1034/1734/133 -f 1023/1713/140 1031/1729/134 1030/1731/159 -f 1034/1735/133 1028/1708/137 1035/1732/158 -f 1042/1736/124 1035/1732/158 1043/1737/127 -f 1031/1729/134 1039/1726/122 1038/1738/125 -f 1036/1730/14 1037/1739/123 1044/1740/126 -f 1035/1732/158 1044/1740/126 1043/1737/127 -f 1033/1721/132 1042/1741/124 1041/1727/128 -f 1037/1739/123 1031/1729/134 1038/1738/125 -f 1046/1742/203 1039/1743/122 1047/1744/215 -f 1052/1745/221 1037/1739/123 1045/1746/202 -f 1051/1684/218 1044/1740/126 1052/1745/221 -f 1049/1686/220 1042/1747/124 1050/1694/217 -f 1047/1744/215 1040/1748/48 1048/1749/219 -f 1045/1746/202 1038/1750/125 1046/1742/203 -f 1050/1683/217 1043/1737/127 1051/1684/218 -f 1048/1749/219 1041/1751/128 1049/1686/220 -f 1057/1752/205 1066/1753/137 1065/1754/136 -f 1054/1703/199 1063/1755/138 1062/1756/135 -f 1067/1757/139 1053/1705/200 1061/1758/140 -f 1060/1759/198 1064/1760/141 1078/1761/48 -f 1058/1762/162 1067/1757/139 1066/1753/137 -f 1056/1763/165 1065/1754/136 1064/1760/141 -f 1053/1705/200 1062/1756/135 1061/1758/140 -f 1055/1702/197 1078/1764/48 1063/1755/138 -f 1071/1765/132 1078/1766/48 1064/1767/141 -f 1070/1768/130 1063/1769/138 1078/1770/48 -f 1078/1770/48 1077/1771/122 1070/1768/130 -f 1079/1772/128 1078/1766/48 1071/1765/132 -f 1062/1773/135 1070/1768/130 1069/1774/134 -f 1074/1775/14 1061/1758/140 1068/1776/159 -f 1073/1777/129 1067/1757/139 1074/1775/14 -f 1071/1765/132 1065/1778/136 1072/1779/133 -f 1068/1776/159 1062/1773/135 1069/1774/134 -f 1065/1778/136 1073/1777/129 1072/1779/133 -f 1072/1779/133 1081/1780/127 1080/1781/124 -f 1076/1782/125 1070/1768/130 1077/1771/122 -f 1074/1775/14 1075/1783/123 1082/1784/126 -f 1081/1780/127 1074/1775/14 1082/1784/126 -f 1071/1765/132 1080/1781/124 1079/1772/128 -f 1068/1776/159 1076/1782/125 1075/1783/123 -f 1084/1785/5 1077/1786/122 1085/1787/12 -f 1090/1788/4 1075/1783/123 1083/1789/20 -f 1089/1790/19 1082/1784/126 1090/1788/4 -f 1087/1791/11 1080/1792/124 1088/1793/3 -f 1085/1787/12 1078/1794/48 1086/1795/7 -f 1083/1789/20 1076/1796/125 1084/1785/5 -f 1088/1793/3 1081/1780/127 1089/1790/19 -f 1086/1797/7 1079/1798/128 1087/1791/11 -f 636/1799/194 667/1800/187 666/1801/186 -f 626/1802/20 635/1803/161 1019/1804/19 -f 634/1805/164 626/1802/20 1019/1804/19 -f 668/1806/188 637/1807/192 665/1808/184 -f 637/1807/192 669/1809/182 665/1808/184 -f 633/1810/196 670/1811/183 669/1809/182 -f 632/1812/222 671/1813/185 670/1814/183 -f 631/1815/190 666/1801/186 671/1813/185 -f 2/945/27 4/948/3 3/946/3 -f 4/948/3 6/950/28 5/949/28 -f 6/950/28 8/952/29 7/951/29 -f 8/952/29 10/1022/30 9/953/30 -f 17/954/4 29/1816/4 28/955/31 -f 14/957/3 26/967/3 25/958/28 -f 21/960/32 33/969/32 32/961/5 -f 18/963/33 30/974/33 29/964/4 -f 15/966/34 27/975/34 26/967/3 -f 22/968/35 34/976/35 33/969/32 -f 12/970/29 24/977/29 23/971/7 -f 19/973/36 31/978/36 30/974/33 -f 16/956/31 28/955/31 27/975/34 -f 11/972/7 23/971/7 34/976/35 -f 13/959/28 25/958/28 24/977/29 -f 20/962/5 32/961/5 31/978/36 -f 36/979/37 38/982/35 37/980/35 -f 38/982/35 40/984/32 39/983/32 -f 40/984/32 42/986/5 41/985/5 -f 42/986/5 44/1052/38 43/987/38 -f 51/988/4 63/1817/4 62/989/31 -f 48/991/3 60/1001/3 59/992/28 -f 55/994/32 67/1003/32 66/995/5 -f 52/997/33 64/1008/33 63/998/4 -f 49/1000/34 61/1009/34 60/1001/3 -f 56/1002/35 68/1010/35 67/1003/32 -f 46/1004/29 58/1011/29 57/1005/7 -f 53/1007/36 65/1012/36 64/1008/33 -f 50/990/31 62/989/31 61/1009/34 -f 45/1006/7 57/1005/7 68/1010/35 -f 47/993/28 59/992/28 58/1011/29 -f 54/996/5 66/995/5 65/1012/36 -f 74/1013/34 103/1818/34 107/1014/31 -f 107/1014/31 73/1017/39 70/1016/39 -f 73/1017/39 201/1819/40 104/1018/40 -f 78/1019/41 138/1820/42 137/1020/42 -f 10/1022/30 36/1821/37 35/1023/37 -f 137/1020/43 138/1820/43 2/945/27 -f 85/1024/4 97/1822/4 96/1025/31 -f 82/1027/3 94/1037/3 93/1028/28 -f 89/1030/32 101/1039/32 100/1031/5 -f 86/1033/33 98/1044/33 97/1034/4 -f 83/1036/34 95/1045/34 94/1037/3 -f 90/1038/35 102/1046/35 101/1039/32 -f 80/1040/29 92/1047/29 91/1041/7 -f 87/1043/36 99/1048/36 98/1044/33 -f 84/1026/31 96/1025/31 95/1045/34 -f 79/1042/7 91/1041/7 102/1046/35 -f 81/1029/28 93/1028/28 92/1047/29 -f 88/1032/5 100/1031/5 99/1048/36 -f 139/1049/44 140/1823/44 106/1050/45 -f 44/1052/38 140/1823/46 139/1049/46 -f 119/1053/4 131/1824/4 130/1054/31 -f 116/1056/3 128/1066/3 127/1057/28 -f 123/1059/32 135/1068/32 134/1060/5 -f 120/1062/33 132/1073/33 131/1063/4 -f 117/1065/34 129/1074/34 128/1066/3 -f 124/1067/35 136/1075/35 135/1068/32 -f 114/1069/29 126/1076/29 125/1070/7 -f 121/1072/36 133/1077/36 132/1073/33 -f 118/1055/31 130/1054/31 129/1074/34 -f 113/1071/7 125/1070/7 136/1075/35 -f 115/1058/28 127/1057/28 126/1076/29 -f 122/1061/5 134/1060/5 133/1077/36 -f 109/1078/47 103/1818/34 74/1013/34 -f 104/1018/40 201/1819/40 205/1080/33 -f 112/1081/33 205/1080/33 206/1082/36 -f 206/1082/36 203/1102/49 108/1084/5 -f 150/1085/2 152/1088/15 151/1086/15 -f 152/1088/15 154/1825/7 153/1089/7 -f 154/1090/7 156/1093/48 155/1091/48 -f 156/1093/48 158/1095/1 157/1094/1 -f 158/1095/1 160/1097/13 159/1096/13 -f 160/1097/13 162/1099/4 161/1098/4 -f 162/1099/4 164/1101/14 163/1100/14 -f 164/1101/14 150/1085/2 149/1087/2 -f 105/1051/45 106/1050/45 203/1102/49 -f 106/1050/45 108/1084/5 203/1102/49 -f 77/1021/41 75/1826/223 109/1078/47 -f 109/1078/47 76/1079/3 78/1019/41 -f 255/1104/2 264/1120/2 270/1105/15 -f 261/1107/7 269/1827/7 268/1108/48 -f 259/1110/1 267/1118/1 266/1111/13 -f 257/1113/4 265/1119/4 263/1114/14 -f 262/1106/15 270/1105/15 269/1116/7 -f 260/1109/48 268/1108/48 267/1118/1 -f 258/1112/13 266/1111/13 265/1119/4 -f 256/1115/14 263/1114/14 264/1120/2 -f 294/1121/51 296/1828/79 295/1122/52 -f 298/1124/54 300/1127/57 299/1125/55 -f 300/1127/57 302/1129/59 301/1128/58 -f 302/1129/59 304/1131/61 303/1130/60 -f 304/1131/61 306/1829/81 305/1132/62 -f 302/1133/59 300/1155/57 326/1134/63 -f 295/1136/52 315/722/66 314/1137/65 -f 318/1139/68 314/1137/65 315/722/66 -f 315/722/66 316/721/73 317/1138/67 -f 293/1123/53 314/1137/65 313/1140/69 -f 303/1142/60 305/1132/62 320/1143/71 -f 303/1142/60 319/1144/72 318/1139/68 -f 301/1145/58 318/1139/68 317/1138/67 -f 297/1146/56 299/1125/55 317/1138/67 -f 323/1149/76 327/1135/64 324/1148/75 -f 327/1135/64 326/1134/63 324/1148/75 -f 307/1152/78 330/1150/77 323/1149/76 -f 298/1154/54 325/1147/74 326/1134/63 -f 296/1156/79 294/1153/51 323/1149/76 -f 304/1157/61 328/1160/82 329/1158/80 -f 302/1133/59 327/1135/64 328/1160/82 -f 319/1144/72 321/1162/3 314/1137/65 -f 332/1161/5 329/1158/80 328/1160/82 -f 319/1144/72 320/1143/71 322/1163/3 -f 328/1160/82 327/1135/64 323/1149/76 -f 350/1164/3 358/1178/3 357/1165/19 -f 352/1167/7 359/1830/7 364/1168/11 -f 355/1170/20 362/1179/20 361/1171/5 -f 353/1173/12 360/1180/12 359/1174/7 -f 349/1166/19 357/1165/19 363/1176/4 -f 351/1169/11 364/1168/11 358/1178/3 -f 356/1177/4 363/1176/4 362/1179/20 -f 354/1172/5 361/1171/5 360/1180/12 -f 378/1181/5 370/1831/5 371/1182/83 -f 376/1184/1 368/1196/1 369/1185/78 -f 374/1187/3 366/1197/3 367/1188/70 -f 380/1190/2 372/1193/2 365/1191/84 -f 379/1183/83 371/1182/83 372/1193/2 -f 377/1186/78 369/1185/78 370/1194/5 -f 375/1189/70 367/1188/70 368/1196/1 -f 373/1192/84 365/1191/84 366/1197/3 -f 394/1198/5 386/1832/5 387/1199/83 -f 392/1201/1 384/1213/1 385/1202/78 -f 390/1204/3 382/1214/3 383/1205/70 -f 396/1207/2 388/1210/2 381/1208/84 -f 395/1200/83 387/1199/83 388/1210/2 -f 393/1203/78 385/1202/78 386/1211/5 -f 391/1206/70 383/1205/70 384/1213/1 -f 389/1209/84 381/1208/84 382/1214/3 -f 400/1215/85 399/1833/103 397/1216/86 -f 404/1218/88 403/1222/90 401/1219/56 -f 406/1221/89 405/1224/92 403/1222/90 -f 408/1223/91 407/1834/101 405/1224/92 -f 402/1225/54 424/1242/74 425/1226/93 -f 419/1231/97 420/1228/94 421/1230/96 -f 407/1236/101 420/1228/94 419/1231/97 -f 401/1238/56 403/1222/90 418/1239/102 -f 399/1240/103 416/346/107 415/1232/98 -f 405/1237/92 419/1231/97 418/1239/102 -f 422/1241/104 426/1246/106 425/1226/93 -f 400/1243/85 398/1835/87 423/1244/105 -f 406/1245/89 404/1227/88 425/1226/93 -f 406/1245/89 426/1246/106 427/1233/99 -f 416/346/107 417/762/73 418/1239/102 -f 428/1247/108 427/1233/99 426/1246/106 -f 451/773/109 457/1836/110 458/1248/110 -f 458/1248/110 457/1836/110 449/1250/111 -f 456/1252/112 455/1837/112 451/773/6 -f 453/1253/113 455/1837/112 456/1252/112 -f 479/1255/83 478/1838/114 463/1256/114 -f 467/1258/115 474/1839/115 473/1259/84 -f 464/1261/116 477/1264/116 476/1262/15 -f 463/1256/114 478/1838/114 477/1264/116 -f 482/1265/14 481/1272/117 460/1266/117 -f 473/1259/84 472/1840/118 469/1268/118 -f 476/1269/15 475/1276/119 466/1270/119 -f 481/1272/117 480/1841/120 461/1273/120 -f 469/1268/118 472/1840/118 471/1274/121 -f 475/1276/119 474/1839/115 467/1258/115 -f 461/1273/120 480/1841/120 479/1255/83 -f 470/1275/121 471/1274/121 482/1265/14 -f 490/1277/84 498/1289/84 497/1278/3 -f 488/1280/70 496/1290/70 495/1281/1 -f 486/1283/78 494/1291/78 493/1284/5 -f 484/1286/83 492/1293/83 491/1287/2 -f 483/1288/2 491/1287/2 498/1289/84 -f 489/1279/3 497/1278/3 496/1290/70 -f 487/1282/1 495/1281/1 494/1291/78 -f 485/1292/5 493/1842/5 492/1293/83 -f 506/1294/84 514/1306/84 513/1295/3 -f 504/1297/70 512/1307/70 511/1298/1 -f 502/1300/78 510/1308/78 509/1301/5 -f 500/1303/83 508/1310/83 507/1304/2 -f 499/1305/2 507/1304/2 514/1306/84 -f 505/1296/3 513/1295/3 512/1307/70 -f 503/1299/1 511/1298/1 510/1308/78 -f 501/1309/5 509/1843/5 508/1310/83 -f 566/1311/122 567/1844/48 559/1312/7 -f 564/1314/123 565/1323/125 557/1315/5 -f 569/1317/124 570/1326/127 562/1318/19 -f 567/1320/48 568/1327/128 560/1321/11 -f 565/1323/125 566/1311/122 558/1313/12 -f 563/1324/126 564/1314/123 556/1316/20 -f 570/1326/127 563/1324/126 555/1325/4 -f 568/1327/128 569/1317/124 561/1319/3 -f 569/1328/124 576/1336/133 577/1329/129 -f 565/1330/125 573/1337/134 574/1331/130 -f 564/1314/123 563/1324/126 571/1333/14 -f 563/1324/126 570/1326/127 577/1329/129 -f 569/1328/124 568/1346/128 575/1335/132 -f 564/1314/123 572/1334/131 573/1337/134 -f 572/1334/131 579/1343/140 580/1338/135 -f 577/1329/129 576/1336/133 583/1339/136 -f 574/1331/130 573/1337/134 580/1338/135 -f 572/1334/131 571/1333/14 578/1342/139 -f 571/1333/14 577/1329/129 584/1340/137 -f 575/1335/132 582/1347/141 583/1339/136 -f 582/1348/141 567/1845/48 585/1349/142 -f 583/1351/136 591/1360/148 592/1352/144 -f 580/1353/135 588/1361/149 589/1354/145 -f 578/1342/139 586/1359/147 587/1356/146 -f 581/1355/138 589/1354/145 585/1357/142 -f 578/1342/139 584/1340/137 592/1352/144 -f 582/1348/141 590/1350/143 591/1360/148 -f 579/1343/140 587/1356/146 588/1361/149 -f 604/1362/122 605/1371/48 597/1363/150 -f 602/1365/123 603/1846/125 595/1366/152 -f 607/1368/124 608/1377/127 600/1369/154 -f 605/1371/48 606/1378/128 598/1372/156 -f 603/1373/125 604/1362/122 596/1364/151 -f 601/1375/126 602/1365/123 594/1367/153 -f 608/1377/127 601/1375/126 593/1376/157 -f 606/1378/128 607/1368/124 599/1370/155 -f 607/1379/124 614/1387/133 615/1380/158 -f 603/1381/125 611/1847/134 612/1382/130 -f 601/1375/126 609/1385/14 610/1384/159 -f 608/1377/127 615/1380/158 609/1385/14 -f 606/1386/128 613/1396/132 614/1387/133 -f 602/1365/123 610/1384/159 611/1388/134 -f 611/1388/134 610/1384/159 617/1390/140 -f 614/1387/133 621/1397/136 622/1392/137 -f 612/1382/130 611/1847/134 618/1393/135 -f 609/1385/14 616/1395/139 617/1390/140 -f 609/1385/14 615/1380/158 622/1392/137 -f 613/1396/132 620/1399/141 621/1397/136 -f 605/1400/48 623/1409/142 628/1401/143 -f 621/1403/136 629/1411/148 630/1404/144 -f 618/1405/135 626/1848/20 627/1406/145 -f 616/1395/139 624/1410/147 625/1408/146 -f 619/1407/138 627/1406/145 623/1409/142 -f 622/1392/137 630/1404/144 624/1410/147 -f 620/1402/141 628/1401/143 629/1411/148 -f 617/1390/140 625/1408/146 626/1412/20 -f 591/1360/148 643/1430/11 644/1422/166 -f 586/1423/147 639/1429/169 640/1424/167 -f 589/1426/145 641/1445/177 638/1427/168 -f 592/1352/144 644/1422/166 639/1429/169 -f 590/1350/143 642/1432/170 643/1430/11 -f 590/1350/143 585/1849/142 638/1431/168 -f 638/1427/168 641/1445/177 648/1433/171 -f 597/1435/150 598/1452/156 656/1436/173 -f 643/1430/11 642/1432/170 649/1438/48 -f 642/1432/170 638/1431/168 645/1440/172 -f 644/1422/166 643/1430/11 650/1439/175 -f 596/1364/151 654/1450/180 653/1442/78 -f 594/1367/153 652/1451/181 646/1446/178 -f 593/1447/157 646/1446/178 657/1448/179 -f 597/1435/150 655/1437/174 654/1450/180 -f 595/1366/152 653/1457/78 652/1451/181 -f 651/1441/176 599/1461/155 639/1429/169 -f 650/1455/175 655/1437/174 656/1436/173 -f 649/1438/48 654/1450/180 655/1437/174 -f 654/1450/180 649/1438/48 645/1456/172 -f 653/1457/78 645/1850/172 648/1458/171 -f 652/1451/181 648/1458/171 588/1459/149 -f 657/1448/179 646/1446/178 588/1459/149 -f 599/1461/155 647/1444/14 640/1424/167 -f 630/1404/144 629/1411/148 663/1462/11 -f 624/1464/147 659/1470/169 660/1465/167 -f 623/1467/142 627/1479/145 661/1468/177 -f 630/1404/144 664/1463/166 659/1470/169 -f 628/1401/143 662/1471/170 663/1462/11 -f 628/1401/143 623/1467/142 658/1469/168 -f 663/1462/11 662/1471/170 669/1472/182 -f 662/1471/170 658/1469/168 665/1474/184 -f 663/1462/11 670/1473/183 671/1475/185 -f 660/1465/167 659/1470/169 666/1476/186 -f 661/1468/177 668/1480/188 665/1474/184 -f 659/1470/169 664/1463/166 671/1475/185 -f 675/447/5 687/1485/5 686/1482/36 -f 682/452/34 694/1486/34 693/1483/3 -f 679/453/29 691/1488/29 690/1484/7 -f 676/457/32 688/1489/32 687/1485/5 -f 683/459/31 695/1490/31 694/1486/34 -f 673/462/33 685/1491/33 684/1487/4 -f 680/464/28 692/1492/28 691/1488/29 -f 677/466/35 689/1493/35 688/1489/32 -f 672/460/4 684/1487/4 695/1490/31 -f 674/468/36 686/1482/36 685/1491/33 -f 681/450/3 693/1483/3 692/1492/28 -f 678/470/7 690/1851/7 689/1493/35 -f 706/451/34 718/1503/34 719/1494/31 -f 696/467/4 708/1498/4 709/1495/33 -f 703/455/29 715/1504/29 716/1496/28 -f 700/456/32 712/1505/32 713/1497/35 -f 707/458/31 719/1494/31 708/1498/4 -f 697/461/33 709/1495/33 710/1499/36 -f 704/463/28 716/1496/28 717/1500/3 -f 701/465/35 713/1497/35 714/1501/7 -f 698/448/36 710/1499/36 711/1502/5 -f 705/469/3 717/1500/3 718/1503/34 -f 702/454/7 714/1852/7 715/1504/29 -f 699/449/5 711/1502/5 712/1505/32 -f 783/546/5 795/1509/5 794/1506/36 -f 790/551/34 802/1510/34 801/1507/3 -f 787/552/29 799/1512/29 798/1508/7 -f 784/556/32 796/1513/32 795/1509/5 -f 791/558/31 803/1514/31 802/1510/34 -f 781/561/33 793/1515/33 792/1511/4 -f 788/563/28 800/1516/28 799/1512/29 -f 785/565/35 797/1517/35 796/1513/32 -f 780/559/4 792/1511/4 803/1514/31 -f 782/567/36 794/1506/36 793/1515/33 -f 789/549/3 801/1507/3 800/1516/28 -f 786/569/7 798/1853/7 797/1517/35 -f 814/550/34 826/1527/34 827/1518/31 -f 804/566/4 816/1522/4 817/1519/33 -f 811/554/29 823/1528/29 824/1520/28 -f 808/555/32 820/1529/32 821/1521/35 -f 815/557/31 827/1518/31 816/1522/4 -f 805/560/33 817/1519/33 818/1523/36 -f 812/562/28 824/1520/28 825/1524/3 -f 809/564/35 821/1521/35 822/1525/7 -f 806/547/36 818/1523/36 819/1526/5 -f 813/568/3 825/1524/3 826/1527/34 -f 810/553/7 822/1854/7 823/1528/29 -f 807/548/5 819/1526/5 820/1529/32 -f 831/577/5 843/1533/5 842/1530/36 -f 838/582/34 850/1534/34 849/1531/3 -f 835/583/29 847/1536/29 846/1532/7 -f 832/587/32 844/1537/32 843/1533/5 -f 839/589/31 851/1538/31 850/1534/34 -f 829/592/33 841/1539/33 840/1535/4 -f 836/594/28 848/1540/28 847/1536/29 -f 833/596/35 845/1541/35 844/1537/32 -f 828/590/4 840/1535/4 851/1538/31 -f 830/598/36 842/1530/36 841/1539/33 -f 837/580/3 849/1531/3 848/1540/28 -f 834/600/7 846/1855/7 845/1541/35 -f 862/581/34 874/1551/34 875/1542/31 -f 852/597/4 864/1546/4 865/1543/33 -f 859/585/29 871/1552/29 872/1544/28 -f 856/586/32 868/1553/32 869/1545/35 -f 863/588/31 875/1542/31 864/1546/4 -f 853/591/33 865/1543/33 866/1547/36 -f 860/593/28 872/1544/28 873/1548/3 -f 857/595/35 869/1545/35 870/1549/7 -f 854/578/36 866/1547/36 867/1550/5 -f 861/599/3 873/1548/3 874/1551/34 -f 858/584/7 870/1856/7 871/1552/29 -f 855/579/5 867/1550/5 868/1553/32 -f 879/608/5 891/1557/5 890/1554/36 -f 886/613/34 898/1558/34 897/1555/3 -f 883/614/29 895/1560/29 894/1556/7 -f 880/618/32 892/1561/32 891/1557/5 -f 887/620/31 899/1562/31 898/1558/34 -f 877/623/33 889/1563/33 888/1559/4 -f 884/625/28 896/1564/28 895/1560/29 -f 881/627/35 893/1565/35 892/1561/32 -f 876/621/4 888/1559/4 899/1562/31 -f 878/629/36 890/1554/36 889/1563/33 -f 885/611/3 897/1555/3 896/1564/28 -f 882/631/7 894/1857/7 893/1565/35 -f 910/612/34 922/1575/34 923/1566/31 -f 900/628/4 912/1570/4 913/1567/33 -f 907/616/29 919/1576/29 920/1568/28 -f 904/617/32 916/1577/32 917/1569/35 -f 911/619/31 923/1566/31 912/1570/4 -f 901/622/33 913/1567/33 914/1571/36 -f 908/624/28 920/1568/28 921/1572/3 -f 905/626/35 917/1569/35 918/1573/7 -f 902/609/36 914/1571/36 915/1574/5 -f 909/630/3 921/1572/3 922/1575/34 -f 906/615/7 918/1858/7 919/1576/29 -f 903/610/5 915/1574/5 916/1577/32 -f 924/1578/1 933/1594/1 939/1579/48 -f 930/1581/7 938/1859/7 937/1582/15 -f 928/1584/2 936/1592/2 935/1585/14 -f 926/1587/4 934/1593/4 932/1588/13 -f 931/1580/48 939/1579/48 938/1590/7 -f 929/1583/15 937/1582/15 936/1592/2 -f 927/1586/14 935/1585/14 934/1593/4 -f 925/1589/13 932/1588/13 933/1594/1 -f 947/1595/84 955/1607/84 954/1596/3 -f 945/1598/70 953/1608/70 952/1599/1 -f 943/1601/78 951/1609/78 950/1602/5 -f 941/1604/83 949/1611/83 948/1605/2 -f 940/1606/2 948/1605/2 955/1607/84 -f 946/1597/3 954/1596/3 953/1608/70 -f 944/1600/1 952/1599/1 951/1609/78 -f 942/1610/5 950/1860/5 949/1611/83 -f 963/1612/84 971/1624/84 970/1613/3 -f 961/1615/70 969/1625/70 968/1616/1 -f 959/1618/78 967/1626/78 966/1619/5 -f 957/1621/83 965/1628/83 964/1622/2 -f 956/1623/2 964/1622/2 971/1624/84 -f 962/1614/3 970/1613/3 969/1625/70 -f 960/1617/1 968/1616/1 967/1626/78 -f 958/1627/5 966/1861/5 965/1628/83 -f 973/1629/3 981/1643/3 980/1630/19 -f 975/1632/7 982/1862/7 987/1633/11 -f 978/1635/20 985/1644/20 984/1636/5 -f 976/1638/12 983/1645/12 982/1639/7 -f 972/1631/19 980/1630/19 986/1641/4 -f 974/1634/11 987/1633/11 981/1643/3 -f 979/1642/4 986/1641/4 985/1644/20 -f 977/1637/5 984/1636/5 983/1645/12 -f 993/1646/189 636/1651/194 631/1647/190 -f 637/1649/192 634/1419/164 991/1418/163 -f 992/1414/160 635/1416/161 636/1651/194 -f 631/1647/190 632/1863/222 989/1652/12 -f 990/1653/195 633/1654/196 637/1649/192 -f 989/1652/12 632/1863/222 633/1654/196 -f 1017/1655/197 990/1653/195 994/1650/193 -f 989/1652/12 990/1653/195 1017/1655/197 -f 993/1646/189 988/1648/191 1015/1658/200 -f 1022/1656/198 994/1650/193 991/1418/163 -f 992/1414/160 993/1646/189 1021/1659/201 -f 1015/1658/200 988/1648/191 989/1652/12 -f 1013/1664/189 1012/1692/160 1005/1665/14 -f 1057/1667/205 1006/1669/207 995/1662/204 -f 1057/1667/205 1004/1671/208 1000/1668/206 -f 999/1670/70 1000/1668/206 1004/1671/208 -f 999/1673/70 1007/1864/209 1003/1674/48 -f 1003/1674/48 1002/1677/212 997/1676/211 -f 1002/1677/212 1001/1679/214 996/1678/213 -f 1013/1664/189 1046/1666/203 1001/1681/214 -f 1000/1668/206 999/1670/70 1050/1683/217 -f 998/1675/210 997/1676/211 1048/1685/219 -f 995/1662/204 1006/1669/207 1052/1687/221 -f 1052/1687/221 1006/1669/207 1000/1668/206 -f 999/1673/70 998/1675/210 1049/1686/220 -f 1008/1682/216 1001/1681/214 1002/1695/212 -f 1010/1697/195 1003/1674/48 1007/1698/209 -f 1009/1696/12 1002/1695/212 1003/1674/48 -f 1048/1685/219 997/1676/211 996/1678/213 -f 1014/1700/193 1007/1865/209 1004/1689/208 -f 1010/1697/195 1014/1699/193 1060/1701/198 -f 1054/1703/199 1009/1696/12 1010/1697/195 -f 1059/1704/201 1013/1664/189 1008/1682/216 -f 1060/1706/198 1014/1700/193 1011/1688/163 -f 1012/1692/160 1013/1664/189 1059/1704/201 -f 1008/1682/216 1009/1696/12 1054/1703/199 -f 1019/1707/19 1020/1718/162 1028/1708/137 -f 1016/1657/199 1017/1655/197 1025/1710/138 -f 1021/1712/201 1015/1658/200 1023/1713/140 -f 1022/1715/198 1018/1719/165 1026/1716/141 -f 1020/1718/162 1021/1712/201 1029/1714/139 -f 1018/1719/165 1019/1866/19 1027/1720/136 -f 1015/1658/200 1016/1657/199 1024/1711/135 -f 1017/1655/197 1022/1715/198 1040/1717/48 -f 1024/1728/135 1025/1725/138 1032/1724/130 -f 1036/1730/14 1029/1714/139 1023/1713/140 -f 1028/1708/137 1029/1714/139 1036/1730/14 -f 1033/1721/132 1026/1723/141 1027/1733/136 -f 1023/1713/140 1024/1728/135 1031/1729/134 -f 1034/1735/133 1027/1867/136 1028/1708/137 -f 1042/1736/124 1034/1735/133 1035/1732/158 -f 1031/1729/134 1032/1724/130 1039/1726/122 -f 1036/1730/14 1030/1731/159 1037/1739/123 -f 1035/1732/158 1036/1730/14 1044/1740/126 -f 1033/1721/132 1034/1734/133 1042/1741/124 -f 1037/1739/123 1030/1731/159 1031/1729/134 -f 1046/1742/203 1038/1750/125 1039/1743/122 -f 1052/1745/221 1044/1740/126 1037/1739/123 -f 1051/1684/218 1043/1737/127 1044/1740/126 -f 1049/1686/220 1041/1751/128 1042/1747/124 -f 1047/1744/215 1039/1743/122 1040/1748/48 -f 1045/1746/202 1037/1739/123 1038/1750/125 -f 1050/1683/217 1042/1868/124 1043/1737/127 -f 1048/1749/219 1040/1748/48 1041/1751/128 -f 1057/1752/205 1058/1762/162 1066/1753/137 -f 1054/1703/199 1055/1702/197 1063/1755/138 -f 1067/1757/139 1059/1869/201 1053/1705/200 -f 1060/1759/198 1056/1763/165 1064/1760/141 -f 1058/1762/162 1059/1869/201 1067/1757/139 -f 1056/1763/165 1057/1752/205 1065/1754/136 -f 1053/1705/200 1054/1703/199 1062/1756/135 -f 1055/1702/197 1060/1870/198 1078/1764/48 -f 1062/1773/135 1063/1769/138 1070/1768/130 -f 1074/1775/14 1067/1757/139 1061/1758/140 -f 1073/1777/129 1066/1753/137 1067/1757/139 -f 1071/1765/132 1064/1767/141 1065/1778/136 -f 1068/1776/159 1061/1758/140 1062/1773/135 -f 1065/1778/136 1066/1753/137 1073/1777/129 -f 1072/1779/133 1073/1777/129 1081/1780/127 -f 1076/1782/125 1069/1774/134 1070/1768/130 -f 1074/1775/14 1068/1776/159 1075/1783/123 -f 1081/1780/127 1073/1777/129 1074/1775/14 -f 1071/1765/132 1072/1779/133 1080/1781/124 -f 1068/1776/159 1069/1774/134 1076/1782/125 -f 1084/1785/5 1076/1796/125 1077/1786/122 -f 1090/1788/4 1082/1784/126 1075/1783/123 -f 1089/1790/19 1081/1780/127 1082/1784/126 -f 1087/1791/11 1079/1798/128 1080/1792/124 -f 1085/1787/12 1077/1786/122 1078/1794/48 -f 1083/1789/20 1075/1783/123 1076/1796/125 -f 1088/1793/3 1080/1792/124 1081/1780/127 -f 1086/1797/7 1078/1871/48 1079/1798/128 -f 636/1799/194 635/1803/161 667/1800/187 -f 626/1802/20 667/1800/187 635/1803/161 -f 634/1805/164 668/1806/188 626/1802/20 -f 668/1806/188 634/1805/164 637/1807/192 -f 637/1807/192 633/1810/196 669/1809/182 -f 633/1810/196 632/1872/222 670/1811/183 -f 632/1812/222 631/1815/190 671/1813/185 -f 631/1815/190 636/1799/194 666/1801/186 +f 683/1371/161 698/1372/171 690/1373/171 +f 689/1374/160 696/1375/172 688/1376/172 +f 687/1377/157 694/1378/170 686/1379/170 +f 685/1380/154 691/1381/173 684/1382/173 +f 690/1373/171 697/1383/160 689/1384/160 +f 688/1376/172 695/1385/157 687/1377/157 +f 686/1379/170 693/1386/154 685/1380/154 +f 684/1382/173 692/1387/161 683/1371/161 +f 716/1388/155 723/1389/163 715/1390/163 +f 718/1391/160 730/1392/158 717/1393/158 +f 721/1394/164 727/1395/153 720/1396/153 +f 719/1397/159 725/1398/160 718/1399/160 +f 715/1390/163 729/1400/154 722/1401/154 +f 717/1393/158 724/1402/155 716/1388/155 +f 722/1401/154 728/1403/164 721/1394/164 +f 720/1396/153 726/1404/159 719/1397/159 +f 734/1405/174 731/1406/175 732/1407/176 +f 738/1408/177 735/1409/178 736/1410/179 +f 740/1411/180 737/1412/181 738/1408/177 +f 742/1413/182 739/1414/183 740/1411/180 +f 736/1415/179 759/1416/184 738/1417/177 +f 754/1418/185 747/1419/186 755/1420/187 +f 753/1421/188 755/1420/187 749/1422/189 +f 761/1423/190 748/1424/191 742/1425/182 +f 741/1426/192 753/1421/188 739/1427/183 +f 741/1426/192 747/1419/186 754/1418/185 +f 735/1428/178 752/1429/193 751/1327/194 +f 733/1430/195 749/1422/189 731/1406/175 +f 739/1427/183 752/1429/193 737/1412/181 +f 756/1431/196 759/1416/184 758/1432/197 +f 734/1433/174 757/1434/198 756/1431/196 +f 740/1435/180 759/1416/184 760/1436/199 +f 750/1214/200 753/1421/188 749/1422/189 +f 740/1435/180 761/1423/190 742/1425/182 +f 748/1424/191 761/1423/190 762/1437/201 +f 750/1214/200 752/1429/193 753/1421/188 +f 760/1436/199 756/1431/196 757/1434/198 +f 762/1437/201 760/1436/199 757/1434/198 +f 794/1438/202 787/1439/160 786/1440/159 +f 792/1441/203 785/1442/153 784/1443/164 +f 797/1444/204 790/1445/163 789/1446/155 +f 795/1447/172 788/1448/158 787/1449/160 +f 793/1450/205 786/1440/159 785/1442/153 +f 791/1451/206 784/1443/164 783/1452/154 +f 798/1453/207 783/1452/154 790/1445/163 +f 796/1454/208 789/1446/155 788/1448/158 +f 797/1455/204 805/1456/209 798/1453/207 +f 793/1457/205 802/1458/210 794/1459/202 +f 792/1441/203 799/1460/173 800/1461/211 +f 791/1451/206 805/1456/209 799/1460/173 +f 797/1455/204 803/1462/212 804/1463/213 +f 792/1441/203 801/1464/214 793/1457/205 +f 800/1461/211 808/1465/215 801/1464/214 +f 805/1456/209 811/1466/216 812/1467/217 +f 802/1458/210 808/1465/215 809/1468/218 +f 800/1461/211 806/1469/219 807/1470/220 +f 799/1460/173 812/1467/217 806/1469/219 +f 803/1462/212 811/1466/216 804/1463/213 +f 794/1459/202 802/1458/210 795/1471/172 +f 795/1472/172 803/1462/212 796/1473/208 +f 803/1462/212 795/1472/172 810/1474/221 +f 802/1458/210 809/1468/218 795/1471/172 +f 810/1475/221 813/1476/222 818/1477/223 +f 811/1478/216 820/1479/224 812/1467/217 +f 808/1480/215 817/1481/225 809/1482/218 +f 806/1469/219 815/1483/226 807/1470/220 +f 809/1482/218 813/1484/222 795/1485/172 +f 806/1469/219 820/1479/224 814/1486/227 +f 810/1475/221 819/1487/228 811/1478/216 +f 807/1470/220 816/1488/229 808/1480/215 +f 832/1489/202 825/1490/230 824/1491/231 +f 830/1492/203 823/1493/232 822/1494/233 +f 835/1495/204 828/1496/234 827/1497/235 +f 833/1498/172 826/1499/236 825/1490/230 +f 831/1500/205 824/1491/231 823/1501/232 +f 829/1502/206 822/1494/233 821/1503/237 +f 836/1504/207 821/1503/237 828/1496/234 +f 834/1505/208 827/1497/235 826/1499/236 +f 835/1506/204 843/1507/238 836/1504/207 +f 831/1508/205 840/1509/210 832/1510/202 +f 829/1502/206 838/1511/239 830/1492/203 +f 836/1504/207 837/1512/173 829/1502/206 +f 834/1513/208 842/1514/213 835/1506/204 +f 830/1492/203 839/1515/214 831/1516/205 +f 839/1515/214 845/1517/220 846/1518/215 +f 842/1514/213 850/1519/217 843/1507/238 +f 840/1509/210 846/1520/215 847/1521/218 +f 837/1512/173 845/1517/220 838/1511/239 +f 837/1512/173 850/1519/217 844/1522/219 +f 841/1523/212 849/1524/216 842/1514/213 +f 832/1510/202 840/1509/210 833/1525/172 +f 833/1525/172 841/1523/212 834/1513/208 +f 841/1523/212 833/1525/172 848/1526/221 +f 840/1509/210 847/1521/218 833/1525/172 +f 833/1527/172 856/1528/223 848/1529/221 +f 849/1530/216 858/1531/224 850/1519/217 +f 846/1532/215 855/1533/225 847/1534/218 +f 844/1522/219 853/1535/226 845/1517/220 +f 847/1534/218 851/1536/222 833/1527/172 +f 850/1519/217 852/1537/227 844/1522/219 +f 848/1529/221 857/1538/228 849/1530/216 +f 845/1517/220 854/1539/164 846/1540/215 +f 976/1541/240 1003/1542/163 863/1543/241 +f 1004/1544/242 1003/1542/163 976/1541/240 +f 975/1545/243 862/1546/244 1003/1547/163 +f 1003/1547/163 1002/1548/245 975/1545/243 +f 819/1487/228 872/1549/246 820/1479/224 +f 814/1550/227 868/1551/247 815/1552/226 +f 817/1553/225 866/1554/248 813/1555/222 +f 820/1479/224 867/1556/249 814/1550/227 +f 818/1477/223 871/1557/158 819/1487/228 +f 818/1477/223 866/1558/248 870/1559/250 +f 866/1554/248 876/1560/251 873/1561/252 +f 825/1562/230 884/1563/253 883/1564/254 +f 871/1557/158 877/1565/172 878/1566/255 +f 870/1559/250 873/1567/252 877/1565/172 +f 872/1549/246 878/1566/255 879/1568/256 +f 824/1491/231 881/1569/257 823/1501/232 +f 815/1552/226 868/1551/247 816/1570/229 +f 868/1551/247 875/1571/173 816/1570/229 +f 816/1570/229 869/1572/258 817/1553/225 +f 869/1572/258 816/1570/229 876/1560/251 +f 822/1494/233 874/1573/259 821/1574/237 +f 821/1574/237 885/1575/260 828/1576/234 +f 825/1562/230 882/1577/261 824/1491/231 +f 823/1493/232 880/1578/262 822/1494/233 +f 879/1568/256 867/1556/249 872/1549/246 +f 826/1579/236 827/1580/235 884/1563/253 +f 879/1581/256 884/1563/253 827/1580/235 +f 878/1582/255 884/1563/253 879/1581/256 +f 877/1565/172 883/1564/254 878/1582/255 +f 882/1577/261 873/1583/252 881/1569/257 +f 881/1584/257 876/1585/251 880/1578/262 +f 880/1578/262 816/1586/229 874/1573/259 +f 885/1575/260 816/1586/229 875/1587/173 +f 827/1588/235 868/1551/247 867/1556/249 +f 885/1575/260 875/1587/173 827/1580/235 +f 828/1576/234 885/1575/260 827/1580/235 +f 858/1531/224 891/1589/158 892/1590/246 +f 852/1591/227 888/1592/247 853/1593/226 +f 851/1594/222 889/1595/258 886/1596/248 +f 858/1531/224 887/1597/249 852/1591/227 +f 856/1528/223 891/1589/158 857/1538/228 +f 856/1528/223 886/1596/248 890/1598/250 +f 891/1589/158 897/1599/263 898/1600/264 +f 890/1598/250 893/1601/265 897/1599/263 +f 891/1589/158 899/1602/266 892/1590/246 +f 888/1592/247 894/1603/267 895/1604/268 +f 889/1595/258 893/1601/265 886/1596/248 +f 887/1597/249 899/1602/266 894/1603/267 +f 854/1605/164 889/1595/258 855/1606/225 +f 889/1595/258 854/1605/164 896/1607/269 +f 853/1593/226 888/1592/247 854/1608/164 +f 888/1592/247 895/1604/268 854/1608/164 +f 908/1609/157 923/1610/172 915/1611/172 +f 914/1612/160 921/1613/171 913/1614/171 +f 912/1615/161 919/1616/173 911/1617/173 +f 910/1618/154 916/1619/170 909/1620/170 +f 915/1611/172 922/1621/160 914/1622/160 +f 913/1614/171 920/1623/161 912/1615/161 +f 911/1617/173 918/1624/154 910/1618/154 +f 909/1620/170 917/1625/157 908/1609/157 +f 931/1626/270 938/1627/155 930/1628/155 +f 929/1629/271 936/1630/157 928/1631/157 +f 927/1632/257 934/1633/153 926/1634/153 +f 925/1635/272 932/1636/161 924/1637/161 +f 924/1637/161 939/1638/270 931/1626/270 +f 930/1628/155 937/1639/271 929/1629/271 +f 928/1631/157 935/1640/257 927/1632/257 +f 926/1641/153 933/1642/272 925/1635/272 +f 947/1643/270 954/1644/155 946/1645/155 +f 945/1646/271 952/1647/157 944/1648/157 +f 943/1649/257 950/1650/153 942/1651/153 +f 941/1652/272 948/1653/161 940/1654/161 +f 940/1654/161 955/1655/270 947/1643/270 +f 946/1645/155 953/1656/271 945/1646/271 +f 944/1648/157 951/1657/257 943/1649/257 +f 942/1658/153 949/1659/272 941/1652/272 +f 957/1660/155 964/1661/163 956/1662/163 +f 959/1663/160 971/1664/158 958/1665/158 +f 962/1666/164 968/1667/153 961/1668/153 +f 960/1669/159 966/1670/160 959/1671/160 +f 956/1662/163 970/1672/154 963/1673/154 +f 958/1665/158 965/1674/155 957/1660/155 +f 963/1673/154 969/1675/164 962/1666/164 +f 961/1668/153 967/1676/159 960/1669/159 +f 977/1677/273 859/1678/274 972/1679/275 +f 865/1680/276 975/1545/243 978/1681/277 +f 976/1541/240 864/1682/278 977/1677/273 +f 859/1678/274 973/1683/159 972/1679/275 +f 974/1684/279 865/1680/276 978/1681/277 +f 973/1683/159 861/1685/280 974/1684/279 +f 1001/1686/281 978/1681/277 1006/1687/282 +f 973/1683/159 1001/1686/281 1000/1688/283 +f 977/1677/273 999/1689/284 1005/1690/285 +f 1006/1687/282 975/1545/243 1002/1548/245 +f 976/1541/240 1005/1690/285 1004/1544/242 +f 999/1689/284 973/1683/159 1000/1688/283 +f 1029/1691/286 1030/1692/287 979/1693/288 +f 979/1693/288 1030/1692/287 989/1694/173 +f 997/1695/273 989/1696/173 1030/1697/287 +f 1041/1698/289 979/1693/288 989/1694/173 +f 1041/1698/289 984/1699/290 990/1700/291 +f 983/1701/271 988/1702/292 991/1703/293 +f 983/1704/271 987/1705/172 982/1706/294 +f 987/1705/172 981/1707/295 982/1706/294 +f 986/1708/296 980/1709/297 981/1707/295 +f 985/1710/298 1030/1692/287 980/1709/297 +f 1031/1711/299 980/1709/297 1030/1692/287 +f 997/1695/273 985/1712/298 992/1713/300 +f 984/1699/290 1034/1714/301 1035/1715/302 +f 982/1706/294 1032/1716/303 1033/1717/304 +f 979/1693/288 1036/1718/305 1029/1691/286 +f 1036/1718/305 984/1699/290 1035/1715/302 +f 995/1719/243 988/1720/292 1041/1721/289 +f 1041/1721/289 1040/1722/245 995/1719/243 +f 996/1723/240 1041/1721/289 989/1696/173 +f 1042/1724/242 1041/1721/289 996/1723/240 +f 983/1704/271 1033/1717/304 1034/1725/301 +f 992/1713/300 986/1726/296 993/1727/159 +f 994/1728/279 991/1729/293 998/1730/277 +f 993/1727/159 987/1705/172 994/1728/279 +f 1032/1716/303 980/1709/297 1031/1711/299 +f 998/1731/277 988/1720/292 995/1719/243 +f 994/1728/279 1044/1732/282 1039/1733/281 +f 1038/1734/283 994/1728/279 1039/1733/281 +f 1043/1735/285 992/1713/300 1037/1736/284 +f 1044/1737/282 995/1719/243 1040/1722/245 +f 996/1723/240 1043/1735/285 1042/1724/242 +f 992/1713/300 1038/1734/283 1037/1736/284 +f 1003/1738/163 1012/1739/217 1011/1740/216 +f 1000/1688/283 1009/1741/218 1008/1742/215 +f 1005/1743/285 1007/1744/220 1013/1745/219 +f 1006/1746/282 1010/1747/221 1024/1748/172 +f 1004/1749/242 1013/1745/219 1012/1739/217 +f 1002/1750/245 1011/1751/216 1010/1747/221 +f 999/1689/284 1008/1742/215 1007/1744/220 +f 1001/1686/281 1024/1748/172 1009/1741/218 +f 1017/1752/212 1024/1753/172 1010/1754/221 +f 1016/1755/210 1009/1756/218 1024/1753/172 +f 1024/1753/172 1023/1757/202 1016/1755/210 +f 1025/1758/208 1024/1753/172 1017/1752/212 +f 1008/1759/215 1016/1755/210 1015/1760/214 +f 1020/1761/173 1007/1744/220 1014/1762/239 +f 1012/1739/217 1020/1761/173 1019/1763/238 +f 1017/1752/212 1011/1764/216 1018/1765/213 +f 1007/1744/220 1015/1760/214 1014/1762/239 +f 1018/1766/213 1012/1739/217 1019/1763/238 +f 1026/1767/204 1019/1763/238 1027/1768/207 +f 1015/1760/214 1023/1757/202 1022/1769/205 +f 1020/1761/173 1021/1770/203 1028/1771/206 +f 1019/1763/238 1028/1771/206 1027/1768/207 +f 1017/1752/212 1026/1772/204 1025/1758/208 +f 1021/1770/203 1015/1760/214 1022/1769/205 +f 1030/1773/287 1023/1774/202 1031/1775/299 +f 1036/1776/305 1021/1770/203 1029/1777/286 +f 1035/1715/302 1028/1771/206 1036/1776/305 +f 1033/1717/304 1026/1778/204 1034/1725/301 +f 1031/1775/299 1024/1779/172 1032/1780/303 +f 1029/1777/286 1022/1781/205 1030/1773/287 +f 1034/1714/301 1027/1768/207 1035/1715/302 +f 1032/1780/303 1025/1782/208 1033/1717/304 +f 1041/1783/289 1050/1784/217 1049/1785/216 +f 1038/1734/283 1047/1786/218 1046/1787/215 +f 1051/1788/219 1037/1736/284 1045/1789/220 +f 1044/1790/282 1048/1791/221 1062/1792/172 +f 1042/1793/242 1051/1788/219 1050/1784/217 +f 1040/1794/245 1049/1785/216 1048/1791/221 +f 1037/1736/284 1046/1787/215 1045/1789/220 +f 1039/1733/281 1062/1795/172 1047/1786/218 +f 1055/1796/212 1062/1797/172 1048/1798/221 +f 1054/1799/210 1047/1800/218 1062/1801/172 +f 1062/1801/172 1061/1802/202 1054/1799/210 +f 1063/1803/208 1062/1797/172 1055/1796/212 +f 1046/1804/215 1054/1799/210 1053/1805/214 +f 1058/1806/173 1045/1789/220 1052/1807/239 +f 1057/1808/209 1051/1788/219 1058/1806/173 +f 1055/1796/212 1049/1809/216 1056/1810/213 +f 1052/1807/239 1046/1804/215 1053/1805/214 +f 1049/1809/216 1057/1808/209 1056/1810/213 +f 1056/1810/213 1065/1811/207 1064/1812/204 +f 1060/1813/205 1054/1799/210 1061/1802/202 +f 1058/1806/173 1059/1814/203 1066/1815/206 +f 1065/1811/207 1058/1806/173 1066/1815/206 +f 1055/1796/212 1064/1812/204 1063/1803/208 +f 1052/1807/239 1060/1813/205 1059/1814/203 +f 1068/1816/153 1061/1817/202 1069/1818/159 +f 1074/1819/154 1059/1814/203 1067/1820/164 +f 1073/1821/163 1066/1815/206 1074/1819/154 +f 1071/1822/158 1064/1823/204 1072/1824/155 +f 1069/1818/159 1062/1825/172 1070/1826/160 +f 1067/1820/164 1060/1827/205 1068/1816/153 +f 1072/1824/155 1065/1811/207 1073/1821/163 +f 1070/1828/160 1063/1829/208 1071/1822/158 +f 864/1830/278 895/1831/268 894/1832/267 +f 854/1833/164 863/1834/241 1003/1835/163 +f 862/1836/244 854/1833/164 1003/1835/163 +f 896/1837/269 865/1838/276 893/1839/265 +f 865/1838/276 897/1840/263 893/1839/265 +f 861/1841/280 898/1842/264 897/1840/263 +f 860/1843/306 899/1844/266 898/1845/264 +f 859/1846/274 894/1832/267 899/1844/266 +f 683/1371/161 692/1387/161 698/1372/171 +f 689/1374/160 697/1847/160 696/1375/172 +f 687/1377/157 695/1385/157 694/1378/170 +f 685/1380/154 693/1386/154 691/1381/173 +f 690/1373/171 698/1372/171 697/1383/160 +f 688/1376/172 696/1375/172 695/1385/157 +f 686/1379/170 694/1378/170 693/1386/154 +f 684/1382/173 691/1381/173 692/1387/161 +f 716/1388/155 724/1402/155 723/1389/163 +f 718/1391/160 725/1848/160 730/1392/158 +f 721/1394/164 728/1403/164 727/1395/153 +f 719/1397/159 726/1404/159 725/1398/160 +f 715/1390/163 723/1389/163 729/1400/154 +f 717/1393/158 730/1392/158 724/1402/155 +f 722/1401/154 729/1400/154 728/1403/164 +f 720/1396/153 727/1395/153 726/1404/159 +f 734/1405/174 733/1849/195 731/1406/175 +f 738/1408/177 737/1412/181 735/1409/178 +f 740/1411/180 739/1414/183 737/1412/181 +f 742/1413/182 741/1850/192 739/1414/183 +f 736/1415/179 758/1432/197 759/1416/184 +f 753/1421/188 754/1418/185 755/1420/187 +f 741/1426/192 754/1418/185 753/1421/188 +f 735/1428/178 737/1412/181 752/1429/193 +f 733/1430/195 750/1214/200 749/1422/189 +f 739/1427/183 753/1421/188 752/1429/193 +f 756/1431/196 760/1436/199 759/1416/184 +f 734/1433/174 732/1851/176 757/1434/198 +f 740/1435/180 738/1417/177 759/1416/184 +f 740/1435/180 760/1436/199 761/1423/190 +f 750/1214/200 751/1327/194 752/1429/193 +f 762/1437/201 761/1423/190 760/1436/199 +f 794/1438/202 795/1852/172 787/1439/160 +f 792/1441/203 793/1450/205 785/1442/153 +f 797/1444/204 798/1453/207 790/1445/163 +f 795/1447/172 796/1454/208 788/1448/158 +f 793/1450/205 794/1438/202 786/1440/159 +f 791/1451/206 792/1441/203 784/1443/164 +f 798/1453/207 791/1451/206 783/1452/154 +f 796/1454/208 797/1444/204 789/1446/155 +f 797/1455/204 804/1463/213 805/1456/209 +f 793/1457/205 801/1464/214 802/1458/210 +f 792/1441/203 791/1451/206 799/1460/173 +f 791/1451/206 798/1453/207 805/1456/209 +f 797/1455/204 796/1473/208 803/1462/212 +f 792/1441/203 800/1461/211 801/1464/214 +f 800/1461/211 807/1470/220 808/1465/215 +f 805/1456/209 804/1463/213 811/1466/216 +f 802/1458/210 801/1464/214 808/1465/215 +f 800/1461/211 799/1460/173 806/1469/219 +f 799/1460/173 805/1456/209 812/1467/217 +f 803/1462/212 810/1474/221 811/1466/216 +f 810/1475/221 795/1853/172 813/1476/222 +f 811/1478/216 819/1487/228 820/1479/224 +f 808/1480/215 816/1488/229 817/1481/225 +f 806/1469/219 814/1486/227 815/1483/226 +f 809/1482/218 817/1481/225 813/1484/222 +f 806/1469/219 812/1467/217 820/1479/224 +f 810/1475/221 818/1477/223 819/1487/228 +f 807/1470/220 815/1483/226 816/1488/229 +f 832/1489/202 833/1498/172 825/1490/230 +f 830/1492/203 831/1854/205 823/1493/232 +f 835/1495/204 836/1504/207 828/1496/234 +f 833/1498/172 834/1505/208 826/1499/236 +f 831/1500/205 832/1489/202 824/1491/231 +f 829/1502/206 830/1492/203 822/1494/233 +f 836/1504/207 829/1502/206 821/1503/237 +f 834/1505/208 835/1495/204 827/1497/235 +f 835/1506/204 842/1514/213 843/1507/238 +f 831/1508/205 839/1855/214 840/1509/210 +f 829/1502/206 837/1512/173 838/1511/239 +f 836/1504/207 843/1507/238 837/1512/173 +f 834/1513/208 841/1523/212 842/1514/213 +f 830/1492/203 838/1511/239 839/1515/214 +f 839/1515/214 838/1511/239 845/1517/220 +f 842/1514/213 849/1524/216 850/1519/217 +f 840/1509/210 839/1855/214 846/1520/215 +f 837/1512/173 844/1522/219 845/1517/220 +f 837/1512/173 843/1507/238 850/1519/217 +f 841/1523/212 848/1526/221 849/1524/216 +f 833/1527/172 851/1536/222 856/1528/223 +f 849/1530/216 857/1538/228 858/1531/224 +f 846/1532/215 854/1856/164 855/1533/225 +f 844/1522/219 852/1537/227 853/1535/226 +f 847/1534/218 855/1533/225 851/1536/222 +f 850/1519/217 858/1531/224 852/1537/227 +f 848/1529/221 856/1528/223 857/1538/228 +f 845/1517/220 853/1535/226 854/1539/164 +f 819/1487/228 871/1557/158 872/1549/246 +f 814/1550/227 867/1556/249 868/1551/247 +f 817/1553/225 869/1572/258 866/1554/248 +f 820/1479/224 872/1549/246 867/1556/249 +f 818/1477/223 870/1559/250 871/1557/158 +f 818/1477/223 813/1857/222 866/1558/248 +f 866/1554/248 869/1572/258 876/1560/251 +f 825/1562/230 826/1579/236 884/1563/253 +f 871/1557/158 870/1559/250 877/1565/172 +f 870/1559/250 866/1558/248 873/1567/252 +f 872/1549/246 871/1557/158 878/1566/255 +f 824/1491/231 882/1577/261 881/1569/257 +f 822/1494/233 880/1578/262 874/1573/259 +f 821/1574/237 874/1573/259 885/1575/260 +f 825/1562/230 883/1564/254 882/1577/261 +f 823/1493/232 881/1584/257 880/1578/262 +f 879/1568/256 827/1588/235 867/1556/249 +f 878/1582/255 883/1564/254 884/1563/253 +f 877/1565/172 882/1577/261 883/1564/254 +f 882/1577/261 877/1565/172 873/1583/252 +f 881/1584/257 873/1858/252 876/1585/251 +f 880/1578/262 876/1585/251 816/1586/229 +f 885/1575/260 874/1573/259 816/1586/229 +f 827/1588/235 875/1571/173 868/1551/247 +f 858/1531/224 857/1538/228 891/1589/158 +f 852/1591/227 887/1597/249 888/1592/247 +f 851/1594/222 855/1606/225 889/1595/258 +f 858/1531/224 892/1590/246 887/1597/249 +f 856/1528/223 890/1598/250 891/1589/158 +f 856/1528/223 851/1594/222 886/1596/248 +f 891/1589/158 890/1598/250 897/1599/263 +f 890/1598/250 886/1596/248 893/1601/265 +f 891/1589/158 898/1600/264 899/1602/266 +f 888/1592/247 887/1597/249 894/1603/267 +f 889/1595/258 896/1607/269 893/1601/265 +f 887/1597/249 892/1590/246 899/1602/266 +f 908/1609/157 917/1625/157 923/1610/172 +f 914/1612/160 922/1859/160 921/1613/171 +f 912/1615/161 920/1623/161 919/1616/173 +f 910/1618/154 918/1624/154 916/1619/170 +f 915/1611/172 923/1610/172 922/1621/160 +f 913/1614/171 921/1613/171 920/1623/161 +f 911/1617/173 919/1616/173 918/1624/154 +f 909/1620/170 916/1619/170 917/1625/157 +f 931/1626/270 939/1638/270 938/1627/155 +f 929/1629/271 937/1639/271 936/1630/157 +f 927/1632/257 935/1640/257 934/1633/153 +f 925/1635/272 933/1642/272 932/1636/161 +f 924/1637/161 932/1636/161 939/1638/270 +f 930/1628/155 938/1627/155 937/1639/271 +f 928/1631/157 936/1630/157 935/1640/257 +f 926/1641/153 934/1860/153 933/1642/272 +f 947/1643/270 955/1655/270 954/1644/155 +f 945/1646/271 953/1656/271 952/1647/157 +f 943/1649/257 951/1657/257 950/1650/153 +f 941/1652/272 949/1659/272 948/1653/161 +f 940/1654/161 948/1653/161 955/1655/270 +f 946/1645/155 954/1644/155 953/1656/271 +f 944/1648/157 952/1647/157 951/1657/257 +f 942/1658/153 950/1861/153 949/1659/272 +f 957/1660/155 965/1674/155 964/1661/163 +f 959/1663/160 966/1862/160 971/1664/158 +f 962/1666/164 969/1675/164 968/1667/153 +f 960/1669/159 967/1676/159 966/1670/160 +f 956/1662/163 964/1661/163 970/1672/154 +f 958/1665/158 971/1664/158 965/1674/155 +f 963/1673/154 970/1672/154 969/1675/164 +f 961/1668/153 968/1667/153 967/1676/159 +f 977/1677/273 864/1682/278 859/1678/274 +f 865/1680/276 862/1546/244 975/1545/243 +f 976/1541/240 863/1543/241 864/1682/278 +f 859/1678/274 860/1863/306 973/1683/159 +f 974/1684/279 861/1685/280 865/1680/276 +f 973/1683/159 860/1863/306 861/1685/280 +f 1001/1686/281 974/1684/279 978/1681/277 +f 973/1683/159 974/1684/279 1001/1686/281 +f 977/1677/273 972/1679/275 999/1689/284 +f 1006/1687/282 978/1681/277 975/1545/243 +f 976/1541/240 977/1677/273 1005/1690/285 +f 999/1689/284 972/1679/275 973/1683/159 +f 997/1695/273 996/1723/240 989/1696/173 +f 1041/1698/289 990/1700/291 979/1693/288 +f 1041/1698/289 988/1702/292 984/1699/290 +f 983/1701/271 984/1699/290 988/1702/292 +f 983/1704/271 991/1864/293 987/1705/172 +f 987/1705/172 986/1708/296 981/1707/295 +f 986/1708/296 985/1710/298 980/1709/297 +f 997/1695/273 1030/1697/287 985/1712/298 +f 984/1699/290 983/1701/271 1034/1714/301 +f 982/1706/294 981/1707/295 1032/1716/303 +f 979/1693/288 990/1700/291 1036/1718/305 +f 1036/1718/305 990/1700/291 984/1699/290 +f 983/1704/271 982/1706/294 1033/1717/304 +f 992/1713/300 985/1712/298 986/1726/296 +f 994/1728/279 987/1705/172 991/1729/293 +f 993/1727/159 986/1726/296 987/1705/172 +f 1032/1716/303 981/1707/295 980/1709/297 +f 998/1731/277 991/1865/293 988/1720/292 +f 994/1728/279 998/1730/277 1044/1732/282 +f 1038/1734/283 993/1727/159 994/1728/279 +f 1043/1735/285 997/1695/273 992/1713/300 +f 1044/1737/282 998/1731/277 995/1719/243 +f 996/1723/240 997/1695/273 1043/1735/285 +f 992/1713/300 993/1727/159 1038/1734/283 +f 1003/1738/163 1004/1749/242 1012/1739/217 +f 1000/1688/283 1001/1686/281 1009/1741/218 +f 1005/1743/285 999/1689/284 1007/1744/220 +f 1006/1746/282 1002/1750/245 1010/1747/221 +f 1004/1749/242 1005/1743/285 1013/1745/219 +f 1002/1750/245 1003/1866/163 1011/1751/216 +f 999/1689/284 1000/1688/283 1008/1742/215 +f 1001/1686/281 1006/1746/282 1024/1748/172 +f 1008/1759/215 1009/1756/218 1016/1755/210 +f 1020/1761/173 1013/1745/219 1007/1744/220 +f 1012/1739/217 1013/1745/219 1020/1761/173 +f 1017/1752/212 1010/1754/221 1011/1764/216 +f 1007/1744/220 1008/1759/215 1015/1760/214 +f 1018/1766/213 1011/1867/216 1012/1739/217 +f 1026/1767/204 1018/1766/213 1019/1763/238 +f 1015/1760/214 1016/1755/210 1023/1757/202 +f 1020/1761/173 1014/1762/239 1021/1770/203 +f 1019/1763/238 1020/1761/173 1028/1771/206 +f 1017/1752/212 1018/1765/213 1026/1772/204 +f 1021/1770/203 1014/1762/239 1015/1760/214 +f 1030/1773/287 1022/1781/205 1023/1774/202 +f 1036/1776/305 1028/1771/206 1021/1770/203 +f 1035/1715/302 1027/1768/207 1028/1771/206 +f 1033/1717/304 1025/1782/208 1026/1778/204 +f 1031/1775/299 1023/1774/202 1024/1779/172 +f 1029/1777/286 1021/1770/203 1022/1781/205 +f 1034/1714/301 1026/1868/204 1027/1768/207 +f 1032/1780/303 1024/1779/172 1025/1782/208 +f 1041/1783/289 1042/1793/242 1050/1784/217 +f 1038/1734/283 1039/1733/281 1047/1786/218 +f 1051/1788/219 1043/1869/285 1037/1736/284 +f 1044/1790/282 1040/1794/245 1048/1791/221 +f 1042/1793/242 1043/1869/285 1051/1788/219 +f 1040/1794/245 1041/1783/289 1049/1785/216 +f 1037/1736/284 1038/1734/283 1046/1787/215 +f 1039/1733/281 1044/1870/282 1062/1795/172 +f 1046/1804/215 1047/1800/218 1054/1799/210 +f 1058/1806/173 1051/1788/219 1045/1789/220 +f 1057/1808/209 1050/1784/217 1051/1788/219 +f 1055/1796/212 1048/1798/221 1049/1809/216 +f 1052/1807/239 1045/1789/220 1046/1804/215 +f 1049/1809/216 1050/1784/217 1057/1808/209 +f 1056/1810/213 1057/1808/209 1065/1811/207 +f 1060/1813/205 1053/1805/214 1054/1799/210 +f 1058/1806/173 1052/1807/239 1059/1814/203 +f 1065/1811/207 1057/1808/209 1058/1806/173 +f 1055/1796/212 1056/1810/213 1064/1812/204 +f 1052/1807/239 1053/1805/214 1060/1813/205 +f 1068/1816/153 1060/1827/205 1061/1817/202 +f 1074/1819/154 1066/1815/206 1059/1814/203 +f 1073/1821/163 1065/1811/207 1066/1815/206 +f 1071/1822/158 1063/1829/208 1064/1823/204 +f 1069/1818/159 1061/1817/202 1062/1825/172 +f 1067/1820/164 1059/1814/203 1060/1827/205 +f 1072/1824/155 1064/1823/204 1065/1811/207 +f 1070/1828/160 1062/1871/172 1063/1829/208 +f 864/1830/278 863/1834/241 895/1831/268 +f 854/1833/164 895/1831/268 863/1834/241 +f 862/1836/244 896/1837/269 854/1833/164 +f 896/1837/269 862/1836/244 865/1838/276 +f 865/1838/276 861/1841/280 897/1840/263 +f 861/1841/280 860/1872/306 898/1842/264 +f 860/1843/306 859/1846/274 899/1844/266 +f 859/1846/274 864/1830/278 894/1832/267 diff --git a/src/main/resources/assets/hbm/sounds.json b/src/main/resources/assets/hbm/sounds.json index be68ebfef..e1442354f 100644 --- a/src/main/resources/assets/hbm/sounds.json +++ b/src/main/resources/assets/hbm/sounds.json @@ -245,6 +245,7 @@ "weapon.reload.shotgunCock": {"category": "player", "sounds": ["weapon/reload/shotgunCock"]}, "weapon.reload.shotgunReload": {"category": "player", "sounds": ["weapon/reload/shotgunReload1", "weapon/reload/shotgunReload2", "weapon/reload/shotgunReload3"]}, "weapon.reload.tubeFwoomp": {"category": "player", "sounds": ["weapon/reload/tubeFwoomp"]}, + "weapon.reload.impact": {"category": "player", "sounds": ["weapon/reload/impact1", "weapon/reload/impact2", "weapon/reload/impact3"]}, "turret.chekhov_fire": {"category": "block", "sounds": [{"name": "turret/chekhov_fire", "stream": false}]}, "turret.jeremy_fire": {"category": "block", "sounds": ["turret/jeremy_fire1", "turret/jeremy_fire2", "turret/jeremy_fire3", "turret/jeremy_fire4", "turret/jeremy_fire5"]}, diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/impact1.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/impact1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1e2a681eada6073bab6ab1c8c2ecb24897f25d54 GIT binary patch literal 7896 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/impact2.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/impact2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8612f6f0360063d40486551ba2f9d45c9fb43eef GIT binary patch literal 8876 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/sounds/weapon/reload/impact3.ogg b/src/main/resources/assets/hbm/sounds/weapon/reload/impact3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8cacd61386ec98e60ef696bea1ae95bab7fe3860 GIT binary patch literal 7736 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 I8PlNu0dOmMxc~qF delta 4087 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 phsM}}nRGBhG=|!^V%onH{|B5uA< Date: Wed, 9 Oct 2024 16:25:43 +0200 Subject: [PATCH 59/63] nothing productive for today --- .../com/hbm/items/weapon/sedna/factory/Orchestras.java | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 7d160c89c..314af2435 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -341,9 +341,7 @@ public class Orchestras { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); if(timer == 4) { IMagazine mag = ctx.config.getReceivers(stack)[0].getMagazine(stack); - int ammo = mag.getAmount(stack); - int prev = mag.getAmountAfterReload(stack); - int toEject = prev - ammo; + int toEject = mag.getAmountAfterReload(stack) - mag.getAmount(stack); SpentCasing casing = mag.getCasing(stack); for(int i = 0; i < toEject; i++) CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.1875, -0.375D, -0.12, 0.18, 0, 0.01, casing.getName(), true, 60, 0.5D, 20); } @@ -366,9 +364,7 @@ public class Orchestras { if(type == AnimType.INSPECT) { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); IMagazine mag = ctx.config.getReceivers(stack)[0].getMagazine(stack); - int ammo = mag.getAmount(stack); - int prev = mag.getAmountAfterReload(stack); - int toEject = prev - ammo; + int toEject = mag.getAmountAfterReload(stack) - mag.getAmount(stack); if(timer == 4 && toEject <= 0) { SpentCasing casing = mag.getCasing(stack); for(int i = 0; i < toEject; i++) CasingCreator.composeEffect(player.worldObj, player, 0.625, -0.1875, -0.375D, -0.12, 0.18, 0, 0.01, casing.getName(), true, 60, 0.5D, 20); From c7ced50e671d010eea9ca6c17615ef55f2c61392 Mon Sep 17 00:00:00 2001 From: Bob Date: Wed, 9 Oct 2024 23:19:54 +0200 Subject: [PATCH 60/63] DAY AND NIGHT --- .../java/com/hbm/crafting/WeaponRecipes.java | 2 +- src/main/java/com/hbm/items/ModItems.java | 12 +- .../com/hbm/items/weapon/sedna/GunConfig.java | 9 +- .../hbm/items/weapon/sedna/ItemGunBaseNT.java | 172 ++++++++++-------- .../com/hbm/items/weapon/sedna/Receiver.java | 9 +- .../weapon/sedna/factory/GunFactory.java | 6 +- .../sedna/factory/GunFactoryClient.java | 29 +-- .../weapon/sedna/factory/GunStateDecider.java | 69 +++---- .../hbm/items/weapon/sedna/factory/Lego.java | 50 ++--- .../weapon/sedna/factory/LegoClient.java | 2 + .../weapon/sedna/factory/Orchestras.java | 73 +++++--- .../weapon/sedna/factory/XFactory12ga.java | 18 +- .../weapon/sedna/factory/XFactory22lr.java | 9 +- .../weapon/sedna/factory/XFactory357.java | 32 +++- .../weapon/sedna/factory/XFactory40mm.java | 39 +++- .../weapon/sedna/factory/XFactory44.java | 17 +- .../weapon/sedna/factory/XFactory762mm.java | 11 +- .../weapon/sedna/factory/XFactory9mm.java | 11 +- .../sedna/factory/XFactoryBlackPowder.java | 7 +- .../sedna/hud/HUDComponentAmmoCounter.java | 13 +- .../sedna/hud/HUDComponentDurabilityBar.java | 15 +- .../items/weapon/sedna/hud/IHUDComponent.java | 2 +- .../sedna/mags/MagazineSingleReload.java | 2 +- src/main/java/com/hbm/main/ClientProxy.java | 11 +- .../com/hbm/main/ModEventHandlerClient.java | 28 +-- .../java/com/hbm/main/ResourceManager.java | 2 + .../packet/toclient/GunAnimationPacket.java | 41 +++-- .../com/hbm/render/anim/HbmAnimations.java | 25 +-- .../item/weapon/sedna/ItemRenderAm180.java | 6 +- .../item/weapon/sedna/ItemRenderAtlas.java | 5 +- .../item/weapon/sedna/ItemRenderCarbine.java | 4 +- .../weapon/sedna/ItemRenderCongoLake.java | 152 ++++++++++++++++ .../item/weapon/sedna/ItemRenderDANI.java | 153 ++++++++++++++++ .../item/weapon/sedna/ItemRenderDebug.java | 4 +- .../item/weapon/sedna/ItemRenderFlaregun.java | 4 +- .../weapon/sedna/ItemRenderGreasegun.java | 6 +- .../weapon/sedna/ItemRenderHeavyRevolver.java | 4 +- .../item/weapon/sedna/ItemRenderHenry.java | 4 +- .../weapon/sedna/ItemRenderLiberator.java | 13 +- .../item/weapon/sedna/ItemRenderMaresleg.java | 4 +- .../weapon/sedna/ItemRenderPepperbox.java | 6 +- .../models/weapons/dani_celestial.png | Bin 0 -> 3086 bytes .../textures/models/weapons/dani_lunar.png | Bin 0 -> 3090 bytes 43 files changed, 761 insertions(+), 320 deletions(-) create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java create mode 100644 src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/dani_celestial.png create mode 100644 src/main/resources/assets/hbm/textures/models/weapons/dani_lunar.png diff --git a/src/main/java/com/hbm/crafting/WeaponRecipes.java b/src/main/java/com/hbm/crafting/WeaponRecipes.java index 4a9e4bfe9..43e3803b9 100644 --- a/src/main/java/com/hbm/crafting/WeaponRecipes.java +++ b/src/main/java/com/hbm/crafting/WeaponRecipes.java @@ -35,7 +35,7 @@ public class WeaponRecipes { //SEDNA Guns CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_pepperbox, 1), new Object[] { "IIW", " C", 'I', IRON.ingot(), 'W', KEY_PLANKS, 'C', CU.ingot() }); - CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_atlas, 1), new Object[] { "BRM", " G", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); + CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_light_revolver, 1), new Object[] { "BRM", " G", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', WOOD.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_henry, 1), new Object[] { "BRP", "BMS", 'B', STEEL.lightBarrel(), 'R', GUNMETAL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'S', WOOD.stock(), 'P', GUNMETAL.plate() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_greasegun, 1), new Object[] { "BRS", "SMG", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'S', STEEL.bolt(), 'M', GUNMETAL.mechanism(), 'G', STEEL.grip() }); CraftingManager.addRecipeAuto(new ItemStack(ModItems.gun_maresleg, 1), new Object[] { "BRM", "BGS", 'B', STEEL.lightBarrel(), 'R', STEEL.lightReceiver(), 'M', GUNMETAL.mechanism(), 'G', STEEL.bolt(), 'S', WOOD.stock() }); diff --git a/src/main/java/com/hbm/items/ModItems.java b/src/main/java/com/hbm/items/ModItems.java index 292babf98..dffa34657 100644 --- a/src/main/java/com/hbm/items/ModItems.java +++ b/src/main/java/com/hbm/items/ModItems.java @@ -1529,7 +1529,6 @@ public class ModItems { public static Item gun_panzerschreck; public static Item gun_quadro; public static Item gun_hk69; - public static Item gun_congolake; public static Item gun_stinger; public static Item gun_skystinger; public static Item gun_revolver; @@ -1624,7 +1623,8 @@ public class ModItems { public static Item ammo_debug; public static Item gun_pepperbox; - public static Item gun_atlas; + public static Item gun_light_revolver; + public static Item gun_light_revolver_dani; public static Item gun_henry; public static Item gun_greasegun; public static Item gun_maresleg; @@ -1633,6 +1633,7 @@ public class ModItems { public static Item gun_carbine; public static Item gun_am180; public static Item gun_liberator; + public static Item gun_congolake; public static Item ammo_standard; @@ -4094,7 +4095,7 @@ public class ModItems { gun_panzerschreck = new ItemGunBase(GunRocketFactory.getPanzConfig()).setUnlocalizedName("gun_panzerschreck").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_panzerschreck"); gun_quadro = new ItemGunBase(GunRocketFactory.getQuadroConfig()).setUnlocalizedName("gun_quadro").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_quadro"); gun_hk69 = new ItemGunBase(GunGrenadeFactory.getHK69Config()).setUnlocalizedName("gun_hk69").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_hk69"); - gun_congolake = new ItemGunBase(GunGrenadeFactory.getCongoConfig()).setUnlocalizedName("gun_congolake").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_congolake"); + //gun_congolake = new ItemGunBase(GunGrenadeFactory.getCongoConfig()).setUnlocalizedName("gun_congolake").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_congolake"); gun_stinger = new ItemGunBase(GunRocketHomingFactory.getStingerConfig()).setUnlocalizedName("gun_stinger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_stinger"); gun_skystinger = new ItemGunBase(GunRocketHomingFactory.getSkyStingerConfig()).setUnlocalizedName("gun_skystinger").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_skystinger"); gun_revolver = new ItemGunBase(Gun357MagnumFactory.getRevolverConfig()).setUnlocalizedName("gun_revolver").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_revolver"); @@ -6980,7 +6981,6 @@ public class ModItems { GameRegistry.registerItem(gun_panzerschreck, gun_panzerschreck.getUnlocalizedName()); GameRegistry.registerItem(gun_quadro, gun_quadro.getUnlocalizedName()); GameRegistry.registerItem(gun_hk69, gun_hk69.getUnlocalizedName()); - GameRegistry.registerItem(gun_congolake, gun_congolake.getUnlocalizedName()); GameRegistry.registerItem(gun_stinger, gun_stinger.getUnlocalizedName()); GameRegistry.registerItem(gun_fatman, gun_fatman.getUnlocalizedName()); GameRegistry.registerItem(gun_proto, gun_proto.getUnlocalizedName()); @@ -7041,7 +7041,8 @@ public class ModItems { GameRegistry.registerItem(ammo_debug, ammo_debug.getUnlocalizedName()); GameRegistry.registerItem(gun_pepperbox, gun_pepperbox.getUnlocalizedName()); - GameRegistry.registerItem(gun_atlas, gun_atlas.getUnlocalizedName()); + GameRegistry.registerItem(gun_light_revolver, gun_light_revolver.getUnlocalizedName()); + GameRegistry.registerItem(gun_light_revolver_dani, gun_light_revolver_dani.getUnlocalizedName()); GameRegistry.registerItem(gun_henry, gun_henry.getUnlocalizedName()); GameRegistry.registerItem(gun_greasegun, gun_greasegun.getUnlocalizedName()); GameRegistry.registerItem(gun_maresleg, gun_maresleg.getUnlocalizedName()); @@ -7050,6 +7051,7 @@ public class ModItems { GameRegistry.registerItem(gun_carbine, gun_carbine.getUnlocalizedName()); GameRegistry.registerItem(gun_am180, gun_am180.getUnlocalizedName()); GameRegistry.registerItem(gun_liberator, gun_liberator.getUnlocalizedName()); + GameRegistry.registerItem(gun_congolake, gun_congolake.getUnlocalizedName()); GameRegistry.registerItem(ammo_standard, ammo_standard.getUnlocalizedName()); diff --git a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java index 8fa9ad686..828032f10 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java +++ b/src/main/java/com/hbm/items/weapon/sedna/GunConfig.java @@ -1,9 +1,12 @@ package com.hbm.items.weapon.sedna; +import java.util.ArrayList; +import java.util.List; import java.util.function.BiConsumer; import java.util.function.BiFunction; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; +import com.hbm.items.weapon.sedna.ItemGunBaseNT.SmokeNode; import com.hbm.items.weapon.sedna.factory.GunStateDecider; import com.hbm.items.weapon.sedna.factory.Lego; import com.hbm.items.weapon.sedna.hud.IHUDComponent; @@ -20,11 +23,12 @@ import net.minecraft.item.ItemStack; * */ public class GunConfig { + public List smokeNodes = new ArrayList(); + public static final String O_RECEIVERS = "O_RECEIVERS"; public static final String F_DURABILITY = "F_DURABILITY"; public static final String I_DRAWDURATION = "I_DRAWDURATION"; public static final String I_INSPECTDURATION = "I_INSPECTDURATION"; - public static final String I_JAMDURATION = "I_JAMDURATION"; public static final String O_CROSSHAIR = "O_CROSSHAIR"; public static final String B_RELOADANIMATIONSEQUENTIAL = "B_RELOADANIMATIONSEQUENTIAL"; public static final String CON_SMOKE = "CON_SMOKE"; @@ -48,7 +52,6 @@ public class GunConfig { protected float durability_DNA; protected int drawDuration_DNA = 0; protected int inspectDuration_DNA = 0; - protected int jamDuration_DNA = 0; protected Crosshair crosshair_DNA; protected boolean reloadAnimationsSequential_DNA; /** Handles smoke clientside */ @@ -77,7 +80,6 @@ public class GunConfig { public float getDurability(ItemStack stack) { return WeaponUpgradeManager.eval(durability_DNA, stack, F_DURABILITY, this); } public int getDrawDuration(ItemStack stack) { return WeaponUpgradeManager.eval(drawDuration_DNA, stack, I_DRAWDURATION, this); } public int getInspectDuration(ItemStack stack) { return WeaponUpgradeManager.eval(inspectDuration_DNA, stack, I_INSPECTDURATION, this); } - public int getJamDuration(ItemStack stack) { return WeaponUpgradeManager.eval(jamDuration_DNA, stack, I_JAMDURATION, this); } public Crosshair getCrosshair(ItemStack stack) { return WeaponUpgradeManager.eval(crosshair_DNA, stack, O_CROSSHAIR, this); } public boolean getReloadAnimSequential(ItemStack stack) { return WeaponUpgradeManager.eval(reloadAnimationsSequential_DNA, stack, B_RELOADANIMATIONSEQUENTIAL, this); } public BiConsumer getSmokeHandler(ItemStack stack) { return WeaponUpgradeManager.eval(smokeHandler_DNA, stack, CON_SMOKE, this); } @@ -104,7 +106,6 @@ public class GunConfig { public GunConfig dura(float dura) { this.durability_DNA = dura; return this; } public GunConfig draw(int draw) { this.drawDuration_DNA = draw; return this; } public GunConfig inspect(int inspect) { this.inspectDuration_DNA = inspect; return this; } - public GunConfig jam(int jam) { this.jamDuration_DNA = jam; return this; } public GunConfig crosshair(Crosshair crosshair) { this.crosshair_DNA = crosshair; return this; } public GunConfig reloadSequential(boolean flag) { this.reloadAnimationsSequential_DNA = flag; return this; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java index 36b3a9996..1d1aff580 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java +++ b/src/main/java/com/hbm/items/weapon/sedna/ItemGunBaseNT.java @@ -1,7 +1,5 @@ package com.hbm.items.weapon.sedna; -import java.util.ArrayList; -import java.util.List; import java.util.function.BiConsumer; import com.hbm.handler.CasingEjector; @@ -36,43 +34,44 @@ import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipReceiver, IItemHUD { /** Timestamp for rendering smoke nodes and muzzle flashes */ - public long lastShot; + public long[] lastShot; /** [0;1] randomized every shot for various rendering applications */ public double shotRand = 0D; - public List smokeNodes = new ArrayList(); public static float recoilVertical = 0; public static float recoilHorizontal = 0; public static float offsetVertical = 0; public static float offsetHorizontal = 0; - public static final String O_GUNCONFIG = "O_GUNCONFIG"; + public static final String O_GUNCONFIG = "O_GUNCONFIG_"; public static final String KEY_DRAWN = "drawn"; public static final String KEY_AIMING = "aiming"; - public static final String KEY_WEAR = "wear"; - public static final String KEY_TIMER = "timer"; - public static final String KEY_STATE = "state"; - public static final String KEY_PRIMARY = "mouse1"; - public static final String KEY_SECONDARY = "mouse2"; - public static final String KEY_TERTIARY = "mouse3"; - public static final String KEY_RELOAD = "reload"; - public static final String KEY_LASTANIM = "lastanim"; - public static final String KEY_ANIMTIMER = "animtimer"; + public static final String KEY_WEAR = "wear_"; + public static final String KEY_TIMER = "timer_"; + public static final String KEY_STATE = "state_"; + public static final String KEY_PRIMARY = "mouse1_"; + public static final String KEY_SECONDARY = "mouse2_"; + public static final String KEY_TERTIARY = "mouse3_"; + public static final String KEY_RELOAD = "reload_"; + public static final String KEY_LASTANIM = "lastanim_"; + public static final String KEY_ANIMTIMER = "animtimer_"; public static float prevAimingProgress; public static float aimingProgress; /** NEVER ACCESS DIRECTLY - USE GETTER */ - public GunConfig config_DNA; + private GunConfig[] configs_DNA; - public GunConfig getConfig(ItemStack stack) { - return WeaponUpgradeManager.eval(config_DNA, stack, O_GUNCONFIG, this); + public GunConfig getConfig(ItemStack stack, int index) { + GunConfig cfg = configs_DNA[index]; + return WeaponUpgradeManager.eval(cfg, stack, O_GUNCONFIG + index, this); } - public ItemGunBaseNT(GunConfig cfg) { + public ItemGunBaseNT(GunConfig... cfg) { this.setMaxStackSize(1); - this.config_DNA = cfg; + this.configs_DNA = cfg; + this.lastShot = new long[cfg.length]; this.setCreativeTab(MainRegistry.weaponTab); } @@ -93,29 +92,33 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei @Override public void handleKeybind(EntityPlayer player, ItemStack stack, EnumKeybind keybind, boolean newState) { - GunConfig config = getConfig(stack); - LambdaContext ctx = new LambdaContext(config, player); - - if(keybind == EnumKeybind.GUN_PRIMARY && newState && !getPrimary(stack)) { if(config.getPressPrimary(stack) != null) config.getPressPrimary(stack).accept(stack, ctx); this.setPrimary(stack, newState); return; } - if(keybind == EnumKeybind.GUN_PRIMARY && !newState && getPrimary(stack)) { if(config.getReleasePrimary(stack) != null) config.getReleasePrimary(stack).accept(stack, ctx); this.setPrimary(stack, newState); return; } - if(keybind == EnumKeybind.GUN_SECONDARY && newState && !getSecondary(stack)) { if(config.getPressSecondary(stack) != null) config.getPressSecondary(stack).accept(stack, ctx); this.setSecondary(stack, newState); return; } - if(keybind == EnumKeybind.GUN_SECONDARY && !newState && getSecondary(stack)) { if(config.getReleaseSecondary(stack) != null) config.getReleaseSecondary(stack).accept(stack, ctx); this.setSecondary(stack, newState); return; } - if(keybind == EnumKeybind.GUN_TERTIARY && newState && !getTertiary(stack)) { if(config.getPressTertiary(stack) != null) config.getPressTertiary(stack).accept(stack, ctx); this.setTertiary(stack, newState); return; } - if(keybind == EnumKeybind.GUN_TERTIARY && !newState && getTertiary(stack)) { if(config.getReleaseTertiary(stack) != null) config.getReleaseTertiary(stack).accept(stack, ctx); this.setTertiary(stack, newState); return; } - if(keybind == EnumKeybind.RELOAD && newState && !getReloadKey(stack)) { if(config.getPressReload(stack) != null) config.getPressReload(stack).accept(stack, ctx); this.setReloadKey(stack, newState); return; } - if(keybind == EnumKeybind.RELOAD && !newState && getReloadKey(stack)) { if(config.getReleaseReload(stack) != null) config.getReleaseReload(stack).accept(stack, ctx); this.setReloadKey(stack, newState); return; } + int configs = this.configs_DNA.length; + + for(int i = 0; i < configs; i++) { + GunConfig config = getConfig(stack, i); + LambdaContext ctx = new LambdaContext(config, player, i); + + if(keybind == EnumKeybind.GUN_PRIMARY && newState && !getPrimary(stack, i)) { if(config.getPressPrimary(stack) != null) config.getPressPrimary(stack).accept(stack, ctx); this.setPrimary(stack, i, newState); continue; } + if(keybind == EnumKeybind.GUN_PRIMARY && !newState && getPrimary(stack, i)) { if(config.getReleasePrimary(stack) != null) config.getReleasePrimary(stack).accept(stack, ctx); this.setPrimary(stack, i, newState); continue; } + if(keybind == EnumKeybind.GUN_SECONDARY && newState && !getSecondary(stack, i)) { if(config.getPressSecondary(stack) != null) config.getPressSecondary(stack).accept(stack, ctx); this.setSecondary(stack, i, newState); continue; } + if(keybind == EnumKeybind.GUN_SECONDARY && !newState && getSecondary(stack, i)) { if(config.getReleaseSecondary(stack) != null) config.getReleaseSecondary(stack).accept(stack, ctx); this.setSecondary(stack, i, newState); continue; } + if(keybind == EnumKeybind.GUN_TERTIARY && newState && !getTertiary(stack, i)) { if(config.getPressTertiary(stack) != null) config.getPressTertiary(stack).accept(stack, ctx); this.setTertiary(stack, i, newState); continue; } + if(keybind == EnumKeybind.GUN_TERTIARY && !newState && getTertiary(stack, i)) { if(config.getReleaseTertiary(stack) != null) config.getReleaseTertiary(stack).accept(stack, ctx); this.setTertiary(stack, i, newState); continue; } + if(keybind == EnumKeybind.RELOAD && newState && !getReloadKey(stack, i)) { if(config.getPressReload(stack) != null) config.getPressReload(stack).accept(stack, ctx); this.setReloadKey(stack, i, newState); continue; } + if(keybind == EnumKeybind.RELOAD && !newState && getReloadKey(stack, i)) { if(config.getReleaseReload(stack) != null) config.getReleaseReload(stack).accept(stack, ctx); this.setReloadKey(stack, i, newState); continue; } + } } @Override public void onEquip(EntityPlayer player, ItemStack stack) { - playAnimation(player, stack, AnimType.EQUIP); + for(int i = 0; i < this.configs_DNA.length; i++) playAnimation(player, stack, AnimType.EQUIP, i); } - public static void playAnimation(EntityPlayer player, ItemStack stack, AnimType type) { + public static void playAnimation(EntityPlayer player, ItemStack stack, AnimType type, int index) { if(player instanceof EntityPlayerMP) { - PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(type.ordinal()), (EntityPlayerMP) player); - setLastAnim(stack, type); - setAnimTimer(stack, 0); + PacketDispatcher.wrapper.sendTo(new GunAnimationPacket(type.ordinal(), 0, index), (EntityPlayerMP) player); + setLastAnim(stack, index, type); + setAnimTimer(stack, index, 0); } } @@ -124,8 +127,13 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei if(!(entity instanceof EntityPlayer)) return; EntityPlayer player = entity instanceof EntityPlayer ? (EntityPlayer) entity : null; - GunConfig config = this.getConfig(stack); - LambdaContext ctx = new LambdaContext(config, player); + int confNo = this.configs_DNA.length; + GunConfig[] configs = new GunConfig[confNo]; + LambdaContext[] ctx = new LambdaContext[confNo]; + for(int i = 0; i < confNo; i++) { + configs[i] = this.getConfig(stack, i); + ctx[i] = new LambdaContext(configs[i], player, i); + } if(world.isRemote) { @@ -146,8 +154,8 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei aimingProgress = MathHelper.clamp_float(aimingProgress, 0F, 1F); /// SMOKE NODES /// - if(config.getSmokeHandler(stack) != null) { - config.getSmokeHandler(stack).accept(stack, ctx); + for(int i = 0; i < confNo; i++) if(configs[i].getSmokeHandler(stack) != null) { + configs[i].getSmokeHandler(stack).accept(stack, ctx[i]); } } return; @@ -155,24 +163,28 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei /// RESET WHEN NOT EQUIPPED /// if(!isHeld) { - GunState current = this.getState(stack); - if(current != GunState.JAMMED) { - this.setState(stack, GunState.DRAWING); - this.setTimer(stack, config.getDrawDuration(stack)); + for(int i = 0; i < confNo; i++) { + GunState current = this.getState(stack, i); + if(current != GunState.JAMMED) { + this.setState(stack, i, GunState.DRAWING); + this.setTimer(stack, i, configs[i].getDrawDuration(stack)); + } } this.setIsAiming(stack, false); return; } - BiConsumer orchestra = config.getOrchestra(stack); - if(orchestra != null) orchestra.accept(stack, ctx); - - setAnimTimer(stack, getAnimTimer(stack) + 1); - - /// STTATE MACHINE /// - int timer = this.getTimer(stack); - if(timer > 0) this.setTimer(stack, timer - 1); - if(timer <= 1) config.getDecider(stack).accept(stack, ctx); + for(int i = 0; i < confNo; i++) { + BiConsumer orchestra = configs[i].getOrchestra(stack); + if(orchestra != null) orchestra.accept(stack, ctx[i]); + + setAnimTimer(stack, i, getAnimTimer(stack, i) + 1); + + /// STTATE MACHINE /// + int timer = this.getTimer(stack, i); + if(timer > 0) this.setTimer(stack, i, timer - 1); + if(timer <= 1) configs[i].getDecider(stack).accept(stack, ctx[i]); + } } public static void trySpawnCasing(Entity entity, CasingEjector ejector, BulletConfig bullet, ItemStack stack) { @@ -195,32 +207,32 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public static boolean getIsDrawn(ItemStack stack) { return getValueBool(stack, KEY_DRAWN); } public static void setIsDrawn(ItemStack stack, boolean value) { setValueBool(stack, KEY_DRAWN, value); } // GUN STATE TIMER // - public static int getTimer(ItemStack stack) { return getValueInt(stack, KEY_TIMER); } - public static void setTimer(ItemStack stack, int value) { setValueInt(stack, KEY_TIMER, value); } + public static int getTimer(ItemStack stack, int index) { return getValueInt(stack, KEY_TIMER + index); } + public static void setTimer(ItemStack stack, int index, int value) { setValueInt(stack, KEY_TIMER + index, value); } // GUN STATE // - public static GunState getState(ItemStack stack) { return EnumUtil.grabEnumSafely(GunState.class, getValueByte(stack, KEY_STATE)); } - public static void setState(ItemStack stack, GunState value) { setValueByte(stack, KEY_STATE, (byte) value.ordinal()); } + public static GunState getState(ItemStack stack, int index) { return EnumUtil.grabEnumSafely(GunState.class, getValueByte(stack, KEY_STATE + index)); } + public static void setState(ItemStack stack, int index, GunState value) { setValueByte(stack, KEY_STATE + index, (byte) value.ordinal()); } // GUN AIMING // public static boolean getIsAiming(ItemStack stack) { return getValueBool(stack, KEY_AIMING); } public static void setIsAiming(ItemStack stack, boolean value) { setValueBool(stack, KEY_AIMING, value); } // GUN AIMING // - public static float getWear(ItemStack stack) { return getValueFloat(stack, KEY_WEAR); } - public static void setWear(ItemStack stack, float value) { setValueFloat(stack, KEY_WEAR, value); } + public static float getWear(ItemStack stack, int index) { return getValueFloat(stack, KEY_WEAR + index); } + public static void setWear(ItemStack stack, int index, float value) { setValueFloat(stack, KEY_WEAR + index, value); } // ANIM TRACKING // - public static AnimType getLastAnim(ItemStack stack) { return EnumUtil.grabEnumSafely(AnimType.class, getValueInt(stack, KEY_LASTANIM)); } - public static void setLastAnim(ItemStack stack, AnimType value) { setValueInt(stack, KEY_LASTANIM, value.ordinal()); } - public static int getAnimTimer(ItemStack stack) { return getValueInt(stack, KEY_ANIMTIMER); } - public static void setAnimTimer(ItemStack stack, int value) { setValueInt(stack, KEY_ANIMTIMER, value); } + public static AnimType getLastAnim(ItemStack stack, int index) { return EnumUtil.grabEnumSafely(AnimType.class, getValueInt(stack, KEY_LASTANIM + index)); } + public static void setLastAnim(ItemStack stack, int index, AnimType value) { setValueInt(stack, KEY_LASTANIM + index, value.ordinal()); } + public static int getAnimTimer(ItemStack stack, int index) { return getValueInt(stack, KEY_ANIMTIMER + index); } + public static void setAnimTimer(ItemStack stack, int index, int value) { setValueInt(stack, KEY_ANIMTIMER + index, value); } // BUTTON STATES // - public static boolean getPrimary(ItemStack stack) { return getValueBool(stack, KEY_PRIMARY); } - public static void setPrimary(ItemStack stack, boolean value) { setValueBool(stack, KEY_PRIMARY, value); } - public static boolean getSecondary(ItemStack stack) { return getValueBool(stack, KEY_SECONDARY); } - public static void setSecondary(ItemStack stack, boolean value) { setValueBool(stack, KEY_SECONDARY, value); } - public static boolean getTertiary(ItemStack stack) { return getValueBool(stack, KEY_TERTIARY); } - public static void setTertiary(ItemStack stack, boolean value) { setValueBool(stack, KEY_TERTIARY, value); } - public static boolean getReloadKey(ItemStack stack) { return getValueBool(stack, KEY_RELOAD); } - public static void setReloadKey(ItemStack stack, boolean value) { setValueBool(stack, KEY_RELOAD, value); } + public static boolean getPrimary(ItemStack stack, int index) { return getValueBool(stack, KEY_PRIMARY + index); } + public static void setPrimary(ItemStack stack, int index, boolean value) { setValueBool(stack, KEY_PRIMARY + index, value); } + public static boolean getSecondary(ItemStack stack, int index) { return getValueBool(stack, KEY_SECONDARY + index); } + public static void setSecondary(ItemStack stack, int index, boolean value) { setValueBool(stack, KEY_SECONDARY + index, value); } + public static boolean getTertiary(ItemStack stack, int index) { return getValueBool(stack, KEY_TERTIARY + index); } + public static void setTertiary(ItemStack stack, int index, boolean value) { setValueBool(stack, KEY_TERTIARY + index, value); } + public static boolean getReloadKey(ItemStack stack, int index) { return getValueBool(stack, KEY_RELOAD + index); } + public static void setReloadKey(ItemStack stack, int index, boolean value) { setValueBool(stack, KEY_RELOAD + index, value); } /// UTIL /// @@ -240,10 +252,12 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei public static class LambdaContext { public final GunConfig config; public final EntityPlayer player; + public final int configIndex; - public LambdaContext(GunConfig config, EntityPlayer player) { + public LambdaContext(GunConfig config, EntityPlayer player, int configIndex) { this.config = config; this.player = player; + this.configIndex = configIndex; } } @@ -256,15 +270,19 @@ public class ItemGunBaseNT extends Item implements IKeybindReceiver, IEquipRecei if(type == ElementType.CROSSHAIRS) { event.setCanceled(true); if(aimingProgress >= 1F) return; - RenderScreenOverlay.renderCustomCrosshairs(event.resolution, Minecraft.getMinecraft().ingameGUI, gun.getConfig(stack).getCrosshair(stack)); + RenderScreenOverlay.renderCustomCrosshairs(event.resolution, Minecraft.getMinecraft().ingameGUI, gun.getConfig(stack, 0).getCrosshair(stack)); } - IHUDComponent[] components = gun.getConfig(stack).getHUDComponents(stack); + int confNo = this.configs_DNA.length; - if(components != null) for(IHUDComponent component : components) { - int bottomOffset = 0; - component.renderHUDComponent(event, type, player, stack, bottomOffset); - bottomOffset += component.getComponentHeight(player, stack); + for(int i = 0; i < confNo; i++) { + IHUDComponent[] components = gun.getConfig(stack, i).getHUDComponents(stack); + + if(components != null) for(IHUDComponent component : components) { + int bottomOffset = 0; + component.renderHUDComponent(event, type, player, stack, bottomOffset, i); + bottomOffset += component.getComponentHeight(player, stack); + } } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java index ff98105f3..8cd22f19d 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/Receiver.java +++ b/src/main/java/com/hbm/items/weapon/sedna/Receiver.java @@ -3,7 +3,6 @@ package com.hbm.items.weapon.sedna; import java.util.function.BiConsumer; import java.util.function.BiFunction; -import com.hbm.handler.CasingEjector; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.mags.IMagazine; @@ -25,12 +24,12 @@ public class Receiver { public static final String F_SPREADMOD = "F_SPREADMOD"; public static final String B_REFIREONHOLD = "B_REFIREONHOLD"; public static final String B_DOESDRYFIRE = "B_DOESDRYFIRE"; - public static final String O_EJECTOR = "O_EJECTOR"; public static final String B_EJECTONFIRE = "B_EJECTONFIRE"; public static final String I_RELOADBEGINDURATION = "I_RELOADBEGINDURATION"; public static final String I_RELOADCYCLEDURATION = "I_RELOADCYCLEDURATION"; public static final String I_RELOADENDDURATION = "I_RELOADENDDURATION"; public static final String I_RELOADCOCKONEMPTY = "I_RELOADCOCKONEMPTY"; + public static final String I_JAMDURATION = "I_JAMDURATION"; public static final String S_FIRESOUND = "S_FIRESOUND"; public static final String F_FIREVOLUME = "F_FIREVOLUME"; public static final String F_FIREPITCH = "F_FIREPITCH"; @@ -52,12 +51,12 @@ public class Receiver { protected float spreadModExtra_DNA = 0F; protected boolean refireOnHold_DNA = false; protected boolean doesDryFire_DNA = true; - protected CasingEjector ejector_DNA = null; protected boolean ejectOnFire_DNA = true; protected int reloadBeginDuration_DNA; protected int reloadCycleDuration_DNA; protected int reloadEndDuration_DNA; protected int reloadCockOnEmpty_DNA; + protected int jamDuration_DNA = 0; protected String fireSound_DNA; protected float fireVolume_DNA = 1.0F; protected float firePitch_DNA = 1.0F; @@ -75,12 +74,12 @@ public class Receiver { public float getGunSpread(ItemStack stack) { return WeaponUpgradeManager.eval(this.spreadModExtra_DNA, stack, F_SPREADMOD, this); } public boolean getRefireOnHold(ItemStack stack) { return WeaponUpgradeManager.eval(this.refireOnHold_DNA, stack, B_REFIREONHOLD, this); } public boolean getDoesDryFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.doesDryFire_DNA, stack, B_DOESDRYFIRE, this); } - public CasingEjector getEjector(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejector_DNA, stack, O_EJECTOR, this); } public boolean getEjectOnFire(ItemStack stack) { return WeaponUpgradeManager.eval(this.ejectOnFire_DNA, stack, B_EJECTONFIRE, this); } public int getReloadBeginDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadBeginDuration_DNA, stack, I_RELOADBEGINDURATION, this); } public int getReloadCycleDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadCycleDuration_DNA, stack, I_RELOADCYCLEDURATION, this); } public int getReloadEndDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadEndDuration_DNA, stack, I_RELOADENDDURATION, this); } public int getReloadCockOnEmpty(ItemStack stack) { return WeaponUpgradeManager.eval(this.reloadCockOnEmpty_DNA, stack, I_RELOADCOCKONEMPTY, this); } + public int getJamDuration(ItemStack stack) { return WeaponUpgradeManager.eval(this.jamDuration_DNA, stack, I_JAMDURATION, this); } public String getFireSound(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireSound_DNA, stack, S_FIRESOUND, this); } public float getFireVolume(ItemStack stack) { return WeaponUpgradeManager.eval(this.fireVolume_DNA, stack, F_FIREVOLUME, this); } public float getFirePitch(ItemStack stack) { return WeaponUpgradeManager.eval(this.firePitch_DNA, stack, F_FIREPITCH, this); } @@ -99,10 +98,10 @@ public class Receiver { public Receiver spread(float spread) { this.spreadModExtra_DNA = spread; return this; } public Receiver auto(boolean auto) { this.refireOnHold_DNA = auto; return this; } public Receiver dryfire(boolean dryfire) { this.doesDryFire_DNA = dryfire; return this; } - public Receiver ejector(CasingEjector ejector) { this.ejector_DNA = ejector; return this; } public Receiver ejectOnFire(boolean eject) { this.ejectOnFire_DNA = eject; return this; } public Receiver mag(IMagazine magazine) { this.magazine_DNA = magazine; return this; } public Receiver offset(double f, double u, double s) { this.projectileOffset_DNA = Vec3.createVectorHelper(f, u, s); return this; } + public Receiver jam(int jam) { this.jamDuration_DNA = jam; return this; } public Receiver reload(int delay) { return reload(delay, delay, 0, 0); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java index c675dbc53..b73a6c27c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactory.java @@ -1,6 +1,5 @@ package com.hbm.items.weapon.sedna.factory; -import com.hbm.handler.CasingEjector; import com.hbm.items.ItemEnumMulti; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; @@ -35,11 +34,10 @@ public class GunFactory { /// GUNS /// ModItems.gun_debug = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(15).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.DEBUG_ORCHESTRA) + .dura(600F).draw(15).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.DEBUG_ORCHESTRA) .rec(new Receiver(0) - .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .dmg(10F).delay(14).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 12).addConfigs(ammo_debug, ammo_debug_buckshot)) - .ejector(new CasingEjector().setMotion(0, -0.1, 0).setAngleRange(0.01F, 0.025F)) .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java index 9fd1933ca..55203d453 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunFactoryClient.java @@ -32,7 +32,8 @@ public class GunFactoryClient { //GUNS MinecraftForgeClient.registerItemRenderer(ModItems.gun_debug, new ItemRenderDebug()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_pepperbox, new ItemRenderPepperbox()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_atlas, new ItemRenderAtlas()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_light_revolver, new ItemRenderAtlas()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_light_revolver_dani, new ItemRenderDANI()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_henry, new ItemRenderHenry()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_greasegun, new ItemRenderGreasegun()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_maresleg, new ItemRenderMaresleg()); @@ -41,6 +42,7 @@ public class GunFactoryClient { MinecraftForgeClient.registerItemRenderer(ModItems.gun_carbine, new ItemRenderCarbine()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_am180, new ItemRenderAm180()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_liberator, new ItemRenderLiberator()); + MinecraftForgeClient.registerItemRenderer(ModItems.gun_congolake, new ItemRenderCongoLake()); //PROJECTILES ammo_debug.setRenderer(RENDER_STANDARD_BULLET); ammo_debug_buckshot.setRenderer(RENDER_STANDARD_BULLET); @@ -73,17 +75,20 @@ public class GunFactoryClient { p22_jhp.setRenderer(RENDER_STANDARD_BULLET); p22_ap.setRenderer(RENDER_AP_BULLET); //HUDS - ((ItemGunBaseNT) ModItems.gun_debug).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_pepperbox).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_atlas).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_henry).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_greasegun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_maresleg).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_flaregun).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_heavy_revolver).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_carbine).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_am180).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); - ((ItemGunBaseNT) ModItems.gun_liberator).config_DNA.hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_debug) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_pepperbox) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_light_revolver) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_henry) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_greasegun) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_maresleg) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_flaregun) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_heavy_revolver) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_carbine) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_am180) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_liberator) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_congolake) .getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); + ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 0).hud(LegoClient.HUD_COMPONENT_DURABILITY_MIRROR, LegoClient.HUD_COMPONENT_AMMO_MIRROR); + ((ItemGunBaseNT) ModItems.gun_light_revolver_dani).getConfig(null, 1).hud(LegoClient.HUD_COMPONENT_DURABILITY, LegoClient.HUD_COMPONENT_AMMO); } public static BiConsumer RENDER_STANDARD_BULLET = (bullet, interp) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java index 5920f85c2..f9a805144 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/GunStateDecider.java @@ -22,35 +22,36 @@ public class GunStateDecider { * It supports draw delays as well as semi and auto fire */ public static BiConsumer LAMBDA_STANDARD_DECIDER = (stack, ctx) -> { - GunState lastState = ItemGunBaseNT.getState(stack); - deciderStandardFinishDraw(stack, lastState); - deciderStandardClearJam(stack, lastState); - deciderStandardReload(stack, ctx, lastState, 0); - deciderAutoRefire(stack, ctx, lastState, 0, () -> { return ItemGunBaseNT.getPrimary(stack); }); + int index = ctx.configIndex; + GunState lastState = ItemGunBaseNT.getState(stack, index); + deciderStandardFinishDraw(stack, lastState, index); + deciderStandardClearJam(stack, lastState, index); + deciderStandardReload(stack, ctx, lastState, 0, index); + deciderAutoRefire(stack, ctx, lastState, 0, index, () -> { return ItemGunBaseNT.getPrimary(stack, index); }); }; /** Transitions the gun from DRAWING to IDLE */ - public static void deciderStandardFinishDraw(ItemStack stack, GunState lastState) { + public static void deciderStandardFinishDraw(ItemStack stack, GunState lastState, int index) { //transition to idle if(lastState == GunState.DRAWING) { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.setState(stack, index, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, index, 0); } } /** Transitions the gun from DRAWING to IDLE */ - public static void deciderStandardClearJam(ItemStack stack, GunState lastState) { + public static void deciderStandardClearJam(ItemStack stack, GunState lastState, int index) { //transition to idle if(lastState == GunState.JAMMED) { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.setState(stack, index, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, index, 0); } } /** Triggers a reload action on the first receiver. If the mag is not full and reloading is still possible, set to RELOADING, otherwise IDLE */ - public static void deciderStandardReload(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex) { + public static void deciderStandardReload(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex, int gunIndex) { if(lastState == GunState.RELOADING) { @@ -63,21 +64,21 @@ public class GunStateDecider { //if after reloading the gun can still reload, assume a tube mag and resume reloading if(mag.canReload(stack, player)) { - ItemGunBaseNT.setState(stack, GunState.RELOADING); - ItemGunBaseNT.setTimer(stack, rec.getReloadCycleDuration(stack)); - ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_CYCLE); + ItemGunBaseNT.setState(stack, gunIndex, GunState.RELOADING); + ItemGunBaseNT.setTimer(stack, gunIndex, rec.getReloadCycleDuration(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_CYCLE, gunIndex); //if no more reloading can be done, go idle } else { - if(getStandardJamChance(stack, cfg) > player.getRNG().nextFloat()) { - ItemGunBaseNT.setState(stack, GunState.JAMMED); - ItemGunBaseNT.setTimer(stack, cfg.getJamDuration(stack)); - ItemGunBaseNT.playAnimation(player, stack, AnimType.JAMMED); + if(getStandardJamChance(stack, cfg, gunIndex) > player.getRNG().nextFloat()) { + ItemGunBaseNT.setState(stack, gunIndex, GunState.JAMMED); + ItemGunBaseNT.setTimer(stack, gunIndex, rec.getJamDuration(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.JAMMED, gunIndex); } else { - ItemGunBaseNT.setState(stack, GunState.DRAWING); + ItemGunBaseNT.setState(stack, gunIndex, GunState.DRAWING); int duration = rec.getReloadEndDuration(stack) + (mag.getAmountBeforeReload(stack) <= 0 ? rec.getReloadCockOnEmpty(stack) : 0); - ItemGunBaseNT.setTimer(stack, duration); - ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END); + ItemGunBaseNT.setTimer(stack, gunIndex, duration); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD_END, gunIndex); } } @@ -85,14 +86,14 @@ public class GunStateDecider { } } - public static float getStandardJamChance(ItemStack stack, GunConfig config) { - float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + public static float getStandardJamChance(ItemStack stack, GunConfig config, int index) { + float percent = (float) ItemGunBaseNT.getWear(stack, index) / config.getDurability(stack); if(percent < 0.66F) return 0F; return Math.min((percent - 0.66F) * 4F, 1F); } /** Triggers a re-fire of the primary if the fire delay has expired, the left mouse button is down and re-firing is enabled, otherwise switches to IDLE */ - public static void deciderAutoRefire(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex, BooleanSupplier refireCondition) { + public static void deciderAutoRefire(ItemStack stack, LambdaContext ctx, GunState lastState, int recIndex, int gunIndex, BooleanSupplier refireCondition) { if(lastState == GunState.COOLDOWN) { @@ -105,8 +106,8 @@ public class GunStateDecider { //if there's a bullet loaded, fire again if(rec.getCanFire(stack).apply(stack, ctx)) { rec.getOnFire(stack).accept(stack, ctx); - ItemGunBaseNT.setState(stack, GunState.COOLDOWN); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + ItemGunBaseNT.setState(stack, gunIndex, GunState.COOLDOWN); + ItemGunBaseNT.setTimer(stack, gunIndex, rec.getDelayAfterFire(stack)); player.worldObj.playSoundEffect(player.posX, player.posY, player.posZ, rec.getFireSound(stack), rec.getFireVolume(stack), rec.getFirePitch(stack)); @@ -114,17 +115,17 @@ public class GunStateDecider { for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); //if not, revert to idle } else if(rec.getDoesDryFire(stack)) { - ItemGunBaseNT.setState(stack, GunState.DRAWING); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterDryFire(stack)); - ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); + ItemGunBaseNT.setState(stack, gunIndex, GunState.DRAWING); + ItemGunBaseNT.setTimer(stack, gunIndex, rec.getDelayAfterDryFire(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY, gunIndex); } else { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.setState(stack, gunIndex, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, gunIndex, 0); } //if not, go idle } else { - ItemGunBaseNT.setState(stack, GunState.IDLE); - ItemGunBaseNT.setTimer(stack, 0); + ItemGunBaseNT.setState(stack, gunIndex, GunState.IDLE); + ItemGunBaseNT.setTimer(stack, gunIndex, 0); } } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java index cd2faa3be..f702a63bc 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Lego.java @@ -37,7 +37,7 @@ public class Lego { EntityPlayer player = ctx.player; Receiver rec = ctx.config.getReceivers(stack)[0]; - GunState state = ItemGunBaseNT.getState(stack); + GunState state = ItemGunBaseNT.getState(stack, ctx.configIndex); if(state == GunState.IDLE) { @@ -46,11 +46,11 @@ public class Lego { if(mag.canReload(stack, ctx.player)) { mag.setAmountBeforeReload(stack, mag.getAmount(stack)); - ItemGunBaseNT.setState(stack, GunState.RELOADING); - ItemGunBaseNT.setTimer(stack, rec.getReloadBeginDuration(stack)); - ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD); + ItemGunBaseNT.setState(stack, ctx.configIndex, GunState.RELOADING); + ItemGunBaseNT.setTimer(stack, ctx.configIndex, rec.getReloadBeginDuration(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.RELOAD, ctx.configIndex); } else { - ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT); + ItemGunBaseNT.playAnimation(player, stack, AnimType.INSPECT, ctx.configIndex); } } }; @@ -61,7 +61,8 @@ public class Lego { EntityPlayer player = ctx.player; Receiver rec = ctx.config.getReceivers(stack)[0]; - GunState state = ItemGunBaseNT.getState(stack); + int index = ctx.configIndex; + GunState state = ItemGunBaseNT.getState(stack, index); if(state == GunState.IDLE) { @@ -73,14 +74,14 @@ public class Lego { int remaining = rec.getRoundsPerCycle(stack) - 1; for(int i = 0; i < remaining; i++) if(rec.getCanFire(stack).apply(stack, ctx)) rec.getOnFire(stack).accept(stack, ctx); - ItemGunBaseNT.setState(stack, GunState.COOLDOWN); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterFire(stack)); + ItemGunBaseNT.setState(stack, index, GunState.COOLDOWN); + ItemGunBaseNT.setTimer(stack, index, rec.getDelayAfterFire(stack)); } else { if(rec.getDoesDryFire(stack)) { - ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY); - ItemGunBaseNT.setState(stack, GunState.DRAWING); - ItemGunBaseNT.setTimer(stack, rec.getDelayAfterDryFire(stack)); + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE_DRY, index); + ItemGunBaseNT.setState(stack, index, GunState.DRAWING); + ItemGunBaseNT.setTimer(stack, index, rec.getDelayAfterDryFire(stack)); } } } @@ -94,13 +95,13 @@ public class Lego { /** Default smoke. */ public static BiConsumer LAMBDA_STANDARD_SMOKE = (stack, ctx) -> { - handleStandardSmoke(ctx.player, stack, 2000, 0.025D, 1.15D); + handleStandardSmoke(ctx.player, stack, 2000, 0.025D, 1.15D, ctx.configIndex); }; - public static void handleStandardSmoke(EntityPlayer player, ItemStack stack, int smokeDuration, double alphaDecay, double widthGrowth) { + public static void handleStandardSmoke(EntityPlayer player, ItemStack stack, int smokeDuration, double alphaDecay, double widthGrowth, int index) { ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); - long lastShot = gun.lastShot; - List smokeNodes = gun.smokeNodes; + long lastShot = gun.lastShot[index]; + List smokeNodes = gun.getConfig(stack, index).smokeNodes; boolean smoking = lastShot + smokeDuration > System.currentTimeMillis(); if(!smoking && !smokeNodes.isEmpty()) smokeNodes.clear(); @@ -123,7 +124,7 @@ public class Lego { double alpha = (System.currentTimeMillis() - lastShot) / (double) smokeDuration; alpha = (1 - alpha) * 0.5D; - if(gun.getState(stack) == GunState.RELOADING || smokeNodes.size() == 0) alpha = 0; + if(gun.getState(stack, index) == GunState.RELOADING || smokeNodes.size() == 0) alpha = 0; smokeNodes.add(new SmokeNode(alpha)); } } @@ -143,7 +144,8 @@ public class Lego { /** Spawns an EntityBulletBaseMK4 with the loaded bulletcfg */ public static BiConsumer LAMBDA_STANDARD_FIRE = (stack, ctx) -> { EntityPlayer player = ctx.player; - ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE); + int index = ctx.configIndex; + ItemGunBaseNT.playAnimation(player, stack, AnimType.CYCLE, ctx.configIndex); float aim = ItemGunBaseNT.getIsAiming(stack) ? 0.25F : 1F; Receiver primary = ctx.config.getReceivers(stack)[0]; @@ -163,24 +165,24 @@ public class Lego { if(config.projectilesMax > config.projectilesMin) projectiles += player.getRNG().nextInt(config.projectilesMax - config.projectilesMin + 1); for(int i = 0; i < projectiles; i++) { - float damage = primary.getBaseDamage(stack) * getStandardWearDamage(stack, ctx.config); - float spread = primary.getGunSpread(stack) * aim + getStandardWearSpread(stack, ctx.config) * 0.125F; + float damage = primary.getBaseDamage(stack) * getStandardWearDamage(stack, ctx.config, index); + float spread = primary.getGunSpread(stack) * aim + getStandardWearSpread(stack, ctx.config, index) * 0.125F; EntityBulletBaseMK4 mk4 = new EntityBulletBaseMK4(player, config, damage, spread, sideOffset, heightOffset, forwardOffset); player.worldObj.spawnEntityInWorld(mk4); } mag.setAmount(stack, mag.getAmount(stack) - 1); - ItemGunBaseNT.setWear(stack, Math.min(ItemGunBaseNT.getWear(stack) + config.wear, ctx.config.getDurability(stack))); + ItemGunBaseNT.setWear(stack, index, Math.min(ItemGunBaseNT.getWear(stack, index) + config.wear, ctx.config.getDurability(stack))); }; - public static float getStandardWearSpread(ItemStack stack, GunConfig config) { - float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + public static float getStandardWearSpread(ItemStack stack, GunConfig config, int index) { + float percent = (float) ItemGunBaseNT.getWear(stack, index) / config.getDurability(stack); if(percent < 0.5F) return 0F; return (percent - 0.5F) * 2F; } - public static float getStandardWearDamage(ItemStack stack, GunConfig config) { - float percent = (float) ItemGunBaseNT.getWear(stack) / config.getDurability(stack); + public static float getStandardWearDamage(ItemStack stack, GunConfig config, int index) { + float percent = (float) ItemGunBaseNT.getWear(stack, index) / config.getDurability(stack); if(percent < 0.75F) return 1F; return 1F - (percent - 0.75F) * 2F; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java index bed03eb38..caf5a33a2 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/LegoClient.java @@ -6,5 +6,7 @@ import com.hbm.items.weapon.sedna.hud.HUDComponentDurabilityBar; public class LegoClient { public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY = new HUDComponentDurabilityBar(); + public static HUDComponentDurabilityBar HUD_COMPONENT_DURABILITY_MIRROR = new HUDComponentDurabilityBar(true); public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO = new HUDComponentAmmoCounter(0); + public static HUDComponentAmmoCounter HUD_COMPONENT_AMMO_MIRROR = new HUDComponentAmmoCounter(0, true); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java index 314af2435..93ef53986 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/Orchestras.java @@ -2,8 +2,6 @@ package com.hbm.items.weapon.sedna.factory; import java.util.function.BiConsumer; -import com.hbm.handler.CasingEjector; -import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.items.weapon.sedna.Receiver; import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; @@ -22,21 +20,20 @@ public class Orchestras { public static BiConsumer DEBUG_ORCHESTRA = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); if(type == AnimType.RELOAD) { if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); if(timer == 10) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); if(timer == 34) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); if(timer == 40) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 1F); - - if(timer == 20) { + + if(timer == 16) { Receiver rec = ctx.config.getReceivers(stack)[0]; IMagazine mag = rec.getMagazine(stack); - CasingEjector ejector = rec.getEjector(stack); - BulletConfig bullet = (BulletConfig) mag.getType(stack); - for(int i = 0; i < mag.getCapacity(stack); i++) ItemGunBaseNT.trySpawnCasing(player, ejector, bullet, stack); + SpentCasing casing = mag.getCasing(stack); + for(int i = 0; i < mag.getCapacity(stack); i++) CasingCreator.composeEffect(player.worldObj, player, 0.25, -0.125, -0.125, -0.05, 0, 0, 0.01, casing.getName()); } } if(type == AnimType.CYCLE) { @@ -54,8 +51,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_PEPPERBOX = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); if(type == AnimType.RELOAD) { if(timer == 24) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallInsert", 1F, 1F); @@ -79,8 +76,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_ATLAS = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); if(type == AnimType.RELOAD) { if(timer == 2) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.magSmallRemove", 1F, 1F); @@ -106,8 +103,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_HENRY = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.RELOAD) { @@ -142,8 +139,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_GREASEGUN = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.EQUIP) { @@ -177,8 +174,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_MARESLEG = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.RELOAD) { @@ -211,8 +208,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_FLAREGUN = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.RELOAD) { @@ -239,8 +236,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_NOPIP = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); if(type == AnimType.RELOAD) { if(timer == 3) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 1F); @@ -270,8 +267,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_CARBIBE = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.CYCLE) { @@ -303,8 +300,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_AM180 = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); boolean aiming = ItemGunBaseNT.getIsAiming(stack); if(type == AnimType.CYCLE) { @@ -334,8 +331,8 @@ public class Orchestras { public static BiConsumer ORCHESTRA_LIBERATOR = (stack, ctx) -> { EntityPlayer player = ctx.player; - AnimType type = ItemGunBaseNT.getLastAnim(stack); - int timer = ItemGunBaseNT.getAnimTimer(stack); + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); if(type == AnimType.RELOAD) { if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverCock", 1F, 0.75F); @@ -373,4 +370,22 @@ public class Orchestras { if(timer == 20) player.worldObj.playSoundAtEntity(player, "hbm:weapon.reload.revolverClose", 1F, 0.9F); } }; + + public static BiConsumer ORCHESTRA_CONGOLAKE = (stack, ctx) -> { + EntityPlayer player = ctx.player; + AnimType type = ItemGunBaseNT.getLastAnim(stack, ctx.configIndex); + int timer = ItemGunBaseNT.getAnimTimer(stack, ctx.configIndex); + boolean aiming = ItemGunBaseNT.getIsAiming(stack); + + if(type == AnimType.CYCLE) { + if(timer == 15) { + IMagazine mag = ctx.config.getReceivers(stack)[0].getMagazine(stack); + SpentCasing casing = mag.getCasing(stack); + CasingCreator.composeEffect(player.worldObj, player, 0.625, aiming ? -0.0625 : -0.25, aiming ? 0 : -0.375D, 0, 0.18, 0.12, 0.01, casing.getName(), true, 60, 0.5D, 20); + } + } + if(type == AnimType.RELOAD || type == AnimType.RELOAD_CYCLE) { + if(timer == 0) player.worldObj.playSoundAtEntity(player, "hbm:weapon.glReload", 1F, 1F); + } + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java index 5dbd70369..b5c856062 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory12ga.java @@ -35,23 +35,25 @@ public class XFactory12ga { g12 = new BulletConfig().setItem(EnumAmmo.G12).setProjectiles(8, 8).setSpread(0.05F).setRicochetAngle(15).setCasing(new SpentCasing(CasingType.SHOTGUN).setColor(0xB52B2B, SpentCasing.COLOR_CASE_BRASS).setScale(0.75F).register("12GA")); ModItems.gun_maresleg = new ItemGunBaseNT(new GunConfig() - .dura(600).draw(20).inspect(39).jam(24).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_MARESLEG) + .dura(600).draw(20).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(22, 10, 13, 39).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(22, 10, 13, 0).jam(24).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 6).addConfigs(g12_bp, g12_bp_magnum, g12_bp_slug, g12)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_MARESLEG_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_MARESLEG_ANIMS).orchestra(Orchestras.ORCHESTRA_MARESLEG) ).setUnlocalizedName("gun_maresleg").setTextureName(RefStrings.MODID + ":gun_darter"); ModItems.gun_liberator = new ItemGunBaseNT(new GunConfig() - .dura(200).draw(20).inspect(21).jam(45).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_LIBERATOR) + .dura(200).draw(20).inspect(21).reloadSequential(true).crosshair(Crosshair.L_CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(20).rounds(4).reload(25, 15, 7, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).rounds(4).reload(25, 15, 7, 0).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 4).addConfigs(g12_bp, g12_bp_magnum, g12_bp_slug, g12)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_LIBERATOR_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_LIBERATOR_ANIMS).orchestra(Orchestras.ORCHESTRA_LIBERATOR) ).setUnlocalizedName("gun_liberator").setTextureName(RefStrings.MODID + ":gun_darter"); } @@ -70,7 +72,7 @@ public class XFactory12ga { .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 600).addPos(0, 0, 45, 200, IType.SIN_DOWN).addPos(0, 0, 0, 200, IType.SIN_UP)) .addBus("HAMMER", new BusAnimationSequence().addPos(30, 0, 0, 50).addPos(30, 0, 0, 550).addPos(0, 0, 0, 200)); case RELOAD: - boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; return new BusAnimation() .addBus("LIFT", new BusAnimationSequence().addPos(30, 0, 0, 400, IType.SIN_FULL)) .addBus("LEVER", new BusAnimationSequence().addPos(0, 0, 0, 400).addPos(-85, 0, 0, 200)) @@ -100,7 +102,7 @@ public class XFactory12ga { /** This fucking sucks */ @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_LIBERATOR_ANIMS = (stack, type) -> { - int ammo = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); + int ammo = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); switch(type) { case EQUIP: return new BusAnimation() .addBus("EQUIP", new BusAnimationSequence().addPos(60, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_DOWN)); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java index b7f4bba93..94e90441f 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory22lr.java @@ -41,18 +41,19 @@ public class XFactory22lr { .setCasing(casing22.clone().setColor(SpentCasing.COLOR_CASE_44).register("p22ap")); ModItems.gun_am180 = new ItemGunBaseNT(new GunConfig() - .dura(177 * 25).draw(15).inspect(38).jam(55).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_AM180) + .dura(177 * 25).draw(15).inspect(38).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(5F).delay(1).dry(10).auto(true).spread(0.02F).reload(53).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(1).dry(10).auto(true).spread(0.02F).reload(53).jam(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 177).addConfigs(p22_sp, p22_fmj, p22_jhp, p22_ap)) .offset(1, -0.0625 * 1.5, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_AM180_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_AM180_ANIMS).orchestra(Orchestras.ORCHESTRA_AM180) ).setUnlocalizedName("gun_am180").setTextureName(RefStrings.MODID + ":gun_darter"); } public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { - Lego.handleStandardSmoke(ctx.player, stack, 3000, 0.05D, 1.1D); + Lego.handleStandardSmoke(ctx.player, stack, 3000, 0.05D, 1.1D, 0); }; @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_AM180_ANIMS = (stack, type) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java index 460449451..b143a4a87 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory357.java @@ -33,15 +33,37 @@ public class XFactory357 { m357_ap = new BulletConfig().setItem(EnumAmmo.M357_AP).setDoesPenetrate(true).setDamageFalloutByPen(false).setDamage(1.5F).setArmorPiercing(0.15F); m357_express = new BulletConfig().setItem(EnumAmmo.M357_EXPRESS).setDoesPenetrate(true).setDamage(1.5F).setArmorPiercing(0.1F).setWear(1.5F); - ModItems.gun_atlas = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).jam(45).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_ATLAS) + ModItems.gun_light_revolver = new ItemGunBaseNT(new GunConfig() + .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(10F).delay(16).reload(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_ATLAS_ANIMS) - ).setUnlocalizedName("gun_atlas").setTextureName(RefStrings.MODID + ":gun_darter"); + .setupStandardConfiguration() + .anim(LAMBDA_ATLAS_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS) + ).setUnlocalizedName("gun_light_revolver").setTextureName(RefStrings.MODID + ":gun_darter"); + + ModItems.gun_light_revolver_dani = new ItemGunBaseNT( + new GunConfig().dura(30_000).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) + .rec(new Receiver(0) + .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(0, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) + .offset(0.75, -0.0625, 0.3125D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) + .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) + .anim(LAMBDA_ATLAS_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS), + new GunConfig().dura(30_000).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) + .rec(new Receiver(0) + .dmg(10F).delay(16).reload(55).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .mag(new MagazineFullReload(1, 6).addConfigs(m357_sp, m357_fmj, m357_jhp, m357_ap, m357_express)) + .offset(0.75, -0.0625, -0.3125D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .ps(Lego.LAMBDA_STANDARD_CLICK_PRIMARY).pr(Lego.LAMBDA_STANDARD_RELOAD) + .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) + .anim(LAMBDA_ATLAS_ANIMS).orchestra(Orchestras.ORCHESTRA_ATLAS) + ).setUnlocalizedName("gun_light_revolver_dani").setTextureName(RefStrings.MODID + ":gun_darter"); } @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_ATLAS_ANIMS = (stack, type) -> { diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java index 8578f30a6..76d4335af 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory40mm.java @@ -13,6 +13,7 @@ import com.hbm.items.weapon.sedna.ItemGunBaseNT.LambdaContext; import com.hbm.items.weapon.sedna.factory.GunFactory.EnumAmmo; import com.hbm.items.weapon.sedna.mags.MagazineSingleReload; import com.hbm.lib.RefStrings; +import com.hbm.main.ResourceManager; import com.hbm.particle.SpentCasing; import com.hbm.particle.SpentCasing.CasingType; import com.hbm.render.anim.BusAnimation; @@ -30,21 +31,33 @@ public class XFactory40mm { public static void init() { g40_flare = new BulletConfig().setItem(EnumAmmo.G40_FLARE).setVel(2F).setGrav(0.035D).setRenderRotations(false).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(0x9E1616).setScale(2F).register("G40Flare")); - g40 = new BulletConfig().setItem(EnumAmmo.G40).setVel(2F).setGrav(0.035D).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_40MM).setScale(2F).register("G40")); + g40 = new BulletConfig().setItem(EnumAmmo.G40).setVel(2F).setGrav(0.035D).setCasing(new SpentCasing(CasingType.STRAIGHT).setColor(SpentCasing.COLOR_CASE_40MM).setScale(2, 2F, 1.5F).register("G40")); ModItems.gun_flaregun = new ItemGunBaseNT(new GunConfig() - .dura(100).draw(7).inspect(39).jam(33).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_FLAREGUN) + .dura(100).draw(7).inspect(39).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(28).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(28).jam(33).sound("hbm:weapon.hkShoot", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 1).addConfigs(g40_flare)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_FLAREGUN_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_FLAREGUN_ANIMS).orchestra(Orchestras.ORCHESTRA_FLAREGUN) ).setUnlocalizedName("gun_flaregun").setTextureName(RefStrings.MODID + ":gun_darter"); + + ModItems.gun_congolake = new ItemGunBaseNT(new GunConfig() + .dura(400).draw(7).inspect(39).reloadSequential(true).crosshair(Crosshair.L_CIRCUMFLEX).smoke(LAMBDA_SMOKE) + .rec(new Receiver(0) + .dmg(12F).delay(24).reload(16, 16, 16, 0).jam(0).sound("hbm:weapon.glShoot", 1.0F, 1.0F) + .mag(new MagazineSingleReload(0, 4).addConfigs(g40_flare)) + .offset(0.75, -0.0625, -0.1875D) + .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) + .setupStandardConfiguration() + .anim(LAMBDA_CONGOLAKE_ANIMS).orchestra(Orchestras.ORCHESTRA_CONGOLAKE) + ).setUnlocalizedName("gun_congolake").setTextureName(RefStrings.MODID + ":gun_darter"); } public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { - Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.025D, 1.05D); + Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.025D, 1.05D, 0); }; @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_FLAREGUN_ANIMS = (stack, type) -> { @@ -69,4 +82,20 @@ public class XFactory40mm { return null; }; + + @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_CONGOLAKE_ANIMS = (stack, type) -> { + int ammo = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); + switch(type) { + case EQUIP: return new BusAnimation(); + case CYCLE: return ResourceManager.congolake_anim.get(ammo <= 1 ? "FireEmpty" : "Fire"); + case RELOAD: + return ResourceManager.congolake_anim.get(ammo == 0 ? "ReloadEmpty": "ReloadStart"); + case RELOAD_CYCLE: return ResourceManager.congolake_anim.get("Reload"); + case RELOAD_END: return ResourceManager.congolake_anim.get("ReloadEnd"); + case JAMMED: return new BusAnimation(); + case INSPECT: return new BusAnimation(); + } + + return null; + }; } diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java index 3c590c00c..8d4e7e124 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory44.java @@ -2,7 +2,6 @@ package com.hbm.items.weapon.sedna.factory; import java.util.function.BiFunction; -import com.hbm.handler.CasingEjector; import com.hbm.items.ModItems; import com.hbm.items.weapon.sedna.BulletConfig; import com.hbm.items.weapon.sedna.Crosshair; @@ -44,26 +43,26 @@ public class XFactory44 { .setCasing(casing44.clone().register("m44express")); ModItems.gun_henry = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(15).inspect(23).jam(45).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_HENRY) + .dura(300).draw(15).inspect(23).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(12F).delay(20).reload(25, 11, 14, 8).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(12F).delay(20).reload(25, 11, 14, 8).jam(45).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineSingleReload(0, 14).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) .offset(0.75, -0.0625, -0.1875D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_HENRY_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_HENRY_ANIMS).orchestra(Orchestras.ORCHESTRA_HENRY) ).setUnlocalizedName("gun_henry").setTextureName(RefStrings.MODID + ":gun_darter"); ModItems.gun_heavy_revolver = new ItemGunBaseNT(new GunConfig() - .dura(600F).draw(10).jam(23).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_NOPIP) + .dura(600F).draw(10).inspect(23).crosshair(Crosshair.L_CLASSIC).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(10F).delay(14).reload(46).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) + .dmg(10F).delay(14).reload(46).jam(23).sound("hbm:weapon.44Shoot", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(m44_sp, m44_fmj, m44_jhp, m44_ap, m44_express)) - .ejector(new CasingEjector().setMotion(0, -0.1, 0).setAngleRange(0.01F, 0.025F)) .offset(0.75, -0.0625, -0.3125D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE)) .pp(Lego.LAMBDA_STANDARD_CLICK_PRIMARY) .pr(Lego.LAMBDA_STANDARD_RELOAD) .pt(Lego.LAMBDA_TOGGLE_AIM) .decider(GunStateDecider.LAMBDA_STANDARD_DECIDER) - .anim(LAMBDA_NOPIP_ANIMS) + .anim(LAMBDA_NOPIP_ANIMS).orchestra(Orchestras.ORCHESTRA_NOPIP) ).setUnlocalizedName("gun_heavy_revolver").setTextureName(RefStrings.MODID + ":gun_darter"); } @@ -91,7 +90,7 @@ public class XFactory44 { .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0)) .addBus("BULLET", new BusAnimationSequence().addPos(3, 0, -6, 0).addPos(0, 0, 1, 300, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); case RELOAD_END: - boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; return new BusAnimation() .addBus("LIFT", new BusAnimationSequence().addPos(-60, 0, 0, 0).addPos(-60, 0, 0, 300).addPos(0, 0, 0, 400, IType.SIN_FULL)) .addBus("TWIST", new BusAnimationSequence().addPos(0, 0, -90, 0).addPos(0, 0, 0, 200, IType.SIN_FULL)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java index e15bf441a..fc4398ebb 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory762mm.java @@ -44,22 +44,23 @@ public class XFactory762mm { .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("r762du")); ModItems.gun_carbine = new ItemGunBaseNT(new GunConfig() - .dura(3_000).draw(10).inspect(31).jam(60).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_CARBIBE) + .dura(3_000).draw(10).inspect(31).reloadSequential(true).crosshair(Crosshair.CIRCLE).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(5F).delay(5).dry(15).spread(0.0F).reload(30, 0, 15, 0).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(5).dry(15).spread(0.0F).reload(30, 0, 15, 0).jam(60).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 14).addConfigs(r762_sp, r762_fmj, r762_jhp, r762_ap, r762_du)) .offset(1, -0.0625 * 2.5, -0.25D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_CARBINE_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_CARBINE_ANIMS).orchestra(Orchestras.ORCHESTRA_CARBIBE) ).setUnlocalizedName("gun_carbine").setTextureName(RefStrings.MODID + ":gun_darter"); } public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { - Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.075D, 1.1D); + Lego.handleStandardSmoke(ctx.player, stack, 1500, 0.075D, 1.1D, 0); }; @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_CARBINE_ANIMS = (stack, type) -> { - boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack) <= 0; switch(type) { case EQUIP: return new BusAnimation() .addBus("EQUIP", new BusAnimationSequence().addPos(45, 0, 0, 0).addPos(0, 0, 0, 500, IType.SIN_FULL)); diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java index e897b1e8a..e7c93bff9 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactory9mm.java @@ -41,18 +41,19 @@ public class XFactory9mm { .setCasing(casing9.clone().setColor(SpentCasing.COLOR_CASE_44).register("p9ap")); ModItems.gun_greasegun = new ItemGunBaseNT(new GunConfig() - .dura(3_000).draw(15).inspect(31).jam(55).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE).orchestra(Orchestras.ORCHESTRA_GREASEGUN) + .dura(3_000).draw(15).inspect(31).crosshair(Crosshair.L_CIRCLE).smoke(LAMBDA_SMOKE) .rec(new Receiver(0) - .dmg(5F).delay(4).dry(40).auto(true).spread(0.015F).reload(60).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(4).dry(40).auto(true).spread(0.015F).reload(60).jam(55).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 30).addConfigs(p9_sp, p9_fmj, p9_jhp, p9_ap)) .offset(1, -0.0625 * 2.5, -0.25D) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_GREASEGUN_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_GREASEGUN_ANIMS).orchestra(Orchestras.ORCHESTRA_GREASEGUN) ).setUnlocalizedName("gun_greasegun").setTextureName(RefStrings.MODID + ":gun_darter"); } public static BiConsumer LAMBDA_SMOKE = (stack, ctx) -> { - Lego.handleStandardSmoke(ctx.player, stack, 2000, 0.05D, 1.1D); + Lego.handleStandardSmoke(ctx.player, stack, 2000, 0.05D, 1.1D, 0); }; @SuppressWarnings("incomplete-switch") public static BiFunction LAMBDA_GREASEGUN_ANIMS = (stack, type) -> { @@ -68,7 +69,7 @@ public class XFactory9mm { .addBus("TURN", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, -45, 250, IType.SIN_FULL).addPos(0, 0, -45, 750).addPos(0, 0, 0, 500, IType.SIN_FULL)) .addBus("HANDLE", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(0, 0, 0, 250).addPos(-90, 0, 0, 250, IType.SIN_FULL).addPos(0, 0, 0, 250, IType.SIN_FULL)); case RELOAD: - boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; + boolean empty = ((ItemGunBaseNT) stack.getItem()).getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmountBeforeReload(stack) <= 0; return new BusAnimation() .addBus("MAG", new BusAnimationSequence().addPos(0, -8, 0, 250, IType.SIN_UP).addPos(0, -8, 0, 750).addPos(0, 0, 0, 500, IType.SIN_DOWN)) .addBus("LIFT", new BusAnimationSequence().addPos(0, 0, 0, 500).addPos(-25, 0, 0, 250, IType.SIN_FULL).addPos(-25, 0, 0, 1750).addPos(0, 0, 0, 500, IType.SIN_FULL)) diff --git a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java index 41740da41..dea104d5c 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java +++ b/src/main/java/com/hbm/items/weapon/sedna/factory/XFactoryBlackPowder.java @@ -28,12 +28,13 @@ public class XFactoryBlackPowder { BulletConfig shot = new BulletConfig().setItem(EnumAmmo.STONE_SHOT).setSpread(0.1F).setRicochetAngle(45).setProjectiles(6, 6).setDamage(0.5F); ModItems.gun_pepperbox = new ItemGunBaseNT(new GunConfig() - .dura(300).draw(4).inspect(23).jam(58).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) + .dura(300).draw(4).inspect(23).crosshair(Crosshair.CIRCLE).smoke(Lego.LAMBDA_STANDARD_SMOKE) .rec(new Receiver(0) - .dmg(5F).delay(27).reload(67).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) + .dmg(5F).delay(27).reload(67).jam(58).sound("hbm:weapon.fire.blackPowder", 1.0F, 1.0F) .mag(new MagazineFullReload(0, 6).addConfigs(stone, flint, iron, shot)) .canFire(Lego.LAMBDA_STANDARD_CAN_FIRE).fire(Lego.LAMBDA_STANDARD_FIRE).recoil(Lego.LAMBDA_STANDARD_RECOIL)) - .setupStandardConfiguration().anim(LAMBDA_PEPPERBOX_ANIMS) + .setupStandardConfiguration() + .anim(LAMBDA_PEPPERBOX_ANIMS).orchestra(Orchestras.ORCHESTRA_PEPPERBOX) ).setUnlocalizedName("gun_pepperbox").setTextureName(RefStrings.MODID + ":gun_darter"); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java index e305c3572..ba61b9baa 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentAmmoCounter.java @@ -19,9 +19,15 @@ public class HUDComponentAmmoCounter implements IHUDComponent { protected static final RenderItem itemRenderer = RenderItem.getInstance(); protected int receiver; + protected boolean mirrored; public HUDComponentAmmoCounter(int receiver) { + this(receiver, false); + } + + public HUDComponentAmmoCounter(int receiver, boolean mirror) { this.receiver = receiver; + this.mirrored = mirror; } @Override @@ -30,15 +36,15 @@ public class HUDComponentAmmoCounter implements IHUDComponent { } @Override - public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset) { + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset, int gunIndex) { ScaledResolution resolution = event.resolution; Minecraft mc = Minecraft.getMinecraft(); - int pX = resolution.getScaledWidth() / 2 + 62 + 36; + int pX = resolution.getScaledWidth() / 2 + (mirrored ? -(62 + 36 + 52) : (62 + 36)); int pZ = resolution.getScaledHeight() - bottomOffset - 21; ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); - IMagazine mag = gun.getConfig(stack).getReceivers(stack)[this.receiver].getMagazine(stack); + IMagazine mag = gun.getConfig(stack, gunIndex).getReceivers(stack)[this.receiver].getMagazine(stack); mc.fontRenderer.drawString(mag.reportAmmoStateForHUD(stack), pX + 17, pZ + 6, 0xFFFFFF); @@ -47,6 +53,7 @@ public class HUDComponentAmmoCounter implements IHUDComponent { RenderHelper.enableGUIStandardItemLighting(); itemRenderer.renderItemAndEffectIntoGUI(mc.fontRenderer, mc.getTextureManager(), mag.getIconForHUD(stack), pX, pZ); RenderHelper.disableStandardItemLighting(); + GL11.glEnable(GL11.GL_ALPHA_TEST); GL11.glDisable(GL12.GL_RESCALE_NORMAL); } } diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java index 93f7cbbf0..0afc6462e 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/HUDComponentDurabilityBar.java @@ -16,6 +16,15 @@ import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; public class HUDComponentDurabilityBar implements IHUDComponent { private static final ResourceLocation misc = new ResourceLocation(RefStrings.MODID + ":textures/misc/overlay_misc.png"); + + protected boolean mirrored = false; + + public HUDComponentDurabilityBar() { + this(false); + } + public HUDComponentDurabilityBar(boolean mirror) { + this.mirrored = mirror; + } @Override public int getComponentHeight(EntityPlayer player, ItemStack stack) { @@ -23,16 +32,16 @@ public class HUDComponentDurabilityBar implements IHUDComponent { } @Override - public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset) { + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset, int gunIndex) { ScaledResolution resolution = event.resolution; Minecraft mc = Minecraft.getMinecraft(); - int pX = resolution.getScaledWidth() / 2 + 62 + 36; + int pX = resolution.getScaledWidth() / 2 + (mirrored ? -(62 + 36 + 52) : (62 + 36)); int pZ = resolution.getScaledHeight() - 21; ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); - int dura = (int) (50 * gun.getWear(stack) / gun.getConfig(stack).getDurability(stack)); + int dura = (int) (50 * gun.getWear(stack, gunIndex) / gun.getConfig(stack, gunIndex).getDurability(stack)); GL11.glColor4f(1F, 1F, 1F, 1F); diff --git a/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java b/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java index 4405d6abd..071ad0ad6 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java +++ b/src/main/java/com/hbm/items/weapon/sedna/hud/IHUDComponent.java @@ -8,5 +8,5 @@ import net.minecraftforge.client.event.RenderGameOverlayEvent.Pre; public interface IHUDComponent { public int getComponentHeight(EntityPlayer player, ItemStack stack); - public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset); + public void renderHUDComponent(Pre event, ElementType type, EntityPlayer player, ItemStack stack, int bottomOffset, int gunIndex); } diff --git a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java index f1ea92846..c44175632 100644 --- a/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java +++ b/src/main/java/com/hbm/items/weapon/sedna/mags/MagazineSingleReload.java @@ -5,7 +5,7 @@ import com.hbm.items.weapon.sedna.BulletConfig; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.ItemStack; -/** Uses individual bullets which are loaded all at once */ +/** Uses individual bullets which are loaded one by one */ public class MagazineSingleReload extends MagazineSingleTypeBase { public MagazineSingleReload(int index, int capacity) { diff --git a/src/main/java/com/hbm/main/ClientProxy.java b/src/main/java/com/hbm/main/ClientProxy.java index ee491b259..be61cfd2b 100644 --- a/src/main/java/com/hbm/main/ClientProxy.java +++ b/src/main/java/com/hbm/main/ClientProxy.java @@ -606,7 +606,6 @@ public class ClientProxy extends ServerProxy { MinecraftForgeClient.registerItemRenderer(ModItems.gun_uac_pistol, new ItemRenderUACPistol()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_coilgun, new ItemRenderWeaponCoilgun()); MinecraftForgeClient.registerItemRenderer(ModItems.gun_cryocannon, new ItemRenderWeaponCryoCannon()); - MinecraftForgeClient.registerItemRenderer(ModItems.gun_congolake, new ItemRenderWeaponCongo()); //multitool MinecraftForgeClient.registerItemRenderer(ModItems.multitool_dig, new ItemRenderMultitool()); MinecraftForgeClient.registerItemRenderer(ModItems.multitool_silk, new ItemRenderMultitool()); @@ -1823,7 +1822,7 @@ public class ClientProxy extends ServerProxy { .addPos(90, 0, 1, 800) .addPos(0, 0, 1, 50)); - HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); + HbmAnimations.hotbar[player.inventory.currentItem][0] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } /* crucible swing */ @@ -1845,7 +1844,7 @@ public class ClientProxy extends ServerProxy { Minecraft.getMinecraft().getSoundHandler().playSound(PositionedSoundRecord.func_147674_a(new ResourceLocation("hbm:weapon.cSwing"), 0.8F + player.getRNG().nextFloat() * 0.2F)); - HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); + HbmAnimations.hotbar[player.inventory.currentItem][0] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } } @@ -1869,7 +1868,7 @@ public class ClientProxy extends ServerProxy { .addPos(0, 0, 0, retire)); - HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); + HbmAnimations.hotbar[player.inventory.currentItem][0] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } else { @@ -1890,7 +1889,7 @@ public class ClientProxy extends ServerProxy { .addPos(2, 0, 2, sideways) .addPos(0, 0, 0, retire)); - HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); + HbmAnimations.hotbar[player.inventory.currentItem][0] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), animation); } } @@ -1902,7 +1901,7 @@ public class ClientProxy extends ServerProxy { BusAnimation anim = item.getAnimation(data, stack); if(anim != null) { - HbmAnimations.hotbar[player.inventory.currentItem] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), anim); + HbmAnimations.hotbar[player.inventory.currentItem][0] = new Animation(player.getHeldItem().getItem().getUnlocalizedName(), System.currentTimeMillis(), anim); } } } diff --git a/src/main/java/com/hbm/main/ModEventHandlerClient.java b/src/main/java/com/hbm/main/ModEventHandlerClient.java index 706a6e48e..b46602c31 100644 --- a/src/main/java/com/hbm/main/ModEventHandlerClient.java +++ b/src/main/java/com/hbm/main/ModEventHandlerClient.java @@ -321,19 +321,21 @@ public class ModEventHandlerClient { /// HANLDE ANIMATION BUSES /// for(int i = 0; i < HbmAnimations.hotbar.length; i++) { - - Animation animation = HbmAnimations.hotbar[i]; - - if(animation == null) - continue; - - if(animation.holdLastFrame) - continue; - - long time = System.currentTimeMillis() - animation.startMillis; - - if(time > animation.animation.getDuration()) - HbmAnimations.hotbar[i] = null; + for(int j = 0; j < HbmAnimations.hotbar[i].length; j++) { + + Animation animation = HbmAnimations.hotbar[i][j]; + + if(animation == null) + continue; + + if(animation.holdLastFrame) + continue; + + long time = System.currentTimeMillis() - animation.startMillis; + + if(time > animation.animation.getDuration()) + HbmAnimations.hotbar[i][j] = null; + } } if(!ducked && Keyboard.isKeyDown(Keyboard.KEY_O) && Minecraft.getMinecraft().currentScreen == null) { diff --git a/src/main/java/com/hbm/main/ResourceManager.java b/src/main/java/com/hbm/main/ResourceManager.java index 5a8a8fd8b..647053d3c 100644 --- a/src/main/java/com/hbm/main/ResourceManager.java +++ b/src/main/java/com/hbm/main/ResourceManager.java @@ -971,6 +971,8 @@ public class ResourceManager { public static final ResourceLocation debug_gun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/debug_gun.png"); public static final ResourceLocation pepperbox_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/pepperbox.png"); public static final ResourceLocation bio_revolver_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/bio_revolver.png"); + public static final ResourceLocation dani_celestial_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/dani_celestial.png"); + public static final ResourceLocation dani_lunar_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/dani_lunar.png"); public static final ResourceLocation henry_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/henry.png"); public static final ResourceLocation greasegun_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/greasegun.png"); public static final ResourceLocation maresleg_tex = new ResourceLocation(RefStrings.MODID, "textures/models/weapons/maresleg.png"); diff --git a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java index d579f7821..0b3c5e5e8 100644 --- a/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java +++ b/src/main/java/com/hbm/packet/toclient/GunAnimationPacket.java @@ -26,30 +26,41 @@ import net.minecraft.item.ItemStack; public class GunAnimationPacket implements IMessage { public short type; - public int meta; + public int receiverIndex; + public int gunIndex; public GunAnimationPacket() { } public GunAnimationPacket(int type) { this.type = (short) type; - this.meta = 0; + this.receiverIndex = 0; + this.gunIndex = 0; } - public GunAnimationPacket(int type, int meta) { + public GunAnimationPacket(int type, int rec) { this.type = (short) type; - this.meta = meta; + this.receiverIndex = rec; + this.gunIndex = 0; + } + + public GunAnimationPacket(int type, int rec, int gun) { + this.type = (short) type; + this.receiverIndex = rec; + this.gunIndex = gun; } @Override public void fromBytes(ByteBuf buf) { type = buf.readShort(); - meta = buf.readInt(); + receiverIndex = buf.readInt(); + gunIndex = buf.readInt(); } @Override public void toBytes(ByteBuf buf) { buf.writeShort(type); - buf.writeInt(meta); + buf.writeInt(receiverIndex); + buf.writeInt(gunIndex); } public static class Handler implements IMessageHandler { @@ -68,7 +79,7 @@ public class GunAnimationPacket implements IMessage { return null; if(stack.getItem() instanceof ItemGunBaseNT) { - handleSedna(player, stack, slot, AnimType.values()[m.type], m.meta); + handleSedna(player, stack, slot, AnimType.values()[m.type], m.receiverIndex, m.gunIndex); } if(!(stack.getItem() instanceof ItemGunBase)) @@ -94,7 +105,7 @@ public class GunAnimationPacket implements IMessage { if(animation != null) { boolean isReloadAnimation = type == AnimType.RELOAD || type == AnimType.RELOAD_CYCLE || type == AnimType.RELOAD_EMPTY; - HbmAnimations.hotbar[slot] = new Animation(stack.getItem().getUnlocalizedName(), System.currentTimeMillis(), animation, isReloadAnimation && base.mainConfig.reloadAnimationsSequential); + HbmAnimations.hotbar[slot][0] = new Animation(stack.getItem().getUnlocalizedName(), System.currentTimeMillis(), animation, isReloadAnimation && base.mainConfig.reloadAnimationsSequential); } } catch(Exception x) { } @@ -102,19 +113,19 @@ public class GunAnimationPacket implements IMessage { return null; } - public static void handleSedna(EntityPlayer player, ItemStack stack, int slot, AnimType type, int meta) { + public static void handleSedna(EntityPlayer player, ItemStack stack, int slot, AnimType type, int receiverIndex, int gunIndex) { ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); - GunConfig config = gun.getConfig(stack); + GunConfig config = gun.getConfig(stack, gunIndex); if(type == AnimType.CYCLE) { - gun.lastShot = System.currentTimeMillis(); + if(gunIndex < gun.lastShot.length) gun.lastShot[gunIndex] = System.currentTimeMillis(); gun.shotRand = player.worldObj.rand.nextDouble(); Receiver[] receivers = config.getReceivers(stack); - if(meta >= 0 && meta < receivers.length) { - Receiver rec = receivers[meta]; + if(receiverIndex >= 0 && receiverIndex < receivers.length) { + Receiver rec = receivers[receiverIndex]; BiConsumer onRecoil= rec.getRecoil(stack); - if(onRecoil != null) onRecoil.accept(stack, new LambdaContext(config, player)); + if(onRecoil != null) onRecoil.accept(stack, new LambdaContext(config, player, receiverIndex)); } } @@ -132,7 +143,7 @@ public class GunAnimationPacket implements IMessage { Minecraft.getMinecraft().entityRenderer.itemRenderer.resetEquippedProgress(); Minecraft.getMinecraft().entityRenderer.itemRenderer.itemToRender = stack; boolean isReloadAnimation = type == AnimType.RELOAD || type == AnimType.RELOAD_CYCLE || type == AnimType.RELOAD_EMPTY; - HbmAnimations.hotbar[slot] = new Animation(stack.getItem().getUnlocalizedName(), System.currentTimeMillis(), animation, isReloadAnimation && config.getReloadAnimSequential(stack)); + HbmAnimations.hotbar[slot][gunIndex] = new Animation(stack.getItem().getUnlocalizedName(), System.currentTimeMillis(), animation, isReloadAnimation && config.getReloadAnimSequential(stack)); } } } diff --git a/src/main/java/com/hbm/render/anim/HbmAnimations.java b/src/main/java/com/hbm/render/anim/HbmAnimations.java index 915eb43fc..de9610fcc 100644 --- a/src/main/java/com/hbm/render/anim/HbmAnimations.java +++ b/src/main/java/com/hbm/render/anim/HbmAnimations.java @@ -15,7 +15,7 @@ public class HbmAnimations { //my approach adds 9 timers, one for every inventory slot. you can still //"trick" the system by putting a weapon into a different slot while an //animation is playing, though this will cancel the animation entirely. - public static final Animation[] hotbar = new Animation[9]; + public static final Animation[][] hotbar = new Animation[9][8]; //now with 8 parallel rails per slot! time to get railed! public static enum AnimType { RELOAD, //either a full reload or start of a reload @@ -61,8 +61,9 @@ public class HbmAnimations { this.holdLastFrame = holdLastFrame; } } - - public static Animation getRelevantAnim() { + + public static Animation getRelevantAnim() { return getRelevantAnim(0); } + public static Animation getRelevantAnim(int index) { EntityPlayer player = Minecraft.getMinecraft().thePlayer; int slot = player.inventory.currentItem; @@ -75,19 +76,20 @@ public class HbmAnimations { slot = Math.abs(slot) % 9; } - if(hotbar[slot] == null) + if(hotbar[slot][index] == null) return null; - if(hotbar[slot].key.equals(stack.getItem().getUnlocalizedName())) { - return hotbar[slot]; + if(hotbar[slot][index].key.equals(stack.getItem().getUnlocalizedName())) { + return hotbar[slot][index]; } return null; } - - public static double[] getRelevantTransformation(String bus) { + + public static double[] getRelevantTransformation(String bus) { return getRelevantTransformation(bus, 0); } + public static double[] getRelevantTransformation(String bus, int index) { - Animation anim = HbmAnimations.getRelevantAnim(); + Animation anim = HbmAnimations.getRelevantAnim(index); if(anim != null) { @@ -112,8 +114,9 @@ public class HbmAnimations { }; } - public static void applyRelevantTransformation(String bus) { - double[] transform = getRelevantTransformation(bus); + public static void applyRelevantTransformation(String bus) { applyRelevantTransformation(bus, 0); } + public static void applyRelevantTransformation(String bus, int index) { + double[] transform = getRelevantTransformation(bus, index); GL11.glTranslated(transform[0], transform[1], transform[2]); GL11.glRotated(transform[3], 1, 0, 0); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java index 235589e89..402545c56 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAm180.java @@ -72,7 +72,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { GL11.glTranslated(0, -2.3125, -1.5); GL11.glPushMatrix(); - int mag = gun.getConfig(stack).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); + int mag = gun.getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getAmount(stack); GL11.glTranslated(0, 0, 1.5); GL11.glRotated(mag / 59D * 360D, 0, -1, 0); GL11.glTranslated(0, 0, -1.5); @@ -86,7 +86,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { GL11.glTranslated(0, 1.875, 17); GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.25D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.25D); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); @@ -96,7 +96,7 @@ public class ItemRenderAm180 extends ItemRenderWeaponBase { GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); GL11.glScaled(0.5, 0.5, 0.5); - this.renderMuzzleFlash(gun.lastShot, 75, 5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java index 2ece42799..9a939214c 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderAtlas.java @@ -47,8 +47,9 @@ public class ItemRenderAtlas extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 1.5, 9.25); + GL11.glRotated(-recoil[2] * 10, 1, 0, 0); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.5D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.5D); GL11.glPopMatrix(); GL11.glTranslated(reloadMove[0], reloadMove[1], reloadMove[2]); @@ -90,7 +91,7 @@ public class ItemRenderAtlas extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 1.5, 9.25); GL11.glRotated(90, 0, 1, 0); - this.renderMuzzleFlash(gun.lastShot, 75, 7.5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 7.5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java index 90cc85656..8b1c4eb1d 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCarbine.java @@ -69,7 +69,7 @@ public class ItemRenderCarbine extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 1, 8); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.25D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.25D); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); @@ -79,7 +79,7 @@ public class ItemRenderCarbine extends ItemRenderWeaponBase { GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); GL11.glScaled(0.5, 0.5, 0.5); - this.renderMuzzleFlash(gun.lastShot, 75, 7.5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 7.5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java new file mode 100644 index 000000000..ae0fd41a6 --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderCongoLake.java @@ -0,0 +1,152 @@ +package com.hbm.render.item.weapon.sedna; + +import java.awt.Color; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.particle.SpentCasing; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderCongoLake extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + + float offset = 0.8F; + standardAimingTransform(stack, + -1.5F * offset, -2F * offset, 1.25F * offset, + 0, -9 / 8D, 0.25); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.congolake_tex); + double scale = 0.5D; + GL11.glScaled(scale, scale, scale); + + HbmAnimations.applyRelevantTransformation("Gun"); + ResourceManager.congolake.renderPart("Gun"); + + + GL11.glPushMatrix(); + { + HbmAnimations.applyRelevantTransformation("Pump"); + ResourceManager.congolake.renderPart("Pump"); + } + GL11.glPopMatrix(); + + + GL11.glPushMatrix(); + { + HbmAnimations.applyRelevantTransformation("Sight"); + ResourceManager.congolake.renderPart("Sight"); + } + GL11.glPopMatrix(); + + + GL11.glPushMatrix(); + { + HbmAnimations.applyRelevantTransformation("Loop"); + ResourceManager.congolake.renderPart("Loop"); + } + GL11.glPopMatrix(); + + + GL11.glPushMatrix(); + { + HbmAnimations.applyRelevantTransformation("GuardOuter"); + ResourceManager.congolake.renderPart("GuardOuter"); + + GL11.glPushMatrix(); + { + HbmAnimations.applyRelevantTransformation("GuardInner"); + ResourceManager.congolake.renderPart("GuardInner"); + } + GL11.glPopMatrix(); + } + GL11.glPopMatrix(); + + + GL11.glPushMatrix(); + { + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.casings_tex); + + HbmAnimations.applyRelevantTransformation("Shell"); + + SpentCasing casing = gun.getConfig(stack, 0).getReceivers(stack)[0].getMagazine(stack).getCasing(stack); + int[] colors = casing != null ? casing.getColors() : new int[] { SpentCasing.COLOR_CASE_40MM }; + + Color shellColor = new Color(colors[0]); + GL11.glColor3f(shellColor.getRed() / 255F, shellColor.getGreen() / 255F, shellColor.getBlue() / 255F); + ResourceManager.congolake.renderPart("Shell"); + + Color shellForeColor = new Color(colors.length > 1 ? colors[1] : colors[0]); + GL11.glColor3f(shellForeColor.getRed() / 255F, shellForeColor.getGreen() / 255F, shellForeColor.getBlue() / 255F); + ResourceManager.congolake.renderPart("ShellFore"); + + GL11.glColor3f(1F, 1F, 1F); + } + GL11.glPopMatrix(); + + double smokeScale = 0.25; + + GL11.glShadeModel(GL11.GL_SMOOTH); + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.75, 4.25); + double[] transform = HbmAnimations.getRelevantTransformation("Gun"); + GL11.glRotated(-transform[5], 0, 0, 1); + GL11.glRotated(-transform[4], 0, 1, 0); + GL11.glRotated(-transform[3], 1, 0, 0); + GL11.glRotated(90, 0, 1, 0); + GL11.glScaled(smokeScale, smokeScale, smokeScale); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 1D); + GL11.glPopMatrix(); + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.75, 4.25); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(90 * gun.shotRand, 1, 0, 0); + GL11.glScaled(0.5, 0.5, 0.5); + this.renderMuzzleFlash(gun.lastShot[0], 150, 7.5); + GL11.glPopMatrix(); + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + super.setupInv(stack); + double scale = 2.5D; + GL11.glScaled(scale, scale, scale); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(0, -1.25, 0); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { + GL11.glEnable(GL11.GL_LIGHTING); + + GL11.glShadeModel(GL11.GL_SMOOTH); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.congolake_tex); + ResourceManager.congolake.renderAll(); + GL11.glShadeModel(GL11.GL_FLAT); + } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java new file mode 100644 index 000000000..9199ec189 --- /dev/null +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDANI.java @@ -0,0 +1,153 @@ +package com.hbm.render.item.weapon.sedna; + +import org.lwjgl.opengl.GL11; + +import com.hbm.items.weapon.sedna.ItemGunBaseNT; +import com.hbm.main.ResourceManager; +import com.hbm.render.anim.HbmAnimations; + +import net.minecraft.client.Minecraft; +import net.minecraft.item.ItemStack; + +public class ItemRenderDANI extends ItemRenderWeaponBase { + + @Override + protected float getTurnMagnitude(ItemStack stack) { return ItemGunBaseNT.getIsAiming(stack) ? 2.5F : -0.25F; } + + @Override + protected void setupFirstPerson(ItemStack stack) { + GL11.glTranslated(0, 0, 0.875); + } + + @Override + public void renderFirstPerson(ItemStack stack) { + + ItemGunBaseNT gun = (ItemGunBaseNT) stack.getItem(); + float offset = 0.8F; + + for(int i = -1; i <= 1; i += 2) { + + int index = i == -1 ? 0 : 1; + Minecraft.getMinecraft().renderEngine.bindTexture(index == 0 ? ResourceManager.dani_celestial_tex : ResourceManager.dani_lunar_tex); + + GL11.glPushMatrix(); + + standardAimingTransform(stack, + -1.5F * offset * i, -0.75F * offset, 1F * offset, + 0, -3.125 / 8D, 0.25); + + double scale = 0.125D; + GL11.glScaled(scale, scale, scale); + + GL11.glShadeModel(GL11.GL_SMOOTH); + double[] recoil = HbmAnimations.getRelevantTransformation("RECOIL", index); + double[] reloadMove = HbmAnimations.getRelevantTransformation("RELOAD_MOVE", index); + double[] reloadRot = HbmAnimations.getRelevantTransformation("RELOAD_ROT", index); + double[] equip = HbmAnimations.getRelevantTransformation("EQUIP", index); + + GL11.glTranslated(recoil[0], recoil[1], recoil[2]); + GL11.glRotated(recoil[2] * 10, 1, 0, 0); + + GL11.glTranslated(0, 0, -7); + GL11.glRotated(equip[0], -1, 0, 0); + GL11.glTranslated(0, 0, 7); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.5, 9.25); + GL11.glRotated(-recoil[2] * 10, 1, 0, 0); + GL11.glRotated(90, 0, 1, 0); + this.renderSmokeNodes(gun.getConfig(stack, index).smokeNodes, 0.5D); + GL11.glPopMatrix(); + + GL11.glTranslated(reloadMove[0], reloadMove[1], reloadMove[2]); + + GL11.glRotated(reloadRot[0], 1, 0, 0); + GL11.glRotated(reloadRot[2] * i, 0, 0, 1); + GL11.glRotated(reloadRot[1] * i, 0, 1, 0); + ResourceManager.bio_revolver.renderPart("Grip"); + + GL11.glPushMatrix(); /// FRONT PUSH /// + GL11.glRotated(HbmAnimations.getRelevantTransformation("FRONT", index)[2], 1, 0, 0); + ResourceManager.bio_revolver.renderPart("Barrel"); + GL11.glPushMatrix(); /// LATCH PUSH /// + GL11.glTranslated(0, 2.3125, -0.875); + GL11.glRotated(HbmAnimations.getRelevantTransformation("LATCH", index)[2], 1, 0, 0); + GL11.glTranslated(0, -2.3125, 0.875); + ResourceManager.bio_revolver.renderPart("Latch"); + GL11.glPopMatrix(); /// LATCH POP /// + + GL11.glPushMatrix(); /// DRUM PUSH /// + GL11.glTranslated(0, 1, 0); + GL11.glRotated(HbmAnimations.getRelevantTransformation("DRUM", index)[2] * 60, 0, 0, 1); + GL11.glTranslated(0, -1, 0); + GL11.glTranslated(0, 0, HbmAnimations.getRelevantTransformation("DRUM_PUSH", index)[2]); + ResourceManager.bio_revolver.renderPart("Drum"); + GL11.glPopMatrix(); /// DRUM POP /// + + GL11.glPopMatrix(); /// FRONT POP /// + + GL11.glPushMatrix(); /// HAMMER /// + GL11.glTranslated(0, 0, -4.5); + GL11.glRotated(-45 + 45 * HbmAnimations.getRelevantTransformation("HAMMER", index)[2], 1, 0, 0); + GL11.glTranslated(0, 0, 4.5); + ResourceManager.bio_revolver.renderPart("Hammer"); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + + GL11.glPushMatrix(); + GL11.glTranslated(0, 1.5, 9.25); + GL11.glRotated(90, 0, 1, 0); + this.renderMuzzleFlash(gun.lastShot[index], 75, 7.5); + GL11.glPopMatrix(); + + GL11.glPopMatrix(); + } + } + + @Override + protected void setupThirdPerson(ItemStack stack) { + super.setupThirdPerson(stack); + GL11.glTranslated(0, 1, 3); + + } + + @Override + protected void setupInv(ItemStack stack) { + GL11.glScaled(1, 1, -1); + GL11.glTranslated(8, 6, 0); + + double scale = 1.125D; + GL11.glScaled(scale, scale, scale); + + GL11.glEnable(GL11.GL_LIGHTING); + GL11.glShadeModel(GL11.GL_SMOOTH); + + GL11.glPushMatrix(); + GL11.glRotated(225, 0, 0, 1); + GL11.glRotated(90, 0, 1, 0); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(45, 0, 1, 0); + GL11.glTranslated(2, 0, 0); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_celestial_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glPopMatrix(); + + GL11.glTranslated(0, 0, 5); + GL11.glPushMatrix(); + GL11.glRotated(225, 0, 0, 1); + GL11.glRotated(-90, 0, 1, 0); + GL11.glRotated(-90, 1, 0, 0); + GL11.glRotated(25, 1, 0, 0); + GL11.glRotated(-45, 0, 1, 0); + GL11.glTranslated(-2, 0, 0); + Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.dani_lunar_tex); + ResourceManager.bio_revolver.renderAll(); + GL11.glPopMatrix(); + + GL11.glShadeModel(GL11.GL_FLAT); + } + + @Override + public void renderOther(ItemStack stack, ItemRenderType type) { } +} diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java index 72b12c03d..ef664863b 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderDebug.java @@ -51,7 +51,7 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(-9, 2.5, 0); GL11.glRotated(recoil[2] * -10, 0, 0, 1); - this.renderSmokeNodes(gun.smokeNodes, 0.5D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.5D); GL11.glPopMatrix(); GL11.glRotated(reloadLift[0], 0, 0, 1); @@ -85,7 +85,7 @@ public class ItemRenderDebug extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0.125, 2.5, 0); - this.renderGapFlash(gun.lastShot); + this.renderGapFlash(gun.lastShot[0]); GL11.glPopMatrix(); GL11.glPushMatrix(); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java index 9b646025c..9de213985 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderFlaregun.java @@ -72,9 +72,9 @@ public class ItemRenderFlaregun extends ItemRenderWeaponBase { GL11.glTranslated(0, 4, 9); GL11.glRotated(90, 0, 1, 0); GL11.glScaled(smokeScale, smokeScale, smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 2.5D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 2.5D); GL11.glTranslated(0, 0, 0.1); - this.renderSmokeNodes(gun.smokeNodes, 2D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 2D); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java index 4d1d48fec..58630348f 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderGreasegun.java @@ -89,7 +89,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); GL11.glScaled(smokeScale, smokeScale, smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 1D); GL11.glPopMatrix(); GL11.glPushMatrix(); @@ -97,7 +97,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); GL11.glScaled(smokeScale, smokeScale, smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 1D); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); @@ -107,7 +107,7 @@ public class ItemRenderGreasegun extends ItemRenderWeaponBase { GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); GL11.glScaled(0.5, 0.5, 0.5); - this.renderMuzzleFlash(gun.lastShot, 75, 7.5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 7.5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java index 55f61142a..b01c1c287 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHeavyRevolver.java @@ -53,7 +53,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(-9, 2.5, 0); GL11.glRotated(recoil[2] * -10, 0, 0, 1); - this.renderSmokeNodes(gun.smokeNodes, 0.5D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.5D); GL11.glPopMatrix(); GL11.glRotated(reloadLift[0], 0, 0, 1); @@ -87,7 +87,7 @@ public class ItemRenderHeavyRevolver extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0.125, 2.5, 0); - this.renderGapFlash(gun.lastShot); + this.renderGapFlash(gun.lastShot[0]); GL11.glPopMatrix(); GL11.glPushMatrix(); diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java index b12929b76..31a4de217 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderHenry.java @@ -72,7 +72,7 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { GL11.glTranslated(0, 1, 8); GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.25D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.25D); GL11.glPopMatrix(); ResourceManager.henry.renderPart("Gun"); @@ -116,7 +116,7 @@ public class ItemRenderHenry extends ItemRenderWeaponBase { GL11.glTranslated(0, 1, 8); GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); - this.renderMuzzleFlash(gun.lastShot, 75, 5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java index 249846d3b..f3ebf0ed8 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderLiberator.java @@ -2,6 +2,7 @@ package com.hbm.render.item.weapon.sedna; import org.lwjgl.opengl.GL11; +import com.hbm.items.weapon.sedna.GunConfig; import com.hbm.items.weapon.sedna.ItemGunBaseNT; import com.hbm.main.ResourceManager; import com.hbm.render.anim.HbmAnimations; @@ -91,18 +92,20 @@ public class ItemRenderLiberator extends ItemRenderWeaponBase { double smokeScale = 0.375; + GunConfig cfg = gun.getConfig(stack, 0); + GL11.glPushMatrix(); GL11.glTranslated(0, 0.25, 7.25); GL11.glRotated(90, 0, 1, 0); GL11.glScaled(smokeScale, smokeScale, smokeScale); GL11.glTranslated(0, 0, 0.25 / smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(cfg.smokeNodes, 1D); GL11.glTranslated(0, 0, -0.5 / smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(cfg.smokeNodes, 1D); GL11.glTranslated(0, 0.5 / smokeScale, 0); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(cfg.smokeNodes, 1D); GL11.glTranslated(0, 0, 0.5 / smokeScale); - this.renderSmokeNodes(gun.smokeNodes, 1D); + this.renderSmokeNodes(cfg.smokeNodes, 1D); GL11.glPopMatrix(); GL11.glShadeModel(GL11.GL_FLAT); @@ -112,7 +115,7 @@ public class ItemRenderLiberator extends ItemRenderWeaponBase { GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); GL11.glScaled(1.5, 1.5, 1.5); - this.renderMuzzleFlash(gun.lastShot, 75, 5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java index f4b2c877a..1423083a5 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderMaresleg.java @@ -58,7 +58,7 @@ public class ItemRenderMaresleg extends ItemRenderWeaponBase { GL11.glTranslated(0, 1, 8); GL11.glRotated(turn[2], 0, 0, -1); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.25D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.25D); GL11.glPopMatrix(); ResourceManager.maresleg.renderPart("Gun"); @@ -90,7 +90,7 @@ public class ItemRenderMaresleg extends ItemRenderWeaponBase { GL11.glTranslated(0, 1, 8); GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); - this.renderMuzzleFlash(gun.lastShot, 75, 5); + this.renderMuzzleFlash(gun.lastShot[0], 75, 5); GL11.glPopMatrix(); } diff --git a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java index 605851eed..1be000046 100644 --- a/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java +++ b/src/main/java/com/hbm/render/item/weapon/sedna/ItemRenderPepperbox.java @@ -51,7 +51,7 @@ public class ItemRenderPepperbox extends ItemRenderWeaponBase { GL11.glPushMatrix(); GL11.glTranslated(0, 0.5, 7); GL11.glRotated(90, 0, 1, 0); - this.renderSmokeNodes(gun.smokeNodes, 0.5D); + this.renderSmokeNodes(gun.getConfig(stack, 0).smokeNodes, 0.5D); GL11.glPopMatrix(); Minecraft.getMinecraft().renderEngine.bindTexture(ResourceManager.pepperbox_tex); @@ -90,9 +90,9 @@ public class ItemRenderPepperbox extends ItemRenderWeaponBase { GL11.glScaled(0.5, 0.5, 0.5); GL11.glRotated(90, 0, 1, 0); GL11.glRotated(90 * gun.shotRand, 1, 0, 0); - this.renderMuzzleFlash(gun.lastShot); + this.renderMuzzleFlash(gun.lastShot[0]); GL11.glRotated(45, 1, 0, 0); - this.renderMuzzleFlash(gun.lastShot); + this.renderMuzzleFlash(gun.lastShot[0]); GL11.glPopMatrix(); } diff --git a/src/main/resources/assets/hbm/textures/models/weapons/dani_celestial.png b/src/main/resources/assets/hbm/textures/models/weapons/dani_celestial.png new file mode 100644 index 0000000000000000000000000000000000000000..cfed1c07113504d234501b9922338d301efe3565 GIT binary patch literal 3086 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 literal 0 HcmV?d00001 diff --git a/src/main/resources/assets/hbm/textures/models/weapons/dani_lunar.png b/src/main/resources/assets/hbm/textures/models/weapons/dani_lunar.png new file mode 100644 index 0000000000000000000000000000000000000000..1e58d97d18a6f68b3b875e783ce7626cf9b15de3 GIT binary patch literal 3090 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 literal 0 HcmV?d00001 From 7c35b1923a32ef210e2dda03a40489bad8e11329 Mon Sep 17 00:00:00 2001 From: George Paton Date: Thu, 10 Oct 2024 14:14:11 +1100 Subject: [PATCH 61/63] Add Congo Lake inspect, jammed, and equip animations, also: * fix importer breaking nested object offsets (for things like MagPlate inside Mag) * fix sqrt3d throwing NaN on negative inputs * >:3 --- README.md | 3 + ntm-animator.blend | Bin 1131292 -> 0 bytes .../weapon/sedna/factory/Orchestras.java | 4 + .../weapon/sedna/factory/XFactory40mm.java | 9 +- .../hbm/render/anim/BusAnimationKeyframe.java | 21 +- .../models/weapons/animations/congolake.json | 2 +- .../assets/hbm/models/weapons/congolake.obj | 3197 +++++++++-------- src/main/resources/assets/hbm/sounds.json | 2 + .../assets/hbm/sounds/weapon/glClose.ogg | Bin 0 -> 9844 bytes .../assets/hbm/sounds/weapon/glOpen.ogg | Bin 0 -> 11728 bytes .../hbm/textures/models/weapons/congolake.png | Bin 10856 -> 14853 bytes tools/export-json-animation-2_79.py | 293 ++ tools/export-json-animation-3_2.py | 286 ++ tools/export-json-animation-4_0.py | 283 ++ 14 files changed, 2492 insertions(+), 1608 deletions(-) delete mode 100644 ntm-animator.blend create mode 100644 src/main/resources/assets/hbm/sounds/weapon/glClose.ogg create mode 100644 src/main/resources/assets/hbm/sounds/weapon/glOpen.ogg create mode 100644 tools/export-json-animation-2_79.py create mode 100644 tools/export-json-animation-3_2.py create mode 100644 tools/export-json-animation-4_0.py diff --git a/README.md b/README.md index 0ebb0c7e6..166759fd7 100644 --- a/README.md +++ b/README.md @@ -93,6 +93,9 @@ If you want to make some changes to the mod, follow this guide: * Click **Add Standard VM**; in the JRE home, navigate to the directory where the JDK is installed, then click finish and select it. 10. Code! +## Contributing animations +Weapon animations in NTM are stored in JSON files, which are used alongside OBJ models to produce high quality animations with reasonable filesizes. Import/Export Blender addons are available for versions 2.79, 3.2, and 4.0 in `tools`, and they should function reasonably well in newer versions as well. See the comments in the header of the export scripts for usage instructions. + ## Compatibility notice NTM has certain behaviors intended to fix vanilla code or to increase compatibility in certain cases where it otherwise would not be possible. These behaviors have the potential of not playing well with other mods, and while no such cases are currently known, here's a list of them. diff --git a/ntm-animator.blend b/ntm-animator.blend deleted file mode 100644 index b7b0b3e191906626d2fcdc5652d7434821e60ebf..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1131292 zcmeEv31A&n)&EP=mZ2@Qh?FOru@nguV)n(-EKLKirJHT(!uFabFUg}xUdYm>D3BuH z$i7(%vXn)QqJAu*MN1bzeF%c={Y3owDQZ3opMLm9iwpUmGxz@9n|m|!wggJU-1g