* number_format improved

* fireworks for players (beta)
* airport travelling
This commit is contained in:
Lorenc 2018-03-26 00:01:26 +11:00
parent ea4ebdd843
commit d301c3d982
9 changed files with 432 additions and 841 deletions

File diff suppressed because it is too large Load Diff

View File

@ -158,3 +158,4 @@
#define DIALOG_BUSINESS_UPGRADES 1150 #define DIALOG_BUSINESS_UPGRADES 1150
#define DIALOG_BUSINESSES 1151 #define DIALOG_BUSINESSES 1151
#define DIALOG_CASINO_REWARDS 1152 #define DIALOG_CASINO_REWARDS 1152
#define DIALOG_AIRPORT 1153

View File

@ -1031,512 +1031,6 @@ stock initializeServerObjects( )
CreateDynamicObject( 2838, -1432.210449, 801.622863, 984.661987, 0.000000, 0.000000, 41.999992 ); CreateDynamicObject( 2838, -1432.210449, 801.622863, 984.661987, 0.000000, 0.000000, 41.999992 );
CreateDynamicObject( 2894, -1427.463867, 801.275024, 984.661987, 0.000000, 0.000000, 0.000000 ); CreateDynamicObject( 2894, -1427.463867, 801.275024, 984.661987, 0.000000, 0.000000, 0.000000 );
/* ** Terminal - Airport ** */
CreateDynamicObject(6871, -1729.1552734375, 5.8203125, 1059.8229980469, 0, 0, 270, .priority = 1);
CreateDynamicObject(6871, -1878.9482421875, 45.341796875, 1089.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(6871, -1930.880859375, 5.8134765625, 1089.4812011719, 0, 179.99450683594, 90, .priority = 1);
CreateDynamicObject(6871, -1878.2841796875, -51.939453125, 1095.3131103516, 0, 179.99450683594, 179.99450683594, .priority = 1);
CreateDynamicObject(6871, -1823.28515625, -51.9453125, 1095.3131103516, 0, 179.99450683594, 179.99450683594, .priority = 1);
CreateDynamicObject(6871, -1768.408203125, -51.9501953125, 1095.3131103516, 0, 179.99450683594, 179.99450683594, .priority = 1);
CreateDynamicObject(6871, -1825.6796875, 45.4482421875, 1099.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(6871, -1882.5126953125, 41.7646484375, 1089.4812011719, 0, 179.99450683594, 90, .priority = 1);
CreateDynamicObject(6871, -1762.2412109375, 45.515625, 1089.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(6364, -1925.533203125, -23.0546875, 1068.1417236328, 0, 0, 350.24963378906, .priority = 1);
CreateDynamicObject(6989, -1737.9873046875, -5.5458984375, 977.18237304688, 0, 270, 0, .priority = 1);
CreateDynamicObject(6989, -1924.0791015625, 3.8291015625, 977.20001220703, 0, 269.98901367188, 179.99450683594, .priority = 1);
CreateDynamicObject(6871, -1770.703125, 45.45703125, 1099.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(6871, -1758.634765625, 41.912109375, 1089.4812011719, 0, 179.99450683594, 270, .priority = 1);
CreateDynamicObject(6871, -1776.5986328125, 78.5029296875, 1094.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(2774, -1780.8916015625, -10.5615234375, 1054.1915283203, 0, 0, 0, .priority = 1);
CreateDynamicObject(6871, -1834.7001953125, 57.6005859375, 1089.4812011719, 0, 179.99450683594, 90, .priority = 1);
CreateDynamicObject(6989, -1715.3359375, 35.259765625, 977.18237304688, 0, 270, 0, .priority = 1);
CreateDynamicObject(10056, -1786.4560546875, -92.837890625, 1097.2132568359, 0, 0, 90.247192382813, .priority = 1);
CreateDynamicObject(10056, -1869.4072265625, -93.13671875, 1097.2132568359, 0, 0, 90.247192382813, .priority = 1);
CreateDynamicObject(10056, -1687.4693603516, -92.780113220215, 1097.2132568359, 0, 0, 90.247192382813, .priority = 1);
CreateDynamicObject(6871, -1922.783203125, 6.017578125, 1037.8953857422, 179.99450683594, 179.99450683594, 90, .priority = 1);
CreateDynamicObject(6871, -1776.8994140625, 88.6884765625, 1089.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(10056, -1950.7564697266, -93.511184692383, 1097.2132568359, 0, 0, 90.247192382813, .priority = 1);
CreateDynamicObject(6871, -1831.123046875, 61.2001953125, 1089.4812011719, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(2774, -1821.5484619141, -23.6262550354, 1066.3145751953, 90, 0, 0.98876953125, .priority = 1);
CreateDynamicObject(2774, -1884.48046875, -10.203125, 1066.4146728516, 90, 0, 179.98352050781, .priority = 1);
CreateDynamicObject(2774, -1884.4189453125, -19.099378585815, 1060.9146728516, 90, 0, 179.98352050781, .priority = 1);
CreateDynamicObject(2774, -1896.7272949219, -6.9482502937317, 1060.9146728516, 90, 0, 269.98352050781, .priority = 1);
CreateDynamicObject(2774, -1884.4360351563, -7.1410775184631, 1054.1915283203, 0, 0, 0, .priority = 1);
CreateDynamicObject(6871, -1752.9091796875, 39.615234375, 1037.9250488281, 179.99450683594, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(2774, -1780.9765625, 13.606979370117, 1054.1915283203, 0, 0, 0, .priority = 1);
CreateDynamicObject(2774, -1780.904296875, 1.3359375, 1066.4146728516, 90, 0, 0, .priority = 1);
CreateDynamicObject(2774, -1792.728515625, -10.71875, 1066.3145751953, 90, 0, 90.999755859375, .priority = 1);
CreateDynamicObject(2774, -1884.46484375, -0.0830078125, 1066.3896484375, 90, 0, 179.99951171875, .priority = 1);
CreateDynamicObject(2774, -1816.3173828125, -11.15625, 1066.3145751953, 90, 0, 90.98876953125, .priority = 1);
CreateDynamicObject(2774, -1839.9267578125, -11.51953125, 1066.3145751953, 90, 0, 90.98876953125, .priority = 1);
CreateDynamicObject(2774, -1863.27734375, -11.9716796875, 1066.2895507813, 90, 0, 90.98876953125, .priority = 1);
CreateDynamicObject(2774, -1871.9477539063, -12.132898330688, 1066.3646240234, 90, 0, 90.98876953125, .priority = 1);
CreateDynamicObject(2774, -1884.46484375, 3.4208984375, 1066.3896484375, 90, 0, 179.99450683594, .priority = 1);
CreateDynamicObject(2774, -1865.4638671875, 6.7841796875, 1066.3896484375, 90, 0, 269.98901367188, .priority = 1);
CreateDynamicObject(2774, -1871.8046875, 6.8046875, 1066.3896484375, 90, 0, 269.98901367188, .priority = 1);
CreateDynamicObject(2774, -1852.990234375, 19.1875, 1066.4396972656, 90, 0, 359.97802734375, .priority = 1);
CreateDynamicObject(2774, -1852.5556640625, 7.2333984375, 1054.1414794922, 0, 0, 0, .priority = 1);
CreateDynamicObject(6959, -1760.951171875, -3.5728607177734, 1066.5623779297, 0, 0, 0, .priority = 1);
CreateDynamicObject(6959, -1801.5708007813, -31.228803634644, 1066.5623779297, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1761.501953125, -3.5517454147339, 1067.3131103516, 0, 0, 0, .priority = 1);
CreateDynamicObject(6959, -1802.142578125, -30.83984375, 1067.3131103516, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1842.0390625, -30.8232421875, 1067.3131103516, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1872.0546875, 26.498046875, 1067.3131103516, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1881.9921875, -30.830078125, 1067.3131103516, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1904.7421875, 9.662109375, 1067.3131103516, 0, 0, 0, .priority = 1);
CreateDynamicObject(8661, -1874.5, -21.853515625, 1060.4177246094, 90, 90, 270, .priority = 1);
CreateDynamicObject(8661, -1834.51171875, -21.8779296875, 1060.4177246094, 90, 90, 270, .priority = 1);
CreateDynamicObject(8661, -1794.7626953125, -21.8515625, 1060.4177246094, 90, 90, 270, .priority = 1);
CreateDynamicObject(8661, -1754.9833984375, -21.8251953125, 1060.4177246094, 90, 90, 270, .priority = 1);
CreateDynamicObject(8661, -1827.08203125, 24.5849609375, 1060.4177246094, 90, 90, 90, .priority = 1);
CreateDynamicObject(8661, -1829.6279296875, 32.2744140625, 1061.6574707031, 179.99450683594, 0, 0, .priority = 1);
CreateDynamicObject(6959, -1872.2642822266, 26.90641784668, 1066.2370605469, 0, 0, 90, .priority = 1);
CreateDynamicObject(6959, -1904.7421875, 9.662109375, 1065.9868164063, 0, 0, 0, .priority = 1);
CreateDynamicObject(6959, -1905.8361816406, -29.319580078125, 1065.9868164063, 0, 0, 0, .priority = 1);
CreateDynamicObject(8661, -1807.1010742188, 40.971714019775, 1060.4177246094, 90, 90, 0, .priority = 1);
CreateDynamicObject(8661, -1809.443359375, 24.39453125, 1069.9992675781, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(8661, -1809.2485351563, 42.453460693359, 1069.9992675781, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(8661, -1808.6362304688, 61.353233337402, 1069.9992675781, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(8661, -1832.9326171875, 24.6484375, 1069.9992675781, 0, 179.99450683594, 0, .priority = 1);
CreateDynamicObject(10310, -1763.7945556641, -5.4736223220825, 1078.5191650391, 0, 0, 133.9892578125, -1, -1, -1, 250.0);
CreateDynamicObject(10308, -1730.7578125, -92.7919921875, 1097.0695800781, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(10060, -1790.1005859375, -0.3857421875, 1110.2736816406, 0, 179.99450683594, 0, -1, -1, -1, 250.0);
CreateDynamicObject(10060, -1849.7724609375, -0.3818359375, 1110.2736816406, 0, 179.99450683594, 0, -1, -1, -1, 250.0);
CreateDynamicObject(10060, -1906.5078125, 2.6953125, 1110.2736816406, 0, 179.99450683594, 349.99694824219, -1, -1, -1, 250.0);
CreateDynamicObject(3586, -1788.662109375, 1.29296875, 1063.8564453125, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3586, -1860.6865234375, -3.6572265625, 1063.8564453125, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(13562, -1763.78125, -16.970703125, 1068.7208251953, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2922, -1845.365234375, 19.899791717529, 1061.8756103516, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1847.1171875, 20.0859375, 1067.1202392578, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1847.2280273438, 19.832950592041, 1060.4123535156, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1789.8630371094, 26.544826507568, 1060.4094238281, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1894.3205566406, -16.360830307007, 1060.4211425781, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1808.1375732422, -21.615396499634, 1061.9248046875, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1804.9873046875, -21.6015625, 1061.9248046875, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1802.158203125, -21.61191368103, 1061.9248046875, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1798.9821777344, -21.60608291626, 1061.9248046875, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1855.5906982422, -21.613245010376, 1061.9248046875, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1858.7205810547, -21.61484336853, 1061.9248046875, 0, 0, 359.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1864.7797851563, -21.599769592285, 1061.9248046875, 0, 0, 359.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1566, -1861.646484375, -21.5712890625, 1061.9248046875, 0, 0, 179.98352050781, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1847.1171875, 20.0859375, 1073.8111572266, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1833.8364257813, 25.709087371826, 1067.1202392578, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1827.6228027344, 25.735401153564, 1067.1202392578, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1816.4072265625, 25.74609375, 1067.1202392578, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(10757, -1829.787109375, 1.287109375, 1082.6239013672, 0, 0, 355.74279785156, -1, -1, -1, 250.0);
CreateDynamicObject(8550, -1796.6313476563, 64.369018554688, 1064.6574707031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2775, -1846.6135253906, 19.35160446167, 1065.3563232422, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2469, -1832.9814453125, 21.808559417725, 1061.5343017578, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1833.2548828125, 14.1162109375, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1830.9296875, 14.128261566162, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1828.5793457031, 14.114841461182, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1826.2297363281, 14.101169586182, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1823.8298339844, 14.087219238281, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1821.4787597656, 14.073825836182, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1819.1031494141, 14.060014724731, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1838.916015625, 15.558530807495, 1060.9266357422, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1838.9158935547, 17.4582862854, 1060.9266357422, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1572, -1806.2822265625, 19.399620056152, 1060.9801025391, 0, 0, 310, -1, -1, -1, 250.0);
CreateDynamicObject(1572, -1850.8558349609, 15.31520652771, 1060.9835205078, 0, 0, 1.9945068359375, -1, -1, -1, 250.0);
CreateDynamicObject(1572, -1897.421875, -9.8848896026611, 1067.8543701172, 0, 0, 229.98779296875, -1, -1, -1, 250.0);
CreateDynamicObject(3970, -1781.2822265625, -19.080078125, 1061.4990234375, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3970, -1769.4478759766, -19.015478134155, 1061.4990234375, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2794, -1790.74609375, 37.072265625, 1063.3648681641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2797, -1854.1356201172, 45.019668579102, 1056.3999023438, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2795, -1802.6752929688, 37.107730865479, 1063.4113769531, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1803.4904785156, 36.285415649414, 1060.4094238281, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2797, -1796.5506591797, 54.803707122803, 1066.0627441406, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1801.0637207031, -20.75661277771, 1060.5095214844, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1807.12109375, -20.9150390625, 1060.5095214844, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1857.701171875, -21.0107421875, 1060.5095214844, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1863.7763671875, -21.0634765625, 1060.5095214844, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1798.3446044922, 47.69310760498, 1060.4094238281, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2790, -1836.6491699219, 14.21311378479, 1073.9184570313, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2789, -1817.4311523438, 14.232239723206, 1073.9184570313, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1893.9711914063, -2.7453513145447, 1061.0791015625, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1811.3720703125, 2.40234375, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1811.3544921875, 1.67578125, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1822.7578125, 1.5859375, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1822.7762451172, 2.3636999130249, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1834.1845703125, 1.6865234375, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1834.1585693359, 2.411497592926, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(3586, -1875.7060546875, -3.7431640625, 1063.8564453125, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2775, -1792.0953369141, 47.223445892334, 1066.7923583984, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1792.8936767578, 47.472255706787, 1060.9266357422, 0, 0, 89.97802734375, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1790.9678955078, 47.461292266846, 1060.9266357422, 0, 0, 89.97802734375, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1800.57421875, 47.4326171875, 1060.9266357422, 0, 0, 89.97802734375, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1802.5056152344, 47.430358886719, 1060.9266357422, 0, 0, 89.97802734375, -1, -1, -1, 250.0);
CreateDynamicObject(1892, -1796.0665283203, 47.70240020752, 1060.4094238281, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1786.7071533203, 47.879127502441, 1063.3211669922, 0, 0, 224, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1786.70703125, 47.87890625, 1063.3211669922, 0, 0, 223.99475097656, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1806.7238769531, 48.135746002197, 1063.3211669922, 0, 0, 223.99475097656, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1806.7236328125, 48.1357421875, 1063.3211669922, 0, 0, 223.99475097656, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1798.1241455078, 48.007026672363, 1066.9321289063, 0, 0, 223.99475097656, -1, -1, -1, 250.0);
CreateDynamicObject(2632, -1857.029296875, -20.440763473511, 1060.4606933594, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2631, -1860.4167480469, 3.9738006591797, 1060.4149169922, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2631, -1875.0828857422, 3.9939117431641, 1060.4149169922, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2631, -1796.3670654297, 1.3126888275146, 1060.4558105469, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2632, -1863.0042724609, -20.421146392822, 1060.4606933594, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2632, -1806.58203125, -20.628778457642, 1060.4558105469, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2632, -1800.431640625, -20.726125717163, 1060.4558105469, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1794.2462158203, 47.938587188721, 1062.7858886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1799.1689453125, 48.0986328125, 1062.7858886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1803.5416259766, 47.980197906494, 1062.7858886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1789.7956542969, 47.945510864258, 1062.7858886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2754, -1806.654296875, 23.292640686035, 1061.3115234375, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(2754, -1865.1431884766, 13.719929695129, 1061.3178710938, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(2754, -1864.1915283203, 13.709921836853, 1061.3178710938, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(1523, -1861.1318359375, 11.10546875, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(3389, -1806.0949707031, 29.721864700317, 1060.4094238281, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(3389, -1805.0849609375, 29.72265625, 1060.4094238281, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(2754, -1806.666015625, 24.2431640625, 1061.3115234375, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2921, -1803.7005615234, 56.910552978516, 1064.0384521484, 0, 0, 155.99523925781, -1, -1, -1, 250.0);
CreateDynamicObject(2791, -1796.9093017578, 47.326625823975, 1074.3138427734, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2775, -1801.2761230469, 47.324184417725, 1066.7923583984, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2714, -1761.5598144531, -3.8049967288971, 1072.3830566406, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2599, -1799.4293212891, 45.762767791748, 1060.8731689453, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2430, -1760.3795166016, 0.74860960245132, 1070.2830810547, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2643, -1760.3098144531, -0.94232320785522, 1072.7652587891, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(7313, -1760.85546875, -0.748046875, 1065.4918212891, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(9191, -1830.4586181641, -21.065053939819, 1080.10546875, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(9314, -1831.1212158203, -21.499507904053, 1062.1694335938, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1762.271484375, -21.564918518066, 1060.4094238281, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(2942, -1788.3039550781, 13.964742660522, 1061.0523681641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2942, -1787.5529785156, 13.950849533081, 1061.0523681641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2942, -1786.8270263672, 13.937611579895, 1061.0523681641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2941, -1765.8701171875, 0.5654296875, 1068.6260986328, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2712, -1786.2185058594, 14.119216918945, 1060.9793701172, 0, 0, 160, -1, -1, -1, 250.0);
CreateDynamicObject(2994, -1784.4299316406, 13.998746871948, 1060.9116210938, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1817.4975585938, -26.28554725647, 1060.8029785156, 0, 0, 144.48901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1846.3095703125, -26.216796875, 1060.8029785156, 0, 0, 36.485595703125, -1, -1, -1, 250.0);
CreateDynamicObject(2793, -1790.5411376953, 25.800407409668, 1063.4813232422, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3526, -1806.6301269531, 21.483982086182, 1060.4777832031, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(3526, -1806.630859375, 22.3330078125, 1060.4777832031, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(982, -1794.9521484375, -10.2275390625, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2011, -1782.451171875, 13.7074842453, 1060.4094238281, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3439, -1763.8330078125, 14.140625, 1064.5228271484, 0, 0, 101.99710083008, -1, -1, -1, 250.0);
CreateDynamicObject(1597, -1840.9217529297, -19.701704025269, 1063.0666503906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1597, -1830.5941162109, -18.994815826416, 1069.9410400391, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1597, -1822.380859375, -19.869140625, 1063.0666503906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1364, -1822.4818115234, -17.659080505371, 1061.1936035156, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(1364, -1840.7106933594, -17.492065429688, 1061.1936035156, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1360, -1860.0284423828, -20.52586555481, 1061.1867675781, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1360, -1803.5942382813, -20.371788024902, 1061.1813964844, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1868.8028564453, -21.020046234131, 1062.4650878906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1851.3592529297, -20.842357635498, 1062.4650878906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1812.37890625, -20.4453125, 1062.4650878906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1794.5740966797, -20.264497756958, 1062.4650878906, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1791.7015380859, 52.629512786865, 1062.4580078125, 0, 0, 60, -1, -1, -1, 250.0);
CreateDynamicObject(626, -1801.0483398438, 52.846202850342, 1062.4580078125, 0, 0, 59.996337890625, -1, -1, -1, 250.0);
CreateDynamicObject(1346, -1810.4498291016, -33.784622192383, 1061.4945068359, 0, 0, 88, -1, -1, -1, 250.0);
CreateDynamicObject(1363, -1855.7933349609, 11.710659980774, 1061.2502441406, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(717, -1837.2769775391, -1.0393017530441, 1060.6062011719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18074, -1830.2275390625, -2.9306640625, 1088.1741943359, 90, 90, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18074, -1829.9163818359, 7.2397017478943, 1086.69921875, 90, 90, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18074, -1838.8546142578, -1.5747513771057, 1086.298828125, 90, 90, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18074, -1820.8581542969, -1.4859480857849, 1089.1931152344, 90, 90, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18074, -1830.0379638672, 1.032731294632, 1087.4484863281, 90, 90, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1346, -1810.4412841797, -32.459255218506, 1061.4945068359, 0, 0, 87.994995117188, -1, -1, -1, 250.0);
CreateDynamicObject(1363, -1857.79296875, 11.722396850586, 1061.2502441406, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1363, -1860.1673583984, 11.73644733429, 1061.2502441406, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1257, -1797.2928466797, -62.085174560547, 1059.3858642578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1257, -1874.5081787109, -61.880577087402, 1059.3858642578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1257, -1864.7625732422, -62.141872406006, 1059.3858642578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1257, -1788.5212402344, -62.320751190186, 1059.3858642578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1346, -1867.0059814453, -33.926624298096, 1061.4945068359, 0, 0, 87.994995117188, -1, -1, -1, 250.0);
CreateDynamicObject(1346, -1866.9561767578, -32.52668762207, 1061.4945068359, 0, 0, 87.994995117188, -1, -1, -1, 250.0);
CreateDynamicObject(1258, -1851.3392333984, -34.376541137695, 1060.8052978516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1258, -1793.4044189453, -35.227462768555, 1060.8052978516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1258, -1850.513671875, -34.3935546875, 1060.8052978516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1258, -1794.3044433594, -35.229629516602, 1060.8052978516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1290, -1793.2397460938, -62.046653747559, 1059.1265869141, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(1290, -1869.6401367188, -62.205978393555, 1059.1265869141, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1340, -1773.365234375, -18.463106155396, 1068.4094238281, 0, 0, 89.9990234375, -1, -1, -1, 250.0);
CreateDynamicObject(1342, -1776.2850341797, -18.494663238525, 1068.3155517578, 0, 0, 88, -1, -1, -1, 250.0);
CreateDynamicObject(1341, -1770.8393554688, -18.730419158936, 1068.2844238281, 0, 0, 91.994018554688, -1, -1, -1, 250.0);
CreateDynamicObject(1351, -1822.6796875, -49.773448944092, 1057.9641113281, 0, 0, 100, -1, -1, -1, 250.0);
CreateDynamicObject(1351, -1881.3825683594, -49.689235687256, 1057.9641113281, 0, 0, 99.99755859375, -1, -1, -1, 250.0);
CreateDynamicObject(1571, -1816.3427734375, -63.268230438232, 1059.4375, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(1775, -1876.0203857422, -21.368055343628, 1061.5148925781, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(717, -1807.6484375, -1.3422487974167, 1060.6062011719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(982, -1782.134765625, 16.078125, 1067.9573974609, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(984, -1884.0947265625, -3.7099609375, 1067.9573974609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(983, -1782.1806640625, -3.8369140625, 1067.9573974609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(983, -1865.8076171875, -10.2490234375, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(982, -1820.5234375, -10.2578125, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(982, -1846.07421875, -10.2626953125, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(983, -1782.1650390625, -7.01171875, 1067.9573974609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(983, -1870.58203125, -10.2392578125, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(983, -1880.83203125, -10.111328125, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(984, -1884.0830078125, -0.509765625, 1067.9573974609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(982, -1871.2998046875, 5.962890625, 1067.9573974609, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2403, -1895.7265625, 8.5380859375, 1066.9484863281, 0, 0, 43.994750976563, -1, -1, -1, 250.0);
CreateDynamicObject(2403, -1885.875, 7.984375, 1066.9234619141, 0, 0, 39.48486328125, -1, -1, -1, 250.0);
CreateDynamicObject(2385, -1884.1937255859, 5.4506101608276, 1067.298828125, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2385, -1884.2041015625, 3.28125, 1067.298828125, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2385, -1884.19140625, 1.1552734375, 1067.298828125, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2376, -1892.79296875, 5.046875, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2376, -1892.8125, 2.5703125, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2376, -1892.765625, 0.2939453125, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2375, -1899.505859375, 7.5068359375, 1067.1486816406, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2368, -1897.353515625, 7.565541267395, 1067.1737060547, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2369, -1897.5107421875, 7.6474609375, 1068.1899414063, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2366, -1781.6845703125, -6.712890625, 1067.1987304688, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2365, -1897.3771972656, 6.9224400520325, 1067.2818603516, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2362, -1897.7778320313, 9.5859375, 1068.2399902344, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2387, -1892.2882080078, -1.9280413389206, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2387, -1890.8924560547, -1.9591312408447, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2394, -1884.615234375, 4.8359375, 1068.1646728516, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2394, -1884.658203125, 2.7607421875, 1068.1646728516, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2394, -1884.7041015625, 0.560546875, 1068.1646728516, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2386, -1892.1435546875, 3.263671875, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2386, -1891.1171875, 3.2783203125, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2386, -1892.0693359375, 1.0087890625, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1891.0947265625, 0.24609375, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1892.0439453125, 0.2578125, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1890.9555664063, 2.6175153255463, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1892.166015625, 2.4814453125, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1892.1982421875, 4.9560546875, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2384, -1890.947265625, 4.9716796875, 1067.7233886719, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2407, -1891.4649658203, -3.2949588298798, 1069.5345458984, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2054, -1891.0338134766, 2.9143064022064, 1068.5589599609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(18070, -1897.3505859375, -16.1494140625, 1067.7834472656, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(14890, -1896.0529785156, -13.214859962463, 1068.3272705078, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2371, -1884.8984375, -7.91796875, 1067.2487792969, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2378, -1885.458984375, -6.828248500824, 1067.8260498047, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2377, -1885.462890625, -7.740234375, 1067.8087158203, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2371, -1884.9375, -4.6171875, 1067.2738037109, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2377, -1885.4755859375, -4.5679693222046, 1067.8587646484, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2377, -1885.4462890625, -3.568359375, 1067.8587646484, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1523, -1891.314453125, 11.9736328125, 1067.2738037109, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1889.310546875, 15.3291015625, 1067.0235595703, 0, 0, 259.99694824219, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1891.330078125, 12.6357421875, 1067.0235595703, 0, 0, 101.99157714844, -1, -1, -1, 250.0);
CreateDynamicObject(2723, -1890.59375, 13.900390625, 1067.5168457031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2843, -1890.70703125, 12.724771499634, 1067.2738037109, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1885, -1895.7320556641, -12.087652206421, 1067.2836914063, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1881.2373046875, 11.71484375, 1066.7482910156, 0, 0, 101.98608398438, -1, -1, -1, 250.0);
CreateDynamicObject(1597, -1830.6611328125, -11.1640625, 1069.9410400391, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(18092, -1889.0537109375, -14.3857421875, 1067.7836914063, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(18092, -1889.068359375, -17.8349609375, 1067.7836914063, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(18092, -1889.068359375, -17.8349609375, 1067.7836914063, 0, 0, 359.98352050781, -1, -1, -1, 250.0);
CreateDynamicObject(2053, -1891.748046875, 0.5966796875, 1068.5932617188, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2052, -1891.0283203125, 0.6162109375, 1068.5589599609, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2424, -1765.83203125, 0.548828125, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2424, -1765.7685546875, -2.0224609375, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2423, -1765.7744140625, -2.947265625, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2423, -1765.7607421875, 1.578125, 1067.2738037109, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2436, -1765.8603515625, -0.3876953125, 1067.2738037109, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2445, -1765.572265625, -8.794921875, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2484, -1890.1208496094, -17.826852798462, 1069.1184082031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2491, -1891.1730957031, -3.0028619766235, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2449, -1764.2270507813, -7.4019269943237, 1066.7482910156, 0, 0, 1.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2445, -1765.5439453125, -9.76953125, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2445, -1765.51171875, -10.7685546875, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2445, -1765.48046875, -11.7666015625, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2415, -1761.0693359375, 0.40234375, 1067.2237548828, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2415, -1760.9833984375, -11.453538894653, 1067.2818603516, 0, 0, 267.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2361, -1762.8791503906, 1.6457473039627, 1067.2237548828, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2424, -1764.859375, 1.583984375, 1067.2738037109, 0, 0, 181.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2424, -1763.931640625, 1.623526930809, 1067.2738037109, 0, 0, 181.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2360, -1760.9039306641, -7.7782363891602, 1067.2818603516, 0, 0, 272, -1, -1, -1, 250.0);
CreateDynamicObject(2417, -1760.8779296875, -1.2705078125, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2417, -1760.9248046875, -0.396484375, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2294, -1760.9682617188, -2.2261819839478, 1067.1737060547, 0, 0, 273.9990234375, -1, -1, -1, 250.0);
CreateDynamicObject(2294, -1760.9044189453, -3.1740863323212, 1067.1737060547, 0, 0, 273.99353027344, -1, -1, -1, 250.0);
CreateDynamicObject(2445, -1765.6015625, -7.794921875, 1067.2487792969, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(2294, -1760.9809570313, -10.381266593933, 1067.2818603516, 0, 0, 268.24353027344, -1, -1, -1, 250.0);
CreateDynamicObject(2294, -1760.9636230469, -9.3290185928345, 1067.2818603516, 0, 0, 269.99353027344, -1, -1, -1, 250.0);
CreateDynamicObject(2102, -1765.6220703125, -8.4892578125, 1068.279296875, 0, 0, 273.9990234375, -1, -1, -1, 250.0);
CreateDynamicObject(2420, -1781.9307861328, -3.3887295722961, 1067.2487792969, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2420, -1781.921875, -4.037109375, 1067.2487792969, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2420, -1781.8876953125, 5.7119140625, 1067.2767333984, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2420, -1781.8837890625, 6.361328125, 1067.2738037109, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2453, -1764.91796875, 1.5810546875, 1068.6575927734, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2663, -1765.4443359375, -10.130859375, 1068.5340576172, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2941, -1765.5080566406, -11.641445159912, 1068.6761474609, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(932, -1893.4071044922, -4.659903049469, 1060.4190673828, 0, 0, 119.99267578125, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1771.5028076172, -0.2907018661499, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1776.7280273438, -5.4922189712524, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1771.2952880859, -5.6720957756042, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1776.6881103516, -0.60116243362427, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1776.2415771484, -10.298135757446, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1770.9033203125, -13.5556640625, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1770.88671875, -10.150146484375, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1432, -1779.6884765625, -14.033807754517, 1067.2818603516, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2366, -1781.640625, -8.3359375, 1067.1987304688, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2366, -1781.62890625, -9.9384765625, 1067.2237548828, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1670, -1765.974609375, -2.3037109375, 1068.3543701172, 0, 0, 283.99658203125, -1, -1, -1, 250.0);
CreateDynamicObject(2125, -1766.3923339844, -10.803741455078, 1067.55859375, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2125, -1766.4267578125, -9.4052734375, 1067.55859375, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2125, -1766.455078125, -8.0029296875, 1067.55859375, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2818, -1767.33203125, -0.2548828125, 1067.298828125, 0, 0, 271.99951171875, -1, -1, -1, 250.0);
CreateDynamicObject(14657, -1766.8251953125, 17.3896484375, 1067.8812255859, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3657, -1814.8775634766, -34.067047119141, 1060.6617431641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3657, -1870.9949951172, -33.927833557129, 1060.6617431641, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3512, -1773.0650634766, -8.6108512878418, 1067.2818603516, 0, 0, 177.99499511719, -1, -1, -1, 250.0);
CreateDynamicObject(3512, -1773.7021484375, -3.5947265625, 1067.2818603516, 0, 0, 115.98815917969, -1, -1, -1, 250.0);
CreateDynamicObject(646, -1765.775390625, -3.9921875, 1068.6652832031, 0, 0, 83.990478515625, -1, -1, -1, 250.0);
CreateDynamicObject(646, -1765.7451171875, -6.7666015625, 1068.6652832031, 0, 0, 83.984985351563, -1, -1, -1, 250.0);
CreateDynamicObject(640, -1773.5185546875, 12.187517166138, 1068.0051269531, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(640, -1773.603515625, 5.146484375, 1068.0051269531, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(640, -1771.2255859375, 2.8427734375, 1068.0051269531, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(640, -1766.0927734375, 2.845703125, 1068.0051269531, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(640, -1760.82421875, 2.837890625, 1068.0051269531, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3920, -1760.1845703125, 8.8857421875, 1070.5693359375, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3920, -1773.3828125, 8.8037109375, 1070.5693359375, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3920, -1767.240234375, 2.6044921875, 1070.5693359375, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(14657, -1766.7478027344, 10.966611862183, 1067.8812255859, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3115, -1763.0440673828, 11.769790649414, 1071.2741699219, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1808, -1760.6029052734, 8.5422172546387, 1067.2738037109, 0, 0, 267.99499511719, -1, -1, -1, 250.0);
CreateDynamicObject(10444, -1766.0260009766, 13.431004524231, 1053.0162353516, 90, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(10444, -1758.0589599609, 20.647151947021, 1068.1696777344, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1603, -1760.5749511719, 14.143070220947, 1068.5760498047, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1603, -1761.119140625, 13.879629135132, 1068.5760498047, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1603, -1761.46875, 14.254022598267, 1068.5760498047, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1764.3555908203, 14.267934799194, 1068.0053710938, 0, 0, 88, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1764.7542724609, 14.295259475708, 1068.0053710938, 0, 0, 87.994995117188, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1767.1708984375, 14.4619140625, 1068.0053710938, 0, 0, 87.989501953125, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1768.2922363281, 14.539766311646, 1068.0053710938, 0, 0, 87.994995117188, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1771.119140625, 14.35546875, 1068.0053710938, 0, 0, 93.993530273438, -1, -1, -1, 250.0);
CreateDynamicObject(1601, -1769.263671875, 14.3125, 1068.0053710938, 0, 0, 93.993530273438, -1, -1, -1, 250.0);
CreateDynamicObject(1609, -1769.1584472656, 14.601585388184, 1067.2020263672, 0, 0, 258, -1, -1, -1, 250.0);
CreateDynamicObject(1599, -1769.357421875, 13.9609375, 1068.2393798828, 19.9951171875, 0, 275.99853515625, -1, -1, -1, 250.0);
CreateDynamicObject(1599, -1765.8565673828, 14.016443252563, 1068.2393798828, 19.9951171875, 0, 275.99853515625, -1, -1, -1, 250.0);
CreateDynamicObject(1599, -1762.7813720703, 13.998498916626, 1068.2393798828, 19.9951171875, 0, 275.99853515625, -1, -1, -1, 250.0);
CreateDynamicObject(1599, -1763.6053466797, 14.252637863159, 1068.2393798828, 19.9951171875, 0, 275.99853515625, -1, -1, -1, 250.0);
CreateDynamicObject(1599, -1767.4312744141, 13.923261642456, 1068.2393798828, 19.9951171875, 0, 275.99853515625, -1, -1, -1, 250.0);
CreateDynamicObject(1602, -1762.1346435547, 14.202372550964, 1068.3752441406, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(902, -1765.4271240234, 14.68643951416, 1066.7482910156, 0, 0, 306, -1, -1, -1, 250.0);
CreateDynamicObject(650, -1771.841796875, 14.009765625, 1066.7482910156, 0, 0, 263.99047851563, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1773.0825195313, 13.73023891449, 1068.7482910156, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1773.0498046875, 14.212493896484, 1068.7482910156, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1773.2216796875, 3.158203125, 1069.1274414063, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1765.83203125, 13.0185546875, 1067.7482910156, 0, 0, 223.99475097656, -1, -1, -1, 250.0);
CreateDynamicObject(10444, -1765.9327392578, 14.211910247803, 1056.2401123047, 90, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3439, -1767.2347412109, 14.542996406555, 1064.5228271484, 0, 0, 101.9970703125, -1, -1, -1, 250.0);
CreateDynamicObject(1572, -1850.8531494141, 17.264501571655, 1060.9835205078, 0, 0, 1.9940185546875, -1, -1, -1, 250.0);
CreateDynamicObject(1572, -1850.8784179688, 19.0383644104, 1060.9835205078, 0, 0, 1.9940185546875, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1844.4632568359, 21.359565734863, 1067.1202392578, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1839.2687988281, 26.619472503662, 1067.1202392578, 0, 0, 267.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(3389, -1807.6397705078, 21.469715118408, 1060.4094238281, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(3389, -1809.0653076172, 21.453641891479, 1060.4094238281, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(1216, -1868.8536376953, 13.881712913513, 1061.1086425781, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1216, -1869.75390625, 13.924003601074, 1061.1086425781, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1216, -1870.7048339844, 13.968946456909, 1061.1086425781, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1883.9400634766, -2.0061218738556, 1061.0791015625, 0, 0, 359.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1889.0050048828, -6.9041342735291, 1061.0791015625, 0, 0, 269.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1888.8234863281, -0.32893300056458, 1061.0791015625, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1888.8441162109, 1.8966454267502, 1061.0791015625, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1893.9685058594, -0.06957072019577, 1061.0791015625, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1834.3194580078, -4.6370568275452, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1834.3298339844, -3.9113521575928, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1822.6848144531, -4.0541820526123, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1822.6560058594, -4.7785925865173, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1811.3050537109, -4.7568664550781, 1061.0688476563, 0, 0, 89.989013671875, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1811.3160400391, -3.9819514751434, 1061.0688476563, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1231, -1852.4038085938, -35.087543487549, 1062.8739013672, 0, 0, 170, -1, -1, -1, 250.0);
CreateDynamicObject(1231, -1795.4833984375, -34.9443359375, 1062.8739013672, 0, 0, 169.99145507813, -1, -1, -1, 250.0);
CreateDynamicObject(3935, -1888.9923095703, 0.75394773483276, 1062.0471191406, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2369, -1895.7315673828, -17.325862884521, 1068.2938232422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1235, -1887.8033447266, 0.78797036409378, 1060.9230957031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(16780, -1827.3989257813, -5.6921076774597, 1083.3021240234, 0, 90, 267, -1, -1, -1, 250.0);
CreateDynamicObject(16780, -1832.6486816406, -5.6605262756348, 1082.4830322266, 0, 90, 266.99523925781, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1861.236328125, 9.1474609375, 1067.2801513672, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1861.2138671875, 14.2529296875, 1067.2801513672, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1860.630859375, 5.8662109375, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.9541015625, 5.8798828125, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1855.328125, 5.8798828125, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1852.0546875, 6.40234375, 1067.2801513672, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1852.05078125, 10.067269325256, 1067.2801513672, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1852.0654296875, 13.7783203125, 1067.2801513672, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1523, -1856.728515625, 14.23828125, 1067.1236572266, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(1523, -1856.748046875, 7.5380859375, 1067.1486816406, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(3095, -1856.6198730469, 10.45565700531, 1069.6105957031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.77734375, 10.7255859375, 1067.2801513672, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.763671875, 12.251953125, 1067.2801513672, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1853.4072265625, 12.83203125, 1067.2801513672, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1853.015625, 16.626953125, 1067.2801513672, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1853.0234375, 9.2265625, 1067.2801513672, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1853.4599609375, 6.08984375, 1067.2801513672, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1853.0126953125, 12.9267578125, 1067.2801513672, 0, 0, 269.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.18359375, 7.3681640625, 1067.2801513672, 0, 0, 359.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(2528, -1853.4794921875, 13.453125, 1067.298828125, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2528, -1853.3060302734, 6.674768447876, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2515, -1857.3681640625, 9.4853515625, 1068.4091796875, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2440, -1857.259765625, 8.6127157211304, 1067.2738037109, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2439, -1857.26171875, 9.59375, 1067.2487792969, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2439, -1857.2607421875, 10.59375, 1067.2487792969, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2440, -1857.23046875, 11.587890625, 1067.2487792969, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2515, -1857.322265625, 10.6337890625, 1068.4091796875, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2492, -1894.7641601563, -18.96541595459, 1067.9022216797, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2498, -1899.2263183594, -16.91290473938, 1070.4449462891, 0, 0, 300, -1, -1, -1, 250.0);
CreateDynamicObject(2498, -1899.2506103516, -14.059661865234, 1070.4449462891, 0, 0, 299.99816894531, -1, -1, -1, 250.0);
CreateDynamicObject(2499, -1899.1461181641, -15.590866088867, 1071.9794921875, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2511, -1888.4487304688, -14.282510757446, 1068.7154541016, 0, 0, 249.99938964844, -1, -1, -1, 250.0);
CreateDynamicObject(2796, -1861.142578125, 7.787109375, 1068.6712646484, 0, 0, 90.24169921875, -1, -1, -1, 250.0);
//CreateDynamicObject(2395, -1857.2412109375, 6.119140625, 1067.2801513672, 0, 0, 179.99450683594, -1, -1, -1, 250.0); --bosscr4sh
CreateDynamicObject(2395, -1861.01953125, 6.408203125, 1067.2801513672, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1857.8662109375, 6.111328125, 1067.2801513672, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1860.9970703125, 11.5107421875, 1067.2801513672, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2796, -1861.1083984375, 12.5126953125, 1068.6462402344, 0, 0, 269.49462890625, -1, -1, -1, 250.0);
CreateDynamicObject(2742, -1859.921875, 6.25, 1068.6022949219, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2742, -1858.5947265625, 6.193359375, 1068.6022949219, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1860.5703125, 14.048828125, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.869140625, 14.056640625, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2395, -1856.2177734375, 14.0498046875, 1067.2801513672, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2741, -1856.833984375, 7.841796875, 1068.4890136719, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2741, -1856.8115234375, 12.3916015625, 1068.5140380859, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2718, -1760.3098144531, -5.8707761764526, 1070.6594238281, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2852, -1770.9552001953, -10.194198608398, 1067.8972167969, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2848, -1776.3355712891, -10.250263214111, 1067.8972167969, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2849, -1776.6623535156, -0.69120442867279, 1067.8972167969, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2829, -1769.7550048828, 11.426117897034, 1068.1130371094, 0, 0, 99.99755859375, -1, -1, -1, 250.0);
CreateDynamicObject(2842, -1861.0777587891, 9.7542419433594, 1067.2818603516, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2842, -1856.6622314453, 12.756469726563, 1066.7482910156, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2842, -1856.6959228516, 6.4000353813171, 1066.7482910156, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2251, -1857.2373046875, 11.44921875, 1069.0421142578, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2251, -1857.3486328125, 8.6513671875, 1069.0921630859, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2685, -1856.7607421875, 10.0439453125, 1068.9194335938, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2456, -1768.4599609375, 2.345703125, 1067.2738037109, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2475, -1899.603515625, -15.5732421875, 1067.1987304688, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2475, -1899.6044921875, -17.048828125, 1067.1987304688, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2479, -1899.3979492188, -16.669204711914, 1068.1446533203, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2479, -1899.4197998047, -15.427906036377, 1068.1196289063, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2464, -1890.4056396484, -14.326002120972, 1068.4271240234, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2466, -1899.4213867188, -15.942332267761, 1068.8580322266, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3761, -1879.9833984375, -19.8984375, 1069.2827148438, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(3761, -1873.83203125, -19.9111328125, 1069.2827148438, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2465, -1887.6760253906, -17.871356964111, 1068.5291748047, 0, 0, 129.99572753906, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1893.9533691406, 2.630735874176, 1061.0791015625, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1893.9545898438, 5.3309097290039, 1061.0791015625, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(2885, -1807.3920898438, 26.741167068481, 1067.1202392578, 0, 0, 269.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(18092, -1889.0537109375, -14.3857421875, 1067.7836914063, 0, 0, 359.98352050781, -1, -1, -1, 250.0);
CreateDynamicObject(2361, -1761.1955566406, 1.6491981744766, 1067.2237548828, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(3440, -1773.0964355469, 13.24863243103, 1068.7482910156, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1837.0382080078, 12.636053085327, 1060.9266357422, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1835.6982421875, 11.684759140015, 1060.9266357422, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1884.1829833984, -14.605865478516, 1064.2393798828, 0, 0, 134.74475097656, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1884.1826171875, -14.60546875, 1064.2393798828, 0, 0, 134.74182128906, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1892.0433349609, -6.6995887756348, 1064.2393798828, 0, 0, 224.74182128906, -1, -1, -1, 250.0);
CreateDynamicObject(3858, -1892.04296875, -6.69921875, 1064.2393798828, 0, 0, 224.736328125, -1, -1, -1, 250.0);
CreateDynamicObject(1235, -1890.1053466797, 0.75075674057007, 1060.9230957031, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1883.1302490234, -1.9763971567154, 1061.0791015625, 0, 0, 179.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1883.2401123047, 3.956563949585, 1061.0791015625, 0, 0, 179.98901367188, -1, -1, -1, 250.0);
CreateDynamicObject(1256, -1884.0147705078, 3.9654855728149, 1061.0791015625, 0, 0, 359.98352050781, -1, -1, -1, 250.0);
CreateDynamicObject(1714, -1891.3907470703, -8.9358806610107, 1060.4211425781, 0, 0, 180, -1, -1, -1, 250.0);
CreateDynamicObject(1714, -1887.8153076172, -8.887716293335, 1060.4211425781, 0, 0, 179.99450683594, -1, -1, -1, 250.0);
CreateDynamicObject(1714, -1886.2640380859, -12.282489776611, 1060.4211425781, 0, 0, 49.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(1714, -1886.3663330078, -18.171674728394, 1060.4211425781, 0, 0, 89.994506835938, -1, -1, -1, 250.0);
CreateDynamicObject(2190, -1884.4637451172, -12.512238502502, 1061.7530517578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2190, -1884.4946289063, -18.516830444336, 1061.7530517578, 0, 0, 270, -1, -1, -1, 250.0);
CreateDynamicObject(2190, -1887.6204833984, -7.0205903053284, 1061.7530517578, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2190, -1890.9213867188, -7.0612058639526, 1061.7530517578, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2186, -1893.8760986328, -13.171132087708, 1060.4212646484, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(2201, -1884.4401855469, -8.1255531311035, 1061.7530517578, 0, 0, 0, -1, -1, -1, 250.0);
CreateDynamicObject(2816, -1884.8566894531, -13.600368499756, 1061.7530517578, 0, 0, 300, -1, -1, -1, 250.0);
CreateDynamicObject(2773, -1837.962890625, 14.1162109375, 1060.9266357422, 0, 0, 90, -1, -1, -1, 250.0);
CreateDynamicObject(1533, -1789.85546875, 37.8193359375, 1060.4094238281, 0, 0, 270, -1, -1, -1, 250.0);
// Wang Cars // Wang Cars
SetDynamicObjectMaterial( CreateDynamicObject( 18070, -1954.503173, 302.190399, 34.948787, 0.000000, 0.000000, -90.000000 ), 0, 8534, "tikimotel", "sa_wood01_128", 0 ); SetDynamicObjectMaterial( CreateDynamicObject( 18070, -1954.503173, 302.190399, 34.948787, 0.000000, 0.000000, -90.000000 ), 0, 8534, "tikimotel", "sa_wood01_128", 0 );
CreateDynamicObject( 2190, -1956.534423, 300.809387, 35.378757, 0.000000, 0.000000, 90.000000 ); CreateDynamicObject( 2190, -1956.534423, 300.809387, 35.378757, 0.000000, 0.000000, 90.000000 );

View File

@ -279,7 +279,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
szBigString = "~y~~k~~PED_SPRINT~~w~ - Begin game/Stand~n~~y~~k~~GROUP_CONTROL_BWD~~w~ - Hit~n~~y~~k~~VEHICLE_ENTER_EXIT~~w~ - Exit"; szBigString = "~y~~k~~PED_SPRINT~~w~ - Begin game/Stand~n~~y~~k~~GROUP_CONTROL_BWD~~w~ - Hit~n~~y~~k~~VEHICLE_ENTER_EXIT~~w~ - Exit";
ShowPlayerHelpDialog( playerid, 0, szBigString ); ShowPlayerHelpDialog( playerid, 0, szBigString );
SendServerMessage( playerid, "You have entered the %s hand blackjack table.", ConvertPrice( g_blackjackData[ id ] [ E_PAYOUT ] ) ); SendServerMessage( playerid, "You have entered the %s hand blackjack table.", number_format( g_blackjackData[ id ] [ E_PAYOUT ] ) );
ApplyAnimation( playerid, "DEALER", "DEALER_IDLE", 4.1, 1, 1, 1, 1, 0, 1 ); ApplyAnimation( playerid, "DEALER", "DEALER_IDLE", 4.1, 1, 1, 1, 1, 0, 1 );
return 1; return 1;
} }
@ -314,7 +314,7 @@ stock CreateBlackjackTable( payout, Float: X, Float: Y, Float: Z, Float: Angle,
g_blackjackData[ id ] [ E_PAYOUT ] = payout; g_blackjackData[ id ] [ E_PAYOUT ] = payout;
g_blackjackData[ id ] [ E_OBJECT ] = CreateDynamicObject( 2188, X, Y, Z, 0.00000, 0.00000, Angle, .worldid = world, .priority = 9999 ); g_blackjackData[ id ] [ E_OBJECT ] = CreateDynamicObject( 2188, X, Y, Z, 0.00000, 0.00000, Angle, .worldid = world, .priority = 9999 );
g_blackjackData[ id ] [ E_ACTOR ] = CreateDynamicActor( 171, X - 0.4 * floatcos( Angle - 90.0, degrees ), Y - 0.4 * floatsin( Angle - 90.0, degrees ), Z, Angle + 180.0, .worldid = world ); g_blackjackData[ id ] [ E_ACTOR ] = CreateDynamicActor( 171, X - 0.4 * floatcos( Angle - 90.0, degrees ), Y - 0.4 * floatsin( Angle - 90.0, degrees ), Z, Angle + 180.0, .worldid = world );
CreateDynamic3DTextLabel( sprintf( "Press ENTER To Play Blackjack\n"COL_WHITE"%s Minimum", ConvertPrice( payout ) ), COLOR_GREY, X, Y, Z + 0.25, 15.0, .testlos = 0, .worldid = world ); CreateDynamic3DTextLabel( sprintf( "Press ENTER To Play Blackjack\n"COL_WHITE"%s Minimum", number_format( payout ) ), COLOR_GREY, X, Y, Z + 0.25, 15.0, .testlos = 0, .worldid = world );
SetDynamicActorInvulnerable( g_blackjackData[ id ] [ E_ACTOR ], true ); SetDynamicActorInvulnerable( g_blackjackData[ id ] [ E_ACTOR ], true );
SetDynamicActorVirtualWorld( g_blackjackData[ id ] [ E_ACTOR ], world ); SetDynamicActorVirtualWorld( g_blackjackData[ id ] [ E_ACTOR ], world );
@ -569,8 +569,8 @@ stock CheckForBlackjack( tableid )
if ( dealer_score == player_score && dealer_score >= 17 ) { if ( dealer_score == player_score && dealer_score >= 17 ) {
payout = g_blackjackData[ tableid ] [ E_PAYOUT ]; payout = g_blackjackData[ tableid ] [ E_PAYOUT ];
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has been returned %s due to a push.", ReturnPlayerName( playerid ), playerid, ConvertPrice( payout ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has been returned %s due to a push.", ReturnPlayerName( playerid ), playerid, number_format( payout ) );
GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", ConvertPrice( payout ) ), 4000, 3 ); GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", number_format( payout ) ), 4000, 3 );
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
GivePlayerCash( playerid, payout ); GivePlayerCash( playerid, payout );
} }
@ -578,43 +578,43 @@ stock CheckForBlackjack( tableid )
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN;
if ( IsPlayerHandBlackjack( tableid, player_index, player_score ) ) { if ( IsPlayerHandBlackjack( tableid, player_index, player_score ) ) {
payout = floatround( float( g_blackjackData[ tableid ] [ E_PAYOUT ] ) * 2.5 ); payout = floatround( float( g_blackjackData[ tableid ] [ E_PAYOUT ] ) * 2.5 );
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" Blackjack! %s(%d) has won %s!", ReturnPlayerName( playerid ), playerid, ConvertPrice( payout ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" Blackjack! %s(%d) has won %s!", ReturnPlayerName( playerid ), playerid, number_format( payout ) );
} else { } else {
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a card count of 21!", ReturnPlayerName( playerid ), playerid, ConvertPrice( payout ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a card count of 21!", ReturnPlayerName( playerid ), playerid, number_format( payout ) );
} }
GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", ConvertPrice( payout ) ), 4000, 3 ); GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", number_format( payout ) ), 4000, 3 );
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
GivePlayerCash( playerid, payout ); GivePlayerCash( playerid, payout );
} }
else if ( dealer_score == 21 ) { else if ( dealer_score == 21 ) {
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a dealer %s.", ReturnPlayerName( playerid ), playerid, ConvertPrice( g_blackjackData[ tableid ] [ E_PAYOUT ] ), IsDealerHandBlackjack( tableid, dealer_score ) ? ( "blackjack" ) : ( "21" ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a dealer %s.", ReturnPlayerName( playerid ), playerid, number_format( g_blackjackData[ tableid ] [ E_PAYOUT ] ), IsDealerHandBlackjack( tableid, dealer_score ) ? ( "blackjack" ) : ( "21" ) );
GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 ); GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 );
} }
else if ( player_score > 21 ) { else if ( player_score > 21 ) {
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a bust.", ReturnPlayerName( playerid ), playerid, ConvertPrice( g_blackjackData[ tableid ] [ E_PAYOUT ] ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a bust.", ReturnPlayerName( playerid ), playerid, number_format( g_blackjackData[ tableid ] [ E_PAYOUT ] ) );
GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 ); GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 );
} }
else if ( dealer_score > 21 ) { else if ( dealer_score > 21 ) {
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a dealer bust.", ReturnPlayerName( playerid ), playerid, ConvertPrice( payout ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a dealer bust.", ReturnPlayerName( playerid ), playerid, number_format( payout ) );
GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", ConvertPrice( payout ) ), 4000, 3 ); GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", number_format( payout ) ), 4000, 3 );
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
GivePlayerCash( playerid, payout ); GivePlayerCash( playerid, payout );
} }
else if ( player_score < dealer_score && dealer_score >= 17 ) { else if ( player_score < dealer_score && dealer_score >= 17 ) {
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_BUST;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a bust.", ReturnPlayerName( playerid ), playerid, ConvertPrice( g_blackjackData[ tableid ] [ E_PAYOUT ] ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has lost %s due to a bust.", ReturnPlayerName( playerid ), playerid, number_format( g_blackjackData[ tableid ] [ E_PAYOUT ] ) );
GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 ); GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 );
} }
else if ( player_score > dealer_score && dealer_score >= 17 ) { else if ( player_score > dealer_score && dealer_score >= 17 ) {
g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN; g_blackjackPlayerState[ tableid ] [ player_index ] = BLACKJACK_STATE_WIN;
SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a dealer bust.", ReturnPlayerName( playerid ), playerid, ConvertPrice( g_blackjackData[ tableid ] [ E_PAYOUT ] ) ); SendClientMessageToBlackjack( tableid, COLOR_GREY, "[BLACKJACK]"COL_WHITE" %s(%d) has won %s due to a dealer bust.", ReturnPlayerName( playerid ), playerid, number_format( g_blackjackData[ tableid ] [ E_PAYOUT ] ) );
GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", ConvertPrice( payout ) ), 4000, 3 ); GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", number_format( payout ) ), 4000, 3 );
GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 ); GivePlayerCasinoRewardsPoints( playerid, g_blackjackData[ tableid ] [ E_PAYOUT ], .house_edge = 1.5 );
GivePlayerCash( playerid, payout ); GivePlayerCash( playerid, payout );
} }
@ -622,7 +622,7 @@ stock CheckForBlackjack( tableid )
// alert world // alert world
if ( g_blackjackPlayerState[ tableid ] [ player_index ] == BLACKJACK_STATE_WIN && payout > g_blackjackData[ tableid ] [ E_PAYOUT ] && payout >= 10000 ) { if ( g_blackjackPlayerState[ tableid ] [ player_index ] == BLACKJACK_STATE_WIN && payout > g_blackjackData[ tableid ] [ E_PAYOUT ] && payout >= 10000 ) {
UpdateServerVariable( "blackjack_wins", 0, GetGVarFloat( "blackjack_wins" ) + ( float( payout ) / 1000000.0 ), "", GLOBAL_VARTYPE_FLOAT ); UpdateServerVariable( "blackjack_wins", 0, GetGVarFloat( "blackjack_wins" ) + ( float( payout ) / 1000000.0 ), "", GLOBAL_VARTYPE_FLOAT );
SendGlobalMessage( -1, ""COL_GREY"[CASINO]{FFFFFF} %s(%d) has won "COL_GOLD"%s"COL_WHITE" from blackjack!", ReturnPlayerName( playerid ), playerid, ConvertPrice( payout ) ); SendGlobalMessage( -1, ""COL_GREY"[CASINO]{FFFFFF} %s(%d) has won "COL_GOLD"%s"COL_WHITE" from blackjack!", ReturnPlayerName( playerid ), playerid, number_format( payout ) );
} }
} }
} }

View File

@ -80,6 +80,7 @@ hook OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
{ {
if (dialogid == DIALOG_FIREWORKS) if (dialogid == DIALOG_FIREWORKS)
{ {
if ( GetPlayerFireworks( playerid ) < 1 ) return SendError( playerid, "You do not have any fireworks." );
switch ( listitem ) switch ( listitem )
{ {
case 0: case 0:
@ -117,6 +118,8 @@ hook OnDialogResponse( playerid, dialogid, response, listitem, inputtext[ ] )
} }
else if ( dialogid == DIALOG_FIREWORKS_COLOR ) else if ( dialogid == DIALOG_FIREWORKS_COLOR )
{ {
if ( GetPlayerFireworks( playerid ) < 1 ) return SendError( playerid, "You do not have any fireworks." );
if ( ! response ) if ( ! response )
{ {
DeletePVar(playerid, "FW_Color1"); DeletePVar(playerid, "FW_Color1");
@ -513,44 +516,22 @@ public FW_MainCreateEnd(playerid, firework)
switch( firework ) switch( firework )
{ {
case FW_UNKNOWN: return SendError( playerid, "Fireworks couldn't be created!" ), 0; case FW_FOUNTAIN: FW_FountainCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
case FW_FOUNTAIN: case FW_ROCKET: FW_RocketCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
{ case FW_SPLITTER: FW_SplitterCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
FW_FountainCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2")); case FW_UMBRELLA: FW_UmbrelllaCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color1"); case FW_CAKE: FW_CakeCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color2");
return 1;
}
case FW_ROCKET:
{
FW_RocketCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color1");
DeletePVar(playerid, "FW_Color2");
return 1;
}
case FW_SPLITTER:
{
FW_SplitterCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color1");
DeletePVar(playerid, "FW_Color2");
return 1;
}
case FW_UMBRELLA:
{
FW_UmbrelllaCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color1");
DeletePVar(playerid, "FW_Color2");
return 1;
}
case FW_CAKE:
{
FW_CakeCreate(playerid, fw, fwX, fwY, Z, R, GetPVarInt(playerid, "FW_Color1"), GetPVarInt(playerid, "FW_Color2"));
DeletePVar(playerid, "FW_Color1");
DeletePVar(playerid, "FW_Color2");
return 1;
}
default: return SendError( playerid, "Fireworks couldn't be created!" ); default: return SendError( playerid, "Fireworks couldn't be created!" );
} }
// reset colors
DeletePVar(playerid, "FW_Color1");
DeletePVar(playerid, "FW_Color2");
// give a less firework
GivePlayerFireworks( playerid, -1 );
SendServerMessage( playerid, "You have placed a firework. You now have %d remaining fireworks.", GetPlayerFireworks( playerid ) );
return 1;
} }
return SendError( playerid, "Server limit is reached! Light some before you place more." ), 0; return SendError( playerid, "Server limit is reached! Light some before you place more." ), 0;
} }
@ -1144,7 +1125,7 @@ stock RemoveWeaponFromSlot(playerid, weaponslot)
/* ** Commands ** */ /* ** Commands ** */
CMD:fireworks( playerid, params[] ) CMD:fireworks( playerid, params[] )
{ {
if ( ! IsPlayerAdmin( playerid ) ) return 0; if ( GetPlayerFireworks( playerid ) < 1 ) return SendError( playerid, "You do not have any fireworks." );
ShowPlayerDialog( playerid, DIALOG_FIREWORKS, DIALOG_STYLE_LIST, ""COL_WHITE"Fireworks", "Fountain\nRocket\nSplitter\nUmbrella\nCake", "Select", "Back" ); ShowPlayerDialog( playerid, DIALOG_FIREWORKS, DIALOG_STYLE_LIST, ""COL_WHITE"Fireworks", "Fountain\nRocket\nSplitter\nUmbrella\nCake", "Select", "Back" );
return 1; return 1;
} }

View File

@ -413,7 +413,7 @@ stock ResetLabel(handle)
new const buy_in = TableData[handle][E_TABLE_BUY_IN]; new const buy_in = TableData[handle][E_TABLE_BUY_IN];
new const small_blind = TableData[handle][E_TABLE_SMALL_BLIND]; new const small_blind = TableData[handle][E_TABLE_SMALL_BLIND];
UpdateDynamic3DTextLabelTextEx(TableData[handle][E_TABLE_POT_LABEL], COLOR_GREY, UpdateDynamic3DTextLabelTextEx(TableData[handle][E_TABLE_POT_LABEL], COLOR_GREY,
"Press ENTER To Play Poker\n{FFFFFF}%s Minimum\n%s / %s Blinds", ConvertPrice(buy_in), ConvertPrice(small_blind), ConvertPrice(small_blind * 2)); "Press ENTER To Play Poker\n{FFFFFF}%s Minimum\n%s / %s Blinds", number_format(buy_in), number_format(small_blind), number_format(small_blind * 2));
return 1; return 1;
} }
@ -1029,7 +1029,7 @@ stock AddPlayerToTable(playerid, handle)
return 0; return 0;
} }
if(GetPlayerCash(playerid) < TableData[handle][E_TABLE_BUY_IN]) return SendPokerMessage(playerid, "You don't have enough money to access this table. Buy In: %s", ConvertPrice(TableData[handle][E_TABLE_BUY_IN])); if(GetPlayerCash(playerid) < TableData[handle][E_TABLE_BUY_IN]) return SendPokerMessage(playerid, "You don't have enough money to access this table. Buy In: %s", number_format(TableData[handle][E_TABLE_BUY_IN]));
new index = Player_GetUnusedAttachIndex(playerid); new index = Player_GetUnusedAttachIndex(playerid);
if(index == cellmin) if(index == cellmin)
@ -1073,7 +1073,7 @@ stock AddPlayerToTable(playerid, handle)
TableData[handle][E_TABLE_CHAIR_PLAYER_ID][slot] = playerid; TableData[handle][E_TABLE_CHAIR_PLAYER_ID][slot] = playerid;
GivePlayerCash(playerid, -TableData[handle][E_TABLE_BUY_IN]); GivePlayerCash(playerid, -TableData[handle][E_TABLE_BUY_IN]);
PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = TableData[handle][E_TABLE_BUY_IN]; PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = TableData[handle][E_TABLE_BUY_IN];
SendPokerMessage(playerid, "You've been charged %s as a result of joining in the table.", ConvertPrice(TableData[handle][E_TABLE_BUY_IN])); SendPokerMessage(playerid, "You've been charged %s as a result of joining in the table.", number_format(TableData[handle][E_TABLE_BUY_IN]));
//Allow players to join a table where a game has already started but there are empty seats remaining (these players will be able to play once the current match finishes) //Allow players to join a table where a game has already started but there are empty seats remaining (these players will be able to play once the current match finishes)
if(TableData[handle][E_TABLE_CURRENT_STATE] != STATE_BEGIN) if(TableData[handle][E_TABLE_CURRENT_STATE] != STATE_BEGIN)
{ {
@ -1135,13 +1135,13 @@ stock UpdateInfoTextdrawsForPlayer(playerid)
{ {
new handle = PlayerData[playerid][E_PLAYER_CURRENT_HANDLE]; new handle = PlayerData[playerid][E_PLAYER_CURRENT_HANDLE];
new tstring[64]; new tstring[64];
format(tstring, sizeof(tstring), "~g~Chips:_~w~%s", ConvertPrice(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS])); format(tstring, sizeof(tstring), "~g~Chips:_~w~%s", number_format(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS]));
PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][2], tstring); PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][2], tstring);
format(tstring, sizeof(tstring), "~y~Pot:_~w~%s", ConvertPrice(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT])); format(tstring, sizeof(tstring), "~y~Pot:_~w~%s", number_format(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]));
PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][3], tstring); PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][3], tstring);
format(tstring, sizeof(tstring), "~r~Last_bet:_~w~%s", ConvertPrice(TableData[handle][E_TABLE_LAST_BET])); format(tstring, sizeof(tstring), "~r~Last_bet:_~w~%s", number_format(TableData[handle][E_TABLE_LAST_BET]));
PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][4], tstring); PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][4], tstring);
format(tstring, sizeof(tstring), "~r~Your_bet:_~w~%s", ConvertPrice(PlayerData[playerid][E_PLAYER_CURRENT_BET])); format(tstring, sizeof(tstring), "~r~Your_bet:_~w~%s", number_format(PlayerData[playerid][E_PLAYER_CURRENT_BET]));
PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][5], tstring); PlayerTextDrawSetString(playerid, PlayerData[playerid][E_PLAYER_INFO_TXT][5], tstring);
return 1; return 1;
} }
@ -1566,8 +1566,8 @@ public Poker_DealCards(handle)
{ {
PlayerData[big_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_BIG_BLIND]; PlayerData[big_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_BIG_BLIND];
PlayerData[small_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_SMALL_BLIND]; PlayerData[small_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_SMALL_BLIND];
SendTableMessage(handle, "{2DD9A9} * * %s posts a small blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_SMALL_BLIND_ID]), ConvertPrice(TableData[handle][E_TABLE_SMALL_BLIND])); SendTableMessage(handle, "{2DD9A9} * * %s posts a small blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_SMALL_BLIND_ID]), number_format(TableData[handle][E_TABLE_SMALL_BLIND]));
SendTableMessage(handle, "{2DD9A9} * * %s posts a big blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]), ConvertPrice(TableData[handle][E_TABLE_BIG_BLIND])); SendTableMessage(handle, "{2DD9A9} * * %s posts a big blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]), number_format(TableData[handle][E_TABLE_BIG_BLIND]));
new next_turn = GetTurnAfterPlayer(handle, TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]); new next_turn = GetTurnAfterPlayer(handle, TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]);
TableData[handle][E_TABLE_LAST_BET] = TableData[handle][E_TABLE_BIG_BLIND]; TableData[handle][E_TABLE_LAST_BET] = TableData[handle][E_TABLE_BIG_BLIND];
SetLastToRaise(handle, next_turn); SetLastToRaise(handle, next_turn);
@ -1590,7 +1590,7 @@ public Poker_DealCards(handle)
} }
else else
{ {
SendTableMessage(handle, "{2DD9A9} * * %s posts a small blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_SMALL_BLIND_ID]), ConvertPrice(TableData[handle][E_TABLE_SMALL_BLIND])); SendTableMessage(handle, "{2DD9A9} * * %s posts a small blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_SMALL_BLIND_ID]), number_format(TableData[handle][E_TABLE_SMALL_BLIND]));
RemoveChipsFromPlayer( small_blind, TableData[handle][E_TABLE_SMALL_BLIND]); RemoveChipsFromPlayer( small_blind, TableData[handle][E_TABLE_SMALL_BLIND]);
PlayerData[small_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_SMALL_BLIND]; PlayerData[small_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_SMALL_BLIND];
} }
@ -1609,7 +1609,7 @@ public Poker_DealCards(handle)
else else
{ {
SendTableMessage(handle, "{2DD9A9} * * %s posts a big blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]), ConvertPrice(TableData[handle][E_TABLE_BIG_BLIND])); SendTableMessage(handle, "{2DD9A9} * * %s posts a big blind of %s.. * *", ReturnPlayerName(TableData[handle][E_TABLE_PLAYER_BIG_BLIND_ID]), number_format(TableData[handle][E_TABLE_BIG_BLIND]));
RemoveChipsFromPlayer( big_blind, TableData[handle][E_TABLE_BIG_BLIND]); RemoveChipsFromPlayer( big_blind, TableData[handle][E_TABLE_BIG_BLIND]);
PlayerData[big_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_BIG_BLIND]; PlayerData[big_blind][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_BIG_BLIND];
TableData[handle][E_TABLE_LAST_BET] = TableData[handle][E_TABLE_BIG_BLIND]; TableData[handle][E_TABLE_LAST_BET] = TableData[handle][E_TABLE_BIG_BLIND];
@ -1639,14 +1639,14 @@ static stock UpdateTable(handle)
UpdateInfoTextdrawsForPlayer(playerid); UpdateInfoTextdrawsForPlayer(playerid);
new const seat = PlayerData[playerid][E_PLAYER_CURRENT_CHAIR_SLOT]; new const seat = PlayerData[playerid][E_PLAYER_CURRENT_CHAIR_SLOT];
new str[128 ]; new str[128 ];
format(str, sizeof(str), "{34c5db}Chips: {db8d34}%s\n{db3a34}Last bet: {db8d34}%s", ConvertPrice(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS]), ConvertPrice(PlayerData[playerid][E_PLAYER_CURRENT_BET])); format(str, sizeof(str), "{34c5db}Chips: {db8d34}%s\n{db3a34}Last bet: {db8d34}%s", number_format(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS]), number_format(PlayerData[playerid][E_PLAYER_CURRENT_BET]));
UpdateDynamic3DTextLabelText(TableData[handle][E_TABLE_BET_LABELS][seat], T_BET_LABEL_COLOR, str); UpdateDynamic3DTextLabelText(TableData[handle][E_TABLE_BET_LABELS][seat], T_BET_LABEL_COLOR, str);
SetChipsValue(handle, PlayerData[playerid][E_PLAYER_CURRENT_CHAIR_SLOT], PlayerData[playerid][E_PLAYER_TOTAL_CHIPS]); SetChipsValue(handle, PlayerData[playerid][E_PLAYER_CURRENT_CHAIR_SLOT], PlayerData[playerid][E_PLAYER_TOTAL_CHIPS]);
} }
new str[256]; new str[256];
new tmp[10]; new tmp[10];
format(str, sizeof(str), "{59cdff}Main Pot: {ff9059}%s\n", ConvertPrice(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT])); format(str, sizeof(str), "{59cdff}Main Pot: {ff9059}%s\n", number_format(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]));
SetPotChipsValue(handle, TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]); SetPotChipsValue(handle, TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]);
if(Iter_Count(IT_Sidepots[handle] > 1)) if(Iter_Count(IT_Sidepots[handle] > 1))
{ {
@ -1654,7 +1654,7 @@ static stock UpdateTable(handle)
foreach(new i: IT_Sidepots[handle]) foreach(new i: IT_Sidepots[handle])
{ {
if(i == MAIN_POT) continue; if(i == MAIN_POT) continue;
format(tmp, sizeof(tmp), "%s\n", ConvertPrice(TableData[handle][E_TABLE_POT_CHIPS][i])); format(tmp, sizeof(tmp), "%s\n", number_format(TableData[handle][E_TABLE_POT_CHIPS][i]));
strcat(str, tmp); strcat(str, tmp);
} }
} }
@ -1982,7 +1982,7 @@ stock CheckShowdown(handle)
GivePlayerCasinoRewardsPoints(high_id, fee_earned, .house_edge = 100.0); GivePlayerCasinoRewardsPoints(high_id, fee_earned, .house_edge = 100.0);
SendTableMessage(handle, "{9FCF30}****************************************************************************************"); SendTableMessage(handle, "{9FCF30}****************************************************************************************");
SendTableMessage(handle, "{9FCF30}Player {FF8000}%s {9FCF30}has won with a {377CC8}%s", ReturnPlayerName(high_id), HAND_RANKS[highest_rank >> 12]); SendTableMessage(handle, "{9FCF30}Player {FF8000}%s {9FCF30}has won with a {377CC8}%s", ReturnPlayerName(high_id), HAND_RANKS[highest_rank >> 12]);
SendTableMessage(handle, "{9FCF30}Prize: {377CC8}%s | -%0.0f%s percent fee.", ConvertPrice(w_chips), T_POT_FEE_RATE * 100.0, "%%"); SendTableMessage(handle, "{9FCF30}Prize: {377CC8}%s | -%0.0f%s percent fee.", number_format(w_chips), T_POT_FEE_RATE * 100.0, "%%");
SendTableMessage(handle, "{9FCF30}****************************************************************************************"); SendTableMessage(handle, "{9FCF30}****************************************************************************************");
if (strmatch(HAND_RANKS[highest_rank >> 12], "Royal Flush")) printf("****\nRoyal Flush Player %s\n****\n", ReturnPlayerName(high_id)); if (strmatch(HAND_RANKS[highest_rank >> 12], "Royal Flush")) printf("****\nRoyal Flush Player %s\n****\n", ReturnPlayerName(high_id));
PlayerData[high_id][E_PLAYER_TOTAL_CHIPS] += w_chips; PlayerData[high_id][E_PLAYER_TOTAL_CHIPS] += w_chips;
@ -2198,7 +2198,7 @@ stock bool: FoldPlayer(handle, playerid)
new fee_earned = floatround((float(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]) / 1000.0) * T_POT_FEE_RATE); new fee_earned = floatround((float(TableData[handle][E_TABLE_POT_CHIPS][MAIN_POT]) / 1000.0) * T_POT_FEE_RATE);
UpdateServerVariable( "poker_fees", 0, GetGVarFloat( "poker_fees" ) + fee_earned, "", GLOBAL_VARTYPE_FLOAT ); UpdateServerVariable( "poker_fees", 0, GetGVarFloat( "poker_fees" ) + fee_earned, "", GLOBAL_VARTYPE_FLOAT );
GivePlayerCasinoRewardsPoints(winner, fee_earned, .house_edge = 100.0); GivePlayerCasinoRewardsPoints(winner, fee_earned, .house_edge = 100.0);
SendTableMessage(handle, "{9FCF30}Prize: {377CC8}%s | -%0.0f%s percent fee", ConvertPrice(w_chips), T_POT_FEE_RATE * 100.0, "%%"); SendTableMessage(handle, "{9FCF30}Prize: {377CC8}%s | -%0.0f%s percent fee", number_format(w_chips), T_POT_FEE_RATE * 100.0, "%%");
SendTableMessage(handle, "{9FCF30}****************************************************************************************"); SendTableMessage(handle, "{9FCF30}****************************************************************************************");
PlayerData[winner][E_PLAYER_TOTAL_CHIPS] += w_chips; PlayerData[winner][E_PLAYER_TOTAL_CHIPS] += w_chips;
PlayerData[winner][E_PLAYER_TOTAL_CHIPS] += PlayerData[winner][E_PLAYER_CURRENT_BET]; PlayerData[winner][E_PLAYER_TOTAL_CHIPS] += PlayerData[winner][E_PLAYER_CURRENT_BET];
@ -2255,8 +2255,8 @@ hook OnPlayerClickPlayerTD(playerid, PlayerText:playertextid)
if(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] >= dif) if(PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] >= dif)
{ {
KillPlayerTurnTimer(playerid); KillPlayerTurnTimer(playerid);
SendTableMessage(handle, "{2DD9A9} * * %s calls %s .. * *", ReturnPlayerName(playerid), ConvertPrice(dif)); SendTableMessage(handle, "{2DD9A9} * * %s calls %s .. * *", ReturnPlayerName(playerid), number_format(dif));
SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{22B1BD}** CALLS %s ** ", ConvertPrice(dif)); SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{22B1BD}** CALLS %s ** ", number_format(dif));
RemoveChipsFromPlayer( playerid, dif); RemoveChipsFromPlayer( playerid, dif);
PlayerData[playerid][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_LAST_BET]; PlayerData[playerid][E_PLAYER_CURRENT_BET] = TableData[handle][E_TABLE_LAST_BET];
SetPlayerClickedTxt(playerid, true); SetPlayerClickedTxt(playerid, true);
@ -2305,8 +2305,8 @@ stock ForcePlayerAllIn(playerid, handle, bool:checkpot = true)
Iter_Add(IT_PlayersAllIn<handle>, playerid); Iter_Add(IT_PlayersAllIn<handle>, playerid);
new raise = PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] + PlayerData[playerid][E_PLAYER_CURRENT_BET]; new raise = PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] + PlayerData[playerid][E_PLAYER_CURRENT_BET];
PlayerData[playerid][E_PLAYER_CURRENT_BET] = raise; PlayerData[playerid][E_PLAYER_CURRENT_BET] = raise;
SendTableMessage(handle, "{2DD9A9} * * %s goes all in with %s .. * *", ReturnPlayerName(playerid), ConvertPrice(raise)); SendTableMessage(handle, "{2DD9A9} * * %s goes all in with %s .. * *", ReturnPlayerName(playerid), number_format(raise));
SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{9512CD}** ALL IN with %s ** ", ConvertPrice(raise)); SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{9512CD}** ALL IN with %s ** ", number_format(raise));
PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = 0; PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = 0;
if(checkpot) if(checkpot)
CheckPotAndNextTurn(playerid, handle); CheckPotAndNextTurn(playerid, handle);
@ -2328,7 +2328,7 @@ hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{ {
GivePlayerCash(playerid, -TableData[handle][E_TABLE_BUY_IN]); GivePlayerCash(playerid, -TableData[handle][E_TABLE_BUY_IN]);
PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = TableData[handle][E_TABLE_BUY_IN]; PlayerData[playerid][E_PLAYER_TOTAL_CHIPS] = TableData[handle][E_TABLE_BUY_IN];
SendTableMessage(handle, ""COL_GREY"-- "COL_WHITE"Player %s has paid the buy-in fee of %s chips to keep playing.", ReturnPlayerName(playerid), ConvertPrice(TableData[handle][E_TABLE_BUY_IN])); SendTableMessage(handle, ""COL_GREY"-- "COL_WHITE"Player %s has paid the buy-in fee of %s chips to keep playing.", ReturnPlayerName(playerid), number_format(TableData[handle][E_TABLE_BUY_IN]));
} }
else else
{ {
@ -2373,7 +2373,7 @@ hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
} }
else if(raise <= TableData[handle][E_TABLE_LAST_BET]) else if(raise <= TableData[handle][E_TABLE_LAST_BET])
{ {
SendPokerMessage(playerid, "Value must be greater than the last bet: %s", ConvertPrice(TableData[handle][E_TABLE_LAST_BET])); SendPokerMessage(playerid, "Value must be greater than the last bet: %s", number_format(TableData[handle][E_TABLE_LAST_BET]));
ShowPlayerRaiseDialog(playerid); ShowPlayerRaiseDialog(playerid);
return 1; return 1;
} }
@ -2382,8 +2382,8 @@ hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
ApplyAnimation(playerid, "INT_OFFICE", "OFF_Sit_Idle_Loop", 4.1, 1, 1, 1, 0, 0, 1); ApplyAnimation(playerid, "INT_OFFICE", "OFF_Sit_Idle_Loop", 4.1, 1, 1, 1, 0, 0, 1);
KillPlayerTurnTimer(playerid); KillPlayerTurnTimer(playerid);
//all in - not mandatory //all in - not mandatory
SendTableMessage(handle, "{2DD9A9} * * %s goes all in with %s .. * *", ReturnPlayerName(playerid), ConvertPrice(raise)); SendTableMessage(handle, "{2DD9A9} * * %s goes all in with %s .. * *", ReturnPlayerName(playerid), number_format(raise));
SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{9512CD}** ALL IN with %s ** ", ConvertPrice(raise)); SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{9512CD}** ALL IN with %s ** ", number_format(raise));
Iter_Add(IT_PlayersAllIn<handle>, playerid); Iter_Add(IT_PlayersAllIn<handle>, playerid);
RemoveChipsFromPlayer( playerid, raise); RemoveChipsFromPlayer( playerid, raise);
SetLastToRaise(handle, playerid); SetLastToRaise(handle, playerid);
@ -2402,13 +2402,13 @@ hook OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
RemoveChipsFromPlayer( playerid, dif); RemoveChipsFromPlayer( playerid, dif);
if(PlayerData[playerid][E_PLAYER_RCHOICE] == E_RAISE_BET) if(PlayerData[playerid][E_PLAYER_RCHOICE] == E_RAISE_BET)
{ {
SendTableMessage(handle, "{2DD9A9} * * %s bets %s .. * *", ReturnPlayerName(playerid), ConvertPrice(raise)); SendTableMessage(handle, "{2DD9A9} * * %s bets %s .. * *", ReturnPlayerName(playerid), number_format(raise));
SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{31CA15}** BETS %s ** ", ConvertPrice(raise)); SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{31CA15}** BETS %s ** ", number_format(raise));
} }
else else
{ {
SendTableMessage(handle, "{2DD9A9} * * %s raises to %s .. * *", ReturnPlayerName(playerid), ConvertPrice(raise)); SendTableMessage(handle, "{2DD9A9} * * %s raises to %s .. * *", ReturnPlayerName(playerid), number_format(raise));
SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{31CA15}** RAISES to %s ** ", ConvertPrice(raise)); SetPlayerChatBubbleEx(playerid, -1, 30.0, 2000, "{31CA15}** RAISES to %s ** ", number_format(raise));
} }
CheckPotAndNextTurn(playerid, handle); CheckPotAndNextTurn(playerid, handle);
} }
@ -2561,24 +2561,24 @@ hook OnGameModeInit()
AddServerVariable( "poker_fees", "0.0", GLOBAL_VARTYPE_FLOAT ); AddServerVariable( "poker_fees", "0.0", GLOBAL_VARTYPE_FLOAT );
// red dragons casino // red dragons casino
CreatePokerTable( 25000000, 250000, 1968.395019, 1027.808959, 991.828002, 2, 23, 10 ); CreatePokerTable( 1000000, 250000, 1968.395019, 1027.808959, 991.828002, 2, 23, 10 );
CreatePokerTable( 10000000, 100000, 1940.795043, 1008.741027, 991.828002, 2, 23, 10 ); CreatePokerTable( 500000, 100000, 1940.795043, 1008.741027, 991.828002, 3, 23, 10 );
CreatePokerTable( 5000000, 500000, 1940.795043, 1027.240966, 991.828002, 3, 23, 10 ); CreatePokerTable( 250000, 500000, 1940.795043, 1027.240966, 991.828002, 3, 23, 10 );
CreatePokerTable( 2500000, 25000, 1940.795043, 1021.075012, 991.828002, 4, 23, 10 ); CreatePokerTable( 100000, 25000, 1940.795043, 1021.075012, 991.828002, 4, 23, 10 );
CreatePokerTable( 1000000, 10000, 1940.795043, 1014.908996, 991.828002, 4, 23, 10 ); CreatePokerTable( 50000, 10000, 1940.795043, 1014.908996, 991.828002, 4, 23, 10 );
CreatePokerTable( 500000, 5000, 1968.395019, 1014.609008, 991.828002, 5, 23, 10 ); CreatePokerTable( 25000, 5000, 1968.395019, 1014.609008, 991.828002, 5, 23, 10 );
CreatePokerTable( 250000, 2500, 1968.395019, 1021.208984, 991.828002, 6, 23, 10 ); CreatePokerTable( 10000, 2500, 1968.395019, 1021.208984, 991.828002, 6, 23, 10 );
CreatePokerTable( 100000, 1000, 1968.395019, 1008.008972, 991.828002, 6, 23, 10 ); CreatePokerTable( 5000, 1000, 1968.395019, 1008.008972, 991.828002, 6, 23, 10 );
// caliguas casino // caliguas casino
CreatePokerTable( 2500000, 25000, 2273.936035, 1597.272949, 1005.568969, 2, 82, 1 ); CreatePokerTable( 250000, 25000, 2273.936035, 1597.272949, 1005.568969, 2, 82, 1 );
CreatePokerTable( 1000000, 10000, 2252.936035, 1591.272949, 1005.568969, 2, 82, 1 ); CreatePokerTable( 125000, 10000, 2252.936035, 1591.272949, 1005.568969, 2, 82, 1 );
CreatePokerTable( 500000, 5000, 2255.936035, 1597.272949, 1005.568969, 3, 82, 1 ); CreatePokerTable( 100000, 5000, 2255.936035, 1597.272949, 1005.568969, 3, 82, 1 );
CreatePokerTable( 250000, 2500, 2258.936035, 1591.272949, 1005.568969, 4, 82, 1 ); CreatePokerTable( 50000, 2500, 2258.936035, 1591.272949, 1005.568969, 4, 82, 1 );
CreatePokerTable( 100000, 1000, 2261.936035, 1597.272949, 1005.568969, 5, 82, 1 ); CreatePokerTable( 25000, 1000, 2261.936035, 1597.272949, 1005.568969, 5, 82, 1 );
CreatePokerTable( 50000, 500, 2264.936035, 1591.272949, 1005.568969, 5, 82, 1 ); CreatePokerTable( 10000, 500, 2264.936035, 1591.272949, 1005.568969, 5, 82, 1 );
CreatePokerTable( 25000, 250, 2267.936035, 1597.272949, 1005.568969, 6, 82, 1 ); CreatePokerTable( 5000, 250, 2267.936035, 1597.272949, 1005.568969, 6, 82, 1 );
CreatePokerTable( 12500, 125, 2270.936035, 1591.272949, 1005.568969, 6, 82, 1 ); CreatePokerTable( 2500, 125, 2270.936035, 1591.272949, 1005.568969, 6, 82, 1 );
T_SendWarning("TPoker by ThreeKingz has been succesfully loaded!"); T_SendWarning("TPoker by ThreeKingz has been succesfully loaded!");
return 1; return 1;
} }
@ -2600,7 +2600,7 @@ CMD:ctable(playerid, params[])
new Float:Pos[3]; new Float:Pos[3];
GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]); GetPlayerPos(playerid, Pos[0], Pos[1], Pos[2]);
new table = CreatePokerTable(buy_in, small_blind, Pos[0], Pos[1], Pos[2]-0.6, seats, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid)); new table = CreatePokerTable(buy_in, small_blind, Pos[0], Pos[1], Pos[2]-0.6, seats, GetPlayerVirtualWorld(playerid), GetPlayerInterior(playerid));
SendPokerMessage(playerid, "You have created table ID: %d | Small blind: %s | Big blind: %s | Buy In: %s | Seats: %d", table, ConvertPrice(small_blind), ConvertPrice(small_blind*2), ConvertPrice(buy_in), seats); SendPokerMessage(playerid, "You have created table ID: %d | Small blind: %s | Big blind: %s | Buy In: %s | Seats: %d", table, number_format(small_blind), number_format(small_blind*2), number_format(buy_in), seats);
return 1; return 1;
} }

