Započeo V_More
•17. Dec. 2011.[POMOC] Dialog - sifra
1,602
pregleda
16
postova
Made Man
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
90 / 100 XP
Početnik(0)
381
Postovi:
45
Teme:
Pridružio se:Apr. 2011
17. Dec. 2011.
Skripta koju koristim: Moja Filterskripta
Detaljan opis problema: Kako da napravim da kad se pridje ono kao IsPlayerInRange i ono da pritisne tipku za otvaranje vrata na tastaturi, no da se ne otvore odmah, nego da prvo mora unijet neku sifru, ako je netacna, pokaze mu kao neko poruku ono SendClientMessage, a ako je tacna, otvore mu se vrata.
Dio skripte:
Neke slike/video za lakse dobivanje pomoci(neobavezno):
Detaljan opis problema: Kako da napravim da kad se pridje ono kao IsPlayerInRange i ono da pritisne tipku za otvaranje vrata na tastaturi, no da se ne otvore odmah, nego da prvo mora unijet neku sifru, ako je netacna, pokaze mu kao neko poruku ono SendClientMessage, a ako je tacna, otvore mu se vrata.
Dio skripte:
if( newkeys == KEY_SPRINT ) // Tipka SPACE
{
if( IsPlayerInRangeOfPoint(playerid, 1.0, 236.42187500,115.92285156,1003.47729492))
{
MoveObject(vrata6,235.12187500,115.92285156,1003.47729492, 2.0);
SetTimer("Zvrata6", 5000, 0);
return 1;
}
}Neke slike/video za lakse dobivanje pomoci(neobavezno):
Crime Lord
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
947
Postovi:
80
Teme:
Pridružio se:Jun 2011
17. Dec. 2011.
Uradi ovako
onda pod pod public Ondialogrespone stavis ovo
E sad, ID dijaloga promeni u neki drugi, kak ot ise nebi mesao sa gm-om
onda, if(strlen(inputtext) == sifra) , ovo sifra ti ej ustvari text(sifra) koju igrac mora uneti, da bi mu se otvorila vrata... i promeni ovo BELA u koju zelis boju...
Javi ako ima nekih greski...
Upozorenje - dok ste kucali poslat je nov odgovor. Možda ćete želeti da izmenite svoju poruku.
if( newkeys == KEY_SPRINT ) // Tipka SPACE
{
if( IsPlayerInRangeOfPoint(playerid, 1.0, 236.42187500,115.92285156,1003.47729492))
{
ShowPlayerDialog(playerid, 1234, DIALOG_STYLE_INPUT,"Sifra","Ukucajte ispod sigurnosnu sifru","Ok","Odustani");
return 1;
}
}onda pod pod public Ondialogrespone stavis ovo
if(dialogid == 1234)
{
if(response)
{
if(strlen(inputtext) == sifra)
{
MoveObject(vrata6,235.12187500,115.92285156,1003.47729492, 2.0);
SetTimer("Zvrata6", 5000, 0);
return 1;
}
}
else
{
SendClientMessage(playerid, BELA,"Pogresna sifra!!");
}
}E sad, ID dijaloga promeni u neki drugi, kak ot ise nebi mesao sa gm-om
onda, if(strlen(inputtext) == sifra) , ovo sifra ti ej ustvari text(sifra) koju igrac mora uneti, da bi mu se otvorila vrata... i promeni ovo BELA u koju zelis boju...
Javi ako ima nekih greski...
Upozorenje - dok ste kucali poslat je nov odgovor. Možda ćete želeti da izmenite svoju poruku.
Godfather
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
1,519
Postovi:
30
Teme:
Pridružio se:Jun 2010
17. Dec. 2011.
@[BR]Maki187,
Taj kod ti nema smisla. Provjerava duljinu varijable inputtext sa 'sifra'. Ako si htio usporedit koji je tekst upisao sa pravom lozinku, onda se to ovako radi:
if(strlen(inputtext) == sifra)Taj kod ti nema smisla. Provjerava duljinu varijable inputtext sa 'sifra'. Ako si htio usporedit koji je tekst upisao sa pravom lozinku, onda se to ovako radi:
if(!strcmp(inputtext, /*Ovdje ide tvoja lozinka*/, false))Made Man
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
90 / 100 XP
Početnik(0)
381
Postovi:
45
Teme:
Pridružio se:Apr. 2011
17. Dec. 2011.
Quote from December 17, 2011, 5:53 pm:
Uzmi si iz nekog GMa sistem za pin (za bankomat) pa edituj
Nisi mi bas puno pomogao.
1. A, kako da stavim da se ta sifra onda moze mjenjat?
2. Kako se ono definise dialog?
Godfather
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
1,519
Postovi:
30
Teme:
Pridružio se:Jun 2010
17. Dec. 2011.
Vectro64 wrote on December 17, 2011, 6:09 pm:
1. A, kako da stavim da se ta sifra onda moze mjenjat?
Možeš napravit neku komandu ili nešto u tom stilu.
Vectro64 wrote on December 17, 2011, 6:09 pm:
2. Kako se ono definise dialog?
Funkcija za pokazivanje dialoga je ShowPlayerDialog.
Made Man
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
90 / 100 XP
Početnik(0)
381
Postovi:
45
Teme:
Pridružio se:Apr. 2011
17. Dec. 2011.
The Guy wrote on December 17, 2011, 6:09 pm:
1. A, kako da stavim da se ta sifra onda moze mjenjat?
Možeš napravit neku komandu ili nešto u tom stilu.
Vectro64 wrote on December 17, 2011, 6:09 pm:
2. Kako se ono definise dialog?
Funkcija za pokazivanje dialoga je ShowPlayerDialog.
1. Koju komandu, kako da napravim?
2. Nisam to mislio, nego ono kao kako ide new ili #define, ono na pocetku kako ono?
Godfather
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
1,519
Postovi:
30
Teme:
Pridružio se:Jun 2010
17. Dec. 2011.
Vectro64 wrote on December 17, 2011, 6:20 pm:
1. Koju komandu, kako da napravim?
Pa napraviÅ¡ komandu u kojoj možeÅ¡ pokazat igraÄu jedan dialog i onda on u taj dialog upiÅ¡e novu lozinku i ti samo staru lozinku zamijeniÅ¡ novom.
Vectro64 wrote on December 17, 2011, 6:20 pm:
2. Nisam to mislio, nego ono kao kako ide new ili #define, ono na pocetku kako ono?
Ako si mislio na definiranje dialog ID-a preko macroa onda to ide ovako:
#define TU_IDE_IME_TOG_MACROA 1 // 1 možeš promijenit u koji dialog ID hoćeš da budeMade Man
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
90 / 100 XP
Početnik(0)
381
Postovi:
45
Teme:
Pridružio se:Apr. 2011
17. Dec. 2011.
Imam sad ovaj error kod OnPlayerDialogResponse:
Ovaj dio je od linije 302:
Errori:
Ovaj dio je od linije 302:
public OnPlayerDialogResponse
if(dialogid == 1)
{
if(response)
{
if(!strcmp(inputtext, test, false))
{
MoveObject(vrata6,235.12187500,115.92285156,1003.47729492, 2.0);
SetTimer("Zvrata6", 5000, 0);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_BLUE,"Pogresna sifra!");
}
}Errori:
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(303) : error 001: expected token: ";", but found "if"
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(305) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(307) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(311) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(314) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(319) : warning 203: symbol is never used: "OnPlayerDialogResponse"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.Godfather
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
1,519
Postovi:
30
Teme:
Pridružio se:Jun 2010
17. Dec. 2011.
Vectro64 wrote on December 17, 2011, 6:31 pm:
if(!strcmp(inputtext, test, false))Test mora biti string, to znaÄi da mora biti ovako:
if(!strcmp(inputtext, "test", false))Tako izgleda ako hoćeÅ¡ da lozinka konstantno bude 'test, dok ti to ne promijeniÅ¡ u skripti. A ako hoćeÅ¡ da mogu igraÄi mijenjat in-game lozinku onda moraÅ¡ spremat tu lozinku u neku varijablu, te bi onda to ovako izgledalo:
if(!strcmp(inputtext, varijabla, false)) // Umjesto 'varijabla' stavi ime svoje varijable u koju spremaš lozinkuMade Man
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
90 / 100 XP
Početnik(0)
381
Postovi:
45
Teme:
Pridružio se:Apr. 2011
17. Dec. 2011.
The Guy wrote on December 17, 2011, 6:31 pm:
if(!strcmp(inputtext, test, false))Test mora biti string, to znaÄi da mora biti ovako:
if(!strcmp(inputtext, "test", false))Tako izgleda ako hoćeÅ¡ da lozinka konstantno bude 'test, dok ti to ne promijeniÅ¡ u skripti. A ako hoćeÅ¡ da mogu igraÄi mijenjat in-game lozinku onda moraÅ¡ spremat tu lozinku u neku varijablu, te bi onda to ovako izgledalo:
if(!strcmp(inputtext, varijabla, false)) // Umjesto 'varijabla' stavi ime svoje varijable u koju spremaš lozinkuMoze pomoc oko te komande onda?
Mozes mi pokazat kako to ide i sve detaljno objasnit, bio bih ti zahvalan, ides i u Creditse za FS isto.
EDIT:
Sad imam ove bugove:
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(159) : error 029: invalid expression, assumed zero
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(159) : error 029: invalid expression, assumed zero
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(159) : error 017: undefined symbol "B5FA"
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(159) : fatal error 107: too many error messages on one lineCrime Lord
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
947
Postovi:
80
Teme:
Pridružio se:Jun 2011
17. Dec. 2011.
Vectro64 wrote on December 17, 2011, 6:31 pm:
Imam sad ovaj error kod OnPlayerDialogResponse:
Ovaj dio je od linije 302:
Errori:
Ovaj dio je od linije 302:
public OnPlayerDialogResponse
if(dialogid == 1)
{
if(response)
{
if(!strcmp(inputtext, test, false))
{
MoveObject(vrata6,235.12187500,115.92285156,1003.47729492, 2.0);
SetTimer("Zvrata6", 5000, 0);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_BLUE,"Pogresna sifra!");
}
}Errori:
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(303) : error 001: expected token: ";", but found "if"
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(305) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(307) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(311) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(314) : error 010: invalid function or declaration
C:\Documents and Settings\User\My Documents\My Documents\Downloads\Skriptanje\Karagon's CnR\pawno\pdintfilterscript.pwn(319) : warning 203: symbol is never used: "OnPlayerDialogResponse"
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.normalno da imas erore kad public OnPlayerDialogResponse nepostoji, uradi ovako
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
if(dialogid == 1)
{
if(response)
{
if(!strcmp(inputtext, test, false))
{
MoveObject(vrata6,235.12187500,115.92285156,1003.47729492, 2.0);
SetTimer("Zvrata6", 5000, 0);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_BLUE,"Pogresna sifra!");
}
}
return 1;
}
@The Guy, hvala na ispravci gore, al me nesto buni
if(!strcmp(inputtext, test, false))
zar ovo ustvari neproverava da ako ukucani tekst NIJE test, da onda uradi nesto ?
zar nebi trebalo da je if(strcmp(inputtext, test, true)) ??
Crime Lord
Balkan SA:MP
SA-MP Doprinos
Balkan SA:MP
SA-MP DoprinosNovi Član
240 / 250 XP
Početnik(0)
947
Postovi:
80
Teme:
Pridružio se:Jun 2011
Morate biti prijavljeni da biste odgovorili na ovu temu.
Prijava