Hello maybe this will be my first tut , so don't go easy on me , this will allow you to create a spell type that will give you item after cast lets start at client side and server side shall we? add this at spell constant ``` Public Const SPELL_TYPE_ITEM As Byte = 5 ``` on spellrec add this 2 line ``` GItemNum As Long GItemValue As Long ``` client side form work at spell editor add a 1 frame , 2 scrollbars , and 2 labels also add a "Item" on cmbType name the following 1 scrollbar = scrlitem (make the min of this scrlbar to 1 and max to 255) 1 scrollbar = scrlitemvalue 1 label = lblitem 1 label = lblitemvalue add this at scrlitem ``` lblItem.Caption = "Item: " & Trim$(Item(scrlItem.Value).Name) Spell(EditorIndex).GItemNum = scrlItem.Value ``` add this at scrlitemvalue ``` lblItemValue.Caption = "Value: " & scrlItemValue.Value Spell(EditorIndex).GItemValue = scrlItemValue.Value ``` at spelleditorinit add this where ever you see it fit ``` .scrlItem.Value = Spell(EditorIndex).GItemNum .scrlItemValue.Value = Spell(EditorIndex).GItemValue ``` server side find ``` Case SPELL_TYPE_WARP SendAnimation mapnum, Spell(spellnum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, Index PlayerWarp Index, Spell(spellnum).Map, Spell(spellnum).x, Spell(spellnum).y SendAnimation GetPlayerMap(Index), Spell(spellnum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, Index DidCast = True ``` add this below ``` Case SPELL_TYPE_ITEM SendAnimation GetPlayerMap(Index), Spell(spellnum).SpellAnim, 0, 0, TARGET_TYPE_PLAYER, Index GiveInvItem Index, Spell(spellnum).GItemNum, Spell(spellnum).GItemValue DidCast = True ``` now you can do the modification if you want , that's all thank you