View File

@ -228,7 +228,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
TextDrawShowForPlayer( i, g_rouletteNumberTD[ rouletteid ] ); TextDrawShowForPlayer( i, g_rouletteNumberTD[ rouletteid ] );
if ( ! p_rouletteBetLocked{ i } ) { if ( ! p_rouletteBetLocked{ i } ) {
SendServerMessage( i, "%s(%d) has waged %s with this spin, press SPACE to join the spin!", ReturnPlayerName( playerid ), playerid, ConvertPrice( totalBet ) ); SendServerMessage( i, "%s(%d) has waged %s with this spin, press SPACE to join the spin!", ReturnPlayerName( playerid ), playerid, number_format( totalBet ) );
} }
} }
@ -243,7 +243,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
g_rouletteTableData[ rouletteid ] [ E_SPINNING_TIMER ] = SetTimerEx( "OnSpinRouletteTable", 25, false, "ddd", rouletteid, 0, 1 ); g_rouletteTableData[ rouletteid ] [ E_SPINNING_TIMER ] = SetTimerEx( "OnSpinRouletteTable", 25, false, "ddd", rouletteid, 0, 1 );
// inform other players // inform other players
SendServerMessage( playerid, "You have begun the spin with a wager of %s. Good luck!", ConvertPrice( totalBet ) ); SendServerMessage( playerid, "You have begun the spin with a wager of %s. Good luck!", number_format( totalBet ) );
} }
else SendServerMessage( playerid, "You have joined the spin. Good luck!" ); else SendServerMessage( playerid, "You have joined the spin. Good luck!" );
} }
@ -253,7 +253,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
if ( ( p_rouletteBetValue[ playerid ] /= 2 ) < 1000 ) if ( ( p_rouletteBetValue[ playerid ] /= 2 ) < 1000 )
p_rouletteBetValue[ playerid ] = 1000; p_rouletteBetValue[ playerid ] = 1000;
SendServerMessage( playerid, "You are now betting %s, gamble responsibly!", ConvertPrice( p_rouletteBetValue[ playerid ] ) ); SendServerMessage( playerid, "You are now betting %s, gamble responsibly!", number_format( p_rouletteBetValue[ playerid ] ) );
} }
// increase bet // increase bet
@ -262,7 +262,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
if ( ( p_rouletteBetValue[ playerid ] *= 2 ) > g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] ) if ( ( p_rouletteBetValue[ playerid ] *= 2 ) > g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] )
p_rouletteBetValue[ playerid ] = g_rouletteTableData[ rouletteid ] [ E_MAX_BET ]; p_rouletteBetValue[ playerid ] = g_rouletteTableData[ rouletteid ] [ E_MAX_BET ];
SendServerMessage( playerid, "You are now betting %s, gamble responsibly!", ConvertPrice( p_rouletteBetValue[ playerid ] ) ); SendServerMessage( playerid, "You are now betting %s, gamble responsibly!", number_format( p_rouletteBetValue[ playerid ] ) );
} }
// Cancel Bets // Cancel Bets
@ -304,7 +304,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
// Exceeded The Maximum // Exceeded The Maximum
if ( totalBet + p_rouletteBetValue[ playerid ] > g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] ) { if ( totalBet + p_rouletteBetValue[ playerid ] > g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] ) {
return SendError( playerid, "You are only allowed to bet a total of %s per spin on this table.", ConvertPrice( g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] ) ); return SendError( playerid, "You are only allowed to bet a total of %s per spin on this table.", number_format( g_rouletteTableData[ rouletteid ] [ E_MAX_BET ] ) );
} }
PlayerPlaySound( playerid, 1083, 0.0, 0.0, 5.0 ); PlayerPlaySound( playerid, 1083, 0.0, 0.0, 5.0 );
@ -343,7 +343,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 0 ] [ column ], 0, " ", .backcolor = color ); SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 0 ] [ column ], 0, " ", .backcolor = color );
g_rouletteChip[ playerid ] [ 1 ] [ column ] = CreateDynamicObject(1905, offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height + 0.125, 0.0, 0.0, 0.0, .worldid = g_rouletteTableData[ rouletteid ] [ E_WORLD ], .priority = 9999); g_rouletteChip[ playerid ] [ 1 ] [ column ] = CreateDynamicObject(1905, offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height + 0.125, 0.0, 0.0, 0.0, .worldid = g_rouletteTableData[ rouletteid ] [ E_WORLD ], .priority = 9999);
SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 1 ] [ column ], 0, ConvertRouletteChipValue( g_rouletteChipValue[ playerid ] [ column ] ), 50, "Arial", 44, 1, color, -1, 1 ); SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 1 ] [ column ], 0, ConvertRouletteChipValue( g_rouletteChipValue[ playerid ] [ column ] ), 50, "Arial", 44, 1, color, -1, 1 );
g_rouletteChipLabel[ playerid ] [ column ] = CreateDynamic3DTextLabel( sprintf( "%s", ConvertPrice( g_rouletteChipValue[ playerid ] [ column ] ) ), g_rouletteChipColor[ playerid ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - 0.15 + ( float( playerid ) / 100 ), 5.0 ); //INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, playerid ); g_rouletteChipLabel[ playerid ] [ column ] = CreateDynamic3DTextLabel( sprintf( "%s", number_format( g_rouletteChipValue[ playerid ] [ column ] ) ), g_rouletteChipColor[ playerid ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - 0.15 + ( float( playerid ) / 100 ), 5.0 ); //INVALID_PLAYER_ID, INVALID_VEHICLE_ID, 0, -1, -1, playerid );
//printf("(%s) CREATED CHIP %d:%d", ReturnPlayerName( playerid ), g_rouletteChip[ playerid ] [ column ], _: g_rouletteChipLabel[ playerid ] [ column ] ); //printf("(%s) CREATED CHIP %d:%d", ReturnPlayerName( playerid ), g_rouletteChip[ playerid ] [ column ], _: g_rouletteChipLabel[ playerid ] [ column ] );
} }
else else
@ -351,7 +351,7 @@ hook OnPlayerKeyStateChange( playerid, newkeys, oldkeys )
SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 1 ] [ column ], 0, ConvertRouletteChipValue( g_rouletteChipValue[ playerid ] [ column ] ), 50, "Arial", 44, 1, color, -1, 1 ); SetDynamicObjectMaterialText( g_rouletteChip[ playerid ] [ 1 ] [ column ], 0, ConvertRouletteChipValue( g_rouletteChipValue[ playerid ] [ column ] ), 50, "Arial", 44, 1, color, -1, 1 );
SetDynamicObjectPos( g_rouletteChip[ playerid ] [ 0 ] [ column ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height ); SetDynamicObjectPos( g_rouletteChip[ playerid ] [ 0 ] [ column ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height );
SetDynamicObjectPos( g_rouletteChip[ playerid ] [ 1 ] [ column ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height + 0.125 ); SetDynamicObjectPos( g_rouletteChip[ playerid ] [ 1 ] [ column ], offsetX, offsetY, g_rouletteTableData[ rouletteid ] [ E_Z ] - height + 0.125 );
UpdateDynamic3DTextLabelText( g_rouletteChipLabel[ playerid ] [ column ], g_rouletteChipColor[ playerid ], sprintf( "%s", ConvertPrice( g_rouletteChipValue[ playerid ] [ column ] ) ) ); UpdateDynamic3DTextLabelText( g_rouletteChipLabel[ playerid ] [ column ], g_rouletteChipColor[ playerid ], sprintf( "%s", number_format( g_rouletteChipValue[ playerid ] [ column ] ) ) );
//printf("(%s) UPDATED CHIP %d:%d", ReturnPlayerName( playerid ), g_rouletteChip[ playerid ] [ column ], _: g_rouletteChipLabel[ playerid ] [ column ] ); //printf("(%s) UPDATED CHIP %d:%d", ReturnPlayerName( playerid ), g_rouletteChip[ playerid ] [ column ], _: g_rouletteChipLabel[ playerid ] [ column ] );
} }
} }
@ -475,7 +475,7 @@ stock CreateRouletteTable( Float: X, Float: Y, Float: Z, Float: Angle, world, ma
X += 1.365 * floatcos( Angle + 98.0, degrees ); X += 1.365 * floatcos( Angle + 98.0, degrees );
Y += 1.365 * floatsin( Angle + 98.0, degrees ); Y += 1.365 * floatsin( Angle + 98.0, degrees );
CreateDynamic3DTextLabel( sprintf( "Press ENTER To Play Roulette\n"COL_WHITE"%s Maximum", ConvertPrice( maxbet ) ), COLOR_GREY, X, Y, Z + 0.02, 15.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, .worldid = world, .testlos = 0 ); CreateDynamic3DTextLabel( sprintf( "Press ENTER To Play Roulette\n"COL_WHITE"%s Maximum", number_format( maxbet ) ), COLOR_GREY, X, Y, Z + 0.02, 15.0, INVALID_PLAYER_ID, INVALID_VEHICLE_ID, .worldid = world, .testlos = 0 );
new Float: a_x = g_rouletteTableData[ id ] [ E_X ] + 1.4 * floatcos( Angle + 29.0, degrees ); new Float: a_x = g_rouletteTableData[ id ] [ E_X ] + 1.4 * floatcos( Angle + 29.0, degrees );
new Float: a_y = g_rouletteTableData[ id ] [ E_Y ] + 1.4 * floatsin( Angle + 29.0, degrees ); new Float: a_y = g_rouletteTableData[ id ] [ E_Y ] + 1.4 * floatsin( Angle + 29.0, degrees );
@ -687,7 +687,7 @@ public OnRouletteWheelStop( rouletteid, winner )
// inform users // inform users
if ( profit >= 10000 ) { if ( profit >= 10000 ) {
SendGlobalMessage( -1, ""COL_GREY"[CASINO]{FFFFFF} %s(%d) has won "COL_GOLD"%s"COL_WHITE" from roulette!", ReturnPlayerName( playerid ), playerid, ConvertPrice( profit ) ); SendGlobalMessage( -1, ""COL_GREY"[CASINO]{FFFFFF} %s(%d) has won "COL_GOLD"%s"COL_WHITE" from roulette!", ReturnPlayerName( playerid ), playerid, number_format( profit ) );
} }
// give user points // give user points
@ -695,12 +695,12 @@ public OnRouletteWheelStop( rouletteid, winner )
// gametext // gametext
if ( profit > 0 ) { if ( profit > 0 ) {
GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", ConvertPrice( profit ) ), 4000, 3 ); GameTextForPlayer( playerid, sprintf( "~n~~n~~g~%s won!", number_format( profit ) ), 4000, 3 );
SendClientMessageFormatted( playerid, -1, ""COL_GREY"[ROULETTE]"COL_WHITE" You have bet a total of %s and profited %s! (winning no %d)", ConvertPrice( waged ), ConvertPrice( profit ), winner ); SendClientMessageFormatted( playerid, -1, ""COL_GREY"[ROULETTE]"COL_WHITE" You have bet a total of %s and profited %s! (winning no %d)", number_format( waged ), number_format( profit ), winner );
} else { } else {
profit *= -1; // to improve the client message profit *= -1; // to improve the client message
GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 ); GameTextForPlayer( playerid, "~n~~n~~r~No win!", 4000, 3 );
SendClientMessageFormatted( playerid, -1, ""COL_GREY"[ROULETTE]"COL_WHITE" You have bet a total of %s and lost %s! (winning no %d)", ConvertPrice( waged ), ConvertPrice( profit ), winner ); SendClientMessageFormatted( playerid, -1, ""COL_GREY"[ROULETTE]"COL_WHITE" You have bet a total of %s and lost %s! (winning no %d)", number_format( waged ), number_format( profit ), winner );
} }
} }

