示例#1
0
BOOL AddMQ2KeyBind(PCHAR name, fMQExecuteCmd Function)
{
    DebugSpew("AddMQ2KeyBind(%s)",name);
    if (KeyBindByName(name))
    {
        DebugSpew("AddMQ2KeyBind(%s) - Name already in use",name);
        return false;
    }

    MQ2KeyBind* pBind = new MQ2KeyBind;
    pBind->State=false;
    strncpy_s(pBind->Name,name,32);
    pBind->Name[31]=0;
    CHAR szBuffer[MAX_STRING]={0};
    CHAR szName[MAX_STRING]={0};

    sprintf_s(szName,"%s_%s",pBind->Name,"Nrm");
    GetPrivateProfileString("Key Binds",szName,"clear",szBuffer,MAX_STRING,gszINIFilename);    
    ParseKeyCombo(szBuffer,pBind->Normal);
    sprintf_s(szName,"%s_%s",pBind->Name,"Alt");
    GetPrivateProfileString("Key Binds",szName,"clear",szBuffer,MAX_STRING,gszINIFilename);    
    ParseKeyCombo(szBuffer,pBind->Alt);

    pBind->Function=Function;

    unsigned long N=BindList.GetUnused();
    BindList[N]=pBind;
    SetKeyBindNameMap(name,N);

    return true;
}
示例#2
0
BOOL AddMQ2Data(PCHAR szName, fMQData Function)
{
	if (FindMQ2Data(szName))
		return false;
	unsigned long N = MQ2DataItems.GetUnused();
	PMQ2DATAITEM pNew = new MQ2DATAITEM;
	strcpy(pNew->Name, szName);
	pNew->Function = Function;
	MQ2DataItems[N] = pNew;
	MQ2DataMap[szName] = N + 1;
	return true;
}