Jump to content
Search In
  • More options...
Find results that contain...
Find results in...

Ganjika

Members
  • Posts

    214
  • Joined

  • Last visited

    Never

Everything posted by Ganjika

  1. I do already have a sufficientloading screen, and the intro screen is cool too(unless i could find out how to make the login screens "main menu" translucent and maybe in the long run would want to modify the part that says "main menu" even if it wasn't translucent) ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/intro.png) Would be cool to see either a Papyrus or scroll (an old map look sorta like age of empires 2) themed GUI for everything beyond this login screen which gives a good view of the game as well) and looks like its written on papyrus or a scroll which either covers much of what it could be on and therefor is no background beyond that or is stapled or otherwised 'posted' on a background (a tree background maybe?) or maybe posted to a billboard background while still retaining that natural almost painted or drawn feeling )similiar to the visual feeling of your 'stone' gui setup you show above. I really dig what you did here and Thank You heartily should you choose to help me design an epic GUI for a engine I'm designing (I eventually would like to release a generic version of the finished engine to the community once the crafting system and a few other bugs are worked out - its based on dragon eclipse) - In any case, Everything here looks really cool, Good work.. Thanks for reading. =]
  2. Download link is dead, would be cool to get a hold of this. Is it still available on any means? Also - What file types does it use to turn things into 2d? and in the end what file tpes are the 2d?
  3. I'm interested to see if anyone has this or any similar (working) system working in EO 3.0 (Dx8).
  4. Not sure if there is supposed to be a 'Recipe" selection in drop-down (cmbtype) that makes frarecipe visable but: Found out I could at least get frarecipe visable (if i so much as use the dropdown menu that is cmbtype after switching the below 'frarecipe.visable=false' to true and it will become visable but it will subscript out of range if i (i think) try to ask it to do something its not supposed to since it doesnt go away even after clicking "none" in cmbtype, i turned it back to normal and decided to post here. projectiles is still missing in action but i can see it in VB6. Sorry to post so much on this topic, I -do- still plan on releasing a working version of eclipse with this feature on it in its working form as soon as I can figure out A) how it works and ![B)](http://www.touchofdeathforums.com/community/public/style_emoticons//cool.png) how to get it working - ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/crafting2.png) Also: The 'Crafting Tool:' dropdown reads correctly but it doesn't stick (i dont think) when i return to item editor it just says "Combo1". Below is the part of Frm_Editor_Item (in cmbType) which talks about Item_Type_Recipe ``` If (cmbType.ListIndex = ITEM_TYPE_RECIPE) Then fraRecipe.Visible = True Else fraRecipe.Visible = False End If Item(EditorIndex).Type = cmbType.ListIndex ``` Below is the part that (as ar as I know) works. Lets get this whole entire thing working so we can put it out for the entire community to utilize. ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/crafting.png) ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/crafting3.png)![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/craft4.png) UPDATE: -Matthew- took a look at my project and fixed the Projectiles window (it wsnt popping up at the right time) but we still need to figure out why/how to get the crafting area (fraRecipe) to pop up at the right time as well as figuring out how to get cmbCTool functional - currently it reads and shows up right but if you set an item with cmbCTool (to say "dwarf hammer" for example) it just goes back to "none" when i reload the item editor.
  5. I'm interested in seeing a tutorial (and maybe even on the rendering of map editor selection) on this as well.
  6. I wanted to figure out how to add drawing of 'currently selected tile when mapping' (like is in Eclipse Reborn)? I asked and was told to rip it from E.R but i'm still pretty new to this, any ideas? Thanks for reading.
  7. I think the problem is that (i could be wrong) "recipe" should be appearing in CmbType in Item Editor (though i could be wrong) - its just not appearing (in game) in the drop down list and hence i dont see part of the mod as i should. UPDATE: My Projectiles window isn't showing up as it should either (like the frarecipe, it just isn't there when in game). any ideas? UPDATE 2: Accidently double posted this when trying to paste this into a PM. sorry about that :'( HOW IT SHOULD LOOK: ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/howitshouldlook.png) HOW IT -DOES- LOOK: ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/isthisnormal.png) Frm_Item_Editor (Client) ``` Option Explicit Private LastIndex As Long Private Sub ChkTwoh_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If ChkTwoh.Value = 0 Then Item(EditorIndex).istwohander = False Else Item(EditorIndex).istwohander = True End If ' Error handler Exit Sub errorhandler: HandleError "chkTwoh", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbBind_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).BindType = cmbBind.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbBind_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbClassReq_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).ClassReq = cmbClassReq.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbClassReq_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbSound_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If cmbSound.ListIndex >= 0 Then Item(EditorIndex).sound = cmbSound.List(cmbSound.ListIndex) Else Item(EditorIndex).sound = "None." End If ' Error handler Exit Sub errorhandler: HandleError "cmdSound_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbTool_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Data3 = cmbTool.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbTool_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdDelete_Click() Dim tmpIndex As Long ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub ClearItem EditorIndex tmpIndex = lstIndex.ListIndex lstIndex.RemoveItem EditorIndex - 1 lstIndex.AddItem EditorIndex & ": " & Item(EditorIndex).Name, EditorIndex - 1 lstIndex.ListIndex = tmpIndex ItemEditorInit ' Error handler Exit Sub errorhandler: HandleError "cmdDelete_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub Form_Load() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler scrlPic.max = numitems scrlAnim.max = MAX_ANIMATIONS scrlPaperdoll.max = NumPaperdolls ' Error handler Exit Sub errorhandler: HandleError "Form_Load", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdSave_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Call ItemEditorOk ' Error handler Exit Sub errorhandler: HandleError "cmdSave_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdCancel_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Call ItemEditorCancel ' Error handler Exit Sub errorhandler: HandleError "cmdCancel_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbType_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If (cmbType.ListIndex >= ITEM_TYPE_WEAPON) And (cmbType.ListIndex MAX_ITEMS Then Exit Sub lblAccessReq.Caption = "Access Req: " & scrlAccessReq.Value Item(EditorIndex).AccessReq = scrlAccessReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAccessReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddHp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddHP.Caption = "Add HP: " & scrlAddHp.Value Item(EditorIndex).AddHP = scrlAddHp.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddHP_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddMp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddMP.Caption = "Add MP: " & scrlAddMP.Value Item(EditorIndex).AddMP = scrlAddMP.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddMP_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddExp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddExp.Caption = "Add Exp: " & scrlAddExp.Value Item(EditorIndex).AddEXP = scrlAddExp.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddExp_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAnim_Change() Dim sString As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If scrlAnim.Value = 0 Then sString = "None" Else sString = Trim$(Animation(scrlAnim.Value).Name) End If lblAnim.Caption = "Anim: " & sString Item(EditorIndex).Animation = scrlAnim.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAnim_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlDamage_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblDamage.Caption = "Damage: " & scrlDamage.Value Item(EditorIndex).Data2 = scrlDamage.Value ' Error handler Exit Sub errorhandler: HandleError "scrlDamage_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlFishing_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblFishing.Caption = "Fishing: " & scrlFishing.Value Item(EditorIndex).FXP = scrlFishing.Value ' Error handler Exit Sub errorhandler: HandleError "scrlFishing_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlLevelReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblLevelReq.Caption = "Level req: " & scrlLevelReq Item(EditorIndex).LevelReq = scrlLevelReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlLevelReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlMining_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblMining.Caption = "Mining: " & scrlMining.Value Item(EditorIndex).MXP = scrlMining.Value ' Error handler Exit Sub errorhandler: HandleError "scrlMining_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPaperdoll_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPaperdoll.Caption = "Paperdoll: " & scrlPaperdoll.Value Item(EditorIndex).Paperdoll = scrlPaperdoll.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPaperdoll_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPic_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPic.Caption = "Pic: " & scrlPic.Value Item(EditorIndex).Pic = scrlPic.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPrice_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPrice.Caption = "Price: " & scrlPrice.Value Item(EditorIndex).Price = scrlPrice.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPrice_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlRarity_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblRarity.Caption = "Rarity: " & scrlRarity.Value Item(EditorIndex).Rarity = scrlRarity.Value ' Error handler Exit Sub errorhandler: HandleError "scrlRarity_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlSpeed_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblSpeed.Caption = "Speed: " & scrlSpeed.Value / 1000 & " sec" Item(EditorIndex).speed = scrlSpeed.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSpeed_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlStatBonus_Change(Index As Integer) Dim text As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Select Case Index Case 1 text = "+ Str: " Case 2 text = "+ End: " Case 3 text = "+ Int: " Case 4 text = "+ Agi: " Case 5 text = "+ Will: " End Select lblStatBonus(Index).Caption = text & scrlStatBonus(Index).Value Item(EditorIndex).Add_Stat(Index) = scrlStatBonus(Index).Value ' Error handler Exit Sub errorhandler: HandleError "scrlStatBonus_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlStatReq_Change(Index As Integer) Dim text As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Select Case Index Case 1 text = "Str: " Case 2 text = "End: " Case 3 text = "Int: " Case 4 text = "Agi: " Case 5 text = "Will: " End Select lblStatReq(Index).Caption = text & scrlStatReq(Index).Value Item(EditorIndex).Stat_Req(Index) = scrlStatReq(Index).Value ' Error handler Exit Sub errorhandler: HandleError "scrlStatReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlSpell_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If Len(Trim$(Spell(scrlSpell.Value).Name)) > 0 Then lblSpellName.Caption = "Name: " & Trim$(Spell(scrlSpell.Value).Name) Else lblSpellName.Caption = "Name: None" End If lblSpell.Caption = "Spell: " & scrlSpell.Value Item(EditorIndex).Data1 = scrlSpell.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSpell_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlWoodcutting_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblWoodcutting.Caption = "Woodcuting: " & scrlWoodcutting.Value Item(EditorIndex).WcXP = scrlWoodcutting.Value ' Error handler Exit Sub errorhandler: HandleError "scrlWoodcutting_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub txtDesc_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Desc = txtDesc.text ' Error handler Exit Sub errorhandler: HandleError "txtDesc_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub txtName_Validate(Cancel As Boolean) Dim tmpIndex As Long ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub tmpIndex = lstIndex.ListIndex Item(EditorIndex).Name = Trim$(txtName.text) lstIndex.RemoveItem EditorIndex - 1 lstIndex.AddItem EditorIndex & ": " & Item(EditorIndex).Name, EditorIndex - 1 lstIndex.ListIndex = tmpIndex ' Error handler Exit Sub errorhandler: HandleError "txtName_Validate", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectileDamage_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileDamage.Caption = "Damage: " & scrlProjectileDamage.Value Item(EditorIndex).ProjecTile.Damage = scrlProjectileDamage.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectilePic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectilePic_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectilePic.Caption = "Pic: " & scrlProjectilePic.Value Item(EditorIndex).ProjecTile.Pic = scrlProjectilePic.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectilePic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' ProjecTile Private Sub scrlProjectileRange_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileRange.Caption = "Range: " & scrlProjectileRange.Value Item(EditorIndex).ProjecTile.Range = scrlProjectileRange.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectileRange_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectileSpeed_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileSpeed.Caption = "Speed: " & scrlProjectileSpeed.Value Item(EditorIndex).ProjecTile.speed = scrlProjectileSpeed.Value ' Error handler Exit Sub errorhandler: HandleError "scrlRarity_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlItem1_Change() If scrlItem1.Value > 0 Then lblItem1.Caption = "Item: " & Trim$(Item(scrlItem1.Value).Name) Else lblItem1.Caption = "Item: None" End If Item(EditorIndex).Recipe(RecipeIndex) = scrlItem1.Value End Sub Private Sub scrlItemNum_Change() RecipeIndex = scrlItemNum.Value lblItemNum.Caption = "Item: " & RecipeIndex scrlItem1.Value = Item(EditorIndex).Recipe(RecipeIndex) End Sub Private Sub scrlResult_Change() If scrlResult.Value > 0 Then lblResult.Caption = "Result: " & Trim$(Item(scrlResult.Value).Name) Else lblResult.Caption = "Result: None" End If Item(EditorIndex).Data3 = scrlResult.Value End Sub Private Sub scrlSmithReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblSmith.Caption = "SM: " & scrlSmithReq Item(EditorIndex).SmithReq = scrlSmithReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSmithReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlEnchantReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblEnchants.Caption = "EN: " & scrlEnchantReq Item(EditorIndex).EnchantReq = scrlEnchantReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSwordReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAlchemyReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblAlchemy.Caption = "Cook: " & scrlAlchemyReq Item(EditorIndex).AlchemyReq = scrlAlchemyReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAlchemyReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkAL_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Alchemist = chkAL.Value ' Error handler Exit Sub errorhandler: HandleError "chkAL_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkEN_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Enchanter = chkEN.Value ' Error handler Exit Sub errorhandler: HandleError "chkEN_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkSM_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Smithy = chkSM.Value ' Error handler Exit Sub errorhandler: HandleError "chkSM_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbCTool_Click() If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Tool = cmbCTool.ListIndex End Sub ``` and becuase i feel like folks might wanna see my modconstants too (client): ``` Option Explicit ' API Declares Public Declare Sub CopyMemory Lib "kernel32.dll" Alias "RtlMoveMemory" (Destination As Any, Source As Any, ByVal Length As Long) Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, ByVal hWnd As Long, ByRef msg() As Byte, ByVal wParam As Long, ByVal lParam As Long) As Long Public Declare Function GetForegroundWindow Lib "user32" () As Long ' animated buttons Public Const MAX_MENUBUTTONS As Long = 4 Public Const MAX_MAINBUTTONS As Long = 9 Public Const MENUBUTTON_PATH As String = "\Data Files\graphics\gui\menu\buttons\" Public Const MAINBUTTON_PATH As String = "\Data Files\graphics\gui\main\buttons\" ' Hotbar Public Const HotbarTop As Long = 2 Public Const HotbarLeft As Long = 2 Public Const HotbarOffsetX As Long = 8 ' Inventory constants Public Const InvTop As Long = 24 Public Const InvLeft As Long = 12 Public Const InvOffsetY As Long = 3 Public Const InvOffsetX As Long = 3 Public Const InvColumns As Long = 5 ' Bank constants Public Const BankTop As Long = 38 Public Const BankLeft As Long = 42 Public Const BankOffsetY As Long = 3 Public Const BankOffsetX As Long = 4 Public Const BankColumns As Long = 11 ' spells constants Public Const SpellTop As Long = 24 Public Const SpellLeft As Long = 12 Public Const SpellOffsetY As Long = 3 Public Const SpellOffsetX As Long = 3 Public Const SpellColumns As Long = 5 ' shop constants Public Const ShopTop As Long = 6 Public Const ShopLeft As Long = 8 Public Const ShopOffsetY As Long = 2 Public Const ShopOffsetX As Long = 4 Public Const ShopColumns As Long = 5 ' Character consts Public Const EqTop As Long = 224 Public Const EqLeft As Long = 18 Public Const EqOffsetX As Long = 10 Public Const EqColumns As Long = 4 ' values Public Const MAX_BYTE As Byte = 255 Public Const MAX_INTEGER As Integer = 32767 Public Const MAX_LONG As Long = 2147483647 ' path constants Public Const SOUND_PATH As String = "\Data Files\sound\" Public Const MUSIC_PATH As String = "\Data Files\music\" ' Font variables Public Const FONT_NAME As String = "Georgia" Public Const FONT_SIZE As Byte = 14 ' Log Path and variables Public Const LOG_DEBUG As String = "debug.txt" Public Const LOG_PATH As String = "\Data Files\logs\" ' Map Path and variables Public Const MAP_PATH As String = "\Data Files\maps\" Public Const MAP_EXT As String = ".map" ' Gfx Path and variables Public Const GFX_PATH As String = "\Data Files\graphics\" Public Const GFX_EXT As String = ".png" Public Const FONT_PATH As String = "\data files\graphics\fonts\" ' Key constants Public Const VK_UP As Long = &H26 Public Const VK_DOWN As Long = &H28 Public Const VK_LEFT As Long = &H25 Public Const VK_RIGHT As Long = &H27 Public Const VK_SHIFT As Long = &H10 Public Const VK_RETURN As Long = &HD Public Const VK_CONTROL As Long = &H11 ' Menu states Public Const MENU_STATE_NEWACCOUNT As Byte = 0 Public Const MENU_STATE_DELACCOUNT As Byte = 1 Public Const MENU_STATE_LOGIN As Byte = 2 Public Const MENU_STATE_GETCHARS As Byte = 3 Public Const MENU_STATE_NEWCHAR As Byte = 4 Public Const MENU_STATE_ADDCHAR As Byte = 5 Public Const MENU_STATE_DELCHAR As Byte = 6 Public Const MENU_STATE_USECHAR As Byte = 7 Public Const MENU_STATE_INIT As Byte = 8 ' Speed moving vars Public Const WALK_SPEED As Byte = 4 Public Const RUN_SPEED As Byte = 6 Public Const ADMIN_SPEED As Byte = 18 ' Tile size constants Public Const PIC_X As Long = 32 Public Const PIC_Y As Long = 32 ' Sprite, item, spell size constants Public Const SIZE_X As Long = 32 Public Const SIZE_Y As Long = 32 ' ******************************************************** ' * The values below must match with the server's values * ' ******************************************************** ' General constants Public Const MAX_PLAYERS As Long = 70 Public Const MAX_ITEMS As Long = 255 Public Const MAX_NPCS As Long = 255 Public Const MAX_ANIMATIONS As Long = 255 Public Const MAX_INV As Long = 35 Public Const MAX_MAP_ITEMS As Long = 255 Public Const MAX_MAP_NPCS As Long = 100 Public Const MAX_SHOPS As Long = 50 Public Const MAX_PLAYER_SPELLS As Long = 35 Public Const MAX_SPELLS As Long = 255 Public Const MAX_TRADES As Long = 30 Public Const MAX_RESOURCES As Long = 100 Public Const MAX_LEVELS As Long = 100 Public Const MAX_BANK As Long = 99 Public Const MAX_HOTBAR As Long = 12 Public Const MAX_PARTYS As Long = 35 Public Const MAX_PARTY_MEMBERS As Long = 4 Public Const MAX_SWITCHES As Long = 1000 Public Const MAX_VARIABLES As Long = 1000 Public Const MAX_WEATHER_PARTICLES As Long = 250 Public Const MAX_PLAYER_PROJECTILES As Long = 20 ' Website Public Const GAME_WEBSITE As String = "http://www.touchofdeathforums.com" ' text color constants Public Const Black As Byte = 0 Public Const Blue As Byte = 1 Public Const Green As Byte = 2 Public Const Cyan As Byte = 3 Public Const Red As Byte = 4 Public Const Magenta As Byte = 5 Public Const Brown As Byte = 6 Public Const Grey As Byte = 7 Public Const DarkGrey As Byte = 8 Public Const BrightBlue As Byte = 9 Public Const BrightGreen As Byte = 10 Public Const BrightCyan As Byte = 11 Public Const BrightRed As Byte = 12 Public Const Pink As Byte = 13 Public Const Yellow As Byte = 14 Public Const White As Byte = 15 Public Const DarkBrown As Byte = 16 Public Const Orange As Byte = 17 Public Const GoldenYellow As Byte = 18 Public Const Capri As Byte = 19 Public Const SayColor As Byte = White Public Const GlobalColor As Byte = Cyan Public Const BroadcastColor As Byte = White Public Const TellColor As Byte = BrightGreen Public Const EmoteColor As Byte = BrightCyan Public Const AdminColor As Byte = BrightCyan Public Const HelpColor As Byte = Cyan Public Const WhoColor As Byte = BrightGreen Public Const JoinLeftColor As Byte = DarkGrey Public Const NpcColor As Byte = Brown Public Const AlertColor As Byte = Red Public Const NewMapColor As Byte = BrightGreen ' Boolean constants Public Const NO As Byte = 0 Public Const YES As Byte = 1 ' String constants Public Const NAME_LENGTH As Byte = 20 Public Const MUSIC_LENGTH As Byte = 40 Public Const ACCOUNT_LENGTH As Byte = 12 ' Sex constants Public Const SEX_MALE As Byte = 0 Public Const SEX_FEMALE As Byte = 1 ' Map constants Public Const MAX_MAPS As Long = 100 Public MAX_MAPX As Byte Public MAX_MAPY As Byte Public Const MAP_MORAL_NONE As Byte = 0 Public Const MAP_MORAL_SAFE As Byte = 1 ' Tile constants Public Const TILE_TYPE_WALKABLE As Byte = 0 Public Const TILE_TYPE_BLOCKED As Byte = 1 Public Const TILE_TYPE_WARP As Byte = 2 Public Const TILE_TYPE_ITEM As Byte = 3 Public Const TILE_TYPE_NPCAVOID As Byte = 4 Public Const TILE_TYPE_KEY As Byte = 5 Public Const TILE_TYPE_KEYOPEN As Byte = 6 Public Const TILE_TYPE_RESOURCE As Byte = 7 Public Const TILE_TYPE_DOOR As Byte = 8 Public Const TILE_TYPE_NPCSPAWN As Byte = 9 Public Const TILE_TYPE_SHOP As Byte = 10 Public Const TILE_TYPE_BANK As Byte = 11 Public Const TILE_TYPE_HEAL As Byte = 12 Public Const TILE_TYPE_TRAP As Byte = 13 Public Const TILE_TYPE_SLIDE As Byte = 14 Public Const TILE_TYPE_SOUND As Byte = 15 Public Const TILE_TYPE_CHECKPOINT As Byte = 16 Public Const TILE_TYPE_ARENA As Byte = 17 Public Const TILE_TYPE_CRAFT As Byte = 18 ' max number of crafting items Public Const MAX_RECIPE_ITEMS As Long = 5 'Weather Type Constants Public Const WEATHER_TYPE_NONE As Byte = 0 Public Const WEATHER_TYPE_RAIN As Byte = 1 Public Const WEATHER_TYPE_SNOW As Byte = 2 Public Const WEATHER_TYPE_HAIL As Byte = 3 Public Const WEATHER_TYPE_SANDSTORM As Byte = 4 Public Const WEATHER_TYPE_STORM As Byte = 5 ' Item constants Public Const ITEM_TYPE_NONE As Byte = 0 Public Const ITEM_TYPE_WEAPON As Byte = 1 Public Const ITEM_TYPE_ARMOR As Byte = 2 Public Const ITEM_TYPE_HELMET As Byte = 3 Public Const ITEM_TYPE_SHIELD As Byte = 4 Public Const ITEM_TYPE_CONSUME As Byte = 5 Public Const ITEM_TYPE_KEY As Byte = 6 Public Const ITEM_TYPE_CURRENCY As Byte = 7 Public Const ITEM_TYPE_SPELL As Byte = 8 Public Const ITEM_TYPE_RECIPE As Byte = 10 Public Const ITEM_TYPE_SUMMON As Byte = 9 ' Direction constants Public Const DIR_UP As Byte = 0 Public Const DIR_DOWN As Byte = 1 Public Const DIR_LEFT As Byte = 2 Public Const DIR_RIGHT As Byte = 3 ' Constants for player movement: Tiles per Second Public Const MOVING_WALKING As Byte = 1 Public Const MOVING_RUNNING As Byte = 2 ' Admin constants Public Const ADMIN_MONITOR As Byte = 1 Public Const ADMIN_MAPPER As Byte = 2 Public Const ADMIN_DEVELOPER As Byte = 3 Public Const ADMIN_CREATOR As Byte = 4 ' NPC constants Public Const NPC_BEHAVIOUR_ATTACKONSIGHT As Byte = 0 Public Const NPC_BEHAVIOUR_ATTACKWHENATTACKED As Byte = 1 Public Const NPC_BEHAVIOUR_FRIENDLY As Byte = 2 Public Const NPC_BEHAVIOUR_SHOPKEEPER As Byte = 3 Public Const NPC_BEHAVIOUR_GUARD As Byte = 4 ' Spell constants Public Const SPELL_TYPE_DAMAGEHP As Byte = 0 Public Const SPELL_TYPE_DAMAGEMP As Byte = 1 Public Const SPELL_TYPE_HEALHP As Byte = 2 Public Const SPELL_TYPE_HEALMP As Byte = 3 Public Const SPELL_TYPE_WARP As Byte = 4 ' Game editor constants Public Const EDITOR_ITEM As Byte = 1 Public Const EDITOR_NPC As Byte = 2 Public Const EDITOR_SPELL As Byte = 3 Public Const EDITOR_SHOP As Byte = 4 Public Const EDITOR_RESOURCE As Byte = 5 Public Const EDITOR_ANIMATION As Byte = 6 ' Target type constants Public Const TARGET_TYPE_NONE As Byte = 0 Public Const TARGET_TYPE_PLAYER As Byte = 1 Public Const TARGET_TYPE_NPC As Byte = 2 Public Const TARGET_TYPE_EVENT As Byte = 4 ' Dialogue box constants Public Const DIALOGUE_TYPE_NONE As Byte = 0 Public Const DIALOGUE_TYPE_TRADE As Byte = 1 Public Const DIALOGUE_TYPE_FORGET As Byte = 2 Public Const DIALOGUE_TYPE_PARTY As Byte = 3 ' Do Events Public Const nLng As Long = (&H80 Or &H1 Or &H4 Or &H20) + (&H8 Or &H40) ' Scrolling action message constants Public Const ACTIONMSG_STATIC As Long = 0 Public Const ACTIONMSG_SCROLL As Long = 1 Public Const ACTIONMSG_SCREEN As Long = 2 ' stuffs Public HalfX As Integer Public HalfY As Integer Public ScreenX As Integer Public ScreenY As Integer Public StartXValue As Integer Public StartYValue As Integer Public EndXValue As Integer Public EndYValue As Integer ' Autotiles Public Const AUTO_INNER As Byte = 1 Public Const AUTO_OUTER As Byte = 2 Public Const AUTO_HORIZONTAL As Byte = 3 Public Const AUTO_VERTICAL As Byte = 4 Public Const AUTO_FILL As Byte = 5 ' Autotile types Public Const AUTOTILE_NONE As Byte = 0 Public Const AUTOTILE_NORMAL As Byte = 1 Public Const AUTOTILE_FAKE As Byte = 2 Public Const AUTOTILE_ANIM As Byte = 3 Public Const AUTOTILE_CLIFF As Byte = 4 Public Const AUTOTILE_WATERFALL As Byte = 5 ' Rendering Public Const RENDER_STATE_NONE As Long = 0 Public Const RENDER_STATE_NORMAL As Long = 1 Public Const RENDER_STATE_AUTOTILE As Long = 2 'Chatbubble Public Const ChatBubbleWidth As Long = 200 Public Const EFFECT_TYPE_FADEIN As Long = 1 Public Const EFFECT_TYPE_FADEOUT As Long = 2 Public Const EFFECT_TYPE_FLASH As Long = 3 Public Const EFFECT_TYPE_FOG As Long = 4 Public Const EFFECT_TYPE_WEATHER As Long = 5 Public Const EFFECT_TYPE_TINT As Long = 6 Public Const cmbCTool As Long = 1 ```
  8. > You could also do something like this in PlayerAttackNpc > > ``` > > Select Case Npc(npcNum).Name > > > > Case "Boss name here" > > GlobalMsg Player(attacker).Name & " has killed this boss!", BrightGreen > > > > > > End Select > > ``` Where in playeattacknpc and is it just the npcnum that needs to be changed?
  9. just found out why i might be having a hard time figuring out this mod, the window (fraRecipe in frmeditor_item) **does -not- show up when it is in game**, how can i address this? for reference here is my **fraRecipe**. Thanks for reading, all advice is appreciated. ``` Option Explicit Private LastIndex As Long Private Sub ChkTwoh_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If ChkTwoh.Value = 0 Then Item(EditorIndex).istwohander = False Else Item(EditorIndex).istwohander = True End If ' Error handler Exit Sub errorhandler: HandleError "chkTwoh", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbBind_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).BindType = cmbBind.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbBind_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbClassReq_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).ClassReq = cmbClassReq.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbClassReq_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbSound_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If cmbSound.ListIndex >= 0 Then Item(EditorIndex).sound = cmbSound.List(cmbSound.ListIndex) Else Item(EditorIndex).sound = "None." End If ' Error handler Exit Sub errorhandler: HandleError "cmdSound_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbTool_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Data3 = cmbTool.ListIndex ' Error handler Exit Sub errorhandler: HandleError "cmbTool_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdDelete_Click() Dim tmpIndex As Long ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub ClearItem EditorIndex tmpIndex = lstIndex.ListIndex lstIndex.RemoveItem EditorIndex - 1 lstIndex.AddItem EditorIndex & ": " & Item(EditorIndex).Name, EditorIndex - 1 lstIndex.ListIndex = tmpIndex ItemEditorInit ' Error handler Exit Sub errorhandler: HandleError "cmdDelete_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub Form_Load() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler scrlPic.max = numitems scrlAnim.max = MAX_ANIMATIONS scrlPaperdoll.max = NumPaperdolls ' Error handler Exit Sub errorhandler: HandleError "Form_Load", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdSave_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Call ItemEditorOk ' Error handler Exit Sub errorhandler: HandleError "cmdSave_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmdCancel_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Call ItemEditorCancel ' Error handler Exit Sub errorhandler: HandleError "cmdCancel_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbType_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If (cmbType.ListIndex >= ITEM_TYPE_WEAPON) And (cmbType.ListIndex MAX_ITEMS Then Exit Sub lblAccessReq.Caption = "Access Req: " & scrlAccessReq.Value Item(EditorIndex).AccessReq = scrlAccessReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAccessReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddHp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddHP.Caption = "Add HP: " & scrlAddHp.Value Item(EditorIndex).AddHP = scrlAddHp.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddHP_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddMp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddMP.Caption = "Add MP: " & scrlAddMP.Value Item(EditorIndex).AddMP = scrlAddMP.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddMP_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAddExp_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblAddExp.Caption = "Add Exp: " & scrlAddExp.Value Item(EditorIndex).AddEXP = scrlAddExp.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAddExp_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAnim_Change() Dim sString As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If scrlAnim.Value = 0 Then sString = "None" Else sString = Trim$(Animation(scrlAnim.Value).Name) End If lblAnim.Caption = "Anim: " & sString Item(EditorIndex).Animation = scrlAnim.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAnim_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlDamage_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblDamage.Caption = "Damage: " & scrlDamage.Value Item(EditorIndex).Data2 = scrlDamage.Value ' Error handler Exit Sub errorhandler: HandleError "scrlDamage_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlFishing_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblFishing.Caption = "Fishing: " & scrlFishing.Value Item(EditorIndex).FXP = scrlFishing.Value ' Error handler Exit Sub errorhandler: HandleError "scrlFishing_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlLevelReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblLevelReq.Caption = "Level req: " & scrlLevelReq Item(EditorIndex).LevelReq = scrlLevelReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlLevelReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlMining_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblMining.Caption = "Mining: " & scrlMining.Value Item(EditorIndex).MXP = scrlMining.Value ' Error handler Exit Sub errorhandler: HandleError "scrlMining_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPaperdoll_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPaperdoll.Caption = "Paperdoll: " & scrlPaperdoll.Value Item(EditorIndex).Paperdoll = scrlPaperdoll.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPaperdoll_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPic_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPic.Caption = "Pic: " & scrlPic.Value Item(EditorIndex).Pic = scrlPic.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlPrice_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPrice.Caption = "Price: " & scrlPrice.Value Item(EditorIndex).Price = scrlPrice.Value ' Error handler Exit Sub errorhandler: HandleError "scrlPrice_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlRarity_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblRarity.Caption = "Rarity: " & scrlRarity.Value Item(EditorIndex).Rarity = scrlRarity.Value ' Error handler Exit Sub errorhandler: HandleError "scrlRarity_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlSpeed_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblSpeed.Caption = "Speed: " & scrlSpeed.Value / 1000 & " sec" Item(EditorIndex).Speed = scrlSpeed.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSpeed_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlStatBonus_Change(Index As Integer) Dim text As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Select Case Index Case 1 text = "+ Str: " Case 2 text = "+ End: " Case 3 text = "+ Int: " Case 4 text = "+ Agi: " Case 5 text = "+ Will: " End Select lblStatBonus(Index).Caption = text & scrlStatBonus(Index).Value Item(EditorIndex).Add_Stat(Index) = scrlStatBonus(Index).Value ' Error handler Exit Sub errorhandler: HandleError "scrlStatBonus_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlStatReq_Change(Index As Integer) Dim text As String ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler Select Case Index Case 1 text = "Str: " Case 2 text = "End: " Case 3 text = "Int: " Case 4 text = "Agi: " Case 5 text = "Will: " End Select lblStatReq(Index).Caption = text & scrlStatReq(Index).Value Item(EditorIndex).Stat_Req(Index) = scrlStatReq(Index).Value ' Error handler Exit Sub errorhandler: HandleError "scrlStatReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlSpell_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub If Len(Trim$(Spell(scrlSpell.Value).Name)) > 0 Then lblSpellName.Caption = "Name: " & Trim$(Spell(scrlSpell.Value).Name) Else lblSpellName.Caption = "Name: None" End If lblSpell.Caption = "Spell: " & scrlSpell.Value Item(EditorIndex).Data1 = scrlSpell.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSpell_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlWoodcutting_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler lblWoodcutting.Caption = "Woodcuting: " & scrlWoodcutting.Value Item(EditorIndex).WcXP = scrlWoodcutting.Value ' Error handler Exit Sub errorhandler: HandleError "scrlWoodcutting_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub txtDesc_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Desc = txtDesc.text ' Error handler Exit Sub errorhandler: HandleError "txtDesc_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub txtName_Validate(Cancel As Boolean) Dim tmpIndex As Long ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub tmpIndex = lstIndex.ListIndex Item(EditorIndex).Name = Trim$(txtName.text) lstIndex.RemoveItem EditorIndex - 1 lstIndex.AddItem EditorIndex & ": " & Item(EditorIndex).Name, EditorIndex - 1 lstIndex.ListIndex = tmpIndex ' Error handler Exit Sub errorhandler: HandleError "txtName_Validate", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectileDamage_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileDamage.Caption = "Damage: " & scrlProjectileDamage.Value Item(EditorIndex).ProjecTile.Damage = scrlProjectileDamage.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectilePic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectilePic_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectilePic.Caption = "Pic: " & scrlProjectilePic.Value Item(EditorIndex).ProjecTile.Pic = scrlProjectilePic.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectilePic_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' ProjecTile Private Sub scrlProjectileRange_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileRange.Caption = "Range: " & scrlProjectileRange.Value Item(EditorIndex).ProjecTile.Range = scrlProjectileRange.Value ' Error handler Exit Sub errorhandler: HandleError "scrlProjectileRange_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ' projectile Private Sub scrlProjectileSpeed_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblProjectileSpeed.Caption = "Speed: " & scrlProjectileSpeed.Value Item(EditorIndex).ProjecTile.Speed = scrlProjectileSpeed.Value ' Error handler Exit Sub errorhandler: HandleError "scrlRarity_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlItem1_Change() If scrlItem1.Value > 0 Then lblItem1.Caption = "Item: " & Trim$(Item(scrlItem1.Value).Name) Else lblItem1.Caption = "Item: None" End If Item(EditorIndex).Recipe(RecipeIndex) = scrlItem1.Value End Sub Private Sub scrlItemNum_Change() RecipeIndex = scrlItemNum.Value lblItemNum.Caption = "Item: " & RecipeIndex scrlItem1.Value = Item(EditorIndex).Recipe(RecipeIndex) End Sub Private Sub scrlResult_Change() If scrlResult.Value > 0 Then lblResult.Caption = "Result: " & Trim$(Item(scrlResult.Value).Name) Else lblResult.Caption = "Result: None" End If Item(EditorIndex).Data3 = scrlResult.Value End Sub Private Sub scrlSmithReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblSmith.Caption = "SM: " & scrlSmithReq Item(EditorIndex).SmithReq = scrlSmithReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSmithReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlEnchantReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblEnchants.Caption = "EN: " & scrlEnchantReq Item(EditorIndex).EnchantReq = scrlEnchantReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlSwordReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub scrlAlchemyReq_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblAlchemy.Caption = "Cook: " & scrlAlchemyReq Item(EditorIndex).AlchemyReq = scrlAlchemyReq.Value ' Error handler Exit Sub errorhandler: HandleError "scrlAlchemyReq_Change", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkAL_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Alchemist = chkAL.Value ' Error handler Exit Sub errorhandler: HandleError "chkAL_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkEN_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Enchanter = chkEN.Value ' Error handler Exit Sub errorhandler: HandleError "chkEN_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub chkSM_Click() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo errorhandler If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Smithy = chkSM.Value ' Error handler Exit Sub errorhandler: HandleError "chkSM_Click", "frmEditor_Item", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub Private Sub cmbCTool_Click() If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub Item(EditorIndex).Tool = cmbCTool.ListIndex End Sub ```
  10. How can I make a stationary (one that can't walk)/attackable NPC?
  11. Is therea way to have an option for no movement (a shopkeeper type deal where the npc cant move but is still attack on site or whatever)?
  12. sorry about double post
  13. > I released a tutorial in the source code section for player checkpoints which is basically what your bind concept was if I'm reading it right. It adds a new tile attribute which is a checkpoint, a player can then click on that tile and set their checkpoint to that location. When they die they then spawn at that tile instead of back at the original starting area of the game. > > As for the corpse idea, I worked on that back when I was making Zacaras Empire with either Eclipse Evolution or one of the original EO's (I forget which) and the way I was doing it was basically creating a new thing in the map data which was bodies. The bodies variable held storage of the map number, x, y, players name, and then new variable holding item ID and item amount. When you died it would create a new instance of the bode with your location, name and and item data for all items in your inventory. It would then delete all of your inventory items and draw a skeleton to the map. > > Once you died you would have 2 minutes to get back to your body. In that 2 minutes only you could open the body and it would bring up a new window that looked like your inventory did and displayed all of the items in that body for you to take back. But only you could open your own body, no one else could. After 2 minutes the skeleton would disappear and the items in it would drop to the map for anyone to take. > > I lost all of that coding but was thinking of starting to work on it again and if no one beats me to it I'll try to code up the system sometime this week. That would be epic, You should make the body despawn rate modifiable, that'd be epic.
  14. I got it to turn on and it worked fine (althougnh i didnt hit send to know if it fully works yet on my version of eclipse) but when i tried setting the walkspeed up really high it crashed with an overflow error, what is the max walkspeed i should set this too so i can tell the scrollbar a max? I know its probably a noobish question and I'm thinking maybe like 255 or something but i wanted to ask first. thanks for reading and putting out this epic and simple system. =] ``` (highlighted area in error is `NPC(EditorIndex).Speed = scrlSpeed.Value` ```
  15. > then you didn't follow the tutorial correctly ._. I figured I didn't, I will try again. Quick question : When you say Replace the``` WALK_SPEED ```with``` WalkSpeed ```…only replace in ProcessNPCMovement Am i replacing every single "WALK_SPEED" in that sub or whatnot also when you say After that go into NPCEditorInit or whatever the sub is called to initialize everything and add ``` .scrlSpeed.Value = Npc(EditorIndex).Speed .lblSpeed.Caption = "Speed: " & Npc(EditorIndex).Speed ``` where exactly in that sub do i put this info?
  16. II am getting a variable not defined in the client on modLogic at``` Sub ProcessNpcMovement(ByVal MapNpcNum As Long) ```
  17. I'm getting a subscript out of range on "CopyMemory ByVal VarPtr(NPC(n)), ByVal VarPtr(NpcData(0)), NpcSize" in modHandleData (Client) On Dragon Eclipse (EO [3.0] Nightly Dx8)
  18. Does this work on EO Nightly Dx8? I am getting a type mismatch errorat``` If txtEInvNum.Text > MAX_INV Then ``` nvm - there was some typos in tutorial i believe.
  19. Got it working with Dragon Eclipse 3.0 Nightly Dx8 using information from this conversation and this one at the OP and in its follow up posts : http://www.touchofdeathforums.com/community/index.php?/topic/129353-dynamic-crafting-system/page__st__40#entry867323
  20. Some one will buy out all Hostess' brands and sell them thesmelves, you will see twinkies again (as well as wonderbread, etc) under different brands.
  21. **UPDATE: THIS OFFICIALLY WORKS WITH DRAGON ECLIPSE 3.0 NIGHTLY Dx8.** the information below is unsorted **Justn should update the tutorial** to include the changes indicated throughout these posts and in this thread to:http://www.touchofdeathforums.com/community/index.php?/topic/130669-dynamic-crafting-system-on-dragon-eclipse/ . (not sure if i missed any but hes sure to have caught them since half of the collaboration took place among like 3 or 4 of us in pm to make this happen. Thanks guys!!!! In terms of my last error i just forgot to add the code to the bottom of frmEditor_Map. Gen. General General General General General General General General Pony said too: (for Dragon Eclipse Nightly Dx8) go into modText and FIND ``` DrawText TexthDC, tx, ty, "CR", QBColor(White) ``` Replace with > RenderText Font_Default, "CR", tx, ty, White, 0 Okay, I got the tiles working with the above post by Gen. Generalpony ~~General General General General General General General General General General General Pony, now my last issuebefore wehave a fully working version of Dynamic Crafting System for Dragon Eclipse Dx8 Nightly is to work out a bug with frarecipe (which is located in picattributes) - when i click "crafting" in attributes it just lets me place the crafting tile-type, it doesnt bring up another window for me to choose which type of crafting tile to choose/command button/etc, when i click another attribute type (such as arena) which does prompt the window i can see the crafting frarecipe and it isnt functional, however whichever other thing i clicked (such as arena or whatnot) works fine, though frarecipe shouldnt be visible.~~ ![](http://i1127.photobucket.com/albums/l632/EsoGuildPB/esocraft1.png)
  22. I am getting an crash and unrecoverable Dx8 Error when trying to place a crafting tile, but **I got it to compile and start up in Dragon Eclipse [Nightly Dx8]**. UPDATE: found another bug: the crafting window (in picattributes… frarecipe in particular stands in the way of ALL other attribute windows and pops up even if i click arena, etc - to top things off the scroll bar there DOES NOT work and the command button that says "ok" does not work either" its stuck open. I did go into modText and FIND``` Case TILE_TYPE_CRAFT DrawText TexthDC, tx, ty, "CR", QBColor(White) ``` and change out Drawtext to Rendertext and TextTHdc to font_default. Not sure if that could be causing the conflict. [This](http://i1127.photobucket.com/albums/l632/EsoGuildPB/errorcraft.png) is the error I was getting before I did this. **NOTES in General:** There is also some typo's, anywhere you see a "&" and the text is red make it "&" 'Nyan says: ``` You must add Public Const TILE_TYPE_CRAFT as Byte = under other TILE_TYPE constants ``` 'Nyan says: ``` Add RecipeIndex as Long to modGlobals ```
  23. I did do the following which might be a part of it: In modText, FIND``` Case TILE_TYPE_CRAFT DrawText TexthDC, tx, ty, "CR", QBColor(White) ``` and changed Drawtext to Rendertext and TextTHdc to font_default.
×
×
  • Create New...