View File

@ -231,19 +231,73 @@ stock Player_GetUnusedAttachIndex( playerid )
} }
// purpose: convert integer into dollar string // purpose: convert integer into dollar string
stock ConvertPrice( iValue, iCashSign = 1 ) stock number_format( { _, Float, Text3D, Menu, Text, DB, DBResult, bool, File }: variable, prefix = '$', decimals = 2, thousand_seperator = ',', decimal_point = '.', tag = tagof( variable ) ) // by Slice
{ {
static static
szNum[ 32 ]; s_szReturn[ 32 ],
s_szThousandSeparator[ 2 ] = { ' ', EOS },
s_iDecimalPos,
s_iChar,
s_iSepPos
;
format( szNum, sizeof( szNum ), "%d", iValue < 0 ? -iValue : iValue ); if ( tag == tagof( bool: ) )
{
if ( variable )
memcpy( s_szReturn, "true", 0, 5 * ( cellbits / 8 ) );
else
memcpy( s_szReturn, "false", 0, 6 * ( cellbits / 8 ) );
for( new i = strlen( szNum ) - 3; i > 0; i -= 3 ) { return s_szReturn;
strins( szNum, ",", i, sizeof( szNum ) ); }
else if ( tag == tagof( Float: ) )
{
if ( decimals == -1 )
decimals = 8;
format( s_szReturn, sizeof( s_szReturn ), "%.*f", decimals, variable );
}
else
{
format( s_szReturn, sizeof( s_szReturn ), "%d", variable );
if ( decimals > 0 )
{
strcat( s_szReturn, "." );
while ( decimals-- )
strcat( s_szReturn, "0" );
}
} }
if ( iCashSign ) strins( szNum, "$", 0 ); s_iDecimalPos = strfind( s_szReturn, "." );
if ( iValue < 0 ) strins( szNum, "-", 0, sizeof( szNum ) );
return szNum; if ( s_iDecimalPos == -1 )
s_iDecimalPos = strlen( s_szReturn );
else
s_szReturn[ s_iDecimalPos ] = decimal_point;
if ( s_iDecimalPos >= 4 && thousand_seperator )
{
s_szThousandSeparator[ 0 ] = thousand_seperator;
s_iChar = s_iDecimalPos;
s_iSepPos = 0;
while ( --s_iChar > 0 )
{
if ( ++s_iSepPos == 3 )
{
strins( s_szReturn, s_szThousandSeparator, s_iChar );
s_iSepPos = 0;
}
}
}
if ( prefix != '\0' ) {
// new minus = strfind( s_szReturn, "-" );
strins( s_szReturn, "$", variable < 0 ); // no point finding -
}
return s_szReturn;
} }

View File

@ -38,6 +38,7 @@
#include < irresistible\features\visage\fireworks > #include < irresistible\features\visage\fireworks >
#include < irresistible\features\visage\casino > #include < irresistible\features\visage\casino >
#include < irresistible\features\visage\apartments > #include < irresistible\features\visage\apartments >
// #include < irresistible\features\visage\boxing >
// static cnr features // static cnr features
#include < irresistible\cnr\static\actors > #include < irresistible\cnr\static\actors >