bkadoum | Je mes un bout de code pour vous chauffer:
Code :
- void UpdateCharacter(Character *pCharacter)
- {
- int i;
- Str RequestString;
- RequestString = (Str)"SELECT * FROM CharCombat WHERE MinCS <= " + pCharacter->GetStat2(COMBAT_SPEED)->score + " AND MaxCS >= " + pCharacter->GetStat2(COMBAT_SPEED)->score;
- SQLExecDirect(DataBase.Gethstmt(0), (SQLCHAR *)RequestString.Get(), SQL_NTS);
- SQLFetch(DataBase.Gethstmt(0));
- SQLGetData(DataBase.Gethstmt(0), 4, SQL_C_SLONG, &pCharacter->GetCombat()->MaxDistance, 0, NULL);
- for (i = 0; i < TOTAL_COMBAT_PHASE; i++)
- SQLGetData(DataBase.Gethstmt(0), i + 5, SQL_C_SLONG, &pCharacter->GetCombat()->action[i], 0, NULL);
- SQLFreeStmt(DataBase.Gethstmt(0), NULL);
- }
|
Cette fonction met à jour des variables de mon objet Character depuis une base de donnée.
La variable qui est mise à zéro n'est pas traitée dans cette fonction et ne figure pas dans le code (c'est ça le plus bizarre) mais elle fait partie d'une structure membre de la classe Character. Apparament d'après mes tests, la variable se met à zéro au moment où j'appel SQLFetch.
|