detecting inventory items?

Gelroos

New Member
Reaction score
0
I can detect 1 of any item, but I can't figure out how to check for 2 or more of the same type of items in a units inventory. Anyone know of a simple way to trigger this?
 
I do not beleave there is a built-in function for that. It should be relativly easy to make a JASS function that returns how many items of a certain type a hero has, though.

Variables:
u: The Unit
t: The item Type
c: Count of items of type t
i: Loop Variable

Note that in JASS, item-types are acually integers.

Code:
function CountItemsOfType takes unit u, integer t returns integer
 local integer c = 0
 local integer i = 0

 loop
  exitwhen i > UnitInventorySizeBJ(u)
  if GetItemTypeId(UnitItemInSlot(u, i)) == t then
   set c = c + 1
  endif
 endloop

 return c
endfunction
 
hrm.. guess I'll have to learn this JASS thing I've been seeing around..
looks a bit like Basic and C :p

Thanks for the info and the snippet.
 
It is a good thing to learn JASS even if you don't need it, as it can make for MUCH more efficiant, and smaller, functions. The biggest feat of JASS would have to be local variables, but following that, is the ability to write functions that take arguments and return values. Also, with local variables, alot of common GUI bugs that rotate around multi-instancing are suddenly gone. In short, JASS is good :D
 
You dont need jass for this, well the jass version is much better if it is realy used as a condition and not a set global then check global vaule as you have to do if you want the rest of your trigger to be in GUI format.

Here is the gui version then, recuires one integer variable. Here called count.

Code:
    Events
    Conditions
    Actions
        set count = 0 // Missed that but fixed now, thanks
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Item-type of (Item carried by <Some Unit> in slot (Integer A))) Equal to <Some Item Type>
                    Then - Actions
                        Set count = (count + 1)
                    Else - Actions
                        ---- No need to do anything ----
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                count Less than 2
            Then - Actions
                Skip remaining actions
            Else - Actions


And you should learn jass anyway, it is a great help. And you can use all cool jass spells and systems outthere without any problems. You create your functions above all triggers, where the name of the map is, the custom script section.
 
ok, yea. I found the custom script area.. I really need to find some type of JASS tutorial and do my homework on it.. I have too many questions to ask :eek:

thanks all
 
phyrex1an said:
You dont need jass for this, well the jass version is much better if it is realy used as a condition and not a set global then check global vaule as you have to do if you want the rest of your trigger to be in GUI format.

Here is the gui version then, recuires one integer variable. Here called count.

Code:
    Events
    Conditions
    Actions
        For each (Integer A) from 1 to 6, do (Actions)
            Loop - Actions
                If (All Conditions are True) then do (Then Actions) else do (Else Actions)
                    If - Conditions
                        (Item-type of (Item carried by <Some Unit> in slot (Integer A))) Equal to <Some Item Type>
                    Then - Actions
                        Set count = (count + 1)
                    Else - Actions
                        ---- No need to do anything ----
        If (All Conditions are True) then do (Then Actions) else do (Else Actions)
            If - Conditions
                count Less than 2
            Then - Actions
                Skip remaining actions
            Else - Actions


And you should learn jass anyway, it is a great help. And you can use all cool jass spells and systems outthere without any problems. You create your functions above all triggers, where the name of the map is, the custom script section.
You need to set count to 0 before the loop
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Varine Varine:
    Like yeah I can tell. I don't need to fucking know.
  • Varine Varine:
    So now he's getting scrutinized and will not be top of the list. I know I don't have the smartest people but I do expect them to have some common fucking sense
  • Varine Varine:
    I did do a rare thing for me and hire a girl last month without warning. Everyone was made at me because I started her at like 21, but she worked with me before and I was like don't care. She made 19 at her old job and I wanted her to come work with me, she is the best
    +1
  • Varine Varine:
    I'm going to get her a raise at the end of the summer. She wants to go to school again, but I want her to still work with me so.... she kind of can just tell me what the price is. I can go to 25 if she keeps up. I need to get her onto line more, that's what she wants, but I need her where she is and it's not fair that she doesn't get the little bit of raise that comes with it. She can do it no problem, I've worked with her there.
  • Varine Varine:
    It's just hard to move and train people unnecessarily right now. And also the line fucking sucks, it's not any more fun. This is turn and burn so I have the bankroll, and everyone suffers for it
  • Varine Varine:
    Eventually we'll get it balanced, we'
  • Varine Varine:
    we're starting online orders and stuff, but I also turn that off all the time because I barely keep up trying to be the best at Sysco shit
  • Varine Varine:
    I think it's gonna be a good fall and winter though. We're going to have a good staff, they will get along, they will be able to manage the workload and the complications, they know how to really cook this year, like every person on line knows their steak temps. Some of them use thermometers a lot and they don't always use them right, but they do know how to do it. Failure, especially in this field, is the only way to get better. They'll get it
  • Varine Varine:
    They won't get feel down while they do the thermometer, but we didn't have an instant read probe when I was learning. Like they did but god knows how off it is, you HAD to do it by feel. Even if the chef was fine with me bringing my own, it takes too long. Poke and know
  • The Helper The Helper:
    420 threads in the Artificial Intelligence forum :)
  • The Helper The Helper:
    Happy Monday!
    +1
  • The Helper The Helper:
    and then it was Tuesday!
    +1
  • The Helper The Helper:
    fyi I am going out of town to lake somewhere in bfe texas for the weekend will be gone Friday morning to sunday afternoon for a paranormal thing and some rest peace
  • jonas jonas:
    cool take it easy
  • jonas jonas:
    I recently had an experience with a waiter that really brought down @Varine's point about them being in sales. The first waiter just asked "anything else? deserts?" and when the table shook their head said "ok" and left. Then the other waiter came in and started going off describing the deserts and you could see the heads turning, and they finally got a bunch of deserts
  • jonas jonas:
    makes sense if you consider that the tip is basically a commission on sales
    +1
  • The Helper The Helper:
    anybody know what the attachment limit size is on the forum?
  • The Helper The Helper:
    answer 65536 kb
  • Ghan Ghan:
    That's an arbitrary number. It could be whatever you want, really. Though one wonders what the use case is for uploading giant files to a forum these days.
  • The Helper The Helper:
    I should have asked elsewhere but i wanted vsnes to see he is trying to upload a pic no big deal it can stay where it is.
  • The Helper The Helper:
    That was a fun trip. Next time I am going to get some kind of water thing like a kayak or something to boat out n the lake, maybe get a place with a pier on it.
  • The Helper The Helper:
    Happy Monday! Hope everyone has a fantastic week!
  • A Andyoyo:
    Have a great week as well
    +1

      The Helper Discord

      Members online

      No members online now.

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials
      Top