Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2018-03-17 16:58:30 +02:00
include_directories ( ${ Boost_INCLUDE_DIRS } ${ LUA_INCLUDE_DIR } ${ CMAKE_HOME_DIRECTORY } ${ CMAKE_HOME_DIRECTORY } /include ${ CMAKE_CURRENT_SOURCE_DIR } ${ CMAKE_HOME_DIRECTORY } /lib )
set ( lib_SRCS
S t d I n c . c p p
L u a R e f e r e n c e . c p p
L u a S c r i p t M o d u l e . c p p
L u a S c r i p t i n g C o n t e x t . c p p
L u a S p e l l E f f e c t . c p p
L u a S t a c k . c p p
a p i / b a t t l e / U n i t P r o x y . c p p
a p i / e v e n t s / B a t t l e E v e n t s . c p p
a p i / e v e n t s / E v e n t B u s P r o x y . c p p
a p i / e v e n t s / G e n e r i c E v e n t s . c p p
a p i / e v e n t s / S u b s c r i p t i o n R e g i s t r y P r o x y . c p p
a p i / n e t p a c k s / B a t t l e L o g M e s s a g e . c p p
a p i / n e t p a c k s / B a t t l e S t a c k M o v e d . c p p
a p i / n e t p a c k s / B a t t l e U n i t s C h a n g e d . c p p
a p i / n e t p a c k s / E n t i t i e s C h a n g e d . c p p
a p i / n e t p a c k s / I n f o W i n d o w . c p p
a p i / n e t p a c k s / S e t R e s o u r c e s . c p p
a p i / A r t i f a c t . c p p
a p i / B a t t l e C b . c p p
a p i / B o n u s S y s t e m . c p p
a p i / C r e a t u r e . c p p
a p i / F a c t i o n . c p p
a p i / G a m e C b . c p p
a p i / H e r o C l a s s . c p p
a p i / H e r o I n s t a n c e . c p p
a p i / H e r o T y p e . c p p
a p i / R e g i s t r y . c p p
a p i / S e r v e r C b . c p p
a p i / S e r v i c e s . c p p
a p i / S k i l l . c p p
a p i / S p e l l . c p p
a p i / S t a c k I n s t a n c e . c p p
)
2022-08-15 13:36:30 +02:00
set ( lib_HDRS
S t d I n c . h
L u a C a l l W r a p p e r . h
L u a F u n c t o r . h
L u a R e f e r e n c e . h
L u a S c r i p t M o d u l e . h
L u a S c r i p t i n g C o n t e x t . h
L u a S p e l l E f f e c t . h
L u a S t a c k . h
L u a W r a p p e r . h
a p i / b a t t l e / U n i t P r o x y . h
a p i / e v e n t s / B a t t l e E v e n t s . h
a p i / e v e n t s / E v e n t B u s P r o x y . h
a p i / e v e n t s / G e n e r i c E v e n t s . h
a p i / e v e n t s / S u b s c r i p t i o n R e g i s t r y P r o x y . h
a p i / n e t p a c k s / B a t t l e L o g M e s s a g e . h
a p i / n e t p a c k s / B a t t l e S t a c k M o v e d . h
a p i / n e t p a c k s / B a t t l e U n i t s C h a n g e d . h
a p i / n e t p a c k s / E n t i t i e s C h a n g e d . h
a p i / n e t p a c k s / I n f o W i n d o w . h
a p i / n e t p a c k s / P a c k F o r C l i e n t . h
a p i / n e t p a c k s / S e t R e s o u r c e s . h
a p i / A r t i f a c t . h
a p i / B a t t l e C b . h
a p i / B o n u s S y s t e m . h
a p i / C r e a t u r e . h
a p i / F a c t i o n . h
a p i / G a m e C b . h
a p i / H e r o C l a s s . h
a p i / H e r o I n s t a n c e . h
a p i / H e r o T y p e . h
a p i / R e g i s t r y . h
a p i / S e r v e r C b . h
a p i / S e r v i c e s . h
a p i / S k i l l . h
a p i / S p e l l . h
a p i / S t a c k I n s t a n c e . h
)
add_library ( vcmiLua SHARED ${ lib_SRCS } ${ lib_HDRS } )
2022-08-15 13:38:17 +02:00
target_link_libraries ( vcmiLua Boost::boost luajit::luajit ${ VCMI_LIB_TARGET } )
Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2018-03-17 16:58:30 +02:00
vcmi_set_output_dir ( vcmiLua "scripting" )
2022-06-16 22:02:36 +02:00
enable_pch ( vcmiLua )
Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2018-03-17 16:58:30 +02:00
2022-08-15 13:38:17 +02:00
if ( APPLE_IOS )
install ( TARGETS vcmiLua LIBRARY DESTINATION ${ SCRIPTING_LIB_DIR } )
else ( )
install ( TARGETS vcmiLua DESTINATION ${ SCRIPTING_LIB_DIR } )
endif ( )
Entities redesign and a few ERM features
* Made most Handlers derived from CHandlerBase and moved service API there.
* Declared existing Entity APIs.
* Added basic script context caching
* Started Lua script module
* Started Lua spell effect API
* Started script state persistence
* Started battle info callback binding
* CommitPackage removed
* Extracted spells::Caster to own header; Expanded Spell API.
* implemented !!MC:S, !!FU:E, !!FU:P, !!MA, !!VR:H, !!VR:C
* !!BU:C, !!BU:E, !!BU:G, !!BU:M implemented
* Allow use of "MC:S@varName@" to declare normal variable (technically v-variable with string key)
* Re-enabled VERM macros.
* !?GM0 added
* !?TM implemented
* Added !!MF:N
* Started !?OB, !!BM, !!HE, !!OW, !!UN
* Added basic support of w-variables
* Added support for ERM indirect variables
* Made !?FU regular trigger
* !!re (ERA loop receiver) implemented
* Fixed ERM receivers with zero args.
2018-03-17 16:58:30 +02:00
#manually copy lua dll from vcpkg folder to build directory on windows since vcpkg deps copy feature has flaws, using hardcoded paths based on vcmi windows deps package 1.1 from github
if ( MSVC )
if ( EXISTS ${ LUA_INCLUDE_DIR } /../../bin/lua51.dll )
file ( COPY ${ LUA_INCLUDE_DIR } /../../bin/lua51.dll DESTINATION ${ CMAKE_BINARY_DIR } /bin )
endif ( )
endif ( )