Skocz do zawartości
Mejbi

[ROZWIĄZANY]System Prawka problem

Rekomendowane odpowiedzi

Witam. Mam problem gdy wpiszę /teoria to wyświetla się dialog. Są tam pytania ;D Jak kliknę anuluj to wywala z serwera i jezeli klikne Dalej to logowanie u mnie sie wyswietla Co zrobic? tu jest kod :D

#include <a_samp>
#include <dcmd>
#include <kolory>

//Pytania
#define Pytanie1 1
#define Pytanie2 2
//

public OnFilterScriptInit()
{
    CreatePickup(1239, 1, 1173.7061,1348.6873,10.9219, -1);
    CreatePickup(1239, 1, 1172.5206,1348.4794,10.9219, -1);
    
    Create3DTextLabel("{FF0000}[{FFFFFF}Teoria{FF0000}]\n{00FFFF}Wpisz /teoria", COLOR_ORANGE, 1173.7061,1348.6873,10.9219, 20, 0);
    Create3DTextLabel("{FF0000}[{FFFFFF}Teoria{FF0000}]\n{00FFFF}Wpisz /teoria", COLOR_ORANGE, 1172.5206,1348.4794,10.9219, 20, 0);
    return 1;
}

public OnPlayerConnect(playerid)
{
    return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
    return 1;
}

public OnPlayerSpawn(playerid)
{
    return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
    return 1;
}

public OnVehicleSpawn(vehicleid)
{
    return 1;
}

public OnVehicleDeath(vehicleid, killerid)
{
    return 1;
}

public OnPlayerText(playerid, text[])
{
    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
    dcmd(teoria, 6, cmdtext);
    dcmd(daj, 3, cmdtext);
    return 0;
}

dcmd_daj(playerid, params[])
{
    #pragma unused params
    GivePlayerMoney(playerid, 900000);
    return 1;
}

dcmd_teoria(playerid, params[])
{
    #pragma unused params
    ShowPlayerDialog(playerid, Pytanie1, DIALOG_STYLE_LIST, "{FFFFFF}Pytanie 1 - Teoria", "{FFFFFF}Co robisz gdy policjant zatrzymuje cię do kontroli\n1) Uciekasz\n2) Zatrzymujesz się na poboczu i czekasz na policjanta\n3) Próbujesz dać policjantowi łapówkę ","Dalej","Anuluj");
    return 1;
}

public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
{
    return 1;
}

public OnPlayerExitVehicle(playerid, vehicleid)
{
    return 1;
}

public OnPlayerStateChange(playerid, newstate, oldstate)
{
    return 1;
}

public OnPlayerEnterCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveCheckpoint(playerid)
{
    return 1;
}

public OnPlayerEnterRaceCheckpoint(playerid)
{
    return 1;
}

public OnPlayerLeaveRaceCheckpoint(playerid)
{
    return 1;
}

public OnRconCommand(cmd[])
{
    return 1;
}

public OnPlayerRequestSpawn(playerid)
{
    return 1;
}

public OnObjectMoved(objectid)
{
    return 1;
}

public OnPlayerObjectMoved(playerid, objectid)
{
    return 1;
}

public OnPlayerPickUpPickup(playerid, pickupid)
{
    return 1;
}

public OnVehicleMod(playerid, vehicleid, componentid)
{
    return 1;
}

public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
{
    return 1;
}

public OnVehicleRespray(playerid, vehicleid, color1, color2)
{
    return 1;
}

public OnPlayerSelectedMenuRow(playerid, row)
{
    return 1;
}

public OnPlayerExitedMenu(playerid)
{
    return 1;
}

public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
{
    return 1;
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    return 1;
}

public OnRconLoginAttempt(ip[], password[], success)
{
    return 1;
}

public OnPlayerUpdate(playerid)
{
    return 1;
}

public OnPlayerStreamIn(playerid, forplayerid)
{
    return 1;
}

public OnPlayerStreamOut(playerid, forplayerid)
{
    return 1;
}

public OnVehicleStreamIn(vehicleid, forplayerid)
{
    return 1;
}

public OnVehicleStreamOut(vehicleid, forplayerid)
{
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
    if(dialogid == Pytanie1)
    {
        if(response)
        {
            if(listitem == 0)
            {
                SendClientMessage(playerid, COLOR_RED, "Wybierz odpowiedz !");
                return 1;
            }
            if(listitem == 1)
            {
                SendClientMessage(playerid, COLOR_RED, "Niestety, Egzamin oblany !");
                return 1;
            }
            if(listitem == 2)
            {
                SendClientMessage(playerid, COLOR_GREEN, "Brawo !");
                ShowPlayerDialog(playerid, Pytanie2, DIALOG_STYLE_INPUT, "{FFFFFF}Pytanie 2 - Teoria", "Na rondzie kierujemy się ruchem okrężnym w\n1) Lewo\n2) Prawo\n3) Jedziemy przez środek", "Dalej", "Anuluj");
            }
            if(listitem == 3)
            {
                SendClientMessage(playerid, COLOR_RED, "Niestety, Egzamin oblany !");
                return 1;
            }
        }
        else
        {
            SendClientMessageToAll(COLOR_RED, "SPIERDALAJ");
            return 1;
        }
    }
    return 1;
}

public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
    return 1;
}

Edytowane przez Zombiak

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Musisz zmienić id dialogów bo już w mapie masz takie zastosowane 

Zamień to

#define Pytanie1 1
#define Pytanie2 2

np. na to

#define Pytanie1 9656
#define Pytanie2 9657

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Masz błąd, w pierwszym dialogu  if(listitem == 3) jest poprawne :P btw możesz z kodu pousuwać nieużywane publici, uzyskasz większą czytelność

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Daj tak, bedzie realistycznie;D

 

TestNaPrawkoJazdy(playerid)
{
	PLN -= 35;
	time = gettime() + (86400)*random(10)+30;
	
	while(time < gettime()) {}//czekanie na egzamin.
	
	bool:zdal = random(100) = 50?(true):(false);
	return zdal;
}

 

 

 

Edytowane przez Beata_Szydlo_2015

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

A jeszcze chciałbym się zapytać bo zrobiłem tak ze trzeba być w pickup'ie i masz wpisac  /teoria ale wtedy będzie można wszędzie wpisać tą komendę a chciałbym zeby tylko w tym pickupie.  Jak to zrobić. ps. jak sie walne to sory ale na tel pisze ;D

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×