Please login or register.

Login with username, password and session length
Advanced search  

News:

Latest WME version: WME 1.9.1 (January 1st, 2010) - download

Author Topic: Jak se zbavit komenotování jen když použiju Item na šipku v inventaři."VY  (Read 3190 times)

0 Members and 1 Guest are viewing this topic.

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile

Omlouvám se že zase já, ale můj další problem je, když mám plný inventář a chci nějakou věc kombinovat s druhou a musim se na ní posunout, protože není vidět. Kliknu s itemem který jsem si naklikl na šipku iventáře, ale postava mi komentuje daný Randomy odpovědí (to nejde, atd...). Skusil jsem šipce přiřadit script, při kombinaci například s tím předmětem aby nic neřekla. No a funguje to, akorad si nedovedu představit že tý šipce budu psat tolik předmětů kolik mám itemů. Nedá se tam napsat něco lepšího než.

Code: [Select]
#include "scripts\base.inc"


////////////////////////////////////////////////////////////////////////////////
on "dopisy"
{
}

Něco místo přímého jména itemu. All a null mi nefunguje. Aby to prostě platilo pro každý item. Jinak asi by se to dalo poladit v Game.scriptu, ale tam nemám vubec žádný nápad.
« Last Edit: July 04, 2009, 11:54:15 AM by pirko7 »
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site

Ano, v game.script je neco jako:

Code: WME Script
  1.     // using an inventory item on another object
  2.     else if(Game.SelectedItem != null && Game.SelectedItem!=ActObj)
  3.     {
  4.       var Item = Game.SelectedItem;
  5.       if(ActObj.CanHandleEvent(Item.Name)) ActObj.ApplyEvent(Item.Name);
  6.       else if(Item.CanHandleEvent("default-use")) Item.ApplyEvent("default-use");
  7.       else if(ActObj.CanHandleEvent("default-use")) ActObj.ApplyEvent("default-use");
  8.       else actor.Talk("I can't use these things together.");
  9.     }
  10.  

Musel bys tam doplnit podminku, aby se tohle delalo jen v pripade, ze ActObj.Type neni "button" ani "window".
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile

Ano mám to takhle:
Code: [Select]
else if(Game.SelectedItem != null && Game.SelectedItem!=ActObj)
    {
      var Item = Game.SelectedItem;
      if(ActObj.CanHandleEvent(Item.Name)) ActObj.ApplyEvent(Item.Name);
      else if(Item.CanHandleEvent("default-pouzit")) Item.ApplyEvent("default-pouzit");
      else if(ActObj.CanHandleEvent("default-pouzit")) ActObj.ApplyEvent("default-pouzit");
     // *****
      else switch(Random(0,3))
    {
             case "0":
              actor.Talk("To nepůjde.");
              break;
 
case "1":
              actor.Talk("Nezdá se mi to.");
  break;
   
            case "2":
              actor.Talk("Něco mi na tom nesedí.");
  break;
 
            case "3":
              actor.Talk("Tohle nebude fungovat.");
  break;  
}
    }

Tam jak mám pět hvězdiček tam teď vložím else if a smažu else u switche, to mi je myslím jasný, horší je to s tím, že nemám vůbec nápad jak se v tý IF zeptat, napadají mě hlouposti jako: else if(ActObj = button) //no to je ovšem blbost. Nevěděl by jsi prosímtě co tam napsat?  ::)
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site

if(ActObj.Type != "window" && ActObj.Type != "button")
{
  switch()...
}
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

pirko7

  • Regular poster
  • ***
  • Karma: 0
  • Offline Offline
  • Posts: 166
    • View Profile

Děkuji moc. Funguje to přesně podle požadavků.  :)  ::thumbup
Logged
 

Page created in 0.058 seconds with 21 queries.