Please login or register.

Login with username, password and session length
Advanced search  

News:

This forum provides RSS feed. To query recent posts use this url. More...


Author Topic: Zjištění množství peněz (věcí)  (Read 4291 times)

0 Members and 1 Guest are viewing this topic.

killer

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 22
    • View Profile
Zjištění množství peněz (věcí)
« on: September 17, 2007, 01:34:34 PM »

Chtěl bych se zeptat jak by šlo udělat aby např. postava když u sebe nemá dostatečné množství peněz (WME demo) nemohla provést určitou další věc.Zkoušel sem využít tohle počítadlo http://forum.dead-code.org/index.php?topic=1720.0 ale nějak nefungovalo - postava mi stále hlásila že má nedostatek peněz ikdyž sem potřebné množství u sebe měl.
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Zjištění množství peněz (věcí)
« Reply #1 on: September 17, 2007, 03:24:00 PM »

Zkus sem postnout svuj skript. Ten vyse popsany postup by mel fungovat, neni na nem nakonec nic zazracneho, jen globalni promenna a podminka, ktera promennou testuje.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

killer

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 22
    • View Profile
Re: Zjištění množství peněz (věcí)
« Reply #2 on: September 17, 2007, 06:31:54 PM »

Takže do items/money.script vložim ten
Code: [Select]
global MoneyAmount = 0;
method AddMoney(AddAmount)
{
  if(MoneyAmount==null) MoneyAmount = 0;
  if(AddAmount==null) AddAmount = 0;

  MoneyAmount = MoneyAmount + AddAmount;

  if(MoneyAmount <= 0)
  {
    MoneyAmount = 0;
    Game.DropItem("money");
  }
  else
  {
    if(!Game.IsItemTaken("money")) Game.TakeItem("money");
  }
 
  var InvWindow = Game.GetInventoryWindow();
  var MoneyDisplay = InvWindow.GetControl("money");
  MoneyDisplay.Text = "$" + ToString(MoneyAmount);
 
}
pak  do sceny vložim ty peníze a dám k nim
Code: [Select]
on "Take"
{
  actor.GoToObject(this);
  Game.TakeItem("money");
}
no a nakonec připíšu k entitě oldgyu
Code: [Select]
on "Talk"

if(MoneyAmount < 100) actor.Talk("I don't have enough money.");
else
{
rozhovor..
}
no a když spustim hru,vezmu ty peníze (200) tak mi stejně postava řekne I don't have enough money.
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Zjištění množství peněz (věcí)
« Reply #3 on: September 17, 2007, 06:38:44 PM »

Ten skript byl minen jinak. Ten uvodni kod se ma pridat do game.script. Diky tomu pak kdekoliv ve hre staci zavolat napr. Game.AddMoney(100); cimz hraci pribyde 100 penez. Stejne tak kdyz hrac nekde zaplati, zavola se Game.AddMoney(-100); Ten skript uz sam zajisti, ze se do inventare prida predmet "money", nebo se naopak z inventare odstrani, kdyz hrac vsechny penize utrati.
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave

killer

  • Lurker
  • *
  • Karma: 0
  • Offline Offline
  • Posts: 22
    • View Profile
Re: Zjištění množství peněz (věcí)
« Reply #4 on: September 18, 2007, 10:12:59 AM »

Takže počítadlo už funguje jenom bych ještě potřeboval poradit jak ma byt nastavené money v item.scrtiptu.Protože se mi nezobrazuje hodnota těch peněz.
Code: [Select]
ITEM
{
   CURSOR_COMBINED = TRUE
   CAPTION = "Money"
   NAME = "money"
   SPRITE = "items\money.png"
   CURSOR = "items\money.png"
   CURSOR_HOVER = "items\money_h.png"
   SCRIPT = "items\money.script"

   DISPLAY_AMOUNT = TRUE
   AMOUNT = 200
   AMOUNT_ALIGN = right
   AMOUNT_OFFSET_x = 5
   AMOUNT_OFFSET_Y = 47
}
takhle tam jsou zadaný ty peníze a pokud dám třeba AddMoney(100) tak mě to ukazuje 200 i když normálně to počítá s tou 100.A když těch posledních 5 řádků vymažu tak to zase neudává žádnou hodnotu.
Logged

Mnemonic

  • WME developer
  • Administrator
  • Addicted to WME forum
  • *
  • Karma: 41
  • Offline Offline
  • Gender: Male
  • Posts: 5683
    • View Profile
    • Dead:Code Site
Re: Zjištění množství peněz (věcí)
« Reply #5 on: September 18, 2007, 05:32:16 PM »

Ano, protoze fabiobasile zobrazuje mnozstvi penez primo v okne inventare, ne u predmetu, cemuz je ten skript prizpusoben.
Musel bys nasledujici radky:

Code: WME Script
  1. var InvWindow = Game.GetInventoryWindow();
  2. var MoneyDisplay = InvWindow.GetControl("money");
  3. MoneyDisplay.Text = "$" + ToString(MoneyAmount);
  4.  

nahradit necim jako:

Code: WME Script
  1. var MoneyItem = Game.GetItem("money");
  2. MoneyItem.Amount = ToString(MoneyAmount) + " Kč";
  3.  
Logged
Yes, I do have a twitter account
Please don't send me technical questions in private messages, use the forum. ::wave
 

Page created in 0.044 seconds with 24 queries.