s2ext

Bitte logg dich ein oder registriere dich.

Einloggen mit Benutzername, Passwort und Sitzungslänge
Erweiterte Suche  

Neuigkeiten:

Fehler und Spammer oder Probleme beim Login hier melden.

Autor Thema: DISKUSSION: Modifikation von Standardobjekten aus S2Ext  (Gelesen 51125 mal)

Quester

  • Newbie
  • *
  • Beiträge: 505
Re: DISKUSSION: Modifikation von Standardobjekten aus S2Ext
« Antwort #165 am: November 13, 2010, 20:10:08 Nachmittag »

« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Dunkler Lord

  • Newbie
  • *
  • Beiträge: 23
Re: DISKUSSION: Modifikation von Standardobjekten aus S2Ext
« Antwort #166 am: November 13, 2010, 20:10:37 Nachmittag »

« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Blue-Sky

  • Newbie
  • *
  • Beiträge: 36
Re: DISKUSSION: Modifikation von Standardobjekten aus S2Ext
« Antwort #167 am: November 22, 2010, 17:06:45 Nachmittag »

loadmap
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Anonymous

  • Newbie
  • *
  • Beiträge: 1.610
RE: DISKUSSION: Modifikation von Standardobjekten aus S2Ext
« Antwort #168 am: Juli 24, 2011, 13:36:46 Nachmittag »

