Zobacz poprzedni temat :: Zobacz następny temat |
Autor |
Wiadomość |
Gość
|
Wysłany: Śro 19:17, 24 Lut 2010 Temat postu: Timer - jak zrobić odliczanie? |
|
Chcialbym zrobic cos takiego, aby np. co minute na ekranie byl wyswietlany czas pozostaly do rozpoczecia sie patrolu, ktory rozpocznie sie za 10 minut.
Czyli takie odliczanie: 10, 9, 8...
|
|
Powrót do góry |
|
![](http://picsrv.fora.pl/bLock/images/spacer.gif) |
|
![](http://picsrv.fora.pl/subSilver/images/spacer.gif) |
karol57
Dołączył: 25 Lip 2010
Posty: 24
Przeczytał: 0 tematów
Pomógł: 3 razy Ostrzeżeń: 0/3 Skąd: Udanin
|
Wysłany: Wto 15:05, 27 Lip 2010 Temat postu: Odliczanie |
|
Hmmm.... myślałem, że będzie trudniej, ale po krótkiej zabawie poradziłem sobie.
Noo ze skryptem było trochę robótki więc masz tutaj kod:
Kod: |
<Graph Description="" Group="">
<Nodes>
<Node Id="1" Class="Start" pos="-690,-220,0" flags="1" InHideMask="3" OutHideMask="1">
<Inputs InGame="1" InEditor="1"/>
</Node>
<Node Id="2" Class="HUD:ProgressBar" pos="0,-140,0" flags="1">
<Inputs Progress="100" text_Text="Patrol za:" PosX="400" PosY="300" Align="0" LockingAsset="0"/>
</Node>
<Node Id="4" Class="Time:Delay" pos="-420,-20,0" flags="1">
<Inputs delay="60"/>
</Node>
<Node Id="11" Class="Math:Counter" pos="-170,50,0" flags="1">
<Inputs max="11"/>
</Node>
<Node Id="12" Class="Math:Sub" pos="-250,-80,0" flags="1">
<Inputs A="10" B="0"/>
</Node>
<Node Id="13" Class="Logic:Any" pos="-530,-20,0" flags="1" InHideMask="63" OutHideMask="1">
<Inputs />
</Node>
<Node Id="56" Class="Math:Equal" pos="-20,60,0" flags="1">
<Inputs A="0" B="10"/>
</Node>
<Node Id="57" Class="Logic:Blocker" pos="-350,120,0" flags="1">
<Inputs Block="0"/>
</Node>
<Node Id="66" Class="Math:SetNumber" pos="-140,-110,0" flags="1">
<Inputs in="100"/>
</Node>
<Node Id="67" Class="Time:Delay" pos="-520,-250,0" flags="1">
<Inputs delay="0.1"/>
</Node>
<Node Id="68" Class="Logic:Any" pos="-520,-130,0" flags="1" InHideMask="63" OutHideMask="1">
<Inputs />
</Node>
<Node Id="70" Class="Log:LogInput" pos="200,70,0" flags="1">
<Inputs />
</Node>
<Node Id="71" Class="Time:Delay" pos="-320,-160,0" flags="1">
<Inputs delay="0.2"/>
</Node>
</Nodes>
<Edges>
<Edge nodeIn="67" nodeOut="1" portIn="in" portOut="output" enabled="1"/>
<Edge nodeIn="68" nodeOut="1" portIn="in1" portOut="output" enabled="1"/>
<Edge nodeIn="11" nodeOut="4" portIn="in" portOut="out" enabled="1"/>
<Edge nodeIn="57" nodeOut="4" portIn="In" portOut="out" enabled="1"/>
<Edge nodeIn="68" nodeOut="4" portIn="in2" portOut="out" enabled="1"/>
<Edge nodeIn="12" nodeOut="11" portIn="B" portOut="count" enabled="1"/>
<Edge nodeIn="56" nodeOut="11" portIn="A" portOut="count" enabled="1"/>
<Edge nodeIn="66" nodeOut="12" portIn="in" portOut="out" enabled="1"/>
<Edge nodeIn="4" nodeOut="13" portIn="in" portOut="out" enabled="1"/>
<Edge nodeIn="2" nodeOut="56" portIn="Hide" portOut="true" enabled="1"/>
<Edge nodeIn="57" nodeOut="56" portIn="Block" portOut="out" enabled="1"/>
<Edge nodeIn="70" nodeOut="56" portIn="in" portOut="true" enabled="1"/>
<Edge nodeIn="13" nodeOut="57" portIn="in2" portOut="Out" enabled="1"/>
<Edge nodeIn="2" nodeOut="66" portIn="Progress" portOut="out" enabled="1"/>
<Edge nodeIn="2" nodeOut="67" portIn="Show" portOut="out" enabled="1"/>
<Edge nodeIn="11" nodeOut="67" portIn="reset" portOut="out" enabled="1"/>
<Edge nodeIn="13" nodeOut="68" portIn="in1" portOut="out" enabled="1"/>
<Edge nodeIn="71" nodeOut="68" portIn="in" portOut="out" enabled="1"/>
<Edge nodeIn="66" nodeOut="71" portIn="set" portOut="out" enabled="1"/>
</Edges>
</Graph>
|
Skopiuj ten kod i wklej w Flow Graph (with Links)...
Powinno wyglądać mniej więcej tak: [link widoczny dla zalogowanych]
Jak tak nie wygląda to prawym i Fit Graph To View. Jak dalej nic to zobacz czy nie za dużo skopiowałeś ew. przerysuj z screenshot'a
Małe wyjaśnienie:
1. Tam gdzie masz Start to zamiast tego klocka puść impuls, który ma załączać odliczanie.
2. Log:LogInput też usuń i to jest impuls wyjściowy czyli ten, który u ciebie ma startować patrol.
Time:Delay=0.1 i Time:Delay=0.2 to są opóźniacze... nie wiem jak silnik konwertuje ten skrypt na kod, a bez nich były małe problemy...
Time:Delay=60 to jest czas który odejmuje jedną jednostkę z postępu... czyli co 60 sek odejmuje 1
Napis zmieniasz w: HUD:ProgressBar -> Text
Jak chcesz zmienić liczbę jednostek (żeby np. szło od 100 w dół) to zmieniasz tak o:
Math:Sub -> A=LICZBA_JEDNOSTEK
Math:Equal -> B=LICZBA_JEDNOSTEK
Math:Counter -> Max=LICZBA_JEDNOSTEK+1
Mam nadzieję, że sobie poradzisz... oczywiście ten skrypt można wykorzystać do wszystkiego...
//EDIT:
Ehhh... dopiero zobaczyłem, że w Lutym to pisałeś... ale może przyda się komuś innemu ;] Ew. Vigo przerobi to na mniej chaotyczny kod i opis i wrzuci do poradnika hehe
//EDIT2:
Ok. Był jeden błąd z timerami, ale już powinno działać. Przynajmniej u mnie działa...
Vigo: Oczywiście możesz robić z tym co chcesz... ja to tylko napisałem, by pomóc innym to tym bardziej nie mam nic przeciwko byś dodał to do poradnika.
Post został pochwalony 1 raz
Ostatnio zmieniony przez karol57 dnia Wto 15:53, 27 Lip 2010, w całości zmieniany 4 razy
|
|
Powrót do góry |
|
![](http://picsrv.fora.pl/bLock/images/spacer.gif) |
Vigo
Ekspert
![Ekspert Ekspert](http://farcry.gry-online.pl/rangi/ekspert.png)
Dołączył: 16 Kwi 2009
Posty: 356
Przeczytał: 0 tematów
Pomógł: 39 razy Ostrzeżeń: 0/3 Skąd: SandBox2
|
Wysłany: Wto 15:35, 27 Lip 2010 Temat postu: |
|
Szczerze pisząc, zainteresował mnie ten Flow Graph Sam coś pewnie pokombinuje i jeśli nie masz nic przeciwko dodam do poradnika ;p
Post został pochwalony 0 razy
|
|
Powrót do góry |
|
![](http://picsrv.fora.pl/bLock/images/spacer.gif) |
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach
|
|