format(string,sizeof(string),"Ucty/%s.sav",Jmeno(playerid));//zde si naformatujeme jmeno souboru do jmena se formatuje i umisteni to je to "Ucty/". %s je jmeno hrace a pak pripona budeme pouzivat ".sav" (ve slozce scriptfiles musite vytvori slozku "Ucty")
if(fexist(string))//pokud existuje soubor ve slozce. kdyz nebude existovat slozka tak se odesle nejako ze soubor neexistuje
{
new File:LogFile = fopen(string,io_read);//otevreme soubor pro cteni LogFile je aby jsme vedely s jakym pracujeme
if(!LogFile) printf("problem se souborem %s (io_read)",string);//pokud nastala chyba
fread(LogFile,Data,sizeof(Data));// precteme radek a mame heslo ve tvaru "heslo\r\n"
strdel(Data,NajdiEnter(Data),strlen(Data));// pomoci funkce a oriznuti ziskame "heslo" bez tech odratkovani
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Přihlášení","Prosím přihlašte se, napište své heslo","OK","OK");
}else{//pokud zadal spravne heslo
SetPVarString(playerid,"PrihlasovaciHeslo",inputtext);//ulozime si jeho heslo do promene dale uvidite proc
//vzdy kdyz pouzijete fread se precte radek a po pristim pouziti se precte ten dalsi (pod nim) lze fread pouzit do podminky true odesle ze radek existuje a false kyz neexistuje a nenahraje do promene
fread(LogFile,Data,sizeof(Data)); GivePlayerMoney(playerid,strval(Data));//strval prevedeni textu na cislo
//zde precteme ze souboru do promene Data s maximalnim poctem znaku velikosti Data
Prihlasen[playerid] = true;//aby jsme vedely ze je prihlasen
}
fclose(LogFile);
}else{//kdyz neexistuje
Prihlasen[playerid] = true;//dame mu promenou aby chom vedeli ze je prihlaeny
SetPVarString(playerid,"PrihlasovaciHeslo",inputtext);//ulozime si jim zadahe heslo do promene
UlozSkore(playerid);//a zalozime mu soubor
}
}
return 1;
}
public UlozSkore(playerid)
{
if(Prihlasen[playerid] == true)//toto je pokud je prihlasen takze pokud nekdo zkousi nekomu uhodnout heslo a pak se odpoji neprihlasen tak tomu dotycnemu muze vybilit ucet
{
new ucet[MAX_STRING];
format(ucet,sizeof(ucet),"Ucty/%s.sav",Jmeno(playerid));//stejne jako u loginu
new File:SaveFile = fopen(ucet,io_write);//otevreme pro cteni pokud soubor neexistuje vytvori se sam
if(!SaveFile) printf("problem se souborem %s (io_write)",ucet);
new napis[50];
new heslo[128];
GetPVarString(playerid,"PrihlasovaciHeslo",heslo,sizeof(heslo));//zde si zjistime heslo zadane v loginu a nahrajeme si ho promene s kterou muzeme pracovat
format(napis,sizeof(napis),"%s\r\n",heslo);fwrite(SaveFile,napis); //zapiseme jeho heslo na zacatek pro pristi prihlaseni
format(napis,sizeof(napis),"%d\r\n",GetPlayerMoney(playerid)); fwrite(SaveFile,napis);//a ulozime string ktery jsme si naformatovaly
Dotaz
hery23 0
byl by někdo ochoten my pomoct viřešit tu chybu ja už sem vkoncích
// This is a comment
// uncomment the line below if you want to write a filterscript
//#define FILTERSCRIPT
#include
#define MAX_STRING 128
#define textdraw(%1,%2) SendClientMessage(%1,0xFFFFFFAA,%2)
#define Jmeno
#define NajdiEnter
forward UlozSkore(playerid);
new Banka[MAX_PLAYERS];
new bool:Prihlasen[MAX_PLAYERS];
#if defined FILTERSCRIPT
stock NajdiEnter(string[])
{
for(new i=strlen(string) -1; i>-1; i--)
{
if(string != '\r' && string != '\n') return i +1;
}
return false;
}
stock Jmeno(playerid)
{
new p[MAX_PLAYER_NAME];
GetPlayerName(playerid,p,MAX_PLAYER_NAME);
return p;
}
public OnFilterScriptInit()
{
print("\n--------------------------------------");
print(" Blank Filterscript by your name here");
print("--------------------------------------\n");
return 1;
}
public OnFilterScriptExit()
{
return 1;
}
#else
main()
{
print("\n----------------------------------");
print(" Blank Gamemode by your name here");
print("----------------------------------\n");
}
#endif
public OnGameModeInit()
{
// Don't use these lines if it's a filterscript
SetGameModeText("Blank Script");
AddPlayerClass(0, 1958.3783, 1343.1572, 15.3746, 269.1425, 0, 0, 0, 0, 0, 0);
return 1;
}
public OnGameModeExit()
{
return 1;
}
public OnPlayerRequestClass(playerid, classid)
{
SetPlayerPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraPos(playerid, 1958.3783, 1343.1572, 15.3746);
SetPlayerCameraLookAt(playerid, 1958.3783, 1343.1572, 15.3746);
return 1;
}
public OnPlayerConnect(playerid)
{
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
UlozSkore(playerid);//pri odchodu aby se mu skore ulozilo
Prihlasen[playerid] = false;
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[])
{
if (strcmp("/mycommand", cmdtext, true, 10) == 0)
{
// Do something here
return 1;
}
return 0;
}
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 == 1)
{
if(!inputtext[0]) return ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Přihlášení","Prosím přihlašte se, napište své heslo","OK","OK");
else if(Prihlasen[playerid] == true) textdraw(playerid,"Uz jste prihlaseny");
new string[MAX_STRING];
new Data[MAX_STRING];
format(string,sizeof(string),"Ucty/%s.sav",Jmeno(playerid));//zde si naformatujeme jmeno souboru do jmena se formatuje i umisteni to je to "Ucty/". %s je jmeno hrace a pak pripona budeme pouzivat ".sav" (ve slozce scriptfiles musite vytvori slozku "Ucty")
if(fexist(string))//pokud existuje soubor ve slozce. kdyz nebude existovat slozka tak se odesle nejako ze soubor neexistuje
{
new File:LogFile = fopen(string,io_read);//otevreme soubor pro cteni LogFile je aby jsme vedely s jakym pracujeme
if(!LogFile) printf("problem se souborem %s (io_read)",string);//pokud nastala chyba
fread(LogFile,Data,sizeof(Data));// precteme radek a mame heslo ve tvaru "heslo\r\n"
strdel(Data,NajdiEnter(Data),strlen(Data));// pomoci funkce a oriznuti ziskame "heslo" bez tech odratkovani
if(strcmp(Data,inputtext,false))//pokud zadal spatne heslo
{
textdraw(playerid,"Login selhal");
ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Přihlášení","Prosím přihlašte se, napište své heslo","OK","OK");
}else{//pokud zadal spravne heslo
SetPVarString(playerid,"PrihlasovaciHeslo",inputtext);//ulozime si jeho heslo do promene dale uvidite proc
//vzdy kdyz pouzijete fread se precte radek a po pristim pouziti se precte ten dalsi (pod nim) lze fread pouzit do podminky true odesle ze radek existuje a false kyz neexistuje a nenahraje do promene
fread(LogFile,Data,sizeof(Data)); GivePlayerMoney(playerid,strval(Data));//strval prevedeni textu na cislo
//zde precteme ze souboru do promene Data s maximalnim poctem znaku velikosti Data
fread(LogFile,Data,sizeof(Data)); Banka[playerid] = strval(Data);
fread(LogFile,Data,sizeof(Data)); SetPlayerWantedLevel(playerid,strval(Data));
fread(LogFile,Data,sizeof(Data)); SetPlayerFightingStyle(playerid,strval(Data));
textdraw(playerid,"Uspesne prihlasen /info");
Prihlasen[playerid] = true;//aby jsme vedely ze je prihlasen
}
fclose(LogFile);
}else{//kdyz neexistuje
Prihlasen[playerid] = true;//dame mu promenou aby chom vedeli ze je prihlaeny
SetPVarString(playerid,"PrihlasovaciHeslo",inputtext);//ulozime si jim zadahe heslo do promene
UlozSkore(playerid);//a zalozime mu soubor
}
}
return 1;
}
public UlozSkore(playerid)
{
if(Prihlasen[playerid] == true)//toto je pokud je prihlasen takze pokud nekdo zkousi nekomu uhodnout heslo a pak se odpoji neprihlasen tak tomu dotycnemu muze vybilit ucet
{
new ucet[MAX_STRING];
format(ucet,sizeof(ucet),"Ucty/%s.sav",Jmeno(playerid));//stejne jako u loginu
new File:SaveFile = fopen(ucet,io_write);//otevreme pro cteni pokud soubor neexistuje vytvori se sam
if(!SaveFile) printf("problem se souborem %s (io_write)",ucet);
new napis[50];
new heslo[128];
GetPVarString(playerid,"PrihlasovaciHeslo",heslo,sizeof(heslo));//zde si zjistime heslo zadane v loginu a nahrajeme si ho promene s kterou muzeme pracovat
format(napis,sizeof(napis),"%s\r\n",heslo);fwrite(SaveFile,napis); //zapiseme jeho heslo na zacatek pro pristi prihlaseni
format(napis,sizeof(napis),"%d\r\n",GetPlayerMoney(playerid)); fwrite(SaveFile,napis);//a ulozime string ktery jsme si naformatovaly
format(napis,sizeof(napis),"%d\r\n",Banka[playerid]);fwrite(SaveFile,napis);
format(napis,sizeof(napis),"%d\r\n",GetPlayerWantedLevel(playerid));fwrite(SaveFile,napis);
format(napis,sizeof(napis),"%d\r\n",GetPlayerFightingStyle(playerid));fwrite(SaveFile,napis);
fclose(SaveFile);
}
return 1;
}
public OnPlayerClickPlayer(playerid, clickedplayerid, source)
{
return 1;
}
někde sem udělal chybu ale nevim kde
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(262) : error 035: argument type mismatch (argument 2)
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(270) : warning 217: loose indentation
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(283) : warning 217: loose indentation
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(284) : warning 217: loose indentation
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(298) : warning 217: loose indentation
C:\Users\Heřman\Desktop\testing pawno amx\register system.pwn(301) : warning 217: loose indentation
Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase
1 Error.
Link to comment
Share on other sites
5 odpovědí na tuto otázku
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now