Code: (text) [Auswählen]
  1. ######1210 - Hhlensystem (Mine)
  2. id=1210
  3. name=Hhlensystem (Mine)
  4. group=stuff,ext,mining_system
  5. icon=gfxmining_systemiconsicon_mine.bmp
  6. model=gfxmining_systemmine.b3d
  7. health=10000
  8. mat=stone
  9. description=start
  10. Nur fr Zufallsmaps, nicht in eigen Hhlensystemen benutzen!
  11. description=end
  12. script=start
  13. on:build_finish {
  14. local $lightextension;
  15. local $monkeyextension;
  16. local $playerinmine;
  17. }
  18. on:changeday {
  19. if ($lightextension>=2) {
  20. event "istherelight";
  21. }
  22. if ($monkeyextension>=2) {
  23. event "changebananas";
  24. }
  25. }
  26. on:changebananas {
  27. local $mineralcount;
  28. local $lightfactor;
  29. local $foundmineraltype;
  30. if ($lightextension<3) {
  31. $lightfactor=2;
  32. }
  33. else {
  34. $lightfactor=5;
  35. }
  36. if ($bananas>=$monkeys) {
  37. $bananas=$bananas-$monkeys;
  38. $mineralcount=$lightfactor*$monkeys;
  39. }
  40. else {
  41. $mineralcount=$lightfactor*$bananas;
  42. $bananas=0;
  43. }
  44. loop ("count",$mineralcount) {
  45. event "monkeyaddminerals";
  46. }
  47. }
  48. on:monkeyaddminerals {
  49. $mineraltype=random(1,7);
  50. if ($mineraltype==1) { $iron++; }
  51. elseif ($mineraltype==2) { $copper++; }
  52. elseif ($mineraltype==3) { $ironore++; }
  53. elseif ($mineraltype==4) { $gold++; }
  54. elseif ($mineraltype==5) { $crystall++; }
  55. elseif ($mineraltype==6) { $coal++; }
  56. elseif ($mineraltype==7) { $stone++; }
  57. if ($iron>$warehousemax) { $iron=$warehousemax; }
  58. if ($copper>$warehousemax) { $copper=$warehousemax; }
  59. if ($ironore>$warehousemax) { $ironore=$warehousemax; }
  60. if ($gold>$warehousemax) { $gold=$warehousemax; }
  61. if ($crystall>$warehousemax) { $crystall=$warehousemax; }
  62. if ($coal>$warehousemax) { $coal=$warehousemax; }
  63. if ($stone>$warehousemax) { $stone=$warehousemax; }
  64. }
  65. on:istherelight {
  66. if ($glowingcrystalls>=5) {
  67. $glowingcrystalls=$glowingcrystalls-5;
  68. $lightextension=3;
  69. skip;
  70. }
  71. $lightextension=2;
  72. if ($playerinmine=1) {
  73. freestate "unit",1,"light";
  74. msg "Ohje, es waren wohl nicht",3;
  75. msg "mehr genug Leuchtkristalle",3;
  76. msg "im Lager.",3;
  77. }
  78. }
  79. on:use {
  80. local $thismine;
  81. $thismine=currentid();
  82. clear;
  83. add "Dies ist eine Mine.";
  84. add " ";
  85. add "Ich kann sie betreten um Mineralien abzubauen oder";
  86. add "sie erweitern um mir das Leben zu erleichtern.";
  87. add " ";
  88. add "Was soll ich tun?";
  89. add " ";
  90. msgbox "Mine";
  91. clear;
  92. button 0,"Mine betreten",12,"event entermine,object,$thismine;";
  93. button 1,"ntzliches Zeug bauen/verwalten",12,"event extendmine,object,$thismine;";
  94. button 2,"Ich habs mir anders berlegt.",12,"closemenu;";
  95. }
  96. on:extendmine {
  97. closemenu;
  98. clear;
  99. add "Ich kann noch folgende Erweiterungen bauen:";
  100. add " ";
  101. if (skillvalue("mining")<75) {
  102. add "Ich bin noch nicht gut genug, um die Mine auszubauen.";
  103. add "Ich sollte erst einmal etwas mehr Zeit in der Mine verbringen.";
  104. msgbox "Ntzliches Zeug bauen/verwalten";
  105. button 5,"Ich habs mir anders berlegt.",12,"closemenu;";
  106. skip;
  107. }
  108. if (($lightextension>=2) and ($monkeyextension>=2)) {
  109. add "Ich habe bereits alle mglichen Erweiterungen gebaut.";
  110. }
  111. if ($lightextension<2) {
  112. add "- Beleuchtung um nicht mehr stndig diese Dunkelheit ertragen zu mssen";
  113. add " ";
  114. }
  115. if ($monkeyextension<2) {
  116. add "- Affengehege um gezhmte Affen die schwere ";
  117. add " Bergwerksarbeit fr mich erledigen zu lassen.";
  118. add " ";
  119. }
  120. add " ";
  121. add "Ich kann folgende Erweiterungen verwalten:";
  122. add " ";
  123. if ($lightextension>=2) {
  124. add "- die Beleuchtung um dafr zu sorgen, dass immer genug Leuchtkristalle eingelagert sind";
  125. add " ";
  126. }
  127. if ($monkeyextension>=2) {
  128. add "- das Affengehege um dafr zu sorgen, dass immer genug Futter eingelagert ist";
  129. add " ";
  130. add "- das Lager, um daraus die Mineralien zu entnehmen";
  131. add " ";
  132. }
  133. msgbox "Ntzliches Zeug bauen/verwalten";
  134. clear;
  135. if ($lightextension<2) {
  136. button 0,"Beleuchtung bauen",12,"event buildlight,object,$thismine;";
  137. }
  138. elseif ($lightextension>=2) {
  139. button 0,"Beleuchtung verwalten",12,"event administratelight,object,$thismine;";
  140. }
  141. if ($monkeyextension<2) {
  142. button 1,"Affengehege bauen",12,"event buildmonkey,object,$thismine;";
  143. }
  144. elseif ($monkeyextension>=2){
  145. button 1,"Affengehege verwalten",12,"event administratemonkey,object,$thismine;";
  146. button 2,"Lager verwalten",12,"event administratewarehouse,object,$thismine;";
  147. }
  148. button 5,"Ich habs mir anders berlegt.",12,"closemenu;";
  149. }
  150. on:administratewarehouse {
  151. closemenu;
  152. clear;
  153. add "Hierher bringen die Affen die abgebauten Mineralien.";
  154. add " ";
  155. add "Im Lager befinden sich derzeit:";
  156. add "$iron von $warehousemax Eisen";
  157. add "$ironore von $warehousemax Eisenerz";
  158. add "$copper von $warehousemax Kupfer";
  159. add "$crystall von $warehousemax Kristalle";
  160. add "$gold von $warehousemax Gold";
  161. add "$coal von $warehousemax Kohle";
  162. add "$stone von $warehousemax Steine (Steine?! Was soll ich denn damit anfangen? Sind die Affen jetzt vllig verrckt?)";
  163. add " ";
  164. add "Im Lager knnen von jedem Mineral maximal $warehousemax Einheiten gelagert werden. Alles was die Affen zustzlich anschleppen verfllt! Somit kann es vorkommen, dass weniger Einheiten am Tag hinzugefgt werden, als maximal mglich. Die Bananen werden aber trotzdem verbraucht.";
  165. add " ";
  166. add "Was soll ich denn entnehmen?";
  167. msgbox "Lager";
  168. button 0,"Eisen entnehmen",12,"event administratewarehouseremoveiron,object,$thismine;";
  169. button 1,"Eisenerz entnehmen",12,"event administratewarehouseremoveironore,object,$thismine;";
  170. button 2,"Kupfer entnehmen",12,"event administratewarehouseremovecopper,object,$thismine;";
  171. button 3,"Kristall entnehmen",12,"event administratewarehouseremovecrystall,object,$thismine;";
  172. button 4,"Gold entnehmen",12,"event administratewarehouseremovegold,object,$thismine;";
  173. button 5,"Kohle entnehmen",12,"event administratewarehouseremovecoal,object,$thismine;";
  174. button 6,"Stein entnehmen",12,"event administratewarehouseremovestone,object,$thismine;";
  175. button 7,"Ich habs mir anders berlegt",12,"event extendmine,object,$thismine;";
  176. }
  177. on:administratewarehouseremoveiron {
  178. if (storage("unit",1,0)<350) { skip; }
  179. if ($iron<1) { skip; }
  180. $iron--;
  181. find 85,1;
  182. event "administratewarehouse";
  183. }
  184. on:administratewarehouseremoveironore {
  185. if (storage("unit",1,0)<500) { skip; }
  186. if ($ironore<1) { skip; }
  187. $ironore--;
  188. find 782,1;
  189. event "administratewarehouse";
  190. }
  191. on:administratewarehouseremovecopper {
  192. if (storage("unit",1,0)<250) { skip; }
  193. if ($copper<1) { skip; }
  194. $copper--;
  195. find 768,1;
  196. event "administratewarehouse";
  197. }
  198. on:administratewarehouseremovecrystall{
  199. if (storage("unit",1,0)<500) { skip; }
  200. if ($crystall<1) { skip; }
  201. $crystall--;
  202. find 3,1;
  203. event "administratewarehouse";
  204. }
  205. on:administratewarehouseremovegold {
  206. if (storage("unit",1,0)<350) { skip; }
  207. if ($gold<1) { skip; }
  208. $gold--;
  209. find 4,1;
  210. event "administratewarehouse";
  211. }
  212. on:administratewarehouseremovecoal {
  213. if (storage("unit",1,0)<400) { skip; }
  214. if ($coal<1) { skip; }
  215. $coal--;
  216. find 900,1;
  217. event "administratewarehouse";
  218. }
  219. on:administratewarehouseremovestone {
  220. if (storage("unit",1,0)<1500) { skip; }
  221. if ($stone<1) { skip; }
  222. $stone--;
  223. find 23,1;
  224. event "administratewarehouse";
  225. }
  226. on:administratelight {
  227. if ($lightextension==2) {
  228. event "istherelight";
  229. }
  230. closemenu;
  231. clear;
  232. add "Hier kann ich Leuchtkristalle fr meine Minenbeleuchtung hinzufgen.";
  233. add "Pro Tag bentigt die Beleuchtung 5 Leuchtkristalle";
  234. add "Die Minenbeleuchtung bewirkt, dass ich endlich etwas mehr sehe.";
  235. add "Auerdem arbeiten die Affen besser, wenn die Mine beleuchtet ist.";
  236. add " ";
  237. add "Eingelagerte Leuchtkristalle knnen nicht mehr entnommen werden!";
  238. add " ";
  239. add "Derzeit sind $glowingcrystalls von maximal 100 Leuchtkristallen eingelagert.";
  240. add " ";
  241. add "Was soll ich tun?";
  242. msgbox "Beleuchtung verwalten";
  243. button 0,"Einen Leuchtkristall hinzufgen",12,"event administratelightaddcrystall1,object,$thismine;";
  244. button 1,"Fnf Leuchtkristalle hinzufgen",12,"event administratelightaddcrystall5,object,$thismine;";
  245. button 2,"Ich habs mir anders berlegt",12,"event extendmine,object,$thismine;";
  246. }
  247. on:administratelightaddcrystall1 {
  248. if (count_stored("unit",1,979)==0) {
  249. speech negative;
  250. msg "Ich trage keine Leuchtkristalle mit mir.",3;
  251. skip;
  252. }
  253. if ($glowingcrystalls<100) {
  254. $glowingcrystalls++;
  255. freestored "unit",1,979,1;
  256. event "administratelight";
  257. skip;
  258. }
  259. speech negative;
  260. msg "Ich kann keine zustzlichen Leuchtkristalle mehr einlagern.",3;
  261. }
  262. on:administratelightaddcrystall5 {
  263. if (count_stored("unit",1,979)<5) {
  264. speech negative;
  265. msg "Ich trage nicht gengend Leuchtkristalle mit mir.",3;
  266. skip;
  267. }
  268. if ($glowingcrystalls<96) {
  269. $glowingcrystalls=$glowingcrystalls+5;
  270. freestored "unit",1,979,5;
  271. event "administratelight";
  272. skip;
  273. }
  274. speech negative;
  275. msg "Ich kann keine zustzlichen Leuchtkristalle mehr einlagern.",3;
  276. }
  277. on:buildlight {
  278. closemenu;
  279. if ($lightextension==0) {
  280. $lightextension=1;
  281. local $lightbranches;
  282. local $lightcrystalls;
  283. local $lightiron;
  284. }
  285. if (($lightbranches==100) and (($lightcrystalls==100) and ($lightiron==20))) {
  286. $lightextension=2;
  287. local $glowingcrystalls;
  288. clear;
  289. add "Beleuchtung feriggestellt.";
  290. add "Der Betrieb der Beleuchtung kostet mich 5 Leuchtkristalle am Tag.";
  291. add "Unter dem Menpunkt Beleuchtung verwalten kann ich Leuchtkristalle hinzufgen.";
  292. msgbox "Beleuchtung";
  293. button 0, "Zurck",12,"event extendmine,object,$thismine;";
  294. }
  295. if ($lightextension==1) {
  296. clear;
  297. add "Ich habe bereits folgende Materialien verbaut:";
  298. add "- $lightbranches von 100 sten";
  299. add "- $lightcrystalls von 100 Leuchtkristallen";
  300. add "- $lightiron von 20 Eisen";
  301. add " ";
  302. add "Was soll ich nun hinzufgen?";
  303. msgbox "Beleuchtung bauen";
  304. button 0,"Ast hinzufgen",12,"event lightaddbranch,object,$thismine;";
  305. button 1,"Leuchtkristall hinzufgen",12,"event lightaddcrystall,object,$thismine;";
  306. button 2,"Eisen hinzufgen",12,"event lightaddiron,object,$thismine;";
  307. button 3,"Ich habs mir anders berlegt",12,"event extendmine,object,$thismine;";
  308. }
  309. }
  310. on:lightaddbranch {
  311. if (count_stored("unit",1,24)==0) {
  312. speech negative;
  313. msg "Ich trage keine ste mit mir.",3;
  314. skip;
  315. }
  316. if ($lightbranches<100) {
  317. $lightbranches++;
  318. freestored "unit",1,24,1;
  319. event "buildlight";
  320. skip;
  321. }
  322. msg "Ich brauche keine zustzlichen ste mehr.",3;
  323. }
  324. on:lightaddcrystall {
  325. if (count_stored("unit",1,979)==0) {
  326. speech negative;
  327. msg "Ich trage keine Leuchtkristalle mit mir.",3;
  328. skip;
  329. }
  330. if ($lightcrystalls<100) {
  331. $lightcrystalls++;
  332. freestored "unit",1,979,1;
  333. event "buildlight";
  334. skip;
  335. }
  336. msg "Ich brauche keine zustzlichen Leuchtkristalle mehr.",3;
  337. }
  338. on:lightaddiron {
  339. if (count_stored("unit",1,85)==0) {
  340. speech negative;
  341. msg "Ich trage kein Eisen mit mir.",3;
  342. skip;
  343. }
  344. if ($lightiron<20) {
  345. $lightiron++;
  346. freestored "unit",1,85,1;
  347. event "buildlight";
  348. skip;
  349. }
  350. msg "Ich brauche kein zustzliches Eisen mehr.",3;
  351. }
  352. on:administratemonkey {
  353. if ($lightextension==2) {
  354. event "istherelight";
  355. }
  356. closemenu;
  357. clear;
  358. add "Hier kann ich Trageaffen in die Mine schicken und sie mit Bananen versorgen.";
  359. add "Jeder Affe verbraucht eine Banane pro Tag. Er wird mir dafr 2 zufllige Mineralien bringen. Wenn die Beleuchtung aktiv ist erhht sich diese Anzahl auf 5.";
  360. add " ";
  361. add "Es sind derzeit $monkeys von 5 Affen in der Mine";
  362. add "Es sind derzeit $bananas von 100 Bananen in der Mine";
  363. add " ";
  364. add "Was soll ich hinzufgen?";
  365. add "Achtung: weder Affen, noch Bananen knnen wieder entnommen werden.";
  366. msgbox "Affengehege verwalten";
  367. button 0,"Einen Trageaffen versklaven",12,"event administratemonkeyaddmonkey,object,$thismine;";
  368. button 1,"Eine Banane einlagern",12,"event administratemonkeyaddbanana1,object,$thismine;";
  369. button 2,"Fnf Bananen einlagern",12,"event administratemonkeyaddbanana5,object,$thismine;";
  370. button 3,"Ich habs mir anders berlegt",12,"event extendmine,object,$thismine;";
  371. }
  372. on:administratemonkeyaddmonkey {
  373. local $unitid;
  374. if ($monkeys>=5) {
  375. skip;
  376. }
  377. loop ("units",44) {
  378. $unitid=loop_id();
  379. if (count_inrange("unit",44,150)) {
  380. free "unit",$unitid;
  381. $monkeys++;
  382. event "administratemonkey";
  383. skip;
  384. }
  385. }
  386. freevar $unitid;
  387. }
  388. on:administratemonkeyaddbanana1 {
  389. if (count_stored("unit",1,14)==0) {
  390. speech negative;
  391. msg "Ich trage keine Bananen mit mir.",3;
  392. skip;
  393. }
  394. if ($bananas<100) {
  395. $bananas++;
  396. freestored "unit",1,14,1;
  397. event "administratemonkey";
  398. skip;
  399. }
  400. speech negative;
  401. msg "Ich kann keine zustzlichen Bananen mehr einlagern.",3;
  402. }
  403. on:administratemonkeyaddbanana5 {
  404. if (count_stored("unit",1,14)<5) {
  405. speech negative;
  406. msg "Ich trage nicht gengend Bananen mit mir.",3;
  407. skip;
  408. }
  409. if ($bananas<96) {
  410. $bananas=$bananas+5;
  411. freestored "unit",1,14,5;
  412. event "administratemonkey";
  413. skip;
  414. }
  415. speech negative;
  416. msg "Ich kann keine zustzlichen Bananen mehr einlagern.",3;
  417. }
  418. on:buildmonkey {
  419. closemenu;
  420. if ($monkeyextension==0) {
  421. $monkeyextension=1;
  422. local $monkeybranches;
  423. local $monkeyiron;
  424. }
  425. if (($monkeybranches==100) and ($monkeyiron==50)) {
  426. $monkeyextension=2;
  427. local $monkeys;
  428. local $bananas;
  429. local $iron;
  430. local $copper;
  431. local $crystall;
  432. local $ironore;
  433. local $gold;
  434. local $coal;
  435. local $stone;
  436. local $warehousemax;
  437. $warehousemax=25;
  438. clear;
  439. add "Affengehege fertiggestellt";
  440. add "Ich kann jetzt Trageaffen in die Mine schicken, damit diese fr mich arbeiten und mir Rohstoffe liefern.";
  441. add "Die Affen werden jedoch nur arbeiten, wenn sie Bananen bekommen.";
  442. add "Unter dem Menpunkt Affengehege verwalten kann ich Futter hinzufgen.";
  443. msgbox "Affengehege";
  444. button 0, "Zurck",12,"event extendmine,object,$thismine;";
  445. }
  446. if ($monkeyextension==1) {
  447. clear;
  448. add "Ich habe bereits folgende Materialien verbaut:";
  449. add "- $monkeybranches von 100 sten";
  450. add "- $monkeyiron von 50 Eisenstangen";
  451. add " ";
  452. add "Was soll ich nun hinzufgen?";
  453. msgbox "Affengehege bauen";
  454. button 0,"Ast hinzufgen",12,"event monkeyaddbranch,object,$thismine;";
  455. button 1,"Eisenstange hinzufgen",12,"event monkeyaddiron,object,$thismine;";
  456. button 2,"Ich habs mir anders berlegt",12,"event extendmine,object,$thismine;";
  457. }
  458. }
  459. on:monkeyaddiron {
  460. if (count_stored("unit",1,86)==0) {
  461. speech negative;
  462. msg "Ich trage keine Eisenstangen mit mir.",3;
  463. skip;
  464. }
  465. if ($monkeyiron<50) {
  466. $monkeyiron++;
  467. freestored "unit",1,86,1;
  468. event "buildmonkey";
  469. skip;
  470. }
  471. msg "Ich brauche keine zustzlichen Eisenstangen mehr.",3;
  472. }
  473. on:monkeyaddbranch{
  474. if (count_stored("unit",1,24)==0) {
  475. speech negative;
  476. msg "Ich trage keinen Ast mit mir.",3;
  477. skip;
  478. }
  479. if ($monkeybranches<100) {
  480. $monkeybranches++;
  481. freestored "unit",1,24,1;
  482. event "buildmonkey";
  483. skip;
  484. }
  485. msg "Ich brauche keinen zustzlichen Ast mehr.",3;
  486. }
  487. on:start {
  488. if (count("object",500)>0) { skip; }
  489. $inMine = 0;
  490. }
  491. on:entermine {
  492. closemenu;
  493. $playerinmine=1;
  494. if ($lightextension==3) {
  495. addstate "unit",1,"light";
  496. statesize "unit",1,"light",1000;
  497. }
  498. local $Cy,$Cx,$Cz,$ledder,$itemstring,$amount,$etap,$yaw,$square,$square2,$owallsquare,$mineral,$mineral_chance,$ground,$ledderpos;
  499. local $mine_playerposx,$mine_playerposy,$mine_playerposz,$mine_playeryaw,$mine_playerpitch,$mine_hour,$mine_day,$skilletap;
  500. local $outweather;
  501. $itemstring="4.768.782";
  502. $Cy=1000;
  503. $ledder=0;
  504. $square=10;
  505. if (count_inrange("object",70,50,"self")) {
  506. $minerial=980;
  507. } elseif (count_inrange("object",71,50,"self")) {
  508. $minerial=978;
  509. } elseif (count_inrange("object",72,50,"self")) {
  510. $minerial=993;
  511. } elseif (count_inrange("object",774,50,"self")) {
  512. $minerial=992;
  513. } elseif (count_inrange("object",769,50,"self")) {
  514. $minerial=979;
  515. } else {
  516. $minerial=981;
  517. }
  518. $owallsquare=$square*60;
  519. $square2=$square/2-2;
  520. $ground=0;
  521. $etap=0;
  522. $mine_playerposx=getx("unit",1);
  523. $mine_playerposy=gety("unit",1);
  524. $mine_playerposz=getz("unit",1);
  525. $mine_playeryaw=getyaw("unit",1);
  526. $mine_playerpitch=getpitch("unit",1);
  527. $inMine = currentid();
  528. skycolor 1, 40,40,70;
  529. msg "Bitte Warten...";
  530. timer "self",200,1,"etap";
  531. if (skillvalue("mining")>=100) {$skilletap=10;$mineral_chance=40;}
  532. elseif (skillvalue("mining")>=75) {$skilletap=8;$mineral_chance=60;}
  533. elseif (skillvalue("mining")>=50) {$skilletap=6;$mineral_chance=80;}
  534. elseif (skillvalue("mining")>=25) {$skilletap=4;$mineral_chance=100;}
  535. else {$skilletap=2;$mineral_chance=120;}
  536. }
  537. on:leave {
  538. if ($lightextension==3) {
  539. freestate "unit",1,"light";
  540. }
  541. loop ("objects",981) {
  542. $id=loop_id();
  543. free "object",$id;
  544. }
  545. loop ("objects",973) {
  546. $id=loop_id();
  547. free "object",$id;
  548. }
  549. loop ("objects",980) {
  550. $id=loop_id();
  551. free "object",$id;
  552. }
  553. loop ("objects",978) {
  554. $id=loop_id();
  555. free "object",$id;
  556. }
  557. loop ("objects",993) {
  558. $id=loop_id();
  559. free "object",$id;
  560. }
  561. loop ("objects",992) {
  562. $id=loop_id();
  563. free "object",$id;
  564. }
  565. loop ("objects",979) {
  566. $id=loop_id();
  567. free "object",$id;
  568. }
  569. loop ("objects",1098) {
  570. $id=loop_id();
  571. free "object",$id;
  572. }
  573. loop ("objects",1201) {
  574. $id=loop_id();
  575. free "object",$id;
  576. }
  577. loop ("objects",1209) {
  578. $id=loop_id();
  579. free "object",$id;
  580. }
  581. loop ("objects",1211) {
  582. $id=loop_id();
  583. free "object",$id;
  584. }
  585. setpos "unit",1,$mine_playerposx,$mine_playerposy,$mine_playerposz;
  586. setrot "unit",1,$mine_playerpitch,$mine_playeryaw,0;
  587. ambientsfx "amb_jungle.mp3";
  588. freetimers "self";
  589. skycolor 0;
  590. $inMine = 0;
  591. weather $outweather;
  592. freevar $Cy,$Cx,$Cz,$ledder,$itemstring,$amount,$etap,$yaw,$square,$square2,$owallsquare,$mineral,$ground,$ledderpos;
  593. freevar $mine_playerposx,$mine_playerposy,$mine_playerposz,$mine_playeryaw,$mine_playerpitch,$mine_hour,$mine_day,$skilletap;
  594. freevar $outweather;
  595. }
  596. on:changeweather {
  597. if ($inMine != currentid()) {
  598. skip;
  599. }
  600. $outweather = getweather();
  601. if ($outweather != 0) {
  602. weather "sun";
  603. }
  604. }
  605. on:player_set {
  606. weather "sun";
  607. ambientsfx "amb_wind.wav";
  608. $ledder=0;
  609. $Cy+=60;
  610. $Cx=0;
  611. $Cz=0;
  612. setpos "unit",1,0,$Cy,0;
  613. loop ("count",$square) {
  614. event "ground";
  615. }
  616. find 978;
  617. $id=getstored("unit",1,978);
  618. $cur=currentid();
  619. setlocal "item",$id,"tele_id",$cur;
  620. echo "$cur";
  621. freevar $id,$cur;
  622. timer "self",60000,0,"skillup";
  623. }
  624. on:skillup {
  625. event "iskill_mining","global";
  626. }
  627. on:etap {
  628. $Cy+=60;
  629. $etap++;
  630. event "treasurestart";
  631. $ground=0;
  632. $ledderpos=random(1,25);
  633. loop ("count",$square) {
  634. event "ground";
  635. }
  636. event "wallstart1";
  637. loop ("count",$square) {
  638. event "wall1";
  639. }
  640. event "wallstart2";
  641. loop ("count",$square) {
  642. event "wall2";
  643. }
  644. event "owallstart1";
  645. loop ("count",$square) {
  646. event "owall1";
  647. }
  648. event "owallstart2";
  649. loop ("count",$square) {
  650. event "owall2";
  651. }
  652. if ($etap<$skilletap) {
  653. event "etap";
  654. } else {
  655. event "player_set";
  656. }
  657. }
  658. on:treasurestart {
  659. $Cx=0;
  660. $Cz=0;
  661. }
  662. on:owallstart2{
  663. $yaw=-90;
  664. $Cx=0;
  665. $Cz=-30;
  666. }
  667. on:owallstart1{
  668. $yaw=0;
  669. $ledder=1;
  670. $Cx=-30;
  671. $Cz=0;
  672. }
  673. on:wallstart2{
  674. $yaw=-90;
  675. $Cx=0;
  676. $Cz=90;
  677. }
  678. on:wallstart1{
  679. $yaw=0;
  680. $ledder=1;
  681. $Cx=90;
  682. $Cz=0;
  683. }
  684. on:owall1 {
  685. $id=create("object",981);
  686. setpos "object",$id,$Cx,$Cy,$Cz;
  687. setrot "object",$id,0,$yaw,0;
  688. $amount=random(-2,2);
  689. rpos "object",$id,$amount,0,0;
  690. $Cx+=$owallsquare;
  691. $yaw+=180;
  692. $id=create("object",981);
  693. setpos "object",$id,$Cx,$Cy,$Cz;
  694. setrot "object",$id,0,$yaw,0;
  695. $amount=random(-2,2);
  696. rpos "object",$id,$amount,0,0;
  697. $yaw+=180;
  698. $Cx=-30;
  699. $Cz+=60;
  700. }
  701. on:owall2 {
  702. $id=create("object",981);
  703. setpos "object",$id,$Cx,$Cy,$Cz;
  704. setrot "object",$id,0,$yaw,0;
  705. $amount=random(-2,2);
  706. rpos "object",$id,$amount,0,0;
  707. $yaw+=180;
  708. $Cz+=$owallsquare;
  709. $id=create("object",981);
  710. setpos "object",$id,$Cx,$Cy,$Cz;
  711. setrot "object",$id,0,$yaw,0;
  712. $amount=random(-2,2);
  713. rpos "object",$id,$amount,0,0;
  714. $yaw+=180;
  715. $Cz=-30;
  716. $Cx+=60;
  717. }
  718. on:wall1{
  719. loop ("count",$square2) {
  720. $id=create("object",981);
  721. setpos "object",$id,$Cx,$Cy,$Cz;
  722. setrot "object",$id,0,$yaw,0;
  723. $amount=random(-2,2);
  724. rpos "object",$id,$amount,0,0;
  725. if (random(1,5)<=2) {free "object",$id;}
  726. elseif (random($mineral_chance)<=2) {free "object",$id;$id=create("object",$minerial);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  727. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",979);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  728. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",993);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  729. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",992);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  730. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",978);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  731. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",980);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  732. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",1211);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  733. elseif (random(3)==1) {free "object",$id;$id=create("object",1209);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  734. $yaw+=180;
  735. $Cx+=120;
  736. }
  737. $Cx=90;
  738. $Cz+=60;
  739. }
  740. on:wall2{
  741. loop ("count",$square2) {
  742. $id=create("object",981);
  743. setpos "object",$id,$Cx,$Cy,$Cz;
  744. setrot "object",$id,0,$yaw,0;
  745. $amount=random(-2,2);
  746. rpos "object",$id,$amount,0,0;
  747. if (random(1,5)<=2) {free "object",$id;}
  748. elseif (random($mineral_chance)<=2) {free "object",$id;$id=create("object",$minerial);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  749. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",979);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  750. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",993);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  751. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",992);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  752. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",978);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  753. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",980);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  754. elseif ((random($mineral_chance)==1) && (skillvalue("mining")>=75)) {free "object",$id;$id=create("object",1211);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  755. elseif (random(3)==1) {free "object",$id;$id=create("object",1209);setpos "object",$id,$Cx,$Cy,$Cz;setrot "object",$id,0,$yaw,0;rpos "object",$id,$amount,0,0;}
  756. $yaw+=180;
  757. $Cz+=120;
  758. }
  759. $Cz=90;
  760. $Cx+=60;
  761. }
  762. on:ground {
  763. loop ("count",$square) {
  764. $ground++;
  765. $id=create("object",973);
  766. setpos "object",$id,$Cx,$Cy-5,$Cz;
  767. $amount=random(-1,1);
  768. rpos "object",$id,0,$amount,0;
  769. if (($ground==$ledderpos) && ($ledder==1)) {
  770. free "object",$id;
  771. $id=create("object",1098);
  772. setpos "object",$id,$Cx,$Cy-50,$Cz;
  773. if ($ground<26) {$ledderpos=random(26,50);}
  774. elseif ($ground<50) {$ledderpos=random(51,75);}
  775. elseif ($ground<75) {$ledderpos=random(76,100);}
  776. }
  777. elseif ((random(200)==1) && (skillvalue("mining")>=75)) {
  778. $id2=create("object",826);
  779. setpos "object",$id2,$Cx,$Cy,$Cz;
  780. $item=random(0,2);
  781. $item=split("$itemstring",".",$item);
  782. $amount=random(1,3);
  783. $item=create("item",$item,0,0,$amount);
  784. store $item,"object",$id2;
  785. addstate "object",$id,53;
  786. statesize "object",$id,53,$id2;
  787. }
  788. elseif ((random(200)==1) && ($ledder==1)) {
  789. $id=create("object",1200);
  790. addstate "object",$id,"24";
  791. setpos "object",$id,$Cx,$Cy+$amount,$Cz;
  792. statecolor "object",$id, "24", 143, 234, 231;
  793. statesize "object",$id, "24", 50;
  794. statevalue "object",$id, "24", 100;
  795. $id2=create("object",1201);
  796. setpos "object",$id2,$Cx,$Cy+$amount,$Cz;
  797. addstate "object",$id2,53;
  798. statesize "object",$id2,53,$id;
  799. }
  800. $Cx+=60;
  801. }
  802. $Cx=0;
  803. $Cz+=60;
  804. }
  805. script=end
  806. #######1211 - Hhlensystem (Kohleader)
  807. id=1211
  808. name=Hhlensystem (Kohleader)
  809. group=stuff,ext,mining_system
  810. icon=gfxmining_systemiconsicon_Hoehlensystem_Kohleader.bmp
  811. model=gfxmining_systemHoehlensystem_Kohleader.3DS
  812. health=2000
  813. mat=stone
  814. find=23,20,1
  815. find=21,30,5
  816. find=900,30,1
  817. find=900,200,1,1,88
