├── .gitattributes
├── .gitignore
├── .tfignore
├── LICENSE
├── Orion Client
├── ApplicationEvents.vb
├── Arvo-Regular.ttf
├── Classes
│ └── clsByteBuffer.vb
├── Forms
│ ├── frmEditor_Animation.Designer.vb
│ ├── frmEditor_Animation.resx
│ ├── frmEditor_Animation.vb
│ ├── frmEditor_Item.Designer.vb
│ ├── frmEditor_Item.resx
│ ├── frmEditor_Item.vb
│ ├── frmEditor_Map.Designer.vb
│ ├── frmEditor_Map.resx
│ ├── frmEditor_Map.vb
│ ├── frmEditor_MapProperties.Designer.vb
│ ├── frmEditor_MapProperties.resx
│ ├── frmEditor_MapProperties.vb
│ ├── frmEditor_NPC.Designer.vb
│ ├── frmEditor_NPC.resx
│ ├── frmEditor_NPC.vb
│ ├── frmEditor_Resource.Designer.vb
│ ├── frmEditor_Resource.resx
│ ├── frmEditor_Resource.vb
│ ├── frmEditor_Shop.Designer.vb
│ ├── frmEditor_Shop.resx
│ ├── frmEditor_Shop.vb
│ ├── frmEditor_Spell.Designer.vb
│ ├── frmEditor_Spell.resx
│ ├── frmEditor_Spell.vb
│ ├── frmLoad.Designer.vb
│ ├── frmLoad.resx
│ ├── frmLoad.vb
│ ├── frmMainGame.Designer.vb
│ ├── frmMainGame.resx
│ ├── frmMainGame.vb
│ ├── frmMenu.Designer.vb
│ ├── frmMenu.resx
│ └── frmMenu.vb
├── Modules
│ ├── modClientTCP.vb
│ ├── modConstants.vb
│ ├── modDataBase.vb
│ ├── modEnumerations.vb
│ ├── modGameEditors.vb
│ ├── modGameLogic.vb
│ ├── modGeneral.vb
│ ├── modGlobals.vb
│ ├── modGraphics.vb
│ ├── modHandleData.vb
│ ├── modINIAccess.vb
│ ├── modText.vb
│ ├── modTypes.vb
│ └── modUpdateUI.vb
├── My Project
│ ├── Application.Designer.vb
│ ├── Application.myapp
│ ├── AssemblyInfo.vb
│ ├── Resources.Designer.vb
│ ├── Resources.resx
│ ├── Settings.Designer.vb
│ ├── Settings.settings
│ └── app.manifest
├── Orion Client.vbproj
├── app.config
├── csfml-audio-2.dll
├── csfml-graphics-2.dll
├── csfml-window-2.dll
├── data files
│ ├── Credits.txt
│ ├── config.ini
│ ├── graphics
│ │ ├── GUI
│ │ │ ├── EXPBar.png
│ │ │ ├── EXPBarEmpty.png
│ │ │ ├── HPBar.png
│ │ │ ├── HPBarEmpty.png
│ │ │ ├── ManaBar.png
│ │ │ └── ManaBarEmpty.png
│ │ ├── MapEditorSelect.png
│ │ ├── actionbar
│ │ │ ├── Character.png
│ │ │ ├── Exit.png
│ │ │ ├── Inventory.png
│ │ │ ├── Options.png
│ │ │ ├── Skills.png
│ │ │ └── Trade.png
│ │ ├── blood.png
│ │ ├── characters
│ │ │ ├── 1.png
│ │ │ └── 2.png
│ │ ├── direction.png
│ │ ├── misc.png
│ │ └── tilesets
│ │ │ ├── 1.png
│ │ │ ├── 2.png
│ │ │ └── 3.png
│ └── maps
│ │ ├── map1.map
│ │ └── map2.map
├── libsndfile-1.dll
├── licenses
│ ├── Eclipse Public License v1.1.txt
│ ├── Graphics (Macks) License.txt
│ ├── SFML License.txt
│ └── SIL Open Font License.txt
├── openal32.dll
├── sfmlnet-audio-2.dll
├── sfmlnet-graphics-2.dll
└── sfmlnet-window-2.dll
├── Orion Game Engine.sln
├── Orion Server
├── Classes
│ └── clsByteBuffer.vb
├── Forms
│ ├── frmServer.Designer.vb
│ ├── frmServer.resx
│ └── frmServer.vb
├── Modules
│ ├── modConstants.vb
│ ├── modDatabase.vb
│ ├── modEnumerations.vb
│ ├── modGameLogic.vb
│ ├── modGeneral.vb
│ ├── modGlobals.vb
│ ├── modHandleData.vb
│ ├── modINIAccess.vb
│ ├── modPlayers.vb
│ ├── modServerLoop.vb
│ ├── modServerTCP.vb
│ ├── modTemps.vb
│ └── modTypes.vb
├── My Project
│ ├── Application.Designer.vb
│ ├── Application.myapp
│ ├── AssemblyInfo.vb
│ ├── Resources.Designer.vb
│ ├── Resources.resx
│ ├── Settings.Designer.vb
│ └── Settings.settings
├── Orion Server.vbproj
└── app.config
└── README.md
/.gitattributes:
--------------------------------------------------------------------------------
1 | ###############################################################################
2 | # Set default behavior to automatically normalize line endings.
3 | ###############################################################################
4 | * text=auto
5 |
6 | ###############################################################################
7 | # Set default behavior for command prompt diff.
8 | #
9 | # This is need for earlier builds of msysgit that does not have it on by
10 | # default for csharp files.
11 | # Note: This is only used by command line
12 | ###############################################################################
13 | #*.cs diff=csharp
14 |
15 | ###############################################################################
16 | # Set the merge driver for project and solution files
17 | #
18 | # Merging from the command prompt will add diff markers to the files if there
19 | # are conflicts (Merging from VS is not affected by the settings below, in VS
20 | # the diff markers are never inserted). Diff markers may cause the following
21 | # file extensions to fail to load in VS. An alternative would be to treat
22 | # these files as binary and thus will always conflict and require user
23 | # intervention with every merge. To do so, just uncomment the entries below
24 | ###############################################################################
25 | #*.sln merge=binary
26 | #*.csproj merge=binary
27 | #*.vbproj merge=binary
28 | #*.vcxproj merge=binary
29 | #*.vcproj merge=binary
30 | #*.dbproj merge=binary
31 | #*.fsproj merge=binary
32 | #*.lsproj merge=binary
33 | #*.wixproj merge=binary
34 | #*.modelproj merge=binary
35 | #*.sqlproj merge=binary
36 | #*.wwaproj merge=binary
37 |
38 | ###############################################################################
39 | # behavior for image files
40 | #
41 | # image files are treated as binary by default.
42 | ###############################################################################
43 | #*.jpg binary
44 | #*.png binary
45 | #*.gif binary
46 |
47 | ###############################################################################
48 | # diff behavior for common document formats
49 | #
50 | # Convert binary document formats to text before diffing them. This feature
51 | # is only available from the command line. Turn it on by uncommenting the
52 | # entries below.
53 | ###############################################################################
54 | #*.doc diff=astextplain
55 | #*.DOC diff=astextplain
56 | #*.docx diff=astextplain
57 | #*.DOCX diff=astextplain
58 | #*.dot diff=astextplain
59 | #*.DOT diff=astextplain
60 | #*.pdf diff=astextplain
61 | #*.PDF diff=astextplain
62 | #*.rtf diff=astextplain
63 | #*.RTF diff=astextplain
64 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | Thumbs.db
2 | *.obj
3 | *.exe
4 | *.pdb
5 | *.user
6 | *.aps
7 | *.pch
8 | *.vspscc
9 | *_i.c
10 | *_p.c
11 | *.ncb
12 | *.suo
13 | *.sln.docstates
14 | *.tlb
15 | *.tlh
16 | *.bak
17 | *.cache
18 | *.ilk
19 | *.log
20 | [Bb]in
21 | [Dd]ebug*/
22 | *.lib
23 | *.sbr
24 | obj/
25 | [Rr]elease*/
26 | _ReSharper*/
27 | [Tt]est[Rr]esult*
28 | *.vssscc
29 | $tf*/
30 | *.db
--------------------------------------------------------------------------------
/.tfignore:
--------------------------------------------------------------------------------
1 | \.git
--------------------------------------------------------------------------------
/Orion Client/ApplicationEvents.vb:
--------------------------------------------------------------------------------
1 | Namespace My
2 |
3 | ' The following events are available for MyApplication:
4 | '
5 | ' Startup: Raised when the application starts, before the startup form is created.
6 | ' Shutdown: Raised after all application forms are closed. This event is not raised if the application terminates abnormally.
7 | ' UnhandledException: Raised if the application encounters an unhandled exception.
8 | ' StartupNextInstance: Raised when launching a single-instance application and the application is already active.
9 | ' NetworkAvailabilityChanged: Raised when the network connection is connected or disconnected.
10 | Partial Friend Class MyApplication
11 |
12 | End Class
13 |
14 | End Namespace
15 |
16 |
--------------------------------------------------------------------------------
/Orion Client/Arvo-Regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/Arvo-Regular.ttf
--------------------------------------------------------------------------------
/Orion Client/Classes/clsByteBuffer.vb:
--------------------------------------------------------------------------------
1 | '+-----------------------Class--------------------------+
2 | Imports System.Text
3 | Public Class ByteBuffer
4 | Implements IDisposable
5 | Dim Buff As List(Of Byte)
6 | Dim readBuff As Byte()
7 | Dim readpos As Integer
8 | Dim buffUpdated = False
9 | Public Sub New()
10 | Buff = New List(Of Byte)
11 | readpos = 0
12 | End Sub
13 | Public Function GetReadPos() As Long
14 | GetReadPos = readpos
15 | End Function
16 | Public Function ToArray() As Byte()
17 | Return Buff.ToArray
18 | End Function
19 | Public Function Count() As Integer
20 | Return Buff.Count
21 | End Function
22 | Public Function Length() As Integer
23 | Length = Count() - readpos
24 | End Function
25 | Public Sub Clear()
26 | Buff.Clear()
27 | readpos = 0
28 | End Sub
29 | Public Sub WriteBytes(ByVal Input() As Byte)
30 | Buff.AddRange(Input)
31 | buffUpdated = True
32 | End Sub
33 |
34 | Public Sub WriteShort(ByVal Input As Short)
35 | Buff.AddRange(BitConverter.GetBytes(Input))
36 | buffUpdated = True
37 | End Sub
38 | Public Sub WriteInteger(ByVal Input As Integer)
39 | Buff.AddRange(BitConverter.GetBytes(Input))
40 | buffUpdated = True
41 | End Sub
42 | Public Sub WriteLong(ByVal Input As Long)
43 | Buff.AddRange(BitConverter.GetBytes(Input))
44 | buffUpdated = True
45 | End Sub
46 | Public Sub WriteString(ByVal Input As String)
47 | Buff.AddRange(BitConverter.GetBytes(Input.Length))
48 | Buff.AddRange(Encoding.ASCII.GetBytes(Input))
49 | buffUpdated = True
50 | End Sub
51 | Public Function ReadString(Optional ByVal Peek As Boolean = True) As String
52 | Dim Len As Integer = ReadInteger(True)
53 | If buffUpdated Then
54 | readBuff = Buff.ToArray
55 | buffUpdated = False
56 | End If
57 | Dim ret As String = Encoding.ASCII.GetString(readBuff, readpos, Len)
58 | If Peek And Buff.Count > readpos Then
59 | If ret.Length > 0 Then
60 | readpos += Len
61 | End If
62 | End If
63 | Return ret
64 | End Function
65 | Public Function ReadBytes(ByVal Length As Integer, Optional ByRef Peek As Boolean = True) As Byte()
66 | If buffUpdated Then
67 | readBuff = Buff.ToArray
68 | buffUpdated = False
69 | End If
70 | Dim ret() As Byte = Buff.GetRange(readpos, Length).ToArray
71 | If Peek Then readpos += Length
72 | Return ret
73 | End Function
74 | Public Function ReadShort(Optional ByVal peek As Boolean = True) As Short
75 | If Buff.Count > readpos Then 'check to see if this passes the byte count
76 | If buffUpdated Then
77 | readBuff = Buff.ToArray
78 | buffUpdated = False
79 | End If
80 | Dim ret As Short = BitConverter.ToInt16(readBuff, readpos)
81 | If peek And Buff.Count > readpos Then
82 | readpos += 2
83 | End If
84 | Return ret
85 | Else
86 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
87 | End If
88 | End Function
89 | Public Function ReadInteger(Optional ByVal peek As Boolean = True) As Integer
90 | If Buff.Count > readpos Then 'check to see if this passes the byte count
91 | If buffUpdated Then
92 | readBuff = Buff.ToArray
93 | buffUpdated = False
94 | End If
95 | Dim ret As Integer = BitConverter.ToInt32(readBuff, readpos)
96 | If peek And Buff.Count > readpos Then
97 | readpos += 4
98 | End If
99 | Return ret
100 | Else
101 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
102 | End If
103 | End Function
104 | Public Function ReadLong(Optional ByVal peek As Boolean = True) As Long
105 | If Buff.Count >= readpos Then 'check to see if this passes the byte count
106 | If buffUpdated Then
107 | readBuff = Buff.ToArray
108 | buffUpdated = False
109 | End If
110 | Dim ret As Long = BitConverter.ToInt64(readBuff, readpos)
111 | If peek And Buff.Count > readpos Then
112 | readpos += 8
113 | End If
114 | Return ret
115 | Else
116 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
117 | End If
118 | End Function
119 |
120 | Private disposedValue As Boolean = False ' To detect redundant calls
121 |
122 | ' IDisposable
123 | Protected Overridable Sub Dispose(ByVal disposing As Boolean)
124 | If Not Me.disposedValue Then
125 | If disposing Then
126 | Buff.Clear()
127 | End If
128 | readpos = 0
129 | End If
130 | Me.disposedValue = True
131 | End Sub
132 |
133 | #Region " IDisposable Support "
134 | Public Sub Dispose() Implements IDisposable.Dispose
135 | Dispose(True)
136 | GC.SuppressFinalize(Me)
137 | End Sub
138 | #End Region
139 |
140 | End Class
141 | '+-------------------------End Class-------------------+
142 |
143 |
144 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Animation.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Animation.vb:
--------------------------------------------------------------------------------
1 | Public Class frmEditor_Animation
2 |
3 | Private Sub scrlSprite0_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlSprite0.ValueChanged, scrlSprite0.Scroll
4 | lblSprite0.Text = "Sprite: " & scrlSprite0.Value
5 | Animation(EditorIndex).Sprite(0) = scrlSprite0.Value
6 | End Sub
7 |
8 | Private Sub scrlSprite1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlSprite1.ValueChanged, scrlSprite1.Scroll
9 | lblSprite1.Text = "Sprite: " & scrlSprite1.Value
10 | Animation(EditorIndex).Sprite(1) = scrlSprite1.Value
11 | End Sub
12 |
13 | Private Sub scrlLoopCount0_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlLoopCount0.ValueChanged
14 | lblLoopCount0.Text = "Loop Count: " & scrlLoopCount0.Value
15 | Animation(EditorIndex).LoopCount(0) = scrlLoopCount0.Value
16 | End Sub
17 |
18 | Private Sub scrlLoopCount1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlLoopCount1.ValueChanged, scrlLoopCount1.Scroll
19 | lblLoopCount1.Text = "Loop Count: " & scrlLoopCount1.Value
20 | Animation(EditorIndex).LoopCount(1) = scrlLoopCount1.Value
21 | End Sub
22 |
23 | Private Sub scrlFrameCount0_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlFrameCount0.ValueChanged
24 | lblFrameCount0.Text = "Frame Count: " & scrlFrameCount0.Value
25 | Animation(EditorIndex).Frames(0) = scrlFrameCount0.Value
26 | End Sub
27 |
28 | Private Sub scrlFrameCount1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlFrameCount1.ValueChanged
29 | lblFrameCount1.Text = "Frame Count: " & scrlFrameCount1.Value
30 | Animation(EditorIndex).Frames(1) = scrlFrameCount1.Value
31 | End Sub
32 |
33 | Private Sub scrlLoopTime0_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlLoopTime0.ValueChanged
34 | lblLoopTime0.Text = "Loop Time: " & scrlLoopTime0.Value
35 | Animation(EditorIndex).looptime(0) = scrlLoopTime0.Value
36 | End Sub
37 |
38 | Private Sub scrlLoopTime1_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlLoopTime1.ValueChanged
39 | lblLoopTime1.Text = "Loop Time: " & scrlLoopTime1.Value
40 | Animation(EditorIndex).looptime(1) = scrlLoopTime1.Value
41 | End Sub
42 |
43 | Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
44 | AnimationEditorOk()
45 | End Sub
46 |
47 | Private Sub txtName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtName.TextChanged
48 | Dim tmpIndex As Long
49 | If EditorIndex = 0 Or EditorIndex > MAX_ANIMATIONS Then Exit Sub
50 | tmpIndex = lstIndex.SelectedIndex
51 | Animation(EditorIndex).Name = Trim$(txtName.Text)
52 | lstIndex.Items.RemoveAt(EditorIndex - 1)
53 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Animation(EditorIndex).Name)
54 | lstIndex.SelectedIndex = tmpIndex
55 | End Sub
56 |
57 | Private Sub lstIndex_MouseClick(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles lstIndex.MouseClick
58 | AnimationEditorInit()
59 | End Sub
60 |
61 | Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
62 | Dim tmpIndex As Long
63 |
64 | If EditorIndex = 0 Or EditorIndex > MAX_ANIMATIONS Then Exit Sub
65 |
66 | ClearAnimation(EditorIndex)
67 |
68 | tmpIndex = lstIndex.SelectedIndex
69 | lstIndex.Items.RemoveAt(EditorIndex - 1)
70 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Animation(EditorIndex).Name)
71 | lstIndex.SelectedIndex = tmpIndex
72 |
73 | AnimationEditorInit()
74 | End Sub
75 |
76 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
77 | AnimationEditorCancel()
78 | End Sub
79 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Item.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Map.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_MapProperties.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_MapProperties.vb:
--------------------------------------------------------------------------------
1 | Imports System.IO
2 | Imports System.Windows.Forms
3 |
4 | Public Class frmEditor_MapProperties
5 | Public cmbNpcs() As cmbNpc
6 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
7 | Me.Dispose()
8 | End Sub
9 |
10 | Private Sub frmEditor_MapProperties_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
11 | Dim X As Long
12 | Dim Y As Long
13 | Dim i As Long
14 | Dim di As New IO.DirectoryInfo(Application.StartupPath & MUSIC_PATH)
15 | Dim aryFi As IO.FileInfo() = di.GetFiles("*.*")
16 | Dim fi As IO.FileInfo
17 | ReDim cmbNpcs(0 To 30)
18 | Dim StartX
19 | Dim StartY
20 | StartX = 6
21 | StartY = 19
22 |
23 |
24 | txtName.Text = Trim$(Map.Name)
25 | ' find the music we have set
26 | lstMusic.Items.Clear()
27 | lstMusic.Items.Add("None")
28 |
29 | For Each fi In aryFi
30 | lstMusic.Items.Add(fi.Name)
31 | Next
32 |
33 | If Trim$(Map.Music) = "None" Then
34 | lstMusic.SelectedIndex = 0
35 | Else
36 | For i = 1 To lstMusic.Items.Count
37 | If lstMusic.Items(i - 1).ToString = Trim$(Map.Music) Then
38 | lstMusic.SelectedIndex = i - 1
39 | Exit For
40 | End If
41 | Next
42 | End If
43 |
44 | ' rest of it
45 | txtUp.Text = CStr(Map.Up)
46 | txtDown.Text = CStr(Map.Down)
47 | txtLeft.Text = CStr(Map.Left)
48 | txtRight.Text = CStr(Map.Right)
49 | cmbMoral.SelectedIndex = Map.Moral
50 | txtBootMap.Text = CStr(Map.BootMap)
51 | txtBootX.Text = CStr(Map.BootX)
52 | txtBootY.Text = CStr(Map.BootY)
53 |
54 |
55 | For i = 1 To 15
56 | cmbNpcs(i) = New cmbNpc
57 | cmbNpcs(i).cmbNpc = New ComboBox
58 | cmbNpcs(i).cmbNpc.Width = 133
59 | cmbNpcs(i).cmbNpc.Height = 21
60 | cmbNpcs(i).cmbNpc.Left = StartX
61 | cmbNpcs(i).cmbNpc.Top = StartY + ((i - 1) * 27)
62 | Me.Controls.Add(cmbNpcs(i).cmbNpc)
63 | cmbNpcs(i).cmbNpc.DropDownStyle = ComboBoxStyle.DropDownList
64 | cmbNpcs(i).cmbNpc.Parent = Me.fraNpcs
65 | Next
66 | StartX = 165
67 | For i = 16 To 30
68 | cmbNpcs(i) = New cmbNpc
69 | cmbNpcs(i).cmbNpc = New ComboBox
70 | cmbNpcs(i).cmbNpc.Width = 133
71 | cmbNpcs(i).cmbNpc.Height = 21
72 | cmbNpcs(i).cmbNpc.Left = StartX
73 | cmbNpcs(i).cmbNpc.Top = StartY + ((i - 16) * 27)
74 | Me.Controls.Add(cmbNpcs(i).cmbNpc)
75 | cmbNpcs(i).cmbNpc.DropDownStyle = ComboBoxStyle.DropDownList
76 | cmbNpcs(i).cmbNpc.Parent = Me.fraNpcs
77 | Next
78 |
79 | For X = 1 To MAX_MAP_NPCS
80 | cmbNpcs(X).cmbNpc.Items.Add("No NPC")
81 | Next
82 |
83 |
84 | For Y = 1 To MAX_NPCS
85 | For X = 1 To MAX_MAP_NPCS
86 | cmbNpcs(X).cmbNpc.Items.Add(Y & ": " & Trim$(Npc(Y).Name))
87 | Next
88 | Next
89 |
90 | For i = 1 To MAX_MAP_NPCS
91 | cmbNpcs(i).cmbNpc.SelectedIndex = Map.Npc(i)
92 | Next
93 |
94 | lblMap.Text = "Current map: " & GetPlayerMap(MyIndex)
95 | txtMaxX.Text = Map.MaxX
96 | txtMaxY.Text = Map.MaxY
97 | End Sub
98 |
99 | Private Sub btnOk_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnOk.Click
100 | Dim i As Long
101 | Dim sTemp As Long
102 | Dim X As Long, x2 As Long
103 | Dim Y As Long, y2 As Long
104 | Dim tempArr(,) As TileRec
105 |
106 | If Not IsNumeric(txtMaxX.Text) Then txtMaxX.Text = Map.MaxX
107 | If Val(txtMaxX.Text) < MAX_MAPX Then txtMaxX.Text = MAX_MAPX
108 | If Val(txtMaxX.Text) > MAX_BYTE Then txtMaxX.Text = MAX_BYTE
109 | If Not IsNumeric(txtMaxY.Text) Then txtMaxY.Text = Map.MaxY
110 | If Val(txtMaxY.Text) < MAX_MAPY Then txtMaxY.Text = MAX_MAPY
111 | If Val(txtMaxY.Text) > MAX_BYTE Then txtMaxY.Text = MAX_BYTE
112 |
113 | With Map
114 | .Name = Trim$(txtName.Text)
115 | If lstMusic.SelectedIndex >= 0 Then
116 | .Music = lstMusic.Items(lstMusic.SelectedIndex).ToString
117 | Else
118 | .Music = vbNullString
119 | End If
120 | .Up = Val(txtUp.Text)
121 | .Down = Val(txtDown.Text)
122 | .Left = Val(txtLeft.Text)
123 | .Right = Val(txtRight.Text)
124 | .Moral = cmbMoral.SelectedIndex
125 | .BootMap = Val(txtBootMap.Text)
126 | .BootX = Val(txtBootX.Text)
127 | .BootY = Val(txtBootY.Text)
128 |
129 | For i = 1 To MAX_MAP_NPCS
130 | If cmbNpcs(i).cmbNpc.SelectedIndex > 0 Then
131 | sTemp = InStr(1, Trim$(cmbNpcs(i).cmbNpc.Text), ":", vbTextCompare)
132 |
133 | If Len(Trim$(cmbNpcs(i).cmbNpc.Text)) = sTemp Then
134 | cmbNpcs(i).cmbNpc.SelectedIndex = 0
135 | End If
136 | End If
137 | Next
138 |
139 | For i = 1 To MAX_MAP_NPCS
140 | .Npc(i) = cmbNpcs(i).cmbNpc.SelectedIndex
141 | Next
142 |
143 | ' set the data before changing it
144 | tempArr = Map.Tile.Clone
145 | x2 = Map.MaxX
146 | y2 = Map.MaxY
147 | ' change the data
148 | .MaxX = Val(txtMaxX.Text)
149 | .MaxY = Val(txtMaxY.Text)
150 | ReDim Map.Tile(0 To .MaxX, 0 To .MaxY)
151 |
152 | If x2 > .MaxX Then x2 = .MaxX
153 | If y2 > .MaxY Then y2 = .MaxY
154 |
155 | For X = 0 To .MaxX
156 | For Y = 0 To .MaxY
157 | ReDim .Tile(X, Y).Layer(0 To MapLayer.Layer_Count - 1)
158 | If X <= x2 Then
159 | If Y <= y2 Then
160 | .Tile(X, Y) = tempArr(X, Y)
161 | End If
162 | End If
163 | Next
164 | Next
165 |
166 | ClearTempTile()
167 | End With
168 |
169 | Me.Visible = False
170 | End Sub
171 |
172 | Private Sub lstMusic_SelectedIndexChanged(sender As Object, e As EventArgs) Handles lstMusic.SelectedIndexChanged
173 |
174 | End Sub
175 | End Class
176 | Public Class cmbNpc
177 | Public WithEvents cmbNpc As ComboBox
178 |
179 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_NPC.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_NPC.vb:
--------------------------------------------------------------------------------
1 | Public Class frmEditor_NPC
2 | Private Sub scrlSprite_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlSprite.ValueChanged
3 | lblSprite.Text = "Sprite: " & scrlSprite.Value
4 | Call EditorNpc_DrawSprite()
5 | Npc(EditorIndex).Sprite = scrlSprite.Value
6 | End Sub
7 |
8 | Private Sub scrlRange_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlRange.ValueChanged
9 | lblRange.Text = "Range: " & scrlRange.Value
10 | Npc(EditorIndex).Range = scrlRange.Value
11 | End Sub
12 |
13 | Private Sub cmbBehavior_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbBehaviour.SelectedIndexChanged
14 | Npc(EditorIndex).Behaviour = cmbBehaviour.SelectedIndex
15 | End Sub
16 |
17 | Private Sub cmbFaction_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbFaction.SelectedIndexChanged
18 | Npc(EditorIndex).faction = cmbFaction.SelectedIndex
19 | End Sub
20 |
21 | Private Sub scrlAnimation_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAnimation.ValueChanged
22 | Dim sString As String
23 | If scrlAnimation.Value = 0 Then sString = "None" Else sString = Trim$(Animation(scrlAnimation.Value).Name)
24 | lblAnimation.Text = "Anim: " & sString
25 | Npc(EditorIndex).Animation = scrlAnimation.Value
26 | End Sub
27 |
28 | Private Sub scrlStr_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlStr.ValueChanged
29 | lblStr.Text = "Str: " & scrlStr.Value
30 | Npc(EditorIndex).Stat(Stats.strength) = scrlStr.Value
31 | End Sub
32 |
33 | Private Sub scrlEnd_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlEnd.ValueChanged
34 | lblEnd.Text = "End: " & scrlEnd.Value
35 | Npc(EditorIndex).Stat(Stats.endurance) = scrlEnd.Value
36 | End Sub
37 |
38 | Private Sub scrlVit_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlVit.ValueChanged
39 | lblVit.Text = "Vit: " & scrlVit.Value
40 | Npc(EditorIndex).Stat(Stats.vitality) = scrlVit.Value
41 | End Sub
42 |
43 | Private Sub scrlWill_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlWill.ValueChanged
44 | lblWill.Text = "Will: " & scrlWill.Value
45 | Npc(EditorIndex).Stat(Stats.willpower) = scrlWill.Value
46 | End Sub
47 |
48 | Private Sub scrlInt_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlInt.ValueChanged
49 | lblInt.Text = "Int: " & scrlInt.Value
50 | Npc(EditorIndex).Stat(Stats.intelligence) = scrlInt.Value
51 | End Sub
52 |
53 | Private Sub scrlSpr_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlSpr.ValueChanged
54 | lblSpr.Text = "Spr: " & scrlSpr.Value
55 | Npc(EditorIndex).Stat(Stats.spirit) = scrlSpr.Value
56 | End Sub
57 |
58 | Private Sub scrlNum_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlNum.ValueChanged
59 | lblNum.Text = "Num: " & scrlNum.Value
60 |
61 | If scrlNum.Value > 0 Then
62 | lblItemName.Text = "Item: " & Trim$(Item(scrlNum.Value).Name)
63 | End If
64 |
65 | Npc(EditorIndex).DropItem = scrlNum.Value
66 | End Sub
67 |
68 | Private Sub scrlValue_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlValue.ValueChanged
69 | lblValue.Text = "Value: " & scrlValue.Value
70 | Npc(EditorIndex).DropItemValue = scrlValue.Value
71 | End Sub
72 |
73 | Private Sub lstIndex_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lstIndex.Click
74 | NpcEditorInit()
75 | End Sub
76 |
77 | Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
78 | NpcEditorOk()
79 | End Sub
80 |
81 | Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
82 | Dim tmpIndex As Long
83 |
84 | ClearNpc(EditorIndex)
85 |
86 | tmpIndex = lstIndex.SelectedIndex
87 | lstIndex.Items.RemoveAt(EditorIndex - 1)
88 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Npc(EditorIndex).Name)
89 | lstIndex.SelectedIndex = tmpIndex
90 |
91 | NpcEditorInit()
92 | End Sub
93 |
94 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
95 | Call NpcEditorCancel()
96 | End Sub
97 |
98 | Private Sub txtName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtName.TextChanged
99 | Dim tmpIndex As Long
100 | If EditorIndex = 0 Then Exit Sub
101 | tmpIndex = lstIndex.SelectedIndex
102 | Npc(EditorIndex).Name = Trim$(txtName.Text)
103 | lstIndex.Items.RemoveAt(EditorIndex - 1)
104 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Npc(EditorIndex).Name)
105 | lstIndex.SelectedIndex = tmpIndex
106 | End Sub
107 |
108 | Private Sub txtSpawnSecs_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSpawnSecs.TextChanged
109 | Npc(EditorIndex).SpawnSecs = txtSpawnSecs.Text
110 | End Sub
111 |
112 | Private Sub txtAttackSay_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtAttackSay.TextChanged
113 | Npc(EditorIndex).AttackSay = txtAttackSay.Text
114 | End Sub
115 |
116 | Private Sub txtHP_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtHP.TextChanged
117 | If IsNumeric(txtHP.Text) Then Npc(EditorIndex).HP = txtHP.Text
118 | End Sub
119 |
120 | Private Sub txtEXP_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtEXP.TextChanged
121 | If IsNumeric(txtEXP.Text) Then Npc(EditorIndex).EXP = txtEXP.Text
122 | End Sub
123 |
124 | Private Sub txtChance_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtChance.TextChanged
125 | Npc(EditorIndex).DropChance = txtChance.Text
126 | End Sub
127 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Resource.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Resource.vb:
--------------------------------------------------------------------------------
1 | Public Class frmEditor_Resource
2 |
3 | Private Sub scrlNormalPic_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlNormalPic.ValueChanged
4 | lblNormalPic.Text = "Normal Image: " & scrlNormalPic.Value
5 | EditorResource_DrawSprite()
6 | Resource(EditorIndex).ResourceImage = scrlNormalPic.Value
7 | End Sub
8 |
9 | Private Sub cmbType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbType.SelectedIndexChanged
10 | Resource(EditorIndex).ResourceType = cmbType.SelectedIndex
11 | End Sub
12 |
13 | Private Sub scrlExhaustedPic_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlExhaustedPic.ValueChanged
14 | lblExhaustedPic.Text = "Exhausted Image: " & scrlExhaustedPic.Value
15 | EditorResource_DrawSprite()
16 | Resource(EditorIndex).ExhaustedImage = scrlExhaustedPic.Value
17 | End Sub
18 |
19 | Private Sub scrlReward_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlReward.ValueChanged
20 | If scrlReward.Value > 0 Then
21 | lblReward.Text = "Item Reward: " & Trim$(Item(scrlReward.Value).Name)
22 | Else
23 | lblReward.Text = "Item Reward: None"
24 | End If
25 |
26 | Resource(EditorIndex).ItemReward = scrlReward.Value
27 | End Sub
28 |
29 | Private Sub scrlTool_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlTool.ValueChanged
30 | Dim Name As String
31 | Name = ""
32 |
33 | Select Case scrlTool.Value
34 | Case 0
35 | Name = "None"
36 | Case 1
37 | Name = "Hatchet"
38 | Case 2
39 | Name = "Rod"
40 | Case 3
41 | Name = "Pickaxe"
42 | End Select
43 |
44 | lblTool.Text = "Tool Required: " & Name
45 |
46 | Resource(EditorIndex).ToolRequired = scrlTool.Value
47 | End Sub
48 |
49 | Private Sub scrlHealth_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlHealth.ValueChanged
50 | lblHealth.Text = "Health: " & scrlHealth.Value
51 | Resource(EditorIndex).Health = scrlHealth.Value
52 | End Sub
53 |
54 | Private Sub scrlRespawn_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlRespawn.ValueChanged
55 | lblRespawn.Text = "Respawn Time (Seconds): " & scrlRespawn.Value
56 | Resource(EditorIndex).RespawnTime = scrlRespawn.Value
57 | End Sub
58 |
59 | Private Sub scrlAnim_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAnimation.ValueChanged
60 | Dim sString As String
61 | If scrlAnimation.Value = 0 Then sString = "None" Else sString = Trim$(Animation(scrlAnimation.Value).Name)
62 | lblAnim.Text = "Animation: " & sString
63 | Resource(EditorIndex).Animation = scrlAnimation.Value
64 | End Sub
65 |
66 | Private Sub lstIndex_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lstIndex.Click
67 | ResourceEditorInit()
68 | End Sub
69 |
70 | Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
71 | Call ResourceEditorOk()
72 | End Sub
73 |
74 | Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
75 | Dim tmpIndex As Long
76 |
77 | ClearResource(EditorIndex)
78 |
79 | tmpIndex = lstIndex.SelectedIndex
80 | lstIndex.Items.RemoveAt(EditorIndex - 1)
81 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Resource(EditorIndex).Name)
82 | lstIndex.SelectedIndex = tmpIndex
83 |
84 | ResourceEditorInit()
85 | End Sub
86 |
87 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
88 | Call ResourceEditorCancel()
89 | End Sub
90 |
91 | Private Sub frmEditor_Resource_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
92 | scrlReward.Maximum = MAX_ITEMS
93 | End Sub
94 |
95 | Private Sub txtName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtName.TextChanged
96 | Dim tmpIndex As Long
97 |
98 | If EditorIndex = 0 Then Exit Sub
99 | tmpIndex = lstIndex.SelectedIndex
100 | Resource(EditorIndex).Name = Trim$(txtName.Text)
101 | lstIndex.Items.RemoveAt(EditorIndex - 1)
102 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Resource(EditorIndex).Name)
103 | lstIndex.SelectedIndex = tmpIndex
104 | End Sub
105 |
106 | Private Sub txtMessage_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMessage.TextChanged
107 | Resource(EditorIndex).SuccessMessage = Trim$(txtMessage.Text)
108 | End Sub
109 |
110 | Private Sub txtMessage2_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtMessage2.TextChanged
111 | Resource(EditorIndex).EmptyMessage = Trim$(txtMessage2.Text)
112 | End Sub
113 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Shop.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Shop.vb:
--------------------------------------------------------------------------------
1 | Public Class frmEditor_Shop
2 |
3 | Private Sub txtName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtName.TextChanged
4 | Dim tmpIndex As Long
5 |
6 | If EditorIndex = 0 Then Exit Sub
7 | tmpIndex = lstIndex.SelectedIndex
8 | Shop(EditorIndex).Name = Trim$(txtName.Text)
9 | lstIndex.Items.RemoveAt(EditorIndex - 1)
10 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Shop(EditorIndex).Name)
11 | lstIndex.SelectedIndex = tmpIndex
12 | End Sub
13 |
14 | Private Sub scrlBuy_Scroll(ByVal sender As System.Object, ByVal e As System.Windows.Forms.ScrollEventArgs) Handles scrlBuy.Scroll
15 | lblBuy.Text = "Buy Rate: " & scrlBuy.Value & "%"
16 | Shop(EditorIndex).BuyRate = scrlBuy.Value
17 | End Sub
18 |
19 | Private Sub btnUpdate_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnUpdate.Click
20 | Dim Index As Long
21 | Index = lstTradeItem.SelectedIndex + 1
22 | If Index = 0 Then Exit Sub
23 | With Shop(EditorIndex).TradeItem(Index)
24 | .Item = cmbItem.SelectedIndex
25 | .ItemValue = Val(txtItemValue.Text)
26 | .CostItem = cmbCostItem.SelectedIndex
27 | .CostValue = Val(txtCostValue.Text)
28 | End With
29 | Call UpdateShopTrade()
30 | End Sub
31 |
32 | Private Sub btnDeleteTrade_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDeleteTrade.Click
33 | Dim Index As Long
34 | Index = lstTradeItem.SelectedIndex + 1
35 | If Index = 0 Then Exit Sub
36 | With Shop(EditorIndex).TradeItem(Index)
37 | .Item = 0
38 | .ItemValue = 0
39 | .CostItem = 0
40 | .CostValue = 0
41 | End With
42 | Call UpdateShopTrade()
43 | End Sub
44 |
45 | Private Sub lstIndex_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lstIndex.Click
46 | ShopEditorInit()
47 | End Sub
48 |
49 | Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
50 | If Len(Trim$(txtName.Text)) = 0 Then
51 | Call MsgBox("Name required.")
52 | Else
53 | Call ShopEditorOk()
54 | End If
55 | End Sub
56 |
57 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
58 | ShopEditorCancel()
59 | End Sub
60 |
61 | Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
62 | Dim tmpIndex As Long
63 |
64 | ClearShop(EditorIndex)
65 |
66 | tmpIndex = lstIndex.SelectedIndex
67 | lstIndex.Items.RemoveAt(EditorIndex - 1)
68 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Shop(EditorIndex).Name)
69 | lstIndex.SelectedIndex = tmpIndex
70 |
71 | ShopEditorInit()
72 | End Sub
73 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Spell.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmEditor_Spell.vb:
--------------------------------------------------------------------------------
1 | Public Class frmEditor_Spell
2 |
3 | Private Sub txtName_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtName.TextChanged
4 | Dim tmpIndex As Long
5 |
6 | If EditorIndex = 0 Then Exit Sub
7 | tmpIndex = lstIndex.SelectedIndex
8 | Spell(EditorIndex).Name = Trim$(txtName.Text)
9 | lstIndex.Items.RemoveAt(EditorIndex - 1)
10 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Spell(EditorIndex).Name)
11 | lstIndex.SelectedIndex = tmpIndex
12 | End Sub
13 |
14 | Private Sub cmbType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbType.SelectedIndexChanged
15 | Spell(EditorIndex).Type = cmbType.SelectedIndex
16 | End Sub
17 |
18 | Private Sub scrlMP_ValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles scrlMP.ValueChanged
19 | If scrlMP.Value > 0 Then
20 | lblMP.Text = "MP Cost: " & scrlMP.Value
21 | Else
22 | lblMP.Text = "MP Cost: None"
23 | End If
24 | Spell(EditorIndex).MPCost = scrlMP.Value
25 | End Sub
26 |
27 | Private Sub scrlLevel_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlLevel.ValueChanged
28 | If scrlLevel.Value > 0 Then
29 | lblLevel.Text = "Level Required: " & scrlLevel.Value
30 | Else
31 | lblLevel.Text = "Level Required: None"
32 | End If
33 | Spell(EditorIndex).LevelReq = scrlLevel.Value
34 | End Sub
35 |
36 | Private Sub scrlAccess_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAccess.ValueChanged
37 | If scrlAccess.Value > 0 Then
38 | lblAccess.Text = "Access Required: " & scrlAccess.Value
39 | Else
40 | lblAccess.Text = "Access Required: None"
41 | End If
42 | Spell(EditorIndex).AccessReq = scrlAccess.Value
43 | End Sub
44 |
45 | Private Sub cmbClass_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cmbClass.SelectedIndexChanged
46 | Spell(EditorIndex).ClassReq = cmbClass.SelectedIndex
47 | End Sub
48 |
49 | Private Sub scrlCast_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlCast.ValueChanged
50 | lblCast.Text = "Casting Time: " & scrlCast.Value & "s"
51 | Spell(EditorIndex).CastTime = scrlCast.Value
52 | End Sub
53 |
54 | Private Sub scrlCool_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlCool.ValueChanged
55 | lblCool.Text = "Cooldown Time: " & scrlCool.Value & "s"
56 | Spell(EditorIndex).CDTime = scrlCool.Value
57 | End Sub
58 |
59 | Private Sub scrlIcon_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlIcon.ValueChanged
60 | If scrlIcon.Value > 0 Then
61 | lblIcon.Text = "Icon: " & scrlIcon.Value
62 | Else
63 | lblIcon.Text = "Icon: None"
64 | End If
65 | Spell(EditorIndex).Icon = scrlIcon.Value
66 | EditorSpell_BltIcon()
67 | End Sub
68 |
69 | Private Sub scrlMap_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlMap.ValueChanged
70 | lblMap.Text = "Map: " & scrlMap.Value
71 | Spell(EditorIndex).Map = scrlMap.Value
72 | End Sub
73 |
74 | Private Sub scrlDir_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlDir.ValueChanged
75 | Dim sDir As String
76 | sDir = ""
77 | Select Case scrlDir.Value
78 | Case DIR_UP
79 | sDir = "Up"
80 | Case DIR_DOWN
81 | sDir = "Down"
82 | Case DIR_RIGHT
83 | sDir = "Right"
84 | Case DIR_LEFT
85 | sDir = "Left"
86 | End Select
87 | lblDir.Text = "Dir: " & sDir
88 | Spell(EditorIndex).Dir = scrlDir.Value
89 | End Sub
90 |
91 | Private Sub scrlX_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlX.ValueChanged
92 | lblX.Text = "X: " & scrlX.Value
93 | Spell(EditorIndex).X = scrlX.Value
94 | End Sub
95 |
96 | Private Sub scrlY_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlY.ValueChanged
97 | lblY.Text = "Y: " & scrlY.Value
98 | Spell(EditorIndex).Y = scrlY.Value
99 | End Sub
100 |
101 | Private Sub scrlVital_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlVital.ValueChanged
102 | lblVital.Text = "Vital: " & scrlVital.Value
103 | Spell(EditorIndex).Vital = scrlVital.Value
104 | End Sub
105 |
106 | Private Sub scrlDuration_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlDuration.ValueChanged
107 | lblDuration.Text = "Duration: " & scrlDuration.Value & "s"
108 | Spell(EditorIndex).Duration = scrlDuration.Value
109 | End Sub
110 |
111 | Private Sub scrlInterval_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlInterval.ValueChanged
112 | lblInterval.Text = "Interval: " & scrlInterval.Value & "s"
113 | Spell(EditorIndex).Interval = scrlInterval.Value
114 | End Sub
115 |
116 | Private Sub scrlRange_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlRange.ValueChanged
117 | If scrlRange.Value > 0 Then
118 | lblRange.Text = "Range: " & scrlRange.Value & " tiles."
119 | Else
120 | lblRange.Text = "Range: Self-cast"
121 | End If
122 | Spell(EditorIndex).Range = scrlRange.Value
123 | End Sub
124 |
125 | Private Sub chkAOE_CheckedChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles chkAOE.CheckedChanged
126 | If chkAOE.Checked = False Then
127 | Spell(EditorIndex).IsAoE = False
128 | Else
129 | Spell(EditorIndex).IsAoE = True
130 | End If
131 | End Sub
132 |
133 | Private Sub scrlAOE_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAOE.ValueChanged
134 | If scrlAOE.Value > 0 Then
135 | lblAOE.Text = "AoE: " & scrlAOE.Value & " tiles."
136 | Else
137 | lblAOE.Text = "AoE: Self-cast"
138 | End If
139 | Spell(EditorIndex).AoE = scrlAOE.Value
140 | End Sub
141 |
142 | Private Sub scrlAnimCast_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAnimCast.ValueChanged
143 | If scrlAnimCast.Value > 0 Then
144 | lblAnimCast.Text = "Cast Anim: " & Trim$(Animation(scrlAnimCast.Value).Name)
145 | Else
146 | lblAnimCast.Text = "Cast Anim: None"
147 | End If
148 | Spell(EditorIndex).CastAnim = scrlAnimCast.Value
149 | End Sub
150 |
151 | Private Sub scrlAnim_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlAnim.ValueChanged
152 | If scrlAnim.Value > 0 Then
153 | lblAnim.Text = "Animation: " & Trim$(Animation(scrlAnim.Value).Name)
154 | Else
155 | lblAnim.Text = "Animation: None"
156 | End If
157 | Spell(EditorIndex).SpellAnim = scrlAnim.Value
158 | End Sub
159 |
160 | Private Sub scrlStun_Scroll(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles scrlStun.ValueChanged
161 | If scrlStun.Value > 0 Then
162 | lblStun.Text = "Stun Duration: " & scrlStun.Value & "s"
163 | Else
164 | lblStun.Text = "Stun Duration: None"
165 | End If
166 | Spell(EditorIndex).StunDuration = scrlStun.Value
167 | End Sub
168 |
169 | Private Sub lstIndex_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles lstIndex.Click
170 | SpellEditorInit()
171 | End Sub
172 |
173 | Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click
174 | SpellEditorOk()
175 | End Sub
176 |
177 | Private Sub btnDelete_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnDelete.Click
178 | Dim tmpIndex As Long
179 |
180 | ClearSpell(EditorIndex)
181 |
182 | tmpIndex = lstIndex.SelectedIndex
183 | lstIndex.Items.RemoveAt(EditorIndex - 1)
184 | lstIndex.Items.Insert(EditorIndex - 1, EditorIndex & ": " & Spell(EditorIndex).Name)
185 | lstIndex.SelectedIndex = tmpIndex
186 |
187 | SpellEditorInit()
188 | End Sub
189 |
190 | Private Sub btnCancel_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnCancel.Click
191 | SpellEditorCancel()
192 | End Sub
193 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmLoad.Designer.vb:
--------------------------------------------------------------------------------
1 | _
2 | Partial Class frmLoad
3 | Inherits System.Windows.Forms.Form
4 |
5 | 'Form overrides dispose to clean up the component list.
6 | _
7 | Protected Overrides Sub Dispose(ByVal disposing As Boolean)
8 | Try
9 | If disposing AndAlso components IsNot Nothing Then
10 | components.Dispose()
11 | End If
12 | Finally
13 | MyBase.Dispose(disposing)
14 | End Try
15 | End Sub
16 |
17 | 'Required by the Windows Form Designer
18 | Private components As System.ComponentModel.IContainer
19 |
20 | 'NOTE: The following procedure is required by the Windows Form Designer
21 | 'It can be modified using the Windows Form Designer.
22 | 'Do not modify it using the code editor.
23 | _
24 | Private Sub InitializeComponent()
25 | Me.lblStatus = New System.Windows.Forms.Label
26 | Me.SuspendLayout()
27 | '
28 | 'lblStatus
29 | '
30 | Me.lblStatus.Location = New System.Drawing.Point(0, 8)
31 | Me.lblStatus.Name = "lblStatus"
32 | Me.lblStatus.Size = New System.Drawing.Size(280, 13)
33 | Me.lblStatus.TabIndex = 0
34 | Me.lblStatus.TextAlign = System.Drawing.ContentAlignment.MiddleCenter
35 | '
36 | 'frmLoad
37 | '
38 | Me.AutoScaleDimensions = New System.Drawing.SizeF(6.0!, 13.0!)
39 | Me.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font
40 | Me.ClientSize = New System.Drawing.Size(280, 32)
41 | Me.Controls.Add(Me.lblStatus)
42 | Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
43 | Me.Name = "frmLoad"
44 | Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
45 | Me.Text = "frmLoad"
46 | Me.ResumeLayout(False)
47 |
48 | End Sub
49 | Friend WithEvents lblStatus As System.Windows.Forms.Label
50 | End Class
51 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmLoad.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmLoad.vb:
--------------------------------------------------------------------------------
1 | Public Class frmLoad
2 |
3 | Private Sub frmLoad_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
4 | Me.Show()
5 | If started = False Then Call startup()
6 | End Sub
7 | End Class
--------------------------------------------------------------------------------
/Orion Client/Forms/frmMainGame.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/Forms/frmMenu.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
121 | 17, 17
122 |
123 |
124 | 126, 17
125 |
126 |
127 | 242, 17
128 |
129 |
130 | Welcome to the Orion Client. This is a free open source VB.Net game engine!
131 |
132 | For help or support please visit our site at http://ascensionforums.com.
133 |
134 | This project is based off of Eclipse Origins, feel free to check them out at http://www.eclipseorigins.com .
135 |
136 |
--------------------------------------------------------------------------------
/Orion Client/Modules/modEnumerations.vb:
--------------------------------------------------------------------------------
1 | Module modEnumerations
2 |
3 | ' The order of the packets must match with the server's packet enumeration
4 |
5 | ' Packets sent by server to client
6 | Public Enum ServerPackets
7 | SAlertMsg = 1
8 | SLoginOk
9 | SNewCharClasses
10 | SClassesData
11 | SInGame
12 | SPlayerInv
13 | SPlayerInvUpdate
14 | SPlayerWornEq
15 | SPlayerHp
16 | SPlayerMp
17 | SPlayerSp
18 | SPlayerStats
19 | SPlayerData
20 | SPlayerMove
21 | SNpcMove
22 | SPlayerDir
23 | SNpcDir
24 | SPlayerXY
25 | SAttack
26 | SNpcAttack
27 | SCheckforMap
28 | SMapData
29 | SMapItemData
30 | SMapNpcData
31 | SMapDone
32 | SGlobalMsg
33 | SAdminMsg
34 | SPlayerMsg
35 | SMapMsg
36 | SSpawnItem
37 | SItemEditor
38 | SUpdateItem
39 | SREditor
40 | SSpawnNpc
41 | SNpcDead
42 | SNpcEditor
43 | SUpdateNpc
44 | SMapKey
45 | SEditMap
46 | SShopEditor
47 | SUpdateShop
48 | SSpellEditor
49 | SUpdateSpell
50 | SSpells
51 | SLeftMap
52 | SResourceCache
53 | SResourceEditor
54 | SUpdateResource
55 | SSendPing
56 | SDoorAnimation
57 | SActionMsg
58 | SPlayerEXP
59 | SBlood
60 | SAnimationEditor
61 | SUpdateAnimation
62 | SAnimation
63 | SMapNpcVitals
64 | SCooldown
65 | SClearSpellBuffer
66 | SSayMsg
67 | SOpenShop
68 | SResetShopAction
69 | SStunned
70 | SMapWornEq
71 | SBank
72 | SClearTradeTimer
73 | STrade
74 | SCloseTrade
75 | STradeUpdate
76 | STradeStatus
77 | SGameData
78 | ' Make sure SMSG_COUNT is below everything else
79 | SMSG_COUNT
80 | End Enum
81 |
82 | ' Packets sent by client to server
83 | Public Enum ClientPackets
84 | CNewAccount = 1
85 | CDelAccount
86 | CLogin
87 | CAddChar
88 | CUseChar
89 | CSayMsg
90 | CEmoteMsg
91 | CBroadcastMsg
92 | CPlayerMsg
93 | CPlayerMove
94 | CPlayerDir
95 | CUseItem
96 | CAttack
97 | CUseStatPoint
98 | CPlayerInfoRequest
99 | CWarpMeTo
100 | CWarpToMe
101 | CWarpTo
102 | CSetSprite
103 | CGetStats
104 | CRequestNewMap
105 | CMapData
106 | CNeedMap
107 | CMapGetItem
108 | CMapDropItem
109 | CMapRespawn
110 | CMapReport
111 | CKickPlayer
112 | CBanList
113 | CBanDestroy
114 | CBanPlayer
115 | CRequestEditMap
116 | CRequestEditItem
117 | CSaveItem
118 | CRequestEditNpc
119 | CSaveNpc
120 | CRequestEditShop
121 | CSaveShop
122 | CRequestEditSpell
123 | CSaveSpell
124 | CSetAccess
125 | CWhosOnline
126 | CSetMotd
127 | CSearch
128 | CParty
129 | CJoinParty
130 | CLeaveParty
131 | CSpells
132 | CCast
133 | CQuit
134 | CSwapInvSlots
135 | CRequestEditResource
136 | CSaveResource
137 | CCheckPing
138 | CUnequip
139 | CRequestPlayerData
140 | CRequestItems
141 | CRequestNPCS
142 | CRequestResources
143 | CSpawnItem
144 | CTrainStat
145 | CRequestEditAnimation
146 | CSaveAnimation
147 | CRequestAnimations
148 | CRequestSpells
149 | CRequestShops
150 | CRequestLevelUp
151 | CForgetSpell
152 | CCloseShop
153 | CBuyItem
154 | CSellItem
155 | CChangeBankSlots
156 | CDepositItem
157 | CWithdrawItem
158 | CCloseBank
159 | CAdminWarp
160 | CTradeRequest
161 | CAcceptTrade
162 | CDeclineTrade
163 | CTradeItem
164 | CUntradeItem
165 | ' Make sure CMSG_COUNT is below everything else
166 | CMSG_COUNT
167 | End Enum
168 |
169 |
170 | ' Stats used by Players, Npcs and Classes
171 | Public Enum Stats
172 | strength = 1
173 | endurance
174 | vitality
175 | willpower
176 | intelligence
177 | spirit
178 | ' Make sure Stat_Count is below everything else
179 | stat_count
180 | End Enum
181 |
182 | ' Vitals used by Players, Npcs and Classes
183 | Public Enum Vitals
184 | HP = 1
185 | MP
186 | SP
187 | ' Make sure Vital_Count is below everything else
188 | Vital_Count
189 | End Enum
190 |
191 | ' Equipment used by Players
192 | Public Enum Equipment
193 | Weapon = 1
194 | Armor
195 | Helmet
196 | Shield
197 | ' Make sure Equipment_Count is below everything else
198 | Equipment_Count
199 | End Enum
200 |
201 | ' Layers in a map
202 | Public Enum MapLayer
203 | Ground = 1
204 | Mask
205 | Mask2
206 | Fringe
207 | Fringe2
208 | ' Make sure Layer_Count is below everything else
209 | Layer_Count
210 | End Enum
211 |
212 | End Module
213 |
--------------------------------------------------------------------------------
/Orion Client/Modules/modGlobals.vb:
--------------------------------------------------------------------------------
1 | Imports System.Net.Sockets
2 | Imports System.Drawing
3 |
4 | Module modGlobals
5 | 'Music + Sound Players
6 | Public SoundPlayer As SFML.Audio.Sound
7 | Public MusicPlayer As SFML.Audio.Music
8 | ' for directional blocking
9 | Public DirArrowX(0 To 4) As Byte
10 | Public DirArrowY(0 To 4) As Byte
11 |
12 | Public TilesetsClr() As Color
13 |
14 | ' trading
15 | Public TradeTimer As Long
16 | Public TradeRequest As Boolean
17 | Public InTrade As Boolean
18 | Public TradeYourOffer(0 To MAX_INV) As PlayerInvRec
19 | Public TradeTheirOffer(0 To MAX_INV) As PlayerInvRec
20 | Public TradeX As Long
21 | Public TradeY As Long
22 |
23 | ' Cache the Resources in an array
24 | Public MapResource() As MapResourceRec
25 | Public Resource_Index As Long
26 | Public Resources_Init As Boolean
27 |
28 | ' inv drag + drop
29 | Public DragInvSlotNum As Integer
30 | Public InvX As Long
31 | Public InvY As Long
32 |
33 | ' bank drag + drop
34 | Public DragBankSlotNum As Integer
35 | Public BankX As Long
36 | Public BankY As Long
37 |
38 | ' gui
39 | Public EqX As Long
40 | Public EqY As Long
41 | Public SpellX As Long
42 | Public SpellY As Long
43 | Public InvItemFrame(0 To MAX_INV) As Byte ' Used for animated items
44 | Public LastItemDesc As Long ' Stores the last item we showed in desc
45 | Public LastSpellDesc As Long ' Stores the last spell we showed in desc
46 | Public LastBankDesc As Long ' Stores the last bank item we showed in desc
47 | Public tmpCurrencyItem As Long
48 | Public InShop As Long ' is the player in a shop?
49 | Public ShopAction As Byte ' stores the current shop action
50 | Public InBank As Long
51 | Public CurrencyMenu As Byte
52 |
53 | ' Player variables
54 | Public MyIndex As Long ' Index of actual player
55 | Public PlayerInv(0 To MAX_INV) As PlayerInvRec ' Inventory
56 | Public PlayerSpells(0 To MAX_PLAYER_SPELLS) As Byte
57 | Public InventoryItemSelected As Integer
58 | Public SpellBuffer As Long
59 | Public SpellBufferTimer As Long
60 | Public SpellCD(0 To MAX_PLAYER_SPELLS) As Long
61 | Public StunDuration As Long
62 |
63 | ' Stops movement when updating a map
64 | Public CanMoveNow As Boolean
65 |
66 | ' Debug mode
67 | Public DEBUG_MODE As Boolean
68 |
69 | ' Game text buffer
70 | Public MyText As String
71 |
72 | ' Controls main gameloop
73 | Public InGame As Boolean
74 | Public isLogging As Boolean
75 | Public MapData As Boolean
76 | Public PlayerData As Boolean
77 |
78 | ' Text variables
79 | Public TexthDC As Long
80 | Public GameFont As Long
81 |
82 | ' Draw map name location
83 | Public DrawMapNameX As Single
84 | Public DrawMapNameY As Single
85 | Public DrawMapNameColor As SFML.Graphics.Color
86 |
87 | ' Game direction vars
88 | Public DirUp As Boolean
89 | Public DirDown As Boolean
90 | Public DirLeft As Boolean
91 | Public DirRight As Boolean
92 | Public ShiftDown As Boolean
93 | Public ControlDown As Boolean
94 |
95 | ' Used for dragging Picture Boxes
96 | Public SOffsetX As Integer
97 | Public SOffsetY As Integer
98 |
99 | ' Map animation #, used to keep track of what map animation is currently on
100 | Public MapAnim As Byte
101 | Public MapAnimTimer As Long
102 |
103 | ' Used to freeze controls when getting a new map
104 | Public GettingMap As Boolean
105 |
106 | ' Used to check if FPS needs to be drawn
107 | Public BFPS As Boolean
108 | Public BLoc As Boolean
109 |
110 | ' FPS and Time-based movement vars
111 | Public ElapsedTime As Long
112 | Public GameFPS As Long
113 |
114 | ' Text vars
115 | Public vbQuote As String
116 |
117 | ' Mouse cursor tile location
118 | Public CurX As Integer
119 | Public CurY As Integer
120 |
121 | ' Game editors
122 | Public Editor As Byte
123 | Public EditorIndex As Long
124 | Public AnimEditorFrame(0 To 1) As Long
125 | Public AnimEditorTimer(0 To 1) As Long
126 |
127 | ' Used to check if in editor or not and variables for use in editor
128 | Public InMapEditor As Boolean
129 | Public EditorTileX As Long
130 | Public EditorTileY As Long
131 | Public EditorTileWidth As Long
132 | Public EditorTileHeight As Long
133 | Public EditorWarpMap As Long
134 | Public EditorWarpX As Long
135 | Public EditorWarpY As Long
136 | Public SpawnNpcNum As Byte
137 | Public SpawnNpcDir As Byte
138 | Public EditorShop As Long
139 | Public EditorTileSelStart As Point
140 | Public EditorTileSelEnd As Point
141 |
142 | ' Used for map item editor
143 | Public ItemEditorNum As Long
144 | Public ItemEditorValue As Long
145 |
146 | ' Used for map key editor
147 | Public KeyEditorNum As Long
148 | Public KeyEditorTake As Long
149 |
150 | ' Used for map key open editor
151 | Public KeyOpenEditorX As Long
152 | Public KeyOpenEditorY As Long
153 |
154 | ' Map Resources
155 | Public ResourceEditorNum As Long
156 |
157 | ' Used for map editor heal & trap & slide tiles
158 | Public MapEditorHealType As Long
159 | Public MapEditorHealAmount As Long
160 | Public MapEditorSlideDir As Long
161 |
162 | ' Maximum classes
163 | Public Max_Classes As Byte
164 | Public Camera As Rectangle
165 | Public TileView As RECT
166 |
167 | ' Pinging
168 | Public PingStart As Long
169 | Public PingEnd As Long
170 | Public Ping As Long
171 |
172 | ' indexing
173 | Public ActionMsgIndex As Byte
174 | Public BloodIndex As Byte
175 | Public AnimationIndex As Byte
176 |
177 | ' fps lock
178 | Public FPS_Lock As Boolean
179 |
180 | ' Editor edited items array
181 | Public Item_Changed(0 To MAX_ITEMS) As Boolean
182 | Public NPC_Changed(0 To MAX_NPCS) As Boolean
183 | Public Resource_Changed(0 To MAX_NPCS) As Boolean
184 | Public Animation_Changed(0 To MAX_ANIMATIONS) As Boolean
185 | Public Spell_Changed(0 To MAX_SPELLS) As Boolean
186 | Public Shop_Changed(0 To MAX_SHOPS) As Boolean
187 |
188 | ' New char
189 | Public newCharSprite As Long
190 | Public newCharClass As Long
191 |
192 | Public TempMapData() As Byte
193 |
194 | End Module
195 |
--------------------------------------------------------------------------------
/Orion Client/Modules/modINIAccess.vb:
--------------------------------------------------------------------------------
1 | Option Strict On
2 | Module modINIAccess
3 |
4 | #Region "API Calls"
5 | ' standard API declarations for INI access
6 | ' changing only "As Long" to "As Int32" (As Integer would work also)
7 | Private Declare Unicode Function WritePrivateProfileString Lib "kernel32" _
8 | Alias "WritePrivateProfileStringW" (ByVal lpApplicationName As String, _
9 | ByVal lpKeyName As String, ByVal lpString As String, _
10 | ByVal lpFileName As String) As Int32
11 |
12 | Private Declare Unicode Function GetPrivateProfileString Lib "kernel32" _
13 | Alias "GetPrivateProfileStringW" (ByVal lpApplicationName As String, _
14 | ByVal lpKeyName As String, ByVal lpDefault As String, _
15 | ByVal lpReturnedString As String, ByVal nSize As Int32, _
16 | ByVal lpFileName As String) As Int32
17 | #End Region
18 |
19 | Public Function INIRead(ByVal INIPath As String, _
20 | ByVal SectionName As String, ByVal KeyName As String, _
21 | ByVal DefaultValue As String) As String
22 | ' primary version of call gets single value given all parameters
23 | Dim n As Int32
24 | Dim sData As String
25 | sData = Space$(1024) ' allocate some room
26 | n = GetPrivateProfileString(SectionName, KeyName, DefaultValue, _
27 | sData, sData.Length, INIPath)
28 | If n > 0 Then ' return whatever it gave us
29 | INIRead = sData.Substring(0, n)
30 | Else
31 | INIRead = ""
32 | End If
33 | End Function
34 |
35 | #Region "INIRead Overloads"
36 | Public Function Getvar(ByVal INIPath As String, _
37 | ByVal SectionName As String, ByVal KeyName As String) As String
38 | ' overload 1 assumes zero-length default
39 | Return INIRead(INIPath, SectionName, KeyName, "")
40 | End Function
41 | #End Region
42 |
43 | Public Sub PutVar(ByVal INIPath As String, ByVal SectionName As String, ByVal KeyName As String, ByVal TheValue As String)
44 | Call WritePrivateProfileString(SectionName, KeyName, TheValue, INIPath)
45 | End Sub
46 |
47 | Public Sub INIDelete(ByVal INIPath As String, ByVal SectionName As String, _
48 | ByVal KeyName As String) ' delete single line from section
49 | Call WritePrivateProfileString(SectionName, KeyName, Nothing, INIPath)
50 | End Sub
51 |
52 | Public Sub INIDelete(ByVal INIPath As String, ByVal SectionName As String)
53 | ' delete section from INI file
54 | Call WritePrivateProfileString(SectionName, Nothing, Nothing, INIPath)
55 | End Sub
56 | End Module
57 |
--------------------------------------------------------------------------------
/Orion Client/Modules/modUpdateUI.vb:
--------------------------------------------------------------------------------
1 | Imports System.Drawing
2 |
3 | Module modUpdateUI
4 |
5 | Public GameDestroyed As Boolean
6 | Public ReloadFrmMain As Boolean
7 | Public pnlRegisterVisible As Boolean
8 | Public pnlCharCreateVisible As Boolean
9 | Public pnlLoginVisible As Boolean
10 | Public pnlCreditsVisible As Boolean
11 | Public frmmenuvisible As Boolean
12 | Public frmmaingamevisible As Boolean
13 | Public frmloadvisible As Boolean
14 | Public lblnextcharleft As Long
15 | Public cmbclass() As String
16 | Public txtChatAdd As String
17 | Public chkSavePassChecked As Boolean
18 | Public tempUserName As String
19 | Public tempPassword As String
20 |
21 | Public VbKeyRight As Boolean
22 | Public VbKeyLeft As Boolean
23 | Public VbKeyUp As Boolean
24 | Public VbKeyDown As Boolean
25 | Public VbKeyShift As Boolean
26 | Public VbKeyControl As Boolean
27 |
28 | Public picHpWidth As Long
29 | Public picManaWidth As Long
30 | Public picEXPWidth As Long
31 |
32 | Public lblHPText As String
33 | Public lblManaText As String
34 | Public lblEXPText As String
35 |
36 | 'Editors
37 | Public InitMapEditor As Boolean
38 | Public InitItemEditor As Boolean
39 | Public InitResourceEditor As Boolean
40 | Public InitNPCEditor As Boolean
41 | Public InitSpellEditor As Boolean
42 | Public InitShopEditor As Boolean
43 | Public InitAnimationEditor As Boolean
44 |
45 | Public UpdateCharacterPanel As Boolean
46 |
47 | Public NeedToOpenShop As Boolean
48 | Public NeedToOpenShopNum As Long
49 | Public NeedToOpenBank As Boolean
50 | Public NeedToOpenTrade As Boolean
51 | Public NeedtoCloseTrade As Boolean
52 |
53 | Public Tradername As String
54 |
55 |
56 | Sub DrawStatBars()
57 | Dim g As Graphics = Graphics.FromImage(StatBarBackbuffer)
58 | Dim fnt As New Font("Microsoft Sans Serif", 8, FontStyle.Bold)
59 | g.DrawImage(EmptyHPBar, New Point(12, 12))
60 | g.DrawImage(EmptyManaBar, New Point(12, 35))
61 | g.DrawImage(EmptyEXPBar, New Point(12, 58))
62 | g.DrawImage(HPBar, New Rectangle(12, 15, picHpWidth, HPBar.Height), New Rectangle(0, 0, picHpWidth, HPBar.Height), GraphicsUnit.Pixel)
63 | g.DrawImage(ManaBar, New Rectangle(12, 38, picManaWidth, ManaBar.Height), New Rectangle(0, 0, picManaWidth, ManaBar.Height), GraphicsUnit.Pixel)
64 | g.DrawImage(EXPBar, New Rectangle(12, 61, picEXPWidth, EXPBar.Height), New Rectangle(0, 0, picEXPWidth, EXPBar.Height), GraphicsUnit.Pixel)
65 | g.DrawString(lblHPText, fnt, New SolidBrush(Color.Black), 40, 15)
66 | g.DrawString(lblManaText, fnt, New SolidBrush(Color.Black), 40, 38)
67 | g.DrawString(lblEXPText, fnt, New SolidBrush(Color.Black), 40, 63)
68 | g.Dispose()
69 |
70 | g = frmMainGame.picGeneral.CreateGraphics
71 | g.DrawImage(StatBarBackbuffer, New Point(0, 0))
72 | g.Dispose()
73 | End Sub
74 | End Module
75 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | 'NOTE: This file is auto-generated; do not modify it directly. To make changes,
18 | ' or if you encounter build errors in this file, go to the Project Designer
19 | ' (go to Project Properties or double-click the My Project node in
20 | ' Solution Explorer), and make changes on the Application tab.
21 | '
22 | Partial Friend Class MyApplication
23 |
24 | _
25 | Public Sub New()
26 | MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
27 | Me.IsSingleInstance = false
28 | Me.EnableVisualStyles = true
29 | Me.SaveMySettingsOnExit = true
30 | Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterAllFormsClose
31 | End Sub
32 |
33 | _
34 | Protected Overrides Sub OnCreateMainForm()
35 | Me.MainForm = Global.OrionClient.frmLoad
36 | End Sub
37 | End Class
38 | End Namespace
39 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | true
4 | frmLoad
5 | false
6 | 1
7 | true
8 | 0
9 | true
10 |
--------------------------------------------------------------------------------
/Orion Client/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
21 |
22 |
23 | ' Version information for an assembly consists of the following four values:
24 | '
25 | ' Major Version
26 | ' Minor Version
27 | ' Build Number
28 | ' Revision
29 | '
30 | ' You can specify all the values or you can default the Build and Revision Numbers
31 | ' by using the '*' as shown below:
32 | '
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 | Imports System
15 |
16 | Namespace My.Resources
17 |
18 | 'This class was auto-generated by the StronglyTypedResourceBuilder
19 | 'class via a tool like ResGen or Visual Studio.
20 | 'To add or remove a member, edit your .ResX file then rerun ResGen
21 | 'with the /str option, or rebuild your VS project.
22 | '''
23 | ''' A strongly-typed resource class, for looking up localized strings, etc.
24 | '''
25 | _
29 | Friend Module Resources
30 |
31 | Private resourceMan As Global.System.Resources.ResourceManager
32 |
33 | Private resourceCulture As Global.System.Globalization.CultureInfo
34 |
35 | '''
36 | ''' Returns the cached ResourceManager instance used by this class.
37 | '''
38 | _
39 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
40 | Get
41 | If Object.ReferenceEquals(resourceMan, Nothing) Then
42 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("OrionClient.Resources", GetType(Resources).Assembly)
43 | resourceMan = temp
44 | End If
45 | Return resourceMan
46 | End Get
47 | End Property
48 |
49 | '''
50 | ''' Overrides the current thread's CurrentUICulture property for all
51 | ''' resource lookups using this strongly typed resource class.
52 | '''
53 | _
54 | Friend Property Culture() As Global.System.Globalization.CultureInfo
55 | Get
56 | Return resourceCulture
57 | End Get
58 | Set
59 | resourceCulture = value
60 | End Set
61 | End Property
62 | End Module
63 | End Namespace
64 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.OrionClient.My.MySettings
68 | Get
69 | Return Global.OrionClient.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/Orion Client/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Orion Client/My Project/app.manifest:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/Orion Client/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/Orion Client/csfml-audio-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/csfml-audio-2.dll
--------------------------------------------------------------------------------
/Orion Client/csfml-graphics-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/csfml-graphics-2.dll
--------------------------------------------------------------------------------
/Orion Client/csfml-window-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/csfml-window-2.dll
--------------------------------------------------------------------------------
/Orion Client/data files/Credits.txt:
--------------------------------------------------------------------------------
1 | Creator:
2 | JC Snider (jcsnider)
3 |
4 | Base:
5 | Eclipse Origins v1.1.0 by Robin Perris*
6 |
7 | Graphics/Media Engine:
8 | SFML*
9 |
10 | Font:
11 | Arvo-Regular Font by Anton Koovit*
12 |
13 | Temporary Graphics:
14 | Mack's Graphics*
15 |
16 | Inspiration/Support:
17 | Ambard
18 | Joe a.k.a Irokaiser/Kibbelz
19 |
20 | Testing:
21 | Ambard
22 | Timmah
23 |
24 | *License copies can be found in the license directory.
--------------------------------------------------------------------------------
/Orion Client/data files/config.ini:
--------------------------------------------------------------------------------
1 | [Options]
2 | Username=admin
3 | Password=
4 | SavePass=False
5 | IP=localhost
6 | Port= 7001
7 | MenuMusic=
8 | Music= 1
9 | Sound= 1
10 |
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/EXPBar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/EXPBar.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/EXPBarEmpty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/EXPBarEmpty.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/HPBar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/HPBar.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/HPBarEmpty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/HPBarEmpty.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/ManaBar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/ManaBar.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/GUI/ManaBarEmpty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/GUI/ManaBarEmpty.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/MapEditorSelect.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/MapEditorSelect.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Character.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Character.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Exit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Exit.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Inventory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Inventory.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Options.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Options.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Skills.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Skills.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/actionbar/Trade.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/actionbar/Trade.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/blood.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/blood.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/characters/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/characters/1.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/characters/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/characters/2.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/direction.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/direction.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/misc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/misc.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/tilesets/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/tilesets/1.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/tilesets/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/tilesets/2.png
--------------------------------------------------------------------------------
/Orion Client/data files/graphics/tilesets/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/data files/graphics/tilesets/3.png
--------------------------------------------------------------------------------
/Orion Client/libsndfile-1.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/libsndfile-1.dll
--------------------------------------------------------------------------------
/Orion Client/licenses/Graphics (Macks) License.txt:
--------------------------------------------------------------------------------
1 | License Agreement - REFMAP (Macks) Graphics
2 | Link: (Wayback Archive) https://web.archive.org/web/20120709182546/http://www.tekepon.net/fsm/modules/refmap/index.php?mode=rules
3 |
4 |
5 | The free graphics in this section (hereinafter "our resources") were created by REFMAP.
6 |
7 | You must read and agree to the terms and conditions before downloading our resources. Also, check out FAQ if you have any question(s).
8 |
9 | Our Graphic data
10 |
11 | All of our resources are free, without regard to your game is a shareware or a free-ware. Of course, you can also subscribe your game used our graphic data for a game contest.
12 |
13 | Although our resources are for RPG Tkool 2000*1, you can use them for a original programming game, for your website, for a movie, for a screen saver, etc.
14 |
15 | No special permission to use.
16 |
17 | REFMAP and FSM does not take any responsibility of any damage caused by having used our material.
18 |
19 | Rules of Usage
20 |
21 | Although our resources are distributed as a free material, this does NOT mean "copyright abandoned". It only means "no charge to use" and "no need to ask our permission". All of the right of our graphic data is reserved by REFMAP.
22 |
23 | When you use our resources, please indicate in READ ME file (or in somewhere a player can recognize) author name "REFMAP", URL of this website (http://www.tekepon.net/fsm) and mention of using the resources of REFMAP in your game. Moreover, please clearly forbid extracting image data and using them from your game.
24 |
25 | Please write in your READ ME file like this:
26 |
27 | "Some (All) of graphic data in this software are free game resources distributed by REFMAP(http://www.tekepon.net/fsm).
28 | You must not use the graphic data which is in this software, for the purpose except playing this game. When you want to get these resources, go to the website above."
29 | What we forbid
30 |
31 | NEVER sell our graphic data without regard to alerted resources or not. (You can sell your game in which use our resources, but DON'T sell our resources themselves. You can alter our graphic data and distribute alerted one on your website as free resources, but don't sell them even if they looks completely original).
32 |
33 | NEVER distribute secondly. (Don't make our data be able to download in other websites. We don't affiliate any game resources posting websites.)
34 |
35 | When you want alter the resources
36 |
37 | You can use these resources to alter. (Ex: change colors or hairstyle, add weapon, etc.)
38 |
39 | When you alter our resources, you can distribute them on your website or our "Material Database" as long as they are free game resources. (When you distribute altered resources, please write clearly under them that this material changes the REFMAP's free graphics for games, and our URL).
40 |
41 | Caution:
42 | Permission of alteration and distributing altered one is very unique among the game resources websites in Japan. Most of websites don't permit alteration, or permit alteration only making the user's game and don't permit to distribute altered graphics.
43 | Please do not think other websites are the same just because we permit these act. Use of the material of other websites should follow the the policy of the site. ( It is often seen that the game resources on the website in Japan being redistributed without the author's permission. Please do not do such a thing.)
44 | FSM and REFMAP does not take any responsibility of any damage caused by distribution of the secondary processed material, or not approved (no changed material) distribution.
45 |
46 | Required Change to redistribute
47 |
48 | In order to redistribute our graphic data, it is required to add some change that everyone can recognize it is alerted.
49 |
50 |
51 | *1 :
52 | "RPG Tkool" series is the registered trademark of ASCII,Inc. and ENTERBRAIN,Inc. The companies do not approve the software called "maker" series ("RPGMaker2K", "RM95", etc.) distributed by the illegal act, and so we forbid use of our resources for such software.
--------------------------------------------------------------------------------
/Orion Client/licenses/SFML License.txt:
--------------------------------------------------------------------------------
1 | SFML License
2 | http://www.sfml-dev.org/license.php
3 |
4 | SFML (Simple and Fast Multimedia Library) - Copyright (c) Laurent Gomila
5 |
6 | This software is provided 'as-is', without any express or implied warranty.
7 | In no event will the authors be held liable for any damages arising from
8 | the use of this software.
9 |
10 | Permission is granted to anyone to use this software for any purpose,
11 | including commercial applications, and to alter it and redistribute it
12 | freely, subject to the following restrictions:
13 |
14 | 1. The origin of this software must not be misrepresented; you must not claim
15 | that you wrote the original software. If you use this software in a product,
16 | an acknowledgment in the product documentation would be appreciated but is
17 | not required.
18 |
19 | 2. Altered source versions must be plainly marked as such, and must not be
20 | misrepresented as being the original software.
21 |
22 | 3. This notice may not be removed or altered from any source distribution.
23 |
24 |
25 |
26 | In short, SFML is free for any use (commercial or personal, proprietary or open-source). You can use SFML in your project without any restriction. You can even omit to mention that you use SFML -- although it would be appreciated.
--------------------------------------------------------------------------------
/Orion Client/licenses/SIL Open Font License.txt:
--------------------------------------------------------------------------------
1 | This Font Software is licensed under the SIL Open Font License, Version 1.1.
2 | This license is copied below, and is also available with a FAQ at: http://scripts.sil.org/OFL
3 |
4 | -----------------------------------------------------------
5 | SIL OPEN FONT LICENSE Version 1.1 - 26 February 2007
6 | -----------------------------------------------------------
7 |
8 | PREAMBLE
9 | The goals of the Open Font License (OFL) are to stimulate worldwide development of collaborative font projects, to support the font creation efforts of academic and linguistic communities, and to provide a free and open framework in which fonts may be shared and improved in partnership with others.
10 |
11 | The OFL allows the licensed fonts to be used, studied, modified and redistributed freely as long as they are not sold by themselves. The fonts, including any derivative works, can be bundled, embedded, redistributed and/or sold with any software provided that any reserved names are not used by derivative works. The fonts and derivatives, however, cannot be released under any other type of license. The requirement for fonts to remain under this license does not apply to any document created using the fonts or their derivatives.
12 |
13 | DEFINITIONS
14 | "Font Software" refers to the set of files released by the Copyright Holder(s) under this license and clearly marked as such. This may include source files, build scripts and documentation.
15 |
16 | "Reserved Font Name" refers to any names specified as such after the copyright statement(s).
17 |
18 | "Original Version" refers to the collection of Font Software components as distributed by the Copyright Holder(s).
19 |
20 | "Modified Version" refers to any derivative made by adding to, deleting, or substituting -- in part or in whole -- any of the components of the Original Version, by changing formats or by porting the Font Software to a new environment.
21 |
22 | "Author" refers to any designer, engineer, programmer, technical writer or other person who contributed to the Font Software.
23 |
24 | PERMISSION & CONDITIONS
25 | Permission is hereby granted, free of charge, to any person obtaining a copy of the Font Software, to use, study, copy, merge, embed, modify, redistribute, and sell modified and unmodified copies of the Font Software, subject to the following conditions:
26 |
27 | 1) Neither the Font Software nor any of its individual components, in Original or Modified Versions, may be sold by itself.
28 |
29 | 2) Original or Modified Versions of the Font Software may be bundled, redistributed and/or sold with any software, provided that each copy contains the above copyright notice and this license. These can be included either as stand-alone text files, human-readable headers or in the appropriate machine-readable metadata fields within text or binary files as long as those fields can be easily viewed by the user.
30 |
31 | 3) No Modified Version of the Font Software may use the Reserved Font Name(s) unless explicit written permission is granted by the corresponding Copyright Holder. This restriction only applies to the primary font name as presented to the users.
32 |
33 | 4) The name(s) of the Copyright Holder(s) or the Author(s) of the Font Software shall not be used to promote, endorse or advertise any Modified Version, except to acknowledge the contribution(s) of the Copyright Holder(s) and the Author(s) or with their explicit written permission.
34 |
35 | 5) The Font Software, modified or unmodified, in part or in whole, must be distributed entirely under this license, and must not be distributed under any other license. The requirement for fonts to remain under this license does not apply to any document created using the Font Software.
36 |
37 | TERMINATION
38 | This license becomes null and void if any of the above conditions are not met.
39 |
40 | DISCLAIMER
41 | THE FONT SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF COPYRIGHT, PATENT, TRADEMARK, OR OTHER RIGHT. IN NO EVENT SHALL THE COPYRIGHT HOLDER BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, INCLUDING ANY GENERAL, SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF THE USE OR INABILITY TO USE THE FONT SOFTWARE OR FROM OTHER DEALINGS IN THE FONT SOFTWARE.
--------------------------------------------------------------------------------
/Orion Client/openal32.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/openal32.dll
--------------------------------------------------------------------------------
/Orion Client/sfmlnet-audio-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/sfmlnet-audio-2.dll
--------------------------------------------------------------------------------
/Orion Client/sfmlnet-graphics-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/sfmlnet-graphics-2.dll
--------------------------------------------------------------------------------
/Orion Client/sfmlnet-window-2.dll:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jcsnider/Orion-Game-Engine/28c7955cc8e1b2028e1760af1b0ae23f9b796f34/Orion Client/sfmlnet-window-2.dll
--------------------------------------------------------------------------------
/Orion Game Engine.sln:
--------------------------------------------------------------------------------
1 |
2 | Microsoft Visual Studio Solution File, Format Version 12.00
3 | # Visual Studio 2013
4 | VisualStudioVersion = 12.0.31101.0
5 | MinimumVisualStudioVersion = 10.0.40219.1
6 | Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Orion Client", "Orion Client\Orion Client.vbproj", "{531B337C-BC02-44ED-90C2-C448FE5190A2}"
7 | EndProject
8 | Project("{F184B08F-C81C-45F6-A57F-5ABD9991F28F}") = "Orion Server", "Orion Server\Orion Server.vbproj", "{B554FD23-0844-49D1-A05A-D79CEAD3FA7A}"
9 | EndProject
10 | Global
11 | GlobalSection(SolutionConfigurationPlatforms) = preSolution
12 | Debug|Any CPU = Debug|Any CPU
13 | Debug|x86 = Debug|x86
14 | Release|Any CPU = Release|Any CPU
15 | Release|x86 = Release|x86
16 | EndGlobalSection
17 | GlobalSection(ProjectConfigurationPlatforms) = postSolution
18 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Debug|Any CPU.ActiveCfg = Debug|x86
19 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Debug|Any CPU.Build.0 = Debug|x86
20 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Debug|x86.ActiveCfg = Debug|x86
21 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Debug|x86.Build.0 = Debug|x86
22 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Release|Any CPU.ActiveCfg = Release|Any CPU
23 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Release|Any CPU.Build.0 = Release|Any CPU
24 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Release|x86.ActiveCfg = Release|x86
25 | {531B337C-BC02-44ED-90C2-C448FE5190A2}.Release|x86.Build.0 = Release|x86
26 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Debug|Any CPU.ActiveCfg = Debug|x86
27 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Debug|Any CPU.Build.0 = Debug|x86
28 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Debug|x86.ActiveCfg = Debug|x86
29 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Debug|x86.Build.0 = Debug|x86
30 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Release|Any CPU.ActiveCfg = Release|Any CPU
31 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Release|Any CPU.Build.0 = Release|Any CPU
32 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Release|x86.ActiveCfg = Release|x86
33 | {B554FD23-0844-49D1-A05A-D79CEAD3FA7A}.Release|x86.Build.0 = Release|x86
34 | EndGlobalSection
35 | GlobalSection(SolutionProperties) = preSolution
36 | HideSolutionNode = FALSE
37 | EndGlobalSection
38 | EndGlobal
39 |
--------------------------------------------------------------------------------
/Orion Server/Classes/clsByteBuffer.vb:
--------------------------------------------------------------------------------
1 | '+-----------------------Class--------------------------+
2 | Imports System.Text
3 | Public Class ByteBuffer
4 | Implements IDisposable
5 | Dim Buff As List(Of Byte)
6 | Dim readBuff As Byte()
7 | Dim readpos As Integer
8 | Dim buffUpdated = False
9 | Public Sub New()
10 | Buff = New List(Of Byte)
11 | readpos = 0
12 | End Sub
13 | Public Function GetReadPos() As Long
14 | GetReadPos = readpos
15 | End Function
16 | Public Function ToArray() As Byte()
17 | Return Buff.ToArray
18 | End Function
19 | Public Function Count() As Integer
20 | Return Buff.Count
21 | End Function
22 | Public Function Length() As Integer
23 | Length = Count() - readpos
24 | End Function
25 | Public Sub Clear()
26 | Buff.Clear()
27 | readpos = 0
28 | End Sub
29 | Public Sub WriteBytes(ByVal Input() As Byte)
30 | Buff.AddRange(Input)
31 | buffUpdated = True
32 | End Sub
33 |
34 | Public Sub WriteShort(ByVal Input As Short)
35 | Buff.AddRange(BitConverter.GetBytes(Input))
36 | buffUpdated = True
37 | End Sub
38 | Public Sub WriteInteger(ByVal Input As Integer)
39 | Buff.AddRange(BitConverter.GetBytes(Input))
40 | buffUpdated = True
41 | End Sub
42 | Public Sub WriteLong(ByVal Input As Long)
43 | Buff.AddRange(BitConverter.GetBytes(Input))
44 | buffUpdated = True
45 | End Sub
46 | Public Sub WriteString(ByVal Input As String)
47 | Buff.AddRange(BitConverter.GetBytes(Input.Length))
48 | Buff.AddRange(Encoding.ASCII.GetBytes(Input))
49 | buffUpdated = True
50 | End Sub
51 | Public Function ReadString(Optional ByVal Peek As Boolean = True) As String
52 | Dim Len As Integer = ReadInteger(True)
53 | If buffUpdated Then
54 | readBuff = Buff.ToArray
55 | buffUpdated = False
56 | End If
57 | Dim ret As String = Encoding.ASCII.GetString(readBuff, readpos, Len)
58 | If Peek And Buff.Count > readpos Then
59 | If ret.Length > 0 Then
60 | readpos += Len
61 | End If
62 | End If
63 | Return ret
64 | End Function
65 | Public Function ReadBytes(ByVal Length As Integer, Optional ByRef Peek As Boolean = True) As Byte()
66 | If buffUpdated Then
67 | readBuff = Buff.ToArray
68 | buffUpdated = False
69 | End If
70 | Dim ret() As Byte = Buff.GetRange(readpos, Length).ToArray
71 | If Peek Then readpos += Length
72 | Return ret
73 | End Function
74 | Public Function ReadShort(Optional ByVal peek As Boolean = True) As Short
75 | If Buff.Count > readpos Then 'check to see if this passes the byte count
76 | If buffUpdated Then
77 | readBuff = Buff.ToArray
78 | buffUpdated = False
79 | End If
80 | Dim ret As Short = BitConverter.ToInt16(readBuff, readpos)
81 | If peek And Buff.Count > readpos Then
82 | readpos += 2
83 | End If
84 | Return ret
85 | Else
86 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
87 | End If
88 | End Function
89 | Public Function ReadInteger(Optional ByVal peek As Boolean = True) As Integer
90 | If Buff.Count > readpos Then 'check to see if this passes the byte count
91 | If buffUpdated Then
92 | readBuff = Buff.ToArray
93 | buffUpdated = False
94 | End If
95 | Dim ret As Integer = BitConverter.ToInt32(readBuff, readpos)
96 | If peek And Buff.Count > readpos Then
97 | readpos += 4
98 | End If
99 | Return ret
100 | Else
101 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
102 | End If
103 | End Function
104 | Public Function ReadLong(Optional ByVal peek As Boolean = True) As Long
105 | If Buff.Count >= readpos Then 'check to see if this passes the byte count
106 | If buffUpdated Then
107 | readBuff = Buff.ToArray
108 | buffUpdated = False
109 | End If
110 | Dim ret As Long = BitConverter.ToInt64(readBuff, readpos)
111 | If peek And Buff.Count > readpos Then
112 | readpos += 8
113 | End If
114 | Return ret
115 | Else
116 | Throw New Exception("Byte Buffer Past Limit!") 'past byte count throw a new exception
117 | End If
118 | End Function
119 |
120 | Private disposedValue As Boolean = False ' To detect redundant calls
121 |
122 | ' IDisposable
123 | Protected Overridable Sub Dispose(ByVal disposing As Boolean)
124 | If Not Me.disposedValue Then
125 | If disposing Then
126 | Buff.Clear()
127 | End If
128 | readpos = 0
129 | End If
130 | Me.disposedValue = True
131 | End Sub
132 |
133 | #Region " IDisposable Support "
134 | Public Sub Dispose() Implements IDisposable.Dispose
135 | Dispose(True)
136 | GC.SuppressFinalize(Me)
137 | End Sub
138 | #End Region
139 |
140 | End Class
141 | '+-------------------------End Class-------------------+
142 |
143 |
144 |
--------------------------------------------------------------------------------
/Orion Server/Forms/frmServer.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
121 | 17, 17
122 |
123 |
124 | 232, 17
125 |
126 |
127 | 351, 17
128 |
129 |
130 |
131 | AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w
132 | LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACFTeXN0
133 | ZW0uV2luZG93cy5Gb3Jtcy5BeEhvc3QrU3RhdGUBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAYQAAAAIB
134 | AAAAAQAAAAAkAAAAMmM0OWY4MDAtYzJkZC0xMWNmLTlhZDYtMDA4MGM3ZTdiNzhkAAAAACgAAAAhQzQS
135 | CAAAAOUCAADlAgAAktiNJAAABgAAAAAAAAAAAAAAAACQHwAACw==
136 |
137 |
138 |
139 | 465, 17
140 |
141 |
--------------------------------------------------------------------------------
/Orion Server/Modules/modConstants.vb:
--------------------------------------------------------------------------------
1 | Module modConstants
2 |
3 | ' Path constants
4 | Public Const ADMIN_LOG As String = "admin.log"
5 | Public Const PLAYER_LOG As String = "player.log"
6 |
7 | ' Version constants
8 | Public Const CLIENT_MAJOR As Byte = 4
9 | Public Const CLIENT_MINOR As Byte = 0
10 | Public Const CLIENT_REVISION As Byte = 0
11 | Public Const MAX_LINES As Integer = 500 ' Used for frmServer.txtText
12 |
13 | Public jcs As Long
14 |
15 |
16 | ' ********************************************************
17 | ' * The values below must match with the client's values *
18 | ' ********************************************************
19 | ' General constants
20 | Public Const MAX_PLAYERS As Byte = 70
21 | Public Const MAX_ITEMS As Byte = 255
22 | Public Const MAX_NPCS As Byte = 255
23 | Public Const MAX_ANIMATIONS As Long = 255
24 | Public Const MAX_INV As Byte = 35
25 | Public Const MAX_MAP_ITEMS As Byte = 255
26 | Public Const MAX_MAP_NPCS As Byte = 30
27 | Public Const MAX_SHOPS As Byte = 50
28 | Public Const MAX_PLAYER_SPELLS As Byte = 20
29 | Public Const MAX_SPELLS As Byte = 255
30 | Public Const MAX_TRADES As Byte = 20
31 | Public Const MAX_RESOURCES As Byte = 100
32 | Public Const MAX_LEVELS As Byte = 100
33 | Public Const MAX_BANK As Byte = 100
34 |
35 | ' text color constants
36 | Public Const Black As Byte = 0
37 | Public Const Blue As Byte = 1
38 | Public Const Green As Byte = 2
39 | Public Const Cyan As Byte = 3
40 | Public Const Red As Byte = 4
41 | Public Const Magenta As Byte = 5
42 | Public Const Brown As Byte = 6
43 | Public Const Grey As Byte = 7
44 | Public Const DarkGrey As Byte = 8
45 | Public Const BrightBlue As Byte = 9
46 | Public Const BrightGreen As Byte = 10
47 | Public Const BrightCyan As Byte = 11
48 | Public Const BrightRed As Byte = 12
49 | Public Const Pink As Byte = 13
50 | Public Const Yellow As Byte = 14
51 | Public Const White As Byte = 15
52 | Public Const SayColor As Byte = White
53 | Public Const GlobalColor As Byte = BrightBlue
54 | Public Const BroadcastColor As Byte = White
55 | Public Const TellColor As Byte = BrightGreen
56 | Public Const EmoteColor As Byte = BrightCyan
57 | Public Const AdminColor As Byte = BrightCyan
58 | Public Const HelpColor As Byte = BrightBlue
59 | Public Const WhoColor As Byte = BrightBlue
60 | Public Const JoinLeftColor As Byte = DarkGrey
61 | Public Const NpcColor As Byte = Brown
62 | Public Const AlertColor As Byte = Red
63 | Public Const NewMapColor As Byte = BrightBlue
64 |
65 | ' Boolean constants
66 | Public Const NO As Byte = 0
67 | Public Const YES As Byte = 1
68 |
69 | ' Account constants
70 | Public Const NAME_LENGTH As Byte = 20
71 |
72 | ' Sex constants
73 | Public Const SEX_MALE As Byte = 0
74 | Public Const SEX_FEMALE As Byte = 1
75 |
76 | ' Map constants
77 | Public Const MAX_MAPS As Long = 100
78 | Public Const MAX_MAPX As Byte = 30
79 | Public Const MAX_MAPY As Byte = 30
80 | Public Const MAP_MORAL_NONE As Byte = 0
81 | Public Const MAP_MORAL_SAFE As Byte = 1
82 |
83 | ' Tile consants
84 | Public Const TILE_TYPE_WALKABLE As Byte = 0
85 | Public Const TILE_TYPE_BLOCKED As Byte = 1
86 | Public Const TILE_TYPE_WARP As Byte = 2
87 | Public Const TILE_TYPE_ITEM As Byte = 3
88 | Public Const TILE_TYPE_NPCAVOID As Byte = 4
89 | Public Const TILE_TYPE_KEY As Byte = 5
90 | Public Const TILE_TYPE_KEYOPEN As Byte = 6
91 | Public Const TILE_TYPE_RESOURCE As Byte = 7
92 | Public Const TILE_TYPE_DOOR As Byte = 8
93 | Public Const TILE_TYPE_NPCSPAWN As Byte = 9
94 | Public Const TILE_TYPE_SHOP As Byte = 10
95 | Public Const TILE_TYPE_BANK As Byte = 11
96 | Public Const TILE_TYPE_HEAL As Byte = 12
97 | Public Const TILE_TYPE_TRAP As Byte = 13
98 |
99 | ' Item constants
100 | Public Const ITEM_TYPE_NONE As Byte = 0
101 | Public Const ITEM_TYPE_WEAPON As Byte = 1
102 | Public Const ITEM_TYPE_ARMOR As Byte = 2
103 | Public Const ITEM_TYPE_HELMET As Byte = 3
104 | Public Const ITEM_TYPE_SHIELD As Byte = 4
105 | Public Const ITEM_TYPE_POTIONADDHP As Byte = 5
106 | Public Const ITEM_TYPE_POTIONADDMP As Byte = 6
107 | Public Const ITEM_TYPE_POTIONADDSP As Byte = 7
108 | Public Const ITEM_TYPE_POTIONSUBHP As Byte = 8
109 | Public Const ITEM_TYPE_POTIONSUBMP As Byte = 9
110 | Public Const ITEM_TYPE_POTIONSUBSP As Byte = 10
111 | Public Const ITEM_TYPE_KEY As Byte = 11
112 | Public Const ITEM_TYPE_CURRENCY As Byte = 12
113 | Public Const ITEM_TYPE_SPELL As Byte = 13
114 |
115 | ' Direction constants
116 | Public Const DIR_UP As Byte = 0
117 | Public Const DIR_DOWN As Byte = 1
118 | Public Const DIR_LEFT As Byte = 2
119 | Public Const DIR_RIGHT As Byte = 3
120 |
121 | ' Constants for player movement
122 | Public Const MOVING_WALKING As Byte = 1
123 | Public Const MOVING_RUNNING As Byte = 2
124 |
125 | ' Admin constants
126 | Public Const ADMIN_MONITOR As Byte = 1
127 | Public Const ADMIN_MAPPER As Byte = 2
128 | Public Const ADMIN_DEVELOPER As Byte = 3
129 | Public Const ADMIN_CREATOR As Byte = 4
130 |
131 | ' NPC constants
132 | Public Const NPC_BEHAVIOUR_ATTACKONSIGHT As Byte = 0
133 | Public Const NPC_BEHAVIOUR_ATTACKWHENATTACKED As Byte = 1
134 | Public Const NPC_BEHAVIOUR_FRIENDLY As Byte = 2
135 | Public Const NPC_BEHAVIOUR_SHOPKEEPER As Byte = 3
136 | Public Const NPC_BEHAVIOUR_GUARD As Byte = 4
137 |
138 | ' Spell constants
139 | Public Const SPELL_TYPE_DAMAGEHP As Byte = 0
140 | Public Const SPELL_TYPE_DAMAGEMP As Byte = 1
141 | Public Const SPELL_TYPE_HEALHP As Byte = 2
142 | Public Const SPELL_TYPE_HEALMP As Byte = 3
143 | Public Const SPELL_TYPE_WARP As Byte = 4
144 |
145 | ' Game editor constants
146 | Public Const EDITOR_ITEM As Byte = 1
147 | Public Const EDITOR_NPC As Byte = 2
148 | Public Const EDITOR_SPELL As Byte = 3
149 | Public Const EDITOR_SHOP As Byte = 4
150 |
151 | ' Target type constants
152 | Public Const TARGET_TYPE_NONE As Byte = 0
153 | Public Const TARGET_TYPE_PLAYER As Byte = 1
154 | Public Const TARGET_TYPE_NPC As Byte = 2
155 |
156 | ' ********************************************
157 | ' Default starting location [Server Only]
158 | Public Const START_MAP As Integer = 1
159 | Public Const START_X As Integer = 5
160 | Public Const START_Y As Integer = 5
161 |
162 | ' Scrolling action message constants
163 | Public Const ACTIONMSG_STATIC As Long = 0
164 | Public Const ACTIONMSG_SCROLL As Long = 1
165 | Public Const ACTIONMSG_SCREEN As Long = 2
166 |
167 | ' Do Events
168 | Public Const nLng As Long = (&H80 Or &H1 Or &H4 Or &H20) + (&H8 Or &H40)
169 |
170 | End Module
171 |
--------------------------------------------------------------------------------
/Orion Server/Modules/modEnumerations.vb:
--------------------------------------------------------------------------------
1 | Module modEnumerations
2 |
3 | ' The order of the packets must match with the client's packet enumeration
4 |
5 | ' Packets sent by server to client
6 | Public Enum ServerPackets
7 | SAlertMsg = 1
8 | SLoginOk
9 | SNewCharClasses
10 | SClassesData
11 | SInGame
12 | SPlayerInv
13 | SPlayerInvUpdate
14 | SPlayerWornEq
15 | SPlayerHp
16 | SPlayerMp
17 | SPlayerSp
18 | SPlayerStats
19 | SPlayerData
20 | SPlayerMove
21 | SNpcMove
22 | SPlayerDir
23 | SNpcDir
24 | SPlayerXY
25 | SAttack
26 | SNpcAttack
27 | SCheckForMap
28 | SMapData
29 | SMapItemData
30 | SMapNpcData
31 | SMapDone
32 | SGlobalMsg
33 | SAdminMsg
34 | SPlayerMsg
35 | SMapMsg
36 | SSpawnItem
37 | SItemEditor
38 | SUpdateItem
39 | SREditor
40 | SSpawnNpc
41 | SNpcDead
42 | SNpcEditor
43 | SUpdateNpc
44 | SMapKey
45 | SEditMap
46 | SShopEditor
47 | SUpdateShop
48 | SSpellEditor
49 | SUpdateSpell
50 | SSpells
51 | SLeftMap
52 | SResourceCache
53 | SResourceEditor
54 | SUpdateResource
55 | SSendPing
56 | SDoorAnimation
57 | SActionMsg
58 | SPlayerEXP
59 | SBlood
60 | SAnimationEditor
61 | SUpdateAnimation
62 | SAnimation
63 | SMapNpcVitals
64 | SCooldown
65 | SClearSpellBuffer
66 | SSayMsg
67 | SOpenShop
68 | SResetShopAction
69 | SStunned
70 | SMapWornEq
71 | SBank
72 | SClearTradeTimer
73 | STrade
74 | SCloseTrade
75 | STradeUpdate
76 | STradeStatus
77 | SGameData
78 | ' Make sure SMSG_COUNT is below everything else
79 | SMSG_COUNT
80 | End Enum
81 |
82 | ' Packets sent by client to server
83 | Public Enum ClientPackets
84 | CNewAccount = 1
85 | CDelAccount
86 | CLogin
87 | CAddChar
88 | CUseChar
89 | CSayMsg
90 | CEmoteMsg
91 | CBroadcastMsg
92 | CPlayerMsg
93 | CPlayerMove
94 | CPlayerDir
95 | CUseItem
96 | CAttack
97 | CUseStatPoint
98 | CPlayerInfoRequest
99 | CWarpMeTo
100 | CWarpToMe
101 | CWarpTo
102 | CSetSprite
103 | CGetStats
104 | CRequestNewMap
105 | CMapData
106 | CNeedMap
107 | CMapGetItem
108 | CMapDropItem
109 | CMapRespawn
110 | CMapReport
111 | CKickPlayer
112 | CBanList
113 | CBanDestroy
114 | CBanPlayer
115 | CRequestEditMap
116 | CRequestEditItem
117 | CSaveItem
118 | CRequestEditNpc
119 | CSaveNpc
120 | CRequestEditShop
121 | CSaveShop
122 | CRequestEditSpell
123 | CSaveSpell
124 | CSetAccess
125 | CWhosOnline
126 | CSetMotd
127 | CSearch
128 | CParty
129 | CJoinParty
130 | CLeaveParty
131 | CSpells
132 | CCast
133 | CQuit
134 | CSwapInvSlots
135 | CRequestEditResource
136 | CSaveResource
137 | CCheckPing
138 | CUnequip
139 | CRequestPlayerData
140 | CRequestItems
141 | CRequestNPCS
142 | CRequestResources
143 | CSpawnItem
144 | CTrainStat
145 | CRequestEditAnimation
146 | CSaveAnimation
147 | CRequestAnimations
148 | CRequestSpells
149 | CRequestShops
150 | CRequestLevelUp
151 | CForgetSpell
152 | CCloseShop
153 | CBuyItem
154 | CSellItem
155 | CChangeBankSlots
156 | CDepositItem
157 | CWithdrawItem
158 | CCloseBank
159 | CAdminWarp
160 | CTradeRequest
161 | CAcceptTrade
162 | CDeclineTrade
163 | CTradeItem
164 | CUntradeItem
165 | ' Make sure CMSG_COUNT is below everything else
166 | CMSG_COUNT
167 | End Enum
168 |
169 |
170 | ' Stats used by Players, Npcs and Classes
171 | Public Enum Stats
172 | strength = 1
173 | endurance
174 | vitality
175 | willpower
176 | intelligence
177 | spirit
178 | ' Make sure Stat_Count is below everything else
179 | Stat_Count
180 | End Enum
181 |
182 | ' Vitals used by Players, Npcs and Classes
183 | Public Enum Vitals
184 | HP = 1
185 | MP
186 | SP
187 | ' Make sure Vital_Count is below everything else
188 | Vital_Count
189 | End Enum
190 |
191 | ' Equipment used by Players
192 | Public Enum Equipment
193 | Weapon = 1
194 | Armor
195 | Helmet
196 | Shield
197 | ' Make sure Equipment_Count is below everything else
198 | Equipment_Count
199 | End Enum
200 |
201 | ' Layers in a map
202 | Public Enum MapLayer
203 | Ground = 1
204 | Mask
205 | Mask2
206 | Fringe
207 | Fringe2
208 | ' Make sure Layer_Count is below everything else
209 | Layer_Count
210 | End Enum
211 |
212 | End Module
213 |
--------------------------------------------------------------------------------
/Orion Server/Modules/modGlobals.vb:
--------------------------------------------------------------------------------
1 | Imports System.Net.Sockets
2 |
3 | Module modGlobals
4 |
5 | Public ConsoleText As String
6 |
7 | ' Used for closing key doors again
8 | Public KeyTimer As Long
9 | ' Used for gradually giving back npcs hp
10 | Public GiveNPCHPTimer As Long
11 | ' Used for logging
12 | Public ServerLog As Boolean
13 | ' Text vars
14 | Public vbQuote As String
15 | ' Maximum classes
16 | Public Max_Classes As Byte
17 | ' Used for server loop
18 | Public ServerOnline As Boolean
19 | ' Used for outputting text
20 | Public NumLines As Long
21 | ' Used to handle shutting down server with countdown.
22 | Public isShuttingDown As Boolean
23 | Public Secs As Long
24 | Public TotalPlayersOnline As Long
25 |
26 | Public Game_Port As Long
27 |
28 | Public TempMapData As Byte
29 |
30 | End Module
31 |
--------------------------------------------------------------------------------
/Orion Server/Modules/modINIAccess.vb:
--------------------------------------------------------------------------------
1 | Option Strict On
2 | Module modINIAccess
3 |
4 | #Region "API Calls"
5 | ' standard API declarations for INI access
6 | ' changing only "As Long" to "As Int32" (As Integer would work also)
7 | Private Declare Unicode Function WritePrivateProfileString Lib "kernel32" _
8 | Alias "WritePrivateProfileStringW" (ByVal lpApplicationName As String, _
9 | ByVal lpKeyName As String, ByVal lpString As String, _
10 | ByVal lpFileName As String) As Int32
11 |
12 | Private Declare Unicode Function GetPrivateProfileString Lib "kernel32" _
13 | Alias "GetPrivateProfileStringW" (ByVal lpApplicationName As String, _
14 | ByVal lpKeyName As String, ByVal lpDefault As String, _
15 | ByVal lpReturnedString As String, ByVal nSize As Int32, _
16 | ByVal lpFileName As String) As Int32
17 | #End Region
18 |
19 | Public Function INIRead(ByVal INIPath As String, _
20 | ByVal SectionName As String, ByVal KeyName As String, _
21 | ByVal DefaultValue As String) As String
22 | ' primary version of call gets single value given all parameters
23 | Dim n As Int32
24 | Dim sData As String
25 | sData = Space$(1024) ' allocate some room
26 | n = GetPrivateProfileString(SectionName, KeyName, DefaultValue, _
27 | sData, sData.Length, INIPath)
28 | If n > 0 Then ' return whatever it gave us
29 | INIRead = sData.Substring(0, n)
30 | Else
31 | INIRead = ""
32 | End If
33 | End Function
34 |
35 | #Region "INIRead Overloads"
36 | Public Function Getvar(ByVal INIPath As String, _
37 | ByVal SectionName As String, ByVal KeyName As String) As String
38 | ' overload 1 assumes zero-length default
39 | Return INIRead(INIPath, SectionName, KeyName, "")
40 | End Function
41 | #End Region
42 |
43 | Public Sub PutVar(ByVal INIPath As String, ByVal SectionName As String, ByVal KeyName As String, ByVal TheValue As String)
44 | Call WritePrivateProfileString(SectionName, KeyName, TheValue, INIPath)
45 | End Sub
46 |
47 | Public Sub INIDelete(ByVal INIPath As String, ByVal SectionName As String, _
48 | ByVal KeyName As String) ' delete single line from section
49 | Call WritePrivateProfileString(SectionName, KeyName, Nothing, INIPath)
50 | End Sub
51 |
52 | Public Sub INIDelete(ByVal INIPath As String, ByVal SectionName As String)
53 | ' delete section from INI file
54 | Call WritePrivateProfileString(SectionName, Nothing, Nothing, INIPath)
55 | End Sub
56 | End Module
57 |
--------------------------------------------------------------------------------
/Orion Server/Modules/modTemps.vb:
--------------------------------------------------------------------------------
1 | Module modTemps
2 | Public NeedToUpDatePlayerList As Boolean
3 | End Module
4 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Application.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | 'NOTE: This file is auto-generated; do not modify it directly. To make changes,
18 | ' or if you encounter build errors in this file, go to the Project Designer
19 | ' (go to Project Properties or double-click the My Project node in
20 | ' Solution Explorer), and make changes on the Application tab.
21 | '
22 | Partial Friend Class MyApplication
23 |
24 | _
25 | Public Sub New()
26 | MyBase.New(Global.Microsoft.VisualBasic.ApplicationServices.AuthenticationMode.Windows)
27 | Me.IsSingleInstance = false
28 | Me.EnableVisualStyles = true
29 | Me.SaveMySettingsOnExit = true
30 | Me.ShutDownStyle = Global.Microsoft.VisualBasic.ApplicationServices.ShutdownMode.AfterMainFormCloses
31 | End Sub
32 |
33 | _
34 | Protected Overrides Sub OnCreateMainForm()
35 | Me.MainForm = Global.OrionServer.frmServer
36 | End Sub
37 | End Class
38 | End Namespace
39 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Application.myapp:
--------------------------------------------------------------------------------
1 |
2 |
3 | true
4 | frmServer
5 | false
6 | 0
7 | true
8 | 0
9 | true
10 |
--------------------------------------------------------------------------------
/Orion Server/My Project/AssemblyInfo.vb:
--------------------------------------------------------------------------------
1 | Imports System
2 | Imports System.Reflection
3 | Imports System.Runtime.InteropServices
4 |
5 | ' General Information about an assembly is controlled through the following
6 | ' set of attributes. Change these attribute values to modify the information
7 | ' associated with an assembly.
8 |
9 | ' Review the values of the assembly attributes
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 | 'The following GUID is for the ID of the typelib if this project is exposed to COM
21 |
22 |
23 | ' Version information for an assembly consists of the following four values:
24 | '
25 | ' Major Version
26 | ' Minor Version
27 | ' Build Number
28 | ' Revision
29 | '
30 | ' You can specify all the values or you can default the Build and Revision Numbers
31 | ' by using the '*' as shown below:
32 | '
33 |
34 |
35 |
36 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Resources.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 | Imports System
15 |
16 | Namespace My.Resources
17 |
18 | 'This class was auto-generated by the StronglyTypedResourceBuilder
19 | 'class via a tool like ResGen or Visual Studio.
20 | 'To add or remove a member, edit your .ResX file then rerun ResGen
21 | 'with the /str option, or rebuild your VS project.
22 | '''
23 | ''' A strongly-typed resource class, for looking up localized strings, etc.
24 | '''
25 | _
29 | Friend Module Resources
30 |
31 | Private resourceMan As Global.System.Resources.ResourceManager
32 |
33 | Private resourceCulture As Global.System.Globalization.CultureInfo
34 |
35 | '''
36 | ''' Returns the cached ResourceManager instance used by this class.
37 | '''
38 | _
39 | Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager
40 | Get
41 | If Object.ReferenceEquals(resourceMan, Nothing) Then
42 | Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("OrionServer.Resources", GetType(Resources).Assembly)
43 | resourceMan = temp
44 | End If
45 | Return resourceMan
46 | End Get
47 | End Property
48 |
49 | '''
50 | ''' Overrides the current thread's CurrentUICulture property for all
51 | ''' resource lookups using this strongly typed resource class.
52 | '''
53 | _
54 | Friend Property Culture() As Global.System.Globalization.CultureInfo
55 | Get
56 | Return resourceCulture
57 | End Get
58 | Set
59 | resourceCulture = value
60 | End Set
61 | End Property
62 | End Module
63 | End Namespace
64 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Resources.resx:
--------------------------------------------------------------------------------
1 |
2 |
3 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 | text/microsoft-resx
110 |
111 |
112 | 2.0
113 |
114 |
115 | System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
116 |
117 |
118 | System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
119 |
120 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Settings.Designer.vb:
--------------------------------------------------------------------------------
1 | '------------------------------------------------------------------------------
2 | '
3 | ' This code was generated by a tool.
4 | ' Runtime Version:4.0.30319.18444
5 | '
6 | ' Changes to this file may cause incorrect behavior and will be lost if
7 | ' the code is regenerated.
8 | '
9 | '------------------------------------------------------------------------------
10 |
11 | Option Strict On
12 | Option Explicit On
13 |
14 |
15 | Namespace My
16 |
17 | _
20 | Partial Friend NotInheritable Class MySettings
21 | Inherits Global.System.Configuration.ApplicationSettingsBase
22 |
23 | Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings()),MySettings)
24 |
25 | #Region "My.Settings Auto-Save Functionality"
26 | #If _MyType = "WindowsForms" Then
27 | Private Shared addedHandler As Boolean
28 |
29 | Private Shared addedHandlerLockObject As New Object
30 |
31 | _
32 | Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs)
33 | If My.Application.SaveMySettingsOnExit Then
34 | My.Settings.Save()
35 | End If
36 | End Sub
37 | #End If
38 | #End Region
39 |
40 | Public Shared ReadOnly Property [Default]() As MySettings
41 | Get
42 |
43 | #If _MyType = "WindowsForms" Then
44 | If Not addedHandler Then
45 | SyncLock addedHandlerLockObject
46 | If Not addedHandler Then
47 | AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings
48 | addedHandler = True
49 | End If
50 | End SyncLock
51 | End If
52 | #End If
53 | Return defaultInstance
54 | End Get
55 | End Property
56 | End Class
57 | End Namespace
58 |
59 | Namespace My
60 |
61 | _
64 | Friend Module MySettingsProperty
65 |
66 | _
67 | Friend ReadOnly Property Settings() As Global.OrionServer.My.MySettings
68 | Get
69 | Return Global.OrionServer.My.MySettings.Default
70 | End Get
71 | End Property
72 | End Module
73 | End Namespace
74 |
--------------------------------------------------------------------------------
/Orion Server/My Project/Settings.settings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Orion Server/app.config:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | Orion Game Engine
2 | =================
3 |
4 | Simple 2D ORPG Game Engine written in VB.Net
5 |
6 | Home: http://www.ascensionforums.com
7 |
8 | What is it?
9 | ===========
10 | This is a simple, tilebased 2D ORPG game engine. It features a client and server application setup with a basic GUI on both ends.
11 |
12 | Game Features:
13 | ==============
14 | Basic Character Creation/Class Selection
15 | Movement/Attacking
16 | NPC/Computer Characters for attacking
17 | Items & Spells
18 |
19 | Creation Features:
20 | ==================
21 | The client has editors for the world (maps), items, spells, animations, npcs, and more from the in game admin panel.
22 |
23 | How do I use this software?
24 | ===========================
25 | If you are a programmer then you will probably prefer to compile the most recent version from source. Download the engine here, open up the solution in Visual Studio compile both projects and start the client and server application. They should connect automatically. IP and Port options are stored in the root/data (files)/config.ini files.
26 |
27 | How do I access the editors?
28 | ============================
29 | Log into the game with the client. On the server, open the player list, right click on your character and promote yourself to an admin. Go back to the client and tap F1 for each of the editor options.
30 |
31 | Support & Updates:
32 | ==================
33 | The home for this engine is http://ascensionforums.com if you need support or tips in game creation feel free to visit us. If you find any bugs feel free to report them with the issue tracker.
34 |
35 | We do have some updates planned for this engine. At this point in time my friend and colleague Joe (aka Kibbelz/Irokaiser) and I will be periodically releasing basic features and bug fixes for this engine.
36 |
37 | Right now Orion is lacking features but it is a great base for programmers to sculpt into their own vision, we want to keep it that way so I wouldn't expect a fully featured game creation kit to form from this anytime soon.
38 |
--------------------------------------------------------------------------------