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

Mohenjo Daro

Members
  • Posts

    259
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by Mohenjo Daro

  1. Change the DrawPlayer Sub to >! ``` Public Sub DrawPlayer(ByVal Index As Long) Dim Anim As Byte, I As Long, X As Long, y As Long Dim Sprite As Long, spritetop As Long Dim Rec As RECT, Rec_Pos As RECT Dim attackspeed As Long, slashon As Boolean ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo ErrorHandler >! Sprite = GetPlayerSprite(Index) >! If Sprite < 1 Or Sprite > NumCharacters Then Exit Sub >! ' speed from weapon If GetPlayerEquipment(Index, Weapon) > 0 Then attackspeed = Item(GetPlayerEquipment(Index, Weapon)).speed Else attackspeed = 1000 End If If Not isAnimated(GetPlayerSprite(Index)) Then ' Reset frame Anim = 0 ' Check for attacking animation If TempPlayer(Index).AttackTimer + (attackspeed / 2) > GetTickCount Then If TempPlayer(Index).Attacking = 1 Then slashon = True Anim = 1 End If Else ' If not attacking, walk normally Select Case GetPlayerDir(Index) Case DIR_UP If (TempPlayer(Index).yOffset > 8) Then Anim = TempPlayer(Index).Step + 1 Case DIR_DOWN If (TempPlayer(Index).yOffset < -8) Then Anim = TempPlayer(Index).Step + 1 Case DIR_LEFT If (TempPlayer(Index).xOffset > 8) Then Anim = TempPlayer(Index).Step + 1 Case DIR_RIGHT If (TempPlayer(Index).xOffset < -8) Then Anim = TempPlayer(Index).Step + 1 End Select End If Else If TempPlayer(Index).AttackTimer + (attackspeed / 2) > GetTickCount Then If TempPlayer(Index).Attacking = 1 Then slashon = True End If End If If TempPlayer(Index).AnimTimer + 100 = 3 Then TempPlayer(Index).Anim = 0 TempPlayer(Index).AnimTimer = GetTickCount End If Anim = TempPlayer(Index).Anim End If >! ' Check to see if we want to stop making him attack With TempPlayer(Index) If .AttackTimer + attackspeed < GetTickCount Then .Attacking = 0 .AttackTimer = 0 End If End With >! ' Set the left Select Case GetPlayerDir(Index) Case DIR_UP spritetop = 3 Case DIR_RIGHT spritetop = 2 Case DIR_DOWN spritetop = 0 Case DIR_LEFT spritetop = 1 End Select >! With Rec .Top = spritetop * (Tex_Character(Sprite).height / 4) .Bottom = .Top + (Tex_Character(Sprite).height / 4) .Left = Anim * (Tex_Character(Sprite).width / 4) .Right = .Left + (Tex_Character(Sprite).width / 4) End With >! ' Calculate the X X = GetPlayerX(Index) * PIC_X + TempPlayer(Index).xOffset - ((Tex_Character(Sprite).width / 3 - 32) / 2) >! ' Is the player's height more than 32..? If (Tex_Character(Sprite).height) > 32 Then ' Create a 32 pixel offset for larger sprites y = GetPlayerY(Index) * PIC_Y + TempPlayer(Index).yOffset - ((Tex_Character(Sprite).height / 4) - 32) Else ' Proceed as normal y = GetPlayerY(Index) * PIC_Y + TempPlayer(Index).yOffset End If ' render player shadow Call DrawShadow(Sprite, X, y + 5) ' render the actual sprite If GetTickCount > TempPlayer(Index).StartFlash Then Call DrawSprite(Sprite, X, y, Rec) TempPlayer(Index).StartFlash = 0 Else Call DrawSprite(Sprite, X, y, Rec, , , , , True) End If If Item(GetPlayerEquipment(Index, Shield)).Type = ITEM_TYPE_AURA Then Call DrawPlayerAccessories(Index, Shield, X, y, Sprite, Rec, Anim, spritetop) Call DrawPlayerAccessories(Index, Armor, X, y, Sprite, Rec, Anim, spritetop) Call DrawPlayerAccessories(Index, Helmet, X, y, Sprite, Rec, Anim, spritetop) If Item(GetPlayerEquipment(Index, Shield)).Type = ITEM_TYPE_Shield Then Call DrawPlayerAccessories(Index, Shield, X, y, Sprite, Rec, Anim, spritetop) Call DrawPlayerAccessories(Index, Weapon, X, y, Sprite, Rec, Anim, spritetop) >! If slashon Then Call DrawSlash(X, y, Index) ' Error handler Exit Sub ErrorHandler: HandleError "DrawPlayer", "modGraphics", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub ``` You're basically just changing the 3 values to 4s (starting at 0 and going to 2 is a 3 value) So where you put the Anim + 1 earlier, you want to change to just Anim
  2. Find Public Sub EditorItem_DrawPaperdoll() and replace that sub with >! ``` Public Sub EditorItem_DrawPaperdoll() Dim Sprite As Long, srcRect As D3DRECT, destRect As D3DRECT Dim sRECT As RECT Dim dRect As RECT ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo ErrorHandler >! 'frmEditor_Item.picPaperdoll.Cls If frmEditor_Item.cmbType.ListIndex = ITEM_TYPE_AURA Then Sprite = frmEditor_Item.scrlPaperdoll.Value If Sprite < 1 Or Sprite > NumAuras Then frmEditor_Item.picPaperdoll.Cls Exit Sub End If ' rect for source sRECT.Top = 0 sRECT.Bottom = Tex_Aura(Sprite).height sRECT.Left = 0 sRECT.Right = Tex_Aura(Sprite).width ' same for destination as source dRect = sRECT Direct3D_Device.Clear 0, ByVal 0, D3DCLEAR_TARGET, D3DColorRGBA(0, 0, 0, 0), 1#, 0 Direct3D_Device.BeginScene RenderTextureByRects Tex_Aura(Sprite), sRECT, dRect, D3DColorARGB(255 - frmEditor_Item.scrlA, 255 - frmEditor_Item.ScrlR, 255 - frmEditor_Item.ScrlG, 255 - frmEditor_Item.ScrlB) With destRect .x1 = 0 .x2 = Tex_Aura(Sprite).width .y1 = 0 .y2 = Tex_Aura(Sprite).height End With Else Sprite = frmEditor_Item.scrlPaperdoll.Value If Sprite < 1 Or Sprite > NumPaperdolls Then frmEditor_Item.picPaperdoll.Cls Exit Sub End If ' rect for source sRECT.Top = 0 sRECT.Bottom = Tex_Paperdoll(Sprite).height sRECT.Left = 0 sRECT.Right = Tex_Paperdoll(Sprite).width ' same for destination as source dRect = sRECT Direct3D_Device.Clear 0, ByVal 0, D3DCLEAR_TARGET, D3DColorRGBA(0, 0, 0, 0), 1#, 0 Direct3D_Device.BeginScene RenderTextureByRects Tex_Paperdoll(Sprite), sRECT, dRect, D3DColorARGB(255 - frmEditor_Item.scrlA, 255 - frmEditor_Item.ScrlR, 255 - frmEditor_Item.ScrlG, 255 - frmEditor_Item.ScrlB) With destRect .x1 = 0 .x2 = Tex_Paperdoll(Sprite).width .y1 = 0 .y2 = Tex_Paperdoll(Sprite).height End With End If Direct3D_Device.EndScene Direct3D_Device.Present destRect, destRect, frmEditor_Item.picPaperdoll.hWnd, ByVal (0) ' Error handler Exit Sub ErrorHandler: HandleError "EditorItem_DrawPaperdoll", "modGraphics", Err.Number, Err.Description, Err.Source, Err.HelpContext Err.Clear Exit Sub End Sub >! ``` For good measure, replace Private Sub scrlPaperdoll_Change() with >! ``` Private Sub scrlPaperdoll_Change() ' If debug mode, handle error then exit out If Options.Debug = 1 Then On Error GoTo ErrorHandler If cmbType.ListIndex = ITEM_TYPE_AURA Then scrlPaperdoll.max = NumAuras Else scrlPaperdoll.max = NumPaperdolls End If If EditorIndex = 0 Or EditorIndex > MAX_ITEMS Then Exit Sub lblPaperdoll.Caption = "Aura: " & 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 ```
  3. Go to the DrawPaperdoll sub and you should see a "/ 6", change it to "/ 8" (it is actually "/ 3 / 2" but that = "/ 6" to find the middle of the texture). This will give you 4 rows instead of 3, but only 3 of those rows will ever be used. This will only make the paperdolls compatible, but not used. Once you finish that, find the Call DrawPaperdoll and see where it has Anim in that line and change it to (Anim + 1). This way that DrawPaperdoll sub draws the correct column of the paperdoll
  4. If it's simple enough, then sure
  5. Are you asking how to preview the paperdoll in the editor? You just have to increase the size of the picbox, then find where in the code the image is given and add some for the weapon, armor, helmet, and shield (just make sure to use the tex_paperdoll and set the scrlbar max to NumPaperdoll)
  6. I'll see what I can do :) and as a bonus I'll make it slightly transparent so you know it's only the preview
  7. Yes, so if you made items in 1.8.1 and want to keep them, you have to use the converter. It doesn't support other engines, but I might be able to make it so it does if I have the other game's modType source.
  8. Yeah, I can add an active effects that you choose in the editor
  9. Eclipse Renewal 1.8.2 is ready for release! 1.8.1 was just released, but it had some bugs and I finished a brand new system so I figured I would release it quickly rather than the normal couple months ;) ***** IMPORTANT *** MAKE SURE YOU USE THE ITEM CONVERTER IN THE FOLDER BEFORE YOU START THE SERVER TO AVOID CRASHING** Download: [http://www.mediafire.com/file/qxc5t27tqf8jb8j/Eclipse+Renewal+1.8.2.rar](http://www.mediafire.com/file/qxc5t27tqf8jb8j/Eclipse+Renewal+1.8.2.rar) What's New: -**Mapping:** This was meant to be a mapper's update (and somewhat still is) Mappers can no longer be warped when the Dev panel is open. It's common sense to ask before warping, but it still happens, so it's the aim to get rid of that. Selecting multiple tiles in the map editor is now much easier on larger tilesets. Simply click the start location, and Shift + click the end and it will select everything in between (this is the same system as dragging but with a key for larger tilesets). FAVORITES!!! A mappers worst nightmare is a lot of tilesets with little organization. Well now you can favorite your tilesets for easier mapping. There is a new check box you can press on a tileset and it will be added to your favorites. Use the bottom scrlbar to switch between. As an added bonus, your favorites are also saved so you can come back to them later when you need a break. -**Crafting Menu:** Alright, now for the real reason you're here :P Yes, there are tutorials on the forums to do this, but I prefer to do my own coding so I understand it better and make new and easier systems for doing it. New Tile: There is a new crafting tile in the map editor! Go to attributes to select it and choose what type you want it to be (the types are based off the what graphics you have in the crafting_stations folder). New Item Type: There is a new item type added to the engine: Recipe. You can choose what items are needed (up to 5), how many are needed, what station is needed, what rewards are give (up to 1)n, and how many of those rewards are given. A recipe with no station selected can be crafted at any station, and a station with no type can only craft a recipe with no type. Once the crafting menu is open, you have to click the recipe you want in your inventory. This will show you what items are needed. Then you have to click each slot on the crafting menu and add the appropriate items from your inventory and click "Craft". The crafting system is fully working, however it's not the most user friend right now so expect some changes to that in the coming updates. Such changes include: Item description for the recipe showing what's needed (without it being in the description), what station is needed, etc.; and the selected crafting menu slot to be slightly different in appearance. For a complete changelog, head over here: [https://www.eclipseorigins.com/Thread-ER-1-8-2-Changelog](https://www.eclipseorigins.com/Thread-ER-1-8-2-Changelog) This update is still lacking features that were meant to be added, so expect more updates in the future, but we wanted to get the engine out so that people could start making their games. **Future updates won't break your games and will provide converters for any system that is changed**.
  10. Hopefully I fixed most of the bugs with the dev panel in this update. Let me know what you guys think of the mapper improvements and the new crafting system :) I do plan to make item descriptions of recipes show what station and items are needed in one of the coming updates, as well as a button to open the crafting menu (you will only be able to craft items that don't need a station).
  11. Want to take some screenshots of what you're talking about? I'm not sure about everyone else, but I can picture what you're saying
  12. The question was asked as a way to increase the players online, not so much the instancing lol, but more answers always help
  13. Too tired to get a good screenshot for ya'll, but the crafting system is finished (just needs more testing to know if there are any bugs).
  14. It's possible, you can also have the servers talk to each other (so multiple servers acting as one sort of thing), nut it just takes quite a bit of code rewrite. Also, you can increase the maximum players, each player doesn't add too much to the server load.
  15. Did you portforward the server/router? If not then look for a tutorial on the site or google :)
  16. The player will have to install the runtime library, if you didn't on the new pc then try that and see if it works.
  17. It's teaser time! Pretty bare bones looking now, but it's a first look: it's to give an idea what the menu will look like. ![](https://s26.postimg.org/xpeyaxhzt/1.8.2-_Teaser1.png)
  18. *Psst* Zyn, want to change the top download button to 1.8.1, it's on 1.8.0
  19. You're right lol, and I even moved the other stuff down XD Thanks :)
  20. You just give them the client folder minus client.vbp client.vbw src folder
  21. Alright, thanks for letting me know :) means it's a Quest render bug.
  22. I have a quick question, was it any NPC you pressed Ctrl on or was it a quest NPC (the one with a ! above it)?
  23. Yep, that's a bug. Not sure when it appeared, but it'll be fixed in the next update :)
  24. Ctrl - Interact and attack Enter - Pick up item WASD/Arrows - move Shift - Run F# - Hotbar I think that's it for now. I plan to add keys like G to hide GUI, I for Inv, etc. but that will be in a later update.
×
×
  • Create New...