Code: (text) [Auswählen]
  1. #!NEXT
  2. ##################
  3. # BID: ??
  4. # GID: ??
  5. # File: items_trewq
  6. ##################
  7. id=900
  8. name=Kohle
  9. icon=gfxmc_leaficon_copper.bmp
  10. group=food,std
  11. model=gfxmc_leafcopper.b3d
  12. scale=0.15
  13. mat=stone
  14. weight=400
  15. info=Ein Stck Kohle. Ich glaube nicht, dass die Temperaturen im Lagerfeuer hoch genug sind, um es zu entznden.

Kombination: Kohle+Hammer=5Holzkohle
Code: (text) [Auswählen]
  1. #!NEXT
  2. #!NAME=
  3. ##################
  4. # BID: ??
  5. # GID: ??
  6. # File: combinations_trewq
  7. ##################
  8. combi=start
  9. id=crushcoal
  10. req=900,1
  11. req=30,1,stay
  12. gen=779,5
  13. script=start
  14. speech "positive";
  15. process "Kohle zerschlagen",1000;
  16. script=end
  17. combi=end
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Anonymous

  • Newbie
  • *
  • Beiträge: 1.610
gAvqAVAvkOd
« Antwort #169 am: November 28, 2012, 08:10:42 Vormittag »

What an atrocious piece of code. It's eytrvehing but clear and logic. Like a previous commenter wrote: programming isn't easy and in my opinion shouldn't be treated as such. Programming is an art. It's the skill that makes the difference between good and poor code. If Google would really want to lower the hurdles and invite moer people to write software for their Android platform, why not look at modern "easy" programming languages? Python or even more so, Ruby would do nicely. No need to "invent" something new and confuse the world a wee bit more...
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

Dunkler Lord

  • Newbie
  • *
  • Beiträge: 23
Re: DISKUSSION: Modifikation von Standardobjekten aus S2Ext
« Antwort #170 am: Dezember 08, 2012, 10:59:00 Vormittag »

« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert

gothicmaster8888

  • Newbie
  • *
  • Beiträge: 164
« Letzte Änderung: Januar 01, 1970, 01:00:00 Vormittag von Guest »
Gespeichert