Please login or register.

Login with username, password and session length
Advanced search  

News:

For WME related articles and tutorials visit WME Resource Center.

Pages: [1] 2 3  All

Author Topic: SubtittleWindow - jak ho chytře vytvořit? "VY  (Read 23294 times)

0 Members and 1 Guest are viewing this topic.

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
SubtittleWindow - jak ho chytře vytvořit? "VY
« on: January 31, 2010, 12:55:14 PM »

Ahoj, můj další úkol je abych vytvořil subtittlewindow. Při každém aktivním hovoru který u mě probíhá dole uprostřed "monitoru" se mi má zobrazit takový proužek na kterém bude zobrazený text mluvící postavy. Je mi jasný. že to musím vyřešit přes game script, abych to okno na každou scenu extra nevolal. A nejspíš i dát otázku: jestli mám zaplé titulky. A pak to hlavní, jak se zeptát na to, jestli postava, nebo jiná entita na sceně mluví?

Napádá mě dát do game scriptu tohle, ale to se mi to okno ukazuje furt.

Code: [Select]
var tempwin = Game.LoadWindow("interface\system\subtitlewindow.window");
SubWindow = tempwin.GetWidget("subtitlewindow");
« Last Edit: February 19, 2010, 12:34:05 PM by pirko7 »
Logged

metamorphium

  • Global Moderator
  • Addicted to WME forum
  • *
  • Karma: 12
  • Offline Offline
  • Gender: Male
  • Posts: 1511
  • Vampires!
    • View Profile
    • CBE  software s.r.o.
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #1 on: January 31, 2010, 04:55:28 PM »

Pokud tě zajímá komplexnější řešení, mrkni pro inspiraci sem.

http://forum.dead-code.org/index.php?topic=3033.0
Logged
J.U.L.I.A. Enhanced Edition, Vampires!, J.U.L.I.A., J.U.L.I.A. Untold, Ghost in the Sheet

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #2 on: January 31, 2010, 05:52:02 PM »

Děkuju, sice jsem se snažil script co nejvíc očesat, ale později jsem zjistil že to asi tolik nejde. Dal jsem tuto metodu teda do scriptu actora. Jediný na co nemohu přijít je, jak mi druhá postava kterou zvykem volám "this" odpoví taky s tím oknem? Nebo to musím ke každé postavě dávat zvlášť?  :)

Ještě jeden dotaz, zaboha nemužu dostat titulky do středu a to nastavuju uplně stejně jak jsem to měl předtím. Je tam někde nějaký háček?  ;D
« Last Edit: January 31, 2010, 06:28:47 PM by pirko7 »
Logged

Andrej (Blue Arc)

  • Occasional poster
  • **
  • Karma: 1
  • Offline Offline
  • Gender: Male
  • Posts: 73
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #3 on: February 01, 2010, 04:24:27 PM »

Ja len trocha doplním, bez toho podrobnejšieho kódu, na ktorý odkázal meta :)

Pokiaľ by si chcel zobraziť jednoduché okno na titulky, ja som to vyriešil takto:

do game_loop.script si pridáš tento riadok:

Code: [Select]
while(true){
  // ostatný kód
  if(actor.IsTalking())
  WinSubtitles.Visible = true;
else
  WinSubtitles.Visible = false;
}

« Last Edit: February 01, 2010, 09:32:34 PM by dReAM_20 »
Logged

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #4 on: February 01, 2010, 07:54:13 PM »

No ten první velký script, tam mi nefunguje animace mluvení actora, tenhle jednoduchej mi teoreticky nejde vubec.  ;D Sice jsem si tam dal požadovanej sleep, dokonce jsem se ho snažil i nějak opravit, ale ty tam davaš true a false. Ale to bych musel mít danou věc na sceně ne?
« Last Edit: February 01, 2010, 08:59:13 PM by pirko7 »
Logged

Andrej (Blue Arc)

  • Occasional poster
  • **
  • Karma: 1
  • Offline Offline
  • Gender: Male
  • Posts: 73
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #5 on: February 01, 2010, 09:37:09 PM »

No ten první velký script, tam mi nefunguje animace mluvení actora, tenhle jednoduchej mi teoreticky nejde vubec.  ;D Sice jsem si tam dal požadovanej sleep, dokonce jsem se ho snažil i nějak opravit, ale ty tam davaš true a false. Ale to bych musel mít danou věc na sceně ne?

Ten prvý skript som neriešil, ale ten druhý ide zaručene dobre. Tu je link na stiahnutie názorného projektu, kde je vidieť, čo ako funguje.
Link: http://www.edisk.sk/stahni/08229/simple_subtitles_box.rar_1.01MB.html

