| OldComp.cz https://oldcomp.cz/ |
|
| engine pro textovou hru v AmigaPythonu https://oldcomp.cz/viewtopic.php?f=12&t=1644 |
Stránka 3 z 3 |
| Autor: | zz_indigo [ 27.07.2014, 12:47 ] |
| Předmět příspěvku: | Re: engine pro textovou hru v AmigaPythonu |
Lisiak4 píše: V příručke na netu je písané, že tento sposob programovania zavádza do využita nejakého GUI istý druh poriadku, alebo niečo také. Pokiaľ istý druh poriadku nezavádza objektívne programovanie aj do samotného programovanie bez GUI. Osobna skusenost je taka ze poriadok do programovania dokaze zaviest len sebakontrola alebo niekdo kdo vyvojarou pernamentne drbe. |
|
| Autor: | Lisiak4 [ 27.07.2014, 13:49 ] |
| Předmět příspěvku: | Re: engine pro textovou hru v AmigaPythonu |
No ja mám podľa mňa bordel v kóde tiež. Nerobím to naschvál, skor mám s tým problém. Chce to podľa mňa cvik. Ale zase s kľudným svedomím možem napísat, že sa zo seba snažím v kóde vytiahnúť vždy maximum, teda ho píšem vždy najlepšie ako viem. Mám výhodu, nemám programovanie pracovne, takže ma čas nejako netlačí. Ale dobrým programátorom rozhodne niesom, pri formátovaní textu co používam se mi vždy pekne zavarí mozok, kým to dám. Hlavne keď robím nejakú opravu, vždy sa to musím znovu naučiť, zorientovať sa (pár minút) no a oprava je potom urobená v priebehu 3 sekúnd |
|
| Autor: | Busy [ 27.07.2014, 14:01 ] |
| Předmět příspěvku: | Re: engine pro textovou hru v AmigaPythonu |
Lisiak4 píše: sa ešte budem musieť pozrieť na techniku objektívného programovania. Logicky nie kvoli Amige, ale kvoli PC. V příručke na netu je písané, že tento sposob programovania zavádza do využita nejakého GUI istý druh poriadku, alebo niečo také. Pokiaľ istý druh poriadku nezavádza objektívne programovanie aj do samotného programovanie bez GUI. Asi myslis objektove programovanie Koluje taka pekna legenda: Na zaciatku pocitacovej ery bolo programovanie domenou len tych nasikovnejsich. Po prichode jazyka C nebol problem naucit sa programovat aj pre priemerne sikovnych ludi. Programatorov pribudalo, kvalita programov klesala - ale nie vinou samotneho C, ale skor toho, ze pokym predtym programovalo len zopar najsikovnejsich ludi, teraz uz mohol programovat prakticky kazdy (a programy podla toho potom aj vyzerali). Preto sa rozhodlo, ze programovanie zase musi byt minimalne tak komplikovane ako pretym, aby do programovania nefusoval len tak hockto. A vysledkom rozhodnia bolo - objektove rozsirenie C, zvane C++ zz_indigo píše: Osobna skusenost je taka ze poriadok do programovania dokaze zaviest len sebakontrola alebo niekdo kdo vyvojarou pernamentne drbe. Tak to je velka pravda ! Hovori sa sice, ze vyssie programovanie jazyky sa tvaria ze sa snazia predchadzat bordelu, ale "sikovnost" niektorych "programatorov" je daleko-daleko silnejsia Lisiak4 píše: No ja mám podľa mňa bordel v kóde tiež. Nerobím to naschvál, skor mám s tým problém. Chce to podľa mňa cvik. To je pravda. Chce to cvicit a skusat, podobne ako hranie na hudobnom nastroji.Lisiak4 píše: Mám výhodu, nemám programovanie pracovne, takže ma čas nejako netlačí. No ja mam programovanie aj pracovne, ale ked si nieco programujem len tak pre seba (pre znamych,...) tak ma cas tiez netlaci Lisiak4 píše: ale dobrým programátorom rozhodne niesom, pri formátovaní textu co používam se mi vždy pekne zavarí mozok, kým to dám. Hlavne keď robím nejakú opravu, vždy sa to musím znovu naučiť, zorientovať sa (pár minút) no a oprava je potom urobená v priebehu 3 sekúnd Tak to chodi aj u skusenych programatorov. Raz som cely den hladal chybu v programe a ked som konecne na to dosiel, oprava bola tiez za par sekund |
|
| Autor: | Lisiak4 [ 11.11.2014, 15:24 ] |
| Předmět příspěvku: | Re: engine pro textovou hru v AmigaPythonu |
Tak a uděláme tlustou čáru - začínám psát engine odznova Aby jsem se dál procvičoval v programování, co mi práce na grafické hře v současné době neumožní (potřebuji si pár věcí nastudovat), vracím se zpět k myšlence naprogramovat nějakou tu textovku. Potřebuji zjednodušit kód aby se pak možná dal snadněji přepsat do jazyka C. Snad se mi to povedlo tím, že jsem vyhodil z logiky příkaz split(), který rozděluje text na více částí. V současné době mám napsanou jen logiku na průchod místnostmi a dokončil jsem takovou na "papíře" napsanou logiku, jak by mohla fungovat jedna z částí samotného programu. Jedná se o řešení skoro všech a možná všech situací co se dějou v místnosti. Text v událostech je smyšlený. Za "#" je ona logika napsaná na "papíře" a pod ní je jednoduchá logika průchodu místnostma. Kód: #-*- coding: Latin2 -*-
import sys #textovka 2 #v jednom radku bude: #2015052mince02med05citron250mlustrc1030Zkusil jsi promluvit na straz.025Bez jakekoliv reakce... .228Opět jsi promluvil na straz.jas1minstr0med44Straznikovi si dal 2 zlatky a on Ti #dal med.1024Straz: co tu pohledáváš!07Odchod! #rozepsano: #2015052mince02med05citron - 0 = v mistnosti nebude osoba, co neco sebou bude mit, nebo bude moci ve hre neco dostat. (situace neni uvedena) # - v mistnosti budou 2 osoby co neco se sebou budou mit, nebo budou moci ve hre neco dostat. # - 1. bude mít 1 vec (0), 2. bude mit 2 veci (1). # - 1. osoba bude mít 2 mince co je slovo ze 6 znaku (05), 2.osoba bude mít med a citron (3 (02)a 6 znaku (05)) #25 - pocet souvisejicich udalosti z celkovych 9 (2,5 = 3+6 = 2 vazane udalosti) #popisuji cislo 2 (1. vazanou udalost) #c/p/s - cykluj/postupuj a pak opakuj poslední/postupuj a pak smaz (poprve pouzito o 2 radky nize) #0mlustr - mluv se strazi 0 - nasledujici ma navaznost, kdyz promluvis se strazi (muzes mluvit i s dalsi osobou a stejnym vysledkem) #c1030Zkusil jsi promluvit na straz. - cykluj, 2 vazane udalosti,0 - menici se promenna o stavu udalosti jestli 0 mebo 1, # - pri 1. promluveni na straz se vypise 1. text, pri 2. a dalsim promluveni 2.text, 30 znaku na 1. text #025Bez jakekoliv reakce... . - prvni 0 - zadna podminka = vypise se vzdy pri prvnim mluveni na straz, text ma 25 znaku #228Opět jsi promluvil na straz. - 2 = 2 podminky, 28 znaku ma text #jas1minstr0med - 1.podminka - jason musi mit 2 mince (1), 2.podminka - straz musi mit 1 med #44Straznikovi si dal 2 zlatky a on Ti dal med. - text ma 44 znaku #1024Straz: co tu pohledáváš!07Odchod! - 1 - budou se opakovat 2 udalosti, 0 - menici se promenna o stavu udalosti jestli 0 mebo 1, mistnosti = ("01010101010100TextMistnost0", "00020304050600TextMistnost1", "01070809101100TextMistnost2", "--08--01----00TextMistnost3", "--0901------00TextMistnost4", "----------0100TextMistnost5", "--------01--00TextMistnost6", "02----------00TextMistnost8", "03----02----00TextMistnost9", "04--02------00TextMistnost10", "----------0200TextMistnost11", "--------02--00TextMistnost12") v = 0 while 1: sys.stdout.write(mistnosti[v][int(mistnosti[v][12:14]) +14:]) v = v, raw_input() if v[1] == "s" and mistnosti[v[0]][0:2] != "--": v = int(mistnosti[v[0]][0:2]) elif v[1] == "j" and mistnosti[v[0]][2:4] != "--": v = int(mistnosti[v[0]][2:4]) elif v[1] == "z" and mistnosti[v[0]][4:6] != "--": v = int(mistnosti[v[0]][4:6]) elif v[1] == "v" and mistnosti[v[0]][6:8] != "--": v = int(mistnosti[v[0]][6:8]) elif v[1] == "n" and mistnosti[v[0]][8:10] != "--": v = int(mistnosti[v[0]][8:10]) elif v[1] == "d" and mistnosti[v[0]][10:12] != "--": v = int(mistnosti[v[0]][10:12]) else: v = v[0] if mistnosti[v][12:14] != "00": pass |
|
| Stránka 3 z 3 | Všechny časy jsou v UTC + 1 hodina [ Letní čas ] |
| Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |
|