blender3d.cz
http://www.blender3d.cz/forum/

Naraz
http://www.blender3d.cz/forum/viewtopic.php?f=11&t=5676
Stránka 12

Autor:  Kapo [ čtv bře 13, 2008 3:21 pm ]
Předmět příspěvku:  Naraz

Dobry den,

Mam dalsi problem...

Spravil som si dym do hry, presne jak som si predstavoval, buchnem autom desat krat, spusti sa dym (property, konecne som to pochopil :D)

vsetko ok, ale teraz riesim narazy do stien, mohli by ste mi poradit, ako mam do toho zapojit istu nahodnost? proste mam 5 zvukov narazov a chcem, aby sa pustali nahodne (narazim, 1. zvuk, narazim, 4. zvuk, narazim, 2. zvuk, narazim, 1. zvuk, atd, proste ziadna pravidelsnost) a aby sa pustili tak silno, ako silno narazim (mam property speed, ako mam zariadit, aby sa Sound volume chovalo podla property speed?) asi to bude chciet script, ak nie, ak to ide aj v Logic Bricks tak pls poradte,

za pripadnu pomoc dakujem

Autor:  freekill [ čtv bře 13, 2008 3:25 pm ]
Předmět příspěvku: 

Dlouho jsem v GBE nedelal ale pokud mas jen jeden sensor a jeden controller (na ktery sa vaze 5 zvuku) tak ten controller zmwen na OR misto AND. :wink: Snad to pujde.

Autor:  Kapo [ čtv bře 13, 2008 3:37 pm ]
Předmět příspěvku: 

lenze or plati iba pre typ senzora nie...? ze ked mas napriklad dve tlacitka a das and tak musis obdve drzat, aby sa stala akcia, ak das or, staci jedno z nich, ale skusim...

Autor:  Kapo [ čtv bře 13, 2008 3:42 pm ]
Předmět příspěvku: 

ako som predpokladal, or sleduje senzory, takze sa pustilo vsetkych 5 zvukov naraz... :( no teda ludia keby ste to poculi :mad: :? :( :o :oops:

Autor:  kracho [ čtv bře 13, 2008 3:58 pm ]
Předmět příspěvku: 

Dajme tomu, ze mas pat zvukov: zvuk1, zvuk2, zvuk3, zvuk4, zvuk5. Tak potom daj tento kod:
Kód:
import random

zvuky = [zvuk1, zvuk2, zvuk3, zvuk4, zvuk5]

nahodny_zvuk=random.randint(1,5)-1
if nejaka_tvoja_podmienka==splnenie_tvojej_podmienky:
    GameLogic.addActiveActuator(zvuky[nahodny_zvuk],1)



Hlasitost musis dat tiez cez skript, neviem presne aka funkcia to vola, ale ked das print dir(zvuk1) tak to tam najdes. Bude to nieco ako setVolume(), a potom je postup jednoduchy, vydelis rychlost nejakou konstantou (napr.100.0) a vlozis to do tych zatvoriek.

Autor:  Kapo [ čtv bře 13, 2008 4:13 pm ]
Předmět příspěvku: 

a ta nejaka_tvoja podmienka je typ sensor, je to touch, mam tam miesto if nejaka_tvoja_podmienka==... napisat if sensor14==...?
a videl som vselijake zapisy, nemam to zapisat, ze:

if sensor14.isPositive:
blabla atd...bohuzial nefunguje mi ani jedno :(

P.S. a na zaciatok som napisal: col = cont.getSensor('sensor14')

a na koniec if col.isPositive:
...

Autor:  kracho [ čtv bře 13, 2008 4:23 pm ]
Předmět příspěvku: 

Ach jaj, ta nejaka podmienka to moze byt cokolvek, ak to je napr. naraz vsetko bude vypadat takto:
Kód:
import GameLogic as G
import random

c=G.getCurrentController()

naraz=c.getSensor('naraz')

zvuk1=c.getActuator('zvuk1')
zvuk2=....
zvuk3=....
zvuk4=....
zvuk5=....

zvuky=[zvuk1, zvuk2, ...]

nahodny_zvuk=random.randint(1,5)-1

if naraz.isPositive():
    G.addActiveActuator(zvuky[nahodny_zvuk],1)


Autor:  Kapo [ čtv bře 13, 2008 4:48 pm ]
Předmět příspěvku: 

script uz ide, a k tej sile (hlasitosti) do konzoly mi python vypisal:

setFilename, setGain, setLooping, atd, atd, volume tam nebolo :oops: co mam robit, pls poradte dakto... :wink: :idea: :?:

Autor:  kracho [ čtv bře 13, 2008 5:15 pm ]
Předmět příspěvku: 

Tak ze by to bolo to setGain??? keby si si slovicko gain vyhladal v slovniku, mozno by ti to pomohlo. ludia, aj ja sa pytam na blbosti, ale niekedy troska analytickeho a deduktivneho myslenia myslim nezaskodi. To je myslene obecne, ja rad pomozem.

Autor:  Kapo [ čtv bře 13, 2008 5:20 pm ]
Předmět příspěvku: 

ok,sak diki, no sak ja sa len pytam :roll: sorry, no... 8)

Autor:  kracho [ čtv bře 13, 2008 5:24 pm ]
Předmět příspěvku: 

V pohode, ale ked si sam niektore tie funkcie a metody vyskusas, naucis sa viac ako sme my schopny ti poradit a, pripadne, poradis ty nam :-) nech sa dari v BGE.

Autor:  Kapo [ čtv bře 13, 2008 5:29 pm ]
Předmět příspěvku: 

kracho píše:
V pohode, ale ked si sam niektore tie funkcie a metody vyskusas, naucis sa viac ako sme my schopny ti poradit a, pripadne, poradis ty nam :-) nech sa dari v BGE.


