1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-15 22:19:54 +00:00
Commit graph

306 commits

Author SHA1 Message Date
Koncord
56959ebfda Implement magic 2016-11-12 19:39:16 +08:00
David Cernat
729da2c0ba Improve logic and clarity of LocalPlayer's charGenThread()
Until now, the fact that charGenThread() returned false whenever the player had a menu open was preventing Main::UpdateWorld() from running at all with a menu open.

The result was that no player packets from LocalPlayer::Update() were being sent by a player in a menu.
2016-11-11 23:46:17 +02:00
Koncord
37e9cafbf7 Add new API function: SetConsoleAllow
example:
tes3mp.SetConsoleAllow(pid, 0) -- disallow console to the player

The console is allowed by default
2016-11-04 03:01:26 +08:00
David Cernat
107dacac6d Add OnPlayerChangeInventory server script callback 2016-11-03 16:39:31 +02:00
David Cernat
9c12aa2141 Fix formatting 2016-10-30 12:58:58 +02:00
David Cernat
d85a1ee1a9 Fix errors remaining from merge with tes3mp-packetexpansion 2016-10-23 18:32:03 +03:00
David Cernat
c639337842 Merge with tes3mp-packetexpansion by fixing conflicts
# Conflicts:
#	apps/openmw-mp/Networking.cpp
#	apps/openmw/mwmp/Networking.cpp
#	components/CMakeLists.txt
#	components/openmw-mp/NetworkMessages.hpp
#	components/openmw-mp/PacketsController.cpp
2016-10-23 17:57:38 +03:00
David Cernat
0a44bea91d Send cell coordinates in tes3mp using mData instead of mCellId.mIndex 2016-10-23 16:55:30 +03:00
Koncord
c27351c19e Implement inventory functions
AddItem, RemoveItem, GetItemName, GetItemCount, GetItemHealth, GetInventorySize SendInventory
Example:
```lua
tes3mp.AddItem(pid, "glass dagger", 1, 50)
tes3mp.AddItem(pid, "glass dagger", 1, -1)
tes3mp.SendInventory(pid)
tes3mp.RemoveItem(pid, "glass dagger", 1)
tes3mp.SendInventory(pid)
local invSize = tes3mp.GetInventorySize(pid) - 1
for i = 0, invSize do
    print(("%s %d %d"):format(tes3mp.GetItemName(pid, i), tes3mp.GetItemCount(pid, i), tes3mp.GetItemHealth(pid, i)))
end
```
2016-10-23 02:57:49 +08:00
David Cernat
f218613231 Rename client Networking's GetPacket method into GetPlayerPacket 2016-10-19 22:49:35 +03:00
David Cernat
e0361835b0 Allow script-induced setting of equipment 2016-09-30 12:36:20 +03:00
David Cernat
728a09e423 Reorder functions in LocalPlayer and make their names more consistent 2016-09-30 08:59:58 +03:00
David Cernat
6650b74498 Add handling of skill increases 2016-09-30 07:15:59 +03:00
David Cernat
f4621d8529 Use setLevelProgress when setting LocalPlayer's skills 2016-09-30 06:27:26 +03:00
David Cernat
a0e9a672a5 Split updateClassStats in 3 and add handling of level progress 2016-09-30 04:52:21 +03:00
David Cernat
2ab619b0e3 Constantly update skill progress from LocalPlayer 2016-09-30 03:43:49 +03:00
David Cernat
afbd3274cc Clean up handling of stat packets on client 2016-09-29 13:10:32 +03:00
David Cernat
bc0aa86bcf Make variable names more consistent and easier to understand 2016-09-29 12:05:44 +03:00
David Cernat
694ce537b6 Allow script-induced dynamic stat changes, part 2 2016-09-29 11:02:57 +03:00
David Cernat
18cd964d21 Allow script-induced dynamic stat changes 2016-09-29 10:19:39 +03:00
David Cernat
16216b30f7 Fix formatting 2016-09-28 14:27:35 +03:00
David Cernat
b6086ab015 Rename ID_GAME_DYNAMICSTATS_CURRENT into ID_GAME_DYNAMICSTATS 2016-09-28 14:13:24 +03:00
David Cernat
57f07813b0 Rename ID_GAME_UPDATE_POS into ID_GAME_POS 2016-09-28 11:45:14 +03:00
David Cernat
26487598a6 Rename ID_GAME_UPDATE_EQUIPED into ID_GAME_EQUIPMENT 2016-09-28 11:36:29 +03:00
David Cernat
ce4b326b02 Rename ID_GAME_UPDATE_BASESTATS into ID_GAME_DYNAMICSTATS_CURRENT 2016-09-28 07:50:16 +03:00
David Cernat
4d7130b12f Improve logic for script-induced cell changes 2016-09-27 11:28:44 +03:00
David Cernat
01af4f3bbc Update position before sending cell packet 2016-09-26 17:00:09 +03:00
David Cernat
1ee2458f6e Add packet for player levels, part 2 2016-09-26 13:19:01 +03:00
David Cernat
046a1ea899 Add packet for player levels 2016-09-25 14:28:25 +03:00
David Cernat
8abef0bebe Remove outdated ID_GAME_UPDATE_SKILLS packet 2016-09-02 07:36:39 +03:00
David Cernat
dafc6c0843 Save and load birthsigns 2016-09-02 06:57:13 +03:00
David Cernat
941d76fce0 Fix setting of default classes and initialize classes safely on server 2016-09-02 04:31:35 +03:00
Koncord
534ef527b9 Fix my stupid epic fail 2016-09-02 07:35:53 +08:00
David Cernat
a20e7890a2 Fix formatting 2016-08-30 10:52:30 +03:00
Koncord
11eae277a9 Characters Class API
Added some new functions
2016-08-30 11:18:19 +08:00
David Cernat
00e7810428 Add script functions for saving and loading non-custom player classes 2016-08-27 00:14:50 +03:00
David Cernat
5385563972 Let players inform others about Lua script-induced cell & pos changes 2016-08-24 02:53:39 +03:00
David Cernat
7b187d0295 Fix visual glitch when jumping without adjusting camera afterwards 2016-08-23 22:27:12 +03:00
David Cernat
03d6e0cb62 Send attributes and skills to server whenever they change 2016-08-23 02:24:10 +03:00
David Cernat
c4f49e05e3 Remove manual newlines for logger 2016-08-19 07:54:10 +03:00
Koncord
90215f4e7c Fix log messages for GCC compatibility 2016-08-19 09:37:24 +08:00
David Cernat
2337a0becb Add LOG_APPEND method for writing to log without timestamp and level 2016-08-18 23:17:46 +03:00
David Cernat
97f944dde7 Use logger for most console messages 2016-08-18 20:20:17 +03:00
David Cernat
e5cb58e7c4 Add debug info about ID_GAME_BASE_INFO packets 2016-08-17 21:18:04 +03:00
David Cernat
8eda381016 Make formatting consistent, part 2 2016-08-17 18:20:36 +03:00
David Cernat
1363c4c5b6 Make formatting consistent 2016-08-17 18:04:35 +03:00
David Cernat
8dd8e22a0b Replace tabs with spaces in LocalPlayer changes 2016-08-04 00:55:28 +03:00
David Cernat
3362902396 Update position after changing cell (for real) 2016-08-04 00:03:05 +03:00
David Cernat
b0bd10f219 Allow script-based teleportation from interior to exterior cell 0,0 2016-08-03 22:07:49 +03:00
Koncord
31e2ab54d6 Revert "Update position after changing cell"
This reverts commit 5e072b9d3c.
2016-07-30 04:57:43 +08:00
Koncord
5e072b9d3c Update position after changing cell 2016-07-30 04:12:47 +08:00
Koncord
7107136808 New API
SetExterior(pid, x, y)
GetExteriorX(pid)
GetExteriorY(pid)

also "SetCell" will now move to the named external cells (e.g. SetCell(pid, "Balmora"))
2016-07-30 01:33:28 +08:00
davidcernat
ab309180c2 Add useful debug info for cell changes 2016-07-21 23:07:37 +03:00
davidcernat
7bf08e5e5a Fix transition between exterior cells for non-local players
Make the local player send a packet whenever moving from one exterior cell to another, don't require objects to have RefNums to be moved correctly between exterior cells, and increase the packet priority for cell changes.
2016-07-17 22:03:20 +03:00
Koncord
6f07d590d4 Fix SetPos and SetAngle functions
Fix types for SetPos and SetAngle
2016-07-17 17:59:46 +08:00
Koncord
1b259e2d33 Syncing inventory, animations, position, 8 key attributes
Created Package system
2016-07-07 23:50:48 +08:00