Jump to content

danuts

Membru
  • Posts

    122
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by danuts

  1. Te folosești de callback-ul „OnDialogResponse”.

    Exemplu de cod:

    public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) {
    	if(dialogid == DIALOG_GETVEH) {// sau 1, cum ai tu definit ID-ul dialog-ului.
    		if(response) {
    				new Float:pPos[4];
    				GetPlayerPos(playerid, pPos[0], pPos[1], pPos[2]);
    				GetPlayerFacingAngle(playerid, pPos[3]);
    			switch(listitem) {				
    				case 0: CreateVehicle(411, pPos[0], pPos[1], pPos[2] + 5.0, pPos[3], 1, 1, 0, 0);
    				case 1: CreateVehicle(560, pPos[0], pPos[1], pPos[2] + 5.0, pPos[3], 1, 1, 0, 0);
    			}
    		}
    		return 1;
    	}
    	return 0;
    }

    Cam așa trebuie să arate codul tău.

  2. Pentru a crea comenzile dorite, te folosești de callback-ul `TogglePlayerControllable(playerid, toggle)`.

    Parametri:

    - playerid (ID-ul jucătorului căruia îi setezi controlabilitatea).

    - toggle (0 - pentru a-i face incontrolabili / 1 - pentru a-i face controlabili).

     

    YCMD:freeze(playerid, params[], help) 
    {
        new ID;
        if(sscanf(params, "ui", ID))
    	return SendClientMessage(playerid, -1, "Syntax: /freeze <playerid / part of name>");
        TogglePlayerControllable(ID, 0);
        return 1;
    }
              
    YCMD:unfreeze(playerid, params[], help) 
    {
        new ID;
        if(sscanf(params, "ui", ID))
        	return SendClientMessage(playerid, -1, "Syntax: /unfreeze <playerid / part of name>");
        TogglePlayerControllable(ID, 1);
        return 1;
    }

    Eu ți-am făcut doar bazele comenzilor, în rest adaugi tu (verificări, restricții etc).

  3. YCMD:fakeban(playerid, params[], help) {
        if(PlayerInfo[playerid][pFondator] < 1)
            return SCM(playerid, COLOR_WHITE, AdminOnly);
        
        new ID, banReason[128], banString[300];
        if(DeelayCommand[playerid][0] != 0)
            return DeelayTime(playerid, 0);
        if(sscanf(params, "us[128]", ID, banReason))
            return SCM(playerid, COLOR_GREY, "Syntax: {FFFFFF}/fakeban <playerid> <reason>");
        if(!IsPlayerConnected(ID) || ID == INVALID_PLAYER_ID)
            return SCM(playerid, COLOR_GREY, "Acel jucator nu este conectat.");
        if(ID == playerid)
            return SCM(playerid, COLOR_GREY, "Nu te poti bana singur.");
        if(PlayerInfo[ID][pScripter] > 0)
            return SCM(playerid, COLOR_YELLOW, "Nu poti da ban la un scripter / fondator.");
    
        format(banString, sizeof(banString), "Ai fost banat permanent de catre %s, motiv: %s.", GetName(playerid), banReason);
        SendClientMessage(playerid, COLOR_LIGHTRED, banString);
        return 1;
    }

    Sper că asta e ceea ce îți dorești tu. Cel pe care vei folosi comanda doar va primi mesaj că a fost banat permanent.

  4. Încearcă să modifici linia 48 din:

    <?php if (Config::getmyLevel() < $factions->MinLevel) echo 'Nu ai level-ul necesar.'; else { ?>

    în

    <?php if(Config::getMyLevel() < isset($factions -> MinLevel)) echo 'Nu ai level-ul necesar.'; else { ?>

     

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.