port: CPythonSkill + skill module + EterBase/Poly (1:1 40250)

Copy PythonSkill.cpp and the EterBase/Poly formula parser verbatim, drop the
pending stand-in and the skill module stub, register initskill() after
initfly() and build CPythonSkill in m_pySkill's place. LoadLocaleData now
loads skilldesc/skilltable. Skill and item icon handles go through
Py_BuildPointer/PyTuple_GetPointer (ILP32 ints truncate 64-bit pointers).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
shenlei
2026-09-24 03:07:15 +09:00
co-authored by Claude Opus 5.5
parent 7358bf444a
commit 03de3f314a
25 changed files with 3944 additions and 328 deletions
+25
View File
@@ -0,0 +1,25 @@
#ifndef __POLY_BASE_H__
#define __POLY_BASE_H__
#define MID_UNKNOWN 0
#define MID_NUMBER 256
#define MID_VARIABLE 512
#define MID_SYMBOL 1024
#define MID_LONG MID_NUMBER + 1
#define MID_SQRT MID_NUMBER + 2
#define MID_FRACTION MID_NUMBER + 3
class CBase
{
public:
bool isSymbol();
bool isVar();
bool isNumber();
int id;
CBase();
virtual ~CBase();
};
#endif