diff options
| author | Wiimm <wiimm@wiimm.de> | 2022-05-13 19:22:13 +0200 |
|---|---|---|
| committer | Wiimm <wiimm@wiimm.de> | 2022-05-13 19:22:13 +0200 |
| commit | 568365f5bdd4dc71a156ca963d89ac002f405a34 (patch) | |
| tree | 730d0311536d8fd46a56b74e2c8cac028e778243 /project/src/lib-kcl.h | |
| parent | 9ae8841ec4720e74173e2f72fac33f0848bbf435 (diff) | |
SZS v2.27a
Diffstat (limited to '')
| -rw-r--r-- | project/src/lib-kcl.h | 23 |
1 files changed, 18 insertions, 5 deletions
diff --git a/project/src/lib-kcl.h b/project/src/lib-kcl.h index 6deb16a..19444f2 100644 --- a/project/src/lib-kcl.h +++ b/project/src/lib-kcl.h @@ -17,7 +17,7 @@ * This file is part of the SZS project. * * Visit https://szs.wiimm.de/ for project details and sources. * * * - * Copyright (c) 2011-2021 by Dirk Clemens <wiimm@wiimm.de> * + * Copyright (c) 2011-2022 by Dirk Clemens <wiimm@wiimm.de> * * * *************************************************************************** * * @@ -116,6 +116,7 @@ __attribute__ ((packed)) kcl_head_t; /////////////////////////////////////////////////////////////////////////////// /////////////// kcl_triangle_t /////////////// /////////////////////////////////////////////////////////////////////////////// +// [[kcl_triangle_t]] typedef struct kcl_triangle_t { @@ -319,12 +320,14 @@ typedef enum kcl_mode_t KCLMD_CONV_FACEUP = 1ull<<34, // convert face up walls to road KCLMD_WEAK_WALLS = 1ull<<35, // OR 0x8000 to KCL flags of walls - KCLMD_NEW = 1ull<<36, // create a new KCL file even if nothing changed - KCLMD_SORT = 1ull<<37, // sort triangles + KCLMD_CLR_VISUAL = 1ull<<36, // clear effect bits + KCLMD_NEW = 1ull<<37, // create a new KCL file even if nothing changed + KCLMD_SORT = 1ull<<38, // sort triangles KCLMD_M_PATCH = KCLMD_M_DROP | KCLMD_M_RM | KCLMD_CONV_FACEUP | KCLMD_WEAK_WALLS + | KCLMD_CLR_VISUAL | KCLMD_NEW | KCLMD_SORT, @@ -380,7 +383,7 @@ typedef enum kcl_mode_t | KCLMD_TEST, KCLMD_M_PRINT = KCLMD_M_ALL // all relevant bits for obj output - % ~KCLMD_ADD_ROAD + & ~KCLMD_ADD_ROAD & ~KCLMD_IN_SWAP & ~KCLMD_AUTO & ~KCLMD_M_HEX @@ -615,6 +618,16 @@ bool DropSortHelper bool sort // true: sort triangles ); +typedef u16 kcl_flag_t; +kcl_flag_t * CreatePatchFlagKCL +( + // returns NULL or N_KCL_FLAG elements + + kcl_mode_t kcl_mode, // relevant: KCLMD_CLR_VISUAL | KCLMD_WEAK_WALLS + SlotMode_t slot_mode, // relevant: SLOTMD_ICE_TO_WATER | SLOTMD_WATER_TO_ICE + bool null_on_orig // TRUE: return NULL on no flag modifications +); + bool KCL_ACTION_LOG ( const char * format, ... ) __attribute__ ((__format__(__printf__,1,2))); @@ -1096,7 +1109,7 @@ uint GetExportFlagKCL ( uint kcl_flag ); extern int have_kcl_patch_count; extern StringField_t kcl_script_list; -extern u16 *patch_kcl_flag; // NULL or 'N_KCL_FLAG' elements +extern kcl_flag_t *patch_kcl_flag; // NULL or 'N_KCL_FLAG' elements //----------------------------------------------------------------------------- |
