diff --git a/geometry.cpp b/geometry.cpp index 015425cb..4a8dd44a 100644 --- a/geometry.cpp +++ b/geometry.cpp @@ -359,6 +359,8 @@ hpcshape hpcshape shTinyArrow; + hpcshape shCrossbow, shCrossbowBolt, shCrossbowstringLoaded, shCrossbowstringUnloaded, shCrossbowstringSemiloaded, shCrossbowIcon, shCrossbowstringIcon; + hpcshape shReserved[16]; int orb_inner_ring; //< for shDisk* shapes, the number of vertices in the inner ring diff --git a/polygons.cpp b/polygons.cpp index a95dd439..4a073525 100644 --- a/polygons.cpp +++ b/polygons.cpp @@ -1279,6 +1279,14 @@ void geometry_information::prepare_shapes() { bshape(shTreeIcon, PPR::ITEM, scalefactor/1.7, 419); bshape(shLeafIcon, PPR::ITEM, scalefactor, 420); + bshape(shCrossbow, PPR::MONSTER_WPN, scalefactor, 421); + bshape(shCrossbowBolt, PPR::MONSTER_WPN, scalefactor, 422); + bshape(shCrossbowstringLoaded, PPR::MONSTER_WPN, scalefactor, 423); + bshape(shCrossbowstringUnloaded, PPR::MONSTER_WPN, scalefactor, 424); + bshape(shCrossbowstringSemiloaded, PPR::MONSTER_WPN, scalefactor, 425); + bshape(shCrossbowIcon, PPR::ITEM, scalefactor, 426); + bshape(shCrossbowstringIcon, PPR::ITEM, scalefactor, 427); + wormscale = WDIM == 3 ? 3 : 1; // first layer monsters @@ -2450,10 +2458,28 @@ NEWSHAPE, 418, 1, 2, 0.055384, -0.005846, 0.043076, 0.010769, 0.033846, 0.033846 NEWSHAPE, 419, 1, 2, -0.175, 0.010, -0.048, 0.100, -0.044, 0.070, 0.025, 0.118, 0.030, 0.074, 0.107, 0.144, 0.110, 0.030, 0.165, 0.010, // shLeafIcon -NEWSHAPE, 420, 1, 1, --0.05875, 0.09875, -0.05825, 0.101625, -0.070625, 0.07375, -0.07675, 0.026625, -0.06000, -0.00750, -0.047875, -0.01875, -0.01125, -0.04500, 0.05625, -0.06625, 0.04250, -0.01500, 0.04375, 0.01125, 0.03875, 0.063125, 0.02250, 0.08625, -0.028125, 0.10500, -0.051375, 0.10300, -0.04450, 0.070625, 0.01050, 0.06050, -0.03825, 0.06100, 0.003625, -0.01250, -0.03825, 0.035625, -0.048625, 0.01150, -0.043125, 0.04725, -0.05750, 0.08850, -0.05875, 0.09875, +NEWSHAPE, 420, 1, 1, -0.05875, 0.09875, -0.05825, 0.101625, -0.070625, 0.07375, -0.07675, 0.026625, -0.06000, -0.00750, -0.047875, -0.01875, -0.01125, -0.04500, 0.05625, -0.06625, 0.04250, -0.01500, 0.04375, 0.01125, 0.03875, 0.063125, 0.02250, 0.08625, -0.028125, 0.10500, -0.051375, 0.10300, -0.04450, 0.070625, 0.01050, 0.06050, -0.03825, 0.06100, 0.003625, -0.01250, -0.03825, 0.035625, -0.048625, 0.01150, -0.043125, 0.04725, -0.05750, 0.08850, -0.05875, 0.09875, +// shCrossbow +NEWSHAPE, 421, 1, 1, 0.193256, 0.0168783, 0.210518, 0.0287454, 0.235878, 0.0661817, 0.251096, 0.10129, 0.257684, 0.131402, 0.256098, 0.141707, 0.255471, 0.155504, 0.245903, 0.161374, 0.241367, 0.15352, 0.24461, 0.138073, 0.228209, 0.0856846, 0.210647, 0.057526, 0.193342, 0.0455916, 0.186456, 0.0421845, 0.177871, 0.0387776, 0.0902155, 0.254476, 0.087371, 0.226486, 0.0693893, 0.20986, 0.151388, 0.0277544, 0.133546, 0.0193179, 0.119157, 0.0167827, 0.101443, 0.0226361, 0.0846215, 0.0326756, 0.0661746, 0.0544474, 0.044417, 0.0854817, 0.0343747, 0.098932, 0.0234698, 0.097232, 0.0184284, 0.0837655, 0.0284665, 0.0678172, 0.0460429, 0.0527401, 0.0711679, 0.0209317, 0.0888037, 0.00502663, 0.111549, -0.00167743, 0.15306, -0.00168198, 0.163282, 0.00252497, 0.171823, -0.0109495, 0.198404, -0.00337709, +// shCrossbowBolt +NEWSHAPE, 422, 1, 1, 0.193261, -0.0194105, 0.195014, 0.0329245, 0.180397, 0.0227603, 0.116596, 0.169825, 0.121168, 0.199122, 0.0725594, 0.17718, 0.101228, 0.160278, 0.165367, 0.0164233, 0.152214, 0.0109325, + +// shCrossbowstringLoaded +NEWSHAPE, 423, 1, 1, 0.0318409, 0.0877603, 0.0248436, 0.0958284, 0.0777104, 0.192596, 0.113563, 0.206872, 0.244862, 0.163143, 0.249483, 0.15446, 0.24284, 0.153349, 0.114159, 0.195227, 0.0812413, 0.1827, 0.0391487, 0.09075, + +// shCrossbowstringUnloaded +NEWSHAPE, 424, 1, 1, 0.2484, 0.16448, 0.237919, 0.16757, 0.0279879, 0.101551, 0.0237537, 0.0892373, 0.0345171, 0.0849299, 0.246519, 0.152167, 0.251337, 0.158171, + +// shCrossbowstringSemiloaded +NEWSHAPE, 425, 1, 1, 0.0316391, 0.0849287, 0.0243879, 0.0916092, 0.0268324, 0.10012, 0.0924497, 0.16139, 0.123466, 0.172089, 0.239567, 0.169514, 0.249896, 0.160226, 0.240613, 0.150963, 0.129949, 0.157582, 0.0965949, 0.146108, 0.0380741, 0.0865468, + +// shCrossbowIcon, +NEWSHAPE, 426, 1, 1, -0.161593, 0.0201991, 0.0669713, 0.0200914, 0.0669893, 0.0385189, 0.0553079, 0.0770958, 0.0452658, 0.0905317, 0.0251509, 0.100603, 0.00167675, 0.103958, -0.0201179, 0.0989129, -0.0301883, 0.103982, -0.030202, 0.112418, -0.0285402, 0.122555, -0.015112, 0.127613, 0.00839707, 0.130994, 0.0335863, 0.125949, 0.053729, 0.115853, 0.0688338, 0.105769, 0.0839173, 0.087274, 0.0939619, 0.0687935, 0.0989573, 0.0469628, 0.102304, 0.0352195, 0.107343, 0.0218041, 0.134387, 0.0134387, 0.134387, -0.0134387, 0.107343, -0.0218041, 0.102304, -0.0352195, 0.0989573, -0.0469628, 0.0939619, -0.0687935, 0.0839173, -0.087274, 0.0688338, -0.105769, 0.053729, -0.115853, 0.0335863, -0.125949, 0.00839707, -0.130994, -0.015112, -0.127613, -0.0285402, -0.122555, -0.030202, -0.112418, -0.0301883, -0.103982, -0.0201179, -0.0989129, 0.00167675, -0.103958, 0.0251509, -0.100603, 0.0452658, -0.0905317, 0.0553079, -0.0770958, 0.0669893, -0.0385189, 0.0669713, -0.0200914, -0.161593, -0.0201991, + +// shCrossbowstringIcon, +NEWSHAPE, 427, 1, 1, -0.102273, 0.00502984, -0.0369432, 0.124264, -0.0218299, 0.127621, -0.00838927, 0.115772, -0.00670825, 0.107332, -0.077039, 0.0100486, -0.077039, -0.0100486, -0.00670825, -0.107332, -0.00838927, -0.115772, -0.0218299, -0.127621, -0.0369432, -0.124264, -0.102273, -0.00502984, NEWSHAPE, NEWSHAPE };