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 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585 3586 3587 3588 3589 3590 3591 3592 3593 3594 3595 3596 3597 3598 3599 3600 3601 3602 3603 3604 3605 3606 3607 3608 3609 3610 3611 3612 3613 3614 3615 3616 3617 3618 3619 3620 3621 3622 3623 3624 3625 3626 3627 3628 3629 3630 3631 3632 3633 3634 3635 3636 3637 3638 3639 3640 3641 3642 3643 3644 3645 3646 3647 3648 3649 3650 3651 3652 3653 3654 3655 3656 3657 3658 3659 3660 3661 3662 3663 3664 3665 3666 3667 3668 3669 3670 3671 3672 3673 3674 3675 3676 3677 3678 3679 3680 3681 3682 3683 3684 3685 3686 3687 3688 3689 3690 3691 3692 3693 3694 3695 3696 3697 3698 3699 3700 3701 3702 3703 3704 3705 3706 3707 3708 3709 3710 3711 3712 3713 3714 3715 3716 3717 3718 3719 3720 3721 3722 3723 3724 3725 3726 3727 3728 3729 3730 3731 3732 3733 3734 3735 3736 3737 3738 3739 3740 3741 3742 3743 3744 3745 3746 3747 3748 3749 3750 3751 3752 3753 3754 3755 3756 3757 3758 3759 3760 3761 3762 3763 3764 3765 3766 3767 3768 3769 3770 3771 3772
|
2003-04-24 rprix <rprix@users.sourceforge.net>
* src/init.c:
FindAllThemes() used a non-POSIX compliant GNU extension of readdir(), which
only exists for libc6 >= 2.1, but strangely also failed on my other Debian3
machine with libc6 2.2.5...
For better portability this now uses POSIX-compliant stat() and S_ISDIR()
to find all subdirs in ./graphics/.
* configure.ac: official classic-version set to 1.0.1
* map/freedroid.ruleset: adjusted alert-settings a bit
2003-04-17 rprix <rprix@users.sourceforge.net>
added the whole of Jason's Mac OSX ProjectBuilder subdirectory structure.
* src/defs.h: adjusted DATADIR fallback for MacOSX ProjectBuilder
* AUTHORS: added Jason's contribution to MacOSX port
2003-04-17 rprix <rprix@users.sourceforge.net>
* src/system.h, src/ship.c, src/menu.c, src/map.c, src/main.c, src/defs.h:
* applied Jason's MacOS X patch. Worked fine and still runs perfectly
under Linux. Of course I have no clue yet if it will work under Mac OSX
but I'll try that on SF's compile-farm, as soon as I've got access...
* src/view.c, src/ship.c, src/menu.c, src/misc.c, src/defs.h, src/init.c:
* new (mini-)feature added: partial map visibility
* restructured menus a bit: all "classic" legacy options are now in one
submenu, and there is a switch to set all otpions to "strictly classic" ;)
2003-03-27 rprix <rprix@users.sourceforge.net>
fixed bugs introduced by new TERMINATED-status for droids:
doors, LevelEmpty() and MoveEnemy() now know about it...
(hope I didn't forget anytying...)
2003-03-25 rprix <rprix@users.sourceforge.net>
* TODO: updated... not so much left now ;)
* game-config now uses human-readable variable = value format (using read_variable())
* added switchable "decal" feature, i.e. droid-ashes after explosions
* moved "blast duration" variable from config.theme into freedroid.config
* fixed bug in Area-name reading
* fixed bug of exploding enemys at game-restart
2003-03-24 rprix <rprix@users.sourceforge.net>
* src/init.c:
- removed the brain-dead freeing() of Me.TextToBeDisplayed, which
obviously leads to SegFaults...
- clean the enemy-array at new game-start, to avoid "dying droids" when
restarting....
2003-03-17 rprix <rprix@users.sourceforge.net>
* TODO: updated TODO... seems to get longer the more I do... mhh
* configure.ac:
restored to its former glory... (had only used a cut-down version for developing)
* map/freedroid.ruleset, map/Paradroid.maps:
* updated map with new ALERT_GREEN code
* added Alert-related params in freedroid.ruleset
-> current values are for debugging purposes, not really tuned yet!
* added Alert-tiles for 4 different Alert states (replacing Teleporter-tiles ;)
* tried to improve '=' character in parafont... well
* sound/Alert.wav: New file.
* sound/Alert.wav, sound/ThouArtDefeated_Sound_0.wav:
added Alert siren, shortened game-over sound somewhat
summary checkin of the weekend:
*) themes are now looked for as "graphics/*_theme/" and have to contain a
valid 'config.theme'.
*) Alert feature fully implemented, adjustable by the following parameters
in 'freedroid.ruleset':
Deathcount drain speed = 10.0
First alert threshold = 300
Alert bonus per second = 5
Deathcount is increased in a droid-kill by droidtype^2
*) fixed about a billion memory-leaks (and gaping holes...), mainly in
InitPictures() and game+mission parameter-reading...
*) lots of minor code-fiddling and cleanup
2003-03-13 rprix <rprix@users.sourceforge.net>
* LevelEditor can now correctly insert/remove waypoints+connections again,
using the slightly simplified waypoint/connection format
+ minor improvement to inserting connections: line between "point" and "mark"
(emacs slang...) is now drawn as well, which makes connection-building more
"graphic".
2003-03-12 rprix <rprix@users.sourceforge.net>
* map/Paradroid.mission:
updated version of intro + key-descriptions. Forgot to check this in earlier,
this is still far from perfect but it's a bit more up-to-date.
* map/Paradroid.maps:
(slightly) modified map-file using new format. This has actually been
saved with level-editor and seems to work ok and is "stable", i.e. load and
save produce an identical map-file again.
* use the 999.png for the end-of-game display which needs transparency
* slight improvements of map+waypoints file-format + reading/writing
--> level-editor now (again) correctly reads/writes map+waypoints+connections,
no more "-1" markers are used in waypoints/connections
2003-03-05 rprix <rprix@users.sourceforge.net>
* src/takeover.c, src/defs.h, src/global.h, src/graphics.c, src/ship.c:
activated new takeover background. Takeover game is now made _transparent_
(using alpha, don't worry Bastian ;) on this great background setting...
--> looks terrific!!
2003-03-04 rprix <rprix@users.sourceforge.net>
* src/ship.c, src/graphics.c, src/defs.h:
fiddled a bit with the droid-animations, no real changes...
Commented out the colorkey-use for .jpg animations, as it's rather useless now.
all current droid-rotations in .jpg strips (will be loaded with priority to .pngs)
* src/ship.c, src/graphics.c, src/global.h:
jpg droid-portraits are now rendered using colorkey-transparency.
This is experimental and doesn't actually work too well, so it might
be dropped again.... (is just one line to comment so...)
new show_droid_portrait() function that does dynamic unpacking of droid-portraits
an displays them animated (if available) or not. jpeg-transparency not yet implemented.
2003-03-03 rprix <rprix@users.sourceforge.net>
* graphics/Makefile.am, configure.ac:
put a Makefile.am into mouse_buttons + re-inserted it into configure.ac.
* configure.ac, graphics/Makefile.am:
quick-fix for non-existent mouse_buttons directory contents: removed from
autoconf/automake structure: seems to work now.
2003-02-28 rprix <rprix@users.sourceforge.net>
ok, here my first go at the droid-rotations. Currently all droid-pics are
still loaded at startup, which will be changed soon...
* graphics/classic_theme/bullet.png, graphics/571_rot.jpg:
two 24-frame droid rotations for testing purposes, both are actually 571 ;)
2003-02-27 rprix <rprix@users.sourceforge.net>
* secured all file-reading by implementing a 'critical' parameter in find_file():
if critical=CRITICAL then find_file will give an ERROR and Terminate() if file not found,
if critical=WARNONLY it will do just that and return NULL,
if critical=IGNORE, NULL is returned and that's it
* added a new Influ-Status: "Activate" wich is used for Konsoles and Lifts,
to activate, press 'e', 'RightShift', Middle-mouse button or joy-button 3
* removed the redundant "armament" category, which is taken care of by "gun"
* consistently switch off sound and continue game if any sound-files are not found
2003-02-24 rprix <rprix@users.sourceforge.net>
* map/freedroid.ruleset:
changed blast-radius to make blast-damage more effective (as is in Paradroid...)
* yep, lots of sox'ed or even new sounds! Hope you like them!
* src/view.c: improved "flash" effect.
* src/menu.c:
slightly cleared up LevelEditor menu-code, and made LevelEditor use the full
screen, as the Freedroid banner is really not needed here...
* src/init.c, src/influ.c, src/graphics.c:
added new InfluExplosion sound and white-noise sound.
* src/defs.h, src/sound.c:
* added new sounds for Influ-explosion, and white-noise.
* src/bullet.c: slightly improved blast-damage handling to droids
* src/input.c:
* extended joystick-code to allow joystick directions to be
soft-released as well
* fixed the funny bug in ModIsPressed() that would not show if Alt was
pressed!!
2003-02-21 rprix <rprix@users.sourceforge.net>
* map/freedroid.ruleset, map/Paradroid.mission:
adapted some parameters to move the game closer to Paradroid.
* Here's some work from yesterday's nightshift (-2am!), namely a new keyboard-code: ;)
I've taken the much more convenient and elegant DroidWorld keyboard function
KeyIsPressed(key) to replace the old One-function-per-key() handling.
This also has the practical advantage that it's now more easily possible to
'release' a key via ReleaseKey(key). Moreover, new functions KeyIsPressedR()
check a key _and_ release it!
Bottom-line of all this is: there is no more while(SomeKeyPressed()); loops in
the code to wait for a key-release, which had the annoying side-effect that
the game stopped while you've not released a key!
2003-02-18 rprix <rprix@users.sourceforge.net>
* src/misc.c, src/bullet.c:
fixed SegFault bug cause by non-initialisation of memory by malloc:
2003-02-14 rprix <rprix@users.sourceforge.net>
* src/graphics.c, src/influ.c, src/init.c, src/main.c, src/sound.c, src/takeover.c
some minor stuff:
- set sound-channels a bit lower (only 20 should be enough), +
print warning (level=0) when all channels used
- Assemble_Combat_Picture() now SDL_updates User_Rect and TxtRect separately, which
increases FPS when using the ClassicUserRect.
- add some blast sounds when influ finally explodes
2003-02-12 rprix <rprix@users.sourceforge.net>
* src/defs.h, src/influ.c, src/init.c, src/map.c, src/menu.c, src/misc.c:
* Improved GameOver behaviour + 'slow motion' explosion of the influ.
* LevelEditor: background pic is now updated for level- and color-changes.
The SaveShip() function is now _partially_ adapted to the modified
waypoint/connection handling, i.e. at least it doesn't mess up the waypoints
any more when saving. Still, adding removing waypoints needs to be adapted,
as this will currently not work properly.
2003-02-06 rprix <rprix@users.sourceforge.net>
* src/ship.c, src/menu.c, src/init.c, src/graphics.c:
console & level-editor are now "cpu-cycle friendly" as well.
* map/Paradroid.maps:
removed unneeded waypoint/connection entries, which are no longer required
in the new improved waypoint/connection handling.
Also removed "gaps" in the waypoint-list, which are no longer allowed!
-> LevelEditor still needs to be adapted to write in the same new format as well...
* src/struct.h, src/map.c, src/menu.c, src/enemy.c:
new ShuffleEnemys() function has uncovered some shortcomings of the
current waypoint/connection handling, so I've improved that a little bit.
Please test, hope everythings works fine again.
* src/highscore.c, src/menu.c, src/view.c:
"slowed down" the game menus to reduce unneccessary CPU use.
2003-02-05 rprix <rprix@users.sourceforge.net>
* map/Paradroid.maps:
- corrected a bug in waypoints of level 8: wp 11 and 12 were unconnected.
(this only showed up now that ShuffleEnemys() uses all waypoints!)
*) made ShuffleEnemys() produce really random droid distributions (on waypoints)
as the previous function tended to fill the waypoints sequentially
*) added an acoustic countdown sound to the takeover game, which should make
it easier to know how much time is left
*) hard-linked 'a,d,s,w' onto Left,Right,Up,Down, to allow Quake/HL like steering.
*) some cleanup.
* graphics/711.png: incorporated new 711 into classic branch.
2003-02-04 rprix <rprix@users.sourceforge.net>
* src/graphics.c, src/text.c:
some improvements to printf_SDL() and InitPictures(), which speeds up the
Picture-loading and theme-switching process.
(--> I noticed that 0.8.4 used to be much faster with these, dunno why,
but now we're approximately just as fast, I think)
- improved mouse-handling and mouse-cursor display throughout the game.
(hope I didnt forget anything)
Most important change: MouseLeftPressed is no longer mapped to SpacePressed,
to allow to distinguish between these two. That means, however, that we need
to test for both of these in most places...
2003-02-03 rprix <rprix@users.sourceforge.net>
* src/vars.h, src/main.c, src/ship.c, src/init.c:
removed remaining references to "ship.h"
* src/ship.h: no longer used. Goodbye.
* src/ship.c, src/proto.h:
used some more mouse-tricks in the console menu. is quite cool now, I think.
Maybe we should also have a similar mouse-interface for the Game menus?...
2003-02-02 rprix <rprix@users.sourceforge.net>
* graphics/arrow_right.png, graphics/arrow_up.png, graphics/arrow_down.png
crop'ed arrows down to minimal size, in order to allow more precise
mouse-click use.
* generalized jp's recent mouse-click-code in the Console-menu, in order to allow
for even more mouse-click support in the console menu.
Seems to work ok so far, but some minor inconsistencies in the 'user interface'
still have to be fixed.
+ some general code-cleanup here and there...
2003-01-30 rprix <rprix@users.sourceforge.net>
* src/main.c:
removed some of the debug-clutter I put in for chasing the "droid pile bug"
* src/ship.c, src/main.c, src/map.c, src/init.c, src/enemy.c:
YIPPIEE!! Seems I found the "enemy pile bug", which appeared only after
having been killed: Reason: ThouArtDefeated() didnt call
ActivateConservativeFrameComputation() ==> First step in new game had a
_huge_ Frame_Time(), which would just set droids to their next waypoints
resulting in piles....
:| this took me about 2 hours to figure out !! arghahhahhhaaaa
Good night ;)
* TODO: updated BUG list with recently fixed "hanging flash" bug.
fixed nasty bug: Flash would hurt droids on all levels!! Only IsVisible(pos) check
was done, which does not take levelnum into account... well, one bug fixed! ;)
+ some minor polishings
2003-01-24 rprix <rprix@users.sourceforge.net>
* TODO:
the mouse-glitch bug only seems to occur in my ATI 3D driver, not with
the standard one... so I think it's maybe ATI's fault, not ours...Strange
2003-01-21 rprix <rprix@users.sourceforge.net>
* map/Paradroid.mission: removed some unused option lines.
* graphics/banner.png, graphics/console_fg.png:
better cutting of picture borders.
In an effort to make the code more stable:
* rewritten the whole InitPicture() function based on the more modern and
unified DroidWorld code: All blocks are loaded via LoadBlock()
* general code cleanup: cut out so much dead code that I got rid of 3 files!!
2003-01-20 rprix <rprix@users.sourceforge.net>
* src/input.c:
made mouse-wheel to work also for SDL-versions prior to 1.2.5
* src/graphics.c, src/influ.c, src/init.c, src/input.c, src/ship.c, src/struct.h:
* removed possiblity to shortcut the EndTitle & white_noise sequence
* joy-button 1= fire, joy-button > 1 = takeover (mapped onto right mouse button)
* minor cleanup and improvements in console.
2003-01-19 rprix <rprix@users.sourceforge.net>
* improved line-break handling in DisplayText()
* added "navigation arrows" to DroidShow(), to make it more intuitive..
2003-01-15 rprix <rprix@users.sourceforge.net>
* src/sound.c:
More flexible error-treatment in sound: in case of any error, we just print
a warning and deactivate sound instead of Terminating...
* src/misc.c:
fixed bug in Terminate(): only save config and highscores if ExitCode==OK!
to avoid messing up these files when things went wrong...
* More continuous music-playing (i.e. don't start again each time you step into a lift):
SwitchBackgroundMusic (NULL) now _pauses_ music, and resumes it the next time if
you switch to the same one.
So: if stepping into a lift and stepping back out again, music is _resumed_
or: if going from one gray level to another one, music plays on where it stopped.
* fixed bug: command-line options have the highest priority, overriding defaults and config-file
2003-01-13 rprix <rprix@users.sourceforge.net>
* fullscreen now in GameConfig.UseFullscreen (gets saved). Default=off.
* when Mission accomplished, Game starts again, but Score is not reset to 0!
(allows you to continue with score until killed)
* some improvements in menu-display
2003-01-01 rprix <rprix@users.sourceforge.net>
*) 'd'-key deactivated, QuitGame now asks for confirmation
*) Removed experimental mission from Menu
*) When mission accomplished, game should start again with score not reset
2002-12-30 rprix <rprix@users.sourceforge.net>
fixed some finer points found in jp's test-playing:
*) higher scroll-speed and MouseWheel in ScrollText()
*) energy-increase in collisions now impossible
*) Frame-rate was not respected in Pause-mode
*) 'reject' explosion now does not harm the 001, to avoid destroying it
* sound/Fire_Bullet_Laser_Rifle_Sound_0.wav, sound/phaser.wav:
replaced the ridiculous Laser_Rifle sound of the 614 with sth better...
2002-12-28 rprix <rprix@users.sourceforge.net>
* map/Paradroid.mission:
EndTitle music now android-commando. Re-written 'debriefing' text: no further
mission is announced, but our further games: RPG + DroidWorld.
Game restarts when mission is completed.
* src/init.c, src/menu.c:
EndTitle() scrolling corrected. Added Credits for android-commando mod used in EndTitle.
* sound/android-commando_hiscore.mod:
added Commando-highscore mod as "victory music".
mass commit: main changes are: new function ApplyFilter() allows coloring
influence-device for takeover-mode and low-energy fading.
Started cleanup of unused "extensions" to freedroid, which are no longer
supported and/or live on in RPGFreedroid.
2002-12-25 rprix <rprix@users.sourceforge.net>
level background music now consists of 'C64 legacy mods'.
(still have to credit the authors...)
2002-12-22 rprix <rprix@users.sourceforge.net>
* configure.ac:
adapted message when failing SDL_Mixer check correspondingly.
* configure.ac:
now we check for Mix_ChannelFinished, which exists only since SDL_Mixer 1.2.1
2002-12-19 rprix <rprix@users.sourceforge.net>
* changed droid inertia and friction to more resemble paradroid
2002-12-15 rprix <rprix@users.sourceforge.net>
* sound/Paradroid.ogg:
here is the paradroid.ogg sound-file I've mentioned earlier.
changed title-music entry to use the .ogg paradroid 'FeepBeep' sounds.
removed that low-quality wav, which is now provided as a high-quality .ogg!
* src/sound.c, src/graphics.c, src/defs.h:
fixed bug in white_noise() that would screw up User_Rect when using
'Classic' (i.e. small) Combat window. (dunno why that hasn't shown up before)
2002-12-02 rprix <rprix@users.sourceforge.net>
* improved info-line display when Classic_User_Rect is used
* default User_Rect is now Classic_ ... hehe, this is the classic version
Sound-modifs:
* title-music is original "Feep-Beep" now ;)
* level background-music is "color coded": i.e. one background-song/color
(see beginning of color.c)
* graphics/571.png, graphics/614.png, graphics/742.png, graphics/751.png, graphics/834.png:
backported Bastian's latests creatures ;)
2002-11-21 rprix <rprix@users.sourceforge.net>
* graphics/classic_theme/digits.png, src/graphics.c:
ok, forgot about the digits in lanzz's theme for a moment, now both work ok.
2002-11-20 rprix <rprix@users.sourceforge.net>
* src/init.c, src/graphics.c, graphics/classic_theme/digits.png:
changed classic digits back to non anti-aliased, looks better on the droids.
Ok, couple of (minor) changes and things to make the "Classic" branch
more (or fully) compatible with RPGFreeDroid and DroidWorld:
*) all colors of map-blocks are now in map_blocks.png
*) removed "ne_" prefixes in graphics-filenames
*) moved "default_theme" to "classic_theme"
*) made colors in 'classic theme' less bright and over-saturated
(looks better, I hope)
*) adapted automake/autoconf structure correspondingly.
2002-11-13 rprix <rprix@users.sourceforge.net>
* src/main.c, src/bullet.c:
"back to the roots": bullets no longer 'explode' on droids, only on walls.
The logic being that the energy gets absorbed by droids.. of course there
should be a nice "absorb" sound accomanying this, but I still don't have
any sound... :(
* src/bullet.c:
fixed small bug in DeleteBullet() that would cause a blast in (0,0)
when changing levels.
2002-11-10 rprix <rprix@users.sourceforge.net>
* src/bullet.c, src/init.c, src/misc.c:
improved bullet collision now also for influ, enemys and bullet-bullet.
Collision is checked forwards in steps of 0.1*blocksize, this way
even with 10 FPS its awsomely precise and well playable!!
* improved Bullet-Wall collision check: no more shooting through walls
on my 15FPS machine!!
* fixed bug that EndTitle was not properly displayed when fire was pressed
* added MISSION_COMPLETE_BONUS of 1000, + highscore entry when finished
2002-11-09 rprix <rprix@users.sourceforge.net>
* src/graphics.c, src/init.c, src/main.c, src/ship.c, src/takeover.c, src/view.c:
improvements to takeover and lift plus other minor stuff
various optimizations to make the Menu and Console-menu more responsive
on my antique 120MHz 32MB at home.
(... not even thinking of trying to start RPGFreedroid here.. ;-)
2002-11-08 rprix <rprix@users.sourceforge.net>
* src/ship.c, src/menu.c, src/defs.h:
mouse wheel support now also in lifts and console.
Some small inconsistencies remain.
* src/input.c:
middle mouse-button mapped to Escape ... hardcoded, but kinda usefull
Mouse button+wheel support in menus now... + cycling in menu.
(arghhh... this menu code should really not exist, but I don't care now,
Classic Freedroid just has to work, so I close my eyes...;)
* src/input.c, src/proto.h, src/takeover.c:
added Mouse Wheel support. Only used in takeover so far.
2002-11-07 rprix <rprix@users.sourceforge.net>
* src/init.c, src/menu.c, src/view.c, src/graphics.c:
FPS/Energy/GPS display always on bottom of Window now, not of User_Rect.
* src/vars.h, src/menu.c, src/ship.c, src/struct.h, src/defs.h, src/global.h, src/init.c:
More transparent User_Rect handling: switching between "classic" and "full"
User_Rect now better. ShowDeckMap() always uses "Full" User_Rect to avoid
clipping of deck-view.
* src/ship.c, src/global.h, src/graphics.c:
fixed SetCombatScale() function such that no reloading of map-blocks
from disk is needed (which is very slow).
This is done by always keeping a copy of the unzoomed map-blocks in mem.
* src/takeover.c, src/view.c, src/init.c:
deactivated "Resistance factor" extension.
Will not be part of "Classic release".
* graphics/lanzz_theme/asteroid_off.png, graphics/lanzz_theme/asteroid_on.png:
adapted "asteroid" lift-pics to standard size, such that they would be
correctly displayed also in "classic" User_Rect.
* src/graphics.c:
fixed bug in MakeGridOnScreen(): would not fill whole of given Rect.
* src/ship.c, src/init.c, src/highscore.c, src/defs.h:
fixed bugs in ShowLift() such that lift-display works correctly
also when User_Rect is rescaled, eg. for the "classic" small Rect.
*
several hacks (some a bit quick-and-dirty, but robust I think)
to make the whole thing look&behave more like the original.
This is aimed towards a final "Classic" release of Freedroid,
which is not too far away I think.
2002-11-06 rprix <rprix@users.sourceforge.net>
* incorporated the new "GreatDruidShow()" from the main CVS tree
* slightly improved + speed up Title scrolling
2002-11-05 rprix <rprix@users.sourceforge.net>
* src/graphics.c:
fixed bug in noise-function. Now it really looks random.
2002-11-01 rprix <rprix@users.sourceforge.net>
adapted configure system to new subdirectory structure.
Tested 'make dist', which produced an ok dist (couldnt check sound though).
2002-10-30 rprix <rprix@users.sourceforge.net>
* src/graphics.c, src/proto.h:
got a nice white-noise "static" effect now, basically ripped off the idea
from Greg Knauss's "xteevee" hack in xscreensavers.
Only problem now is the time it needs to prepare the noise-tiles.
Maybe one could do that in InitFreedroid() or so, than the user doesnt
have when we want to put the noise-effect.
2002-10-28 rprix <rprix@users.sourceforge.net>
* graphics/516.png, graphics/598.png, graphics/821.png, graphics/999.png
updated Droid-pics with Bastian's great Creatures
2002-10-27 rprix <rprix@users.sourceforge.net>
* added some loading-progess display in picture loading
* first try on "white noise" effect. Too slow for my 120MHz machine..
* changed defaults: Menu-font = Parafont, Robot-speed = off.
2002-10-25 rprix <rprix@users.sourceforge.net>
* NEWS: first checking on new branch: rel-0-8-4-patches
2002-10-24 rprix <rprix@users.sourceforge.net>
* src/takeover.c, src/takeover.h:
Fixed broken Takeover-counter. Not very stylish, but works/looks ok I think.
Yeah, my first FD contribution for months!! :)
2002-07-29 rprix <rprix@users.sourceforge.net>
* src/blocks.c: new map-block reading from map_blocks.png.
* graphics/lanzz_theme/map_blocks.png:
proposed new map-block file: contains all colors, one per line.
2002-07-17 rprix <rprix@users.sourceforge.net>
* src/ship.c:
fixed bug in GreatDroidShow() that would make it crash when droid had
weapon_item.type = -1.
2002-07-13 rprix <rprix@users.sourceforge.net>
* src/proto.h, src/ship.c, src/takeover.c, src/main.c:
rudimentary "takeover announcement" implemented.
* src/proto.h, src/ship.c: Rewritten GreatDroidShow().
2002-07-12 rprix <rprix@users.sourceforge.net>
* src/ship.c, src/vars.h, graphics/console_fg.png, src/defs.h, src/global.h
console is beginning to take shape again... but not finished yet.
* src/view.c:
haha, ShowRobotPicture() didn't give a damn about its coordinate argument !!
(changed that ;)
* src/text.c:
improved the ImprovedCheckUmbruch() function: takes into account \n as
word-ending now.
2002-07-11 rprix <rprix@users.sourceforge.net>
completely removed all USERFENSTER** defines.. ouff, that was tough...
Now the console is messed up a bit, sorry, I'll fix that later... ;)
* src/view.c, src/init.c, src/menu.c, src/ship.c:
replaced some USERFENSTERPOSX/Y by User_Rect.x/y
2002-07-11 rprix <rprix@users.sourceforge.net>
renamed/removed all old "ne_*" variables.
(new engine isn't that new any more ;)
2002-07-11 rprix <rprix@users.sourceforge.net>
* src/blocks.c, src/graphics.c, src/proto.h:
* removed obsolete ne_get_*_block() functions,
* moved new Load_*_Surfaces() into blocks.c
* src/view.c, src/colodefs.h, src/proto.h, src/ship.c, src/takeover.c:
* FlashWindow() now uses Fill_Rect() instead of obsolete SetUserfenster()
* SetUserfenster() dumped from code.
* src/takeover.c:
if Takeover background pic is not found, only a level0 warning is printed
to stdout and a default background color is used instead.
Themes can now contain a background image "to_background.jpg" for the
Takeover game.
renamed the whole "default-theme" into "classic_theme", which makes more
sense I think. (sorry to the modem users ;)
2002-07-11 rprix <rprix@users.sourceforge.net>
*) changed theme-independent filenames "ne_*" into more canonical ones
*) started coding of more flexible takeover background 'picture'
2002-07-02 rprix <rprix@users.sourceforge.net>
* INSTALL: updated installation instructions.
* src/ship.c:
improved display of lifts with flexible User-rect. Background now black.
2002-06-27 jprix <johannesprix@users.sourceforge.net>
* map/Paradroid.mission, map/The_Outbreak.mission, src/init.c
Debriefing song can now be conveniently specified from each mission file.
Added song entries for each mission files as well of course.
2002-06-26 rprix <rprix@users.sourceforge.net>
* GetTakeoverGraphics() is now called from Init_Pictures(), which allows
theme-switching to take effect for takeover too
* Adapted takeover to the now apparently more flexible User_Rect.
placement is still rather poor now, but at least it's consistent again.
2002-06-26 jprix <johannesprix@users.sourceforge.net>
* sound/ARDA.MOD, sound/Intro-Music.mod, src/defs.h, src/sound.c:
Paid a bit more attention to the selection of mod files and rearranged
a better structured reference to the file names, though not yet via
reading them from external files. But thats to come, tomorrow.
* src/defs.h, src/proto.h, src/sound.c, src/takeover.c:
Preparatory work: Now the loading is done at request for the background
music specified only at the time of request. This will soon enable us
to specify background music to be played dynamically in the mission and
map files. That will be cool.
* src/global.h, src/sound.c:
Eliminated some warnings and inconsistencys.
* src/init.c, src/sound.c:
Sound and Music volume now configurable via the options menu again.
Control is now even better than before.
* src/input.c, src/menu.c, src/text.c:
Added options to change the width and the height of the combat window in
the options menu instead of via keys.
Added some extra speech options for the influencer.
* src/init.c:
Full size combat window now enabled by default. I hope your machine is
fast or at least of 'normal' speed.
* src/input.c, src/vars.h:
Added switch (H-Key and W-Key) to turn on/off full screen for combat window.
* src/takeover.c, configure.ac:
Corrected the bug, that health would rise indefinately after rapid succession
of successful takeover attempts.
* src/sound.c:
Background music is now MOD file based, i.e. the code now uses the SDL
mixers music functions. This means you can use ogg or mp3 or it or xm
files as well without changing anything in the code but the music file
name. Seems to work quite well, though a little bit more care has to
be taken in which music file to play when. I've just filled in the
music files as I found them.
Added some mod files, mainly for testing purposes, but they could also be
used in game as well, if we assume that we have the right to do that.
2002-06-25 rprix <rprix@users.sourceforge.net>
* graphics/parafont.png: lanzz' new version of parafont.
2002-06-25 jprix <johannesprix@users.sourceforge.net>
Removed old gif variants of the tileset images from both themes.
* src/map.c:
Included png versions of the old themes block files as well, since the
block reading function only looks for png now. Speeded up the
teleporter animation. Speed should be placed under control of the themes
config files.
Added Lanzz's fantastic new tilesets with the teleporters.
Changes block-reading function to take pngs instead of gifs.
2002-06-24 rprix <rprix@users.sourceforge.net>
* src/defs.h, src/ship.c:
use of two different console backgrounds with/without window ... looks better.
* graphics/console_bg.jpg, graphics/console_bg1.jpg, graphics/console_bg2.jpg:
added console backgrounds with and without the "window"
* graphics/parafont.png: lanzz' "outline" parafont, better readable.
2002-06-24 jprix <johannesprix@users.sourceforge.net>
* map/freedroid.ruleset, src/menu.c:
Door opening/closing speed now 0.05 (half of value before).
Removed the blank line in the options menu.
Ok, I'll make an archive and sent it to the university from where
I can conveniently do the final upload.
2002-06-23 rprix <rprix@users.sourceforge.net>
* graphics/lanzz_theme/ship_off.png:
stretched background further down, in order to fill User-Rect in ShowLift()
* src/menu.c, src/ship.c, src/ship.h:
- improved placement of console-menu bar
- moved theme-switch to main-menu
* src/view.c:
fixed bug: droids would still try to babble in takeover game..
* TODO, src/global.h, src/influ.c, src/input.c:
improved mouse-control: allow continuous shooting to follow mouse-point.
2002-06-23 jprix <johannesprix@users.sourceforge.net>
* src/ship.c, src/text.c:
Fixed that the black border is restored after the console menu.
Fixed the Briefing and Debriefing texts not displaying anything.
* Releasetext, TODO:
Updated the releasetext and the TODO files to reflect current status.
* src/ship.c:
Fixed the bug, that the map would still be shrunk after having visited the
map of the current deck at the console.
* graphics/console_bg.jpg, src/defs.h, src/init.c, src/ship.c:
Added structures for the new background for the console picture.
Used file console_bg_2.jpg supplied by Bastian for the first console_bg.jpg.
That's quite a difference to before, especially with the droids without
their white ugly boxes surrounding them. Thanks a lot!!!
More modifications and updates to the levels and the elevators connecting
them all in the new maps.
Enlarged a few constants in the code to allow for the new levels needs.
2002-06-23 basse <bastiansalmela@users.sourceforge.net>
transparent versions of droid png's
2002-06-23 jprix <johannesprix@users.sourceforge.net>
* map/Asteroid.maps, map/The_Outbreak.elevators, map/The_Outbreak.mission
Elevator connections, rectangles and maps further refined for new missions.
Removed the old jpg variants of the droid portraits. Changed code to
reflect the new file format and that seems to work as well as before.
Added png variants of the former jpg droid portraits.
* map/Asteroid.maps, map/Invading_Asteroid_Command_Central.elevators
Added a new level to the new maps and corrected part of the elevator
connections and rectangle specifications.
Replaced the old bmp asteroid picture files with png files, that are only
as big as 1% of the size of the Windows bmp formated images of the same
content. Added new decks to these maps as well, though they cannot be
reached via elevators yet...
* map/Asteroid.maps, map/Invading_Asteroid_Command_Central.mission:
Starting point for the second new mission fixed. Map changes.
* map/Asteroid.maps, map/The_Outbreak.droids, src/defs.h:
More changes to the new missions map files (though only in the part that is
not accessible to the player yet): added Main Reactor Deck, added Scientists
quarters deck.
* Releasetext:
Added a file that contains the text specified in the summary of changes
and announcements of new releases on public news pages on the web, i.e.
containing the 'new features' not as detailes as in the Changelog of
course but as we paste it to the release news.
* map/freedroid.ruleset, src/influ.c:
Added even more security against jumps through walls after collisions with
enemys.
Adapted some small constants in the ruleset file.
2002-06-23 basse <bastiansalmela@users.sourceforge.net>
* graphics/ne_credits.jpg:
well I saw you guys used this picture as credit background..
so here's a new version for you, without stupid (C) text in the bottom,
and rendered to correct size..
2002-06-22 basse <bastiansalmela@users.sourceforge.net>
* graphics/476.jpg:
portrait of 476
* graphics/420.jpg:
portrait of 420
* graphics/329.jpg:
portrait of droid 329
2002-06-22 jprix <johannesprix@users.sourceforge.net>
* TODO, graphics/lanzz_theme/config.theme, map/freedroid.ruleset, src/influ.c
Made acceleration now (almost) framerate independent. Adapted acceleration
calibration values accordingly. Removed extra behaviour of 302 type.
Set phases of standard influ shot back to 1 in lanzz_theme.
Removed the bug, that Freedroid would segfault when changing lever while
some bullets were still flying around.
* TODO, graphics/001.jpg, src/view.c:
Corrected the bug, that the droid image loading in the console menu would
cause a crash: reason: local string constant was used uninitialized.
* graphics/lanzz_theme/ne_bullet.png: Cut out a few black pixels.
* src/menu.c:
Fixed the bug that the game would segfault when changing theme while a
bullet is still flying around, which has different number of phases in
one theme than in the other.
* graphics/parafont.png: Added the new parafont.png. Thanks Lanzz!
* graphics/ne_cons.gif, graphics/ne_cons.png, src/defs.h, src/init.c, src/misc.c:
Replaced the old ne_cons.gif with lanzzs fantastic ne_cons.png and adaped
the code accordingly too of course. Wow! That's quite a difference!!!
* TASK_CHART, TODO, src/graphics.c, src/input.c:
Added crosshair mouse cursor to the game. Looks better than expected.
Adapted input function to reflect the new changed location of the actual
spot the mouse cursor is pointing to.
* src/input.c: getchar_raw is now case sensitive.
* map/freedroid.ruleset, src/influ.c, src/proto.h:
Added an extra sanitiy check, that really should prevent the influencer
from ever stepping through walls and even outside the ship (without the
help of the level editor ;), but that will alter game behaviour on machines
with framerates of less than 20 fps.
2002-06-21 jprix <johannesprix@users.sourceforge.net>
* src/influ.c, src/init.c, src/main.c, src/misc.c, src/proto.h, src/view.c:
Removed lots of obsolete function prototypes and some obsolete functions too.
There are surely still a lot of them in the code!
* TODO, src/view.c:
Fixed the bug that the bullets would not appear where they really are, but
with a slight shift. Taking a look at the rotozoom code revealed the reason
and it's not a bug in the rotozoom but their justified refusal to crop the image.
* src/bullet.c, src/influ.c, src/view.c:
Removed warnings and debug messages.
* src/bullet.c:
Fixed the bug, that wrong bullet types occured after bullet-bullet or
bullet-blast collisions.
* src/view.c, src/enemy.c, src/global.h, src/map.c:
Reactivated the fading effect for low energy. Activated the same effect
for friendly droids too, which came along easily.
* src/graphics.c, src/init.c, src/main.c, src/text.c:
Changed the defaults to full-screen mode and lanzz-theme.
Corrected second new mission files, so that the mission would at least load
successfully, though the maps and action are only drafted.
* src/graphics.c:
SetCombatScale is now working again and apart of that much faster than it
was before. Also swtiching tilesets hardly takes any time any more, since
it only means taking a different pointer for blitting map tiles.
* src/bullet.c, src/view.c:
Removed the stupid bug, that occured with the computation saving bullet
rotation method yesterday. Now it works ok and stays enabled.
2002-06-20 jprix <johannesprix@users.sourceforge.net>
* src/influ.c, src/struct.h, src/view.c:
Deactivated one-rotation-routine due to bugs I don't completely understand.
* src/blocks.c, src/global.h, src/graphics.c, src/init.c, src/misc.c, src/ship.c
ne_blocks now completely thrown out as well as 'SetLevelColor', 'UnfadeLevel'
and ne_droids, ne_influ and some others.
* src/defs.h, src/global.h, src/graphics.c, src/view.c:
Reorganized the map_blocks: All tilesets are now kept in memory at the
same time: No need to load tilesets again when changing to a different
level or turning off the light.
Also different organisation of the map tiles in many small surfaces.
So, we are a bit faster again now.
Rescaling must be completely rewritten I fear, but 'SetLevelColor(..)'
will drop out completely.
* src/graphics.c: Deactivated rescaling for now to avoid SegFault.
* src/graphics.c:
The robot digits are now without background again. Much more work is still
ahead.
* src/global.h, src/graphics.c, src/view.c:
More work on the reshaping of the InitPictures and its consequences.
Currently the numbers have a red background. Please ignore.
* src/bullet.c, src/graphics.c:
Halfway through with restructuring InitPictures. All still running.
* src/bullet.c, src/init.c, src/struct.h, src/view.c:
Added extra security against segfaults with the new bullet routine, though
that has never happend on my machine. Game instructions now also speak of the
mouse control.
* src/bullet.c, src/main.c, src/struct.h, src/view.c:
Changed the code, so that the bullet rotation is now done only once for
every bullet (and every phases then of course). I think this saves a
lot of redundant computation if not time.
* src/influ.c, src/text.c:
Fixed the bug, that the influencer would not respond to switches in GameConfig
concerning 'speech' text messages.
* src/menu.c, src/view.c:
Droid talk of the influencer is now correctly arranged to always fit into
the combat window.
The speed with which bullet phases are rotated can now be conveniently
specified in each themes configuration file.
Set the animation of classic standardbullet to 100 phases per second.
* map/The_Outbreak.elevators, src/map.c:
More code cleanup in the droid crew specification reading function.
Corrected the rectangle specification for the asteroid areas lift.
2002-06-20 rprix <rprix@users.sourceforge.net>
globally replaced SCREENHOEHE -> SCREENHEIGHT, SCREENBREITE-> SCREENLEN
* src/menu.c:
* fixed bug in MissionSelectMenu(): Esc would try to return to nowhere
(+ uses getchar_raw() now, which is simpler)
* slightly polished Credits-display
* src/struct.h:
changed highscore-list from a "list" to an array (easier, more stable..)
* src/takeover.c:
increased wait-before-keyboard-repeat, and accelerated end of
takeover-game (after timeout), but seems a bit too fast now...
* src/input.c: tried to make getchar_raw() more responsive
* src/text.c:
revised and improved the GetString() function (used for highscore entries)
* src/Makefile.am, src/highscore.c:
new file for highscore management (didn't fit anywhere else...)
2002-06-19 jprix <johannesprix@users.sourceforge.net>
* map/Paradroid.elevators, map/The_Outbreak.elevators, src/map.c:
More code cleanup and security in the elevator reading function.
Moved rectangle specification for highlighting decks and elevators into
the existing elevators file and this file is now properly read in.
Added missing asteroid research facility pictures to both themes.
* IDEAS: Added some ideas for possible extensions to the IDEAS file.
* map/freedroid.ruleset, src/init.c:
Put the flag, that you cannot fire until your previous shot has expired under
control of the freedroid.ruleset and set it to 0 there for all bullet types.
* graphics/lanzz_theme/config.theme, src/graphics.c:
More code cleanup and security for the theme files.
Continued code cleanup.
Corrected digit position in classic theme.
Number of each bullets phases now specified in config.theme instead of freedroid.ruleset.
* map/game.dat:
Forgot to remove game.dat yesterday. The name is now freedroid.ruleset.
2002-06-18 rprix <rprix@users.sourceforge.net>
* TODO:
added bug: diagonal up/right and down/left bullets are badly positioned
* map/game.dat:
changed all bullet phases to 4 ... doesn't seem to be taken into account
by the game though... :(
removed theme-independent ship/lift pics, there is now a ship/lift
pic per theme. (+removed some more old pics...)
* src/ship.c: ship/lift picture is now theme-dependent.
2002-06-18 basse <bastiansalmela@users.sourceforge.net>
* graphics/transfer.jpg:
first version (not ready yet don't worry) of entity-transfering picture..
to be used.. hmm.. after successful match?
what do you think?
.b
2002-06-18 jprix <johannesprix@users.sourceforge.net>
* map/The_Outbreak.mission: And another thing I had forgotten. Sorry.
* map/Paradroid.mission, src/init.c, src/misc.c:
More code cleanup with the file reading.
* map/Makefile.am, map/Paradroid.mission, map/The_Outbreak.mission, src/init.c:
renamed game.dat to freedroid.ruleset.
* map/game.dat, src/init.c: More code cleanup.
Added flag for going to request reinforcements for all droids in game.dat
and the nescessary reading in the code. Currently, only 302 units will go
to request reinforcments (thereby possibly passing THROUGH walls).
* map/game.dat, src/init.c:
Move code cleanup and game.dat file augmented for additional security.
* src/map.c, map/Asteroid.maps:
Corrected the bug in SaveLevel routine, that teleports were not properly stored.
Corrected the way the one teleporter in the new map is stored. Animation therefore
now is well working again, though not very beautiful.
* graphics/lanzz_theme/ne_bullet.png:
Checked in Lanzz's latest graphics with the alpha-channeled bullets.
* graphics/parafont.png, graphics/ship_off.png, graphics/ship_on.png:
Added Lanzz's latest graphics, the ship pictures and the parafont.
2002-06-18 rprix <rprix@users.sourceforge.net>
* TODO: *** empty log message ***
* TODO: some updates.
2002-06-18 jprix <johannesprix@users.sourceforge.net>
* src/proto.h, map/The_Outbreak.mission, src/init.c, src/misc.c:
Almost halfway through with the code cleanup. There is still *a lot* to
be done though. New functions look cool nevertheless.
2002-06-17 rprix <rprix@users.sourceforge.net>
* map/Paradroid.mission: changed name of ship-on/off pics to .png
* graphics/para_font_for_BFont_01.png, graphics/ship_off.png, graphics/ship_on.png:
lift-pics now png + alpha channel.
* ChangeLog: log-mailing is now directed to sourceforge mailing list!!
* ChangeLog:
finally found a way of adding user-info to cvs-log mailing. yippih!!
This is just a test!
2002-06-17 jprix <johannesprix@users.sourceforge.net>
First part of code cleanup done: File reading, memory allocation, finding
the end, putting a termination 0 character and closing again now in one line.
* src/global.h, src/graphics.c, src/view.c:
Influencer and friendly enemys are now also properly displayed with the alpha channel.
Hat and shoes of the influencer are not touched by the 'blinking' effect any more, but
the number in the middle is, and that is also a quite acceptable solution I think.
* src/enemy.c, src/global.h, src/graphics.c, src/view.c:
Enemys are now displayed properly again with the alpha channel.
* src/struct.h, src/view.c, src/graphics.c:
The blast png alpha channel is now properly handled! Looks real cool this way!
Added Lanzz's latest blast and droids png files.
Removed the old gifs accordingly.
Acicated the new file names in defs.h.
The code does not properly react to this yet.
2002-06-16 jprix <johannesprix@users.sourceforge.net>
* src/defs.h, src/global.h, src/graphics.c, src/init.c:
Corrected the bug with the too short constant. Now there is no more
constant ALLBULLETTYPES at all in the code. All dynamically. Thats fine,
cause the number of bullettypes is unpredictably set in game.dat.
* src/defs.h, src/enemy.c, src/struct.h:
Added new robot behaviour, that they go and report at a console after they
have been shot for the first time.
2002-06-16 rprix <rprix@users.sourceforge.net>
* graphics/lanzz_theme/ne_to_elem.bmp, graphics/lanzz_theme/ne_to_elem.png:
changed takover block-file to .png, and added (alpha) transparency.
* summary checkin: ALL FILE-READING now uses find_file () !!!!!
Note its usage when adding new file-reading!!
# ... this was _a lot_ of modifications, please test!
* New feature: find_file() will first look in "../" before "DATADIR",
making it playable without always needing "make install" when
pics are modfied. Finally! ;)
Theme fallback is not yet implemented.
* rudimentary Highscore list. Carful, this is still buggy and might
probably cause SegFaults at the moment. Sorry for that, will be
fixed hopefully soon.
2002-06-16 jprix <johannesprix@users.sourceforge.net>
* src/struct.h, TASK_CHART, src/bullet.c, src/enemy.c, src/init.c, src/proto.h:
Improved the robot behaviour, especially 302 report behaviour (halfway).
Added our mailing list address to the homepage source.
Added more flags and state-switches to the droid-structures.
Added new weapon type 'laser rifle' that is also nominally present in the
original game. New bullet image copied from some screenshot of some other game.
Added new and deadly weapon exterminator.
Added 'graphics' tiles for the Teleporter in one tileset in lanzz_theme
Added animation and structures for teleporters. Works well.
* map/Asteroid.maps, map/Invading_Asteroid_Command_Central.elevators
Improved the elevators and new map file a bit.
I've completely reworked the elevators file.
Now it's better readable, has a preamble and documentation and works again.
Added a few test-images to one of the tilesets in lanzz_theme.
No real use yet.
* src/bullet.c:
Corrected the stupid mistake, that distance to blast center was rounded to
whole ints before comparison, doing blast damage far to often and in a
crude 0.5 radius.
* src/graphics.c, src/influ.c, src/init.c, src/menu.c, src/ship.c:
Corrected the clipped mission selection menus to non-clipped.
Changed the default values for which texts are enabled from the beginning.
* map/The_Outbreak.droids:
Improved the difficulty of 'The Outbreak' mission.
* map/Paradroid.mission:
Corrected the wrong pointer in Paradroid.mission.
Restructured and renamed our mission/maps/droids/elevators files.
Made ne_bullet into an element of Bulletspec.
Reactivated the concept of bullet phases, but not in the old sense of
giving the raw direction of the shot but in an alteration of pictures
to be used. Fully functional, but nothing much in the png yet.
2002-06-15 rprix <rprix@users.sourceforge.net>
* src/blocks.c: removed obsolete function IsolateBlock()
* src/takeover.c: use find_file() now for reading takeover-blocks.
* src/graphics.c:
replaced 'by hand' construction of filename by calls to find_file()
* src/misc.c, src/proto.h: new function:
char * find_file (char *fname, char *datadir, int use_theme)
you give the filename, the data-directory and a switch if the current
theme should be used. Returns pointer to (global) string array
containing the full path-name of the file. (Dont' ever free this!!)
In the future, this function could incorporate the "theme fallback"
behaviour, if we want to.
* configure.ac, graphics/Makefile.am, graphics/lanzz_theme/Makefile.am:
adapted build structure to incorporate new theme subdirs.
#make install, make dist seem to work ok, please test!
#! remember to re-run automake,autoconf and configure !
2002-06-15 jprix <johannesprix@users.sourceforge.net>
* map/new_ship_1.maps, map/ship_1.maps, src/global.h, src/map.c, src/menu.c:
Added display and changing option for the deck names to the level editor.
Improved the readability of the maps files a bit.
* map/new_ship_1.maps, map/ship_1.maps, src/map.c, src/ship.c, src/vars.h:
Level names are now integrated into the maps files.
The decknames definition in vars.h was removed.
* map/new_ship_1.maps, map/ship_1.maps, src/defs.h, src/map.c, src/struct.h:
Modified the level editor to put the standard GNU GPL preambe in front of
every saved level. This doesn't hurt or modify the loading process in any
way.
* TASK_CHART, src/defs.h, src/map.c, src/menu.c:
Added a feature to enter new map tiles into the level editor via just their
numbers, so we can enter map tiles, that don't have a key assigned yet.
* map/game.dat, src/defs.h, src/global.h, src/init.c, src/map.c, src/vars.h:
Movement speed for the doors now under control of the game.dat file.
* TASK_CHART, map/game.dat, src/bullet.c, src/defs.h, src/global.h, src/init.c:
Blast damage is now under control of the game.dat file.
Put droidradius and blast radius under control of game.dat.
Old constants were removed accordingly.
Bullet specifications now completely under the control of the game.dat file.
Removed some old structure elements.
* graphics/lanzz_theme/config.theme, src/blocks.c, src/global.h, src/graphics.c
The position of digits is now put under the control of the theme config
files as well. Pleae substitute something more apropriate for the values
I filled in (rather mindlessly) as you feel apropriate.
* graphics/lanzz_theme/config.theme:
Added the theme files as well. Currently animation times are all set to
one second. Thats a bit slow, but good for testing purposes.
* graphics/Makefile.am, src/bullet.c, src/graphics.c, src/init.c, src/struct.h
Added a config.theme file for every theme.
In there the number of pictures for each blast and also the total amount
of time intended for the animation are specified.
* src/bullet.c, src/enemy.c:
Small explosions after bullet-enemy collisions now enabled.
* src/enemy.c:
Corrected the direction angle the enemy bullets are heading.
The code for determining the "phase" is now obsolete and can be removed.
2002-06-15 basse <bastiansalmela@users.sourceforge.net>
* graphics/scientist.jpg:
new version of scientist.jpg
no more copyright messages
correct(?) size 640x480
droid also has now number, and some texture
2002-06-14 jprix <johannesprix@users.sourceforge.net>
* src/graphics.c, src/influ.c, src/struct.h, src/view.c, src/global.h:
Added rotation of bullets by arbitrary angles. Bullet structures were equipped
with an 'angle' entry for this purpose. Seems to work quite well.
The ne_blocks surface is restored to alpha-channel-less mode after the reading
is done, which restored the framerate as well. See ya, jp.
* graphics/Makefile.am, graphics/lanzz_theme/ne_bullet.png, src/blocks.c,
Activated alpha channel for the bullets. Transparency is working well.
The rest of the transparency currently is not working due to the changes.
Added the new bullet pictures that feature an alpha channel to both themes.
* TASK_CHART, src/global.h, src/init.c, src/main.c, src/map.c:
Animation of doors now respects the framerate: Currently, the doors move
one picture every 0.15 seconds. This constant will be replaced when we
give more power to each theme's configuration file, that must be created
from scratch still...
* graphics/lanzz_theme/ne_bullet.gif, src/graphics.c:
Added missing bullet directions that are currently still required by the
graphics engine. Experimented a bit with the rotozoom possibilietes, but
it's not yet convincing and for how the code remains commented out. This
has to be done a bit more thorough.
Adapted the structures, so that the current theme as specied in GameConfig.Theme_SubPath
is used to read in all graphics blocks.
Added an option to switch between themes in the Graphics/Sound submenu of the options menu.
Added of course two pathes for the themes and the files under these pathes.
A fallback routine in case of a missing file in non-default theme does NOT EXIST currently.
2002-06-13 jprix <johannesprix@users.sourceforge.net>
* TODO: Added the "cut droid image in takeover" bug to the TODO list.
2002-06-13 rprix <rprix@users.sourceforge.net>
* graphics/001.jpg:
Bastian's 001 - droid pic, scaled to proper dimensions.
* CREDITS:
this is intended to be a more exhaustive 'credits' sections, as
we cannot list everyone in the in-game credits.
2002-06-13 jprix <johannesprix@users.sourceforge.net>
* IDEAS:
Added ideas file for open discussion of freedroid topics and future development.
Bastian really should be given cvs write access to participate better in this discussion.
* src/map.c, map/new_ship_1.maps, map/ship_1.maps:
Added a correction function, that checks the integrity of waypoint connection
entries and eliminates leading -1 entries. Such leading -1 entries could prevent
droids from using connections that were otherwise completely ok.
That corrects a really very minor problem. Six or so incidents, where this little
bug actually was in the maps files, were corrected.
2002-06-12 jprix <johannesprix@users.sourceforge.net>
* src/init.c, src/menu.c, src/struct.h, src/text.c, src/view.c:
Restructured the options menu and submenus.
Text can now be turned on off as a whole and with individual switches
for the different text types.
* TASK_CHART, graphics/ne_bullet2.gif, graphics/ne_droids_2.png, src/defs.h:
Added new droid image as an experiment. Wow, it looks terriffic! And
especially so on darker backgrounds like the blue tileset! That does
make quite a difference! Perhaps we do not need to go as far as to use
individual renderings for the in-game-droid representaions so soon...
* graphics/scientist.jpg:
Added Bastians latest update with the fleeing scientist. Thanks
for the great work, Bastian. Absolutely cool.
* TASK_CHART: Added my newest tasks. jp.
* graphics/ne_block_blue.gif, graphics/ne_block_green.gif, graphics/ne_block_red.gif:
Added rotation for the inside of the refresh fields for some tilesets.
Background for the mission briefing can now be conveniently selected from the
mission file. Added specifications to the mission files accordingly.
2002-06-11 jprix <johannesprix@users.sourceforge.net>
Added the bastians latest preview of his newest work.
Corrected the bug in the new "bullet phase" determination.
Added nonsymmetrical bullet images in "ne_bullet2.gif" for testing purposes.
Seems to work now, finally. I'm off for some sleep now. Have fun.
2002-06-09 rprix <rprix@users.sourceforge.net>
* src/influ.c:
fixed bug in keyboard firing in FireBullet(). Sorry I had tested
mostly joystick+mouse and overlooked this one ;)
2002-06-09 jprix <johannesprix@users.sourceforge.net>
Completely reworked the map format: No longer some strange nonportable ascii
chars but now only the numbers in clear text for the map tiles. That will
also allow for easier extension than having to find a new char for every
newly introduced map tile. Loading and saving works. Replaced all map files
accordingly.
Added bastians latest creations in the format matching the needs of the
console droid show as it is now. We should arrange for a bigger console
style though.
All in all, what a day for the freedroid project! Have fun, Johannes.
2002-06-09 rprix <rprix@users.sourceforge.net>
* src/defs.h, src/graphics.c, src/init.c, src/menu.c, src/ship.c, src/takeover.c
cleanup: Removed PrepareScaledSurface(), replaced calls by SDL_Flip(ne_screen)
#removed obsolete + empty Update_SDL_Screen().
#removed last remaining references to NEW_ENGINE.
* src/Makefile.am, src/global.h, src/proto.h, src/svgaemu.c:
cleanup: removed svgaemu.c (nothing left to 'emulate').
# ! NOTE: you have to automake+configure before make'ing!
2002-06-09 jprix <johannesprix@users.sourceforge.net>
* TASK_CHART, map/new_mission_1.mission, map/new_mission_2.mission, src/menu.c
Added feature to enlarge any level in x or y direction from the level editor.
Added another new trigger and action to the first two new mission files.
2002-06-09 rprix <rprix@users.sourceforge.net>
* ChangeLog: updated + some cleanup.
!! Please use lines starting with '#' for log-messages that are too
minor/unimportant to appear in the ChangeLog !!
* src/menu.c, src/view.c, TODO, src/global.h, src/graphics.c, src/influ.c
o) further improvements of the joystick fireing
o) incorporated "Nighthawk"-type mouse control
based on a patch sent in by Tanel Kylaots <mou@tdl.ee>
2002-06-09 jprix <johannesprix@users.sourceforge.net>
* configure.ac, map/game.dat, src/global.h, src/influ.c, src/init.c:
Improved (I hope) the collision-damage handling: Now not the difference in
class of droid but in weight of droid is taken as the basis of the calculation.
Further a constants section in game.dat has been added, where the player can
also calibrate the collision damage via a constant for his own mod.
The "sucking in" problem has also been addressed: Getting sucked into another
robot should now occur less likely (i.e. not on my machine, as usual). jp.
* map/new_mission_2.mission, src/text.c:
Added missing events section to the second new mission too.
Game looks pretty cool to me right now. We should release 0.8.2 I think.
* map/classical_paradroid_mission.mission, src/bullet.c, src/proto.h, src/text.c:
Added more text for hit droids.
Added the missing event section to the classical mission.
Events fully functional implemented and read from the mission file.
There are event triggers and event actions.
Of course more than one trigger can be used to trigger one action.
Put the triggers to good use on the first new mission.
Also adapted the map file a little bit more so that it is not so empty.
Clasical mission currently not functional due to missing event section.
2002-06-09 rprix <rprix@users.sourceforge.net>
* Patches/mouse-patch.1:
patch submitted by Tanel Kylaots <mou@tdl.ee> to add mouse
functionality similar to Nighthawk.
2002-06-09 jprix <johannesprix@users.sourceforge.net>
* src/init.c, src/misc.c, src/view.c:
TestEvent: Mapchange on Level 4 at (6,2): Seems to work!! cool!
* src/init.c, src/misc.c, src/view.c:
Added a test event. Trigger seems to work so far. Good.
* src/defs.h, src/global.h, src/init.c, src/main.c, src/misc.c, src/proto.h
Added more structures for events.
Added more structures for event triggers.
* map/new_ship_1.maps, map/new_ship_2.maps, src/struct.h:
Corrected some bugs in the new maps.
Added some additional structure elements to the new rather empty maps.
Added structures for special periodic statements of some special droids.
* src/bullet.c, src/enemy.c, src/influ.c, src/init.c, src/proto.h, src/struct.h
Added text for influs blast damage and also more flexibility: When influ
received damage from a blast he says one of three possible messages.
That seems quite fine.
* src/enemy.c, src/influ.c, src/main.c, src/view.c:
Added text for the refreshes, haha.
Added text for collisions, haha.
* src/global.h, src/graphics.c, src/menu.c, src/sound.c, src/struct.h:
Integrated music/sound volume and gamma correction into the new GameConfig.
Added structures for other droids texts as well.
* src/menu.c, src/struct.h, src/view.c, TODO, src/defs.h, src/enemy.c
Added Draw_Position and drawing of current position similar to drawing FPS.
Added structure "configuration_for_freedroid" and a variable "GameConfig", that
now collects together the desired Draw_Framerate, Draw_Energy and Draw_Position.
* src/global.h, src/init.c, src/input.c, src/main.c, src/struct.h, src/view.c:
Added text for the 001 to say. Very useful!
* src/map.c, src/misc.c, src/rahmen.c:
Removed obsolete functions itoa and ltoa.
(sprintf is a much more powerful tool!)
2002-06-09 rprix <rprix@users.sourceforge.net>
* menu.c, view.c, global.h, graphics.c, influ.c, input.c, main.c:
o) further improvements of the joystick fireing
o) incorporated "Nighthawk"-type mouse control
based on a patch sent in by Tanel Kylaots <mou@tdl.ee>
2002-06-09 jprix <johannesprix@users.sourceforge.net>
* configure.ac, game.dat, global.h, influ.c, init.c:
Improved (I hope) the collision-damage handling: Now not the difference in
class of droid but in weight of droid is taken as the basis of the calculation.
Further a constants section in game.dat has been added, where the player can
also calibrate the collision damage via a constant for his own mod.
The "sucking in" problem has also been addressed: Getting sucked into another
robot should now occur less likely (i.e. not on my machine, as usual). jp.
* new_mission_2.mission, text.c:
Added missing events section to the second new mission too.
Game looks pretty cool to me right now. We should release 0.8.2 I think.
* classical_paradroid_mission.mission, bullet.c, proto.h, text.c:
Added more text for hit droids.
Added the missing event section to the classical mission.
* new_mission_1.mission, new_ship_1.maps, defs.h, influ.c, init.c,
misc.c, proto.h, struct.h, text.c:
Events fully functional implemented and read from the mission file.
There are event triggers and event actions.
Of course more than one trigger can be used to trigger one action.
Put the triggers to good use on the first new mission.
Also adapted the map file a little bit more so that it is not so empty.
Clasical mission currently not functional due to missing event section.
2002-06-09 rprix <rprix@users.sourceforge.net>
* Patches/mouse-patch.1:
patch submitted by Tanel Kylaots <mou@tdl.ee> to add mouse
functionality similar to Nighthawk.
2002-06-09 jprix <johannesprix@users.sourceforge.net>
* init.c, misc.c, view.c:
TestEvent: Mapchange on Level 4 at (6,2): Seems to work!! cool!
* init.c, misc.c, view.c:
Added a test event. Trigger seems to work so far. Good.
* defs.h, global.h, init.c, main.c, misc.c, proto.h, struct.h:
Added more structures for events.
Added more structures for event triggers.
* new_ship_1.maps, new_ship_2.maps, struct.h:
Corrected some bugs in the new maps.
Added some additional structure elements to the new rather empty maps.
Added structures for special periodic statements of some special droids.
* bullet.c, enemy.c, influ.c, init.c, proto.h, struct.h, text.c:
Added text for influs blast damage and also more flexibility: When influ
received damage from a blast he says one of three possible messages.
That seems quite fine.
* enemy.c, influ.c, main.c, view.c:
Added text for the refreshes, haha.
Added text for collisions, haha.
* global.h, graphics.c, menu.c, sound.c, struct.h:
Integrated music/sound volume and gamma correction into the new GameConfig.
Added structures for other droids texts as well.
* menu.c, struct.h, view.c, TODO, defs.h, enemy.c, global.h, init.c:
Added Draw_Position and drawing of current position similar to drawing FPS.
Added structure "configuration_for_freedroid" and a variable "GameConfig", that
now collects together the desired Draw_Framerate, Draw_Energy and Draw_Position.
* global.h, init.c, input.c, main.c, struct.h, view.c:
Added text for the 001 to say. Very useful!
* map.c, misc.c, rahmen.c:
Removed obsolete functions itoa and ltoa.
(sprintf is a much more powerful tool!)
2002-06-08 rprix <rprix@users.sourceforge.net>
* defs.h, influ.c, struct.h, svgaemu.c, view.c:
rewritten FireBullet(): simpler structure now, and allows continuous
shot-directions when using analog joystick. Not quite C64 original,
but quite cool! ;)
* Makefile.am, global.h, input.c, joy.c, keyboard.c, proto.h:
merged joy.c and keyboard.c into new file input.c.
adapted Makefile.am (don't forget to automake+configure ;)
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* TODO, graphics.c, menu.c:
Removed the "bug" that game remained rescaled after being rescaled in the
level editor and returning back to the actual game.
Updated TODO accordingly.
2002-06-08 rprix <rprix@users.sourceforge.net>
* INSTALL, NEWS, README:
added some more references to our sourceforge website.
* init.c:
added reference to our sourceforge project page for Bug-reporting in
help-message.
* ChangeLog:
auto-produced updated for ChangeLog from cvs-entries.
Needs cleanup again.
* TODO:
further small updates/cleanup in TODO.
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* graphics.c:
Arggh, corrected that spelling mistake... sorry.
* TODO, graphics.c:
Removed some of the bugs mentionen in TODO and gave some comments.
* new_ship_2.maps, enemy.c:
Removed some bugs from the second ships maps file.
Improved enemy behaviour: Once they see the influencer, have a weapong and
are not friendly, they will not move away but stand and fire at the influ.
2002-06-08 rprix <rprix@users.sourceforge.net>
* TODO, global.h, menu.c, struct.h, takeover.c, view.c:
*) entered "fresh" bugs into TODO
*) extended cheat-menu: make all droids visible, allow zooming
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* new_ship_1.maps:
Corrected some bugs in the second map.
I hope they are historical and not caused by a bug in the Level editor.
* enemy.c, init.c, map.c, struct.h, game.dat, ship_1.maps:
Taught the droids some behaviour: Before moving on to the next waypoint, they
first look if the way is really free of other droids. (Currently, that includes
even the influencer! Real polite.)
Corrected some minor bugs in the first map.
* enemy.c:
Reworking enemy movement. Starting to add new behaviour.
* TASK_CHART, enemy.c, map.c, proto.h:
Removed some obsolete code.
Corrected the bug, that enemys were always moving the speed the
influencer could go. Looks much better now.
* influ.c, new_ship_1.maps, new_ship_2.maps:
Corrected some minor bugs in the new maps.
Removed some warnings.
Updated my TASK_CHART.
Implemented the takeover sound.
Added documentation about the new keys in the Level Editor to the manual.
2002-06-08 rprix <rprix@users.sourceforge.net>
* sound.c:
replaced some forgotten printf's to DebugPrintfs in sound.c
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* new_ship_1.droids, new_ship_1.maps, new_ship_2.maps, enemy.c, menu.c:
Added friendly droids.
Improved mission instructions dispaly.
Improved the handling of nonfixed special forces.
* enemy.c, map.c, struct.h, view.c, TASK_CHART, configure.ac, new_ship_1.droids
Added friendly droids. Modified maps and drois file of the first new mission
to contain one, but contact is not possible.
* TASK_CHART, game.dat, vars.h:
Added a few new tasks.
* sound/Cry_Sound_0.wav, sound/Takeover_Sound_0.wav, defs.h, main.c, sound.c
Implemented the "cry sound", when influs energy is low.
Added sounds for the cry sound and the transfer mode sound.
* new_ship_1.maps:
Reshaped the new maps a little bit more for the new mission.
* keyboard.c, menu.c, proto.h:
Extended the level editor to allow for different boxes and pillars the be planted.
Extended the keyboard module to recognize keys 0-9.
* enemy.c, influ.c, init.c, view.c, new_mission_2.mission, new_mission_1.mission:
Added fading effect when influencer energy is low, using alpha technique.
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* TODO, graphics.c:
Removed some of the bugs mentionen in TODO and gave some comments.
* new_ship_2.maps, enemy.c:
Removed some bugs from the second ships maps file.
Improved enemy behaviour: Once they see the influencer, have a weapong and
are not friendly, they will not move away but stand and fire at the influ.
2002-06-08 rprix <rprix@users.sourceforge.net>
* TODO, global.h, menu.c, struct.h, takeover.c, view.c:
*) entered "fresh" bugs into TODO
*) extended cheat-menu: make all droids visible, allow zooming
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* new_ship_1.maps:
Corrected some bugs in the second map.
I hope they are historical and not caused by a bug in the Level editor.
* enemy.c, init.c, map.c, struct.h, game.dat, ship_1.maps:
Taught the droids some behaviour: Before moving on to the next waypoint, they
first look if the way is really free of other droids. (Currently, that includes
even the influencer! Real polite.)
Corrected some minor bugs in the first map.
* enemy.c:
Reworking enemy movement. Starting to add new behaviour.
* TASK_CHART, enemy.c, map.c, proto.h:
Removed some obsolete code.
Corrected the bug, that enemys were always moving the speed the
influencer could go. Looks much better now.
* influ.c, new_ship_1.maps, new_ship_2.maps:
Corrected some minor bugs in the new maps.
Removed some warnings.
Updated my TASK_CHART.
Implemented the takeover sound.
Added documentation about the new keys in the Level Editor to the manual.
2002-06-08 rprix <rprix@users.sourceforge.net>
* sound.c:
replaced some forgotten printf's to DebugPrintfs in sound.c
2002-06-08 jprix <johannesprix@users.sourceforge.net>
* new_ship_1.droids, new_ship_1.maps, new_ship_2.maps, enemy.c, menu.c:
Added friendly droids.
Improved mission instructions dispaly.
Improved the handling of nonfixed special forces.
* enemy.c, map.c, struct.h, view.c, TASK_CHART, configure.ac,
Added friendly droids. Modified maps and drois file of the first new mission
to contain one, but contact is not possible.
* TASK_CHART, game.dat, vars.h:
Added a few new tasks.
* sound/Cry_Sound_0.wav, sound/Takeover_Sound_0.wav, defs.h,
Implemented the "cry sound", when influs energy is low.
Added sounds for the cry sound and the transfer mode sound.
* new_ship_1.maps:
Reshaped the new maps a little bit more for the new mission.
* keyboard.c, menu.c, proto.h:
Extended the level editor to allow for different boxes and pillars the be planted.
Extended the keyboard module to recognize keys 0-9.
* enemy.c, influ.c, init.c, view.c, new_mission_2.mission, new_mission_1.mission:
Added fading effect when influencer energy is low, using alpha technique.
2002-06-07 rprix <rprix@users.sourceforge.net>
DebugPrintf () now takes a debug-level and standard printf()-arguments.
Put all existing DebugPrintf() to debug-level2, and all current
printf() statements are now DebugPrintf (1, ..).
To activate these debug-statements, run freedroid with the command-line
argument -d<level>, which prints all statements <= level.
2002-06-07 jprix <johannesprix@users.sourceforge.net>
* new_mission_2.mission, new_ship_2.droids:
Improved the second mission a bit. This should do for now.
* Makefile.am, new_ship_2.droids, new_ship_2.elevators, new_ship_2.maps:
Added files for second new mission. Are the same as for first new misson.
Removed most of the obsolete messages flushing the text screen.
Worked a bit to improve the mission files.
* new_mission_1.mission, new_ship_1.droids, new_ship_1.maps, defs.h, enemy.c
Improved the alternative mission, maps and droids files.
* graphics/990.jpg:
Arg, that one I forgot...
Added pictures for new droids.
Corrected bug in waypoint count in GetLiftConnections.
Reshaped another level of the new ship.
* init.c, classical_paradroid_mission.mission, game.dat, ship_1.droids
Implemented calibrating constants withing game dat for bullet speed and damage.
Used these constants to get bullet speed back to paradroid normal.
Corrected the minor mistakes that were introduced into the paradroid map in the
mapfile format conversion process. Also corrected some mistakes that existed due
to the old format not being able to store apropriate information.
Restored the classical paradroid mission back to original mission goal.
* ship_1.droids, enemy.c, graphics.c, map.c, menu.c, struct.h:
Corrected the bug, that junked the screen when changing tileset in the
Level Editor while combat windows is rescaled to something != 1.
Implemented markers for special forces in the droids file.
Implemented mission target kill all marked droids.
Implemented mission target become one of the marked droids.
Added mission target strings in first 2 mission files accordingly.
2002-06-06 jprix <johannesprix@users.sourceforge.net>
* map.c:
Made some improvements to Special forces read-in procedure.
* ship_1.droids, enemy.c, map.c, menu.c, struct.h:
Implemented Special Force droids file entrys. Needs some extensions though.
Implemented CompletelyFixed flag (especially for special forces.)
* new_ship_1.maps:
Worked a bit to improve the new map.
* influ.c, init.c, struct.h, takeover.c:
Modified energy handling so that after takeover, the influe has old energy
PLUS the hosts energy. Otherwise the influ can be shot down with one shot
if he controls a 249 or below robot, which wasn't the case in the C64 version
and which makes the game MUCH more playable and also more fun I think. jp.
Implemented mission target MustReachLevel.
Implemented mission target MustReachPoint.x/y.
Implemented mission target MustLiveTime.
In the latter case, remaining time to hold out will be printed to the combat window.
Added mission target strings to the mission files as required.
* Homepage/Freedroid_Manual.tex, TASK_CHART, menu.c:
Allowed for finer steps when rescaling tiles in Level Editor.
Added new mission new_mission_2.mission, though its identical to mission 1 still.
Added copyright/licence remark in mission files and droid file.
Added a section concerning the Freedroid game rules in the manual. Needs more though.
Completely reworked the shape of crew files.
They are now well readable.
Droid types can be entered by typing their name instead of their number.
* classical_paradroid_mission.mission, new_mission_1.mission, init.c:
Added next mission pointer: After completition of one mission, the mission
indicated by the next mission pointer in the mission file will be loaded and
started. Classical Paradroid now points to the new mission 1. The new mission
one points to the new mission 2, which does not yet exist. Otherwise it
seems to work quite well.
2002-06-05 jprix <johannesprix@users.sourceforge.net>
* classical_paradroid_mission.mission, new_mission_1.mission, init.c, struct.h:
Added mission target MustBeClass, fully functional.
Added mission target MustBeType, fully functional.
All mission targets are always AND connceted to see if mission is complete.
End Title text is now specified in the mission file.
Mission target is now specified in the mission file and checked in a separate function.
Added simple mission targets for Classical Paradroid and New Mission.
Added a structure for mission targets (to be understood as AND connected subtargets).
2002-06-05 rprix <rprix@users.sourceforge.net>
* menu.c:
Changed Cheat-menu font to FPS-font... much better now! ;)
2002-06-05 jprix <johannesprix@users.sourceforge.net>
* TASK_CHART, defs.h, init.c, main.c, proto.h:
Reactivated "font05" for the FPS_Display, i.e. FPS_Display_BFont, might
be good for Cheatmenu too?
2002-06-05 rprix <rprix@users.sourceforge.net>
* ChangeLog:
updated with latest changes, some cleanup, put our sourceforge mail addresses.
* menu.c:
started porting Cheatmenu to use SDL-screen (more convenient), using
printf_SDL() and GetString(). Should be working 90% ok now.
* proto.h:
new functions: printf_SDL() and putchar_SDL().
* text.c: added 2 new text-functions:
int putchar_SDL (SDL_Surface *Surface, int x, int y, int c)
void printf_SDL (SDL_Surface *screen, int x, int y, char *fmt, ...)
which extend the BFont-functions PrintString() and PutChar() by using
the global cursor position MyCursorX/Y.
Passing -1 as coordinate will use the current cursor-position to
write. Cursor position is updated.
The screen is updated after writing.
Ported GetString() to SDL using the above text-functions.
echo=1 (stdout) is currently not working, only echo=2 (SDL-echo).
Backspace should be treated correctly now, but this function still
needs some testing.
2002-06-05 jprix <johannesprix@users.sourceforge.net>
* menu.c, TASK_CHART, new_ship_1.maps:
Added "color change" (="change tileset") option for the level editor.
Gave the first new level in the new map a new color.
* Homepage/Freedroid_Manual.tex, new_mission_1.mission, new_ship_1.maps, enemy.c,
Added more doku on the level editor for the manual.
Added protection against moving out of the map in the level editor.
Added level changing option for the level editor.
Modified the maps for the alternate story line.
Modified starting points for the alternate story line.
2002-06-05 rprix <rprix@users.sourceforge.net>
* menu.c:
started porting Cheatmenu to use SDL-screen (more convenient), using
printf_SDL() and GetString(). Should be working 90% ok now.
* text.c: added 2 new text-functions:
int putchar_SDL (SDL_Surface *Surface, int x, int y, int c)
void printf_SDL (SDL_Surface *screen, int x, int y, char *fmt, ...)
which extend the BFont-functions PrintString() and PutChar() by using
the global cursor position MyCursorX/Y.
Passing -1 as coordinate will use the current cursor-position to
write. Cursor position is updated.
The screen is updated after writing.
Ported GetString() to SDL using the above text-functions.
echo=1 (stdout) is currently not working, only echo=2 (SDL-echo).
Backspace should be treated correctly now, but this function still
needs some testing.
2002-06-05 jprix <johannesprix@users.sourceforge.net>
* menu.c, TASK_CHART, new_ship_1.maps:
Added "color change" (="change tileset") option for the level editor.
Gave the first new level in the new map a new color.
* Homepage/Freedroid_Manual.tex, new_mission_1.mission,
new_ship_1.maps, enemy.c, menu.c, TASK_CHART:
Added more doku on the level editor for the manual.
Added protection against moving out of the map in the level editor.
Added level changing option for the level editor.
Modified the maps for the alternate story line.
Modified starting points for the alternate story line.
2002-06-04 jprix <johannesprix@users.sourceforge.net>
* Homepage/Freedroid_Manual.tex, TASK_CHART,
classical_paradroid_mission.mission, game.dat,
new_mission_1.mission, new_ship_1.crew, init.c:
Now the flag "AdvancedFighting" is read in for every droid, though it doesn't
have an effect in the program jet.
Now the mission files can contain an arbitrary number of starting points for
the mission, specified by the obvious string. Seems to work well.
Added appropriate defintions in the mission files of course.
* Homepage/Freedroid_Home_Page.tex, Homepage/Freedroid_Manual.tex,
TASK_CHART, keyboard.c, menu.c:
Disabled zoom in/out for game but enabled it for level editor.
Added and extended notes in Manual page not only concerning this.
* Homepage/Freedroid_Home_Page.tex, Homepage/Freedroid_Manual.tex,
Homepage/Makefile, Homepage/Test_Upload, TASK_CHART:
Added a Freedroid Manual page to the Freedroid home page.
The Freedroid Manual also contains an unfinished description of the level editor.
2002-06-04 rprix <rprix@users.sourceforge.net>
* BFont.c, BFont.h, defs.h, menu.c, rahmen.c:
run indent on BFont.[ch] to correct indentation.
Changed font to Para_BFont in DisplayBanner().
* ChangeLog:
used Emacs for automatic CVS-log -> Changelog creation.
Now there's a lot of junk to clean up, but that has time...
Please use "C-x v a" from time to time to add Changelog entries
from your cvs log, and edit them correspondingly to keep only
'relevant' changes.
* map.c, ship.c:
Improved lift algorithm: first blit ship "lights off", then
blit active level and lift-row rectangles from "lights on" ship-picture,
then update screen. --> Results look&feel much more "stable".
* blocks.c, global.h, graphics.c, init.c, map.c, misc.c, proto.h:
some code cleanup: *completely* removed obsolete variables
RealScreen, InternalScreen, Outline320x200 , together with
old block display functions Display*Block().
* ship.c, TODO, graphics/ship_off.bmp, graphics/ship_on.bmp, graphics.c:
some cleanup in the lift code and picture.
(don't forget to "install" new pics)
2002-06-04 jprix <johannesprix@users.sourceforge.net>
Resized Bastians droids to fit into the console. For now, thats the
easiest way to get the console working again.
Repaired the console text format to fit into the window. Good. jp.
* TODO, graphics/parafont.png, new_mission_1.mission, init.c, text.c:
Worked a bit on the briefing text of the new mission.
Corrected some smaller mistakes in the paradroid font.
Added missing feature to TODO list.
2002-06-04 rprix <rprix@users.sourceforge.net>
* map.c, ship.c:
Improved lift algorithm: first blit ship "lights off", then
blit active level and lift-row rectangles from "lights on" ship-picture,
then update screen. --> Results look&feel much more "stable".
* blocks.c, global.h, graphics.c, init.c, map.c, misc.c, proto.h:
some code cleanup: *completely* removed obsolete variables
RealScreen, InternalScreen, Outline320x200 , together with
old block display functions Display*Block().
* ship.c, graphics.c:
some cleanup in the lift code and picture.
(don't forget to "install" new pics)
2002-06-04 jprix <johannesprix@users.sourceforge.net>
* ship.c, vars.h:
Resized Bastians droids to fit into the console. For now, thats the
easiest way to get the console working again.
Repaired the console text format to fit into the window. Good. jp.
* init.c, text.c:
Worked a bit on the briefing text of the new mission.
Corrected some smaller mistakes in the paradroid font.
Added missing feature to TODO list.
2002-06-03 jprix <johannesprix@users.sourceforge.net>
* init.c, main.c, menu.c, misc.c:
Added a mission selection menu.
* defs.h, menu.c:
Added bastians "free droid" as the background for the credits menu subsection.
* main.c, map.c:
Corrected the too slow map-read-routines. Now its FAST!!!!
Corrected smaller bugs in classic paradroid map.
Saved all maps in new map file format.
2002-06-03 rprix <rprix@users.sourceforge.net>
* main.c, map.c, misc.c, proto.h, ship.c, sound.c, struct.h, global.h, init.c:
Useless detail: Global name change "elevator" -> "lift"
2002-06-03 jprix <johannesprix@users.sourceforge.net>
* keyboard.c, main.c, menu.c, proto.h, struct.h:
Worked a bit on the new area.
Introduced new robot types 998, 997, ... , 991 , 990.
Introduced flag for new fighting behaviour, but its not yet read in.
New mission is the default for now.
* enemy.c, init.c:
Corrected the aggression of droids being too high.
Elevators are currently broken: I see only blue screen while in enevator!
Why is this?
2002-06-03 rprix <rprix@users.sourceforge.net>
* blocks.c, defs.h, global.h, graphics.c, init.c, map.c, proto.h,
new method for ShowElevators():
show ship-picture "lights off" first, update screen, then Blit in the
ship picture "lights on", but update only the rectangles for the current
lift and level. Seems to work ok now.
This method has the advantage of requiring only two ship-pictures instead
of one per level and lift, but has the disadvantage of requiring the
lift and level rectangles to be provided. I still think this is an
improvement, as these rectangle-info could be entered in a "Ship-Editor",
say, if extensive "ship-editing" should ever become fashionable...
2002-06-03 jprix <johannesprix@users.sourceforge.net>
* map.c, menu.c, proto.h:
Removed the obsolete "x"-encoding of waypoints within maps.
So we can now plant waypoints anywhere, on refreshed, lifts and all that too.
And I added the missing refresh under the waypoint on the yellow level.
Loading takes a bit long... I might remove the forced writing again in
favour of arbitrary dynamic waypoint structures.
* map.c, vars.h, defs.h, enemy.c, init.c, main.c:
Fixed some bugs in the level loading function.
Set MAX_WP_CONNECTIONS from 4 to 12
Set MAPWAYPOINTS from 30 to 100
Changed the format of ships on disk into something better human-readable.
2002-06-02 jprix <johannesprix@users.sourceforge.net>
* defs.h, enemy.c, init.c, map.c, vars.h:
Briefing texts are now taken from the mission file and therefore the long static
strings removed from the code.
Which ship file, elevator file and crew file to use is also deducted from the
mission file now. jp.
* defs.h, init.c, keyboard.c, main.c, menu.c, proto.h:
Mission briefing text is now successfully read and used from the mission file.
* global.h, init.c, menu.c, vars.h, view.c, defs.h:
Removed the limitation to ALLDRUIDTYPES different druid types maximal to
arbitrary number of droid types all specified in game.dat.
Started to set up a format and example of a mission file.
* menu.c:
Connections between waypoints can now conveniently be established via the
C key. You should try it;) jp.
* map.c, menu.c:
Waypoints can now also be toggled via the Level Editor.
* graphics.c, menu.c, proto.h:
Level editor now also shows the waypoint connections. Most convenient. jp.
* init.c, proto.h:
Integrated the notes concerning the droids into game.dat. Removed the static
Droid initialisation function from the code.
* init.c, ship.c, struct.h, vars.h:
Added separate Height, Weight, Drive, Brain, Sensor 1, Sensor 2, Sensor 3,
and Armament variables into the Druidmap structure and under the control
of game.dat.
* init.c, vars.h:
Added calibration entries to modify all droid simulaneously in game.dat.
* enemy.c, struct.h, vars.h:
Eliminated the Druidmap initialization from vars.h. All info for the
Druidmap is now read from the external game.dat file, haha.
2002-06-01 rprix <rprix@users.sourceforge.net>
* init.c, main.c, menu.c, misc.c, proto.h, ship.c, struct.h, view.c:
Adapted calls to DisplayBanner() to new Parameters "left" and "right",
removed calls to old SetInfoline().
* takeover.c:
Takeover-game pretty much complete now: Added display of player-droids
and proper Infoline-display via DisplayBanner().
* rahmen.c:
jp's new DisplayBanner() seems to have overtaken SetInfoline(), which I
have now removed.
Adapted DisplayBanner() to allow passing of non-standard left and
right entries, which is needed in Takeover-game.
* takeover.c, takeover.h, graphics.c:
Takeover game: "current" animation now complete.
2002-06-01 jprix <johannesprix@users.sourceforge.net>
* defs.h, influ.c, init.c, struct.h, vars.h:
Almost all Druidmap variables now under control of game.dat.
* init.c, struct.h, vars.h:
More variables put under control of the game.dat file.
2002-06-01 rprix <rprix@users.sourceforge.net>
* proto.h, takeover.c, takeover.h:
Further polishing of Takeover-game: "current" animation now works
"in principle", but is not finished yet in the details.
* graphics.c:
set our window-dimensions to the more standard format (640x480,
ie. 320x240 * 2). Looks a bit "strange" in the beginning when you're
used to our "cut-off" window, but I think this is much more reasonable...
* view.c:
added new function Fill_Rect (SDL_Rect rect, SDL_Color color), which
fills the given rectangle with the RGB-color. This is now used in
Takeover to color the User_Rect.
SetUserfenster() is too specific to 8bpp and the UserFenster, and
should be dumped in favor of Fill_Rect() !!
2002-06-01 jprix <johannesprix@users.sourceforge.net>
* proto.h, view.c:
Adapted PutEnemy to better fit the needs of the takeover game.
2002-05-31 jprix <johannesprix@users.sourceforge.net>
* menu.c, init.c, main.c:
Started to implement reading of droid data from outside file "game.dat".
Robot names are already read successfully from there.
The file is ascii-readable and well documented and flexible.
2002-05-31 rprix <rprix@users.sourceforge.net>
* defs.h, graphics.c, takeover.c, takeover.h, view.c:
Takeover game now at least "playable" again in new engine, but still quite
some polishing necessary...
2002-05-31 jprix <johannesprix@users.sourceforge.net>
* Makefile.am, menu.c, misc.c, proto.h, ship.c:
Split the (too big) misc.c up into misc.c and menu.c.
Menu should now contain all menu functions and their helper functions.
This includes the level editor, which is not too big. Edited Makefile.am.
2002-05-30 jprix <johannesprix@users.sourceforge.net>
* misc.c:
Level editor now shows also the waypoints, but not yet the connections.
I'm sort of tired and think I'll close for today. Have fun, jp.
* map.c:
Hurray! The SaveShip function now reproduces exactly the loaded Level.
That means we have a functioning Level editor again, allthough convenient
waypoint editing must still be incorporated into it. But maps basically
can be edited. I might do that later. jp.
* defs.h, map.c:
Save level procedure now seems to work almost: wp are still missing.
* map.c, map.h:
Added a bit more documentation to the ship-loading functions and also improved
the ship file format to be a bit better human-readable in my opinion. jp.
* ship.c:
Improved the way the map is shown at the console: Center of map now in center
of the combat window. Still room for further improvement.
* ship.c:
Elevators are now correctly highlighted too.
* ship.c, view.c:
Elevator is now working (well) again. New pictures needed and added.
* defs.h:
Replaced more bmps by gifs. That saves up to 30 times the space on disk.
* graphics.c, init.c, misc.c, rahmen.c, ship.c, takeover.c,
view.c, blocks.c, colodefs.h, defs.h, global.h:
Removed too small images from 0.7.4.
Removed more german. Added some doku.
* blocks.c, defs.h, graphics.c, ship.c:
Replaced all SDL_LoadBMP commands with IMG_Load. --> complete file
format independence.
Removed obsolete and redundant graphic files.
* blocks.c, defs.h, graphics.c:
Reduced redundant pixmaps and converted some to gif with costs 80% less. jp.
* map.c, vars.h, view.c, enemy.c, init.c:
The "jittering" bug has been resolved. At least on my old and new machine, jp.
* misc.c, proto.h:
Removed all german from misc.c.
Added and updated docu in the process.
Removed obsolete functions my_abs and my_sqrt.
* map.c, misc.c, proto.h, rahmen.c, ship.c, takeover.c, view.c,
ReplaceIt.awk, bullet.c, defs.h, enemy.c, global.h, graphics.c,
influ.c, init.c, main.c:
Renamed "Feindesliste" to "AllEnemys" like in "AllBullets" and "AllBlasts".
Renamed "Rahmen" to "Banner" since thats english and describes it well.
Removed all german from main.c.
Removed all german from view.c.
We ARE and international project after all. Have fun, jp.
2002-05-29 jprix <johannesprix@users.sourceforge.net>
* init.c:
Corrected the "title screen coped and bannerd when vied the second time" bug
* view.c:
Corrected the "framerate not well readable" bug.
* map.c, struct.h, view.c:
Corrected the "garbage on screen outside ship" bug.
* enemy.c, graphics.c, influ.c, init.c, main.c, proto.h, text.c, vars.h:
more colde cleanup: obsolete prototypes, german dokus, messed main strucute,
senseless&obsolete german definitions.
* init.c, keyboard.c, main.c, proto.h:
More code cleanup: Moved special key reactions into a separate
function in keyboard.c.
* main.c, misc.c, proto.h, global.h, init.c:
Moved the framerate computation into separate functions outside of
main() and main.c.
The guy who called the code a mess is still right though ;)
* misc.c:
Corrected the stupid typo in the Credits section. Also added
background image to it.
* misc.c, view.c:
Reactivated "Flashes" when fireing disruptor shots.
Credits section added to the big Escape Menu.
* misc.c, view.c:
Modified Homepage to display sourceforge logo as required by the sourseforge.
Added background image for the homepage. Tell me if you now find it hard to read.
Level editor is working all again, except for the saving menu option still.
Added Bastians latest graphics and made console react to larger image sizes.
2002-05-28 jprix <johannesprix@users.sourceforge.net>
* misc.c:
Reactivated most of the menus and also most of the level editor.
* defs.h, misc.c, proto.h, rahmen.c, takeover.c, view.c:
Reactivated and cleaned up single player menu.
2002-05-28 rprix <rprix@users.sourceforge.net>
* sound.c, system.h:
stupid script that executes aclocal, autoheader, automake & autoconf
to save typing. In addation automake is called with --add-missing,
so you don't have to worry about missing scripts.
2002-05-27 jprix <johannesprix@users.sourceforge.net>
* bullet.c, defs.h, graphics.c, influ.c, init.c, misc.c, proto.h,
rahmen.c, ship.c, text.c, view.c:
Finally reactivated the original Paradroid font, which is now available
via BFont/DisplayText etc.
* bullet.c, defs.h, graphics.c, influ.c, init.c, main.c, misc.c, view.c:
Added a new and smaller font, that might be good for the scrolling text.
* init.c:
Added a new Font, that might come in handy for some things.
Its not the original Paradroid font, which might come later, sorry.
* defs.h, global.h, graphics.c, influ.c, init.c, map.c, misc.c, sound.c, text.c:
Activated new title, also for the background of the scrolling font.
Had some sound problems: The very first sound call of freedroid seems
to be always completely ignored??? THIS REMAINS UNEXPLAINED.
* bullet.c, defs.h, influ.c, init.c, misc.c, rahmen.c, sound.c, text.c:
Improved sliding through H_GANZTUERE horizontal doors. Now it seems smooth.
* defs.h, main.c, misc.c:
Finally removed the real "GetChar" bug by setting the ALLBLAST constant from
5 to 100. Did the same for the ALLBULLETS. Happy hacking,jp. :-)
2002-05-27 rprix <rprix@users.sourceforge.net>
* defs.h, global.h, init.c, struct.h, takeover.c, text.c, view.c:
started writing proper Highscore-list handling (in Debriefing() )
not functional yet, so Debriefing now returns immediately.
Deactivated Takeover-game() which has to be ported to new engine yet.
2002-05-27 jprix <johannesprix@users.sourceforge.net>
* proto.h, graphics.c, init.c, misc.c:
Deleted old InitPalette crap.
* init.c, misc.c, influ.c:
"GetChar" bug removed by undoing free(ScoreText) which was never allocated?
* view.c, global.h, graphics.c, init.c, keyboard.c, main.c,
misc.c, proto.h, ship.c:
The notion of conceptview has left the game, since resizing is possible anyway.
TakeScreenshot now has its own function in graphics.
GetString in Debriebing currently disabled: See if "GetChar" bug vanishes?
2002-05-26 rprix <rprix@users.sourceforge.net>
* global.h, init.c, proto.h, rahmen.c, ship.c, ship.h, text.c, vars.h, view.c:
rp went Berserk on Text-handling machinery ;)
*) removed lots of old brain-damaged functions
*) Main player is now: DisplayText(), which now takes an
SDL_Rect argument with the Text-window to write in. This takes care
of clipping and line-breaks! The prev clip-rect is restored after this.
if NULL is passed, no clipping/line-breaking is done.
The line-breaks are handled by ImprovedCheckUmbruch() which has been
adapted appropriately.
*) DisplayText now returns TRUE if text was written _inside_ the
clip-rectangle, FALSE otherwise.
This info is used by ScrollText to know when text has been scrolled out.
*) Therefore: SetTextBorder & Co useless and have been dumped.
*) There are two global Rectangles: (def'd in vars.h)
User_Rect: which is our Userfenster
Menu_Rect: used in Menu-writing
please add further rectangles as you need them.
*) The CombatRectangle in Assemble_Combat_Picture() has been replaced
by User_Rect, in an effort to minimise names for the same thing.
Ok, everythings seems to works ok so far, but please keep me updated
if problems appear of if you have questions concerning Text-writing.
2002-05-26 jprix <johannesprix@users.sourceforge.net>
* graphics.c, init.c:
Little color bug removed.
* graphics.c, misc.c:
Level colors should be restored now.
Pictures are also of a form that should well work with the new gamma=1 default.
2002-05-26 rprix <rprix@users.sourceforge.net>
* init.c:
erroneous #include of nonexistent "paths.h" removed. (sorry)
2002-05-26 jprix <johannesprix@users.sourceforge.net>
* SDL_rotozoom.c, enemy.c, graphics.c, influ.c, main.c, map.c, proto.h, view.c:
Erradicated some warnings.
Eliminated some german expressions and function names.
2002-05-26 rprix <rprix@users.sourceforge.net>
* Makefile.am, defs.h, graphics.c, init.c, sound.c, view.c:
"make install" ist now functional. (I hope ;)
freedroid now expects its data (graphics,sound,map) in DATADIR,
which is defined in Makefile to $(pkgdatadir), which defaults
to /usr/local/share/freedroid.
If you want to change this location, you can make with the command:
make pkgdatadir=<YOUR_DIR>
Please use GRAPHICS_DIR, SOUND_DIR, MAP_DIR for loading data-files!
These are defined in defs.h
2002-05-26 jprix <johannesprix@users.sourceforge.net>
* blocks.c, defs.h, global.h, graphics.c, main.c, proto.h, rahmen.c, ship.c:
Combat screen can be rescaled using the "O" and "I" keys.
* blocks.c, defs.h, global.h, init.c, ship.c, view.c:
Resizing of screen works! You can try it at the console.
* enemy.c:
Robots fire now correctly at the influencer again.
Hey, the game seems pretty much playable again, except for the
takeover game perhaps....
* enemy.c, influ.c, main.c, proto.h:
Refreshes are now finally animated again, although not completely.
Influence-Enemy collisions have been repaired to work with the new coordinates.
* enemy.c:
Reactivated and repaired EnemyEnemyCollisions.
* influ.c, map.c, ship.c:
Visibility is now handled correctly and secure with the new coordinates.
* bullet.c, defs.h, influ.c, map.c:
Bullet-Robot collisions reactivated.
Influence-Wall collision handling improved.
* bullet.c, influ.c, proto.h, view.c:
Bullets and Blasts now use the new coordinates too, at least on the screen.
* defs.h, influ.c, main.c, map.c, map.h:
Improved Influence-Wall-Collision-Handling. Still not perfect, but growing.
I think the whole function might be completely rewritten in the process...
* init.c, map.c, map.h:
Doors open and close again, but especially there the weaknesses of the
influence-wall-collision handling become apparent. Something has to be done.
* defs.h, influ.c, map.c, misc.c, proto.h:
Influence-Wall collisions are working again, although some fine-tuning should
occur at some point to ensure smooth gameplay.
* ship.c, struct.h, vars.h, view.c, enemy.c, influ.c, init.c,
main.c, map.c, misc.c:
Influ and Enemys now use the new coordinates.
Koodinates (1,1) mean that the influ is in the CENTER!!! of the square (1,1).
EnemyEnemyCollisions currently disabled.
2002-05-25 jprix <johannesprix@users.sourceforge.net>
* blocks.c, defs.h, global.h, graphics.c, init.c, main.c, ship.c, vars.h, view.c:
Activated scaling of blocksize. Its a draft and I cant continue now because
of Ms. Schnedl. To deactivate it, please comment out the last line in
InitNewGame, looking somewhat like "ShowDeckMap()". thanks, jp.
2002-05-25 rprix <rprix@users.sourceforge.net>
* Makefile.am, proto.h:
added SDL_rotozoom.[ch] to Makefile.am,
removed #include "SDL" in proto.h, as it's included in "system.h"
2002-05-25 jprix <johannesprix@users.sourceforge.net>
* map.c, map.h, misc.c, ship.c, takeover.c, vars.h, view.c,
ReplaceIt, ReplaceIt.awk, blocks.c, defs.h, enemy.c, influ.c,
init.c:
Replaced ALL occurenced of BLOCKBREITE with Block_Width and ALL occurenced
of BLOCKHOEHE with Block_Height, using the new ReplaceIt script.
That was smooth!
* SDL_rotozoom.c, SDL_rotozoom.h, ship.c, vars.h:
ShowDeckMap ceased to crash now, but still does not work correctly.
Therefore I added the zoom tools to prepare the function.
* defs.h, proto.h, ship.c, ship.h, text.c, view.c:
GreatDruidShow is working acceptably well again.
* init.c, ship.c, struct.h, text.c, view.c:
Console droid images are displayed correctly again.
The console now uses the jpg images found on a paradroid homepage directly.
Old small bmp images have been replaced accordingly.
* defs.h, ship.c:
Dropped the palette rotation in console.
Different images are used instead.
* ship.c, takeover.c, vars.h, bullet.c, defs.h, init.c, main.c,
misc.c, proto.h, rahmen.c:
Reactivated bullet-bullet collisions, now distance-based instead of pixel-based
as with old grafix engine.
* defs.h, global.h, graphics.c, init.c, keyboard.c, main.c,
misc.c, proto.h, rahmen.c, ship.c, takeover.c, vars.h, view.c:
Improved the rahmen handling: Updated are only done if needed, which is
determined internally.
NEW: DisplayRahmen now also does the text in the 'rahmen'. It should
no longer be needed to call SetInfoline directly. That should be
incorporated into the DisplayRahmen function.
* text.c, vars.h, view.c, defs.h, graphics.c, init.c, main.c,
misc.c, proto.h, rahmen.c, ship.c, takeover.c:
updated the ship graphics to new size.
Made the scrolltext function finally work well.
Removed some old engine code from here and there.
Startet to modify the structure of DisplayRahmen.
2002-05-24 jprix <johannesprix@users.sourceforge.net>
* blocks.c, defs.h, graphics.c, init.c, misc.c, proto.h, ship.c,
takeover.c, text.c:
Restored ScrollText to former glory.
Activated DisplayImage(char * filename).
Reactivated Title image.
* defs.h, init.c, main.c, misc.c, ship.c, text.c:
Reactivated the title signation and ClearUserFenster.
* defs.h:
Acivated "NEW_ENGINE" definition by default in defs.h.
* defs.h, main.c:
Updated my task chart.
* defs.h, graphics.c, main.c, misc.c, proto.h, view.c:
AssembleCombatWindow now accepts some FLAGS which are very convenient,
especially inside Menu functions and all that.
Take a look to inspect them.
The main loop and other loops have been shortend accordingly.
* misc.c, proto.h, view.c:
Restored the escape menu. Needs still some work.
2002-05-23 rprix <rprix@users.sourceforge.net>
* Makefile.am:
o) first step towards proper "install" target: automake-structure is
now better and will install map/ sound/ and graphics/ subdirs under
$(pkgdatadir)/freedroid/ , where the default for $pkgdatadir=/usr/local.
Remains to take account of that in the paths in the code...
o) added check for libpthread _before_ libSDL, as some installations
of SDL seem to depend on the posix-thread library!
2002-05-23 jprix <johannesprix@users.sourceforge.net>
* defs.h, graphics.c, misc.c, proto.h, rahmen.c, view.c:
Reactivated the Escape Menu. Submenus still need work. Rahmen font fine now.
* text.c, defs.h, graphics.c, rahmen.c, blocks.c:
Set the rahmen to the new size.
Now we let X resp. SDL decide about the best video mode: works well!
Adapted the size of digits inside droids.
Added some files that are also used in the homepage.
* blocks.c, init.c:
Addepted software-sided to the new 2 pixel inter-block-distance.
Wow, that was easy!
* defs.h, init.c, svgaemu.c, view.c:
Upgraded code to use 64x64 pixel pixmaps.
* blocks.c, global.h, graphics.c, influ.c, init.c, main.c, misc.c,
takeover.c, view.c:
Started deletion of old engine from the code.
Set default window size to 640x480.
Activated time-wasting scaling EVERY frame, which is bad, but
shows some interesting alpha effect.
2002-05-22 rprix <rprix@users.sourceforge.net>
* play_then_kill_yiff:
not used any more since yiff has been kicked out!
2002-05-22 jprix <johannesprix@users.sourceforge.net>
* init.c:
Updated my TASK_CHART section and resolved conflicts.
2002-05-22 rprix <rprix@users.sourceforge.net>
* takeover.c:
better user-input handling in takeover game allows higher precision
in setting capsules.
-> Pseudo "Key-repeat" sets in after some wait-cycles only, allows better
single-steps
2002-05-21 rprix <rprix@users.sourceforge.net>
* sound.c:
corrected bug with SDL_mixer checking: I had put tests before
inclusion of <config.h>, which doesn't make much sense...
* system.h:
conditional inclusion of <SDL/SDL_mixer.h> only when found by configure!
* sound.c:
conditional compilation now takes accound of configure-defines:
HAVE_LIBSDL_MIXER and HAVE_SDL_SDL_H. If either is missing, sound
is "dummy-compiled", everything should work ok!.
* init.c:
reactivated loading of Title-picture in Old engine
* text.c:
fixed bug in Initial Scroll-text: Text-screen is cleared before
scrolling to avoid "smearing"
* main.c:
default value for global joy_sensitivity = 1.
* keyboard.c:
added Joystick-event reading in keyboard_update(): joystick motion is
simply mapped to Motion-keys and Space.
* joy.c:
complete Joystick initialisation in Init_Joy().
* init.c:
added new switch [-j|--sensitivity=<n>] that changes analog-joystick
sensitivity in the range [0,32].
* global.h:
added global joystick variables relating to joy.c
* enemy.c:
fixed (release-critical) bug in MoveEnemys() that produced
endless-loop if enemy was put on a waypoint with _zero_ connections.
2002-05-21 jprix <johannesprix@users.sourceforge.net>
* sound.c, text.c, graphics.c, main.c, misc.c:
Sound can now really be completely turned of via command line,
which was incomplete.
Corrected the bug in the scrolling text at the beginning. Seems releasable.
* defs.h, graphics.c, influ.c, misc.c, svgaemu.c:
Corrected out some damage done to the old engine while introducing new fonts.
Reactivated palette color operations, which cuts down FPS to about 65 but
Influs color is now always correct.
* init.c, main.c, rahmen.c, text.c, global.h, graphics.c:
Paradroid font funktioniert wieder, wenn auch noch nicht besonders schoen.
2002-05-20 jprix <johannesprix@users.sourceforge.net>
* blocks.c, defs.h, global.h, graphics.c, proto.h, rahmen.c, view.c:
Rahmen is displayed again, although without font.
* blocks.c, defs.h, global.h, graphics.c, init.c, proto.h, ship.c,
text.c, view.c:
the numbers in influ and enemy droid are now visible again.
* defs.h, ship.c, svgaemu.c:
Elevator picture now visible again.
* view.c:
Blasts are visible again. dirty Blast-Bullet collision check disabled.
* view.c:
Bullets are visible again, but bullet-bullet-collision checking remains disabled.
* view.c:
Influencer is now visible again with the ne, but numbers are still omittet for now.
* defs.h, view.c:
Enemys are visible again, although the numbers are omittet for now.
* view.c:
Background scrolling works fully now!
The procedure is very abstract and very powerful in my opinion!
All of the clipping is done via SDL and its clipping capabilities.
I hope the SDL knows what to do and their code is really bugfree!!!
But it seems so.
* misc.c, view.c:
Map now visible again with the new engine. Movement and enemys and that
also runs well since there were no changes to this part.
* graphics.c, main.c, map.c, proto.h, view.c:
Renamed GetInternFenster into Assemble_Combat_Picture, which will do the
assembling of the screen, but not into some internal window but rather into
the ne_screen. PutInternFenster will be a dumb return and updating of the
screen can be done via SDL_Flip later.
* graphics.c, init.c, rahmen.c:
Added some more conditional compilations for the new engine.
Deactivated the termination after InitPicutres.
2002-05-20 rprix <rprix@users.sourceforge.net>
* init.c, struct.h, takeover.c, vars.h, blocks.c, defs.h, global.h, graphics.c:
continued work on NEW_ENGINE: InitPictures now loads in some blocks
into SDL_Surface ne_blocks, using ne_get_blocks() that returns a
SDL_Rect array with the block-positions.
Old and new engine still compile and run ok.. well the new one doesnt
actually do much though.. ;)
* Makefile.am:
included joy.c in files to compile
* joy.c, proto.h:
added for Joystic/Gamepad code, has only Init_Joy() at the moment
(and doesnt detect my USB Logitech Gamepad yet! ;)
2002-05-20 jprix <johannesprix@users.sourceforge.net>
* bullet.c, init.c, main.c, misc.c, proto.h, sound.c, struct.h, view.c:
Removed more bugs from the TODO buglist.
* defs.h, enemy.c, global.h, influ.c, init.c, misc.c, struct.h,
svgaemu.c, vars.h:
Corrected the way PermanentHealRobots treats droid: Now the framerate is
taken into account. Also adapted some associated constants.
* misc.c, proto.h, sound.c, system.h, defs.h, main.c:
I have thrown out all yiff code. rp now can also remove the checks for
yiffs libraries and the linking of yiffs libraries, hoho.
2002-05-19 jprix <johannesprix@users.sourceforge.net>
* sound.c:
The sound FX and BG music volume can now be conveniently set via the escape menu.
The game also does not terminate any more even when there is real
shortage of free channels.
Is it time to dump the yiff? It seems so.
* bullet.c, view.c:
Moved stupid flash-damage-handling from PutBullet to CheckBulletCollision,
where the rest of the bullet-collisions and bullet-damage is handled.
Corrected the way full sound buffers are treated by Freedroid: Full buffers
will now not lead to termination of the program although warning messages
are generated.
* blocks.c, sound.c, view.c:
Reactivated ConceptView. Very handy for overview about level and RecFlashFill!
* sound.c:
Sound effects are now also played successfully by the SDL MIXER library.
Error checking, handling and prevention could still need improvement however.
* sound.c:
All background music files are now loaded and played successfully via
the SDL_MIXER sound library. Cool!
* sound.c:
SDL_Mixer is now successfully playing the background music! Hurray!!
At least on my system. (rp must add -lSDL_mixer as linker option in general.)
* graphics.c, init.c, proto.h, sound.c, system.h:
In addition to new? video initialisation via Init_Video() now audio
initialisation is done via Init_Audio() in a similar fashion, nice and
clean for the caller in init.c. All conditionals are handled inside.
* defs.h, graphics.c, init.c, misc.c, proto.h, sound.c:
Started transfer to SDL_AUDIO instead of the YIFF.
Variable USE_SDL_AUDIO controls the use of YIFF or NON-YIFF.
* influ.c:
Influcolor palette manupilations every frame turned off now by default.
* graphics.c, keyboard.c, misc.c, sound.c:
Removed the initialisation of SDL_TIMER, so that yiff can be started again.
* graphics.c, influ.c, misc.c:
Removed calls to svgalib dummy functions removed by rp before.
2002-05-19 rprix <rprix@users.sourceforge.net>
* misc.c, proto.h, ship.c, svgaemu.c, text.c, vars.h, view.c,
map.c, keyboard.c, main.c, blocks.c, bullet.c, colodefs.h, defs.h,
global.h, graphics.c, init.c:
mainly started writing new engine, aktivated by #define NEW_ENGINE.
Old Code runs ok, new code compiles but doesnt work yet...
2002-05-19 jprix <johannesprix@users.sourceforge.net>
* influ.c, keyboard.c:
Resolved the strange WEAPON-mode--framerate-bug: Influ color is now not
set every frame which gives us DOUBLE FRAMERATE!! cool, isn't it?
* influ.c, sound.c:
Added extensive error docu and error explanation if there ever should be
a problem with the yiff and how to resolve it. This was a "release-critical"
bug, that I consider now fixed. Tell me if you are of different oppinion...
* defs.h, influ.c, main.c, ship.c:
Added framerate computation via SDL. Gives very much the same results as
the old code using gettimeofday. A switch USE_SDL_FRAMERATE has been added
in defs.h to allow for convenient switching between the two methods.
* defs.h, global.h, graphics.c, keyboard.c:
Removed a nonexisting picture from the code.
2002-05-18 jprix <johannesprix@users.sourceforge.net>
* sound.c:
More updates to the sound files.
* sound.c: Cleaned up sound files...
* sound.c: Deleted unused sound files.
* sound.c:
cleaned up more sound files...
* sound.c:
further restructurated sound files...
* sound.c: Cleaned up sounds some more.
* sound.c:
Changed some sound files and removed obsolete sounds.
* defs.h:
Removed another obsolete graphic.
* misc.c, text.c, main.c:
Removed?? the "GetChar" bug? Remove an obsolete graphic.
* ship.c:
removed some obsolete graphics. Console looks now quite clean to me.
* ship.c:
Removed some obsolte graphics. Modified console a little.
* keyboard.c:
Mainly updated the Homepage and added cleaned-up screenshots. (one less ;-) )
2002-05-17 rprix <rprix@users.sourceforge.net>
* Makefile.am:
included maped.h, for distribution and dependencies
* oldcode.c: shouldn't really be in CVS.
!! * If you want it, please keep a local copy * !!
i.e. rename it _before_ you do cvs update !!
(otherwise check out the previous revision with cvs update -r<rev>
* text.c, view.c:
mainly cleanup and reduced used of Real/Internal Screen.
* takeover.c:
- new Infoline-treatment (SetInfoline(r,l))
- greatly reduced use of obsolete Real/InternalScreen variables
instead of Outline320x200. (Only remains are in GetTakeoverGraphics())
* svgaemu.c:
- some "clean-up" (removed some DebugPrintf's)
- some formatting to make it more readable
* ship.c:
- New Info-line handling (SetInfoline(l,r))
- reduced use of Real/InternalScreen in favor of Outline320x200.
- some clean-up
* proto.h:
Infoline-handling now down solely by SetInfoline(left,right)
* map.c:
uncommented un-defined use of EditTextInfo which only worked in -O2
compilation.
* main.c:
mainly cleanup, plus take account of new Infoline-handling via SetInfoline(l,r).
* keyboard.c:
made deprecated KillTastaturPuffer() complain about being obsolete when called.
* init.c:
Re-activated printing of PACKAGE and VERSION when command-line option
[-v|--version] is given. This should now even work on obsolete
build-environements (-> jp ;)
* graphics.c:
some cleanup, and SwapScreen() and WaitVRetrace() are deprecated and
will complain about being obsolete when called ;)
* global.h:
some cleanup, and junked now obsolete LeftInfo[50], and RightInfo[]
globals.
* defs.h:
added Infoline-defines from rahmen.h into here, because some are
needed in global.h.
* rahmen.c:
All infoline-functions have now been reduced to only one:
(replacing SayLeftInfo(), SayRightInfo() and UpdateInfoline())
SetInfoline (char *left, char *right), which is given the
strings left,right to be displayed in the Infoline.
When NULL is passed, this displays the defaults i.e. Me.status left
and Score right.
NOTE1: this function only acts on Outline320x200 and does not update
the actual screen, so you have to call PrepareScaledSurface(TRUE) later.
NOTE2: DisplayRahmen() now just does that, no Infoline is added and
the actualy screen is not updated either.
* maped.h: added Copyleft to maped.h
* maped.h:
removed all the nasty ^M 's at the line-endings...
2002-05-17 jprix <johannesprix@users.sourceforge.net>
* influ.c, init.c, takeover.c:
Cleaned the Rahmen during the Takeover game (that was easy, haha)
* global.h:
Changed Highes/Lowest/Greatscore data type to float, like RealScore is.
This seems to have removed the "GetChar"-bug in Debriefing!
* main.c, proto.h, ship.c, text.c:
Cleaned up Console: Its now really working well.
Cleaned up the font colors in Debriefing. Seems a little bit better this way.
* maped.h:
Forgot to add the (slighly modified, but otherwise old) maped.h too :-)
* map.c, misc.c, proto.h:
Added Save function to the level editor (now working completly correct,
but also not crashing).
2002-05-16 jprix <johannesprix@users.sourceforge.net>
* colodefs.h, init.c, main.c, oldcode.c, proto.h, rahmen.c,
ship.c, ship.h, text.c:
Cleaned up the Rahmen and the console. Not flawless, but rather clean now.
* keyboard.c, main.c, proto.h:
The cheat menu is now hid a little bit better: The new key to enter is
SHIFT-CTRL-ALT-C. I hope thats enough. We could also demand left AND right
shift and control and alt keys to be pressed, but for now I think its ok.
* influ.c, oldcode.c, struct.h:
Ahhhh, I finally managed to cleanly correct the bug that sometime
boxed you around, sometimes even threw you out of the ship. At
least on my machine is works fine now.
* keyboard.c, misc.c, proto.h:
Added better keyboard handling and even more level editor functionality.
* defs.h, keyboard.c, map.h, misc.c, proto.h:
Added more level editor functionality.
2002-05-16 rprix <rprix@users.sourceforge.net>
* Makefile.am, graphics.c, init.c, main.c, proto.h, rahmen.c, ship.c, text.c:
changed #includes and Makefile acccording to renaming:
para.c -> main.c
paratext.[ch] -> text.[ch]
paravars.h -> vars.h
parainit.c -> init.c
* text.h:
renamed "text.h" from "paratext.h"
* global.h:
taken account of new _file_ext #defines due to renaming of para.c,
paratext.c, paravars.h, parainit.c
* text.c:
renamed "text.c" from "paratext.c"
* init.c:
renamed to "init.c" from "parainit.c"
* main.c: renamed "main.c" from "para.c"
* paravars.h: * Renamed to "vars.h" !!
* paratext.h, text.h:
* Renamed to "text.h" !!
* paratext.c: * Renamed to "text.c" !!
* parainit.c: * Renamed to "init.c" !!
* para.c: * Renamed to "main.c" !!
2002-05-16 jprix <johannesprix@users.sourceforge.net>
* misc.c:
Started Level editor, invokable via Options/Escape Menu.
* svgaemu.c, global.h, init.c, main.c, misc.c, oldcode.c, para.c,
parainit.c, paratext.c, proto.h, sound.c, text.c:
Further completed the options menu.
Cleaned up some sound code.
2002-05-15 rprix <rprix@users.sourceforge.net>
* main.c, misc.c, para.c, paratext.c, system.h, takeover.c, text.c:
improved GetString() somewhat.
2002-05-15 jprix <johannesprix@users.sourceforge.net>
* init.c, main.c, para.c, parainit.c, sound.c:
Added TODO stuff.
Sound effect volume adjustment now completely operational.
2002-05-15 rprix <rprix@users.sourceforge.net>
* init.c, parainit.c, takeover.c:
takeover game now runs at constant timing-speed... ouff
2002-05-15 jprix <johannesprix@users.sourceforge.net>
* global.h, init.c, misc.c, parainit.c, proto.h, sound.c, svgaemu.c:
Added gamma corrections for to options menu.
Added background volume adjustment to the options menu.
Added full screen toggle to the options menu.
Added Mission instructions to the single player menu.
Added Framerate display option to the options menu.
* proto.h, main.c, misc.c, para.c:
Enlarged the options menu.
2002-05-15 rprix <rprix@users.sourceforge.net>
* misc.c:
fixed jp's bug in "stuck" options menu: Have to set Weiter=TRUE to get
out of it!! ;-)
* global.h, graphics.c, init.c, main.c, misc.c, para.c,
parainit.c, proto.h, ship.c, takeover.c, takeover.h:
-minor cleanup: remove obsolete InterruptInfolineUpdate,
Monitorsignalunterbrechung(), NOJUNKWHILEINIT, MODSCHASEIN,
+ several useless DebugPrintfs()
- started proper timing control in Takeover game, only implemented
yet for Color-choosing sequence.
* system.h:
*@argh!! forgot to bloody check the bloody file in, dammit!
2002-05-15 jprix <johannesprix@users.sourceforge.net>
* BFont.c, BFont.h, graphics.c, main.c, misc.c, para.c, proto.h, view.c:
Extendes the options menu. The problem of "stuck" escape key persists and
remains not understood by me.
2002-05-14 rprix <rprix@users.sourceforge.net>
* keyboard.c, main.c, para.c:
fixed bug in getchar_raw () that could cause "stuck keys"
slightly modified Pause-function, leaving now always via "Space"
* added BFont.c and BFont.h to Makefile.am
system-wide includes are now all in "system.h"
SDL-headers now included as <SDL/SDL.h>, to allow installation-path indep.
Project name now more consistently "Freedroid" rather than "FreeDroid".
2002-05-14 jprix <johannesprix@users.sourceforge.net>
* BFont.c, BFont.h, global.h, graphics.c, init.c, main.c, misc.c,
para.c, parainit.c, paratext.c, proto.h, ship.c, svgaemu.c,
takeover.c, text.c, view.c:
Options menu is now based on great new fonts and therefore MUCH more flexible
than the old structure that used one fixed image for the menu.
2002-05-14 rprix <rprix@users.sourceforge.net>
* ship.c:
properly wait for Space Press/Release at Deck-view in Console.
* bullet.c:
included <stdlib.h> for abs()
* blocks.c, enemy.c, ship.c, svgaemu.c, takeover.c:
minor modifs: - some cleanup, e.g. line-breaks in comment-blocks
- removed some (now) useless DebugPrintf()'s, now
deprecated as we can properly debug with gdb.
* view.c:
include <string.h> for memset() and memcopy() functions
* proto.h:
Flimmern() now takes an argument, GetString() now has 2. Added getchar_raw().
* paratext.c, text.c:
_completely_ rewritten GetString() (and hope nobody has seen the
old code... lol ;).
GetString now has _2_ arguments: MaxLen, and echo. The new argument
"echo" switches between no echo (echo=0), printf-echo (echo=1) and
SDL DisplayText (echo=2).
I'm afraid there might be a bug somewhere in there, as Debriefing()
now sometimes SegFaults, using this new functions. I'm working on it!
* init.c, parainit.c:
escaped multi-line string constants, as gcc-3.0 doesn't like them
unescaped any more.
* main.c, para.c:
- adapted Pause() and ShowHighscoreList() to use the new
getchar_raw() and generally SDL.
- minor modifs mainly for consistency with my other global modifs, i.e.
use_fullscreen -> fullscreen_on, second argument to GetSting() in
Debriefing, ...
* misc.c:
adapted Cheatmenu() to SDL_ libs: output is now done simply via
printf(), which shows the Cheat-menu in the text-window, while
keyboard input is done vie getchar_raw() using SDL. This should be
quite ok for a cheat-menu, which is intended for developers, not for
users anyway... ;)
This should now be 99% functional, please add/remove functionalities
as needed.
* map.c:
- fixed bug in GetCrew() that lead to "strange" 001 enemys and 5xx
numbers on yellow deck etc.
- Remove some (now) useless DebugPrintf's. Since SDL, we can actually
use a proper debugger and should reduce the use of DebugPrintf to an
absolute useful minimum.
* graphics.c:
choice of Flimmer-type is now passed as an argument to Flimmern(),
which might be useless but at least gets rid of the #ifdef conditional
compilation, and allows to try different ones before maybe chosing just one.
* keyboard.c:
added a new function, getchar_raw(), which allows to get the character
of the _next_ key pressed in a similar way getchar() does, but working
under the raw SDL keyboard mode. This is used in the new GetString()
function, and should generally come quite handy, I hope.
* global.h:
changed global toggle "use_fullscreen" to canonical name "fullscreen_on".
I recommand using this canonical form for future global toggles.!
* TAGS:
TAGS file should be produced locally, and by using the command
make tags
2002-05-14 jprix <johannesprix@users.sourceforge.net>
* paratext.c, ship.c, svgaemu.c, takeover.c, text.c, view.c,
blocks.c, graphics.c, keyboard.c, map.c, misc.c:
Erradicated the last real SVGALIB dependencies and includes.
Added the link to SDL_Paradroid to the homepage.
2002-05-12 jprix <johannesprix@users.sourceforge.net>
* keyboard.c:
Added a screenshoot function, that is accessible via the p key.
I hope I didn't mess anything up, because the server says I modified
EVERYTHING. Lets see...
2002-05-11 jprix <johannesprix@users.sourceforge.net>
* init.c, main.c, para.c, parainit.c, ship.c:
resolved some warnings about gettimeofday.
* graphics.c, misc.c, oldcode.c, proto.h, rahmen.c, view.c:
Removed all remaining putpixel calls from FreeDroid.
* blocks.c, oldcode.c:
putpixel(...)-calls entirely deleted from module blocks.c.
* blocks.c, graphics.c, oldcode.c:
Removed a bug in the new DisplayBlock routine that didn't display
the elevtor picture.
* graphics.c, oldcode.c, svgaemu.c:
Added an icon and a window title for FreeDroid.
Also moved some unused but perhaps not yet useless code to the new module
oldcode.c. PLEASE DO NOT INCLUDE OR COMPILE OR LINK THIS FILE. THANKS.
* blocks.c, init.c, parainit.c, rahmen.c, svgaemu.c, view.c:
Started a new way to assemble the internal picture before it is drawn to
the screen: Now picture assembling is done in program memory, not in an
SDL screen called "screen". The new working field is names
"Outline320x200" cause its the outline of what we later want to bring to
the screen and cause its size is 320x200. putpixels should NEVER again
occur this way, not even in svgaemu.c, where PrepareScaledWindow has been
patched allready.
* blocks.c, global.h, paratext.c, rahmen.c, text.c, view.c:
Resolved some conflicts, where there were local variables "screen"
logically conflicting with global variable "screen".
Turned off RotateBulletColor() and voila, 30 FPS at least again.
2002-05-10 jprix <johannesprix@users.sourceforge.net>
* svgaemu.c:
Improved the technical details of PrepareScaledSurface: This saves about
15% time for improved framerate.
2002-05-10 rprix <rprix@users.sourceforge.net>
* TAGS: minor modifs
* svgaemu.c:
slightly changed the handling of the use_fullscreen toggle.
* struct.h:
extended struct ship with num_levels, num_lifts, num_lift_rows
members, which replace the now obsolete LevelsOnShip
* ship.h:
we now reserve the following Palette ranges:
190 (EL_BG_COLOR),
191-220 (EL_FIRST_LEVEL_COLOR - EL_LAST_LEVEL_COLOR) for the
MAX_LEVELS level-colors
221-236 (EL_FIRST_ROW_COLOR-EL_LAST_ROW_COLOR) for the MAX_LIFTROWS
lift-rows.
This corresponds to the MAX_LEVELS=29 and MAX_LIFTROWS=15 settings in
defs.h and we hope this will be sufficient for future ships...?!
* ship.c:
removed the "ship-puzzle", where we composed the ship-view by small
blocks, which now greatly simplifies this piece of code.
Activated correct coloring of lift-rows and levels, using the _new_
Palette range reserved for this (see ship.h).
* init.c, parainit.c:
extended/replaced Johannes' command-line code (sorry ;), and added the
new options [-f|--fullscreen] and [-w|--window], with corresponding
help-message. We use the toggle "use_fullscreen" rather than
"FullScreen_Requested_By_Player_Tired_of_Playing_in_Window"... (lol ;)
+ Use of new ship-struct members.
* main.c, para.c:
set default value for use_fullscreen to FALSE (for easier debugging)
* map.c:
use now ship-defines MAX_LEVELS, MAX_LIFTS and MAX_LIFTROWS.
* graphics.c:
we now longer read the (now) obsolete ELevator-blocks, which were used
to "puzzle" together the ship-view. Instead, the complete ship-picture
is loaded. Coloring of levels and lift-rows is done via color-palette.
* global.h: added use_fullscreen toggle.
* defs.h:
- new #defines MAX_LIFTS, MAX_LEVELS and MAX_LIFTROWS for upper
limits of lifts (formerly known as 'elevators'), levels and lift-rows
on any ship.
- removed ALLLEVELS, MAX_LEVELS_ON_SHIP and ALLELEVATORS.
The new defines are now used consistenly everywhere.
* colodefs.h:
removed EL_* (elevator) color-definitions, they now stand all in
ship.h.
* blocks.c:
corrected bug in DisplayBlock(): source++ was _before_ putpixel
(should came after it)
* Makefile.am:
new Makefile which includes svgaemu.c in order to allow
compilation...
2002-05-09 jprix <johannesprix@users.sourceforge.net>
* graphics.c, init.c, main.c, para.c, parainit.c, takeover.c:
Removed the delay command from Takeover function. Still it is incredibpy slow!
Removed the bug, that the -f command line option didn't work.
* defs.h, graphics.c, init.c, keyboard.c, main.c, misc.c, para.c,
parainit.c, svgaemu.c:
Added command line switch for fullscreen mode. (strange: only work
in long form?) Removed the lag at the beginning of the game
menioned by Reinhard. Added the new constand SCALE-FACTOR, that
lets you decide between x2 and x3 magnification.
* graphics.c, ship.c:
Deactivated the too slow unfading of levels after leaving the elevator.
This will be good to avail annoyed players for the new X11 release
to be coming soon.
* graphics.c, paratext.c, ship.c, text.c:
Ported Konsole to new Scale-Structured X11.
* graphics.c, keyboard.c, main.c, para.c, paratext.c, proto.h,
svgaemu.c, text.c, view.c:
Portet SetUserfenster, GetString and the Debriefing and the
Flimmern function to X11.
A lot of new keys are now accessible via the usual ?Pressed() functions.
* graphics.c, init.c, parainit.c, paratext.c, svgaemu.c, text.c:
Added comments about BULLETCOLOR rotation to be removed sooner or later.
* graphics.c, init.c, parainit.c, paratext.c, ship.c, svgaemu.c,
takeover.c, text.c:
Takeover and Title screen are now visible again, hey that rhymes.
* graphics.c, main.c, para.c, view.c:
Corrected the color handling. Patched the too low framerate-constant at the
beginning. Incorporated PrepareScaledSurface into PutInterFenster.
* svgaemu.c:
Forgot to add this last file for the transfer to X11. Hope all is well...
* paratext.c, proto.h, ship.c, text.c, view.c, blocks.c, defs.h,
global.h, graphics.c, init.c, keyboard.c, main.c, map.c, misc.c,
para.c, parainit.c:
The game now runs under X11 using the SDL. (Thats why the many changes.)
2002-05-09 rprix <rprix@users.sourceforge.net>
* view.c:
mainly eliminated use of BeamLine in PutOject().
introduced use of some new gl_ svgalib functions, although Johannes
will throught them out immediately again... hope this will not cause
too many conflicts...
* takeover.c:
ShowPlayground(): takeover game now uses "frame-buffering"
(via InternalScreen) as well, for a smooth display.
* init.c, parainit.c:
-removed BeamLine, and added initialisation of Random-number generator
to make sure the game-beginning is really random too
* misc.c:
mainly re-written MyRandom(). This function is now tested to give equally
probable integer numbers in the range [0, Obergrenze].
* influ.c:
removed use of global variable BeamLine
* graphics.c: changed some comments.
* global.h:
removed useless (I hope ;) global variable BeamLine
* enemy.c:
- better waypoint-treatment should get rid of "ghost"-enemys going
through walls to (0,0).
- removed all reference and use of the global variable BeamLine, which
seemed rather useless... (I hope)
* defs.h:
added macros Grob2Fein(x) and Fein2Grob(x) for easier conversion between
Fein<-->Grob coordinates.
Note: for simplicity these macros can be used for x and y coords,
as long as BLOCKHOEHE=BLOCKBREITE, which is ok for the moment, but might
change in the future
However, a new concept for these grob/fein coordinates might be necessary
anyway, as it seems currently too specific to 320x200 resolution...
2002-05-08 jprix <johannesprix@users.sourceforge.net>
* influ.c, ship.c:
Calibrated the effect of the refresh field: more refreshment, same price.
Cleared out the bug, that the status line remained dead after visition Consoles.
* init.c, parainit.c:
Filled the AUTHORS file with something sensible (like others did)
Commented out the PACKAGE_STRING again.
2002-05-07 rprix <rprix@users.sourceforge.net>
* init.c, parainit.c:
re-activated output of Version information with --version.
Note: PACKAGE_STRING must be #defined in your config.h file. Make
sure you re-run aclocal, autoheader, autoconf, automake if not. If
this #define is still missing in your config.h, your gnu-build
environement might be broken, or you have to update it...
2002-05-07 jprix <johannesprix@users.sourceforge.net>
* init.c, main.c, para.c, parainit.c, rahmen.c, sound.c, view.c:
Added more TitleText information, also about the controls of the game.
There might, no there will, be people, who NEVER heard of paradroid.
Removed the frame-rate-debug information that made the screen ugly.
Remove a SegFault cause: High-Score name freed after it is displayed!
2002-05-07 rprix <rprix@users.sourceforge.net>
* enemy.c, global.h, init.c, main.c, map.c, misc.c, para.c,
parainit.c, takeover.c:
- some additions to Cheatmenu, in order to help track problems
with map & "ghost robots"..
- added command-line option [--debug|-d[=LEVEL]] to switch on
output of debug-messages (files currently gets *HUGE* very fast,
so this should only be used when needed!) debug-levels supported
_in principle_, but only ON/OFF (i.e. 0, >0) implemented
- Takeover game now non-transparent by default (looks much better ;)
2002-05-06 jprix <johannesprix@users.sourceforge.net>
* init.c, main.c, misc.c, para.c, parainit.c, paratext.c, proto.h, text.c:
Added improved check for nescessary line-feeds. Now it is no longer nescessary
to add a \n in any text to be displayed by DispalyText or
ScrollText but the functions will do line breaking themselves.
Removed all \n from Title Texts and Console Texts. This will be
much more convenient when changes are made to the text and
guessing the right time for a line feed can be omitted. Added a
missing letter in the fontpicture also.
2002-05-05 jprix <johannesprix@users.sourceforge.net>
* Started an EndTitle function that will be called as soon as all robots aboard
the ship are dead. (The armageddon-cheat-option is very convenient to achieve
this.) This new function also displays part of the new story line.
* Corrected the SegFault bug that came from too little accocated memory for the
text describing druids at the console, that faulted if 999 was displayed.
Now that Bug should be fixed.
* view.c:
I activated a security check: PutEnemy now sets the type of the druid to 001
whenever it encouters a druid with illegal type. Please note,
that this is only a dirty workaround and not a solution to the
problem, which in my opinion is due to the DOS-TO-UNIX conversion
problems of out ship- crew- and map-files, that cause some (the
last or first most likely) entrys to contain junk. However the
SegFault bug for now disappears.
* Tracked a Segfault bug: The cause seems to be a druid of type 33 where we
know only 24 different druid types. Asked Reinhard to correct the bug.
Added a lot of additional debug messages and security checks in the process.
* Added some new sounds and imroved the sound behaviour in takeover game.
Also improved the flash behaviour, mainly the too short optical effect.
* Calibrated one but one very important constant for framerate
computation, that will staightens out the last time-distorting
after longer delays. The only other time-distortion can happen at
the very first beginning of the game, where no data on the
framerate to be expected is yet available. I think that is
tolerable. jp.
2002-05-04 jprix <johannesprix@users.sourceforge.net>
* Inproved collision behaviour: multiple collisions (immediately
destroying influ) should no longer occur. Improved wait, firewait
and aggression behaviour of druids. Seems pretty much like the
original now, although I don't have the original game or even an
emu installed.
* Since there were some unsmoothnesses in the flow of the game,
that had to do with framerates and distorted framerates I
corrected the flaw. Apart from that there is now a function
called Activate_Conservative_Frame_Computation(); that should be
called whenever the game flow is stopped for possibly longer
periods of time, e.g. in elevators, consoles, takeover, options
menu, debug menu. The new code seems to work pretty well, at
least on my machine.
* Now different sounds for different bullet types are implemented.
* Takeover game has now more sounds, although these sounds could
perhaps use improvement.
* Corrected the bug, that the influ is in transfermode by default
when coming out of the elevator, thereby often initiating
unintended takeover of inferiour droids.
* Redid the TRANSFERCOUNTER code to make it frame_dependent (and useful again).
* Further improved the official menu, that is accessible via ESCAPE key.
2002-05-03 jprix <johannesprix@users.sourceforge.net>
* Added a preliminary options menu, that is of course not fully
functioning yet. The menu is accessible via the escape key.
Since this is not some debug window, it is intended to be
graphically impressive.
2002-05-02 rprix <rprix@users.sourceforge.net>
* o) 'GNU-yfied' whole source by indent. Please try to stick to
these conventions too (by imitation, or by using indent). Ok,
this is not compulory but it makes reading the code easier.
o) sound_on is now checked _by_ the sound-functions, not by the caller!
Yiff is unconditionally initialised: this allows switching on/off
of sound in real-time. Unfortunately this does not yet work for the
background music, maybe Johannes can implement something along these
lines..?
o) can't remember what else I did, probably nothing important... ;)
2002-05-02 jprix <johannesprix@users.sourceforge.net>
* sound.c:
deleted more unused sound code. improved debug logging a little bit more.
* sound.c:
added more doku to sound.c and remove some old unused code.
2002-05-01 rprix <rprix@users.sourceforge.net>
* o) changed all possible printf() statements into DebugPrintf()
o) Transparent takeover game now works nicely, but is it really useful? :|
2002-05-01 jprix <johannesprix@users.sourceforge.net>
* Added more and better debugmessages for better tracking of the
latest background music problem. However I am not sure I
understand it yet. I hope the new debugmessages help a bit.
2002-05-01 rprix <rprix@users.sourceforge.net>
* takeover.c:
fixed Bug in ShowPlayground() that caused a seg-fault when Takeover game
was finished (sorry ;)
2002-05-01 jprix <johannesprix@users.sourceforge.net>
* Set release nr. to 1 in configure. Still had to comment the
"PACKAGE_STRING" line out in parainit.c in order to have it
compile. Can someone else verify the crash related to sound? I
seem to be unable to reproduce the bug.
2002-05-01 rprix <rprix@users.sourceforge.net>
* init.c, parainit.c:
Version and Package name output by --version are now set by configure!
Ideally the _only_ place to set version+name should be configure.ac .
* takeover.c:
o) added transparancy to takeover game (is not finished yet). I'm not sure
if that will be usefull, but one only has to do a SetUserfenster(color)
at the beginning to remove transparancy ...
o) jp has slightly messed up the code when adding his sound-effect
this could not possibly have compiled like that??!!
* map.c:
fixed mini-bug in TranslateMap() (NewBlock was not initialised)
* defs.h:
why not try the new title-picture? (at least it gives the right _name_!)
2002-05-01 jprix <johannesprix@users.sourceforge.net>
* More debug messages added, while trying to track a reproducable
segfault bug.
* ship.c:
Erredicated the bug in the GreatDruidShow keyboard controls.
* Takeover game now has more sound.
* Improved Background sounds: More sound files + Background music
can be switched easily. Takeover, Console, Title and Combat each
have their own background music.
* Refreshes now rotate at a adecent speed AND also work at decent speed.
Score is reduced in a moderate amount.
Made some corrections to the "Rahmen": It now is displayed sans
red box around it.
2002-04-30 jprix <johannesprix@users.sourceforge.net>
* Corrected the bug, that was recently made into SetUserfenster,
when rp ported the function. Corrected the bug, that was in
ClearUserFenster, where the order of parameters was mixed up,
which made a setmem call useless.
* Refresh fields rotate now at the right speed. (Their effect and
scoredrain isn't fixed yet.) Corrected the bug of missing robot
rotation after the influ has been defeated.
2002-04-30 rprix <rprix@users.sourceforge.net>
* ported the SetUserfenster() function in view.c to use vgalib.
Takeover game now finished as far as the original version is concerned.
2002-04-29 jprix <johannesprix@users.sourceforge.net>
* bullet.c,
view.c:
Robot blast damage now functioning correctly (same as influencer).
Influencer takes the right amount of damage when hit by bullets.
Improved Homepage a (little) bit.
* Corrected the version number in the title screen.
Fixed the bug, that influencers damage from bullets was random.
* Erradicated some (justified) warnings. Adapted some
robot-related constants. BTW, the autoconf/automake STILL does not
produce -Wall switch for the makefile in /src.
2002-04-28 rprix <rprix@users.sourceforge.net>
* blocks.c,
takeover.c:
fixed small bug in DisplayMergeBlock(): source++ came _before_
check on TRANSPARENTCOLOR resulting in display Problems in
takeover-game. Takeover-game now well adjusted. Still lacking a
uniform Color background. what function to use?
2002-04-28 jprix <johannesprix@users.sourceforge.net>
* Redid the somewhat flaky mathematics of enemy fire. Enemy
robots are now perfect marksmen. They always hit (allthough they
do not consider current movement of the influencer but rather
shoot at his current position). They never hit themselves,
although it can happen, that two bullets are fired to shortly
after each other, colliding and creating a blast that can harm the
enemy. But that is seldom happening and also happening in the C64
version, as far as I know. Game fun is drastically increased with
such enemys! Hoa! Cool! See ya, jp.
* Cleaned up the console, especially the "GreatDruidShow".
Allthough some minor flaws still exist, I find that it looks quite
passable. Come and see for yourself.
* Erased a stupid segfault due to unincluded headers due to
insufficient compiler warnings! Please someone sooner or later see
to that the autoconf/automake generated appropriate compiler
switches that cause maximal warnings! Thanks,jp.
* ship.c, view.c:
All druidimages should now be displayed at the console.
However, slight color distortions may still occur in some druidimages.
They are only minor however and should disappear, when the graphics are
worked over or if we set the vga palette separately. Do that if
you feel like it...
* Code added to read in the images of the druids for the console depiction.
Modifications were made to the image files go get their properties right...
Work is still left to do there.
* Since Reinhards new DisplayMergeBlock function tended to segfault because of
uninitialized pointers, I corrected the little mistake and also added some new
function "DebugPrintf" that should be used throughout the code for debug-messages,
CONSISTING ONLY OF ONE STRING, so that we can conveniently turn on and off the
crowd of debug messages as desired with one little switch in
misc.c. Have fun, jp.
* sound.c:
Added and activated GotHitSound produced by incoming bullets.
* graphics.c:
Portet the old "Flimmern" function to use svgalib calls instead of
writing to memory.
* Redid some of the old unelegant sound code. Its now much
shorter, more elegant and new sounds can be added much easier than
before. Some new sounds added as well.
2002-04-28 rprix <rprix@users.sourceforge.net>
* Command line parsing now works. Currently implemented [-v | --version]
[-? | -h | --help], [-q | --nosound ], [-s | --sound] (default),
[-t | --timeout=SECONDS ] ... sets alarm - timeout for debug purposes.
See the function parse_command_line() in parainit.c and "man getopt"
if you want to add further functionality.
* Takeover game now nearly perfect, uses only *our* graphics of to_elem.pcx
(-> no copyright problems...). Background still needs to be cleared...
* blocks.c:
DisplayMergeBlock() now ported (in analogy to DisplayBlock())
2002-04-28 jprix <johannesprix@users.sourceforge.net>
* Improved the sound a bit more....
2002-04-27 jprix <johannesprix@users.sourceforge.net>
* Improved the sound a bit: blasts and refreshes and elevators now
produce sound! have fun.
* Added some new sounds. Sound active as default.
2002-04-25 jprix <johannesprix@users.sourceforge.net>
* sound.c:
Sound working again! Jiippiiiee!
2002-04-24 jprix <johannesprix@users.sourceforge.net>
* sound.c:
Tried to correct the sound bug. Had to do it blindly, for the
project doesn't compile at my machine at the moment.
So, good luck everybody with the changes I made...
2002-04-22 rprix <rprix@users.sourceforge.net>
* nosound.c:
nosound.c is redundant now, conditional compilation in sound.c
* Makefile:
Makefile is now _built_ by configure, should _not_ be checked in.
* NEW Project NAME: FreeDroid (aka freedroid-0.6.0).
All c-files now include <config.h>, built from configure
* sound.c:
uses #if HAVE_LIBY2 from <config.h> to compile conditionally, depending on
presence of Yiff-library as detected by configure.
* Makefile.am:
Main source-files of the GNU build environement.
Run autoconf and automake to obtain the configure-script.
|