Autor Thema: mukks Fragethread ^^  (Gelesen 35714 mal)

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #75 am: 01. Mai 2010, 15:16:58 »
vielen dank, so ausgereift braucht ichs garnich ;)

hab jetz bloß noch das problem, dass ich das scrollen mit dem playerchar, also dem auto, noch nach rechts verschieben möchte, also wenn es an die linke kante kommt, dass es später anfängt zu scrollen, haste da noch was auf lager? :)

plus jetzt noch ein neues problem ^^

in allen räumen die ich selber neu eingefügt habe verschwindet der gesprochene text der charaktere unter dem schwarzen balken am oberen bildschirmrand wenn sie weit genug oben stehen... kann mir da jemand sagen, wo man das einstellt?
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #76 am: 02. Mai 2010, 11:26:48 »
in diesem fall musst du dich selber um das scrollen kümmern mit SetViewport

alternativ ginge es auch noch, dass du die sprites so breit machst wie den bildschirm, so dass halt das auto ganz links ist und rechts einfach mit transparenten pixel aufgefüllt wird
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #77 am: 03. Mai 2010, 19:41:43 »
Warum geht das so nich  ??? er führt die gebe funktion nich aus, überspringt im script den kompletten teil; Bier ist definitiv 1

Zitat
else if (UsedAction(A_GIVE_TO))
  {
       if (Bier==1)
       {
        if (character [GetPlayerCharacter()].activeinv ==31) 
        {
          Wait(20);
          PlaySound(4);
          LoseInventory(31);
          AddInventory(32);
          Wait(20);
          cMech.SpeechView = 87;
          cMech.Say("Ah, danke, Sir. Sehr zuvorkommend.");
          cMech.SpeechView = 86;
          Bier=2;         
         
        }
        else if (character [GetPlayerCharacter()].activeinv ==32) 
        {
          Wait(20);
          PlaySound(4);
          LoseInventory(32);
          Wait(20);
          cMech.SpeechView = 87;
          cMech.Say("Ah, danke, Sir. Sehr zuvorkommend.");
          cMech.SpeechView = 86;
          Bier=2;                   
        }
       }
      else if (Bier==2)
       {
        if (character [GetPlayerCharacter()].activeinv ==32) 
        {
          player.Say("Er hat schon eins.");
         }
    }
  }
« Letzte Änderung: 03. Mai 2010, 19:48:01 von mukk »
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #78 am: 03. Mai 2010, 20:31:48 »
hast du schonmal nen breakpoint gesetzt und gecheckt ob er auch zu der if kommt?

ich vermute mal dass entweder
* die else if der ersten zeile garnicht mehr gecheckt wird, da schon eine vorherige (hier nicht sichtbare) bedingung zugetroffen hat
* da evtl. das activeinv was anderes ist als 31 und 32
* du den code evtl. im falschen event-handler gemacht hast (zB statt any_click look_at oder so ;) )
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #79 am: 03. Mai 2010, 20:46:34 »
jo, hast recht, er kommt nich zum if bier...aber warum...die ganzen funktionen stehen unter any click und 31 und 32 passen auch,look_at und talk_to funktionieren
gibt auch keine unhandled aus
 hier nochma der rest:

Zitat
function cMech_AnyClick()
{
if (MovePlayer (56, 122))
{
  FaceCharacter (GetPlayerCharacter (), MECH);
 
  if (UsedAction (A_LOOK_AT))
   {
  DisplaySpeech(GetPlayerCharacter(),"Der bestellte Handwerker, fleißig bei der Arbeit.");
   }
  else if (UsedAction (A_TALK_TO))
   {
    player.Say("Hallo.");
    cMech.Say("Ah, da sind sie ja, Sir.");
    player.Say("Und kommen sie vorran?");
    cMech.Say("'türlich, Sir. Alles nix neues hier. Dauert nich mehr lange.");
    player.Say("Das ist gut.");
    dMech4.Start();
   } 
  else if (UsedAction(A_GIVE_TO))
   {
    if (Bier==1)
    {
     if (character [GetPlayerCharacter()].activeinv ==31) 
     {
          Wait(20);
          PlaySound(4);
          LoseInventory(31);
          AddInventory(32);
          Wait(20);
          cMech.SpeechView = 87;
          cMech.Say("Ah, danke, Sir. Sehr zuvorkommend.");
          cMech.SpeechView = 86;
          Bier=2;         
         
     }
     else if (character [GetPlayerCharacter()].activeinv ==32) 
     {
          Wait(20);
          PlaySound(4);
          LoseInventory(32);
          Wait(20);
          cMech.SpeechView = 87;
          cMech.Say("Ah, danke, Sir. Sehr zuvorkommend.");
          cMech.SpeechView = 86;
          Bier=2;                   
      }
     }
       else if (Bier==2)
      {
        if (character [GetPlayerCharacter()].activeinv ==32) 
       {
          player.Say("Er hat schon eins.");
       }
      }
   }
}
else Unhandled();
}
« Letzte Änderung: 03. Mai 2010, 20:49:08 von mukk »
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #80 am: 04. Mai 2010, 08:47:11 »
hast du evtl. das "use inventory on character" event in verwendung?
bin mir nicht sicher, aber mir ist bei AGS3.1.2 auch schon aufgefallen, dass any_click nicht alle actions mitbekommt  :-\

