static dboolean IsSameAction(char *cmd, alist_t *al)
{
    if(!al)
        return false;
    
    if(!dstrcmp(al->cmd, "weapon"))
    {
        {
            char buff[256];
            sprintf(buff, "%s %s", al->cmd, al->param[0]);
            if(!dstrcmp(cmd, buff))
                return true;
            else
                return false;
        }
    }
    else
    {
        if(dstricmp(cmd, al->cmd)!=0)
            return false;
    }
    return true;
}
Exemple #2
0
static CMD(Cheat) {
    player_t *player;

    if(gamestate != GS_LEVEL) {
        return;
    }

    player = &players[consoleplayer];
    switch(data) {
    case 0:
        M_CheatGod(player, NULL);
        break;
    case 1:
        M_CheatClip(player, NULL);
        break;
    case 2:
        if(param[0] == NULL) {
            CON_Printf(GREEN, "Available give cheats:\n");
            CON_Printf(GREEN, "-------------------------\n");
            CON_Printf(AQUA, "all\n");
            CON_Printf(AQUA, "weapon\n");
            CON_Printf(AQUA, "artifact\n");
            CON_Printf(AQUA, "key\n");
            return;
        }

        if(!dstricmp(param[0], "all")) {
            M_CheatKfa(player, NULL);
        }
        else if(!dstricmp(param[0], "weapon")) {
            if(param[1] == NULL) {
                CON_Printf(GREEN, "Weapons:\n");
                CON_Printf(GREEN, "-------------------------\n");
                CON_Printf(AQUA, "1: Chainsaw\n");
                CON_Printf(AQUA, "2: Shotgun\n");
                CON_Printf(AQUA, "3: Super Shotgun\n");
                CON_Printf(AQUA, "4: Chaingun\n");
                CON_Printf(AQUA, "5: Rocket Launcher\n");
                CON_Printf(AQUA, "6: Plasma Rifle\n");
                CON_Printf(AQUA, "7: BFG 9000\n");
                CON_Printf(AQUA, "8: Demon Artifact\n");
                return;
            }

            if(dstrlen(param[1]) == 1) {
                M_CheatGiveWeapon(player, param[1]);
            }
        }
        else if(!dstricmp(param[0], "artifact")) {
            if(param[1] == NULL) {
                CON_Printf(GREEN, "Artifacts:\n");
                CON_Printf(GREEN, "-------------------------\n");
                CON_Printf(AQUA, "1: Red\n");
                CON_Printf(AQUA, "2: Aqua\n");
                CON_Printf(AQUA, "3: Violet\n");
                return;
            }

            if(dstrlen(param[1]) == 1) {
                M_CheatArtifacts(player, param[1]);
            }
        }
        else if(!dstricmp(param[0], "key")) {
            if(param[1] == NULL) {
                CON_Printf(GREEN, "Keys:\n");
                CON_Printf(GREEN, "-------------------------\n");
                CON_Printf(AQUA, "1: Blue Card\n");
                CON_Printf(AQUA, "2: Yellow Card\n");
                CON_Printf(AQUA, "3: Red Card\n");
                CON_Printf(AQUA, "4: Blue Skull\n");
                CON_Printf(AQUA, "5: Yellow Skull\n");
                CON_Printf(AQUA, "6: Red Skull\n");
                return;
            }

            if(dstrlen(param[1]) == 1) {
                M_CheatGiveKey(player, param[1]);
            }
        }
        break;
    case 3:
        M_CheatBoyISuck(player, NULL);
        break;
    case 4:
        if(amCheating) {
            amCheating = 0;
        }
        else if(!amCheating) {
            amCheating = 2;
        }
        break;
    }
}