Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Guest Message by DevFuse
Wklejka 1f77lcgxo6j2q dodana przez IceBaRa, 14.01.2016 07:27
1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. 132. 133. 134. 135. 136. 137. 138. 139. 140. 141. 142. 143. 144. 145. 146. 147. 148. 149. 150. 151. 152. 153. 154. 155. 156. 157. 158. 159. 160. 161. 162. 163. 164. 165. 166. 167. 168. 169. 170. 171. 172. 173. 174. 175. 176. 177. 178. 179. 180. 181. 182. 183. 184. 185. 186. 187. 188. 189. 190. 191. 192. 193. 194. 195. 196. 197. 198. 199. 200. 201. 202. 203. 204. 205. 206. 207. 208. 209. 210. 211. 212. 213. 214. 215. 216. 217. 218. 219. 220. 221. 222. 223. 224. 225. 226. 227. 228. 229. 230. 231. 232. 233. 234. 235. 236. 237. 238. 239. 240. 241. 242. 243. 244. 245. 246. 247. 248. 249. 250. 251. 252. 253. 254. 255. 256. 257. 258. 259. 260. 261. 262. 263. 264. 265. 266. 267. 268. 269. 270. 271. 272. 273. 274. 275. 276. 277. 278. 279. 280. 281. 282. 283. 284. 285. 286. 287. 288. 289. 290. 291. 292. 293. 294. 295. 296. 297. 298. 299. 300. 301. 302. 303. 304. 305. 306. 307. 308. 309. 310. 311. 312. 313. 314. 315. 316. 317. 318. 319. 320. 321. 322. 323. 324. 325. 326. 327. 328. 329. 330. 331. 332. 333. 334. 335. 336. 337. 338. 339. 340. 341. 342. 343. 344. 345. 346. 347. 348. 349. 350. 351. 352. 353. 354. 355. 356. 357. 358. 359. 360. 361. 362. 363. 364. 365. 366. 367. 368. 369. 370. 371. 372. 373. 374. 375. 376. 377. 378. 379. 380. 381. 382. 383. 384. 385. 386. 387. 388. 389. 390. 391. 392. 393. 394. 395. 396. 397. 398. 399. 400. 401. 402. 403. 404. 405. 406. 407. 408. 409. 410. 411. 412. 413. 414. 415. 416. 417. 418. 419. 420. 421. 422. 423. 424. 425. 426. 427. 428. 429. 430. 431. 432. 433. 434. 435. 436. 437. 438. 439. 440. 441. 442. 443. 444. 445. 446. 447. 448. 449. 450. 451. 452. 453. 454. 455. 456. 457. 458. 459. 460. 461. 462. 463. 464. 465. 466. 467. 468. 469. 470. 471. 472. 473. 474. 475. 476. 477. 478. 479. 480. 481. 482. 483. 484. 485. 486. 487. 488. 489. 490. 491. 492. 493. 494. 495. 496. 497. 498. 499. 500. 501. 502. 503. 504. 505. 506. 507. 508. 509. 510. 511. 512. 513. 514. 515. 516. 517. 518. 519. 520. 521. 522. 523. 524. 525. 526. 527. 528. 529. 530. 531. 532. 533. 534. 535. 536. 537. 538. 539. 540. 541. 542. 543. 544. 545. 546. 547. 548. 549. 550. 551. 552. 553. 554. 555. 556. 557. 558. 559. 560. 561. 562. 563. 564. 565. 566. 567. 568. 569. 570. 571. 572. 573. 574. 575. 576. 577. 578. 579. 580. 581. 582. 583. 584. 585. 586. 587. 588. 589. 590. 591. 592. 593. 594. 595. 596. 597. 598. 599. 600. 601. 602. 603. 604. 605. 606. 607. 608. 609. 610. 611. 612. 613. 614. 615. 616. 617. 618. 619. 620. 621. 622. 623. 624. 625. 626. 627. 628. 629. 630. 631. 632. 633. 634. 635. 636. 637. 638. 639. 640. 641. 642. 643. 644. 645. 646. 647. 648. 649. 650. 651. 652. 653. 654. 655. 656. 657. 658. 659. 660. 661. 662. 663. 664. 665. 666. 667. 668. 669. 670. 671. 672. 673. 674. 675. 676. 677. 678. 679. 680. 681. 682. 683. 684. 685. 686. 687. 688. 689. 690. 691. 692. 693. 694. 695. 696. 697. 698. 699. 700. 701. 702. 703. 704. 705. 706. 707. 708. 709. 710. 711. 712. 713. 714. 715. 716. 717. 718. 719. 720. 721. 722. 723. 724. 725. 726. 727. 728. 729. 730. 731. 732. 733. 734. 735. 736. 737. 738. 739. 740. 741. 742. 743. 744. 745. 746. 747. 748. 749. 750. 751. 752. 753. 754. 755. 756. 757. 758. 759. 760. 761. 762. 763. 764. 765. 766. 767. 768. 769. 770. 771. 772. 773. 774. 775. 776. 777. 778. 779. 780. 781. 782. 783. 784. 785. 786. 787. 788. 789. 790. 791. 792. 793. 794. 795. 796. 797. 798. 799. 800. 801. 802. 803. 804. 805. 806. 807. 808. 809. 810. 811. 812. 813. 814. 815. 816. 817. 818. 819. 820. 821. 822. 823. 824. 825. 826. 827. 828. 829. 830. 831. 832. 833. 834. 835. 836. 837. 838. 839. 840. 841. 842. 843. 844. 845. 846. 847. 848. 849. 850. 851. 852. 853. 854. 855. 856. 857. 858. 859. 860. 861. 862. 863. 864. 865. 866. 867. 868. 869. 870. 871. 872. 873. 874. 875. 876. 877. 878. 879. 880. 881. 882. 883. 884. 885. 886. 887. 888. 889. 890. 891. 892. 893. 894. 895. 896. 897. 898. 899. 900. 901. 902. 903. 904. 905. 906. 907. 908. 909. 910. 911. 912. 913. 914. 915. 916. 917. 918. 919. 920. 921. 922. 923. 924. 925. 926. 927. 928. 929. 930. 931. 932. 933. 934. 935. 936. 937. 938. 939. 940. 941. 942. 943. 944. 945. 946. 947. 948. 949. 950. 951. 952. 953. 954. 955. 956. 957. 958. 959. 960. 961. 962. 963. 964. 965. 966. 967. 968. 969. 970. 971. 972. 973. 974. 975. 976. 977. 978. 979. 980. 981. 982. 983. 984. 985. 986. 987. 988. 989. 990. 991. 992. 993. 994. 995. 996. 997. 998. 999. 1000. 1001. 1002. 1003. 1004. 1005. 1006. 1007. 1008. 1009. 1010. 1011. 1012. 1013. 1014. 1015. 1016. 1017. 1018. 1019. 1020. 1021. 1022. 1023. 1024. 1025. 1026. 1027. 1028. 1029. 1030. 1031. 1032. 1033. 1034. 1035. 1036. 1037. 1038. 1039. 1040. 1041. 1042. 1043. 1044. 1045. 1046. 1047. 1048. 1049. 1050. 1051. 1052. 1053. 1054. 1055. 1056. 1057. 1058. 1059. 1060. 1061. 1062. 1063. 1064. 1065. 1066. 1067. 1068. 1069. 1070. 1071. 1072. 1073. 1074. 1075. 1076. 1077. 1078. 1079. 1080. 1081. 1082. 1083. 1084. 1085. 1086. 1087. 1088. 1089. 1090. 1091. 1092. 1093. 1094. 1095. 1096. 1097. 1098. 1099. 1100. 1101. 1102. 1103. 1104. 1105. 1106. 1107. 1108. 1109. 1110. 1111. 1112. 1113. 1114. 1115. 1116. 1117. 1118. 1119. 1120. 1121. 1122. 1123. 1124. 1125. 1126. 1127. 1128. 1129. 1130. 1131. 1132. 1133. 1134. 1135. 1136. 1137. 1138. 1139. 1140. 1141. 1142. 1143. 1144. 1145. 1146. 1147. 1148. 1149. 1150. 1151. 1152. 1153. 1154. 1155. 1156. 1157. 1158. 1159. 1160. 1161. 1162. 1163. 1164. 1165. 1166. 1167. 1168. 1169. 1170. 1171. 1172. 1173. 1174. 1175. 1176. 1177. 1178. 1179. 1180. 1181. 1182. 1183. 1184. 1185. 1186. 1187. 1188. 1189. 1190. 1191. 1192. 1193. 1194. 1195. 1196. 1197. 1198. 1199. 1200. 1201. 1202. 1203. 1204. 1205. 1206. 1207. 1208. 1209. 1210. 1211. 1212. 1213. 1214. 1215. 1216. 1217. 1218. 1219. 1220. 1221. 1222. 1223. 1224. 1225. 1226. 1227. 1228. 1229. 1230. 1231. 1232. 1233. 1234. 1235. 1236. 1237. 1238. 1239. 1240. 1241. 1242. 1243. 1244. 1245. 1246. 1247. 1248. 1249. 1250. 1251. 1252. 1253. 1254. 1255. 1256. 1257. 1258. 1259. 1260. 1261. 1262. 1263. 1264. 1265. 1266. 1267. 1268. 1269. 1270. 1271. 1272. 1273. 1274. 1275. 1276. 1277. 1278. 1279. 1280. 1281. 1282. 1283. 1284. 1285. 1286. 1287. 1288. 1289. 1290. 1291. 1292. 1293. 1294. 1295. 1296. 1297. 1298. 1299. 1300. 1301. 1302. 1303. 1304. 1305. 1306. 1307. 1308. 1309. 1310. 1311. 1312. 1313. 1314. 1315. 1316. 1317. 1318. 1319. 1320. 1321. 1322. 1323. 1324. 1325. 1326. 1327. 1328. 1329. 1330. 1331. 1332. 1333. 1334. 1335. 1336. 1337. 1338. 1339. 1340. 1341. 1342. 1343. 1344. 1345. 1346. 1347. 1348. 1349. 1350. 1351. 1352. 1353. 1354. 1355. 1356. 1357. 1358. 1359. 1360. 1361. 1362. 1363. 1364. 1365. 1366. 1367. 1368. 1369. 1370. 1371. 1372. 1373. 1374. 1375. 1376. 1377. 1378. 1379. 1380. 1381. 1382. 1383. 1384. 1385. 1386. 1387. 1388. 1389. 1390. 1391. 1392. 1393. 1394. 1395. 1396. 1397. 1398. 1399. 1400. 1401. 1402. 1403. 1404. 1405. 1406. 1407. 1408. 1409. 1410. 1411. 1412. 1413. 1414. 1415. 1416. 1417. 1418. 1419. 1420. 1421. 1422. 1423. 1424. 1425. 1426. 1427. 1428. 1429. 1430. 1431. 1432. 1433. 1434. 1435. 1436. 1437. 1438. 1439. 1440. 1441. 1442. 1443. 1444. 1445. 1446. 1447. 1448. 1449. 1450. 1451. 1452. 1453. 1454. 1455. 1456. 1457. 1458. 1459. 1460. 1461. 1462. 1463. 1464. 1465. 1466. 1467. 1468. 1469. 1470. 1471. 1472. 1473. 1474. 1475. 1476. 1477. 1478. 1479. 1480. 1481. 1482. 1483. 1484. 1485. 1486. 1487. 1488. 1489. 1490. 1491. 1492. 1493. 1494. 1495. 1496. 1497. 1498. 1499. 1500. 1501. 1502. 1503. 1504. 1505. 1506. 1507. 1508. 1509. 1510. 1511. 1512. 1513. 1514. 1515. 1516. 1517. 1518. 1519. 1520. 1521. 1522. 1523. 1524. 1525. 1526. 1527. 1528. 1529. 1530. 1531. 1532. 1533. 1534. 1535. 1536. 1537. 1538. 1539. 1540. 1541. 1542. 1543. 1544. 1545. 1546. 1547. 1548. 1549. 1550. 1551. 1552. 1553. 1554. 1555. 1556. 1557. 1558. 1559. 1560. 1561. 1562. 1563. 1564. 1565. 1566. 1567. 1568. 1569. 1570. 1571. 1572. 1573. 1574. 1575. 1576. 1577. 1578. 1579. 1580. 1581. 1582. 1583. 1584. 1585. 1586. 1587. 1588. 1589. 1590. 1591. 1592. 1593. 1594. 1595. 1596. 1597. 1598. 1599. 1600. 1601. 1602. 1603. 1604. 1605. 1606. 1607. 1608. 1609. 1610. 1611. 1612. 1613. 1614. 1615. 1616. 1617. 1618. 1619. 1620. 1621. 1622. 1623. 1624. 1625. 1626. 1627. 1628. 1629. 1630. 1631. 1632. 1633. 1634. 1635. 1636. 1637. 1638. 1639. 1640. 1641. 1642. 1643. 1644. 1645. 1646. 1647. 1648. 1649. 1650. 1651. 1652. 1653. 1654. 1655. 1656. 1657. 1658. 1659. 1660. 1661. 1662. 1663. 1664. 1665. 1666. 1667. 1668. 1669. 1670. 1671. 1672. 1673. 1674. 1675. 1676. 1677. 1678. 1679. 1680. 1681. 1682. 1683. 1684. 1685. 1686. 1687. 1688. 1689. 1690. 1691. 1692. 1693. 1694. 1695. 1696. 1697. 1698. 1699. 1700. 1701. 1702. 1703. 1704. 1705. 1706. 1707. 1708. 1709. 1710. 1711. 1712. 1713. 1714. 1715. 1716. 1717. 1718. 1719. 1720. 1721. 1722. 1723. 1724. 1725. 1726. 1727. 1728. 1729. 1730. 1731. 1732. 1733. 1734. 1735. 1736. 1737. 1738. 1739. 1740. 1741. 1742. 1743. 1744. 1745. 1746. 1747. 1748. 1749. 1750. 1751. 1752. 1753. 1754. 1755. 1756. 1757. 1758. 1759. 1760. 1761. 1762. 1763. 1764. 1765. 1766. 1767. 1768. 1769. 1770. 1771. 1772. 1773. 1774. 1775. 1776. 1777. 1778. 1779. 1780. 1781. 1782. 1783. 1784. 1785. 1786. 1787. 1788. 1789. 1790. 1791. 1792. 1793. 1794. 1795. 1796. 1797. 1798. 1799. 1800. 1801. 1802. 1803. 1804. 1805. 1806. 1807. 1808. 1809. 1810. 1811. 1812. 1813. 1814. 1815. 1816. 1817. 1818. 1819. 1820. 1821. 1822. 1823. 1824. 1825. 1826. 1827. 1828. 1829. 1830. 1831. 1832. 1833. 1834. 1835. 1836. 1837. 1838. 1839. 1840. 1841. 1842. 1843. 1844. 1845. 1846. 1847. 1848. 1849. 1850. 1851. 1852. 1853. 1854. 1855. 1856. 1857. 1858. 1859. 1860. 1861. 1862. 1863. 1864. 1865. 1866. 1867. 1868. 1869. 1870. 1871. 1872. 1873. 1874. 1875. 1876. 1877. 1878. 1879. 1880. 1881. 1882. 1883. 1884. 1885. 1886. 1887. 1888. 1889. 1890. 1891. 1892. 1893. 1894. 1895. 1896. 1897. 1898. 1899. 1900. 1901. 1902. 1903. 1904. 1905. 1906. 1907. 1908. 1909. 1910. 1911. 1912. 1913. 1914. 1915. 1916. 1917. 1918. 1919. 1920. 1921. 1922. 1923. 1924. 1925. 1926. 1927. 1928. 1929. 1930. 1931. 1932. 1933. 1934. 1935. 1936. 1937. 1938. 1939. 1940. 1941. 1942. 1943. 1944. 1945. 1946. 1947. 1948. 1949. 1950. 1951. 1952. 1953. 1954. 1955. 1956. 1957. 1958. 1959. 1960. 1961. 1962. 1963. 1964. 1965. 1966. 1967. 1968. 1969. 1970. 1971. 1972. 1973. 1974. 1975. 1976. 1977. 1978. 1979. 1980. 1981. 1982. 1983. 1984. 1985. 1986. 1987. 1988. 1989. 1990. 1991. 1992. 1993. 1994. 1995. 1996. 1997. 1998. 1999. 2000. 2001. 2002. 2003. 2004. 2005. 2006. 2007. 2008. 2009. 2010. 2011. 2012. 2013. 2014. 2015. 2016. 2017. 2018. 2019. 2020. 2021. 2022. 2023. 2024. 2025. 2026. 2027. 2028. 2029. 2030. 2031. 2032. 2033. 2034. 2035. 2036. 2037. 2038. 2039. 2040. 2041. 2042. 2043. 2044. 2045. 2046. 2047. 2048. 2049. 2050. 2051. 2052. 2053. 2054. 2055. 2056. 2057. 2058. 2059. 2060. 2061. 2062. 2063. 2064. 2065. 2066. 2067. 2068. 2069. 2070. 2071. 2072. 2073. 2074. 2075. 2076. 2077. 2078. 2079. 2080. 2081. 2082. 2083. 2084. 2085. 2086. 2087. 2088. 2089. 2090. 2091. 2092. 2093. 2094. 2095. 2096. 2097. 2098. 2099. 2100. 2101. 2102. 2103. 2104. 2105. 2106. 2107. 2108. 2109. 2110. 2111. 2112. 2113. 2114. 2115. 2116. 2117. 2118. 2119. 2120. 2121. 2122. 2123. 2124. 2125. 2126. 2127. 2128. 2129. 2130. 2131. 2132. 2133. 2134. 2135. 2136. 2137. 2138. 2139. 2140. 2141. 2142. 2143. 2144. 2145. 2146. 2147. 2148. 2149. 2150. 2151. 2152. 2153. 2154. 2155. 2156. 2157. 2158. 2159. 2160. 2161. 2162. 2163. 2164. 2165. 2166. 2167. 2168. 2169. 2170. 2171. 2172. 2173. 2174. 2175. 2176. 2177. 2178. 2179. 2180. 2181. 2182. 2183. 2184. 2185. 2186. 2187. 2188. 2189. 2190. 2191. 2192. 2193. 2194. 2195. 2196. 2197. 2198. 2199. 2200. 2201. 2202. 2203. 2204. 2205. 2206. 2207. 2208. 2209. 2210. 2211. 2212. 2213. 2214. 2215. 2216. 2217. 2218. 2219. 2220. 2221. 2222. 2223. 2224. 2225. 2226. 2227. 2228. 2229. 2230. 2231. 2232. 2233. 2234. 2235. 2236. 2237. 2238. 2239. 2240. 2241. 2242. 2243. 2244. 2245. 2246. 2247. 2248. 2249. 2250. 2251. 2252. 2253. 2254. 2255. 2256. 2257. 2258. 2259. 2260. 2261. 2262. 2263. 2264. 2265. 2266. 2267. 2268. 2269. 2270. 2271. 2272. 2273. 2274. 2275. 2276. 2277. 2278. 2279. 2280. 2281. 2282. 2283. 2284. 2285. 2286. 2287. 2288. 2289. 2290. 2291. 2292. 2293. 2294. 2295. 2296. 2297. 2298. 2299. 2300. 2301. 2302. 2303. 2304. 2305. 2306. 2307. 2308. 2309. 2310. 2311. 2312. 2313. 2314. 2315. 2316.
#include <amxmodx> #include <amxmisc> #include <fakemeta_util> #include <hamsandwich> #include <fun> #include <cstrike> #include <colorchat> #include <engine> //tylko uzyte do zablokowania latarki #define PLUGIN "Jail Mod" #define VERSION "1.0.7p" #define AUTHOR "Cypis" // SUPPORT "HubertTM" //#define DEBUG 1 #define MAX 32 #define strip_user_weapons2(%0) strip_user_weapons(%0), set_pdata_int(%0, 116, 0) native cs_set_player_model(id, newmodel[]); //wymaga cs_player_models_api.amxx enum { ID_DZWIEK_POSZ = 7000, ID_LOS_PROWADZACY, ID_CZAS, ID_FREZZ, ID_SPEED_FZ, } #define WSZYSCY 0 #define ZYWI 1 #pragma tabsize 0 native get_user_jbpack(id); native set_user_jbpack(id, wartosc); new ilosc_graczy[2]; new array_graczy[2][MAX+1]; new const maxAmmo[31] = {0,52,0,90,1,31,1,100,90,1,120,100,100,90,90,90,100,120,30,120,200,31,90,120,90,2,35,90,90,0,100}; new const dni_tygodnia[][] = {"Niedziela", "Poniedzialek", "Wtorek", "Sroda", "Czwartek", "Piatek", "Sobota"}; new SyncHudObj1, SyncHudObj3, SyncHudObj4, jail_day;//SyncHudObj2 new bool:usuwanie_ustawien, bool:end_usun, bool:pokaz_raz, bool:czas_bronie, bool:pojedynek[MAX+1], bool:free_day[MAX+1]; new bool:obsluga_dala, bool:ustaw_freeday[MAX+1], bool:ustaw_duszka[MAX+1]; new AdminVoice, prowadzacy, ostatni_wiezien; new szPoszukiwani[512], nazwa_gracza[MAX+1][64], gTeam[MAX+1]; new g_msgid[MAX+1]; new bool:user_duszek[MAX+1]; new bool:g_bPlayerZaglosowal[MAX+1]; new szInfo[257], szInfoPosz[513], dane_dnia[11], gTimeStart, id_zabawa; new fLastPrisonerShowWish, fLastPrisonerTakeWish, fRemoveData, fDayStartPre, fDayStartPost, fJoinTeam; new ProwadzacyMenu; new pCvarMikro; new Float:user_speed[MAX+1]; new g_RoundTime, g_FreezeTime; new g_Buttons[10]; public plugin_init() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "plugin_init pre"); #endif register_plugin(PLUGIN, VERSION, AUTHOR); RegisterHam(Ham_Spawn, "player", "Odrodzenie", 1); RegisterHam(Ham_TakeDamage, "player", "TakeDamage"); RegisterHam(Ham_TraceAttack, "player", "TraceAttack"); RegisterHam(Ham_Killed, "player", "SmiercGraczaPost", 1); RegisterHam(Ham_Item_Deploy, "weapon_knife", "WeaponKnife", 1); RegisterHam(Ham_TraceAttack, "func_button", "ButtonTraceAttack"); RegisterHam(Ham_Touch, "armoury_entity", "DotykBroni"); RegisterHam(Ham_Touch, "weapon_shield", "DotykBroni"); RegisterHam(Ham_Touch, "weaponbox", "DotykBroni"); RegisterHam(Ham_Use, "game_player_equip", "BlokowanieUse"); RegisterHam(Ham_Use, "player_weaponstrip", "BlokowanieUse"); RegisterHam(Ham_Use, "func_button", "BlokowanieUse2"); RegisterHam(Ham_Use, "func_healthcharger", "BlokowanieLeczenie"); RegisterHam(Ham_Item_AddToPlayer, "weapon_knife", "OnAddToPlayerKnife", 1); register_forward(FM_EmitSound, "EmitSound"); register_forward(FM_Voice_SetClientListening, "Voice_SetClientListening"); register_event("StatusValue", "StatusShow", "be", "1=2", "2!0"); register_event("StatusValue", "StatusHide", "be", "1=1", "2=0"); register_event("TextMsg", "RoundRestart", "a", "2&#Game_w"); register_event("HLTV", "PreRoundStart", "a", "1=0", "2=0"); register_event("CurWeapon", "CurWeapon", "be", "1=1"); register_logevent("RoundEnd", 2, "1=Round_End"); register_logevent("RoundRestart", 2, "0=World triggered", "1=Game_Commencing"); register_logevent("PostRoundStart", 2, "0=World triggered", "1=Round_Start"); set_msg_block(get_user_msgid("HudTextArgs"), BLOCK_SET); //block dhud set_msg_block(get_user_msgid("HudTextPro"), BLOCK_SET); // bloc dhud Pro set_msg_block(get_user_msgid("StatusText"), BLOCK_SET); //block info player set_msg_block(get_user_msgid("ClCorpse"), BLOCK_SET); //block clcorpse set_msg_block(get_user_msgid("MOTD"), BLOCK_SET); register_clcmd("radio1", "BlokujKomende"); register_clcmd("radio2", "BlokujKomende"); register_clcmd("radio3", "BlokujKomende"); register_clcmd("drop", "BlockDrop"); register_clcmd("weapon_piesci", "ClientCommand_SelectKnife"); register_clcmd("weapon_palka", "ClientCommand_SelectKnife"); register_clcmd("jointeam", "cmdChooseTeam"); register_clcmd("chooseteam", "cmdChooseTeam"); register_clcmd("jail_cele", "MenuUstwianiaCel"); register_clcmd("+adminvoice", "AdminVoiceOn"); register_clcmd("-adminvoice", "AdminVoiceOff"); register_clcmd("say /oddaj", "OddajProwadzenie"); register_clcmd("say /obsluga", "ObslugaZyczen"); register_clcmd("say /guns", "MenuBroni"); register_clcmd("say /zabawy", "MenuZabaw"); register_clcmd("say /lr", "MenuZyczen"); register_clcmd("say /cele", "MenuVoteCele"); register_clcmd("say /mute", "MenuMutowania"); register_clcmd("say /mikro", "InfoMikrofon"); register_message(get_user_msgid("TextMsg") ,"msg_TextMsg"); register_message(get_user_msgid("ShowMenu"), "msg_show_menu"); register_message(get_user_msgid("StatusIcon"), "msg_StatusIcon"); register_message(get_user_msgid("VGUIMenu"), "msg_vgui_menu"); register_impulse(100, "msg_FlashLight"); register_menucmd(register_menuid("mainmenu"), 0x223, "_menu_chooseteam"); pCvarMikro = register_cvar("jail_tt_mikro", "0"); g_FreezeTime = get_pcvar_num(get_cvar_pointer("mp_freezetime")); g_RoundTime = floatround(get_cvar_float("mp_roundtime")*60.0); SyncHudObj1 = CreateHudSyncObj(); SyncHudObj3 = CreateHudSyncObj(); SyncHudObj4 = CreateHudSyncObj(); fJoinTeam = CreateMultiForward("OnJoinTeam", ET_CONTINUE, FP_CELL, FP_CELL, FP_CELL, FP_CELL); fDayStartPre = CreateMultiForward("OnDayStartPre", ET_CONTINUE, FP_CELL, FP_ARRAY, FP_ARRAY, FP_ARRAY, FP_CELL); fDayStartPost = CreateMultiForward("OnDayStartPost", ET_CONTINUE, FP_CELL); fLastPrisonerShowWish = CreateMultiForward("OnLastPrisonerShowWish", ET_CONTINUE, FP_CELL); fLastPrisonerTakeWish = CreateMultiForward("OnLastPrisonerTakeWish", ET_CONTINUE, FP_CELL, FP_CELL); fRemoveData = CreateMultiForward("OnRemoveData", ET_CONTINUE, FP_CELL); ProwadzacyMenu = menu_create("rPozwol wiezniowi rwybrac zyczenie:", "Handel_Obsluga_Zyczen"); menu_additem(ProwadzacyMenu, "yTak d[Wkonywal dobrze polecenia]"); menu_additem(ProwadzacyMenu, "rNie d[Nie wykonywal dobrze polecen]"); WczytajCele(); set_task(1.0, "task_server", _, _, _, "b"); set_task(5.0, "task_cfg"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "plugin_init post"); #endif } public task_cfg() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_cfg pre"); #endif server_cmd("exec addons/amxmodx/configs/jailbreak.cfg"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_cfg post"); #endif } public CurWeapon(id) { if(!is_user_alive(id)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "CurWeapon pre"); #endif if(!end_usun) set_user_maxspeed(id, user_speed[id]? user_speed[id]: 250.0); if(user_duszek[id]) { new weapon = read_data(2); if(weapon != CSW_KNIFE && weapon != CSW_FLASHBANG && weapon != CSW_SMOKEGRENADE) { user_duszek[id] = false; set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); AddArray(id, WSZYSCY); AddArray(id, ZYWI); } } if(dane_dnia[7]) { if(dane_dnia[7] != 3) { if(gTeam[id] != dane_dnia[7]) return; } new weapon = read_data(2); if(weapon == CSW_KNIFE || weapon == CSW_HEGRENADE || weapon == CSW_FLASHBANG || weapon == CSW_SMOKEGRENADE) return; cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "CurWeapon post"); #endif } enum { MIKRO = 0, WALKA, FF_TT, TT_GOD, CT_GOD, CT_NIE_MOZE_TT, TT_NIE_MOZE_CT } new bool:mode_gracza[7]; enum { V_PALKA = 0, P_PALKA, V_PIESCI, P_PIESCI, V_REKAWICE, P_REKAWICE } new SzModels[6][128]; public plugin_precache() { SzModels[V_PALKA] = "models/jb_bara/v_palkabara.mdl"; SzModels[P_PALKA] = "models/jb_bara/p_palkabara.mdl"; SzModels[V_PIESCI] = "models/jb_bara/v_piescibara.mdl"; SzModels[P_PIESCI] = "models/jb_bara/p_piescibara.mdl"; SzModels[V_REKAWICE] = "models/jb_bara/v_boxbara.mdl"; SzModels[P_REKAWICE] = "models/jb_bara/p_boxbara.mdl"; precache_model(SzModels[V_PALKA]); precache_model(SzModels[P_PALKA]); precache_model(SzModels[V_PIESCI]); precache_model(SzModels[P_PIESCI]); precache_model(SzModels[V_REKAWICE]); precache_model(SzModels[P_REKAWICE]); precache_model("models/player/wiezien_bara/wiezien_bara.mdl"); precache_model("models/player/klawisz_bara/klawisz_bara.mdl"); precache_sound("weapons/prawy_przycisk.wav"); precache_sound("weapons/uderzenie_mur_ultra.wav"); precache_sound("weapons/hit_ultra1.wav"); precache_sound("weapons/hit_ultra2.wav"); precache_sound("weapons/machanie_ultra.wav"); precache_sound("jb_bara/box.mp3"); precache_sound("jb_ultra/uciekinier.wav"); precache_generic("sprites/weapon_piesci.txt"); precache_generic("sprites/weapon_palka.txt"); precache_generic("sprites/640hud41.spr"); } /********** - Native - ************/ new Array:gZabawyName; new Array:gZyczeniaName; public plugin_natives() { gZabawyName = ArrayCreate(32); gZyczeniaName = ArrayCreate(32); register_native("jail_register_game", "ZarejstrujZabawe", 1); register_native("jail_register_wish", "ZarejstrujZyczenie", 1); register_native("jail_set_game_hud", "jail_set_game_hud_p", 0); register_native("jail_get_prisoners_micro", "PobierzMikrofon", 1); register_native("jail_get_prisoners_fight", "PobierzWalke", 1); register_native("jail_get_prisoner_free", "PobierzFreeday", 1); register_native("jail_get_prisoner_ghost", "PobierzDuszka", 1); register_native("jail_get_prisoner_last", "PobierzOstatniego", 1); register_native("jail_get_prowadzacy", "PobierProwadzacego", 1); register_native("jail_get_poszukiwany", "PobierzPoszukiwany", 1); register_native("jail_get_user_block", "PobierzPojedynek", 1); register_native("jail_get_play_game_id", "PobierzIdZabawy", 1); register_native("jail_get_days", "PobierzDni", 1); register_native("jail_set_prisoners_micro", "UstawMikrofon", 1); register_native("jail_set_prisoners_fight", "UstawWalke", 1); register_native("jail_set_prisoner_free", "UstawFreeday", 1); register_native("jail_set_prisoner_ghost", "UstawDuszka", 1); register_native("jail_set_prowadzacy", "UstawProwadzacego", 1); register_native("jail_set_god_tt", "UstawTTGod", 1); register_native("jail_set_god_ct", "UstawCTGod", 1); register_native("jail_set_ct_hit_tt", "UstawCTHitTT", 1); register_native("jail_set_tt_hit_ct", "UstawTTHitCT", 1); register_native("jail_set_user_block", "UstawBlokade", 1); register_native("jail_set_play_game", "UstawZabawe", 1); register_native("jail_set_user_menuweapons", "UstawMenuWeapon", 1); register_native("jail_set_user_speed", "UstawPredkosc", 1); register_native("jail_open_cele", "OtworzCele", 1); } public ZarejstrujZyczenie(nazwa_zyczenia[]) { param_convert(1); ArrayPushString(gZyczeniaName, nazwa_zyczenia); static ilosc; ilosc++; return ilosc; } new bool:zyczenie_wybrane; public OnLastPrisonerShowWish(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OnLastPrisonerShowWish pre"); #endif MenuZyczen(id); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OnLastPrisonerShowWish post"); #endif } public MenuZyczen(id) { if(gTeam[id] != 1 || ostatni_wiezien != id || zyczenie_wybrane || !obsluga_dala) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZyczen pre"); #endif if(!ArraySize(gZyczeniaName)) { ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] ^x01Nie ma zadnych zyczen na serwerze!"); return PLUGIN_HANDLED; } new szZyczenia[32], szID[32], menu = menu_create("Wybierz Zyczenie:", "Handel_Zyczenie"); for(new i=0; i<ArraySize(gZyczeniaName); i++) { ArrayGetString(gZyczeniaName, i, szZyczenia, 31); num_to_str(i+1, szID, 31); menu_additem(menu, szZyczenia, szID); } menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZyczen post"); #endif return PLUGIN_HANDLED; } public Handel_Zyczenie(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || ostatni_wiezien != id) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Zyczenie pre"); #endif new acces, szZyczenie[32], szID[32]; menu_item_getinfo(menu, item, acces, szID, 31, szZyczenie, 31, acces); new iRet; ExecuteForward(fLastPrisonerTakeWish, iRet, id, str_to_num(szID)) if(iRet == 9999) { menu_display(id, menu); ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] ^x01Nie mozesz wybrac tego zyczenia!"); return; } ColorChat(0, TEAM_COLOR,"^x04[PrisonBreak] ^x03%s ^x01wybral^x03 %s", nazwa_gracza[id], szZyczenie); zyczenie_wybrane = true; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Zyczenie post"); #endif } //////////////////// public ZarejstrujZabawe(nazwa_zabawy[]) { param_convert(1); ArrayPushString(gZabawyName, nazwa_zabawy); static ilosc = 8; ilosc++; return ilosc; } new bool:zabawa_wybrana; public MenuZabaw(id) { if(gTeam[id] != 2 || prowadzacy != id) return PLUGIN_CONTINUE; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZabaw pre"); #endif if(!ArraySize(gZabawyName)) { ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] ^x01Nie ma zadnych zabaw na serwerze!"); return PLUGIN_CONTINUE; } if(zabawa_wybrana) { ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] ^x01Juz wybrales dzisiaj zabawe"); return PLUGIN_CONTINUE; } new szZabawa[32], szID[32], menu = menu_create("Menu Zabaw:", "Handel_Menu_Zabaw"); for(new i=0; i<ArraySize(gZabawyName); i++) { ArrayGetString(gZabawyName, i, szZabawa, 31); num_to_str(i+9, szID, 31); menu_additem(menu, szZabawa, szID); } menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuZabaw post"); #endif return PLUGIN_HANDLED; } public Handel_Menu_Zabaw(id, menu, item) { if(item == MENU_EXIT || zabawa_wybrana || prowadzacy != id) return; if(czas_bronie || ilosc_graczy[WSZYSCY] != ilosc_graczy[ZYWI]) { ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] Juz za pozno na zabawe! (Ktos z wiezniow nie zyje)"); return; } if(end_usun) { ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] Zaczekaj na calkowite rozpoczecie rundy!"); return; } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Menu_Zabaw pre"); #endif new acces, szZabawa[32], szID[32]; menu_item_getinfo(menu, item, acces, szID, 31, szZabawa, 31, acces); ColorChat(id, TEAM_COLOR,"^x04[PrisonBreak] ^x01%s%s", UstawZabawe(str_to_num(szID), false)? "wlaczyles ": "juz jest za pozno, aby wlaczyc ", szZabawa); zabawa_wybrana = true; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Menu_Zabaw post"); #endif } public UstawPredkosc(id, Float:speed) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawPredkosc pre"); #endif user_speed[id] = speed; if(end_usun) { new data[1]; data[0] = id; set_task(g_FreezeTime-(get_systime()-gTimeStart)+0.1, "taskUstawPredkosc", ID_SPEED_FZ, data, 1); } else set_user_maxspeed(id, speed); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawPredkosc post"); #endif } public taskUstawPredkosc(data[1]) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "taskUstawPredkosc pre"); #endif set_user_maxspeed(data[0], user_speed[data[0]]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "taskUstawPredkosc post"); #endif } public PobierzIdZabawy() { return id_zabawa; } public bool:PobierzPojedynek(id) { return pojedynek[id]; } public bool:PobierzPoszukiwany(id) { return (contain(szPoszukiwani, nazwa_gracza[id]) != -1)? true: false; } public bool:PobierzMikrofon() { return bool:mode_gracza[MIKRO]; } public bool:PobierzWalke() { return bool:mode_gracza[WALKA]; } public bool:PobierzFreeday(id) { return free_day[id]; } public bool:PobierzDuszka(id) { return user_duszek[id]; } public PobierzOstatniego() { return ostatni_wiezien; } public PobierProwadzacego() { return prowadzacy; } public PobierzDni() { return jail_day%7; } public UstawMikrofon(bool:wartosc, bool:info) { if(ostatni_wiezien || dane_dnia[1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawMikrofon pre"); #endif mode_gracza[MIKRO] = wartosc; if(info) ColorChat(0, TEAM_COLOR, "^x04[PrisonBreak] ^x01Status mikro dla wiezniow: ^x03%s!", mode_gracza[MIKRO]? "wlaczone": "wylaczone"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawMikrofon post"); #endif } public UstawWalke(bool:wartosc, bool:modele, bool:info) { if(ostatni_wiezien || (dane_dnia[1] && modele)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawWalke pre"); #endif mode_gracza[WALKA] = modele; mode_gracza[FF_TT] = wartosc; for(new i=1; i<=MAX; i++) { if(!is_user_alive(i) || !is_user_connected(i) || gTeam[i] != 1 || free_day[i] || user_duszek[i]) continue; set_user_health(i, 100); if(get_user_weapon(i) == CSW_KNIFE) { set_pev(i, pev_viewmodel2, modele? SzModels[V_REKAWICE]: SzModels[V_PIESCI]); set_pev(i, pev_weaponmodel2, modele? SzModels[P_REKAWICE]: SzModels[P_PIESCI]); } } if(info) ColorChat(0, TEAM_COLOR,"^x04[PrisonBreak] ^x01Walka %s!", mode_gracza[WALKA]? "wlaczona": "wylaczona"); mode_gracza[WALKA] ? client_cmd(0, "mp3 play sound/jb_bara/box.mp3") :client_cmd(0, "mp3 stop"); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawWalke post"); #endif } public UstawFreeday(id, bool:wartosc, bool:nextround) { if(!id || (dane_dnia[1] && !nextround)) return 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawFreeday pre"); #endif if(!nextround && wartosc) { new podlicz = 0; for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && gTeam[i] == 1 && !free_day[i] && !user_duszek[i]) podlicz++; } if(podlicz == 1) return 0; } if(wartosc) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } free_day[id] = wartosc; ustaw_freeday[id] = nextround; if(!wartosc) { AddArray(id, WSZYSCY); AddArray(id, ZYWI); } set_pev(id, pev_body, wartosc? 3: random(3)); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawFreeday post"); #endif return 1; } public UstawDuszka(id, bool:wartosc, bool:nextround) { if(!id || (dane_dnia[1] && !nextround)) return 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawDuszka pre"); #endif new bool:ma=user_duszek[id] if(!nextround && wartosc) { new podlicz = 0; for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && gTeam[i] == 1 && !free_day[i] && !user_duszek[i]) podlicz++; } if(podlicz == 1) return 0; } if(wartosc) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } user_duszek[id] = wartosc; ustaw_duszka[id] = nextround; if(!wartosc) { AddArray(id, WSZYSCY); AddArray(id, ZYWI); } if(ma || wartosc) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, wartosc? 0: 255); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawDuszka post"); #endif return 1; } public UstawTTGod(bool:wartosc) { mode_gracza[TT_GOD] = wartosc; } public UstawCTGod(bool:wartosc) { mode_gracza[CT_GOD] = wartosc; } public UstawCTHitTT(bool:wartosc) { mode_gracza[CT_NIE_MOZE_TT] = wartosc; } public UstawTTHitCT(bool:wartosc) { mode_gracza[TT_NIE_MOZE_CT] = wartosc; } public UstawBlokade(id, bool:wartosc) { pojedynek[id] = wartosc; } public UstawProwadzacego(id) { if(!dane_dnia[1]) { if(prowadzacy != id && prowadzacy) set_pev(prowadzacy, pev_body, 0); prowadzacy = id; if(id) { if(task_exists(ID_LOS_PROWADZACY)) remove_task(ID_LOS_PROWADZACY); set_pev(id, pev_body, 1); set_user_rendering(prowadzacy, kRenderFxGlowShell, 255, 255, 0, kRenderNormal, 15); } } } public UstawZabawe(zabawa, bool:fast) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawZabawe pre"); #endif if(!fast) { if(czas_bronie || ilosc_graczy[WSZYSCY] != ilosc_graczy[ZYWI]) return 0; if(mode_gracza[WALKA] || mode_gracza[FF_TT]) UstawWalke(false, false, false); } ForwardDayStartPre(zabawa); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "UstawZabawe post"); #endif return 1; } public MenuBroni(id) { if(!is_user_alive(id) || gTeam[id] != 2 || czas_bronie) return PLUGIN_HANDLED; UstawMenuWeapon(id, true, true, 0, 0); return PLUGIN_HANDLED; } new bool:bronie_menu[MAX+1][2]; new bronie_bitsum[MAX+1][2]; new bronie_gracza[MAX+1][2]; public UstawMenuWeapon(id, bool:bronie, bool:pistolety, bitsum_bronie, bitsum_pistolety) { if(!bronie && !pistolety) { new weapon = bronie_gracza[id][0], weaponname[24]; if(weapon > 0) { get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); } weapon = bronie_gracza[id][1]; if(weapon > 0) { get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); } return; } bronie_gracza[id][0] = 0; bronie_gracza[id][1] = 0; bronie_menu[id][0] = bronie; bronie_menu[id][1] = pistolety; bronie_bitsum[id][0] = bitsum_bronie; bronie_bitsum[id][1] = bitsum_pistolety; MenuBronie(id); } public MenuBronie(id) { if(!bronie_menu[id][0] && bronie_menu[id][1]) { MenuPistolety(id); return; } if(!bronie_menu[id][0]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuBronie pre"); #endif new menu = menu_create("yWybierz rBronie:", "Handel_Bronie"); if(!(bronie_bitsum[id][0] & (1<<CSW_M4A1))) menu_additem(menu, "yM4A1", "22"); if(!(bronie_bitsum[id][0] & (1<<CSW_AK47))) menu_additem(menu, "yAK47", "28"); if(!(bronie_bitsum[id][0] & (1<<CSW_AWP))) menu_additem(menu, "yAWP", "18"); if(!(bronie_bitsum[id][0] & (1<<CSW_M249))) menu_additem(menu, "yKrowa", "20"); if(!(bronie_bitsum[id][0] & (1<<CSW_G3SG1))) menu_additem(menu, "yAuto lama y[TT]", "24"); if(!(bronie_bitsum[id][0] & (1<<CSW_SG552))) menu_additem(menu, "yAuto lama y[CT]", "27"); menu_setprop(menu, MPROP_EXITNAME, "rWyjdz"); menu_setprop(menu, MPROP_BACKNAME, "yPoprzednia rstrona"); menu_setprop(menu, MPROP_NEXTNAME, "yNastepna rstrona"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuBronie post"); #endif } public Handel_Bronie(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || !bronie_menu[id][0]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Bronie pre"); #endif new weaponname[24], data[3], weapon, callback; menu_item_getinfo(menu, item, weapon, data, 2, _, _, callback); if((callback = Jaki_Pistolet(id)) > 0) ham_strip_weapon(id, callback); weapon = str_to_num(data); get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); bronie_gracza[id][0] = weapon; if(bronie_menu[id][1]) MenuPistolety(id); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Bronie post"); #endif } public MenuPistolety(id) { if(!bronie_menu[id][1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuPistolety pre"); #endif new menu = menu_create("rWybierz yPistolet:", "Handel_Pistolety"); if(!(bronie_bitsum[id][1] & (1<<CSW_USP))) menu_additem(menu, "yUSP", "16"); if(!(bronie_bitsum[id][1] & (1<<CSW_GLOCK18))) menu_additem(menu, "yGlock", "17"); if(!(bronie_bitsum[id][1] & (1<<CSW_DEAGLE))) menu_additem(menu, "yDeagle", "26"); if(!(bronie_bitsum[id][1] & (1<<CSW_ELITE))) menu_additem(menu, "yElitki", "10"); menu_setprop(menu, MPROP_EXITNAME, "rWyjdz"); menu_display(id, menu); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuPistolety post"); #endif } public Handel_Pistolety(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || !bronie_menu[id][1]) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Pistolety pre"); #endif new weaponname[24], data[3], weapon, callback; menu_item_getinfo(menu, item, weapon, data, 2, _, _, callback); weapon = str_to_num(data); get_weaponname(weapon, weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, weapon, maxAmmo[weapon]); bronie_gracza[id][1] = weapon; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Pistolety post"); #endif } /********** - Koniec Native - ************/ public ButtonTraceAttack(ent, id, Float:damage, Float:direction[3], tracehandle, damagebits) { if(pev_valid(ent) && prowadzacy == id) { ExecuteHam(Ham_Use, ent, id, 0, 2, 1.0); set_pev(ent, pev_frame, 0.0); } return HAM_IGNORED; } public TakeDamage(id, ent, attacker, Float:damage, damagebits) return vAttackDamagePlayer(id, attacker, damage, damagebits, true); public TraceAttack(id, attacker, Float:damage, Float:direction[3], tracehandle, damagebits) return vAttackDamagePlayer(id, attacker); vAttackDamagePlayer(id, attacker, Float:damage=0.0, damagebits=0, bool:dmg=false) { if(!is_user_connected(id)) return HAM_IGNORED; if(gTeam[id] == 1 && mode_gracza[TT_GOD]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && mode_gracza[CT_GOD]) return HAM_SUPERCEDE; if(is_user_connected(attacker)) { if(gTeam[id] == 1 && gTeam[attacker] == 1 && !mode_gracza[FF_TT]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && gTeam[attacker] == 2) return HAM_SUPERCEDE; if(gTeam[id] == 1 && gTeam[attacker] == 2 && mode_gracza[CT_NIE_MOZE_TT]) return HAM_SUPERCEDE; if(gTeam[id] == 2 && gTeam[attacker] == 1 && mode_gracza[TT_NIE_MOZE_CT]) return HAM_SUPERCEDE; if(free_day[attacker] || gTeam[attacker] == 1 && free_day[id]) return HAM_SUPERCEDE; if(user_duszek[id] && gTeam[attacker] == 1) return HAM_SUPERCEDE; if(user_duszek[attacker] && gTeam[id] == 2) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "vAttackDamagePlayer pre"); #endif user_duszek[attacker] = false; set_user_rendering(attacker, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 255); AddArray(attacker, WSZYSCY); AddArray(attacker, ZYWI); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "vAttackDamagePlayer post"); #endif return HAM_IGNORED; } if(dmg) { if(get_user_weapon(attacker) == CSW_KNIFE && damagebits & DMG_BULLET) SetHamParamFloat(4, damage*0.4); } } return HAM_IGNORED; } public Odrodzenie(id) { if(!is_user_alive(id) || !is_user_connected(id)) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Odrodzenie pre"); #endif set_user_rendering(id, kRenderFxGlowShell, 0, 0, 0, kRenderNormal, 0); strip_user_weapons2(id); switch(cs_get_user_team(id)) { case CS_TEAM_T: { gTeam[id] = 1; cs_set_player_model(id, "wiezien_bara"); set_pev(id, pev_body, random(3)); AddArray(id, WSZYSCY); AddArray(id, ZYWI); } case CS_TEAM_CT: { gTeam[id] = 2; cs_set_player_model(id, "klawisz_bara"); if(dane_dnia[4] < 2) { if(bronie_gracza[id][0] && bronie_gracza[id][1]) { for(new i=0; i<2; i++) { new weaponname[24]; get_weaponname(bronie_gracza[id][i], weaponname, 23); give_item(id, weaponname); cs_set_user_bpammo(id, bronie_gracza[id][i], maxAmmo[bronie_gracza[id][i]]); } } else if(!czas_bronie) { UstawMenuWeapon(id, true, true, 0, 0); } } } } give_item(id, "weapon_knife"); if(free_day[id]) set_pev(id, pev_body, 3); if(user_duszek[id]) set_user_rendering(id, kRenderFxNone, 0, 0, 0, kRenderTransAlpha, 0); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Odrodzenie post"); #endif } public OddajProwadzenie(id) { if(prowadzacy != id) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OddajProwadzenie pre"); #endif new menu = menu_create("rOddaj yProwadzenie:", "Handel_Oddaj"); for(new i=1; i<=MAX; i++) { if(!is_user_alive(i) || !is_user_connected(i) || gTeam[i] != 2 || prowadzacy == i) continue; new num[3]; num_to_str(i, num, 2); menu_additem(menu, nazwa_gracza[i], num); } menu_setprop(menu, MPROP_EXITNAME, "rWyjdz"); menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona"); menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "OddajProwadzenie post"); #endif return PLUGIN_HANDLED; } public Handel_Oddaj(id, menu, item) { if(item == MENU_EXIT || !is_user_alive(id) || prowadzacy != id) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Oddaj pre"); #endif new data[3], acces, callback; menu_item_getinfo(menu, item, acces, data, 2, _, _, callback); prowadzacy = str_to_num(data); ColorChat(0, GREEN, "[PrisonBreak]^x01 Zmienil sie Prowadzacy!"); set_pev(id, pev_body, 0); set_pev(prowadzacy, pev_body, 1); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Oddaj post"); #endif } public WeaponKnife(ent) { new id = get_pdata_cbase(ent, 41, 4); if(!is_user_alive(id)) return; if(cs_get_user_shield(id)) return; if(gTeam[id] == 1 && !mode_gracza[WALKA]) { set_pev(id, pev_viewmodel2, SzModels[V_PIESCI]); set_pev(id, pev_weaponmodel2, SzModels[P_PIESCI]); } else if(gTeam[id] == 1 && mode_gracza[WALKA]) { set_pev(id, pev_viewmodel2, SzModels[V_REKAWICE]); set_pev(id, pev_weaponmodel2, SzModels[P_REKAWICE]); } else if(gTeam[id] == 2) { set_pev(id, pev_viewmodel2, SzModels[V_PALKA]); set_pev(id, pev_weaponmodel2, SzModels[P_PALKA]); } } public EmitSound(id, channel, sample[]) { if(!is_user_alive(id) || !is_user_connected(id)) return FMRES_IGNORED; if(equal(sample, "weapons/knife_", 14)) { switch(sample[17]) { case ('b'): emit_sound(id, CHAN_WEAPON, "weapons/prawy_przycisk.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); case ('w'): emit_sound(id, CHAN_WEAPON, "weapons/uderzenie_mur_ultra.wav", 1.0, ATTN_NORM, 0, PITCH_LOW); case ('s'): emit_sound(id, CHAN_WEAPON, "weapons/machanie_ultra.wav", 1.0, ATTN_NORM, 0, PITCH_NORM); case ('1'): emit_sound(id, CHAN_WEAPON, "weapons/hit_ultra1.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM); case ('2'): emit_sound(id, CHAN_WEAPON, "weapons/hit_ultra2.wav", random_float(0.5, 1.0), ATTN_NORM, 0, PITCH_NORM); } return FMRES_SUPERCEDE; } if(equal(sample, "common/wpn_denyselect.wav")) return FMRES_SUPERCEDE; return FMRES_IGNORED; } public AdminVoiceOn(id) { if(!(get_user_flags(id) & ADMIN_BAN)) return PLUGIN_HANDLED; if(AdminVoice) return PLUGIN_HANDLED; AdminVoice = id; ColorChat(0,GREEN,"[PrisonBreak]^x01 Cisza! ^x03%s ^x01przemawia.", nazwa_gracza[id]); client_cmd(id, "+voicerecord"); return PLUGIN_HANDLED; } public AdminVoiceOff(id) { if(!(get_user_flags(id) & ADMIN_BAN)) return PLUGIN_HANDLED; if(AdminVoice != id) { client_cmd(id, "-voicerecord"); return PLUGIN_HANDLED; } client_cmd(id, "-voicerecord"); AdminVoice = 0; return PLUGIN_HANDLED; } new bool:g_Muted[MAX+1][MAX+1]; public MenuMutowania(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuMutowania pre"); #endif new menu = menu_create("rMenu ymutowania:", "Handel_Mute"); for(new i=1; i<=MAX; i++) { if(!is_user_connected(i) || is_user_hltv(i)) continue; new num[3], szName[64]; num_to_str(i, num, 2); szName = nazwa_gracza[i]; if(g_Muted[id][i]) add(szName, 63, " r[MUTE]"); menu_additem(menu, szName, num); } menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_setprop(menu, MPROP_BACKNAME, "Poprzednia strona"); menu_setprop(menu, MPROP_NEXTNAME, "Nastepna strona"); menu_display(id, menu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "MenuMutowania post"); #endif } public Handel_Mute(id, menu, item) { if(item == MENU_EXIT ) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Mute pre"); #endif new data[3], acces, id2; menu_item_getinfo(menu, item, acces, data, 2, _, _, id2); id2 = str_to_num(data); g_Muted[id][id2] = !g_Muted[id][id2]; ColorChat(id, GREEN,"[PrisonBreak] ^x01%s gracza ^x03%s", g_Muted[id][id2]? "Zmutowales": "Odmutowales", nazwa_gracza[id2]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Mute post"); #endif } public Voice_SetClientListening(odbiorca, nadawca, listen) { if(odbiorca == nadawca) return FMRES_IGNORED; if(g_Muted[odbiorca][nadawca]) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } if(AdminVoice) { if(AdminVoice == nadawca) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true); return FMRES_SUPERCEDE; } else if(gTeam[nadawca] == 1) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } } if(gTeam[nadawca] == 1 && !mode_gracza[MIKRO]) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } if(is_user_alive(odbiorca)) { if(is_user_alive(nadawca)) { engfunc(EngFunc_SetClientListening, odbiorca, nadawca, true); return FMRES_SUPERCEDE; } engfunc(EngFunc_SetClientListening, odbiorca, nadawca, false); return FMRES_SUPERCEDE; } return FMRES_IGNORED; } public BlokowanieUse(ent, id, activator, iType, Float:fValue) { if(!is_user_connected(id) || id == activator) return HAM_IGNORED; if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id] || free_day[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public BlokowanieLeczenie(ent, id, activator, iType, Float:fValue) { if(!is_user_connected(id)) return HAM_IGNORED; if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public DotykBroni(weapon, id) { if(!is_user_connected(id)) return HAM_IGNORED; if(free_day[id] || dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return HAM_SUPERCEDE; return HAM_IGNORED; } public BlockDrop(id) { if(dane_dnia[4] == 3 || dane_dnia[4] == gTeam[id] || pojedynek[id]) return PLUGIN_HANDLED; return PLUGIN_CONTINUE; } public SmiercGraczaPost(id, attacker, shouldgib) { if(!is_user_connected(id)) return HAM_IGNORED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "SmiercGraczaPost pre"); #endif if(gTeam[id] == 1) { if(is_user_connected(attacker) && gTeam[attacker] == 1) set_user_frags(attacker, get_user_frags(attacker)+2); if(ostatni_wiezien == id) { for(new i=1; i<=MAX; i++) { if(is_user_alive(i) && is_user_connected(i) && (free_day[i] || user_duszek[i])) { user_kill(i); free_day[i] = false; user_duszek[i] = false; } } } DelPoszukiwany(id); DelArray(id, ZYWI); } else if(gTeam[id] == 2) { if(is_user_connected(attacker) && gTeam[attacker] == 1 && !obsluga_dala && !dane_dnia[2]) { AddPoszukiwany(attacker); } if(prowadzacy == id) { prowadzacy = 0; if(!obsluga_dala && !dane_dnia[2]) set_task(1.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "SmiercGraczaPost post"); #endif return HAM_IGNORED; } public StatusShow(id) { new pid = read_data(2), team = gTeam[pid]; set_hudmessage(team == 1? 255: 0, 50, team == 1? 0: 255, -1.0, 0.9, 0, 0.01, 6.0); ShowSyncHudMsg(id, SyncHudObj1, "%s: %s [%i]^nSzlugi: %d", team == 1? "Wiezien": "Straznik", nazwa_gracza[pid], get_user_health(pid), get_user_jbpack(pid)); } public StatusHide(id) ClearSyncHud(id, SyncHudObj1); public msg_FlashLight(id) { if(gTeam[id] == 1) return PLUGIN_HANDLED; return PLUGIN_CONTINUE; } public msg_TextMsg() { new message[32]; get_msg_arg_string(2, message, 31); if(equal(message, "#Game_teammate_attack") || equal(message, "#Killed_Teammate")) return PLUGIN_HANDLED; if(equal(message, "#Terrorists_Win")) { set_msg_arg_string(2, "Wiezniowie dojechali klawiszy!"); return PLUGIN_CONTINUE; } else if(equal(message, "#CTs_Win")) { set_msg_arg_string(2, "Klawisze dojechali wiezniow!"); return PLUGIN_CONTINUE; } else if(equal(message, "#Round_Draw")) { set_msg_arg_string(2, "Runda remisowa!") return PLUGIN_CONTINUE; } else if(equal(message, "#Only_1_Team_Change")) { set_msg_arg_string(2, "Dozwolona tylko 1 zmiana druzyny!") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_SemiAuto")) { set_msg_arg_string(2, "Zmieniono na tryb pol-automatyczny") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_BurstFire")) { set_msg_arg_string(2, "Zmieniono na tryb serii") return PLUGIN_CONTINUE; } else if(equal(message, "#Switch_To_FullAuto")) { set_msg_arg_string(2, "Zmieniono na tryb automatyczny") return PLUGIN_CONTINUE; } else if(equal(message, "#Game_Commencing")) { set_msg_arg_string(2, "Rozpoczecie Gry!"); return PLUGIN_CONTINUE; } else if(equal(message, "#Cannot_Be_Spectator")) { set_msg_arg_string(2, "Nie mozesz byc obserwatorem"); return PLUGIN_CONTINUE; } return PLUGIN_HANDLED; } public msg_StatusIcon(msgid, dest, id) { new szIcon[8]; get_msg_arg_string(2, szIcon, 7); if(equal(szIcon, "buyzone") && get_msg_arg_int(1)) { set_pdata_int(id, 235, get_pdata_int(id, 235) & ~(1<<0)); return PLUGIN_HANDLED; } return PLUGIN_CONTINUE; } public client_authorized(id) { set_user_info(id, "_vgui_menus", "0"); get_user_name(id, nazwa_gracza[id], 63); } public client_disconnect(id) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "client_disconnect pre"); #endif if(AdminVoice == id) AdminVoice = 0; if(prowadzacy == id) { prowadzacy = 0; set_task(1.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } if(ostatni_wiezien == id) ostatni_wiezien = 0; user_speed[id] = 0.0; bronie_gracza[id][0] = 0; bronie_gracza[id][1] = 0; pojedynek[id] = false; free_day[id] = false; user_duszek[id] = false; ustaw_freeday[id] = false; ustaw_duszka[id] = false; for(new i=1; i<=MAX; i++) g_Muted[i][id] = false; DelPoszukiwany(id); if(gTeam[id] == 1) { DelArray(id, WSZYSCY); DelArray(id, ZYWI); } gTeam[id] = 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "client_disconnect post"); #endif } public client_infochanged(id) { get_user_info(id, "name", nazwa_gracza[id], 63); } public RoundRestart() { usuwanie_ustawien = true; end_usun = true; UsuwanieWydarzen(); } public RoundEnd() { end_usun = true; czas_bronie = false; UsuwanieWydarzen(); } public PreRoundStart() { end_usun = true; szInfo = ""; szInfoPosz = ""; szPoszukiwani = ""; ostatni_wiezien = 0; prowadzacy = 0; obsluga_dala = false; pokaz_raz = false; czas_bronie = false; zabawa_wybrana = false; zyczenie_wybrane = false; mode_gracza[WALKA] = false; mode_gracza[MIKRO] = bool:get_pcvar_num(pCvarMikro); mode_gracza[FF_TT] = false; mode_gracza[TT_GOD] = false; mode_gracza[CT_GOD] = false; mode_gracza[CT_NIE_MOZE_TT] = false; mode_gracza[TT_NIE_MOZE_CT] = false if(task_exists(ID_DZWIEK_POSZ)) remove_task(ID_DZWIEK_POSZ); if(task_exists(ID_LOS_PROWADZACY)) remove_task(ID_LOS_PROWADZACY); if(task_exists(ID_CZAS)) remove_task(ID_CZAS); if(task_exists(ID_FREZZ)) remove_task(ID_FREZZ); if(task_exists(ID_SPEED_FZ)) remove_task(ID_SPEED_FZ); if(task_exists(2761234, 1)) remove_task(2761234, 1); for(new i=0; i<=10; i++) dane_dnia[i] = 0; if(usuwanie_ustawien) { jail_day = 0; usuwanie_ustawien = false; } else jail_day++; if(jail_day) { gTimeStart = get_systime(); ForwardDayStartPre(jail_day%7); } } UsuwanieWydarzen() { for(new i=1; i<=MAX; i++) { g_bPlayerZaglosowal[i] = false; pojedynek[i] = false; user_speed[i] = 0.0; array_graczy[WSZYSCY][i] = 0; array_graczy[ZYWI][i] = 0; pojedynek[i] = false; bronie_menu[i][0] = false; bronie_menu[i][1] = false; if(ustaw_freeday[i]) { ustaw_freeday[i] = false; free_day[i] = true; } else free_day[i] = false; if(ustaw_duszka[i]) { ustaw_duszka[i] = false; user_duszek[i] = true; } else user_duszek[i] = false; } ilosc_graczy[WSZYSCY] = 0; ilosc_graczy[ZYWI] = 0; new Return_F if(fRemoveData) ExecuteForward(fRemoveData, Return_F, id_zabawa); } public PostRoundStart() { end_usun = false; set_task(60.0, "koniec_czasu", ID_CZAS); if(!jail_day) { gTimeStart = get_systime()-g_FreezeTime; ForwardDayStartPre(jail_day%7); } if(!prowadzacy && !dane_dnia[1]) set_task(15.0, "LosujProwadzacego", ID_LOS_PROWADZACY); } ForwardDayStartPre(zabawa) { new iRet new is_frezz = g_FreezeTime-(get_systime()-gTimeStart); new czas = g_RoundTime+min(is_frezz, 0); ExecuteForward(fDayStartPre, iRet, zabawa, PrepareArray(szInfo, 256, 1), PrepareArray(szInfoPosz, 512, 1), PrepareArray(dane_dnia, 10, 1), czas); id_zabawa = zabawa; new dane[1] dane[0] = zabawa; if(is_frezz) set_task(is_frezz+0.1, "ForwardDayStartPost", ID_FREZZ, dane, 1); else ForwardDayStartPost(dane); } public ForwardDayStartPost(zabawa[1]) { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ForwardDayStartPost pre"); #endif new iRet; ExecuteForward(fDayStartPost, iRet, zabawa[0]); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ForwardDayStartPost post"); #endif } public koniec_czasu() { czas_bronie = true; } public LosujProwadzacego() { if(!prowadzacy) { if(((prowadzacy = RandomCT()) > 0)) { set_pev(prowadzacy, pev_body, 1); } } } stock RandomCT() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "RandomCT pre"); #endif new CT_Player[MAX+2], ile=0; for(new i=1; i<=MAX; i++) { if(!is_user_connected(i) || !is_user_alive(i) || gTeam[i] != 2) continue; CT_Player[++ile] = i; } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "RandomCT post"); #endif return CT_Player[(ile? random_num(1, ile): 0)]; } new TimeAfk[MAX+1], LastPosition[MAX+1][3]; public task_server() { if(end_usun) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_server pre"); #endif for(new id=1; id<=MAX; id++) { if(!is_user_alive(id) || !is_user_connected(id)) continue; if(gTeam[id] == 1) { PokazStatusText(id, "TWOJA ILOSC SZLUGOW : [%d]", get_user_jbpack(id)); if(dane_dnia[6]) { new PlayerPos[3]; get_user_origin(id, PlayerPos); if(PlayerPos[0] == LastPosition[id][0] && PlayerPos[1] == LastPosition[id][1]) { TimeAfk[id]++; if(TimeAfk[id] == 15) { ColorChat(id, TEAM_COLOR, "^x04[PrisonBreak] ^x01Przestan Kampic!"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 5.0, (1<<14)); } else if(TimeAfk[id] == 18) { ColorChat(id, TEAM_COLOR, "^x04[PrisonBreak] ^x01Przestan Kampic!"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 10.0, (1<<14)); } else if(TimeAfk[id] >= 20) { ColorChat(id, TEAM_COLOR, "^x04[PrisonBreak] ^x01Przestan Kampic!"); ExecuteHam(Ham_TakeDamage, id, 0, 0, 20.0, (1<<14)); } } else TimeAfk[id] = 0; LastPosition[id][0] = PlayerPos[0]; LastPosition[id][1] = PlayerPos[1]; } if(czas_bronie && dane_dnia[0] == 1 && ostatni_wiezien == id && !pokaz_raz) { new iRet; usun_ustawienia_dzien(); ExecuteForward(fLastPrisonerShowWish, iRet, id); obsluga_dala = true; pokaz_raz = true; } } else if(gTeam[id] == 2) { PokazStatusText(id, "TWOJA ILOSC SZLUGOW : [%d]", get_user_jbpack(id)); if(czas_bronie && !dane_dnia[0] && ostatni_wiezien && prowadzacy == id && !pokaz_raz) { menu_display(id, ProwadzacyMenu); usun_ustawienia_dzien(); pokaz_raz = true; } } } //set_hudmessage(0, 255, 0, 0.6, 0.1, 0, 0.01, 1.0); //ShowSyncHudMsg(0, SyncHudObj2, "Dzien %i - %s", jail_day, dni_tygodnia[jail_day%7]); static szDay[256]; if(!prowadzacy && !szInfo[0]) { formatex(szDay, 90, "Dzien %i - %s^nNikt narazie nie prowadzi^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i", jail_day, dni_tygodnia[jail_day%7], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); set_hudmessage(0, 255, 0, 0.10, 0.05, 0, 0.01, 1.0); } if(prowadzacy && !szInfo[0]) { set_hudmessage(0, 255, 0, 0.10, 0.05, 0, 0.01, 1.0); formatex(szDay, 200, "Dzien %i - %s^n%s jest prowadzacym straznikiem^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i^nWiezniowie musza sie sluchac Prowadzacego!", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); } else if(szInfo[0]) { set_hudmessage(0, 255, 0, 0.10, 0.05, 0, 0.01, 1.0); formatex(szDay, 200, "Dzien %i - %s^nNie ma narazie prowadzacego^n^n^nTyp dnia: %s^nWiezniow: %i|%i", jail_day, dni_tygodnia[jail_day%7], szInfo, ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY]); } if(prowadzacy && !szInfo[0] && ostatni_wiezien) { new nick[33]; get_user_name(ostatni_wiezien, nick, 31); set_hudmessage(0, 255, 0, 0.10, 0.05, 0, 0.01, 1.0); formatex(szDay, 200, "Dzien %i - %s^n%s jest straznikiem prowadzacym^n^n^nTyp dnia: Normalny^nWiezniow: %i|%i^nZyczenie ma %s ^nWiezniowie musza sie sluchac Prowadzacego!", jail_day, dni_tygodnia[jail_day%7], nazwa_gracza[prowadzacy], ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY], nick); } else if(szInfo[0] && ostatni_wiezien) { new nick[33]; get_user_name(ostatni_wiezien, nick, 31); set_hudmessage(0, 255, 0, 0.10, 0.05, 0, 0.01, 1.0); formatex(szDay, 200, "Dzien %i - %s^nNie ma narazie prowadzacego^n^n^nTyp dnia: %s^nWiezniow: %i|%i^nZyczenie ma %s ^n", jail_day, dni_tygodnia[jail_day%7], szInfo, ilosc_graczy[ZYWI], ilosc_graczy[WSZYSCY], nick); } ShowSyncHudMsg(0, SyncHudObj3, szDay); if(szPoszukiwani[0] && !szInfoPosz[0]) { set_hudmessage(0, 255, 0, 0.01, 0.4, 0, 0.01, 1.0); ShowSyncHudMsg(0, SyncHudObj4, "Poszukiwani:%s", szPoszukiwani); } else if(szInfoPosz[0]) { set_hudmessage(0, 255, 0, 0.01, 0.25, 2, 0.1, 3.0, 0.01, 2.0); ShowSyncHudMsg(0, SyncHudObj4, szInfoPosz); } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "task_server post"); #endif } PokazStatusText(id, szText[], any:...) { new szTemp[192]; vformat(szTemp, 191, szText, 3); message_begin(MSG_ONE_UNRELIABLE, 106, {0,0,0}, id); write_byte(0); write_string(szTemp); message_end(); } usun_ustawienia_dzien() { #if defined DEBUG log_to_file("jail_api_jailbreak.log", "usun_ustawienia_dzien pre"); #endif if(mode_gracza[WALKA]) { mode_gracza[WALKA] = false; if(get_user_weapon(ostatni_wiezien) == CSW_KNIFE) { set_pev(ostatni_wiezien, pev_viewmodel2, SzModels[V_PIESCI]); set_pev(ostatni_wiezien, pev_weaponmodel2, SzModels[P_PIESCI]); } } mode_gracza[MIKRO] = true; mode_gracza[FF_TT] = false; mode_gracza[TT_GOD] = false; mode_gracza[CT_GOD] = false; mode_gracza[CT_NIE_MOZE_TT] = false; mode_gracza[TT_NIE_MOZE_CT] = false; dane_dnia[4] = 0; dane_dnia[7] = 0; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "usun_ustawienia_dzien post"); #endif } public ObslugaZyczen(id) { if(prowadzacy != id || obsluga_dala || !ostatni_wiezien || !czas_bronie) return PLUGIN_HANDLED; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ObslugaZyczen pre"); #endif menu_display(id, ProwadzacyMenu); #if defined DEBUG log_to_file("jail_api_jailbreak.log", "ObslugaZyczen post"); #endif return PLUGIN_HANDLED; } public Handel_Obsluga_Zyczen(id, menu, item) { if(prowadzacy != id || !ostatni_wiezien || !is_user_alive(id)) return; if(item == MENU_EXIT) return; #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Obsluga_Zyczen pre"); #endif switch(item) { case 0: { ColorChat(0, TEAM_COLOR, "^x04[PrisonBreak]^x01 Obsluga wiezienia pozwolila wybrac zyczenie!"); obsluga_dala = true; new iRet; ExecuteForward(fLastPrisonerShowWish, iRet, ostatni_wiezien); } case 1: { ColorChat(0, TEAM_COLOR, "^x04[PrisonBreak]^x01 Obsluga wiezienia zadecydowala ze wiezien nie ma zyczenia!"); } } #if defined DEBUG log_to_file("jail_api_jailbreak.log", "Handel_Obsluga_Zyczen post"); #endif } public ClientCommand_SelectKnife(id) { engclient_cmd(id, "weapon_knife"); } public OnAddToPlayerKnife(const item, const player) { if(pev_valid(item) && is_user_alive(player)) { message_begin(MSG_ONE, 78, .player = player);//WeaponList = 78 { write_string(cs_get_user_team(player) == CS_TEAM_T? "weapon_piesci": "weapon_palka"); // WeaponName write_byte(-1); // PrimaryAmmoID write_byte(-1); // PrimaryAmmoMaxAmount write_byte(-1); // SecondaryAmmoID write_byte(-1); // SecondaryAmmoMaxAmount write_byte(2); // SlotID (0...N) write_byte(1); // NumberInSlot (1...N) write_byte(CSW_KNIFE); // WeaponID write_byte(0); // Flags } message_end(); } } public cmdChooseTeam(id) { menu_chooseteam(id) return PLUGIN_HANDLED; } public msg_vgui_menu(msgid, dest, id) { if(get_msg_arg_int(1) != 2) return PLUGIN_CONTINUE; g_msgid[id] = msgid; menu_chooseteam(id); return PLUGIN_HANDLED; } public msg_show_menu(msgid, dest, id) { static team_select[] = "#Team_Select"; static menu_text_code[sizeof team_select]; get_msg_arg_string(4, menu_text_code, charsmax(menu_text_code)); if(!equal(menu_text_code, team_select)) return PLUGIN_CONTINUE; g_msgid[id] = msgid; menu_chooseteam(id); return PLUGIN_HANDLED; } public menu_chooseteam(id) { if(!is_user_connected(id)) return PLUGIN_HANDLED; new text[512], len; len += format(text[len], 511 - len, "^nr[y*r] yJailBreak yby rIce-Killers.eu^n"); len += format(text[len], 511 - len, "r[y*r] yVIP juz od y20 rgroszy^n"); len += format(text[len], 511 - len, "r[y*r] r1 yKlawisz na r5 yTT^n^n"); len += format(text[len], 511 - len, "rWybierz team:^n"); len += format(text[len], 511 - len, "r[1] wWiezniowie^n"); len += format(text[len], 511 - len, "r[2] wKlawisze^n^n"); len += format(text[len], 511 - len, "r[6] wWidzowie^n^n"); len += format(text[len], 511 - len, "^nr[0]. yWyjdz^n"); show_menu(id, gTeam[id]? 0x223: 0x23, text, -1, "mainmenu"); return PLUGIN_HANDLED; } public _menu_chooseteam(id, key) { switch(key) { case 0, 1, 5: GdzieDojsc(id, key+1); case 9: return; } } GdzieDojsc(id, team) { set_pdata_int(id, 125, get_pdata_int(id, 125) & ~(1<<8)); if(team == 6) { if(!is_user_alive(id)) { gTeam[id] = 0; engclient_cmd(id, "jointeam", "6"); } else client_print(id, print_center, "Nie mozesz byc obserwatorem"); return; } if(gTeam[id] == team) return; new ile_graczy[2]; for(new i=1; i<=32; i++) { if(!is_user_connected(i)) continue; switch(cs_get_user_team(i)) { case 1: ile_graczy[0]++; case 2: ile_graczy[1]++; } } if(czas_bronie && jail_day%7 && !gTeam[id] && ((team == 1 && ile_graczy[0]) || (team == 2 && ile_graczy[1]))) { ColorChat(id, GREEN, "[PrisonBreak]^x01 Mozesz dolaczyc dopiero jak sie skonczy runda!"); GdzieDojsc(id, 6); return; } new iRet; ExecuteForward(fJoinTeam, iRet, id, team, ile_graczy[0], ile_graczy[1]); switch(iRet) { case 9999: return; case 1,2: team = iRet; } if(gTeam[id] == team) return; new msg_blocke = get_msg_block(g_msgid[id]); set_msg_block(g_msgid[id], BLOCK_SET); engclient_cmd(id, "jointeam", team==2? "2": "1"); //set_msg_block(g_msgid[id], msg_blocke); //set_msg_block(g_msgid[id], BLOCK_SET); engclient_cmd(id, "joinclass", "1"); set_msg_block(g_msgid[id], msg_blocke); gTeam[id] = team; } public BlokujKomende() return PLUGIN_HANDLED; //cele menu public WczytajCele() { new szMap[32], szFile[128]; get_mapname(szMap, 31); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); if(file_exists(szFile)) { new dane_tablicy[4][32], tablica[256], txtlen; for(new i=0; i<file_size(szFile, 1); i++) { if(i > 1) break; read_file(szFile, i, tablica, 255, txtlen); parse(tablica, dane_tablicy[0], 31, dane_tablicy[1], 31, dane_tablicy[2], 31, dane_tablicy[3], 31); new Float:origin[3]; origin[0] = str_to_float(dane_tablicy[0]); origin[1] = str_to_float(dane_tablicy[1]); origin[2] = str_to_float(dane_tablicy[2]); new Float:fDistance = 9999.0, Float:fDistance2, ent; while((ent = find_ent_by_class(ent, dane_tablicy[3]))) { new Float:gOrigin[3]; get_brush_entity_origin(ent, gOrigin); fDistance2 = vector_distance(gOrigin, origin); if(fDistance2 < fDistance) { fDistance = fDistance2; g_Buttons[i] = ent; } } } } else setup_buttons(); AddMenuItem("Dodanie Cel", "jail_cele", ADMIN_RCON, PLUGIN); } public MenuUstwianiaCel(id) { if(!(get_user_flags(id) & ADMIN_RCON)) return PLUGIN_HANDLED; new menu = menu_create("Ustaw przycisk do cel:", "Handel_Cele"); menu_additem(menu, "Przycisk 1"); menu_additem(menu, "Przycisk 2 (jak sa 2 przyciski do cel)"); menu_additem(menu, "Usun Przyciski"); menu_setprop(menu, MPROP_EXITNAME, "Wyjdz"); menu_display(id, menu); return PLUGIN_HANDLED; } public Handel_Cele(id, menu, item) { if(item == MENU_EXIT) { return PLUGIN_CONTINUE; } switch(item) { case 0: ZapiszIdCel(id, 0); case 1: ZapiszIdCel(id, 1); case 2:{ if(g_Buttons[0]) { new szMap[32], szFile[128]; get_mapname(szMap, 31); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); delete_file(szFile); g_Buttons[0] = 0; client_print(id, 3, "[Cele] Usunieto przyciski"); } if(g_Buttons[1]) g_Buttons[1] = 0; } } menu_display(id, menu); return PLUGIN_CONTINUE; } ZapiszIdCel(id, linia) { new ent, body; get_user_aiming(id, ent, body); if(!pev_valid(ent)) return; g_Buttons[linia] = ent; new Float:origin[3], name[32]; get_brush_entity_origin(ent, origin); pev(ent, pev_classname, name, 31); new szMap[32], szFile[128], szTemp[128]; get_mapname(szMap, 31); formatex(szTemp, 127, "%f %f %f %s", origin[0], origin[1], origin[2], name); formatex(szFile, 127, "addons/amxmodx/data/cele/%s.ini", szMap); write_file(szFile, szTemp, linia); client_print(id, 3, "[Cele] Dodano przycisk %i", linia+1); } //cele auto public setup_buttons() { new ent[3], class[32], i, Float:origin[3]; while((i < sizeof(g_Buttons)) && (ent[0] = engfunc(EngFunc_FindEntityByString, ent[0], "classname", "info_player_deathmatch"))) { pev(ent[0], pev_origin, origin) while((ent[1] = engfunc(EngFunc_FindEntityInSphere, ent[1], origin, 300.0))) { if(!pev_valid(ent[1])) continue; pev(ent[1], pev_classname, class, 31); if(!equal(class, "func_door")) continue; pev(ent[1], pev_targetname, class, 31) ent[2] = engfunc(EngFunc_FindEntityByString, 0, "target", class); if(pev_valid(ent[2]) && (in_array(ent[2], g_Buttons, sizeof(g_Buttons)) < 0)) { g_Buttons[i++] = ent[2]; ent[1] = 0; ent[2] = 0; break; } } } } stock in_array(needle, data[], size) { for(new i = 0; i < size; i++) { if(data[i] == needle) return i; } return -1; } public OtworzCele() { for(new i=0; i<sizeof(g_Buttons); i++) { if(!pev_valid(g_Buttons[i]) || !g_Buttons[i]) continue; ExecuteHam(Ham_Use, g_Buttons[i], 0, 0, 2, 1.0); } } AddArray(id, ktore) { if(free_day[id] || user_duszek[id]) return; if(array_graczy[ktore][id]) return; ostatni_wiezien = (ilosc_graczy[ktore]? 0: id); array_graczy[ktore][id] = id; ilosc_graczy[ktore]++; } DelArray(id, ktore) { if(free_day[id] || user_duszek[id]) return; if(!array_graczy[ktore][id]) return; array_graczy[ktore][id] = 0; ilosc_graczy[ktore]--; if(jail_day%7 && ktore == ZYWI) { switch(ilosc_graczy[ktore]) { case 1:{ for(new i=1; i<=MAX; i++) { if(array_graczy[ktore][i]) { ostatni_wiezien = array_graczy[ktore][i]; break; } } } default: ostatni_wiezien = 0; } } } AddPoszukiwany(attacker) { if(contain(szPoszukiwani, nazwa_gracza[attacker]) == -1) { new szTemp[512]; formatex(szTemp, charsmax(szTemp), "^n %s%s", nazwa_gracza[attacker], szPoszukiwani); copy(szPoszukiwani, charsmax(szPoszukiwani), szTemp); set_pev(attacker, pev_body, 4); } if(task_exists(ID_DZWIEK_POSZ)) remove_task(ID_DZWIEK_POSZ); dzwiek_poszukiwany(); set_task(1.0, "dzwiek_poszukiwany", ID_DZWIEK_POSZ, .flags="a", .repeat=9); } public dzwiek_poszukiwany() client_cmd(0, "spk jb_cypis/uciekinier.wav"); DelPoszukiwany(id) { if(contain(szPoszukiwani, nazwa_gracza[id]) != -1) { new szTemp[512]; formatex(szTemp, charsmax(szTemp), "^n %s", nazwa_gracza[id]); replace_all(szPoszukiwani, charsmax(szPoszukiwani), szTemp, ""); } } stock ham_strip_weapon(id, wid) { if(!wid) return 0; new szName[24]; get_weaponname(wid, szName, 23); new ent; while((ent = engfunc(EngFunc_FindEntityByString, ent, "classname", szName)) && pev(ent, pev_owner) != id) {} if(!ent) return 0; if(get_user_weapon(id) == wid) ExecuteHam(Ham_Weapon_RetireWeapon, ent); if(ExecuteHam(Ham_RemovePlayerItem, id, ent)) { ExecuteHam(Ham_Item_Kill, ent); set_pev(id, pev_weapons, pev(id, pev_weapons) & ~(1<<wid)); } return 1; } stock Jaki_Pistolet(id) { if(!is_user_alive(id)) return 0; new weapons[32], numweapons; get_user_weapons(id, weapons, numweapons); for(new i=0; i<numweapons; i++) if((1<<weapons[i]) & 0x50FCF1A8) return weapons[i]; return 0; } new Float:fWaitButton[33]; public BlokowanieUse2(ent,
Dodanych wklejek: 4031
Powered By (Pav32) Pastebin © 2011