das MovePlayer wird auch fertig und nicht abgebrochen?
mach mal bei jeder einzelnen if der funktion einen breakpoint und debugge, dann solltest du zumindest sehen was er nun wirklich macht
dann siehst du auch ob er bei GIVE_TO überhaupt in diese funktion rein geht
und mach auch bei deiner Bier-abfrage einen else zweig der ohne bedingungen ist
vielleicht hat Bier doch einen anderen wert als du denkst
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #81 am: 04. Mai 2010, 19:23:40 »
also bier nochmal überprüft, passt

bei den einzelschritten geht er, wie bei bei den anderen befehlen auch in dieses script:

function UsedAction (int test_action){
  return ((used_action == test_action) && (GSagsusedmode != MODE_USEINV)) || ((test_action == A_USE_INV) && (used_action == A_USE) && (GSagsusedmode == MODE_USEINV));
}

das testet wohl irgendwie ob das zurtrifft, kommt aber zu dem schluß, dass das nich der fall ist...

das selbe macht er beispielsweise bei A_LOOK_AT, da wird das script dann aber richtig fortgesetzt....muss also irgendwie an dem A_GIVE_TO hängen...


hast du evtl. das "use inventory on character" event in verwendung?

meinst du, ich sollte das benutzen oder ob das anderweitig in benutzung is? letzteres wäre bei dem char nicht der fall, das script ist alles was mit ihm zu tun hat
« Letzte Änderung: 04. Mai 2010, 19:25:11 von mukk »
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #82 am: 04. Mai 2010, 19:55:38 »
hab jetzt bei meinem projekt nachgesehen und es verhält sich genau so wie deines
sprich der A_GIVE_TO-check greift ins leere
als alternative hab ich dann das "Use inventory on character" ereignis verwendet, damit klappt es ganz gut
aber stimmt, das ist mir vor langer langer zeit auch mal spanisch vorgekommen  ???

was sagen denn unsere starterpack-experten dazu?
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #83 am: 04. Mai 2010, 20:08:51 »
unter use inventory on... klappts bei mir auch nich...hast du statt geben benutzen genommen?
« Letzte Änderung: 04. Mai 2010, 20:10:18 von mukk »
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Bòógieman

  • International anerkannter Superheld
  • Globaler Moderator
  • alter Tentakel
  • *****
  • Beiträge: 2667
  • Geschlecht: Männlich
  • Grün Tentakel = Running Sushi!
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #84 am: 04. Mai 2010, 20:35:19 »
also bei mir wird das sowohl bei "benutze" als auch bei "gib" ausgeführt  :-\
ist vielleicht eine generelle spiel-option?

bzw. in diesem ereignis darfst du dann nicht mehr mit UsedAction abfragen sondern machst gleich direkt das skript das er bei "gib" ausführen soll
« Letzte Änderung: 04. Mai 2010, 20:36:23 von Bòógieman »
Schlachtaman Vibrations, UHYEAH!!!
_________________________________

>>>> Ende der Kommunikation <<<<

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #85 am: 04. Mai 2010, 21:16:24 »
ah das klappt, danke
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #86 am: 05. Mai 2010, 10:35:53 »
hab grad n bissl im adventuretreff rumgelesen und bin dabei hierauf gestoßen:

http://www.adventure-treff.de/forum/viewtopic.php?p=172643#p172643

ist also alles bekannt :)
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #87 am: 06. Mai 2010, 21:19:05 »
ich bräuchte hilfe beim scripten:

1. ich hätte gern, das bestimmte inventory-items immer oben-links in der inventory-liste auftauchen...gibbets da was?

2. ich bräuchte ein object, dass in einem scrollenden raum immer an der gleichen stelle im "vordergrund" auftaucht, also sowas wie die stoppuhr bei mmd "the race"

ein paar anstöße in die richtige richtung  würden schon reichen :)
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.

Mister L

  • Boss der T.I.A.
  • Globaler Moderator
  • Ehrwürdiger Tentakel
  • *****
  • Beiträge: 3113
  • Geschlecht: Männlich
  • "R.I.P. Clever & Smart † 1958 -2023"
    • Profil anzeigen
    • Maniac Mansion - Night of the Meteor
Re: mukks Fragethread ^^
« Antwort #88 am: 06. Mai 2010, 21:31:35 »
Zu 1.)

Das geht mit  player.AddInventory (ilukenöffner,1);

Damit würde der Lukenöffner an Position 1 des Inventars gepackt.

Zu 2 fällt mir nur ein neues GUI ein, weiß nicht ob das die Lösung für dein Problem ist.  :-\
« Letzte Änderung: 06. Mai 2010, 21:48:25 von Mister L »

mukk

  • kleiner Tentakel
  • ***
  • Beiträge: 145
  • Geschlecht: Männlich
    • Profil anzeigen
Re: mukks Fragethread ^^
« Antwort #89 am: 06. Mai 2010, 22:17:59 »
jo isses, dankeschön  :)
Each year, vegetarians bully animals,
cheat in relationships, watch porno and cause pollution.
So join the fight now and stop the vegetarians.