Skripta koju koristim: ARP
Detaljan opis problema: Kad god ukucam komandu /kopaj crasha mi ceo client a na konzoli ispise ovo sto je na slici dole
Dio skripte: //
Neke slike/video za lakse dobivanje pomoci(neobavezno) : https://uploaduj.me/a/2WHBu-1510864695
KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD KOD
Array out of bounds, pokušavaš pristupiti indexu u nizu koji ne postoji!
[pawn]
else if( dialogid == dialog_RAZLOZI ) {
if(response) {
if(strlen(inputtext) > 6)
{
if(PraviLicnu[playerid]) return SPD(playerid, dialog_LICNA, DSMSG, D_NASLOV, "Da li ste sigurni da zelite kupiti licnu kartu?", "Da", "Ne");
else if(PraviPasos[playerid]) return SPD(playerid, dialog_PASOS, DSMSG, D_NASLOV, "Da li ste sigurni da zelite kupiti pasos?", "Da", "Ne");
}
else return GRESKA(playerid, "Niste uneli ispravne podatke.");
}
else return false;
}
else if(dialogid == dialog_LICNA) {
if(response) {
PraviLicnu[playerid] = false;
PlayerInfo[playerid][xLicna] = true;
DajIgracuNovac(playerid, -5000);
SendInfoMessage(playerid, "Uspesno ste izvadili licnu kartu.");
SavePlayer(playerid);
}
else return false;
}
else if(dialogid == dialog_PASOS) {
if(response) {
PraviPasos[playerid] = false;
PlayerInfo[playerid][xPasos] = true;
DajIgracuNovac(playerid, -5000);
SendInfoMessage(playerid, "Uspesno ste izvadili pasos.");
SavePlayer(playerid);
}
else return false;
}
[/pawn]
i ovo
[pawn]
else if(dialogid == dialog_OPSTINA ) {
if(response)
{
switch(listitem) {
case 0: SCM(playerid, -1, ""col_bstorm"[SEKRETARICA] "col_white"Licnu kartu/Pasos mozete izvaditi u kancelariji levo od Vas.");
case 1: SCM(playerid, -1, ""col_bstorm"[SEKRETARICA] "col_white"Sve oko vozila imate na drugom spratu");
case 2: SCM(playerid, -1, ""col_bstorm"[SEKRETARICA] "col_white"Sve oko poslova mozete pogledati na trecem spratu");
case 3: SCM(playerid, -1, ""col_bstorm"[SEKRETARICA] "col_white"Advokatske usluge mozete potraziti na trecem spratu");
}
}
else return false;
}
[/pawn]
i ovo
[pawn]
else if(dialogid == dialog_POL) {
if(!response)
{
PlayerInfo[playerid][xPol] = 2;
SendInfoMessage(playerid, "Vi ste zensko");
PlayerInfo[ playerid ][ xRegistrovan ] = 1;
PlayerInfo[ playerid ][ xPocetniTut ] = 0;
PlayerInfo[ playerid ][ xSpawn ] = SetRandomSpawn( playerid );
PlayerInfo[ playerid ][ xLevel ] = ServerInfo[ PocetniLevel ];
PlayerInfo[ playerid ][ xSkin ] = SetSexSkin(playerid);
TimerTutorial[ playerid ] = SetTimerEx( "PocetniTut", 10000, false, "ii", playerid, 1 );
PocetniTutorialStartovan[ playerid ] = true;
SavePlayer(playerid);
}
else
{
PlayerInfo[playerid][xPol] = 1;
SendInfoMessage(playerid, "Vi ste musko");
PlayerInfo[ playerid ][ xRegistrovan ] = 1;
PlayerInfo[ playerid ][ xPocetniTut ] = 0;
PlayerInfo[ playerid ][ xSpawn ] = SetRandomSpawn( playerid );
PlayerInfo[ playerid ][ xLevel ] = ServerInfo[ PocetniLevel ];
PlayerInfo[ playerid ][ xSkin ] = SetSexSkin(playerid);
TimerTutorial[ playerid ] = SetTimerEx( "PocetniTut", 10000, false, "ii", playerid, 1 );
PocetniTutorialStartovan[ playerid ] = true;
SavePlayer(playerid);
}
}
[/pawn]
izvoli buti bebo
/kopaj?
usput dodaj i -d3 u compiler
[pawn]
CMD:kopaj(playerid, params[]) {
if( GetFactionType( playerid ) == ORG_TIP_PD ) {
GRESKA( playerid, "PD/FBI/CIA ne moze da radi poslove!");
return 1;
}
if( ( PlayerInfo[ playerid ][ xAdmin ] > 0 && PlayerInfo[ playerid ][ xAdmin ] < 6 ) || PlayerInfo[ playerid ][ xHelper ] > 0 ) {
new hour, minute, seconds;
gettimeEx( hour, minute, seconds );
FixHour( hour );
hour = shifthour;
if( ( hour >= 00 ) && ( hour <= 08 ) ) { }
else {
GRESKA( playerid, "Admini i Helperi mogu da rade poslove izmedju 00h i 08h." );
return 1;
}
}
if(PlayerInfo[playerid][xPosao] != POSAO_RUDARCINA) return GRESKA(playerid, "Morate biti rudar da bi koristili ovu komandu.");
if(!UzeoOpremu[playerid]) return GRESKA(playerid, "Morate uzeti opremu da bi radili ovaj posao.");
if( AccountVerified[ playerid ] == false ) return GRESKA( playerid, "Prvo morate verifikovati svoj nalog(/verifikacija).");
if(IsPlayerInRangeOfPoint(playerid, 15.0, 607.1993, 866.9289, -40.2071))
{
AccountVerified[ playerid ] = false;
SendJobMessage(playerid, "Uspesno ste krenuli sa kopanjem.");
ApplyAnimation(playerid, "CHAINSHAW", "CSAW_1", 4.1, 1, 1, 1, 1, 0, 1);
rudarcina[playerid][rRudarTajmer] = SetTimerEx("Rudarisanje", 25000, false, "i", playerid);
rudarcina[playerid][rRadiRudara] = true;
TogglePlayerControllable(playerid, false);
}
else return GRESKA(playerid, "Niste na mestu za kopanje.");
return 1;
}
[/pawn]
to je ta
public Rudarisanje
[pawn]
forward Rudarisanje(playerid);
public Rudarisanje(playerid)
{
new zlato = random(30);
ClearAnimations(playerid);
SendJobMessage(playerid, "Uspesno ste zavrsili s poslom i dobili %d", zlato);
PlayerInfo[playerid][xZlato] += zlato;
rudarcina[playerid][rRadiRudara] = false;
TogglePlayerControllable(playerid, true);
UpdateZlatoTD(playerid);
return true;
}
[/pawn]
de
SendJobMessage
rudarcina
UpdateZlatoTD
http://prntscr.com/hbeztc Ocigledno je da ti je warn u dialog id 71 responseu...
Salji to
kako ti crasha ako ti je warning u dialogu a u /kopaj nemas nikako za dialog nista lol, daj i taj dialog i to sto sam ti rekao
Citat: Åukmember=1996][/member] link=topic=116359.msg780767#msg780767 date=1510866371]
de
SendJobMessage
rudarcina
UpdateZlatoTD
zivot bi bio 2x laksi da koristi -d3
Dodaj i definisanje istih variabli kada budes pisao
Citat: Butigan.MySql poslato Novembar 16, 2017, 22:10:54 POSLE PODNE
Citat: Åukmember=1996][/member] link=topic=116359.msg780767#msg780767 date=1510866371]
de
SendJobMessage
rudarcina
UpdateZlatoTD
zivot bi bio 2x laksi da koristi -d3
Bitno je da ga ti zavlacis vec pola sata i trazis mu nepotrebno, zasto ne citas iz parametara... OnDialogResponse(playerid,
dialog=71, response, list, input)
Posalji dialog 71, imam osjecaj da je do rudarcina[, mislim da ti je on definisan na broj tih rudnika il sta vec dok treba biti na MAX_PLAYERS.
[pawn]
if( dialogid == dialog_LOGIN ) {
if( !response ) return Kick( playerid );
if( response ) {
if( !strcmp( inputtext, PlayerInfo[ playerid ][ xLozinka ], false ) && !isnull( inputtext ) ) {
INI_ParseFile( Korisnici( playerid ), "OcitajKorisnika", .bExtra = true, .extra = playerid );
/*new aastring[64];
format( aastring, sizeof( aastring ), A_FILE, ImeIgraca( playerid ) );
if( PlayerInfo[ playerid ][ xAdmin ] == 0 && fexist( aastring ) ) {
SCM( playerid, -1, "Smenjen si sa pozicije Administratora." );
fremove( aastring );
}
if( PlayerInfo[ playerid ][ xHelper ] == 0 && fexist( aastring ) ) {
SCM( playerid, -1, "Smenjen si sa pozicije helpera." );
fremove( aastring );
}*/
if( fexist( Admini( playerid ) ) ) INI_ParseFile( Admini( playerid ), "OcitajAdmina", .bExtra = true, .extra = playerid );
if( fexist( Inventory( playerid ) ) ) INI_ParseFile( Inventory( playerid ), "LoadInventory", .bExtra = true, .extra = playerid );
INI_ParseFile( KladIme( playerid ), "LoadKladionica", .bExtra = true, .extra = playerid );
LoginTDControl( playerid, false );
new datum[ 64 ]; new year, month,day;
getdate( year, month, day );
new tmphour, tmpminute, tmpsecond;
gettimeEx( tmphour, tmpminute, tmpsecond );
FixHour( tmphour );
tmphour = shifthour;
format( datum, sizeof( datum ), "%02d/%02d/%d - %d/%d/%d", day, month, year, tmphour, tmpminute, tmpsecond );
strmid( PlayerInfo[ playerid ][ xLastLogin ], datum, 0, strlen( datum ), 64 );
if( PlayerInfo[ playerid ][ xFirmaID ] != -1 ) {
BussinesInfo[ PlayerInfo[ playerid ][ xFirmaID ] ][ bNeaktivnost ] = 0;
SaveBussines( PlayerInfo[ playerid ][ xFirmaID ] );
}
if( PlayerInfo[ playerid ][ xProperty ][ 0 ] != -1 ) {
II[ PlayerInfo[ playerid ][ xProperty ][ 0 ] ][ iNeaktivnost ] = 0;
SaveProperty( PlayerInfo[ playerid ][ xProperty ][ 0 ] );
}
if( PlayerInfo[ playerid ][ xProperty ][ 1 ] != -1 ) {
II[ PlayerInfo[ playerid ][ xProperty ][ 1 ] ][ iNeaktivnost ] = 0;
SaveProperty( PlayerInfo[ playerid ][ xProperty ][ 1 ] );
}
if( PlayerInfo[ playerid ][ xProperty ][ 2 ] != -1 ) {
II[ PlayerInfo[ playerid ][ xProperty ][ 2 ] ][ iNeaktivnost ] = 0;
SaveProperty( PlayerInfo[ playerid ][ xProperty ][ 2 ] );
}
if( PlayerInfo[ playerid ][ xVoziloID ][ 0 ] != -1 ) {
VehicleInfo[ PlayerInfo[ playerid ][ xVoziloID ][ 0 ] ][ vNeaktivnost ] = 0;
SaveVehicle( PlayerInfo[ playerid ][ xVoziloID ][ 0 ] );
}
if( PlayerInfo[ playerid ][ xVoziloID ][ 1 ] != -1 ) {
VehicleInfo[ PlayerInfo[ playerid ][ xVoziloID ][ 1 ] ][ vNeaktivnost ] = 0;
SaveVehicle( PlayerInfo[ playerid ][ xVoziloID ][ 1 ] );
}
if( PlayerInfo[ playerid ][ xVoziloID ][ 2 ] != -1 ) {
VehicleInfo[ PlayerInfo[ playerid ][ xVoziloID ][ 2 ] ][ vNeaktivnost ] = 0;
SaveVehicle( PlayerInfo[ playerid ][ xVoziloID ][ 2 ] );
}
if( PlayerInfo[ playerid ][ xVoziloID ][ 3 ] != -1 ) {
VehicleInfo[ PlayerInfo[ playerid ][ xVoziloID ][ 3 ] ][ vNeaktivnost ] = 0;
SaveVehicle( PlayerInfo[ playerid ][ xVoziloID ][ 3 ] );
}
new banfile[ 100 ]; format( banfile, sizeof( banfile ), FILE_BAN, ImeIgraca( playerid ) );
if( fexist( banfile ) ) {
new File: UserFile = fopen( banfile, io_read );
new razlogbana[ 128 ] = "Nepoznat";
new key[256];
new Data[256];
while ( fread( UserFile , Data, sizeof( Data ) ) ) {
key = ini_GetKey( Data );
if( strcmp( key , "Razlog" , true ) == 0 ) {
format( razlogbana, strlen( ini_GetValue ( Data ) ), "%s", ini_GetValue( Data ) );
}
}
fclose( UserFile );
getdate( year, month, day );
SendClientMessage( playerid, SVETLOCRVENA, "| BSG:AC | Vas acc je trenutno iskljucen sa servera! Izbaceni ste!" );
format( globalstring, sizeof( globalstring ), "Razlog bana: %s", razlogbana );
SendClientMessage( playerid, BELA, globalstring );
format( globalstring, sizeof( globalstring ), "Vas server nick: %s, Danasnji datum: %d.%d.%d", ImeIgraca( playerid ), day, month, year );
SendClientMessage( playerid, ZUTA, globalstring );
Unkovic_Kick( playerid );
return 1;
}
if( PlayerInfo[ playerid ][ xPocetniTut ] == 0 ) {
TogglePlayerSpectating( playerid, 1 );
InterpolateCameraPos( playerid, 1677.1746, -1303.1085, 481.0584, 1452.0430, -1314.4868, 176.0983, 50000, CAMERA_MOVE);
InterpolateCameraLookAt( playerid, 1676.1766, -1312.1057, 479.6893, 1451.0450, -1314.4979, 174.7492, 50000, CAMERA_MOVE);
SetPlayerInterior( playerid, 0 );
SetPlayerVirtualWorld( playerid, 1 );
Unkovic_SetPlayerPos( playerid, 1463.7633,-1041.4501,26.8281);
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, ZELENA, "~ DOBRO DOSLI NA ATHLONE ~");
SendClientMessage( playerid, SIVA," ");
SendClientMessage( playerid, BELA, "Pre svega zelimo vam pozeleti dobrodoslicu na nas server.");
SendClientMessage( playerid, BELA, "Ovo je tutorijal u kojem cemo vam pokazati najvaznije lokacije na serveru.");
SendClientMessage( playerid, BELA, "Objasnit cemo vam kako uspesno zapoceti igru i uciniti je zanimljivom.");
SendClientMessage( playerid, BELA, "Verujem da znate da je ovo RP server i da je dosta tesko doci do novca.");
SendClientMessage( playerid, BELA, "Na pocetku imate 500$ kod sebe, koje ce vam pomoci.");
TimerTutorial[ playerid ] = SetTimerEx( "PocetniTut", 25000, false, "ii", playerid, 1 );
PocetniTutorialStartovan[ playerid ] = true;
}
else
{
aliasLogin( playerid );
if( fexist( Inventory( playerid ) ) ) ProveriInvOruzje[ playerid ] = SetTimerEx( "ProveraInvOruzja", 10, false, "dd", playerid, 0 );
Unkovic_SetSpawnInfo( playerid );
SpawnPlayer( playerid ); PlayerLogged[ playerid ] = true;
antiCheatCS[ playerid ][ TeleportCheck ] = 4;
antiCheatCS[ playerid ][ WeaponDetect ] = 4;
for( new i = 0; i < 6; i ++) {
TextDrawShowForPlayer( playerid, BSTORM[ i ] );
}
if( ServerInfo[ HappyHours ] == true ) {
TextDrawShowForPlayer( playerid, HappyHoursTD );
}
if( PlayerInfo[ playerid ][ xPol ] == 0 ) PlayerInfo[ playerid ][ xPol ] = 1;
//CreatePlayerVehicles( playerid );
SetPlayerVirtualWorld( playerid, 0 );
DonatorBoja( playerid );
ResetAllWeapons( playerid );
new playersip[ 128 ];
GetPlayerIp( playerid, playersip, sizeof( playersip ) );
format( globalstring, sizeof( globalstring ), "Igrac: %s | [ID:%d] | [LVL:%d] | [IP:%s] se ulogovao na server.", ImeIgraca( playerid ), playerid, PlayerInfo[ playerid ][ xLevel ], playersip );
AdminPoruka( ZUTA, globalstring );
}
}
else {
if( PokusajLogina[ playerid ] == MAX_POKUSAJ_LOGINA - 1 ) {
format( globalstring, sizeof( globalstring ), "Uneli ste krivu lozinku %d puta i dobili kick!", MAX_POKUSAJ_LOGINA );
SCM( playerid, CRVENA, globalstring);
Kick( playerid );
return true;
}
PokusajLogina[ playerid ]++;
SendClientMessage( playerid, CRVENA, "Kriva lozinka!" );
format( sDStrg, sizeof( sDStrg ), DialogTekstovi[ 0 ], MAX_POKUSAJ_LOGINA );
SPD( playerid, dialog_LOGIN, DSP, D_NASLOV, sDStrg, D_ODABERI, D_ODUSTANI );
}
}
return true;
}
[/pawn]
izvolite dialogid == 71