~ Forums of Enroth ~

An Enroth diehard fan community
 
HomeHome  ChatChat  FAQFAQ  SearchSearch  RegisterRegister  Log inLog in  
Latest topics
» [Ironfist ver 1.3.0+] Bug with fonction OnLocationVisit(type, x, y)
by Unknown_Hero Yesterday at 23:49

» [Ironfist ver 1.3.0+] Unexpected program termination when a double click is performed on a town
by Unknown_Hero Yesterday at 23:46

» [Ironfist ver 1.3.0+] Pixel of blue color visible during fade to black when launching a scenario
by Unknown_Hero Yesterday at 23:43

» [Ironfist ver 1.3.0+] The bass.dll file is missing after installation
by Unknown_Hero Yesterday at 23:40

» [Ironfist ver 1.3.0] Bug in lua scripts with IDs "CREATURE_PEASANT" or "0"
by Unknown_Hero Yesterday at 23:35

» Let's talk about Wizards
by Orzie Yesterday at 05:23

» [Ironfist ver 1.3.0] Lua script, instructions validation problem
by Unknown_Hero 2018-10-13, 23:19

Poll
"Wait" in HoMM2?
Yes
80%
 80% [ 55 ]
No
20%
 20% [ 14 ]
Total Votes : 69
Most Viewed Topics
H3SW: General Graphics discussion
Ragoon's Graphics For HoMM3SW
H3SW General Discussion
H3SW: Dwelling Development
H3SW Map List: Work in progress
Welcome fellow Enrothians!
Enrothian Fan Art
Commanders?
Heroes of Might and Magic 3: The Succession Wars - General info & Announcements
Dervish Faction General Concept

Share | 
 

 [Ironfist ver 1.3.0] "GetCurrentPlayer()" and "GetHeroOwner(hero)"

Go down 
AuthorMessage
Unknown_Hero
Minotaur
Minotaur
avatar

Messages : 397
Quality Points : 56
Registration Date : 2015-09-06

PostSubject: [Ironfist ver 1.3.0] "GetCurrentPlayer()" and "GetHeroOwner(hero)"   2018-09-27, 00:00

I'm trying to understand how it works. Smile

On the Scripting Documentation page:

GetCurrentPlayer()
Returns a number (0-5) determining which player is active now.

GetHeroOwner(hero)
hero: The hero to get the owner of. (See, for example, GetHero).
Returns the owner of the given hero as an integer (0-5), or -1 if the hero is not owned by any player (i.e.: is or may become available for hire).

I did some tests.

This does not work:

Code:
function OnHeroMove(x, y)
  player = GetCurrentPlayer();
  if player == 0 then
    MessageBox("Player is 0.");
  elseif player == 1 then
    MessageBox("Player is 1.");
  end;
end

This works:

Code:
function OnHeroMove(x, y)
  hero = GetCurrentHero();
  owner = GetHeroOwner(hero);
  if owner == 0 then
    MessageBox("Owner is 0.");
  elseif owner == 1 then
    MessageBox("Owner is 1.");
  end;
end

This works:

Code:
function OnHeroMove(x, y)
  player = GetCurrentPlayer();
  gold = GetResource(player, RESOURCE_GOLD);
  gold = gold - 500;
  SetResource(player, RESOURCE_GOLD, gold);
  MessageBox("Player - 500 gold.");
end

This does not work:

Code:
function OnHeroMove(x, y)
  hero = GetCurrentHero();
  player = GetHeroOwner(hero);
  gold = GetResource(player, RESOURCE_GOLD);
  gold = gold - 500;
  SetResource(player, RESOURCE_GOLD, gold);
  MessageBox("Player - 500 gold.");
end

So, what is the difference between the two expressions and why it works in one case and not in the other? Is this normal?

It would be nice if someone could tell me. Very Happy
Back to top Go down
 
[Ironfist ver 1.3.0] "GetCurrentPlayer()" and "GetHeroOwner(hero)"
Back to top 
Page 1 of 1
 Similar topics
-
» ironfist - problème avec Avast DRep
» [Ironfist ver 1.2] scrXXXX.tmp files
» Some Ironfist changes I am working on
» [Ironfist ver 1.2] Crash with AUTOSAVE
» Virus detected into Ironfist..??

Permissions in this forum:You cannot reply to topics in this forum
~ Forums of Enroth ~ :: Modding Guild :: Heroes of Might and Magic II: Project Ironfist :: Modding and Mapmaking-
Jump to: