add items to a shop for a single player only

SerraAvenger

Cuz I can
Reaction score
234
Is there any way to add items to a shop for a single player without getting Desyncs?

And is there a way to make the item not dissapear from the shop once it is bought?

thanks in advance for help, Davey
 

Romek

Super Moderator
Reaction score
964
> Is there any way to add items to a shop for a single player without getting Desyncs?
No

> And is there a way to make the item not dissapear from the shop once it is bought?
Items don't disappear from shops anyway..? o_O
 

BlackRose

Forum User
Reaction score
239
You mean, for only one player, or as in, single-player-mode? Why not just make a boolean and allow only certain player heroes to wear 'item'.

And is there a way to make the item not dissapear from the shop once it is bought?
What?
 

Romek

Super Moderator
Reaction score
964
And you don't know what desync means. :rolleyes:

Not to mention:
"if GetLocalPlayer() = whichplayer"
Should be:
"if GetLocalPlayer() == whichplayer then"
 

Frozenhelfir

set Gwypaas = Guhveepaws
Reaction score
56
Or instead of rummaging through all of this, one could just make a boolean array for each player. Add the item to the shop and set the booleans to true for each player you want to be able to buy it. Make a condition that checks :

JASS:
return MAHLEETBOOLEAN[GetPlayerId(GetOwningPlayer(GetTriggerUnit()))] == false


Then simply make some actions that remove the manipulated item from the game and restock the store + refund the player who bought it.
 

SerraAvenger

Cuz I can
Reaction score
234
I'd reccommend you make a dummy shop that gets selected if the certain player clicks the main shop.
That's impractical for my use, while generally a good idea.
EDIT:
@Frozenhelfir - I'll most probably do something like that... Although it is still quite ugly to have an item in a shop you can't buy for the whole game >_>

> And is there a way to make the item not dissapear from the shop once it is bought?
Items don't disappear from shops anyway..? o_O

Try simonankes code and buy the item in single player. Swuush.. The item is permanently gone (from the shop, that is) : /

@simonanke: That was (almost) the code I was using moths ago and it did desync - at the moment the item was bought.
 

Exide

I am amazingly focused right now!
Reaction score
448
I don't think GetLocalPlayer can help you with this issue.

You can add and remove items from any shop that has the ability 'Sell Items'. Which means that you could remove a certain item when a certain unit comes within range of the shop.
But if that unit stays there, and another unit comes within range - that item might be added.

The best thing you could do to restrict items from certain units is to replace them with a "muted" item (like in Dota), that does nothing, so that they can sell it and get their gold back (or some of it, at least.)
 

Azlier

Old World Ghost
Reaction score
461
You can create 12 shops, 1 for each player. All on top of eachother. You can size the ones of other players down to 0 with some GetLocalPlayer(). Sizing things down doesn't cause any desyncs, but it makes selection impossible if there is something else of top.
 

Romek

Super Moderator
Reaction score
964
As well as sizing them down, you could make all the rest transparent.
Setting Vertex Colour doesn't desync either.
 

Azlier

Old World Ghost
Reaction score
461
...What will that do? That won't prevent desyncs.
 

WolfieeifloW

WEHZ Helper
Reaction score
372
Desyncs occur instantaneously.
Changing stuff back "really quick" won't do anything :p .

From what I know, it's basically when one persons data doesn't match up to another persons or something.
I don't fully understand it but I know what causes them.
 
General chit-chat
Help Users
  • No one is chatting at the moment.

      The Helper Discord

      Staff online

      • Ghan
        Administrator - Servers are fun

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top