Ok, I changed menumode to a specific menu. Now I only get the message in the inventory screen, but It still pops up every few seconds weather i have a weapon equipped or not.
new script
Spoiler scn MFQWeaponCurse1Ref EquipedWeaponBegin MenuMode 1002Set EquipedWeapon to Player.GetEquippedObject 16 IF Player.GetWeaponType EquipedWeapon != 4 MessageBox "testing 1 2 3" EndIfEnd
EDIT: For some reason "!=" doesn't work. I changed "!=" to "==", opened my inventory menu and nothing happened (I got gitty like a school girl) then I equipped a staff and boom I get the message like I'm supposed to. This isn't exactly what i wanted, but it's a start.
EDIT 2: Here is my newest attempt.
Spoiler scn MFQWeaponCurse1Ref EquipedWeaponBegin MenuMode 1002Set EquipedWeapon to Player.GetEquippedObject 16 IF Player.GetWeaponType EquipedWeapon == 0 MessageBox "Sword" ElseIf Player.GetWeaponType EquipedWeapon == 1 MessageBox "Big sword" ElseIf Player.GetWeaponType EquipedWeapon == 2 MessageBox "Blunt" ElseIf Player.GetWeaponType EquipedWeapon == 3 MessageBox "Big,,,,, Blunt?" ElseIf Player.GetWeaponType EquipedWeapon == 5 MessageBox "Bow" EndIfEnd
I'm getting a similar result to one the earlier script attempts. I get the "Sword" message whenever i'm in the inventory screen regardless if I have a sword equipped or not.
EDIT 3: Ok for some reason "IF Player.GetWeaponType EquipedWeapon == 0" messes everything up. It's something to do with "0", But "0" is 1hSword so I don't understand what what the problem is. "4" works fine, when ever i equip a staff I get the message.
EDIT4: solved.
Spoiler scn MFQWeaponCurse1Ref WeaponShort WeaponTypeBegin MenuMode 1002Set Weapon to Player.GetEquippedObject 16Set weapontype to GetWeaponType Weapon IF WeaponType < 0 ;probably unnecessary return ElseIF WeaponType == 0 If Player.GetEquippedObject 16 == 0 return ElseIf Player.GetEquippedObject 16 != 0 MessageBox "Sword" EndIf ElseIF WeaponType == 4 MessageBox "Staff" Else ;probably unnecessary Return EndIfEnd