GetBuyingPlayer()

Amn

Member
Reaction score
18
hi, if i have my hero shared and someone else buys an item with him -like a potion-, how do i know who bought it ?


on event EVENT_PLAYER_UNIT_SELL_ITEM i get this values

GetItemPlayer( GetSoldItem() ) returns the shop's owner
GetTriggerPlayer() returns shop's owner too
GetBuyingUnit() returns my hero
GetTriggerUnit() returns shop

i tried several others natives but they all return null
any ideas ?
thank u
 

luorax

Invasion in Duskwood
Reaction score
67
You can't retrieve who ordered any of your units to do anything.
 

Frozenhelfir

set Gwypaas = Guhveepaws
Reaction score
56
The real only way I'd know to do this is to have a shop for each player underneath a generic shop. Select the player shop when the generic shop is selected. This way you can tell who buys what because each player can only use their specific shop.
 

KaerfNomekop

Swim, fishies. Swim through the veil of steel.
Reaction score
613
You could make it so that only one player can select the unit at a time, so whoever selected the unit last is the one who bought the item.
 

Frozenhelfir

set Gwypaas = Guhveepaws
Reaction score
56
You could make it so that only one player can select the unit at a time, so whoever selected the unit last is the one who bought the item.

This would be the easiest way to code it, but it would be a major annoyance in game and prevent people from wanting to play your map. Fighting over shops is annoying. Sometimes you'll get that guy who camps the shops and makes it a pain for anyone else to use them if the guy is "out" of the game. I'd suggest doing it the "right" way instead of the quick way purely for playability.
 

Amn

Member
Reaction score
18
The real only way I'd know to do this is to have a shop for each player underneath a generic shop. Select the player shop when the generic shop is selected. This way you can tell who buys what because each player can only use their specific shop.

I tried already using dummy shops dynamically created for the buying player when he opens the shop but new shops have a annoying delay to start selling items. (disabled items saying 'requires nearby patron')

I can detect who's trying to shop cause i have a 'main shop' on my map that sells dummy units named 'combative', 'supportive', etc. The owner of the sold unit is the actual buying player.

When a 'combative' unit is sold i select another invisible/untargetable shop for the player that sells combative items. (Simulates a panel)
This works great, is fast and effective. But when this shops sell an item i can't obtain its owner like i do with sold units.
Yes, i could replace the items with units but there's around 120 so far. And is gonna mess up another systems.


If i were to use preplaced shops for every player i'd have to create, per shops locations, 1 main shop plus 11 categories multiplied number of players = 1 + 11 * 10 = 120 shops.
 

luorax

Invasion in Duskwood
Reaction score
67
Well, you can use dummy abilities and place everything in spell books, like I did on my map. Maximum 10 shop units, and they do more than selling items.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top