介绍
这是一个在store插件中常用的操作,获取玩家的credit,也就是说你输入!store之后打开菜单面板,进而看到你的credit信息的这个过程。
Store插件传送门:
数据库:
SELECT * FROM store_players WHERE `authid`=\"%s\"
//上面的%s,换成数据库中对应的authid就可以了
函数调用流程分析:
OnPluginStart()
-->OnClientPostAdminCheck(client) //这是一个系统的forward函数,由用户重写实现具体函数内容
---->Store_LoadClientInventory(client);
------>SQL_TQuery(g_hDatabase, SQLCallback_LoadClientInventory_Credits, m_szQuery, g_eClients[client].iUserId);
-------->SQL_FetchRow(hndl)
-------->g_eClients[client].iCredits = SQL_FetchInt(hndl, 3); //这里为什么是3,因为在这个table的字段中,credits位于第3个位置(从0开始)
此时,g_eClients[client].iCredits变量已经获取到了当前调用!store的用户的credit。之后的操作可以按照需求进行了。
参考: