This is how plrcurrentweapon works.
First of all it is a condition. Secondly, it looks to see if the player is holding the weapon from a particular slot. In other words, if the player has two weapons.
Slot #1 - Colt45
Slot #2 - Tommygun
Now if you use the following script:
:state=0,plrwithinzone=1:state=5
:state=5,plrcurrentweapon=1:state=10
:state=5:state=15
:state=10:rpg_showquicktext=b-36-r Player has weapon from slot #1 - The Colt 45!,rpg_wait4enter,state=15
:state=15,plrwithinzone=0:state=0
If the player is holding the Colt45 when entering the trigger zone, the text in state #10 will be displayed. If the player is holding the tommygun then no text will be displayed. The command in state #10 is from RPG Mod.
If you replace the value 1 with 2 in the first state #5 then the reverse will take place. If player is holding the tommygun and enters the trigger zone then it will be true and so display the text. Of course you need to make sure that what you want to happen is truly based on the gun the player is holding.
Addendum #1:
The slot
must be filled with that weapon. If it is not considered a weapon in the engine then it will not take up a slot.
Addendum #2:
Another thing I thought of is that this command should not be in a constant loop. It should only be executed once and then whatever needs to be done if true is done. If the engine is constantly checking to see if the player is holding this particular "weapon" throughout the game there will be a terrible drain on the FPS for the game. It is not meant to be a constant checker for what the player is holding as a weapon. I don't know if I explained this very well but this is the best I could do.
I don't meant that it can only be executed once in the entire level but its use should be minimized.
THEORY - you know everything but nothing works. PRACTICE - when everything works but don't know why. For me, theory and practice are combined: nothing works and I don't know why.