diff --git a/assets/hbm/lang/de_DE.lang b/assets/hbm/lang/de_DE.lang index 54e296166..25c576139 100644 --- a/assets/hbm/lang/de_DE.lang +++ b/assets/hbm/lang/de_DE.lang @@ -1887,6 +1887,8 @@ item.missile_skin_metal.name=Raketenskin: Metall item.missile_custom.name=Spezialgefertigte Rakete item.missile_carrier.name=HTR-01 Trägerrakete +item.missile_soyuz.name=Soyuz-FG +item.missile_soyuz_lander.name=Soyuz-Orbitalmodul item.sat_mapper.name=Oberflächen-Abtastungssatellit item.sat_scanner.name=Satellit mit Tiefenscanning-Modul item.sat_radar.name=Radar-Überwachungssatellit diff --git a/assets/hbm/lang/en_US.lang b/assets/hbm/lang/en_US.lang index c45e8d648..c3bbb2822 100644 --- a/assets/hbm/lang/en_US.lang +++ b/assets/hbm/lang/en_US.lang @@ -1887,6 +1887,8 @@ item.missile_skin_metal.name=Missile Skin: Metal item.missile_custom.name=Custom Missile item.missile_carrier.name=HTR-01 Carrier Rocket +item.missile_soyuz.name=Soyuz-FG +item.missile_soyuz_lander.name=Soyuz Orbital Module item.sat_mapper.name=Surface Mapping Satellite item.sat_scanner.name=Satellite with Depth-Resource Scanning Module item.sat_radar.name=Radar Survey Satellite diff --git a/assets/hbm/models/soyuz_lander.obj b/assets/hbm/models/soyuz_lander.obj new file mode 100644 index 000000000..5e029b21d --- /dev/null +++ b/assets/hbm/models/soyuz_lander.obj @@ -0,0 +1,1418 @@ +# Blender v2.76 (sub 0) OBJ File: 'soyuz_lander.blend1' +# www.blender.org +o Chute +v -1.913417 13.464549 0.000000 +v -3.535534 12.651650 0.000000 +v -4.619398 11.435062 0.000000 +v -5.000000 10.000000 0.000000 +v -1.767767 13.464549 -0.732233 +v -3.266407 12.651650 -1.352990 +v -4.267767 11.435062 -1.767767 +v -4.619398 10.000000 -1.913417 +v -1.352990 13.464549 -1.352990 +v -2.500000 12.651650 -2.500000 +v -3.266407 11.435062 -3.266407 +v -3.535534 10.000000 -3.535534 +v -0.732233 13.464549 -1.767766 +v -1.352990 12.651650 -3.266407 +v -1.767767 11.435062 -4.267766 +v -1.913417 10.000000 -4.619397 +v -0.000000 13.464549 -1.913417 +v 0.000000 12.651650 -3.535533 +v 0.000000 11.435062 -4.619397 +v -0.000000 10.000000 -4.999999 +v -0.048773 10.000000 -4.903924 +v 0.732232 13.464549 -1.767766 +v 1.352990 12.651650 -3.266406 +v 1.767767 11.435062 -4.267766 +v 1.913417 10.000000 -4.619396 +v 1.352989 13.464549 -1.352990 +v 2.499999 12.651650 -2.499999 +v 3.266407 11.435062 -3.266406 +v 3.535533 10.000000 -3.535532 +v 1.767766 13.464549 -0.732232 +v 3.266406 12.651650 -1.352989 +v 4.267766 11.435062 -1.767765 +v 4.619396 10.000000 -1.913415 +v 1.913416 13.464549 0.000001 +v 3.535532 12.651650 0.000001 +v 4.619396 11.435062 0.000002 +v 4.999998 10.000000 0.000002 +v 1.767766 13.464549 0.732233 +v 3.266405 12.651650 1.352991 +v 4.267765 11.435062 1.767768 +v 4.619395 10.000000 1.913418 +v 0.048772 2.000000 -0.403924 +v 1.352989 13.464549 1.352990 +v 2.499998 12.651650 2.500000 +v 3.266405 11.435062 3.266408 +v 3.535531 10.000000 3.535534 +v -0.048773 2.000000 -0.403924 +v 0.048772 10.000000 -4.903924 +v -0.883884 13.607275 0.366116 +v 0.732232 13.464549 1.767767 +v 1.352988 12.651650 3.266407 +v 1.767764 11.435062 4.267767 +v 1.913414 10.000000 4.619397 +v -0.676496 13.607275 0.676495 +v -0.366118 13.607275 0.883883 +v -0.000001 13.607275 0.956709 +v -0.000001 13.464549 1.913417 +v -0.000002 12.651650 3.535533 +v -0.000003 11.435062 4.619398 +v -0.000003 10.000000 4.999999 +v 0.366115 13.607275 0.883884 +v 0.676494 13.607275 0.676496 +v 0.883882 13.607275 0.366117 +v -0.732234 13.464549 1.767766 +v -1.352992 12.651650 3.266406 +v -1.767770 11.435062 4.267766 +v -1.913419 10.000000 4.619396 +v 0.956707 13.607275 0.000001 +v 0.883882 13.607275 -0.366116 +v 0.676494 13.607275 -0.676494 +v -1.352991 13.464549 1.352989 +v -2.500001 12.651650 2.499998 +v -3.266410 11.435062 3.266406 +v -3.535535 10.000000 3.535532 +v -0.000001 13.607275 -0.956708 +v -0.366117 13.607275 -0.883883 +v -0.676496 13.607275 -0.676495 +v -1.767767 13.464549 0.732232 +v -3.266407 12.651650 1.352988 +v -4.267769 11.435062 1.767765 +v -4.619398 10.000000 1.913415 +v -0.883884 13.607275 -0.366116 +v -0.956709 13.607275 0.000000 +v 0.366116 13.607275 -0.883883 +v 0.048773 10.000000 4.903924 +v -0.048773 2.000000 0.403924 +v 0.048773 2.000000 0.403924 +v -0.048773 10.000000 4.903924 +v -4.903924 10.000000 0.048772 +v -0.403925 2.000000 -0.048772 +v -0.403925 2.000000 0.048773 +v -4.903925 10.000000 -0.048773 +v 4.903924 10.000000 -0.048772 +v 0.403924 2.000000 0.048772 +v 0.403924 2.000000 -0.048773 +v 4.903924 10.000000 0.048773 +v 3.433111 10.000000 -3.502086 +v 0.320105 2.000000 -0.251131 +v 0.251130 2.000000 -0.320105 +v 3.502086 10.000000 -3.433111 +v -3.433111 10.000000 3.502085 +v -0.320105 2.000000 0.251130 +v -0.251130 2.000000 0.320105 +v -3.502086 10.000000 3.433111 +v -3.502085 10.000000 -3.433111 +v -0.251131 2.000000 -0.320105 +v -0.320105 2.000000 -0.251130 +v -3.433111 10.000000 -3.502086 +v 3.502085 10.000000 3.433111 +v 0.251130 2.000000 0.320105 +v 0.320105 2.000000 0.251130 +v 3.433110 10.000000 3.502086 +v -1.913417 13.464549 0.000000 +v -3.535534 12.651650 0.000000 +v -4.619398 11.435062 0.000000 +v -5.000000 10.000000 0.000000 +v -1.767767 13.464549 -0.732233 +v -3.266407 12.651650 -1.352990 +v -4.267767 11.435062 -1.767767 +v -4.619398 10.000000 -1.913417 +v -1.352990 13.464549 -1.352990 +v -2.500000 12.651650 -2.500000 +v -3.266407 11.435062 -3.266407 +v -3.535534 10.000000 -3.535534 +v -0.732233 13.464549 -1.767766 +v -1.352990 12.651650 -3.266407 +v -1.767767 11.435062 -4.267766 +v -1.913417 10.000000 -4.619397 +v -0.000000 13.464549 -1.913417 +v 0.000000 12.651650 -3.535533 +v 0.000000 11.435062 -4.619397 +v -0.000000 10.000000 -4.999999 +v -0.048773 10.000000 -4.903924 +v 0.732232 13.464549 -1.767766 +v 1.352990 12.651650 -3.266406 +v 1.767767 11.435062 -4.267766 +v 1.913417 10.000000 -4.619396 +v 1.352989 13.464549 -1.352990 +v 2.499999 12.651650 -2.499999 +v 3.266407 11.435062 -3.266406 +v 3.535533 10.000000 -3.535532 +v 1.767766 13.464549 -0.732232 +v 3.266406 12.651650 -1.352989 +v 4.267766 11.435062 -1.767765 +v 4.619396 10.000000 -1.913415 +v 1.913416 13.464549 0.000001 +v 3.535532 12.651650 0.000001 +v 4.619396 11.435062 0.000002 +v 4.999998 10.000000 0.000002 +v 1.767766 13.464549 0.732233 +v 3.266405 12.651650 1.352991 +v 4.267765 11.435062 1.767768 +v 4.619395 10.000000 1.913418 +v 0.048772 2.000000 -0.403924 +v 1.352989 13.464549 1.352990 +v 2.499998 12.651650 2.500000 +v 3.266405 11.435062 3.266408 +v 3.535531 10.000000 3.535534 +v -0.048773 2.000000 -0.403924 +v 0.048772 10.000000 -4.903924 +v -0.883884 13.607275 0.366116 +v 0.732232 13.464549 1.767767 +v 1.352988 12.651650 3.266407 +v 1.767764 11.435062 4.267767 +v 1.913414 10.000000 4.619397 +v -0.676496 13.607275 0.676495 +v -0.366118 13.607275 0.883883 +v -0.000001 13.607275 0.956709 +v -0.000001 13.464549 1.913417 +v -0.000002 12.651650 3.535533 +v -0.000003 11.435062 4.619398 +v -0.000003 10.000000 4.999999 +v 0.366115 13.607275 0.883884 +v 0.676494 13.607275 0.676496 +v 0.883882 13.607275 0.366117 +v -0.732234 13.464549 1.767766 +v -1.352992 12.651650 3.266406 +v -1.767770 11.435062 4.267766 +v -1.913419 10.000000 4.619396 +v 0.956707 13.607275 0.000001 +v 0.883882 13.607275 -0.366116 +v 0.676494 13.607275 -0.676494 +v -1.352991 13.464549 1.352989 +v -2.500001 12.651650 2.499998 +v -3.266410 11.435062 3.266406 +v -3.535535 10.000000 3.535532 +v -0.000001 13.607275 -0.956708 +v -0.366117 13.607275 -0.883883 +v -0.676496 13.607275 -0.676495 +v -1.767767 13.464549 0.732232 +v -3.266407 12.651650 1.352988 +v -4.267769 11.435062 1.767765 +v -4.619398 10.000000 1.913415 +v -0.883884 13.607275 -0.366116 +v -0.956709 13.607275 0.000000 +v 0.366116 13.607275 -0.883883 +v 0.048773 10.000000 4.903924 +v -0.048773 2.000000 0.403924 +v 0.048773 2.000000 0.403924 +v -0.048773 10.000000 4.903924 +v -4.903924 10.000000 0.048772 +v -0.403925 2.000000 -0.048772 +v -0.403925 2.000000 0.048773 +v -4.903925 10.000000 -0.048773 +v 4.903924 10.000000 -0.048772 +v 0.403924 2.000000 0.048772 +v 0.403924 2.000000 -0.048773 +v 4.903924 10.000000 0.048773 +v 3.433111 10.000000 -3.502086 +v 0.320105 2.000000 -0.251131 +v 0.251130 2.000000 -0.320105 +v 3.502086 10.000000 -3.433111 +v -3.433111 10.000000 3.502085 +v -0.320105 2.000000 0.251130 +v -0.251130 2.000000 0.320105 +v -3.502086 10.000000 3.433111 +v -3.502085 10.000000 -3.433111 +v -0.251131 2.000000 -0.320105 +v -0.320105 2.000000 -0.251130 +v -3.433111 10.000000 -3.502086 +v 3.502085 10.000000 3.433111 +v 0.251130 2.000000 0.320105 +v 0.320105 2.000000 0.251130 +v 3.433110 10.000000 3.502086 +vt 0.666667 1.000000 +vt 0.666667 -0.000000 +vt 1.000000 0.000000 +vt 1.000000 1.000000 +vt 0.666667 0.500000 +vt 0.333333 0.500000 +vt 0.333333 0.250000 +vt 0.666667 0.250000 +vt 0.333333 0.000000 +vt 0.666667 0.750000 +vt 0.333333 0.750000 +vt 0.000000 0.250000 +vt 0.000000 0.750000 +vt -0.000000 0.500000 +vt -0.000000 -0.000000 +vt 0.333333 1.000000 +vt -0.000000 1.000000 +vn 0.000000 -0.490300 -0.871600 +vn 0.000000 -0.490300 0.871600 +vn -0.871600 -0.490300 0.000000 +vn 0.871600 -0.490300 0.000000 +vn 0.616300 -0.490300 -0.616300 +vn -0.616300 -0.490300 0.616300 +vn -0.616300 -0.490300 -0.616300 +vn 0.616300 -0.490300 0.616300 +vn 0.000000 0.490300 0.871600 +vn 0.000000 0.490300 -0.871600 +vn 0.871600 0.490300 0.000000 +vn -0.871600 0.490300 0.000000 +vn -0.616300 0.490300 0.616300 +vn 0.616300 0.490300 -0.616300 +vn 0.616300 0.490300 0.616300 +vn -0.616300 0.490300 -0.616300 +vn -0.622500 0.782600 0.000000 +vn -0.575200 0.782600 -0.238200 +vn -0.819300 0.462100 -0.339400 +vn -0.886800 0.462100 0.000000 +vn -0.893000 0.256300 -0.369900 +vn -0.319200 0.947700 0.000000 +vn -0.294900 0.947700 -0.122200 +vn -0.627100 0.462100 -0.627100 +vn -0.225700 0.947700 -0.225700 +vn -0.440200 0.782600 -0.440200 +vn -0.238200 0.782600 -0.575200 +vn -0.339400 0.462100 -0.819300 +vn -0.369900 0.256300 -0.893000 +vn -0.122200 0.947700 -0.294900 +vn 0.000000 0.782600 -0.622500 +vn 0.000000 0.462100 -0.886800 +vn 0.000000 0.256300 -0.966600 +vn 0.000000 0.947700 -0.319200 +vn 0.339400 0.462100 -0.819300 +vn 0.369900 0.256300 -0.893000 +vn 0.122200 0.947700 -0.294900 +vn 0.238200 0.782600 -0.575200 +vn 0.627100 0.462100 -0.627100 +vn 0.683500 0.256300 -0.683500 +vn 0.225700 0.947700 -0.225700 +vn 0.440200 0.782600 -0.440200 +vn 0.575200 0.782600 -0.238200 +vn 0.819300 0.462100 -0.339400 +vn 0.294900 0.947700 -0.122200 +vn 0.622500 0.782600 0.000000 +vn 0.886800 0.462100 0.000000 +vn 0.966600 0.256300 0.000000 +vn 0.319200 0.947700 0.000000 +vn 0.819300 0.462100 0.339400 +vn 0.294900 0.947700 0.122200 +vn 0.575200 0.782600 0.238200 +vn 0.225700 0.947700 0.225700 +vn 0.440200 0.782600 0.440200 +vn 0.627100 0.462100 0.627100 +vn 0.683500 0.256300 0.683500 +vn 0.238200 0.782600 0.575200 +vn 0.339400 0.462100 0.819300 +vn 0.369900 0.256300 0.893000 +vn 0.122200 0.947700 0.294900 +vn 0.000000 0.462100 0.886800 +vn 0.000000 0.256300 0.966600 +vn 0.000000 0.947700 0.319200 +vn 0.000000 0.782600 0.622500 +vn -0.339400 0.462100 0.819300 +vn -0.122200 0.947700 0.294900 +vn -0.238200 0.782600 0.575200 +vn -0.440200 0.782600 0.440200 +vn -0.627100 0.462100 0.627100 +vn -0.683500 0.256300 0.683500 +vn -0.225700 0.947700 0.225700 +vn -0.575200 0.782600 0.238200 +vn -0.819300 0.462100 0.339400 +vn -0.893000 0.256300 0.369900 +vn -0.294900 0.947700 0.122200 +vn -0.147500 0.989000 0.000000 +vn -0.136300 0.989000 -0.056500 +vn -0.104300 0.989000 -0.104300 +vn -0.056500 0.989000 -0.136300 +vn 0.000000 0.989000 -0.147500 +vn 0.056500 0.989000 -0.136300 +vn 0.104300 0.989000 -0.104300 +vn 0.136300 0.989000 -0.056500 +vn 0.147500 0.989000 0.000000 +vn 0.136300 0.989000 0.056500 +vn 0.104300 0.989000 0.104300 +vn 0.056500 0.989000 0.136300 +vn 0.000000 0.989000 0.147500 +vn -0.056500 0.989000 0.136300 +vn -0.104300 0.989000 0.104300 +vn -0.966600 0.256300 0.000000 +vn -0.136300 0.989000 0.056500 +vn 0.819300 -0.462100 0.339400 +vn 0.575200 -0.782600 0.238200 +vn 0.622500 -0.782600 0.000000 +vn 0.893000 -0.256300 0.369900 +vn 0.886800 -0.462100 0.000000 +vn 0.294900 -0.947700 0.122200 +vn 0.319200 -0.947700 0.000000 +vn 0.683500 -0.256300 0.683500 +vn 0.627100 -0.462100 0.627100 +vn 0.440200 -0.782600 0.440200 +vn 0.225700 -0.947700 0.225700 +vn 0.339400 -0.462100 0.819300 +vn 0.238200 -0.782600 0.575200 +vn 0.369900 -0.256300 0.893000 +vn 0.122200 -0.947700 0.294900 +vn 0.000000 -0.462100 0.886800 +vn 0.000000 -0.782600 0.622500 +vn 0.000000 -0.256300 0.966600 +vn 0.000000 -0.947700 0.319200 +vn -0.369900 -0.256300 0.893000 +vn -0.339400 -0.462100 0.819300 +vn -0.238200 -0.782600 0.575200 +vn -0.122200 -0.947700 0.294900 +vn -0.683500 -0.256300 0.683500 +vn -0.627100 -0.462100 0.627100 +vn -0.440200 -0.782600 0.440200 +vn -0.225700 -0.947700 0.225700 +vn -0.819300 -0.462100 0.339400 +vn -0.575200 -0.782600 0.238200 +vn -0.893000 -0.256300 0.369900 +vn -0.294900 -0.947700 0.122200 +vn -0.886800 -0.462100 0.000000 +vn -0.622500 -0.782600 0.000000 +vn -0.966600 -0.256300 0.000000 +vn -0.319200 -0.947700 0.000000 +vn -0.893000 -0.256300 -0.369900 +vn -0.819300 -0.462100 -0.339400 +vn -0.575200 -0.782600 -0.238200 +vn -0.294900 -0.947700 -0.122200 +vn -0.440200 -0.782600 -0.440200 +vn -0.225700 -0.947700 -0.225700 +vn -0.627100 -0.462100 -0.627100 +vn -0.683500 -0.256300 -0.683500 +vn -0.339400 -0.462100 -0.819300 +vn -0.238200 -0.782600 -0.575200 +vn -0.369900 -0.256300 -0.893000 +vn -0.122200 -0.947700 -0.294900 +vn 0.000000 -0.256300 -0.966600 +vn 0.000000 -0.462100 -0.886800 +vn 0.000000 -0.782600 -0.622500 +vn 0.000000 -0.947700 -0.319200 +vn 0.369900 -0.256300 -0.893000 +vn 0.339400 -0.462100 -0.819300 +vn 0.238200 -0.782600 -0.575200 +vn 0.122200 -0.947700 -0.294900 +vn 0.627100 -0.462100 -0.627100 +vn 0.440200 -0.782600 -0.440200 +vn 0.683500 -0.256300 -0.683500 +vn 0.225700 -0.947700 -0.225700 +vn 0.819300 -0.462100 -0.339400 +vn 0.575200 -0.782600 -0.238200 +vn 0.893000 -0.256300 -0.369900 +vn 0.294900 -0.947700 -0.122200 +vn 0.136300 -0.989000 0.056500 +vn 0.104300 -0.989000 0.104300 +vn 0.056500 -0.989000 0.136300 +vn 0.000000 -0.989000 0.147500 +vn -0.056500 -0.989000 0.136300 +vn -0.104300 -0.989000 0.104300 +vn -0.136300 -0.989000 0.056500 +vn -0.147500 -0.989000 0.000000 +vn -0.136300 -0.989000 -0.056500 +vn -0.104300 -0.989000 -0.104300 +vn -0.056500 -0.989000 -0.136300 +vn 0.000000 -0.989000 -0.147500 +vn 0.056500 -0.989000 -0.136300 +vn 0.104300 -0.989000 -0.104300 +vn 0.966600 -0.256300 0.000000 +vn 0.136300 -0.989000 -0.056500 +vn 0.147500 -0.989000 0.000000 +vn -0.683500 0.256300 -0.683500 +vn 0.893000 0.256300 -0.369900 +vn 0.893000 0.256300 0.369900 +vn -0.369900 0.256300 0.893000 +s off +f 48/1/1 42/2/1 47/3/1 +f 88/1/2 86/2/2 87/3/2 +f 92/1/3 90/2/3 91/3/3 +f 96/1/4 94/2/4 95/3/4 +f 100/1/5 98/2/5 99/3/5 +f 101/4/6 104/1/6 102/2/6 +f 105/4/7 108/1/7 106/2/7 +f 112/1/8 110/2/8 111/3/8 +f 159/3/9 154/2/9 160/1/9 +f 199/3/10 198/2/10 200/1/10 +f 203/3/11 202/2/11 204/1/11 +f 207/3/12 206/2/12 208/1/12 +f 211/3/13 210/2/13 212/1/13 +f 215/3/14 214/2/14 216/1/14 +f 219/3/15 218/2/15 220/1/15 +f 221/4/16 223/3/16 222/2/16 +f 21/4/1 48/1/1 47/3/1 +f 85/4/2 88/1/2 87/3/2 +f 89/4/3 92/1/3 91/3/3 +f 93/4/4 96/1/4 95/3/4 +f 97/4/5 100/1/5 99/3/5 +f 103/3/6 101/4/6 102/2/6 +f 107/3/7 105/4/7 106/2/7 +f 109/4/8 112/1/8 111/3/8 +f 133/4/9 159/3/9 160/1/9 +f 197/4/10 199/3/10 200/1/10 +f 201/4/11 203/3/11 204/1/11 +f 205/4/12 207/3/12 208/1/12 +f 209/4/13 211/3/13 212/1/13 +f 213/4/14 215/3/14 216/1/14 +f 217/4/15 219/3/15 220/1/15 +f 224/1/16 221/4/16 222/2/16 +s 1 +f 2/5/17 6/6/18 7/7/19 +f 3/8/20 7/7/19 8/9/21 +f 1/10/22 5/11/23 6/6/18 +f 8/9/21 7/7/19 11/12/24 +f 6/6/18 5/11/23 9/13/25 +f 6/6/18 10/14/26 11/12/24 +f 10/5/26 14/6/27 15/7/28 +f 11/8/24 15/7/28 16/9/29 +f 9/10/25 13/11/30 14/6/27 +f 14/6/27 18/14/31 19/12/32 +f 15/7/28 19/12/32 20/15/33 +f 14/6/27 13/11/30 17/13/34 +f 19/8/32 24/7/35 25/9/36 +f 17/10/34 22/11/37 23/6/38 +f 19/8/32 18/5/31 23/6/38 +f 24/7/35 28/12/39 29/15/40 +f 22/11/37 26/13/41 27/14/42 +f 23/6/38 27/14/42 28/12/39 +f 27/5/42 31/6/43 32/7/44 +f 29/2/40 28/8/39 32/7/44 +f 26/10/41 30/11/45 31/6/43 +f 31/6/43 35/14/46 36/12/47 +f 32/7/44 36/12/47 37/15/48 +f 30/11/45 34/13/49 35/14/46 +f 37/2/48 36/8/47 40/7/50 +f 34/10/49 38/11/51 39/6/52 +f 36/8/47 35/5/46 39/6/52 +f 39/6/52 38/11/51 43/13/53 +f 39/6/52 44/14/54 45/12/55 +f 40/7/50 45/12/55 46/15/56 +f 45/8/55 44/5/54 51/6/57 +f 45/8/55 52/7/58 53/9/59 +f 43/10/53 50/11/60 51/6/57 +f 52/7/58 59/12/61 60/15/62 +f 50/11/60 57/13/63 58/14/64 +f 51/6/57 58/14/64 59/12/61 +f 60/2/62 59/8/61 66/7/65 +f 57/10/63 64/11/66 65/6/67 +f 58/5/64 65/6/67 66/7/65 +f 66/7/65 65/6/67 72/14/68 +f 66/7/65 73/12/69 74/15/70 +f 64/11/66 71/13/71 72/14/68 +f 72/5/68 79/6/72 80/7/73 +f 73/8/69 80/7/73 81/9/74 +f 71/10/71 78/11/75 79/6/72 +f 1/10/22 83/1/76 82/16/77 +f 82/16/77 77/17/78 9/13/25 +f 9/10/25 77/1/78 76/16/79 +f 13/11/30 76/16/79 75/17/80 +f 75/1/80 84/16/81 22/11/37 +f 22/11/37 84/16/81 70/17/82 +f 70/1/82 69/16/83 30/11/45 +f 69/16/83 68/17/84 34/13/49 +f 68/1/84 63/16/85 38/11/51 +f 63/16/85 62/17/86 43/13/53 +f 62/1/86 61/16/87 50/11/60 +f 61/16/87 56/17/88 57/13/63 +f 56/1/88 55/16/89 64/11/66 +f 55/16/89 54/17/90 71/13/71 +f 80/7/73 3/12/20 4/15/91 +f 78/11/75 1/13/22 2/14/17 +f 71/10/71 54/1/90 49/16/92 +f 78/11/75 49/16/92 83/17/76 +f 79/6/72 2/14/17 3/12/20 +f 119/7/93 118/6/94 114/5/95 +f 120/9/96 119/7/93 115/8/97 +f 118/6/94 117/11/98 113/10/99 +f 124/15/100 123/12/101 119/7/93 +f 118/6/94 122/14/102 121/13/103 +f 123/12/101 122/14/102 118/6/94 +f 127/7/104 126/6/105 122/5/102 +f 128/9/106 127/7/104 123/8/101 +f 126/6/105 125/11/107 121/10/103 +f 127/7/104 131/12/108 130/14/109 +f 132/15/110 131/12/108 127/7/104 +f 130/14/109 129/13/111 125/11/107 +f 137/9/112 136/7/113 131/8/108 +f 135/6/114 134/11/115 129/10/111 +f 131/8/108 136/7/113 135/6/114 +f 141/15/116 140/12/117 136/7/113 +f 135/6/114 139/14/118 138/13/119 +f 140/12/117 139/14/118 135/6/114 +f 144/7/120 143/6/121 139/5/118 +f 145/9/122 144/7/120 140/8/117 +f 143/6/121 142/11/123 138/10/119 +f 148/12/124 147/14/125 143/6/121 +f 149/15/126 148/12/124 144/7/120 +f 143/6/121 147/14/125 146/13/127 +f 149/2/126 153/9/128 152/7/129 +f 147/5/125 151/6/130 150/11/131 +f 148/8/124 152/7/129 151/6/130 +f 151/6/130 156/14/132 155/13/133 +f 152/7/129 157/12/134 156/14/132 +f 153/9/128 158/15/135 157/12/134 +f 157/8/134 164/7/136 163/6/137 +f 158/2/135 165/9/138 164/7/136 +f 156/5/132 163/6/137 162/11/139 +f 172/15/140 171/12/141 164/7/136 +f 170/14/142 169/13/143 162/11/139 +f 171/12/141 170/14/142 163/6/137 +f 172/2/140 179/9/144 178/7/145 +f 177/6/146 176/11/147 169/10/143 +f 178/7/145 177/6/146 170/5/142 +f 185/12/148 184/14/149 177/6/146 +f 186/15/150 185/12/148 178/7/145 +f 184/14/149 183/13/151 176/11/147 +f 192/7/152 191/6/153 184/5/149 +f 193/9/154 192/7/152 185/8/148 +f 191/6/153 190/11/155 183/10/151 +f 113/10/99 117/11/98 194/16/156 +f 117/11/98 121/13/103 189/17/157 +f 121/10/103 125/11/107 188/16/158 +f 125/11/107 129/13/111 187/17/159 +f 134/11/115 196/16/160 187/1/159 +f 134/11/115 138/13/119 182/17/161 +f 142/11/123 181/16/162 182/1/161 +f 146/13/127 180/17/163 181/16/162 +f 150/11/131 175/16/164 180/1/163 +f 155/13/133 174/17/165 175/16/164 +f 162/11/139 173/16/166 174/1/165 +f 169/13/143 168/17/167 173/16/166 +f 176/11/147 167/16/168 168/1/167 +f 183/13/151 166/17/169 167/16/168 +f 116/15/170 115/12/97 192/7/152 +f 191/6/153 114/14/95 113/13/99 +f 190/11/155 161/16/171 166/1/169 +f 190/11/155 113/13/99 195/17/172 +f 115/12/97 114/14/95 191/6/153 +f 3/8/20 2/5/17 7/7/19 +f 4/2/91 3/8/20 8/9/21 +f 2/5/17 1/10/22 6/6/18 +f 12/15/173 8/9/21 11/12/24 +f 10/14/26 6/6/18 9/13/25 +f 7/7/19 6/6/18 11/12/24 +f 11/8/24 10/5/26 15/7/28 +f 12/2/173 11/8/24 16/9/29 +f 10/5/26 9/10/25 14/6/27 +f 15/7/28 14/6/27 19/12/32 +f 16/9/29 15/7/28 20/15/33 +f 18/14/31 14/6/27 17/13/34 +f 20/2/33 19/8/32 25/9/36 +f 18/5/31 17/10/34 23/6/38 +f 24/7/35 19/8/32 23/6/38 +f 25/9/36 24/7/35 29/15/40 +f 23/6/38 22/11/37 27/14/42 +f 24/7/35 23/6/38 28/12/39 +f 28/8/39 27/5/42 32/7/44 +f 33/9/174 29/2/40 32/7/44 +f 27/5/42 26/10/41 31/6/43 +f 32/7/44 31/6/43 36/12/47 +f 33/9/174 32/7/44 37/15/48 +f 31/6/43 30/11/45 35/14/46 +f 41/9/175 37/2/48 40/7/50 +f 35/5/46 34/10/49 39/6/52 +f 40/7/50 36/8/47 39/6/52 +f 44/14/54 39/6/52 43/13/53 +f 40/7/50 39/6/52 45/12/55 +f 41/9/175 40/7/50 46/15/56 +f 52/7/58 45/8/55 51/6/57 +f 46/2/56 45/8/55 53/9/59 +f 44/5/54 43/10/53 51/6/57 +f 53/9/59 52/7/58 60/15/62 +f 51/6/57 50/11/60 58/14/64 +f 52/7/58 51/6/57 59/12/61 +f 67/9/176 60/2/62 66/7/65 +f 58/5/64 57/10/63 65/6/67 +f 59/8/61 58/5/64 66/7/65 +f 73/12/69 66/7/65 72/14/68 +f 67/9/176 66/7/65 74/15/70 +f 65/6/67 64/11/66 72/14/68 +f 73/8/69 72/5/68 80/7/73 +f 74/2/70 73/8/69 81/9/74 +f 72/5/68 71/10/71 79/6/72 +f 5/11/23 1/10/22 82/16/77 +f 5/11/23 82/16/77 9/13/25 +f 13/11/30 9/10/25 76/16/79 +f 17/13/34 13/11/30 75/17/80 +f 17/10/34 75/1/80 22/11/37 +f 26/13/41 22/11/37 70/17/82 +f 26/10/41 70/1/82 30/11/45 +f 30/11/45 69/16/83 34/13/49 +f 34/10/49 68/1/84 38/11/51 +f 38/11/51 63/16/85 43/13/53 +f 43/10/53 62/1/86 50/11/60 +f 50/11/60 61/16/87 57/13/63 +f 57/10/63 56/1/88 64/11/66 +f 64/11/66 55/16/89 71/13/71 +f 81/9/74 80/7/73 4/15/91 +f 79/6/72 78/11/75 2/14/17 +f 78/11/75 71/10/71 49/16/92 +f 1/13/22 78/11/75 83/17/76 +f 80/7/73 79/6/72 3/12/20 +f 115/8/97 119/7/93 114/5/95 +f 116/2/170 120/9/96 115/8/97 +f 114/5/95 118/6/94 113/10/99 +f 120/9/96 124/15/100 119/7/93 +f 117/11/98 118/6/94 121/13/103 +f 119/7/93 123/12/101 118/6/94 +f 123/8/101 127/7/104 122/5/102 +f 124/2/100 128/9/106 123/8/101 +f 122/5/102 126/6/105 121/10/103 +f 126/6/105 127/7/104 130/14/109 +f 128/9/106 132/15/110 127/7/104 +f 126/6/105 130/14/109 125/11/107 +f 132/2/110 137/9/112 131/8/108 +f 130/5/109 135/6/114 129/10/111 +f 130/5/109 131/8/108 135/6/114 +f 137/9/112 141/15/116 136/7/113 +f 134/11/115 135/6/114 138/13/119 +f 136/7/113 140/12/117 135/6/114 +f 140/8/117 144/7/120 139/5/118 +f 141/2/116 145/9/122 140/8/117 +f 139/5/118 143/6/121 138/10/119 +f 144/7/120 148/12/124 143/6/121 +f 145/9/122 149/15/126 144/7/120 +f 142/11/123 143/6/121 146/13/127 +f 148/8/124 149/2/126 152/7/129 +f 146/10/127 147/5/125 150/11/131 +f 147/5/125 148/8/124 151/6/130 +f 150/11/131 151/6/130 155/13/133 +f 151/6/130 152/7/129 156/14/132 +f 152/7/129 153/9/128 157/12/134 +f 156/5/132 157/8/134 163/6/137 +f 157/8/134 158/2/135 164/7/136 +f 155/10/133 156/5/132 162/11/139 +f 165/9/138 172/15/140 164/7/136 +f 163/6/137 170/14/142 162/11/139 +f 164/7/136 171/12/141 163/6/137 +f 171/8/141 172/2/140 178/7/145 +f 170/5/142 177/6/146 169/10/143 +f 171/8/141 178/7/145 170/5/142 +f 178/7/145 185/12/148 177/6/146 +f 179/9/144 186/15/150 178/7/145 +f 177/6/146 184/14/149 176/11/147 +f 185/8/148 192/7/152 184/5/149 +f 186/2/150 193/9/154 185/8/148 +f 184/5/149 191/6/153 183/10/151 +f 195/1/172 113/10/99 194/16/156 +f 194/16/156 117/11/98 189/17/157 +f 189/1/157 121/10/103 188/16/158 +f 188/16/158 125/11/107 187/17/159 +f 129/10/111 134/11/115 187/1/159 +f 196/16/160 134/11/115 182/17/161 +f 138/10/119 142/11/123 182/1/161 +f 142/11/123 146/13/127 181/16/162 +f 146/10/127 150/11/131 180/1/163 +f 150/11/131 155/13/133 175/16/164 +f 155/10/133 162/11/139 174/1/165 +f 162/11/139 169/13/143 173/16/166 +f 169/10/143 176/11/147 168/1/167 +f 176/11/147 183/13/151 167/16/168 +f 193/9/154 116/15/170 192/7/152 +f 190/11/155 191/6/153 113/13/99 +f 183/10/151 190/11/155 166/1/169 +f 161/16/171 190/11/155 195/17/172 +f 192/7/152 115/12/97 191/6/153 +o Capsule +v 0.311409 0.125000 -0.751807 +v 0.000000 0.125000 -0.813750 +v 0.000000 0.250000 -1.085000 +v 0.000000 1.740000 -0.922250 +v 0.415212 0.250000 -1.002409 +v 0.352930 1.740000 -0.852048 +v 0.767211 0.250000 -0.767211 +v 0.652129 1.740000 -0.652129 +v 1.002409 0.250000 -0.415212 +v 0.852048 1.740000 -0.352930 +v 1.085000 0.250000 0.000000 +v 0.922250 1.740000 0.000000 +v 1.002409 0.250000 0.415212 +v 0.852048 1.740000 0.352930 +v 0.767211 0.250000 0.767211 +v 0.652129 1.740000 0.652129 +v 0.415212 0.250000 1.002409 +v 0.352930 1.740000 0.852048 +v 0.000000 0.250000 1.085000 +v 0.000000 1.740000 0.922250 +v -0.415211 0.250000 1.002409 +v -0.352930 1.740000 0.852048 +v -0.767211 0.250000 0.767211 +v -0.652129 1.740000 0.652129 +v -1.002409 0.250000 0.415212 +v -0.852048 1.740000 0.352930 +v -1.085000 0.250000 -0.000000 +v -0.922250 1.740000 -0.000000 +v -1.002409 0.250000 -0.415212 +v -0.852048 1.740000 -0.352930 +v -0.767211 0.250000 -0.767211 +v -0.652129 1.740000 -0.652129 +v -0.415211 0.250000 -1.002410 +v -0.352929 1.740000 -0.852048 +v 0.575408 0.125000 -0.575408 +v 0.751807 0.125000 -0.311409 +v 0.813750 0.125000 0.000000 +v 0.751807 0.125000 0.311409 +v 0.575408 0.125000 0.575408 +v 0.311409 0.125000 0.751807 +v 0.000000 0.125000 0.813750 +v -0.311408 0.125000 0.751807 +v -0.575408 0.125000 0.575408 +v -0.751807 0.125000 0.311409 +v -0.813750 0.125000 -0.000000 +v -0.751807 0.125000 -0.311409 +v -0.575408 0.125000 -0.575408 +v -0.311408 0.125000 -0.751807 +v -0.103803 0.000000 -0.250602 +v 0.000000 0.000000 -0.271250 +v -0.191803 0.000000 -0.191803 +v -0.250602 0.000000 -0.103803 +v -0.271250 0.000000 0.000000 +v -0.250602 0.000000 0.103803 +v -0.191803 0.000000 0.191803 +v -0.103803 0.000000 0.250602 +v 0.000000 0.000000 0.271250 +v 0.103803 0.000000 0.250602 +v 0.191803 0.000000 0.191803 +v 0.250602 0.000000 0.103803 +v 0.271250 0.000000 0.000000 +v 0.250602 0.000000 -0.103803 +v 0.191803 0.000000 -0.191803 +v 0.103803 0.000000 -0.250602 +v 0.207606 2.115000 -0.501205 +v 0.000000 2.115000 -0.542500 +v 0.383605 2.115000 -0.383605 +v 0.501205 2.115000 -0.207606 +v 0.542500 2.115000 0.000000 +v 0.501205 2.115000 0.207606 +v 0.383605 2.115000 0.383605 +v 0.207606 2.115000 0.501205 +v 0.000000 2.115000 0.542500 +v -0.207606 2.115000 0.501205 +v -0.383605 2.115000 0.383606 +v -0.501205 2.115000 0.207606 +v -0.542500 2.115000 -0.000000 +v -0.501205 2.115000 -0.207606 +v -0.383605 2.115000 -0.383606 +v -0.207605 2.115000 -0.501205 +v 0.207606 2.240000 -0.501205 +v 0.000000 2.240000 -0.542500 +v 0.383605 2.240000 -0.383605 +v 0.501205 2.240000 -0.207606 +v 0.542500 2.240000 0.000000 +v 0.501205 2.240000 0.207606 +v 0.383605 2.240000 0.383605 +v 0.207606 2.240000 0.501205 +v 0.000000 2.240000 0.542500 +v -0.207606 2.240000 0.501205 +v -0.383605 2.240000 0.383606 +v -0.501205 2.240000 0.207606 +v -0.542500 2.240000 -0.000000 +v -0.501205 2.240000 -0.207606 +v -0.383605 2.240000 -0.383606 +v -0.207606 2.240000 -0.501205 +v 0.155704 2.240000 -0.375903 +v 0.000000 2.240000 -0.406875 +v 0.287704 2.240000 -0.287704 +v 0.375904 2.240000 -0.155704 +v 0.406875 2.240000 0.000000 +v 0.375904 2.240000 0.155704 +v 0.287704 2.240000 0.287704 +v 0.155704 2.240000 0.375903 +v 0.000000 2.240000 0.406875 +v -0.155704 2.240000 0.375904 +v -0.287704 2.240000 0.287704 +v -0.375903 2.240000 0.155704 +v -0.406875 2.240000 -0.000000 +v -0.375903 2.240000 -0.155704 +v -0.287704 2.240000 -0.287704 +v -0.155704 2.240000 -0.375904 +v 0.155704 2.115000 -0.375903 +v 0.000000 2.115000 -0.406875 +v 0.287704 2.115000 -0.287704 +v 0.375904 2.115000 -0.155704 +v 0.406875 2.115000 0.000000 +v 0.375904 2.115000 0.155704 +v 0.287704 2.115000 0.287704 +v 0.155704 2.115000 0.375903 +v 0.000000 2.115000 0.406875 +v -0.155704 2.115000 0.375904 +v -0.287704 2.115000 0.287704 +v -0.375903 2.115000 0.155704 +v -0.406875 2.115000 -0.000000 +v -0.375903 2.115000 -0.155704 +v -0.287704 2.115000 -0.287704 +v -0.155704 2.115000 -0.375904 +vt 0.080357 0.666667 +vt 0.071429 0.705882 +vt 0.053571 0.705882 +vt 0.267857 0.666667 +vt 0.258929 0.705882 +vt 0.241071 0.705882 +vt 0.053571 0.666667 +vt 0.044643 0.705882 +vt 0.026786 0.705882 +vt 0.241071 0.666667 +vt 0.232143 0.705882 +vt 0.214286 0.705882 +vt 0.026786 0.666667 +vt 0.017857 0.705882 +vt -0.000000 0.705882 +vt 0.214286 0.666667 +vt 0.205357 0.705882 +vt 0.187500 0.705882 +vt 0.428571 0.666667 +vt 0.419643 0.705882 +vt 0.401786 0.705882 +vt 0.160714 0.666667 +vt 0.187500 0.666667 +vt 0.178571 0.705882 +vt 0.401786 0.666667 +vt 0.392857 0.705882 +vt 0.375000 0.705882 +vt 0.151786 0.705882 +vt 0.133929 0.705882 +vt 0.375000 0.666667 +vt 0.366071 0.705882 +vt 0.348214 0.705882 +vt 0.133929 0.666667 +vt 0.125000 0.705882 +vt 0.107143 0.705882 +vt 0.321429 0.666667 +vt 0.312500 0.705882 +vt 0.294643 0.705882 +vt 0.348214 0.666667 +vt 0.339286 0.705882 +vt 0.107143 0.666667 +vt 0.098214 0.705882 +vt 0.080357 0.705882 +vt 0.294643 0.666667 +vt 0.285714 0.705882 +vt 0.267857 0.705882 +vt 0.523883 0.635403 +vt 0.573747 0.708572 +vt 0.552128 0.947248 +vt -0.000000 0.666667 +vt 0.160714 0.705882 +vt 0.321429 0.705882 +vt 0.523883 0.972942 +vt 0.443445 0.899772 +vt 0.493310 0.972942 +vt 0.465064 0.947248 +vt 0.431746 0.837742 +vt 0.465064 0.661096 +vt 0.431746 0.770602 +vt 0.443446 0.708572 +vt 0.493310 0.635403 +vt 0.552128 0.661096 +vt 0.585447 0.770602 +vt 0.585447 0.837743 +vt 0.573747 0.899772 +vt 0.053571 0.843137 +vt 0.035714 1.000000 +vt 0.017857 1.000000 +vt 0.062500 0.745098 +vt 0.008929 0.843137 +vt 0.741071 0.470588 +vt 0.696429 0.470588 +vt 0.687500 0.000000 +vt 0.678571 0.470588 +vt 0.633929 0.470588 +vt 0.625000 -0.000000 +vt 0.616071 0.470588 +vt 0.571429 0.470588 +vt 0.562500 0.000000 +vt -0.000000 0.745098 +vt 0.553571 0.470588 +vt 0.508929 0.470588 +vt 0.491071 0.470588 +vt 0.446429 0.470588 +vt 0.437500 0.000000 +vt 0.428571 0.470588 +vt 0.383929 0.470588 +vt 0.375000 -0.000000 +vt 0.366071 0.470588 +vt 0.321429 0.470588 +vt 0.312500 0.000000 +vt 0.303571 0.470588 +vt 0.258929 0.470588 +vt 0.250000 -0.000000 +vt 0.241071 0.470588 +vt 0.196429 0.470588 +vt 0.187500 0.000000 +vt 0.178571 0.470588 +vt 0.133929 0.470588 +vt 0.125000 -0.000000 +vt 0.116071 0.470588 +vt 0.071429 0.470588 +vt 0.062500 -0.000000 +vt 0.053571 0.470588 +vt 0.008929 0.470588 +vt -0.000000 -0.000000 +vt 0.158743 0.925461 +vt 0.087137 0.956740 +vt 0.144499 0.768210 +vt 0.991071 0.470588 +vt 0.946429 0.470588 +vt 0.937500 0.000000 +vt 0.928571 0.470588 +vt 0.883929 0.470588 +vt 0.875000 -0.000000 +vt 0.803571 0.470588 +vt 0.794643 0.627451 +vt 0.767857 0.627451 +vt 0.812500 0.000000 +vt 0.758929 0.470588 +vt 0.866071 0.470588 +vt 0.821429 0.470588 +vt 0.214286 0.627451 +vt 0.732143 0.627451 +vt 0.705357 0.627451 +vt 0.544643 0.627451 +vt 0.357143 0.627451 +vt 0.330357 0.627451 +vt 0.169643 0.627451 +vt 0.142857 0.627451 +vt 0.982143 0.627451 +vt 0.955357 0.627451 +vt 0.607143 0.627451 +vt 0.419643 0.627451 +vt 0.392857 0.627451 +vt 0.232143 0.627451 +vt 0.205357 0.627451 +vt 0.044643 0.627451 +vt 0.017857 0.627451 +vt 0.857143 0.627451 +vt 0.830357 0.627451 +vt 0.669643 0.627451 +vt 0.642857 0.627451 +vt 0.482143 0.627451 +vt 0.455357 0.627451 +vt 0.294643 0.627451 +vt 0.267857 0.627451 +vt 0.107143 0.627451 +vt 0.080357 0.627451 +vt 0.919643 0.627451 +vt 0.428571 0.627451 +vt 0.187500 0.627451 +vt 0.401786 0.627451 +vt 0.160714 0.627451 +vt 0.375000 0.627451 +vt 0.133929 0.627451 +vt 0.321429 0.627451 +vt 0.348214 0.627451 +vt 0.053571 0.627451 +vt 0.241071 0.627451 +vt 0.026786 0.627451 +vt 0.366071 0.745098 +vt 0.348214 0.745098 +vt 0.125000 0.745098 +vt 0.107143 0.745098 +vt 0.312500 0.745098 +vt 0.294643 0.745098 +vt 0.339286 0.745098 +vt 0.321429 0.745098 +vt 0.098214 0.745098 +vt 0.080357 0.745098 +vt 0.285714 0.745098 +vt 0.267857 0.745098 +vt 0.071429 0.745098 +vt 0.053571 0.745098 +vt 0.258929 0.745098 +vt 0.241071 0.745098 +vt 0.044643 0.745098 +vt 0.026786 0.745098 +vt 0.232143 0.745098 +vt 0.214286 0.745098 +vt 0.017857 0.745098 +vt 0.205357 0.745098 +vt 0.187500 0.745098 +vt 0.419643 0.745098 +vt 0.401786 0.745098 +vt 0.178571 0.745098 +vt 0.160714 0.745098 +vt 0.392857 0.745098 +vt 0.375000 0.745098 +vt 0.151786 0.745098 +vt 0.133929 0.745098 +vt 0.750000 -0.000000 +vt 0.500000 0.000000 +vt 0.072894 0.799489 +vt 0.087137 0.768210 +vt 0.105747 0.751282 +vt 0.125890 0.751282 +vt 0.158743 0.799489 +vt 0.166451 0.840358 +vt 0.166451 0.884593 +vt 0.144499 0.956740 +vt 0.125890 0.973669 +vt 0.105747 0.973669 +vt 0.072894 0.925461 +vt 0.065186 0.884593 +vt 0.065186 0.840357 +vt 1.000000 -0.000000 +vt 0.517857 0.627451 +vt 0.580357 0.627451 +vt 0.892857 0.627451 +vt -0.000000 0.627451 +vn 0.000000 1.000000 0.000000 +vn 0.000000 -0.942400 0.334600 +vn 0.000000 -0.991900 0.126900 +vn 0.048600 -0.991900 0.117200 +vn 0.418500 -0.908200 0.000000 +vn 0.334600 -0.942400 0.000000 +vn 0.309100 -0.942400 -0.128000 +vn 0.000000 0.419700 -0.907700 +vn 0.347300 0.419700 -0.838600 +vn 0.380400 0.108600 -0.918400 +vn 0.309100 -0.942400 0.128000 +vn 0.117200 -0.991900 0.048600 +vn 0.126900 -0.991900 0.000000 +vn 0.000000 -0.908200 -0.418500 +vn 0.000000 -0.942400 -0.334600 +vn -0.128000 -0.942400 -0.309100 +vn 0.641800 0.419700 -0.641800 +vn 0.702900 0.108600 -0.702900 +vn -0.309100 -0.942400 0.128000 +vn -0.117200 -0.991900 0.048600 +vn -0.089700 -0.991900 0.089700 +vn -0.295900 -0.908200 -0.295900 +vn -0.236600 -0.942400 -0.236600 +vn -0.309100 -0.942400 -0.128000 +vn 0.838600 0.419700 -0.347300 +vn 0.918400 0.108600 -0.380400 +vn -0.089700 -0.991900 -0.089700 +vn -0.295900 -0.908200 0.295900 +vn -0.386700 -0.908200 0.160200 +vn 0.907700 0.419700 0.000000 +vn 0.128000 -0.942400 -0.309100 +vn 0.048600 -0.991900 -0.117200 +vn 0.000000 -0.991900 -0.126900 +vn 0.160200 -0.908200 0.386700 +vn 0.000000 -0.908200 0.418500 +vn 0.838600 0.419700 0.347300 +vn 0.918400 0.108600 0.380400 +vn 0.160200 -0.908200 -0.386700 +vn 0.641800 0.419700 0.641800 +vn 0.702900 0.108600 0.702900 +vn 0.128000 -0.942400 0.309100 +vn 0.089700 -0.991900 0.089700 +vn 0.386700 -0.908200 0.160200 +vn 0.347300 0.419700 0.838600 +vn 0.380400 0.108600 0.918400 +vn -0.236600 -0.942400 0.236600 +vn -0.048600 -0.991900 0.117200 +vn 0.295900 -0.908200 -0.295900 +vn 0.236600 -0.942400 -0.236600 +vn 0.000000 0.419700 0.907700 +vn 0.000000 0.108600 0.994100 +vn -0.117200 -0.991900 -0.048600 +vn -0.126900 -0.991900 0.000000 +vn -0.160200 -0.908200 -0.386700 +vn -0.347300 0.419700 0.838600 +vn -0.380400 0.108600 0.918400 +vn 0.117200 -0.991900 -0.048600 +vn -0.418500 -0.908200 -0.000000 +vn -0.334600 -0.942400 0.000000 +vn -0.641800 0.419700 0.641800 +vn -0.702900 0.108600 0.702900 +vn 0.236600 -0.942400 0.236600 +vn -0.160200 -0.908200 0.386700 +vn -0.128000 -0.942400 0.309100 +vn -0.838600 0.419700 0.347300 +vn -0.918400 0.108600 0.380400 +vn 0.295900 -0.908200 0.295900 +vn -0.907700 0.419700 0.000000 +vn -0.994100 0.108600 -0.000000 +vn 0.386700 -0.908200 -0.160200 +vn -0.838600 0.419700 -0.347300 +vn -0.918400 0.108600 -0.380400 +vn -0.641800 0.419700 -0.641800 +vn -0.702900 0.108600 -0.702900 +vn -0.347300 0.419700 -0.838600 +vn -0.268900 0.711500 -0.649200 +vn -0.000000 0.711500 -0.702600 +vn -0.380400 0.108600 -0.918400 +vn -0.048600 -0.991900 -0.117200 +vn -0.386700 -0.908200 -0.160200 +vn 0.089700 -0.991900 -0.089700 +vn 1.000000 0.000000 -0.000000 +vn 0.923900 0.000000 0.382700 +vn 0.268900 0.711500 -0.649200 +vn 0.649200 0.711500 -0.268900 +vn 0.496800 0.711500 0.496800 +vn 0.268900 0.711500 0.649200 +vn -0.268900 0.711500 0.649200 +vn -0.496800 0.711500 0.496800 +vn -0.702600 0.711500 -0.000000 +vn -0.649200 0.711500 -0.268900 +vn 0.496800 0.711500 -0.496800 +vn 0.649200 0.711500 0.268900 +vn 0.000000 0.711500 0.702600 +vn -0.649200 0.711500 0.268900 +vn -0.496800 0.711500 -0.496800 +vn 0.702600 0.711500 0.000000 +vn -1.000000 0.000000 0.000000 +vn -0.923900 0.000000 -0.382700 +vn 0.707100 0.000000 0.707100 +vn -0.707100 0.000000 -0.707100 +vn 0.382700 0.000000 0.923900 +vn -0.382700 0.000000 -0.923900 +vn 0.000000 -0.000000 1.000000 +vn -0.000000 -0.000000 -1.000000 +vn 0.382700 0.000000 -0.923900 +vn -0.382700 -0.000000 0.923900 +vn 0.707100 0.000000 -0.707100 +vn -0.707100 -0.000000 0.707100 +vn 0.923900 0.000000 -0.382700 +vn -0.923900 0.000000 0.382700 +vn 0.000000 0.108600 -0.994100 +vn 0.994100 0.108600 0.000000 +s off +f 314/18/177 330/19/177 331/20/177 +f 307/21/177 323/22/177 324/23/177 +f 315/24/177 331/25/177 332/26/177 +f 308/27/177 324/28/177 325/29/177 +f 316/30/177 332/31/177 333/32/177 +f 309/33/177 325/34/177 326/35/177 +f 317/36/177 333/37/177 334/38/177 +f 311/39/177 310/40/177 326/41/177 +f 318/42/177 334/43/177 335/44/177 +f 311/39/177 327/45/177 328/46/177 +f 319/47/177 335/48/177 336/49/177 +f 312/50/177 328/51/177 329/52/177 +f 306/53/177 322/54/177 321/55/177 +f 306/53/177 320/56/177 336/57/177 +f 313/58/177 329/59/177 330/60/177 +f 305/61/177 321/62/177 323/63/177 +f 345/64/177 343/65/177 339/66/177 +f 315/24/177 314/18/177 331/20/177 +f 308/27/177 307/21/177 324/23/177 +f 316/30/177 315/24/177 332/26/177 +f 309/33/177 308/27/177 325/29/177 +f 317/67/177 316/30/177 333/32/177 +f 310/40/177 309/33/177 326/35/177 +f 318/42/177 317/36/177 334/38/177 +f 327/68/177 311/39/177 326/41/177 +f 319/47/177 318/42/177 335/44/177 +f 312/50/177 311/39/177 328/46/177 +f 320/56/177 319/47/177 336/49/177 +f 313/58/177 312/50/177 329/52/177 +f 305/61/177 306/53/177 321/55/177 +f 322/69/177 306/53/177 336/57/177 +f 314/18/177 313/58/177 330/60/177 +f 307/21/177 305/61/177 323/63/177 +f 339/66/177 337/70/177 351/71/177 +f 338/72/177 352/73/177 351/71/177 +f 351/71/177 350/74/177 347/75/177 +f 349/76/177 348/77/177 347/75/177 +f 347/75/177 346/78/177 345/64/177 +f 345/64/177 344/79/177 343/65/177 +f 343/65/177 342/80/177 341/81/177 +f 341/81/177 340/82/177 339/66/177 +f 337/70/177 338/72/177 351/71/177 +f 350/74/177 349/76/177 347/75/177 +f 347/75/177 345/64/177 339/66/177 +f 343/65/177 341/81/177 339/66/177 +f 339/66/177 351/71/177 347/75/177 +s 1 +f 265/83/178 281/84/179 282/85/180 +f 235/86/181 261/83/182 260/87/183 +f 228/88/184 230/89/185 229/90/186 +f 262/83/187 284/84/188 285/85/189 +f 227/86/190 226/83/191 272/87/192 +f 230/91/185 232/92/193 231/93/194 +f 268/83/195 278/84/196 279/85/197 +f 255/86/198 271/83/199 270/87/200 +f 232/94/193 234/95/201 233/96/202 +f 270/87/200 271/83/199 275/84/203 +f 247/97/204 249/86/205 268/83/195 +f 233/96/202 234/98/201 236/99/206 +f 225/83/207 288/84/208 274/85/209 +f 241/97/210 243/86/211 265/83/178 +f 236/100/206 238/101/212 237/102/213 +f 260/87/183 261/83/182 285/84/189 +f 229/86/214 225/83/207 226/87/191 +f 238/103/212 240/104/215 239/105/216 +f 264/83/217 282/84/180 283/85/218 +f 235/97/181 237/86/219 262/83/187 +f 240/106/215 242/107/220 241/108/221 +f 267/83/222 279/84/197 280/85/223 +f 231/86/224 259/83/225 225/87/207 +f 242/109/220 244/110/226 243/111/227 +f 270/83/200 276/84/228 277/85/229 +f 255/97/198 257/86/230 272/83/192 +f 244/112/226 246/113/231 245/114/232 +f 259/87/225 260/83/183 286/84/233 +f 251/86/234 269/83/235 268/87/195 +f 246/115/231 248/116/236 247/117/237 +f 263/83/238 283/84/218 284/85/188 +f 243/97/211 245/86/239 266/83/240 +f 248/118/236 250/119/241 249/120/242 +f 266/83/240 280/84/223 281/85/179 +f 237/97/219 239/86/243 263/83/238 +f 250/121/241 252/122/244 251/123/245 +f 282/124/180 278/125/196 286/126/233 +f 233/86/246 260/83/183 259/87/225 +f 252/127/244 254/128/247 253/129/248 +f 247/86/204 267/83/222 266/87/240 +f 269/83/235 277/84/229 278/85/196 +f 254/130/247 256/131/249 255/132/250 +f 258/133/251 304/134/252 290/135/253 +f 257/136/254 258/133/251 228/137/184 +f 256/138/249 258/139/251 257/136/254 +f 226/83/191 274/84/209 273/85/255 +f 241/86/210 264/83/217 263/87/238 +f 251/97/234 253/86/256 270/83/200 +f 259/83/225 287/84/257 288/85/208 +f 272/83/192 273/84/255 275/85/203 +f 293/140/258 309/33/258 310/40/259 +f 228/88/184 290/141/253 289/142/260 +f 236/99/206 234/98/201 292/143/261 +f 240/106/215 295/144/262 296/145/263 +f 246/115/231 298/146/264 299/147/265 +f 252/127/244 301/148/266 302/149/267 +f 234/95/201 232/94/193 291/150/268 +f 238/103/212 294/151/269 295/152/262 +f 244/112/226 297/153/270 298/154/264 +f 250/121/241 300/155/271 301/156/266 +f 256/138/249 303/157/272 304/158/252 +f 230/91/185 289/159/260 291/160/268 +f 236/100/206 293/161/273 294/162/269 +f 242/109/220 296/163/263 297/164/270 +f 248/118/236 299/165/265 300/166/271 +f 256/131/249 254/130/247 302/167/267 +f 301/168/274 317/36/274 318/42/275 +f 294/169/259 310/40/259 311/39/276 +f 302/170/275 318/42/275 319/47/277 +f 295/171/276 311/39/276 312/50/278 +f 303/172/277 319/47/277 320/56/279 +f 296/173/278 312/50/278 313/58/280 +f 290/174/281 306/53/281 305/61/282 +f 304/175/279 320/56/279 306/53/281 +f 297/165/280 313/58/280 314/18/283 +f 289/163/282 305/61/282 307/21/284 +f 298/166/283 314/18/283 315/24/285 +f 291/164/284 307/21/284 308/27/286 +f 299/176/285 315/24/285 316/30/287 +f 292/177/286 308/27/286 309/33/258 +f 300/178/287 316/30/287 317/67/274 +f 335/48/276 351/179/276 352/180/278 +f 328/51/279 344/181/279 345/182/281 +f 322/54/280 338/183/280 337/184/283 +f 336/57/278 352/185/278 338/186/280 +f 329/59/281 345/187/281 346/188/282 +f 321/62/283 337/189/283 339/190/285 +f 330/19/282 346/191/282 347/192/284 +f 323/22/285 339/193/285 340/194/287 +f 331/25/284 347/195/284 348/196/286 +f 324/28/287 340/197/287 341/198/274 +f 332/31/286 348/199/286 349/97/258 +f 325/34/274 341/200/274 342/201/275 +f 333/37/258 349/202/258 350/203/259 +f 326/41/275 342/204/275 343/205/277 +f 334/43/259 350/206/259 351/207/276 +f 327/45/277 343/208/277 344/209/279 +f 264/87/217 265/83/178 282/85/180 +f 233/97/246 235/86/181 260/87/183 +f 227/210/288 228/88/184 229/90/186 +f 261/87/182 262/83/187 285/85/189 +f 257/97/230 227/86/190 272/87/192 +f 229/90/186 230/91/185 231/93/194 +f 267/87/222 268/83/195 279/85/197 +f 253/97/256 255/86/198 270/87/200 +f 231/93/194 232/94/193 233/96/202 +f 276/85/228 270/87/200 275/84/203 +f 267/87/222 247/97/204 268/83/195 +f 235/211/289 233/96/202 236/99/206 +f 226/87/191 225/83/207 274/85/209 +f 264/87/217 241/97/210 265/83/178 +f 235/211/289 236/100/206 237/102/213 +f 286/85/233 260/87/183 285/84/189 +f 227/97/190 229/86/214 226/87/191 +f 237/102/213 238/103/212 239/105/216 +f 263/87/238 264/83/217 283/85/218 +f 261/87/182 235/97/181 262/83/187 +f 239/105/216 240/106/215 241/108/221 +f 266/87/240 267/83/222 280/85/223 +f 229/97/214 231/86/224 225/87/207 +f 241/108/221 242/109/220 243/111/227 +f 269/87/235 270/83/200 277/85/229 +f 271/87/199 255/97/198 272/83/192 +f 243/111/227 244/112/226 245/114/232 +f 287/85/257 259/87/225 286/84/233 +f 249/97/205 251/86/234 268/87/195 +f 245/114/232 246/115/231 247/117/237 +f 262/87/187 263/83/238 284/85/188 +f 265/87/178 243/97/211 266/83/240 +f 247/117/237 248/118/236 249/120/242 +f 265/87/178 266/83/240 281/85/179 +f 262/87/187 237/97/219 263/83/238 +f 249/120/242 250/121/241 251/123/245 +f 273/212/255 274/213/209 288/214/208 +f 288/214/208 287/215/257 273/212/255 +f 286/126/233 285/216/189 284/217/188 +f 284/217/188 283/218/218 286/126/233 +f 282/124/180 281/219/179 278/125/196 +f 280/220/223 279/221/197 278/125/196 +f 278/125/196 277/222/229 273/212/255 +f 276/223/228 275/224/203 273/212/255 +f 273/212/255 287/215/257 286/126/233 +f 286/126/233 283/218/218 282/124/180 +f 281/219/179 280/220/223 278/125/196 +f 277/222/229 276/223/228 273/212/255 +f 273/212/255 286/126/233 278/125/196 +f 231/97/224 233/86/246 259/87/225 +f 251/225/245 252/127/244 253/129/248 +f 245/97/239 247/86/204 266/87/240 +f 268/87/195 269/83/235 278/85/196 +f 253/129/248 254/130/247 255/132/250 +f 228/137/184 258/133/251 290/135/253 +f 227/210/288 257/136/254 228/137/184 +f 255/132/250 256/138/249 257/136/254 +f 272/87/192 226/83/191 273/85/255 +f 239/97/243 241/86/210 263/87/238 +f 269/87/235 251/97/234 270/83/200 +f 225/87/207 259/83/225 288/85/208 +f 271/87/199 272/83/192 275/85/203 +f 294/169/259 293/140/258 310/40/259 +f 230/89/185 228/88/184 289/142/260 +f 293/226/273 236/99/206 292/143/261 +f 242/107/220 240/106/215 296/145/263 +f 248/116/236 246/115/231 299/147/265 +f 254/128/247 252/127/244 302/149/267 +f 292/227/261 234/95/201 291/150/268 +f 240/104/215 238/103/212 295/152/262 +f 246/113/231 244/112/226 298/154/264 +f 252/122/244 250/121/241 301/156/266 +f 258/139/251 256/138/249 304/158/252 +f 232/92/193 230/91/185 291/160/268 +f 238/101/212 236/100/206 294/162/269 +f 244/110/226 242/109/220 297/164/270 +f 250/119/241 248/118/236 300/166/271 +f 303/228/272 256/131/249 302/167/267 +f 302/170/275 301/168/274 318/42/275 +f 295/171/276 294/169/259 311/39/276 +f 303/172/277 302/170/275 319/47/277 +f 296/173/278 295/171/276 312/50/278 +f 304/175/279 303/172/277 320/56/279 +f 297/165/280 296/173/278 313/58/280 +f 289/163/282 290/174/281 305/61/282 +f 290/174/281 304/175/279 306/53/281 +f 298/166/283 297/165/280 314/18/283 +f 291/164/284 289/163/282 307/21/284 +f 299/176/285 298/166/283 315/24/285 +f 292/177/286 291/164/284 308/27/286 +f 300/178/287 299/176/285 316/30/287 +f 293/140/258 292/177/286 309/33/258 +f 301/229/274 300/178/287 317/67/274 +f 336/49/278 335/48/276 352/180/278 +f 329/52/281 328/51/279 345/182/281 +f 321/55/283 322/54/280 337/184/283 +f 322/69/280 336/57/278 338/186/280 +f 330/60/282 329/59/281 346/188/282 +f 323/63/285 321/62/283 339/190/285 +f 331/20/284 330/19/282 347/192/284 +f 324/23/287 323/22/285 340/194/287 +f 332/26/286 331/25/284 348/196/286 +f 325/29/274 324/28/287 341/198/274 +f 333/32/258 332/31/286 349/97/258 +f 326/35/275 325/34/274 342/201/275 +f 334/38/259 333/37/258 350/203/259 +f 327/68/277 326/41/275 343/205/277 +f 335/44/276 334/43/259 351/207/276 +f 328/46/279 327/45/277 344/209/279 diff --git a/assets/hbm/sounds.json b/assets/hbm/sounds.json index 4a996a1c7..3682a81d9 100644 --- a/assets/hbm/sounds.json +++ b/assets/hbm/sounds.json @@ -32,6 +32,7 @@ "block.missileAssembly2": {"category": "block", "sounds": [{"name": "block/missileAssembly2", "stream": false}]}, "block.openDoor": {"category": "block", "sounds": ["block/door_open_1", "block/door_open_2"]}, "block.closeDoor": {"category": "block", "sounds": ["block/door_close_1", "block/door_close_2"]}, + "block.soyuzReady": {"category": "block", "sounds": [{"name": "block/soyuzReady", "stream": false}]}, "item.techBleep": {"category": "player", "sounds": [{"name": "tool/techBleep", "stream": false}]}, "item.techBoop": {"category": "player", "sounds": [{"name": "tool/techBoop", "stream": false}]}, diff --git a/assets/hbm/sounds/block/soyuzReady.ogg b/assets/hbm/sounds/block/soyuzReady.ogg new file mode 100644 index 000000000..7f9f03c98 Binary files /dev/null and b/assets/hbm/sounds/block/soyuzReady.ogg differ diff --git a/assets/hbm/textures/items/ingot_electronium.png b/assets/hbm/textures/items/ingot_electronium.png new file mode 100644 index 000000000..845a06fbe Binary files /dev/null and b/assets/hbm/textures/items/ingot_electronium.png differ diff --git a/assets/hbm/textures/items/ingot_electronium.png.mcmeta b/assets/hbm/textures/items/ingot_electronium.png.mcmeta new file mode 100644 index 000000000..de3267f0d --- /dev/null +++ b/assets/hbm/textures/items/ingot_electronium.png.mcmeta @@ -0,0 +1,3 @@ +{ + "animation": {} +} \ No newline at end of file diff --git a/assets/hbm/textures/items/pellet_advanced.png b/assets/hbm/textures/items/pellet_advanced.png index 6155ef86f..b73babcbf 100644 Binary files a/assets/hbm/textures/items/pellet_advanced.png and b/assets/hbm/textures/items/pellet_advanced.png differ diff --git a/assets/hbm/textures/models/CapeAyy.png b/assets/hbm/textures/models/capes/CapeAyy.png similarity index 100% rename from assets/hbm/textures/models/CapeAyy.png rename to assets/hbm/textures/models/capes/CapeAyy.png diff --git a/assets/hbm/textures/models/CapeDafnik.png b/assets/hbm/textures/models/capes/CapeDafnik.png similarity index 100% rename from assets/hbm/textures/models/CapeDafnik.png rename to assets/hbm/textures/models/capes/CapeDafnik.png diff --git a/assets/hbm/textures/models/CapeGasMask.png b/assets/hbm/textures/models/capes/CapeGasMask.png similarity index 100% rename from assets/hbm/textures/models/CapeGasMask.png rename to assets/hbm/textures/models/capes/CapeGasMask.png diff --git a/assets/hbm/textures/models/capes/CapeGodTM.png b/assets/hbm/textures/models/capes/CapeGodTM.png new file mode 100644 index 000000000..459608369 Binary files /dev/null and b/assets/hbm/textures/models/capes/CapeGodTM.png differ diff --git a/assets/hbm/textures/models/CapeHbm.png b/assets/hbm/textures/models/capes/CapeHbm.png similarity index 100% rename from assets/hbm/textures/models/CapeHbm.png rename to assets/hbm/textures/models/capes/CapeHbm.png diff --git a/assets/hbm/textures/models/CapeHbm2.png b/assets/hbm/textures/models/capes/CapeHbm2.png similarity index 100% rename from assets/hbm/textures/models/CapeHbm2.png rename to assets/hbm/textures/models/capes/CapeHbm2.png diff --git a/assets/hbm/textures/models/capes/CapeHbm3.png b/assets/hbm/textures/models/capes/CapeHbm3.png new file mode 100644 index 000000000..aa5f751b3 Binary files /dev/null and b/assets/hbm/textures/models/capes/CapeHbm3.png differ diff --git a/assets/hbm/textures/models/CapeHbm_old.png b/assets/hbm/textures/models/capes/CapeHbm_old.png similarity index 100% rename from assets/hbm/textures/models/CapeHbm_old.png rename to assets/hbm/textures/models/capes/CapeHbm_old.png diff --git a/assets/hbm/textures/models/CapeHoboy.png b/assets/hbm/textures/models/capes/CapeHoboy.png similarity index 100% rename from assets/hbm/textures/models/CapeHoboy.png rename to assets/hbm/textures/models/capes/CapeHoboy.png diff --git a/assets/hbm/textures/models/CapeHoboy_mk1.png b/assets/hbm/textures/models/capes/CapeHoboy_mk1.png similarity index 100% rename from assets/hbm/textures/models/CapeHoboy_mk1.png rename to assets/hbm/textures/models/capes/CapeHoboy_mk1.png diff --git a/assets/hbm/textures/models/CapeHoboy_mk2.png b/assets/hbm/textures/models/capes/CapeHoboy_mk2.png similarity index 100% rename from assets/hbm/textures/models/CapeHoboy_mk2.png rename to assets/hbm/textures/models/capes/CapeHoboy_mk2.png diff --git a/assets/hbm/textures/models/CapeLPkukin.png b/assets/hbm/textures/models/capes/CapeLPkukin.png similarity index 100% rename from assets/hbm/textures/models/CapeLPkukin.png rename to assets/hbm/textures/models/capes/CapeLPkukin.png diff --git a/assets/hbm/textures/models/CapeMaster.png b/assets/hbm/textures/models/capes/CapeMaster.png similarity index 100% rename from assets/hbm/textures/models/CapeMaster.png rename to assets/hbm/textures/models/capes/CapeMaster.png diff --git a/assets/hbm/textures/models/CapeMek.png b/assets/hbm/textures/models/capes/CapeMek.png similarity index 100% rename from assets/hbm/textures/models/CapeMek.png rename to assets/hbm/textures/models/capes/CapeMek.png diff --git a/assets/hbm/textures/models/CapeNostalgia.png b/assets/hbm/textures/models/capes/CapeNostalgia.png similarity index 100% rename from assets/hbm/textures/models/CapeNostalgia.png rename to assets/hbm/textures/models/capes/CapeNostalgia.png diff --git a/assets/hbm/textures/models/CapeNostalgia2.png b/assets/hbm/textures/models/capes/CapeNostalgia2.png similarity index 100% rename from assets/hbm/textures/models/CapeNostalgia2.png rename to assets/hbm/textures/models/capes/CapeNostalgia2.png diff --git a/assets/hbm/textures/models/CapeRadiation.png b/assets/hbm/textures/models/capes/CapeRadiation.png similarity index 100% rename from assets/hbm/textures/models/CapeRadiation.png rename to assets/hbm/textures/models/capes/CapeRadiation.png diff --git a/assets/hbm/textures/models/CapeRed.png b/assets/hbm/textures/models/capes/CapeRed.png similarity index 100% rename from assets/hbm/textures/models/CapeRed.png rename to assets/hbm/textures/models/capes/CapeRed.png diff --git a/assets/hbm/textures/models/CapeRed_old.png b/assets/hbm/textures/models/capes/CapeRed_old.png similarity index 100% rename from assets/hbm/textures/models/CapeRed_old.png rename to assets/hbm/textures/models/capes/CapeRed_old.png diff --git a/assets/hbm/textures/models/CapeSam.png b/assets/hbm/textures/models/capes/CapeSam.png similarity index 100% rename from assets/hbm/textures/models/CapeSam.png rename to assets/hbm/textures/models/capes/CapeSam.png diff --git a/assets/hbm/textures/models/CapeSchrabidium.png b/assets/hbm/textures/models/capes/CapeSchrabidium.png similarity index 100% rename from assets/hbm/textures/models/CapeSchrabidium.png rename to assets/hbm/textures/models/capes/CapeSchrabidium.png diff --git a/assets/hbm/textures/models/CapeShield.png b/assets/hbm/textures/models/capes/CapeShield.png similarity index 100% rename from assets/hbm/textures/models/CapeShield.png rename to assets/hbm/textures/models/capes/CapeShield.png diff --git a/assets/hbm/textures/models/CapeTemplate.png b/assets/hbm/textures/models/capes/CapeTemplate.png similarity index 100% rename from assets/hbm/textures/models/CapeTemplate.png rename to assets/hbm/textures/models/capes/CapeTemplate.png diff --git a/assets/hbm/textures/models/CapeTest.png b/assets/hbm/textures/models/capes/CapeTest.png similarity index 100% rename from assets/hbm/textures/models/CapeTest.png rename to assets/hbm/textures/models/capes/CapeTest.png diff --git a/assets/hbm/textures/models/CapeUnknown.png b/assets/hbm/textures/models/capes/CapeUnknown.png similarity index 100% rename from assets/hbm/textures/models/CapeUnknown.png rename to assets/hbm/textures/models/capes/CapeUnknown.png diff --git a/assets/hbm/textures/models/CapeVertice.png b/assets/hbm/textures/models/capes/CapeVertice.png similarity index 100% rename from assets/hbm/textures/models/CapeVertice.png rename to assets/hbm/textures/models/capes/CapeVertice.png diff --git a/assets/hbm/textures/models/CapeVertice_2.png b/assets/hbm/textures/models/capes/CapeVertice_2.png similarity index 100% rename from assets/hbm/textures/models/CapeVertice_2.png rename to assets/hbm/textures/models/capes/CapeVertice_2.png diff --git a/assets/hbm/textures/models/capes/CapeZippySqrl.png b/assets/hbm/textures/models/capes/CapeZippySqrl.png new file mode 100644 index 000000000..bbbaeb0b0 Binary files /dev/null and b/assets/hbm/textures/models/capes/CapeZippySqrl.png differ diff --git a/assets/hbm/textures/models/soyuz/bottomstage.png b/assets/hbm/textures/models/soyuz/bottomstage.png index 52a639707..4027e8da2 100644 Binary files a/assets/hbm/textures/models/soyuz/bottomstage.png and b/assets/hbm/textures/models/soyuz/bottomstage.png differ diff --git a/assets/hbm/textures/models/soyuz_chute.png b/assets/hbm/textures/models/soyuz_chute.png new file mode 100644 index 000000000..2a698aa83 Binary files /dev/null and b/assets/hbm/textures/models/soyuz_chute.png differ diff --git a/assets/hbm/textures/models/soyuz_lander.png b/assets/hbm/textures/models/soyuz_lander.png new file mode 100644 index 000000000..35fa559e8 Binary files /dev/null and b/assets/hbm/textures/models/soyuz_lander.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_leg.png b/assets/hbm/textures/models/soyuz_launcher/launcher_leg.png index d155b8f65..c45a2c56a 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_leg.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_leg.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_support.png b/assets/hbm/textures/models/soyuz_launcher/launcher_support.png index dfc487dae..42aa4d818 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_support.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_support.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_support_base.png b/assets/hbm/textures/models/soyuz_launcher/launcher_support_base.png index c1860af0e..9e90f5a9e 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_support_base.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_support_base.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_table.png b/assets/hbm/textures/models/soyuz_launcher/launcher_table.png index 94d8686fa..ff83356ea 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_table.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_table.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_tower.png b/assets/hbm/textures/models/soyuz_launcher/launcher_tower.png index 3bfcb8c0b..c9b22ae39 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_tower.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_tower.png differ diff --git a/assets/hbm/textures/models/soyuz_launcher/launcher_tower_base.png b/assets/hbm/textures/models/soyuz_launcher/launcher_tower_base.png index a504724ad..4b7ae349b 100644 Binary files a/assets/hbm/textures/models/soyuz_launcher/launcher_tower_base.png and b/assets/hbm/textures/models/soyuz_launcher/launcher_tower_base.png differ diff --git a/assets/hbm/textures/particle/particle_base.png b/assets/hbm/textures/particle/particle_base.png new file mode 100644 index 000000000..e3015051d Binary files /dev/null and b/assets/hbm/textures/particle/particle_base.png differ diff --git a/com/hbm/entity/missile/EntitySoyuz.java b/com/hbm/entity/missile/EntitySoyuz.java new file mode 100644 index 000000000..2368b2850 --- /dev/null +++ b/com/hbm/entity/missile/EntitySoyuz.java @@ -0,0 +1,142 @@ +package com.hbm.entity.missile; + +import java.util.List; + +import com.hbm.main.MainRegistry; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.entity.Entity; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.nbt.NBTTagList; +import net.minecraft.world.World; + +public class EntitySoyuz extends Entity { + + double acceleration = 0.00D; + public int mode; + + private ItemStack[] payload; + + public EntitySoyuz(World p_i1582_1_) { + super(p_i1582_1_); + this.ignoreFrustumCheck = true; + this.setSize(5.0F, 50.0F); + payload = new ItemStack[18]; + } + + @Override + public void onUpdate() { + + if(motionY < 2.0D) { + acceleration += 0.00025D; + motionY += acceleration; + } + + this.setLocationAndAngles(posX + this.motionX, posY + this.motionY, posZ + this.motionZ, 0, 0); + + if(!worldObj.isRemote) { + + //if(this.ticksExisted < 20) { + // ExplosionLarge.spawnShock(worldObj, posX, posY, posZ, 13 + rand.nextInt(3), 4 + rand.nextGaussian() * 2); + //} + } + + if(worldObj.isRemote) { + spawnExhaust(posX, posY, posZ); + spawnExhaust(posX + 2.75, posY, posZ); + spawnExhaust(posX - 2.75, posY, posZ); + spawnExhaust(posX, posY, posZ + 2.75); + spawnExhaust(posX, posY, posZ - 2.75); + } + + if(this.posY > 600) { + deployPayload(); + } + } + + private void spawnExhaust(double x, double y, double z) { + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "exhaust"); + data.setString("mode", "soyuz"); + data.setInteger("count", 2); + data.setDouble("width", worldObj.rand.nextDouble() * 0.35 - 0.7); + data.setDouble("posX", x); + data.setDouble("posY", y); + data.setDouble("posZ", z); + + MainRegistry.proxy.effectNT(data); + } + + private void deployPayload() { + + if(mode == 0 && payload != null) { + + } + + this.setDead(); + } + + @Override + protected void entityInit() { + this.dataWatcher.addObject(8, 0); + } + + public void setSat(ItemStack stack) { + this.payload[0] = stack; + } + + public void setPayload(List payload) { + + for(int i = 0; i < payload.size(); i++) { + this.payload[i] = payload.get(i); + } + } + + public void setSkin(int i) { + this.dataWatcher.updateObject(8, i); + } + + public int getSkin() { + return this.dataWatcher.getWatchableObjectInt(8); + } + + @Override + @SideOnly(Side.CLIENT) + public boolean isInRangeToRenderDist(double distance) + { + return distance < 500000; + } + + @Override + public void readEntityFromNBT(NBTTagCompound nbt) { + + NBTTagList list = nbt.getTagList("items", 10); + + for (int i = 0; i < list.tagCount(); i++) { + NBTTagCompound nbt1 = list.getCompoundTagAt(i); + byte b0 = nbt1.getByte("slot"); + if (b0 >= 0 && b0 < payload.length) { + payload[b0] = ItemStack.loadItemStackFromNBT(nbt1); + } + } + } + + @Override + public void writeEntityToNBT(NBTTagCompound nbt) { + + NBTTagList list = new NBTTagList(); + + for (int i = 0; i < payload.length; i++) { + if (payload[i] != null) { + NBTTagCompound nbt1 = new NBTTagCompound(); + nbt1.setByte("slot", (byte) i); + payload[i].writeToNBT(nbt1); + list.appendTag(nbt1); + } + } + nbt.setTag("items", list); + } +} diff --git a/com/hbm/entity/projectile/EntityMeteor.java b/com/hbm/entity/projectile/EntityMeteor.java index 27040987e..bb1f5f7a0 100644 --- a/com/hbm/entity/projectile/EntityMeteor.java +++ b/com/hbm/entity/projectile/EntityMeteor.java @@ -10,6 +10,7 @@ import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.entity.projectile.EntityThrowable; import net.minecraft.init.Blocks; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.MovingObjectPosition; import net.minecraft.world.World; @@ -47,18 +48,33 @@ public class EntityMeteor extends EntityThrowable { if(!this.worldObj.isRemote) { worldObj.createExplosion(this, this.posX, this.posY, this.posZ, 5 + rand.nextFloat(), true); - if(MainRegistry.enableMeteorTails) - ExplosionLarge.spawnParticles(worldObj, posX, posY, posZ, ExplosionLarge.cloudFunction(20)); + + if(MainRegistry.enableMeteorTails) { + ExplosionLarge.spawnParticles(worldObj, posX, posY + 5, posZ, 75); + ExplosionLarge.spawnParticles(worldObj, posX + 5, posY, posZ, 75); + ExplosionLarge.spawnParticles(worldObj, posX - 5, posY, posZ, 75); + ExplosionLarge.spawnParticles(worldObj, posX, posY, posZ + 5, 75); + ExplosionLarge.spawnParticles(worldObj, posX, posY, posZ - 5, 75); + } + (new Meteorite()).generate(worldObj, rand, (int)Math.round(this.posX - 0.5D), (int)Math.round(this.posY - 0.5D), (int)Math.round(this.posZ - 0.5D)); } this.worldObj.playSoundEffect(this.posX, this.posY, this.posZ, "hbm:entity.oldExplosion", 10000.0F, 0.5F + this.rand.nextFloat() * 0.1F); this.setDead(); } - if(MainRegistry.enableMeteorTails) { - this.worldObj.spawnEntityInWorld(new EntitySmokeFX(this.worldObj, this.posX, this.posY + 1.5D, this.posZ, 0.0, 0.0, 0.0)); - for(int i = 0; i < 10; i++) - this.worldObj.spawnEntityInWorld(new EntityGasFlameFX(this.worldObj, this.posX + rand.nextDouble() * 3 - 1.5, this.posY + 1.5D + rand.nextDouble() * 3 - 1.5, this.posZ + rand.nextDouble() * 3 - 1.5, 0.0, 0.1, 0.0)); + if(MainRegistry.enableMeteorTails && worldObj.isRemote) { + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "exhaust"); + data.setString("mode", "meteor"); + data.setInteger("count", 10); + data.setDouble("width", 1); + data.setDouble("posX", posX - motionX); + data.setDouble("posY", posY - motionY); + data.setDouble("posZ", posZ - motionZ); + + MainRegistry.proxy.effectNT(data); } } @@ -71,7 +87,7 @@ public class EntityMeteor extends EntityThrowable { @SideOnly(Side.CLIENT) public boolean isInRangeToRenderDist(double distance) { - return distance < 25000; + return distance < 500000; } @Override diff --git a/com/hbm/inventory/MachineRecipes.java b/com/hbm/inventory/MachineRecipes.java index b54797ad3..3a01bd78e 100644 --- a/com/hbm/inventory/MachineRecipes.java +++ b/com/hbm/inventory/MachineRecipes.java @@ -2104,10 +2104,10 @@ public class MachineRecipes { ItemStack sta = shredderRecipes.get(new StackWrapper(stack)); - if(sta != null) + /*if(sta != null) System.out.println(stack.getDisplayName() + " resulted " + sta.getDisplayName()); else - System.out.println(stack.getDisplayName() + " resulted null"); + System.out.println(stack.getDisplayName() + " resulted null");*/ return sta == null ? new ItemStack(ModItems.scrap) : sta; } @@ -2743,7 +2743,7 @@ public class MachineRecipes { list.add(new ItemStack(ModItems.plate_iron, 2)); break; case W_A: - list.add(new ItemStack(ModItems.ingot_advanced_alloy, 5)); + list.add(new ItemStack(ModItems.ingot_desh, 5)); list.add(new ItemStack(ModItems.plate_iron, 2)); break; case UPGRADE_TEMPLATE: diff --git a/com/hbm/inventory/container/ContainerCoreInjector.java b/com/hbm/inventory/container/ContainerCoreInjector.java index 59e301183..095fec4c3 100644 --- a/com/hbm/inventory/container/ContainerCoreInjector.java +++ b/com/hbm/inventory/container/ContainerCoreInjector.java @@ -52,8 +52,10 @@ public class ContainerCoreInjector extends Container { { return null; } + } else { + return null; } - + if (var5.stackSize == 0) { var4.putStack((ItemStack) null); diff --git a/com/hbm/items/ModItems.java b/com/hbm/items/ModItems.java index b22dd4c9b..8c9a62f03 100644 --- a/com/hbm/items/ModItems.java +++ b/com/hbm/items/ModItems.java @@ -129,6 +129,7 @@ public class ModItems { public static Item ingot_starmetal; public static Item ingot_saturnite; public static Item plate_saturnite; + public static Item ingot_electronium; public static Item nugget_th232; public static Item nugget_uranium; @@ -1025,6 +1026,7 @@ public class ModItems { public static Item missile_carrier; public static Item missile_soyuz; + public static Item missile_soyuz_lander; public static Item sat_mapper; public static Item sat_scanner; public static Item sat_radar; @@ -1908,6 +1910,7 @@ public class ModItems { plate_saturnite = new ItemCustomLore().setUnlocalizedName("plate_saturnite").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":plate_saturnite"); ingot_fiberglass = new ItemCustomLore().setUnlocalizedName("ingot_fiberglass").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_fiberglass"); ingot_asbestos = new ItemCustomLore().setUnlocalizedName("ingot_asbestos").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_asbestos"); + ingot_electronium = new ItemCustomLore().setUnlocalizedName("ingot_electronium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_electronium"); ingot_lanthanium = new ItemCustomLore().setUnlocalizedName("ingot_lanthanium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_lanthanium"); ingot_actinium = new ItemCustomLore().setUnlocalizedName("ingot_actinium").setCreativeTab(MainRegistry.partsTab).setTextureName(RefStrings.MODID + ":ingot_actinium"); @@ -2577,7 +2580,8 @@ public class ModItems { missile_schrabidium = new Item().setUnlocalizedName("missile_schrabidium").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":missile_schrabidium"); missile_emp = new Item().setUnlocalizedName("missile_emp").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":missile_emp"); missile_carrier = new Item().setUnlocalizedName("missile_carrier").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":missile_carrier"); - missile_soyuz = new Item().setUnlocalizedName("missile_soyuz").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":soyuz"); + missile_soyuz = new ItemSoyuz().setUnlocalizedName("missile_soyuz").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":soyuz"); + missile_soyuz_lander = new Item().setUnlocalizedName("missile_soyuz_lander").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":soyuz_lander"); missile_custom = new ItemCustomMissile().setUnlocalizedName("missile_custom").setMaxStackSize(1).setCreativeTab(null).setTextureName(RefStrings.MODID + ":missile_custom"); sat_mapper = new ItemSatChip().setUnlocalizedName("sat_mapper").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":sat_mapper"); sat_scanner = new ItemSatChip().setUnlocalizedName("sat_scanner").setMaxStackSize(1).setCreativeTab(MainRegistry.missileTab).setTextureName(RefStrings.MODID + ":sat_scanner"); @@ -2860,7 +2864,7 @@ public class ModItems { gun_uzi_saturnite_silencer = new ItemGunBase(Gun22LRFactory.getSaturniteConfig().silenced()).setUnlocalizedName("gun_uzi_saturnite_silencer").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uzi_saturnite_silencer"); gun_uboinik_ammo = new Item().setUnlocalizedName("gun_uboinik_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_uboinik_ammo"); gun_uboinik = new ItemGunBase(Gun12GaugeFactory.getUboinikConfig()).setUnlocalizedName("gun_uboinik").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uboinik"); - gun_supershotgun = new ItemGunBase(Gun12GaugeFactory.getShottyConfig()).setUnlocalizedName("gun_supershotgun").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uboinik"); + gun_supershotgun = new ItemGunShotty(Gun12GaugeFactory.getShottyConfig()).setUnlocalizedName("gun_supershotgun").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_uboinik"); gun_lever_action_ammo = new Item().setUnlocalizedName("gun_lever_action_ammo").setCreativeTab(null).setTextureName(RefStrings.MODID + ":gun_lever_action_ammo"); gun_lever_action = new ItemGunBase(Gun20GaugeFactory.getMareConfig()).setUnlocalizedName("gun_lever_action").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action"); gun_lever_action_dark = new ItemGunBase(Gun20GaugeFactory.getMareDarkConfig()).setUnlocalizedName("gun_lever_action_dark").setCreativeTab(MainRegistry.weaponTab).setTextureName(RefStrings.MODID + ":gun_lever_action_dark"); @@ -3612,6 +3616,7 @@ public class ModItems { GameRegistry.registerItem(ingot_saturnite, ingot_saturnite.getUnlocalizedName()); GameRegistry.registerItem(ingot_euphemium, ingot_euphemium.getUnlocalizedName()); GameRegistry.registerItem(ingot_dineutronium, ingot_dineutronium.getUnlocalizedName()); + GameRegistry.registerItem(ingot_electronium, ingot_electronium.getUnlocalizedName()); //Dusts & Other GameRegistry.registerItem(lithium, lithium.getUnlocalizedName()); @@ -4451,6 +4456,7 @@ public class ModItems { GameRegistry.registerItem(missile_emp, missile_emp.getUnlocalizedName()); GameRegistry.registerItem(missile_carrier, missile_carrier.getUnlocalizedName()); GameRegistry.registerItem(missile_soyuz, missile_soyuz.getUnlocalizedName()); + GameRegistry.registerItem(missile_soyuz_lander, missile_soyuz_lander.getUnlocalizedName()); GameRegistry.registerItem(missile_custom, missile_custom.getUnlocalizedName()); //Missile Parts diff --git a/com/hbm/items/special/ItemSoyuz.java b/com/hbm/items/special/ItemSoyuz.java new file mode 100644 index 000000000..dda1b04af --- /dev/null +++ b/com/hbm/items/special/ItemSoyuz.java @@ -0,0 +1,55 @@ +package com.hbm.items.special; + +import java.util.List; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.creativetab.CreativeTabs; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.EnumRarity; +import net.minecraft.item.Item; +import net.minecraft.item.ItemStack; +import net.minecraft.util.EnumChatFormatting; + +public class ItemSoyuz extends Item { + + public ItemSoyuz() { + this.setHasSubtypes(true); + } + + @Override + @SideOnly(Side.CLIENT) + public void getSubItems(Item item, CreativeTabs tab, List list) { + list.add(new ItemStack(item, 1, 0)); + list.add(new ItemStack(item, 1, 1)); + list.add(new ItemStack(item, 1, 2)); + } + + @Override + public EnumRarity getRarity(ItemStack stack) { + + if(stack.getItemDamage() == 0) + return EnumRarity.uncommon; + + if(stack.getItemDamage() == 1) + return EnumRarity.rare; + + if(stack.getItemDamage() == 2) + return EnumRarity.epic; + + return EnumRarity.common; + } + + @Override + public void addInformation(ItemStack stack, EntityPlayer player, List list, boolean bool) { + + list.add("Skin:"); + + switch(stack.getItemDamage()) { + case 0: list.add(EnumChatFormatting.GOLD + "Original"); break; + case 1: list.add(EnumChatFormatting.BLUE + "Luna Space Center"); break; + case 2: list.add(EnumChatFormatting.GREEN + "Post War"); break; + } + } + +} diff --git a/com/hbm/items/tool/ItemSatChip.java b/com/hbm/items/tool/ItemSatChip.java index cad7dba8e..ca434f44b 100644 --- a/com/hbm/items/tool/ItemSatChip.java +++ b/com/hbm/items/tool/ItemSatChip.java @@ -29,7 +29,7 @@ public class ItemSatChip extends Item { list.add("Displays currently loaded chunks."); if(this == ModItems.sat_miner) - list.add("Will deliver ore powders to a caargo landing pad."); + list.add("Will deliver ore powders to a cargo landing pad."); if(this == ModItems.sat_radar) list.add("Shows a map of active entities."); diff --git a/com/hbm/items/weapon/ItemGunShotty.java b/com/hbm/items/weapon/ItemGunShotty.java new file mode 100644 index 000000000..c8667af3e --- /dev/null +++ b/com/hbm/items/weapon/ItemGunShotty.java @@ -0,0 +1,24 @@ +package com.hbm.items.weapon; + +import com.hbm.handler.GunConfiguration; +import com.hbm.lib.Library; + +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; + +public class ItemGunShotty extends ItemGunBase { + + public ItemGunShotty(GunConfiguration config) { + super(config); + } + + + protected void updateServer(ItemStack stack, World world, EntityPlayer player, int slot, boolean isCurrentItem) { + super.updateServer(stack, world, player, slot, isCurrentItem); + + if(player.getUniqueID().toString().equals(Library.Dr_Nostalgia) && this.getDelay(stack) < this.mainConfig.rateOfFire * 0.9) + this.setDelay(stack, 0); + } + +} diff --git a/com/hbm/lib/Library.java b/com/hbm/lib/Library.java index 9f8a17549..5f807fb94 100644 --- a/com/hbm/lib/Library.java +++ b/com/hbm/lib/Library.java @@ -67,6 +67,8 @@ public class Library { public static String Hoboy03new = "d7f29d9c-5103-4f6f-88e1-2632ff95973f"; public static String Dragon59MC = "dc23a304-0f84-4e2d-b47d-84c8d3bfbcdb"; public static String Steelcourage = "ac49720b-4a9a-4459-a26f-bee92160287a"; + public static String GOD___TM = "57146e3f-16b5-4e9f-b0b8-139bec2ca2cb"; + public static String ZippySqrl = "03c20435-a229-489a-a1a1-671b803f7017"; public static List superuser = new ArrayList(); diff --git a/com/hbm/main/ClientProxy.java b/com/hbm/main/ClientProxy.java index 49d3f36ab..85b6f24b1 100644 --- a/com/hbm/main/ClientProxy.java +++ b/com/hbm/main/ClientProxy.java @@ -4,6 +4,7 @@ import net.minecraft.client.Minecraft; import net.minecraft.client.particle.EntityCloudFX; import net.minecraft.client.renderer.entity.RenderSnowball; import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.entity.player.EntityPlayer; import net.minecraft.item.Item; import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.ResourceLocation; @@ -31,9 +32,76 @@ import com.hbm.items.ModItems; import com.hbm.particle.ParticleContrail; import com.hbm.particle.ParticleExSmoke; import com.hbm.particle.ParticleRadiationFog; +import com.hbm.particle.ParticleRocketFlame; import com.hbm.particle.ParticleSmokePlume; import com.hbm.render.block.*; import com.hbm.render.entity.*; +import com.hbm.render.entity.effect.ElectricityRenderer; +import com.hbm.render.entity.effect.FogRenderer; +import com.hbm.render.entity.effect.GasFlameRenderer; +import com.hbm.render.entity.effect.GasRenderer; +import com.hbm.render.entity.effect.MultiCloudRenderer; +import com.hbm.render.entity.effect.RenderBigNuke; +import com.hbm.render.entity.effect.RenderBlackHole; +import com.hbm.render.entity.effect.RenderCloudFleija; +import com.hbm.render.entity.effect.RenderCloudRainbow; +import com.hbm.render.entity.effect.RenderCloudSolinium; +import com.hbm.render.entity.effect.RenderDeathBlast; +import com.hbm.render.entity.effect.RenderEMPBlast; +import com.hbm.render.entity.effect.RenderFallout; +import com.hbm.render.entity.effect.RenderFireball; +import com.hbm.render.entity.effect.RenderFlare; +import com.hbm.render.entity.effect.RenderNoCloud; +import com.hbm.render.entity.effect.RenderSmallNukeMK3; +import com.hbm.render.entity.effect.SSmokeRenderer; +import com.hbm.render.entity.effect.SpillRenderer; +import com.hbm.render.entity.effect.TSmokeRenderer; +import com.hbm.render.entity.item.RenderBomber; +import com.hbm.render.entity.item.RenderMinecartTest; +import com.hbm.render.entity.mob.RenderCyberCrab; +import com.hbm.render.entity.mob.RenderHunterChopper; +import com.hbm.render.entity.mob.RenderNuclearCreeper; +import com.hbm.render.entity.mob.RenderTaintedCreeper; +import com.hbm.render.entity.projectile.RenderBaleflare; +import com.hbm.render.entity.projectile.RenderBeam; +import com.hbm.render.entity.projectile.RenderBeam2; +import com.hbm.render.entity.projectile.RenderBeam3; +import com.hbm.render.entity.projectile.RenderBeam4; +import com.hbm.render.entity.projectile.RenderBeam5; +import com.hbm.render.entity.projectile.RenderBeam6; +import com.hbm.render.entity.projectile.RenderBombletSelena; +import com.hbm.render.entity.projectile.RenderBombletTheta; +import com.hbm.render.entity.projectile.RenderBoxcar; +import com.hbm.render.entity.projectile.RenderBullet; +import com.hbm.render.entity.projectile.RenderChopperMine; +import com.hbm.render.entity.projectile.RenderFOEQ; +import com.hbm.render.entity.projectile.RenderFallingNuke; +import com.hbm.render.entity.projectile.RenderLN2; +import com.hbm.render.entity.projectile.RenderLaser; +import com.hbm.render.entity.projectile.RenderMeteor; +import com.hbm.render.entity.projectile.RenderMiniMIRV; +import com.hbm.render.entity.projectile.RenderMiniNuke; +import com.hbm.render.entity.projectile.RenderMirv; +import com.hbm.render.entity.projectile.RenderOminousBullet; +import com.hbm.render.entity.projectile.RenderRainbow; +import com.hbm.render.entity.projectile.RenderRocket; +import com.hbm.render.entity.projectile.RenderRubble; +import com.hbm.render.entity.projectile.RenderSRocket; +import com.hbm.render.entity.projectile.RenderShrapnel; +import com.hbm.render.entity.projectile.RenderTom; +import com.hbm.render.entity.rocket.RenderBoosterMissile; +import com.hbm.render.entity.rocket.RenderCarrierMissile; +import com.hbm.render.entity.rocket.RenderMinerRocket; +import com.hbm.render.entity.rocket.RenderMissileCustom; +import com.hbm.render.entity.rocket.RenderMissileDoomsday; +import com.hbm.render.entity.rocket.RenderMissileGeneric; +import com.hbm.render.entity.rocket.RenderMissileHuge; +import com.hbm.render.entity.rocket.RenderMissileMirv; +import com.hbm.render.entity.rocket.RenderMissileNuclear; +import com.hbm.render.entity.rocket.RenderMissileStrong; +import com.hbm.render.entity.rocket.RenderMissileTaint; +import com.hbm.render.entity.rocket.RenderMissileThermo; +import com.hbm.render.entity.rocket.RenderSoyuz; import com.hbm.render.item.*; import com.hbm.render.loader.HmfModelLoader; import com.hbm.render.tileentity.*; @@ -390,6 +458,7 @@ public class ClientProxy extends ServerProxy RenderingRegistry.registerEntityRenderingHandler(EntityBuilding.class, new RenderBoxcar()); RenderingRegistry.registerEntityRenderingHandler(EntityCarrier.class, new RenderCarrierMissile()); RenderingRegistry.registerEntityRenderingHandler(EntityBooster.class, new RenderBoosterMissile()); + RenderingRegistry.registerEntityRenderingHandler(EntitySoyuz.class, new RenderSoyuz()); RenderingRegistry.registerEntityRenderingHandler(EntityBomber.class, new RenderBomber()); RenderingRegistry.registerEntityRenderingHandler(EntityBurningFOEQ.class, new RenderFOEQ()); RenderingRegistry.registerEntityRenderingHandler(EntityFallingNuke.class, new RenderFallingNuke()); @@ -565,6 +634,7 @@ public class ClientProxy extends ServerProxy World world = Minecraft.getMinecraft().theWorld; TextureManager man = Minecraft.getMinecraft().renderEngine; + EntityPlayer player = Minecraft.getMinecraft().thePlayer; Random rand = world.rand; String type = data.getString("type"); double x = data.getDouble("posX"); @@ -616,8 +686,63 @@ public class ClientProxy extends ServerProxy vec.rotateAroundY(360 / count); } } + + if("shockRand".equals(mode)) { + + double strength = data.getDouble("strength"); + + Vec3 vec = Vec3.createVectorHelper(strength, 0, 0); + vec.rotateAroundY(rand.nextInt(360)); + double r; + + for(int i = 0; i < count; i++) { + r = rand.nextDouble(); + ParticleExSmoke fx = new ParticleExSmoke(man, world, x, y, z); + fx.motionY = 0; + fx.motionX = vec.xCoord * r; + fx.motionZ = vec.zCoord * r; + Minecraft.getMinecraft().effectRenderer.addEffect(fx); + + vec.rotateAroundY(360 / count); + } + } } + if("exhaust".equals(type)) { + + String mode = data.getString("mode"); + + if("soyuz".equals(mode)) { + + if(Vec3.createVectorHelper(player.posX - x, player.posY - y, player.posZ - z).lengthVector() > 350) + return; + + int count = Math.max(1, data.getInteger("count")); + double width = data.getDouble("width"); + + for(int i = 0; i < count; i++) { + + ParticleRocketFlame fx = new ParticleRocketFlame(man, world, x + rand.nextGaussian() * width, y, z + rand.nextGaussian() * width); + fx.motionY = -0.75 + rand.nextDouble() * 0.5; + Minecraft.getMinecraft().effectRenderer.addEffect(fx); + } + } + + if("meteor".equals(mode)) { + + if(Vec3.createVectorHelper(player.posX - x, player.posY - y, player.posZ - z).lengthVector() > 350) + return; + + int count = Math.max(1, data.getInteger("count")); + double width = data.getDouble("width"); + + for(int i = 0; i < count; i++) { + + ParticleRocketFlame fx = new ParticleRocketFlame(man, world, x + rand.nextGaussian() * width, y + rand.nextGaussian() * width, z + rand.nextGaussian() * width); + Minecraft.getMinecraft().effectRenderer.addEffect(fx); + } + } + } } @Override diff --git a/com/hbm/main/MainRegistry.java b/com/hbm/main/MainRegistry.java index 8bf3b5fa5..41a966b5c 100644 --- a/com/hbm/main/MainRegistry.java +++ b/com/hbm/main/MainRegistry.java @@ -687,6 +687,7 @@ public class MainRegistry EntityRegistry.registerModEntity(EntityTom.class, "entity_tom_the_moonstone", 141, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityTomBlast.class, "entity_tom_bust", 142, this, 1000, 1, true); EntityRegistry.registerModEntity(EntityBuilding.class, "entity_falling_building", 143, this, 1000, 1, true); + EntityRegistry.registerModEntity(EntitySoyuz.class, "entity_soyuz", 144, this, 1000, 1, true); EntityRegistry.registerGlobalEntityID(EntityNuclearCreeper.class, "entity_mob_nuclear_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x204131, 0x75CE00); EntityRegistry.registerGlobalEntityID(EntityTaintedCreeper.class, "entity_mob_tainted_creeper", EntityRegistry.findGlobalUniqueEntityId(), 0x813b9b, 0xd71fdd); diff --git a/com/hbm/main/ResourceManager.java b/com/hbm/main/ResourceManager.java index af8384119..b8c54b1a4 100644 --- a/com/hbm/main/ResourceManager.java +++ b/com/hbm/main/ResourceManager.java @@ -335,6 +335,7 @@ public class ResourceManager { public static final IModelCustom missileBooster = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/missileBooster.obj")); public static final IModelCustom minerRocket = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/minerRocket.obj")); public static final IModelCustom soyuz = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/soyuz.obj")); + public static final IModelCustom soyuz_lander = new HFRWavefrontObject(new ResourceLocation(RefStrings.MODID, "models/soyuz_lander.obj")); public static final IModelCustom soyuz_launcher_legs = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/launch_table/soyuz_launcher_legs.obj")); public static final IModelCustom soyuz_launcher_table = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/launch_table/soyuz_launcher_table.obj")); public static final IModelCustom soyuz_launcher_tower_base = AdvancedModelLoader.loadModel(new ResourceLocation(RefStrings.MODID, "models/launch_table/soyuz_launcher_tower_base.obj")); @@ -494,6 +495,9 @@ public class ResourceManager { public static final ResourceLocation soyuz_authentic_booster = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_authentic/booster.png"); public static final ResourceLocation soyuz_authentic_boosterside = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_authentic/boosterside.png"); public static final ResourceLocation soyuz_memento = new ResourceLocation(RefStrings.MODID, "textures/items/polaroid_memento.png"); + + public static final ResourceLocation soyuz_lander_tex = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_lander.png"); + public static final ResourceLocation soyuz_chute_tex = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_chute.png"); public static final ResourceLocation soyuz_launcher_legs_tex = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_launcher/launcher_leg.png"); public static final ResourceLocation soyuz_launcher_table_tex = new ResourceLocation(RefStrings.MODID, "textures/models/soyuz_launcher/launcher_table.png"); diff --git a/com/hbm/particle/ParticleRocketFlame.java b/com/hbm/particle/ParticleRocketFlame.java new file mode 100644 index 000000000..269ea3a1e --- /dev/null +++ b/com/hbm/particle/ParticleRocketFlame.java @@ -0,0 +1,102 @@ +package com.hbm.particle; + +import java.util.Random; + +import org.lwjgl.opengl.GL11; + +import com.hbm.lib.RefStrings; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; +import net.minecraft.client.particle.EntityFX; +import net.minecraft.client.renderer.OpenGlHelper; +import net.minecraft.client.renderer.RenderHelper; +import net.minecraft.client.renderer.Tessellator; +import net.minecraft.client.renderer.texture.TextureManager; +import net.minecraft.util.ResourceLocation; +import net.minecraft.world.World; + +@SideOnly(Side.CLIENT) +public class ParticleRocketFlame extends EntityFX { + + private static final ResourceLocation texture = new ResourceLocation(RefStrings.MODID + ":textures/particle/particle_base.png"); + private TextureManager theRenderEngine; + private int age; + private int maxAge; + + public ParticleRocketFlame(TextureManager p_i1213_1_, World p_i1218_1_, double p_i1218_2_, double p_i1218_4_, double p_i1218_6_) { + super(p_i1218_1_, p_i1218_2_, p_i1218_4_, p_i1218_6_); + theRenderEngine = p_i1213_1_; + maxAge = 300 + rand.nextInt(50); + } + + public void onUpdate() { + this.prevPosX = this.posX; + this.prevPosY = this.posY; + this.prevPosZ = this.posZ; + + this.age++; + + if (this.age == this.maxAge) { + this.setDead(); + } + + this.motionX *= 0.9099999785423279D; + this.motionY *= 0.9099999785423279D; + this.motionZ *= 0.9099999785423279D; + + this.moveEntity(this.motionX, this.motionY, this.motionZ); + } + + public int getFXLayer() { + return 3; + } + + public void renderParticle(Tessellator p_70539_1_, float p_70539_2_, float p_70539_3_, float p_70539_4_, float p_70539_5_, float p_70539_6_, float p_70539_7_) { + + this.theRenderEngine.bindTexture(texture); + + GL11.glColor4f(1.0F, 1.0F, 1.0F, 1.0F); + GL11.glDisable(GL11.GL_LIGHTING); + GL11.glEnable(GL11.GL_BLEND); + GL11.glDepthMask(false); + OpenGlHelper.glBlendFunc(770, 771, 1, 0); + RenderHelper.disableStandardItemLighting(); + + Random urandom = new Random(this.getEntityId()); + + for(int i = 0; i < 15; i++) { + + p_70539_1_.startDrawingQuads(); + + float add = urandom.nextFloat() * 0.3F; + float dark = 1 - Math.min(((float)(age) / (float)(maxAge * 0.25F)), 1); + + this.particleRed = 1 * dark + add; + this.particleGreen = 0.6F * dark + add; + this.particleBlue = 0 + add; + + this.particleAlpha = (float) Math.pow(1 - Math.min(((float)(age) / (float)(maxAge)), 1), 0.5); + + p_70539_1_.setColorRGBA_F(this.particleRed, this.particleGreen, this.particleBlue, this.particleAlpha * 0.75F); + p_70539_1_.setNormal(0.0F, 1.0F, 0.0F); + p_70539_1_.setBrightness(240); + + float spread = (float) Math.pow(((float)(age) / (float)maxAge) * 4F, 1.5) + 0.5F; + + float scale = urandom.nextFloat() * 0.5F + 0.1F + ((float)(age) / (float)maxAge) * 2F; + float pX = (float) ((this.prevPosX + (this.posX - this.prevPosX) * (double)p_70539_2_ - interpPosX) + (urandom.nextGaussian() - 1D) * 0.2F * spread); + float pY = (float) ((this.prevPosY + (this.posY - this.prevPosY) * (double)p_70539_2_ - interpPosY) + (urandom.nextGaussian() - 1D) * 0.5F * spread); + float pZ = (float) ((this.prevPosZ + (this.posZ - this.prevPosZ) * (double)p_70539_2_ - interpPosZ) + (urandom.nextGaussian() - 1D) * 0.2F * spread); + + p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale - p_70539_7_ * scale), 1, 1); + p_70539_1_.addVertexWithUV((double)(pX - p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ - p_70539_5_ * scale + p_70539_7_ * scale), 1, 0); + p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale + p_70539_6_ * scale), (double)(pY + p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale + p_70539_7_ * scale), 0, 0); + p_70539_1_.addVertexWithUV((double)(pX + p_70539_3_ * scale - p_70539_6_ * scale), (double)(pY - p_70539_4_ * scale), (double)(pZ + p_70539_5_ * scale - p_70539_7_ * scale), 0, 1); + p_70539_1_.draw(); + } + + GL11.glPolygonOffset(0.0F, 0.0F); + GL11.glEnable(GL11.GL_LIGHTING); + } +} diff --git a/com/hbm/render/entity/BSmokeRenderer.java b/com/hbm/render/entity/effect/BSmokeRenderer.java similarity index 96% rename from com/hbm/render/entity/BSmokeRenderer.java rename to com/hbm/render/entity/effect/BSmokeRenderer.java index 036f32d13..466a77a08 100644 --- a/com/hbm/render/entity/BSmokeRenderer.java +++ b/com/hbm/render/entity/effect/BSmokeRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/DSmokeRenderer.java b/com/hbm/render/entity/effect/DSmokeRenderer.java similarity index 95% rename from com/hbm/render/entity/DSmokeRenderer.java rename to com/hbm/render/entity/effect/DSmokeRenderer.java index 51ae9e323..74f4e2ee7 100644 --- a/com/hbm/render/entity/DSmokeRenderer.java +++ b/com/hbm/render/entity/effect/DSmokeRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/ElectricityRenderer.java b/com/hbm/render/entity/effect/ElectricityRenderer.java similarity index 98% rename from com/hbm/render/entity/ElectricityRenderer.java rename to com/hbm/render/entity/effect/ElectricityRenderer.java index 0c719e297..a6901e84c 100644 --- a/com/hbm/render/entity/ElectricityRenderer.java +++ b/com/hbm/render/entity/effect/ElectricityRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/FogRenderer.java b/com/hbm/render/entity/effect/FogRenderer.java similarity index 98% rename from com/hbm/render/entity/FogRenderer.java rename to com/hbm/render/entity/effect/FogRenderer.java index 20c3c6349..46ffc1e39 100644 --- a/com/hbm/render/entity/FogRenderer.java +++ b/com/hbm/render/entity/effect/FogRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/GasFlameRenderer.java b/com/hbm/render/entity/effect/GasFlameRenderer.java similarity index 99% rename from com/hbm/render/entity/GasFlameRenderer.java rename to com/hbm/render/entity/effect/GasFlameRenderer.java index bddef0290..f14de47a7 100644 --- a/com/hbm/render/entity/GasFlameRenderer.java +++ b/com/hbm/render/entity/effect/GasFlameRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/GasRenderer.java b/com/hbm/render/entity/effect/GasRenderer.java similarity index 99% rename from com/hbm/render/entity/GasRenderer.java rename to com/hbm/render/entity/effect/GasRenderer.java index e476a781f..d6ff25a09 100644 --- a/com/hbm/render/entity/GasRenderer.java +++ b/com/hbm/render/entity/effect/GasRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/ModEffectRenderer.java b/com/hbm/render/entity/effect/ModEffectRenderer.java similarity index 96% rename from com/hbm/render/entity/ModEffectRenderer.java rename to com/hbm/render/entity/effect/ModEffectRenderer.java index df3e5f5d9..58380d534 100644 --- a/com/hbm/render/entity/ModEffectRenderer.java +++ b/com/hbm/render/entity/effect/ModEffectRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/MultiCloudRenderer.java b/com/hbm/render/entity/effect/MultiCloudRenderer.java similarity index 96% rename from com/hbm/render/entity/MultiCloudRenderer.java rename to com/hbm/render/entity/effect/MultiCloudRenderer.java index f594ab129..103d5d5a5 100644 --- a/com/hbm/render/entity/MultiCloudRenderer.java +++ b/com/hbm/render/entity/effect/MultiCloudRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBigNuke.java b/com/hbm/render/entity/effect/RenderBigNuke.java similarity index 97% rename from com/hbm/render/entity/RenderBigNuke.java rename to com/hbm/render/entity/effect/RenderBigNuke.java index c07e0a468..f05f050ef 100644 --- a/com/hbm/render/entity/RenderBigNuke.java +++ b/com/hbm/render/entity/effect/RenderBigNuke.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBlackHole.java b/com/hbm/render/entity/effect/RenderBlackHole.java similarity index 99% rename from com/hbm/render/entity/RenderBlackHole.java rename to com/hbm/render/entity/effect/RenderBlackHole.java index c1e37e9fb..cc032fe3b 100644 --- a/com/hbm/render/entity/RenderBlackHole.java +++ b/com/hbm/render/entity/effect/RenderBlackHole.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderCloudFleija.java b/com/hbm/render/entity/effect/RenderCloudFleija.java similarity index 95% rename from com/hbm/render/entity/RenderCloudFleija.java rename to com/hbm/render/entity/effect/RenderCloudFleija.java index ec29037f7..d6183648a 100644 --- a/com/hbm/render/entity/RenderCloudFleija.java +++ b/com/hbm/render/entity/effect/RenderCloudFleija.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderCloudRainbow.java b/com/hbm/render/entity/effect/RenderCloudRainbow.java similarity index 98% rename from com/hbm/render/entity/RenderCloudRainbow.java rename to com/hbm/render/entity/effect/RenderCloudRainbow.java index 7693a3539..9e9a6452b 100644 --- a/com/hbm/render/entity/RenderCloudRainbow.java +++ b/com/hbm/render/entity/effect/RenderCloudRainbow.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderCloudSolinium.java b/com/hbm/render/entity/effect/RenderCloudSolinium.java similarity index 97% rename from com/hbm/render/entity/RenderCloudSolinium.java rename to com/hbm/render/entity/effect/RenderCloudSolinium.java index d5a5e253f..4c077afbc 100644 --- a/com/hbm/render/entity/RenderCloudSolinium.java +++ b/com/hbm/render/entity/effect/RenderCloudSolinium.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderDeathBlast.java b/com/hbm/render/entity/effect/RenderDeathBlast.java similarity index 99% rename from com/hbm/render/entity/RenderDeathBlast.java rename to com/hbm/render/entity/effect/RenderDeathBlast.java index 5ac4db69b..faabf3266 100644 --- a/com/hbm/render/entity/RenderDeathBlast.java +++ b/com/hbm/render/entity/effect/RenderDeathBlast.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderEMPBlast.java b/com/hbm/render/entity/effect/RenderEMPBlast.java similarity index 97% rename from com/hbm/render/entity/RenderEMPBlast.java rename to com/hbm/render/entity/effect/RenderEMPBlast.java index fdced4e27..7e93c8447 100644 --- a/com/hbm/render/entity/RenderEMPBlast.java +++ b/com/hbm/render/entity/effect/RenderEMPBlast.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import com.hbm.entity.effect.EntityEMPBlast; diff --git a/com/hbm/render/entity/RenderFallout.java b/com/hbm/render/entity/effect/RenderFallout.java similarity index 99% rename from com/hbm/render/entity/RenderFallout.java rename to com/hbm/render/entity/effect/RenderFallout.java index 694323c10..1b3131ad1 100644 --- a/com/hbm/render/entity/RenderFallout.java +++ b/com/hbm/render/entity/effect/RenderFallout.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderFireball.java b/com/hbm/render/entity/effect/RenderFireball.java similarity index 99% rename from com/hbm/render/entity/RenderFireball.java rename to com/hbm/render/entity/effect/RenderFireball.java index 25b01eb73..693e20f8e 100644 --- a/com/hbm/render/entity/RenderFireball.java +++ b/com/hbm/render/entity/effect/RenderFireball.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/RenderFlare.java b/com/hbm/render/entity/effect/RenderFlare.java similarity index 96% rename from com/hbm/render/entity/RenderFlare.java rename to com/hbm/render/entity/effect/RenderFlare.java index 0626d2e4a..4096951dc 100644 --- a/com/hbm/render/entity/RenderFlare.java +++ b/com/hbm/render/entity/effect/RenderFlare.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderNoCloud.java b/com/hbm/render/entity/effect/RenderNoCloud.java similarity index 99% rename from com/hbm/render/entity/RenderNoCloud.java rename to com/hbm/render/entity/effect/RenderNoCloud.java index c66f146f8..28772b128 100644 --- a/com/hbm/render/entity/RenderNoCloud.java +++ b/com/hbm/render/entity/effect/RenderNoCloud.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderSmallNuke.java b/com/hbm/render/entity/effect/RenderSmallNuke.java similarity index 96% rename from com/hbm/render/entity/RenderSmallNuke.java rename to com/hbm/render/entity/effect/RenderSmallNuke.java index f3c27bb12..7eda6e0f4 100644 --- a/com/hbm/render/entity/RenderSmallNuke.java +++ b/com/hbm/render/entity/effect/RenderSmallNuke.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderSmallNukeAlt.java b/com/hbm/render/entity/effect/RenderSmallNukeAlt.java similarity index 97% rename from com/hbm/render/entity/RenderSmallNukeAlt.java rename to com/hbm/render/entity/effect/RenderSmallNukeAlt.java index 58f821fa6..b62f5b58b 100644 --- a/com/hbm/render/entity/RenderSmallNukeAlt.java +++ b/com/hbm/render/entity/effect/RenderSmallNukeAlt.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/RenderSmallNukeMK3.java b/com/hbm/render/entity/effect/RenderSmallNukeMK3.java similarity index 96% rename from com/hbm/render/entity/RenderSmallNukeMK3.java rename to com/hbm/render/entity/effect/RenderSmallNukeMK3.java index 26623a138..533e5c1c2 100644 --- a/com/hbm/render/entity/RenderSmallNukeMK3.java +++ b/com/hbm/render/entity/effect/RenderSmallNukeMK3.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderVortex.java b/com/hbm/render/entity/effect/RenderVortex.java similarity index 99% rename from com/hbm/render/entity/RenderVortex.java rename to com/hbm/render/entity/effect/RenderVortex.java index 35bbbdeb6..c5959eb05 100644 --- a/com/hbm/render/entity/RenderVortex.java +++ b/com/hbm/render/entity/effect/RenderVortex.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import java.util.Random; diff --git a/com/hbm/render/entity/SSmokeRenderer.java b/com/hbm/render/entity/effect/SSmokeRenderer.java similarity index 96% rename from com/hbm/render/entity/SSmokeRenderer.java rename to com/hbm/render/entity/effect/SSmokeRenderer.java index 780239f4c..0c9f72881 100644 --- a/com/hbm/render/entity/SSmokeRenderer.java +++ b/com/hbm/render/entity/effect/SSmokeRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/SpillRenderer.java b/com/hbm/render/entity/effect/SpillRenderer.java similarity index 96% rename from com/hbm/render/entity/SpillRenderer.java rename to com/hbm/render/entity/effect/SpillRenderer.java index ea6ead92d..ea036b0d0 100644 --- a/com/hbm/render/entity/SpillRenderer.java +++ b/com/hbm/render/entity/effect/SpillRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/TSmokeRenderer.java b/com/hbm/render/entity/effect/TSmokeRenderer.java similarity index 95% rename from com/hbm/render/entity/TSmokeRenderer.java rename to com/hbm/render/entity/effect/TSmokeRenderer.java index 0261aa74f..1df1b079e 100644 --- a/com/hbm/render/entity/TSmokeRenderer.java +++ b/com/hbm/render/entity/effect/TSmokeRenderer.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.effect; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/RenderBomber.java b/com/hbm/render/entity/item/RenderBomber.java similarity index 98% rename from com/hbm/render/entity/RenderBomber.java rename to com/hbm/render/entity/item/RenderBomber.java index 8d65de992..b2fa0f239 100644 --- a/com/hbm/render/entity/RenderBomber.java +++ b/com/hbm/render/entity/item/RenderBomber.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.item; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMinecartTest.java b/com/hbm/render/entity/item/RenderMinecartTest.java similarity index 99% rename from com/hbm/render/entity/RenderMinecartTest.java rename to com/hbm/render/entity/item/RenderMinecartTest.java index 1b27050a6..6b4cce5ad 100644 --- a/com/hbm/render/entity/RenderMinecartTest.java +++ b/com/hbm/render/entity/item/RenderMinecartTest.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.item; import net.minecraft.block.Block; import net.minecraft.client.renderer.entity.RenderMinecart; diff --git a/com/hbm/render/entity/RenderCyberCrab.java b/com/hbm/render/entity/mob/RenderCyberCrab.java similarity index 93% rename from com/hbm/render/entity/RenderCyberCrab.java rename to com/hbm/render/entity/mob/RenderCyberCrab.java index 549d006c7..0005fca26 100644 --- a/com/hbm/render/entity/RenderCyberCrab.java +++ b/com/hbm/render/entity/mob/RenderCyberCrab.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.mob; import com.hbm.lib.RefStrings; import com.hbm.render.model.ModelCrab; diff --git a/com/hbm/render/entity/RenderHunterChopper.java b/com/hbm/render/entity/mob/RenderHunterChopper.java similarity index 95% rename from com/hbm/render/entity/RenderHunterChopper.java rename to com/hbm/render/entity/mob/RenderHunterChopper.java index 2e4d42e4c..0fac7dd10 100644 --- a/com/hbm/render/entity/RenderHunterChopper.java +++ b/com/hbm/render/entity/mob/RenderHunterChopper.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.mob; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderNuclearCreeper.java b/com/hbm/render/entity/mob/RenderNuclearCreeper.java similarity index 96% rename from com/hbm/render/entity/RenderNuclearCreeper.java rename to com/hbm/render/entity/mob/RenderNuclearCreeper.java index 7eb2df8dc..7b9e128c0 100644 --- a/com/hbm/render/entity/RenderNuclearCreeper.java +++ b/com/hbm/render/entity/mob/RenderNuclearCreeper.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.mob; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderTaintedCreeper.java b/com/hbm/render/entity/mob/RenderTaintedCreeper.java similarity index 99% rename from com/hbm/render/entity/RenderTaintedCreeper.java rename to com/hbm/render/entity/mob/RenderTaintedCreeper.java index fd8fdf278..eb804ce08 100644 --- a/com/hbm/render/entity/RenderTaintedCreeper.java +++ b/com/hbm/render/entity/mob/RenderTaintedCreeper.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.mob; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBaleflare.java b/com/hbm/render/entity/projectile/RenderBaleflare.java similarity index 96% rename from com/hbm/render/entity/RenderBaleflare.java rename to com/hbm/render/entity/projectile/RenderBaleflare.java index 0f5ae28ba..f3c1d9fc9 100644 --- a/com/hbm/render/entity/RenderBaleflare.java +++ b/com/hbm/render/entity/projectile/RenderBaleflare.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBeam.java b/com/hbm/render/entity/projectile/RenderBeam.java similarity index 98% rename from com/hbm/render/entity/RenderBeam.java rename to com/hbm/render/entity/projectile/RenderBeam.java index 39fcce24e..6a0e4a6fe 100644 --- a/com/hbm/render/entity/RenderBeam.java +++ b/com/hbm/render/entity/projectile/RenderBeam.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBeam2.java b/com/hbm/render/entity/projectile/RenderBeam2.java similarity index 98% rename from com/hbm/render/entity/RenderBeam2.java rename to com/hbm/render/entity/projectile/RenderBeam2.java index d7175604a..d669e2515 100644 --- a/com/hbm/render/entity/RenderBeam2.java +++ b/com/hbm/render/entity/projectile/RenderBeam2.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBeam3.java b/com/hbm/render/entity/projectile/RenderBeam3.java similarity index 98% rename from com/hbm/render/entity/RenderBeam3.java rename to com/hbm/render/entity/projectile/RenderBeam3.java index 46899f38f..824474099 100644 --- a/com/hbm/render/entity/RenderBeam3.java +++ b/com/hbm/render/entity/projectile/RenderBeam3.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBeam4.java b/com/hbm/render/entity/projectile/RenderBeam4.java similarity index 98% rename from com/hbm/render/entity/RenderBeam4.java rename to com/hbm/render/entity/projectile/RenderBeam4.java index 96e29b5f9..18b8d5efb 100644 --- a/com/hbm/render/entity/RenderBeam4.java +++ b/com/hbm/render/entity/projectile/RenderBeam4.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBeam5.java b/com/hbm/render/entity/projectile/RenderBeam5.java similarity index 98% rename from com/hbm/render/entity/RenderBeam5.java rename to com/hbm/render/entity/projectile/RenderBeam5.java index 0c2a3bd81..96159124e 100644 --- a/com/hbm/render/entity/RenderBeam5.java +++ b/com/hbm/render/entity/projectile/RenderBeam5.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBeam6.java b/com/hbm/render/entity/projectile/RenderBeam6.java similarity index 98% rename from com/hbm/render/entity/RenderBeam6.java rename to com/hbm/render/entity/projectile/RenderBeam6.java index 0994c124a..4fccefa42 100644 --- a/com/hbm/render/entity/RenderBeam6.java +++ b/com/hbm/render/entity/projectile/RenderBeam6.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderBombletSelena.java b/com/hbm/render/entity/projectile/RenderBombletSelena.java similarity index 95% rename from com/hbm/render/entity/RenderBombletSelena.java rename to com/hbm/render/entity/projectile/RenderBombletSelena.java index e2a5e0126..1c8850bed 100644 --- a/com/hbm/render/entity/RenderBombletSelena.java +++ b/com/hbm/render/entity/projectile/RenderBombletSelena.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBombletTheta.java b/com/hbm/render/entity/projectile/RenderBombletTheta.java similarity index 95% rename from com/hbm/render/entity/RenderBombletTheta.java rename to com/hbm/render/entity/projectile/RenderBombletTheta.java index 287a520b9..10ae0d526 100644 --- a/com/hbm/render/entity/RenderBombletTheta.java +++ b/com/hbm/render/entity/projectile/RenderBombletTheta.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBoxcar.java b/com/hbm/render/entity/projectile/RenderBoxcar.java similarity index 97% rename from com/hbm/render/entity/RenderBoxcar.java rename to com/hbm/render/entity/projectile/RenderBoxcar.java index d5ac97583..275a6083d 100644 --- a/com/hbm/render/entity/RenderBoxcar.java +++ b/com/hbm/render/entity/projectile/RenderBoxcar.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBullet.java b/com/hbm/render/entity/projectile/RenderBullet.java similarity index 99% rename from com/hbm/render/entity/RenderBullet.java rename to com/hbm/render/entity/projectile/RenderBullet.java index 8e1cd16ce..f0b7f4fbd 100644 --- a/com/hbm/render/entity/RenderBullet.java +++ b/com/hbm/render/entity/projectile/RenderBullet.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderChopperMine.java b/com/hbm/render/entity/projectile/RenderChopperMine.java similarity index 92% rename from com/hbm/render/entity/RenderChopperMine.java rename to com/hbm/render/entity/projectile/RenderChopperMine.java index 5adf88792..fd1fffd9f 100644 --- a/com/hbm/render/entity/RenderChopperMine.java +++ b/com/hbm/render/entity/projectile/RenderChopperMine.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderFOEQ.java b/com/hbm/render/entity/projectile/RenderFOEQ.java similarity index 98% rename from com/hbm/render/entity/RenderFOEQ.java rename to com/hbm/render/entity/projectile/RenderFOEQ.java index d844a90d3..ed2cbd0d0 100644 --- a/com/hbm/render/entity/RenderFOEQ.java +++ b/com/hbm/render/entity/projectile/RenderFOEQ.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderFallingNuke.java b/com/hbm/render/entity/projectile/RenderFallingNuke.java similarity index 98% rename from com/hbm/render/entity/RenderFallingNuke.java rename to com/hbm/render/entity/projectile/RenderFallingNuke.java index 428a93819..21f191a2d 100644 --- a/com/hbm/render/entity/RenderFallingNuke.java +++ b/com/hbm/render/entity/projectile/RenderFallingNuke.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderLN2.java b/com/hbm/render/entity/projectile/RenderLN2.java similarity index 99% rename from com/hbm/render/entity/RenderLN2.java rename to com/hbm/render/entity/projectile/RenderLN2.java index 48c1c5435..fe68074b5 100644 --- a/com/hbm/render/entity/RenderLN2.java +++ b/com/hbm/render/entity/projectile/RenderLN2.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; import org.lwjgl.opengl.GL12; diff --git a/com/hbm/render/entity/RenderLaser.java b/com/hbm/render/entity/projectile/RenderLaser.java similarity index 97% rename from com/hbm/render/entity/RenderLaser.java rename to com/hbm/render/entity/projectile/RenderLaser.java index 4cc75fab4..b87d393ac 100644 --- a/com/hbm/render/entity/RenderLaser.java +++ b/com/hbm/render/entity/projectile/RenderLaser.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMeteor.java b/com/hbm/render/entity/projectile/RenderMeteor.java similarity index 98% rename from com/hbm/render/entity/RenderMeteor.java rename to com/hbm/render/entity/projectile/RenderMeteor.java index e651743f6..c4fd83fae 100644 --- a/com/hbm/render/entity/RenderMeteor.java +++ b/com/hbm/render/entity/projectile/RenderMeteor.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMiniMIRV.java b/com/hbm/render/entity/projectile/RenderMiniMIRV.java similarity index 96% rename from com/hbm/render/entity/RenderMiniMIRV.java rename to com/hbm/render/entity/projectile/RenderMiniMIRV.java index eabbfc571..6a225cc32 100644 --- a/com/hbm/render/entity/RenderMiniMIRV.java +++ b/com/hbm/render/entity/projectile/RenderMiniMIRV.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMiniNuke.java b/com/hbm/render/entity/projectile/RenderMiniNuke.java similarity index 94% rename from com/hbm/render/entity/RenderMiniNuke.java rename to com/hbm/render/entity/projectile/RenderMiniNuke.java index d189845a0..6295fb83b 100644 --- a/com/hbm/render/entity/RenderMiniNuke.java +++ b/com/hbm/render/entity/projectile/RenderMiniNuke.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMirv.java b/com/hbm/render/entity/projectile/RenderMirv.java similarity index 94% rename from com/hbm/render/entity/RenderMirv.java rename to com/hbm/render/entity/projectile/RenderMirv.java index 565eb49f8..810ad9960 100644 --- a/com/hbm/render/entity/RenderMirv.java +++ b/com/hbm/render/entity/projectile/RenderMirv.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderOminousBullet.java b/com/hbm/render/entity/projectile/RenderOminousBullet.java similarity index 95% rename from com/hbm/render/entity/RenderOminousBullet.java rename to com/hbm/render/entity/projectile/RenderOminousBullet.java index cab1e04bd..09bec73a2 100644 --- a/com/hbm/render/entity/RenderOminousBullet.java +++ b/com/hbm/render/entity/projectile/RenderOminousBullet.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderRainbow.java b/com/hbm/render/entity/projectile/RenderRainbow.java similarity index 96% rename from com/hbm/render/entity/RenderRainbow.java rename to com/hbm/render/entity/projectile/RenderRainbow.java index 288ac3464..7da669711 100644 --- a/com/hbm/render/entity/RenderRainbow.java +++ b/com/hbm/render/entity/projectile/RenderRainbow.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderRocket.java b/com/hbm/render/entity/projectile/RenderRocket.java similarity index 96% rename from com/hbm/render/entity/RenderRocket.java rename to com/hbm/render/entity/projectile/RenderRocket.java index 54d5d40f0..5b9651dfc 100644 --- a/com/hbm/render/entity/RenderRocket.java +++ b/com/hbm/render/entity/projectile/RenderRocket.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import java.util.Random; diff --git a/com/hbm/render/entity/RenderRubble.java b/com/hbm/render/entity/projectile/RenderRubble.java similarity index 97% rename from com/hbm/render/entity/RenderRubble.java rename to com/hbm/render/entity/projectile/RenderRubble.java index b289df992..8e112ba52 100644 --- a/com/hbm/render/entity/RenderRubble.java +++ b/com/hbm/render/entity/projectile/RenderRubble.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderSRocket.java b/com/hbm/render/entity/projectile/RenderSRocket.java similarity index 97% rename from com/hbm/render/entity/RenderSRocket.java rename to com/hbm/render/entity/projectile/RenderSRocket.java index 2cc72bbbe..7ac3f210e 100644 --- a/com/hbm/render/entity/RenderSRocket.java +++ b/com/hbm/render/entity/projectile/RenderSRocket.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderShrapnel.java b/com/hbm/render/entity/projectile/RenderShrapnel.java similarity index 96% rename from com/hbm/render/entity/RenderShrapnel.java rename to com/hbm/render/entity/projectile/RenderShrapnel.java index d7ab88bf4..673f5528f 100644 --- a/com/hbm/render/entity/RenderShrapnel.java +++ b/com/hbm/render/entity/projectile/RenderShrapnel.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderTom.java b/com/hbm/render/entity/projectile/RenderTom.java similarity index 92% rename from com/hbm/render/entity/RenderTom.java rename to com/hbm/render/entity/projectile/RenderTom.java index e0ce99c9b..05c8ef3db 100644 --- a/com/hbm/render/entity/RenderTom.java +++ b/com/hbm/render/entity/projectile/RenderTom.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.projectile; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderBoosterMissile.java b/com/hbm/render/entity/rocket/RenderBoosterMissile.java similarity index 97% rename from com/hbm/render/entity/RenderBoosterMissile.java rename to com/hbm/render/entity/rocket/RenderBoosterMissile.java index 132ccce69..c586ec6d5 100644 --- a/com/hbm/render/entity/RenderBoosterMissile.java +++ b/com/hbm/render/entity/rocket/RenderBoosterMissile.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderCarrierMissile.java b/com/hbm/render/entity/rocket/RenderCarrierMissile.java similarity index 97% rename from com/hbm/render/entity/RenderCarrierMissile.java rename to com/hbm/render/entity/rocket/RenderCarrierMissile.java index 48735070d..ad6391fe6 100644 --- a/com/hbm/render/entity/RenderCarrierMissile.java +++ b/com/hbm/render/entity/rocket/RenderCarrierMissile.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMinerRocket.java b/com/hbm/render/entity/rocket/RenderMinerRocket.java similarity index 96% rename from com/hbm/render/entity/RenderMinerRocket.java rename to com/hbm/render/entity/rocket/RenderMinerRocket.java index 5d64028f7..45eadc660 100644 --- a/com/hbm/render/entity/RenderMinerRocket.java +++ b/com/hbm/render/entity/rocket/RenderMinerRocket.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileCustom.java b/com/hbm/render/entity/rocket/RenderMissileCustom.java similarity index 98% rename from com/hbm/render/entity/RenderMissileCustom.java rename to com/hbm/render/entity/rocket/RenderMissileCustom.java index 973c532f0..e7fd50aa1 100644 --- a/com/hbm/render/entity/RenderMissileCustom.java +++ b/com/hbm/render/entity/rocket/RenderMissileCustom.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileDoomsday.java b/com/hbm/render/entity/rocket/RenderMissileDoomsday.java similarity index 94% rename from com/hbm/render/entity/RenderMissileDoomsday.java rename to com/hbm/render/entity/rocket/RenderMissileDoomsday.java index b11e65d2a..f67f888e0 100644 --- a/com/hbm/render/entity/RenderMissileDoomsday.java +++ b/com/hbm/render/entity/rocket/RenderMissileDoomsday.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileGeneric.java b/com/hbm/render/entity/rocket/RenderMissileGeneric.java similarity index 95% rename from com/hbm/render/entity/RenderMissileGeneric.java rename to com/hbm/render/entity/rocket/RenderMissileGeneric.java index 899c8e669..268cca1cf 100644 --- a/com/hbm/render/entity/RenderMissileGeneric.java +++ b/com/hbm/render/entity/rocket/RenderMissileGeneric.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileHuge.java b/com/hbm/render/entity/rocket/RenderMissileHuge.java similarity index 95% rename from com/hbm/render/entity/RenderMissileHuge.java rename to com/hbm/render/entity/rocket/RenderMissileHuge.java index 7c8a4c436..af95674e1 100644 --- a/com/hbm/render/entity/RenderMissileHuge.java +++ b/com/hbm/render/entity/rocket/RenderMissileHuge.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileMirv.java b/com/hbm/render/entity/rocket/RenderMissileMirv.java similarity index 94% rename from com/hbm/render/entity/RenderMissileMirv.java rename to com/hbm/render/entity/rocket/RenderMissileMirv.java index 4b91671b0..413da7814 100644 --- a/com/hbm/render/entity/RenderMissileMirv.java +++ b/com/hbm/render/entity/rocket/RenderMissileMirv.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileNuclear.java b/com/hbm/render/entity/rocket/RenderMissileNuclear.java similarity index 93% rename from com/hbm/render/entity/RenderMissileNuclear.java rename to com/hbm/render/entity/rocket/RenderMissileNuclear.java index 8298e72e5..556007e6c 100644 --- a/com/hbm/render/entity/RenderMissileNuclear.java +++ b/com/hbm/render/entity/rocket/RenderMissileNuclear.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileStrong.java b/com/hbm/render/entity/rocket/RenderMissileStrong.java similarity index 95% rename from com/hbm/render/entity/RenderMissileStrong.java rename to com/hbm/render/entity/rocket/RenderMissileStrong.java index 1d892b734..cbe85f692 100644 --- a/com/hbm/render/entity/RenderMissileStrong.java +++ b/com/hbm/render/entity/rocket/RenderMissileStrong.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileTaint.java b/com/hbm/render/entity/rocket/RenderMissileTaint.java similarity index 97% rename from com/hbm/render/entity/RenderMissileTaint.java rename to com/hbm/render/entity/rocket/RenderMissileTaint.java index 275ec6eec..19c49616a 100644 --- a/com/hbm/render/entity/RenderMissileTaint.java +++ b/com/hbm/render/entity/rocket/RenderMissileTaint.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/RenderMissileThermo.java b/com/hbm/render/entity/rocket/RenderMissileThermo.java similarity index 94% rename from com/hbm/render/entity/RenderMissileThermo.java rename to com/hbm/render/entity/rocket/RenderMissileThermo.java index 6b01087d2..644dc3c81 100644 --- a/com/hbm/render/entity/RenderMissileThermo.java +++ b/com/hbm/render/entity/rocket/RenderMissileThermo.java @@ -1,4 +1,4 @@ -package com.hbm.render.entity; +package com.hbm.render.entity.rocket; import org.lwjgl.opengl.GL11; diff --git a/com/hbm/render/entity/rocket/RenderSoyuz.java b/com/hbm/render/entity/rocket/RenderSoyuz.java new file mode 100644 index 000000000..254dac601 --- /dev/null +++ b/com/hbm/render/entity/rocket/RenderSoyuz.java @@ -0,0 +1,33 @@ +package com.hbm.render.entity.rocket; + +import org.lwjgl.opengl.GL11; + +import com.hbm.main.ResourceManager; +import com.hbm.render.util.SoyuzPronter; + +import net.minecraft.client.renderer.entity.Render; +import net.minecraft.entity.Entity; +import net.minecraft.util.ResourceLocation; + +public class RenderSoyuz extends Render { + + @Override + public void doRender(Entity entity, double x, double y, double z, float i, float j) { + + GL11.glPushMatrix(); + GL11.glTranslated(x, y, z); + GL11.glEnable(GL11.GL_CULL_FACE); + + int type = entity.getDataWatcher().getWatchableObjectInt(8); + SoyuzPronter.prontSoyuz(type); + + GL11.glPopMatrix(); + } + + @Override + protected ResourceLocation getEntityTexture(Entity entity) { + //just so if there's a mod that is trying to pull a funny + return ResourceManager.soyuz_payload; + } + +} diff --git a/com/hbm/render/tileentity/RenderSoyuzLauncher.java b/com/hbm/render/tileentity/RenderSoyuzLauncher.java index 397eb3fa6..e58c6c4cb 100644 --- a/com/hbm/render/tileentity/RenderSoyuzLauncher.java +++ b/com/hbm/render/tileentity/RenderSoyuzLauncher.java @@ -12,14 +12,27 @@ import net.minecraft.tileentity.TileEntity; public class RenderSoyuzLauncher extends TileEntitySpecialRenderer { @Override - public void renderTileEntityAt(TileEntity te, double x, double y, double z, float p_147500_8_) { + public void renderTileEntityAt(TileEntity te, double x, double y, double z, float inter) { GL11.glPushMatrix(); GL11.glTranslatef((float) x + 0.5F, (float) y, (float) z + 0.5F); TileEntitySoyuzLauncher launcher = (TileEntitySoyuzLauncher)te; - SoyuzLauncherPronter.prontLauncher(); + double open = 45D; + int timer = 20; + + double rot = open; + + if(launcher.rocketType >=0) + rot = 0; + + if(launcher.starting && launcher.countdown < timer) { + + rot = (timer - launcher.countdown + inter) * open / timer; + } + + SoyuzLauncherPronter.prontLauncher(rot); if(launcher.rocketType >= 0) { GL11.glTranslatef(0.0F, 5.0F, 0.0F); diff --git a/com/hbm/render/tileentity/RendererObjTester.java b/com/hbm/render/tileentity/RendererObjTester.java index d394326f2..2827f24a5 100644 --- a/com/hbm/render/tileentity/RendererObjTester.java +++ b/com/hbm/render/tileentity/RendererObjTester.java @@ -3,6 +3,7 @@ package com.hbm.render.tileentity; import org.lwjgl.opengl.GL11; import com.hbm.lib.RefStrings; +import com.hbm.main.ResourceManager; import com.hbm.render.util.SoyuzPronter; import net.minecraft.client.renderer.tileentity.TileEntitySpecialRenderer; @@ -104,13 +105,35 @@ public class RendererObjTester extends TileEntitySpecialRenderer { bindTexture(new ResourceLocation(RefStrings.MODID, "textures/models/ModelCalStock.png"));*/ //stock.renderAll(1F/16F); - SoyuzPronter.prontSoyuz(2); + //SoyuzPronter.prontSoyuz(2); //TomPronter.prontTom(); //BeamPronter.prontBeam(Vec3.createVectorHelper(5, 5, 5), EnumWaveType.SPIRAL, EnumBeamType.SOLID, 0xff8000, 0xff8000, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25, 25, 0.1F, 4, 0.05F); //BeamPronter.prontBeam(Vec3.createVectorHelper(5, 5, 5), EnumWaveType.SPIRAL, EnumBeamType.SOLID, 0xffff00, 0xffff00, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25, 1, 0F, 4, 0.05F); //BeamPronter.prontHelix(Vec3.createVectorHelper(0, 5, 0), 0.5, 0.5, 0.5, EnumWaveType.SPIRAL, EnumBeamType.LINE, 0x0000ff, 0xffff00, (int)tileEntity.getWorldObj().getTotalWorldTime() % 360 * 25 + 180, 25, 0.25F); //DiamondPronter.pront(1, 2, 3, EnumSymbol.OXIDIZER); + + //GL11.glTranslatef(0.0F, -0.25F, 0.0F); + //GL11.glRotatef(-25, 0, 1, 0); + //GL11.glRotatef(15, 0, 0, 1); + + long time = tileEntity.getWorldObj().getTotalWorldTime(); + double sine = Math.sin(time * 0.05) * 5; + double sin3 = Math.sin(time * 0.05 + Math.PI * 0.5) * 5; + double sin2 = Math.sin(time * 0.05 + Math.PI); + int height = 7; + GL11.glTranslated(0.0F, height + sin2, 0.0F); + GL11.glRotated(sine, 0, 0, 1); + GL11.glRotated(sin3, 1, 0, 0); + GL11.glTranslated(0.0F, -height, 0.0F); + + GL11.glEnable(GL11.GL_CULL_FACE); + GL11.glShadeModel(GL11.GL_SMOOTH); + bindTexture(ResourceManager.soyuz_lander_tex); + ResourceManager.soyuz_lander.renderPart("Capsule"); + bindTexture(ResourceManager.soyuz_chute_tex); + ResourceManager.soyuz_lander.renderPart("Chute"); + GL11.glShadeModel(GL11.GL_FLAT); GL11.glPopMatrix(); } diff --git a/com/hbm/render/util/RenderAccessoryUtility.java b/com/hbm/render/util/RenderAccessoryUtility.java index c4f374ede..5ed75cd8a 100644 --- a/com/hbm/render/util/RenderAccessoryUtility.java +++ b/com/hbm/render/util/RenderAccessoryUtility.java @@ -9,20 +9,22 @@ import net.minecraft.util.ResourceLocation; public class RenderAccessoryUtility { - private static ResourceLocation hbm = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeHbm.png"); - private static ResourceLocation hbm2 = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeHbm2.png"); - private static ResourceLocation dafnik = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeDafnik.png"); - private static ResourceLocation lpkukin = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeShield.png"); - private static ResourceLocation vertice = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeVertice_2.png"); - private static ResourceLocation red = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeRed.png"); - private static ResourceLocation ayy = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeAyy.png"); - private static ResourceLocation nostalgia = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeNostalgia.png"); - private static ResourceLocation nostalgia2 = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeNostalgia2.png"); - private static ResourceLocation sam = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeSam.png"); - private static ResourceLocation hoboy = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeHoboy.png"); - private static ResourceLocation master = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeMaster.png"); - private static ResourceLocation mek = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeMek.png"); - private static ResourceLocation test = new ResourceLocation(RefStrings.MODID + ":textures/models/CapeTest.png"); + private static ResourceLocation hbm = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeHbm3.png"); + private static ResourceLocation hbm2 = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeHbm2.png"); + private static ResourceLocation dafnik = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeDafnik.png"); + private static ResourceLocation lpkukin = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeShield.png"); + private static ResourceLocation vertice = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeVertice_2.png"); + private static ResourceLocation red = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeRed.png"); + private static ResourceLocation ayy = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeAyy.png"); + private static ResourceLocation nostalgia = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeNostalgia.png"); + private static ResourceLocation nostalgia2 = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeNostalgia2.png"); + private static ResourceLocation sam = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeSam.png"); + private static ResourceLocation hoboy = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeHoboy.png"); + private static ResourceLocation master = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeMaster.png"); + private static ResourceLocation mek = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeMek.png"); + private static ResourceLocation god_tm = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeGodTM.png"); + private static ResourceLocation zippy = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeZippySqrl.png"); + private static ResourceLocation test = new ResourceLocation(RefStrings.MODID + ":textures/models/capes/CapeTest.png"); public static ResourceLocation getCloakFromPlayer(EntityPlayer player) { @@ -70,6 +72,12 @@ public class RenderAccessoryUtility { if(uuid.equals(Library.Steelcourage)) { return mek; } + if(uuid.equals(Library.GOD___TM)) { + return god_tm; + } + if(uuid.equals(Library.ZippySqrl)) { + return zippy; + } if(name.startsWith("Player")) { return test; } diff --git a/com/hbm/render/util/SoyuzLauncherPronter.java b/com/hbm/render/util/SoyuzLauncherPronter.java index f4e0f7b45..5d917172b 100644 --- a/com/hbm/render/util/SoyuzLauncherPronter.java +++ b/com/hbm/render/util/SoyuzLauncherPronter.java @@ -10,12 +10,10 @@ import net.minecraft.client.renderer.texture.TextureManager; public class SoyuzLauncherPronter { - public static void prontLauncher() { - - int rot = 0;//(int) (System.currentTimeMillis() / 20 % 45); + public static void prontLauncher(double rot) { GL11.glPushMatrix(); - GL11.glEnable(GL11.GL_CULL_FACE); + GL11.glDisable(GL11.GL_CULL_FACE); TextureManager tex = Minecraft.getMinecraft().getTextureManager(); tex.bindTexture(ResourceManager.soyuz_launcher_legs_tex); @@ -45,6 +43,7 @@ public class SoyuzLauncherPronter { GL11.glTranslated(0, -5.5, 6.5); ResourceManager.soyuz_launcher_support.renderAll(); GL11.glPopMatrix(); + GL11.glEnable(GL11.GL_CULL_FACE); GL11.glPopMatrix(); } diff --git a/com/hbm/sound/AudioDynamic.java b/com/hbm/sound/AudioDynamic.java index d9401fd77..90f172e50 100644 --- a/com/hbm/sound/AudioDynamic.java +++ b/com/hbm/sound/AudioDynamic.java @@ -3,15 +3,21 @@ package com.hbm.sound; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; import net.minecraft.client.Minecraft; +import net.minecraft.client.audio.ISound; import net.minecraft.client.audio.MovingSound; +import net.minecraft.client.entity.EntityClientPlayerMP; import net.minecraft.util.ResourceLocation; @SideOnly(Side.CLIENT) public class AudioDynamic extends MovingSound { + + public float intendedVolume; protected AudioDynamic(ResourceLocation loc) { super(loc); this.repeat = true; + this.field_147666_i = ISound.AttenuationType.NONE; + this.intendedVolume = 10; } public void setPosition(float x, float y, float z) { @@ -21,7 +27,18 @@ public class AudioDynamic extends MovingSound { } @Override - public void update() { } + public void update() { + + EntityClientPlayerMP player = Minecraft.getMinecraft().thePlayer; + float f = 0; + + if(player != null) { + f = (float)Math.sqrt(Math.pow(xPosF - player.posX, 2) + Math.pow(yPosF - player.posY, 2) + Math.pow(zPosF - player.posZ, 2)); + volume = func(f, intendedVolume); + } else { + volume = intendedVolume; + } + } public void start() { Minecraft.getMinecraft().getSoundHandler().playSound(this); @@ -32,11 +49,15 @@ public class AudioDynamic extends MovingSound { } public void setVolume(float volume) { - this.volume = volume; + this.intendedVolume = volume; } public void setPitch(float pitch) { this.field_147663_c = pitch; } + + public float func(float f, float v) { + return (f / v) * -2 + 2; + } } diff --git a/com/hbm/sound/AudioWrapper.java b/com/hbm/sound/AudioWrapper.java index 729e52b9d..0028c8239 100644 --- a/com/hbm/sound/AudioWrapper.java +++ b/com/hbm/sound/AudioWrapper.java @@ -4,7 +4,7 @@ public class AudioWrapper { public void updatePosition(float x, float y, float z) { } - public void updateVolume(float pitch) { } + public void updateVolume(float volume) { } public void updatePitch(float pitch) { } diff --git a/com/hbm/tileentity/bomb/TileEntityLaunchTable.java b/com/hbm/tileentity/bomb/TileEntityLaunchTable.java index 13a97a4be..6596c9f7a 100644 --- a/com/hbm/tileentity/bomb/TileEntityLaunchTable.java +++ b/com/hbm/tileentity/bomb/TileEntityLaunchTable.java @@ -25,7 +25,6 @@ import com.hbm.packet.TEMissileMultipartPacket; import cpw.mods.fml.common.network.NetworkRegistry.TargetPoint; import cpw.mods.fml.relauncher.Side; import cpw.mods.fml.relauncher.SideOnly; -import net.minecraft.entity.Entity; import net.minecraft.entity.player.EntityPlayer; import net.minecraft.inventory.ISidedInventory; import net.minecraft.item.ItemStack; @@ -203,22 +202,16 @@ public class TileEntityLaunchTable extends TileEntity implements ISidedInventory } } else { - List entities = worldObj.getEntitiesWithinAABBExcludingEntity(null, AxisAlignedBB.getBoundingBox(xCoord - 0.5, yCoord, zCoord - 0.5, xCoord + 1.5, yCoord + 10, zCoord + 1.5)); + List entities = worldObj.getEntitiesWithinAABB(EntityMissileCustom.class, AxisAlignedBB.getBoundingBox(xCoord - 0.5, yCoord, zCoord - 0.5, xCoord + 1.5, yCoord + 10, zCoord + 1.5)); - for(Entity e : entities) { - - if(e instanceof EntityMissileCustom) { - - for(int i = 0; i < 15; i++) { + if(!entities.isEmpty()) { + for(int i = 0; i < 15; i++) { - boolean dir = worldObj.rand.nextBoolean(); - float moX = (float) (dir ? 0 : worldObj.rand.nextGaussian() * 0.65F); - float moZ = (float) (!dir ? 0 : worldObj.rand.nextGaussian() * 0.65F); - - MainRegistry.proxy.spawnParticle(xCoord + 0.5, yCoord + 0.25, zCoord + 0.5, "launchsmoke", new float[] {moX, 0, moZ}); - } + boolean dir = worldObj.rand.nextBoolean(); + float moX = (float) (dir ? 0 : worldObj.rand.nextGaussian() * 0.65F); + float moZ = (float) (!dir ? 0 : worldObj.rand.nextGaussian() * 0.65F); - break; + MainRegistry.proxy.spawnParticle(xCoord + 0.5, yCoord + 0.25, zCoord + 0.5, "launchsmoke", new float[] {moX, 0, moZ}); } } } diff --git a/com/hbm/tileentity/deco/TileEntityVent.java b/com/hbm/tileentity/deco/TileEntityVent.java index 15670d805..a743fcfe8 100644 --- a/com/hbm/tileentity/deco/TileEntityVent.java +++ b/com/hbm/tileentity/deco/TileEntityVent.java @@ -53,5 +53,19 @@ public class TileEntityVent extends TileEntity { //} } } + + /*if(worldObj.isRemote) { + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "exhaust"); + data.setString("mode", "soyuz"); + data.setInteger("count", 1); + data.setDouble("width", 0); + data.setDouble("posX", xCoord + 0.5); + data.setDouble("posY", yCoord - 1); + data.setDouble("posZ", zCoord + 0.5); + + MainRegistry.proxy.effectNT(data); + }*/ } } diff --git a/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java b/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java index b0c2a2d6d..fb3b88010 100644 --- a/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java +++ b/com/hbm/tileentity/machine/TileEntitySoyuzLauncher.java @@ -4,6 +4,7 @@ import java.util.ArrayList; import java.util.List; import com.hbm.handler.MissileStruct; +import com.hbm.entity.missile.EntitySoyuz; import com.hbm.handler.FluidTypeHandler.FluidType; import com.hbm.interfaces.IConsumer; import com.hbm.interfaces.IFluidAcceptor; @@ -11,6 +12,8 @@ import com.hbm.interfaces.IFluidContainer; import com.hbm.inventory.FluidTank; import com.hbm.items.ModItems; import com.hbm.lib.Library; +import com.hbm.main.MainRegistry; +import com.hbm.sound.AudioWrapper; import com.hbm.tileentity.TileEntityMachineBase; import cpw.mods.fml.relauncher.Side; @@ -21,6 +24,7 @@ import net.minecraft.nbt.NBTTagCompound; import net.minecraft.nbt.NBTTagList; import net.minecraft.tileentity.TileEntity; import net.minecraft.util.AxisAlignedBB; +import net.minecraft.util.Vec3; public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements ISidedInventory, IConsumer, IFluidContainer, IFluidAcceptor { @@ -31,9 +35,11 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS public byte mode; public boolean starting; public int countdown; - public static final int maxCount = 200; + public static final int maxCount = 600; public byte rocketType = -1; + private AudioWrapper audio; + public MissileStruct load; private static final int[] access = new int[] { 0 }; @@ -44,7 +50,7 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS super(27); tanks = new FluidTank[2]; tanks[0] = new FluidTank(FluidType.KEROSENE, 128000, 0); - tanks[1] = new FluidTank(FluidType.ACID, 128000, 1); + tanks[1] = new FluidTank(FluidType.OXYGEN, 128000, 1); } @Override @@ -65,14 +71,17 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS power = Library.chargeTEFromItems(slots, 8, power, maxPower); - //TODO: stop countdown if launch conditions are not met if(!starting || !canLaunch()) { countdown = maxCount; - } else if(countdown > 0) { - countdown--; - } else { starting = false; - //TODO: liftoff! + } else if(countdown > 0) { + countdown --; + + if(countdown % 100 == 0 && countdown > 0) + worldObj.playSoundEffect(xCoord, yCoord, zCoord, "hbm:alarm.hatch", 100F, 1.1F); + + } else { + liftOff(); } NBTTagCompound data = new NBTTagCompound(); @@ -80,18 +89,65 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS data.setByte("mode", mode); data.setBoolean("starting", starting); data.setByte("type", this.getType()); - networkPack(data, 50); + networkPack(data, 250); } if(worldObj.isRemote) { if(!starting || !canLaunch()) { + + if(audio != null) { + audio.stopSound(); + audio = null; + } + countdown = maxCount; + } else if(countdown > 0) { + + if(audio == null) { + audio = MainRegistry.proxy.getLoopedSound("hbm:block.soyuzReady", xCoord, yCoord, zCoord, 1.0F, 1.0F); + audio.updateVolume(100); + audio.startSound(); + } + countdown--; } + + List entities = worldObj.getEntitiesWithinAABB(EntitySoyuz.class, AxisAlignedBB.getBoundingBox(xCoord - 0.5, yCoord, zCoord - 0.5, xCoord + 1.5, yCoord + 10, zCoord + 1.5)); + + if(!entities.isEmpty()) { + + //for(int i = 0; i < 35; i++) { + + //Vec3 vec = Vec3.createVectorHelper(worldObj.rand.nextGaussian() * 0.5 + 1, 0, 0); + //vec.rotateAroundY(worldObj.rand.nextFloat() * (float) (Math.PI * 2)); + + //MainRegistry.proxy.spawnParticle(xCoord + 0.5, yCoord + 0.25 + worldObj.rand.nextFloat() * 3, zCoord + 0.5, "launchsmoke", new float[] {(float) vec.xCoord, 0, (float) vec.zCoord}); + + //} + + NBTTagCompound data = new NBTTagCompound(); + data.setString("type", "smoke"); + data.setString("mode", "shockRand"); + data.setInteger("count", 35); + data.setDouble("strength", worldObj.rand.nextGaussian() * 3 + 6); + data.setDouble("posX", xCoord + 0.5); + data.setDouble("posY", yCoord + 1); + data.setDouble("posZ", zCoord + 0.5); + + MainRegistry.proxy.effectNT(data); + } } } + public void onChunkUnload() { + + if(audio != null) { + audio.stopSound(); + audio = null; + } + } + public void networkUnpack(NBTTagCompound data) { power = data.getLong("power"); mode = data.getByte("mode"); @@ -105,12 +161,47 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS starting = true; } + public void liftOff() { + + this.starting = false; + + int req = this.getFuelRequired(); + int pow = this.getPowerRequired(); + + EntitySoyuz soyuz = new EntitySoyuz(worldObj); + soyuz.setSkin(this.getType()); + soyuz.setLocationAndAngles(xCoord + 0.5, yCoord + 5, zCoord + 0.5, 0, 0); + worldObj.spawnEntityInWorld(soyuz); + + tanks[0].setFill(tanks[0].getFill() - req); + tanks[1].setFill(tanks[1].getFill() - req); + power -= pow; + + if(mode == 0) { + soyuz.setSat(slots[2]); + slots[2] = null; + } + + if(mode == 1) { + List payload = new ArrayList(); + + for(int i = 9; i < 27; i++) { + payload.add(slots[i]); + slots[i] = null; + } + + soyuz.setPayload(payload); + } + + slots[0] = null; + } + public boolean canLaunch() { if(mode == 0 && slots[2] == null) return false; - return hasRocket() && hasFuel() && hasRocket() && hasPower(); + return hasRocket() && hasFuel() && hasRocket() && hasPower() && (designator() == 0 || designator() == 2); } public boolean hasFuel() { @@ -124,9 +215,25 @@ public class TileEntitySoyuzLauncher extends TileEntityMachineBase implements IS } public int getFuelRequired() { + + if(mode == 1) + return 20000 + getDist(); + return 128000; } + public int getDist() { + + if(designator() == 2) { + int x = slots[1].stackTagCompound.getInteger("xCoord"); + int z = slots[1].stackTagCompound.getInteger("zCoord"); + + return (int) Vec3.createVectorHelper(xCoord - x, 0, zCoord - z).lengthVector(); + } + + return 0; + } + public boolean hasPower() { return power >= getPowerRequired();