Okno na titulky sa zobrazí keď klikneš LTM na postavu, lebo vtedy začne hovoriť.
« Last Edit: February 01, 2010, 09:44:18 PM by dReAM_20 »
Logged

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #6 on: February 02, 2010, 09:01:48 PM »

Ahá, ty to schováš do celého whilu od game_loopu. Funguje to dobře, ale jak to nastavím, aby mi postava na scéně odpověděla taky s oknem? čili "actor.Talk("blah"); //okno se zobrazi
                                                 "this.Talk("blah); // okno se nezobrazi

Jakou otázku tam přidat, aby to platilo celkově pro Talk?  :)
Logged

Andrej (Blue Arc)

  • Occasional poster
  • **
  • Karma: 1
  • Offline Offline
  • Gender: Male
  • Posts: 73
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #7 on: February 02, 2010, 09:55:08 PM »

1. riešenie, ktoré ma napadlo, je pýtať sa, čí daná hovorí postava, samostatne. To znamená, že na každý objekt typu actor budeš volať metódu IsTalking() a aby kód nebol príliš zložitý alebo dlhý, použi operátor logického sčítania or:

Code: [Select]
while(true){
  // ostatný kód
  if(actor.IsTalking() || some_actor.IsTalking() || some_actor2.IstTalking())
  WinSubtitles.Visible = true;
else
  WinSubtitles.Visible = false;
}

:)
Logged

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #8 on: February 02, 2010, 10:46:58 PM »

To mě také napadlo, ale to pro to není nějaký příkaz podobně jako u null. Postav bude ve hře přes 60, a nebude to moc veselý, je furt připisovat :-). Ale když mi nic jineho nezbyde, udělám to tak. Díky.  ;)
Logged

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #9 on: February 03, 2010, 09:22:24 PM »

Tak neudělám, pro víc postav to prostě nejde, Istalking mi pak už vícekrat jen píše chybu ignored. Chtělo by to společnou otazku na Talk.
Logged

metamorphium

  • Global Moderator
  • Addicted to WME forum
  • *
  • Karma: 12
  • Offline Offline
  • Gender: Male
  • Posts: 1511
  • Vampires!
    • View Profile
    • CBE  software s.r.o.
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #10 on: February 03, 2010, 09:52:09 PM »

ten mnou ukázanej systém právě funguje obecně. Jako parametr zadáš která postava mluví a proto stačí jedno okno. Nedáváš actor.Talk, ale TalkWindow.Talk("ahoj","Pepa"); apod.
Logged
J.U.L.I.A. Enhanced Edition, Vampires!, J.U.L.I.A., J.U.L.I.A. Untold, Ghost in the Sheet

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #11 on: February 06, 2010, 11:05:35 AM »

No já mám už šíleně moc textů na to abych tohle začal zamě
Logged

Andrej (Blue Arc)

  • Occasional poster
  • **
  • Karma: 1
  • Offline Offline
  • Gender: Male
  • Posts: 73
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #12 on: February 06, 2010, 02:39:01 PM »

Tak neudělám, pro víc postav to prostě nejde, Istalking mi pak už vícekrat jen píše chybu ignored. Chtělo by to společnou otazku na Talk.

Koľko postáv znamená viacej postáv? :) Do projektu som si pridal ďalšiu postavu a ešte jednu entitu. Všetko funguje OKEY :).
Logged

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #13 on: February 07, 2010, 07:54:07 PM »

V jejich *.entite souboru máš jejich jmeno že? To já pak zadavám tak jak jsi poradil, ale nejde to.
Logged

Andrej (Blue Arc)

  • Occasional poster
  • **
  • Karma: 1
  • Offline Offline
  • Gender: Male
  • Posts: 73
    • View Profile
Re: SubtittleWindow - jak ho chytře vytvořit?
« Reply #14 on: February 07, 2010, 07:57:30 PM »

V jejich *.entite souboru máš jejich jmeno že? To já pak zadavám tak jak jsi poradil, ale nejde to.

Nerozumiem, ako to myslíš. Môžeš sem dať zdrojový kód?

EDIT: pridávam svoj zdroják

Code: [Select]
global ent;
global gen;

if(actor.IsTalking() || ent.IsTalking() || gen.IsTalking())
      WinSubtitlesBox.Visible = true;
else
  WinSubtitlesBox.Visible = false;
« Last Edit: February 07, 2010, 08:55:29 PM by dReAM_20 »
Logged
Pages: [1] 2 3  All
 

Page created in 0.054 seconds with 23 queries.