no tak mudrejsi ako clenovia tohto fora asi nikdy nebudem...
a to "...nech sa dari v BGE" to znelo skoro ako vykopnutie, vyhadzov, ako "ahoj, nechces uz odist...?" :D :D :D :D, sorry, iba vtip, mam ja ale fantaziu... :D a diki za rady :wink:

Autor:  kracho [ čtv bře 13, 2008 5:33 pm ]
Předmět příspěvku: 

To nech sa dari v BGE, bolo akoze som rad ze sa tu tym opat niekto s takym elanom zaobera, a skor to bolo prianie aby ta BGE neodradilo ako mnohych, ktori presli na iny engine, koli nedostacujucim moznostiam BGE....mno to uz sme dost OT, ide ti ta hlasitost?

Autor:  Kapo [ čtv bře 13, 2008 5:41 pm ]
Předmět příspěvku: 

o, ano ide mam rychlost auta v property, takze to mozem vyuzit bez nejakeho tazkeho zapisu kedy chcem, ale ta hlasitost vyzera, ze funguje, ale strasne nevyspytatelne...raz ked buchnem, tak ide hlasno, raz sa pusti slabo, napriklad idem 7 blenderovskych jednotiek a buchnem tak pusti zvuk silno, potom ked buchnem (a pusti ten isty zvuk, zvuky su dost odlisne, vsimol by som si, keby pustil slabsie nahrany...) druhy krat tak mi to pusti slabo...ale 100 % to funguje do 5 blenderovskych jednotiek (to dufam chapes, ze hovorim ako o rychlosti auta...? :D :D :D ) buchnem slabo, pusti slabo, buchnem silno, pusti silno...ale furt su tam dajake veci...no neviem, ale hrozne sa mi paci efekt, ze ked bucham autom, tak som dal ze buchnem 10 X a pusti sa dym, buchnem este 5 X a pusti sa zo zadku auta ohen :D :D :D ale ten ohen ma uz horiet donekonecna, proste hori, hori, a to som nemohol dat equal, lebo dam 15, buchnem autom este raz a uz prestane horiet, tak som dal interval od 15 do 1000 takze akoze s pomyslenim, "snad tolko krat nikto nebuchne :D " no ale furt neviem, ako to mam dat ze od 15 do nekonecna, poradis pls...?

Autor:  kracho [ čtv bře 13, 2008 6:01 pm ]
Předmět příspěvku: 

No napada ma niekolko moznosti: daj tam equal na 15, a zaroven nastav, aby sa pri 15ke uz nepripocitavali narazy, respektive daj aktuator property, ktory nastavi tu tvoju hodnotu na 15. Alebo potom pomocou skriptu:
Kód:
if owner.pocetNarazov>14:
    G.addActiveActuator(vloz_ohen,1)

Stránka 12 Všechny časy jsou v UTC + 1 hodina [ Letní čas ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/