if(c->check("s")) {
_listnode <Player> * parse = PlayerList.head;
while(parse) {
if(0 == stricmp(parse->item->name, c->final)) {
sendPrivate(parse>item,"*spec");
sendPrivate(parse>item,"*spec");
}
parse = parse->next;
}
} parse->item->name and c->final are both char pointers, so you can't use an ==. If one was a string you could, or you could cast one to a string. If you change if (0 == stricmp(parse->item->name, c->final)) to if (cmpstart(parse->item->name, c->final)) it should just check the start of the name, so you can use !aa Deadly and it will match DeadlySoldier.