Pinki95
Membru-
Posts
130 -
Joined
-
Last visited
Never
Pinki95's Achievements
-
Eu unul cred ca este de la include-ul BUD.
-
OMG :facepalm: Ne crezi n00bi? You are f***ing kidding me ? Clar..comanda din SF*. Huaa..plagiatorilor. Macar pune-l pe FLoRyN si pe Mirya la credits :*
-
OMG =]] Chiar exista astfel de oameni
-
scrie "public" cu litere mici
-
Ma refeream la o comanda facuta dar am rezolvat eu si am facut mai multe comenzi! Acest fs insa are o mica problema nu se salveaza banii si scorul: [pawn]#include <a_samp> #include <dini> #include <dudb> #include <sscanf2> #include <zcmd> #include <SII> #pragma unused ret_memcpy #define COLOR_GREY 0xAFAFAFAA #define COLOR_GREEN 0x33AA33AA #define COLOR_ORANGE 0xFF9900AA #define COLOR_RED 0xAA3333AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_WHITE 0xFFFFFFFF enum pInfo { pAdminLevel, pVipLevel, pCash, pScore, } new PlayerInfo[MAX_PLAYERS][pInfo]; new gPlayerLogged[MAX_PLAYERS]; #define SERVER_USER_FILE "DATABASE/%s.ini" public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Blank Filterscript by your name here"); print("--------------------------------------\n"); return 1; } public OnFilterScriptExit() { return 1; } public OnPlayerConnect(playerid) { gPlayerLogged[playerid] = 0; new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if (!dini_Exists(file)) { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Hi your not registered", "Welcome, your not registered mate, input your registration pw below", "Register", "Leave"); } if(fexist(file)) { ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); } return 1; } public OnPlayerDisconnect(playerid, reason) { new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(gPlayerLogged[playerid] == 1) { dini_IntSet(file, "Score", PlayerInfo[playerid][pScore]); dini_IntSet(file, "Money", PlayerInfo[playerid][pCash]); dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel]); dini_IntSet(file, "VipLevel",PlayerInfo[playerid][pVipLevel]); } gPlayerLogged[playerid] = 0; return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if (dialogid == 1) { new name[MAX_PLAYER_NAME], file[256], string[128]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(!response) return Kick(playerid); if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Hi your not registered", "Welcome, your not registered mate, input your registration pw below", "Register", "Leave"); dini_Create(file); dini_IntSet(file, "Password", udb_hash(inputtext)); dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel] = 0); dini_IntSet(file, "VipLevel",PlayerInfo[playerid][pVipLevel] = 0); dini_IntSet(file, "Money",PlayerInfo[playerid][pCash] = 0); dini_IntSet(file, "Score",PlayerInfo[playerid][pScore] = 0); format(string, 128, "[sYSTEM]: You succesfully registered the nickname %s with password %s, you have been auto logged in.", name, inputtext); SendClientMessage(playerid, COLOR_YELLOW, string); gPlayerLogged[playerid] = 1; } if (dialogid == 2) { new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(!response) return Kick(playerid); if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); new tmp; tmp = dini_Int(file, "Password"); if(udb_hash(inputtext) != tmp) { SendClientMessage(playerid, COLOR_RED, "Wrong PW sir."); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); } else { gPlayerLogged[playerid] = 1; PlayerInfo[playerid][pAdminLevel] = dini_Int(file, "AdminLevel"); PlayerInfo[playerid][pVipLevel] = dini_Int(file, "VipLevel"); SetPlayerScore(playerid, PlayerInfo[playerid][pScore]); GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid)); SendClientMessage(playerid,COLOR_RED, "[sYSTEM]: Successfully logged in!"); } } return 1; } CMD:bani(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] < 2) return SendClientMessage(playerid,-4,"Ai nevoie de Level 3 pentru a folosi aceasta comanda!");//Checking if the player has level 3, if not it sends him a message. GivePlayerMoney(playerid, 12500); return 1; } CMD:score(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] < 1) return SendClientMessage(playerid,-1,"You need Level 1"); SetPlayerScore(playerid, 150); return 1; } CMD:arme(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] < 3) return SendClientMessage(playerid,-2,"You need Level 3"); GivePlayerWeapon(playerid, 29, 1000); GivePlayerWeapon(playerid, 31, 1500); GivePlayerWeapon(playerid, 38, 2000); return 1; } CMD:health(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] < 4) return SendClientMessage(playerid,-3,"You need Level 4"); SetPlayerHealth(playerid, 100); return 1; } CMD:armour(playerid,params[]) { if(PlayerInfo[playerid][pAdminLevel] < 5) return SendClientMessage(playerid,-5,"You need Level 5"); SetPlayerArmour(playerid, 100); return 1; } CMD:fun(playerid,params[]) { if(PlayerInfo[playerid][pVipLevel] < 5) return SendClientMessage(playerid,-5,"You need Vip Level 5"); SetPlayerHealth(playerid, 100); SetPlayerArmour(playerid, 100); GivePlayerWeapon(playerid, 29, 2500); GivePlayerWeapon(playerid, 31, 3000); GivePlayerWeapon(playerid, 24, 200); GivePlayerWeapon(playerid, 36, 150); return 1; } CMD:setlevel(playerid,params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,-4,"Doar Adminii RCON pot folosii comanda [/setlevel]!");//Checking if the player is rcon admin to set an admin level new id, level;//Creating the id variable to store the selected id and a level variable for the chosen admin level. if(sscanf(params,"ui",id,level)) return SendClientMessage(playerid,-1,"USAGE: /setlevel <id> <level>");//Check if the player inputted a username or id and a admin level. if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-4,"That player is not connected!");//Checking if the selected user is connected or not. new file[64],PlayerName[24];//Creating a variable to store the file path, and a variable to store the players name. GetPlayerName(id,PlayerName,sizeof PlayerName);//Retrieving the selected id's name, format(file,sizeof file,"DATABASE/%s.ini",PlayerName); if(!fexist(file)) return SendClientMessage(playerid,-4,"That player is not registered");//Checking if the player is not registered INI_Open(file);//Opening the file with SII include INI_WriteInt("Level",level);//Writing the line "Level" the selected admin level. INI_Save();//Saving the file INI_Close();//Closing the file PlayerInfo[id][pAdminLevel] = level; SendClientMessage(playerid,-1,"You have changed the selected user's admin level"); SendClientMessage(id,-1,"Your admin level has been changed"); return 1; } CMD:setvip(playerid,params[]) { if(!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,-4,"Doar Adminii RCON pot folosii comanda [/setlevel]!");//Checking if the player is rcon admin to set an admin level new id, level;//Creating the id variable to store the selected id and a level variable for the chosen admin level. if(sscanf(params,"ui",id,level)) return SendClientMessage(playerid,-1,"USAGE: /setlevel <id> <level>");//Check if the player inputted a username or id and a admin level. if(!IsPlayerConnected(id)) return SendClientMessage(playerid,-4,"That player is not connected!");//Checking if the selected user is connected or not. new file[64],PlayerName[24];//Creating a variable to store the file path, and a variable to store the players name. GetPlayerName(id,PlayerName,sizeof PlayerName);//Retrieving the selected id's name, format(file,sizeof file,"DATABASE/%s.ini",PlayerName); if(!fexist(file)) return SendClientMessage(playerid,-4,"That player is not registered");//Checking if the player is not registered INI_Open(file);//Opening the file with SII include INI_WriteInt("Level",level);//Writing the line "Level" the selected admin level. INI_Save();//Saving the file INI_Close();//Closing the file PlayerInfo[id][pVipLevel] = level; SendClientMessage(playerid,-1,"You have changed the selected user's admin level"); SendClientMessage(id,-1,"Your admin level has been changed"); return 1; }[/pawn]
-
Cum as pute face ca acest fs sa fie pe ZCMD adica comenzile sa fie pe zcmd(vreau doar un exemplu de comanda pe zcmd pusa in acest fs): [pawn]#include <a_samp> #include <dini> #include <dudb> #include <sscanf2> #pragma unused ret_memcpy #define COLOR_GREY 0xAFAFAFAA #define COLOR_GREEN 0x33AA33AA #define COLOR_ORANGE 0xFF9900AA #define COLOR_RED 0xAA3333AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_WHITE 0xFFFFFFFF enum pInfo { pAdminLevel, pVipLevel, pCash, pScore, } new PlayerInfo[MAX_PLAYERS][pInfo]; new gPlayerLogged[MAX_PLAYERS]; #define SERVER_USER_FILE "DATABASE/%s.ini" public OnFilterScriptInit() { print("\n--------------------------------------"); print(" Blank Filterscript by your name here"); print("--------------------------------------\n"); return 1; } public OnFilterScriptExit() { return 1; } public OnPlayerConnect(playerid) { gPlayerLogged[playerid] = 0; new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if (!dini_Exists(file)) { ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Hi your not registered", "Welcome, your not registered mate, input your registration pw below", "Register", "Leave"); } if(fexist(file)) { ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); } return 1; } public OnPlayerDisconnect(playerid, reason) { new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(gPlayerLogged[playerid] == 1) { dini_IntSet(file, "Score", PlayerInfo[playerid][pScore]); dini_IntSet(file, "Money", PlayerInfo[playerid][pCash]); dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel]); dini_IntSet(file, "VipLevel",PlayerInfo[playerid][pVipLevel]); } gPlayerLogged[playerid] = 0; return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if (dialogid == 1) { new name[MAX_PLAYER_NAME], file[256], string[128]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(!response) return Kick(playerid); if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "Hi your not registered", "Welcome, your not registered mate, input your registration pw below", "Register", "Leave"); dini_Create(file); dini_IntSet(file, "Password", udb_hash(inputtext)); dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][pAdminLevel] = 0); dini_IntSet(file, "VipLevel",PlayerInfo[playerid][pVipLevel] = 0); dini_IntSet(file, "Money",PlayerInfo[playerid][pCash] = 500); dini_IntSet(file, "Score",PlayerInfo[playerid][pScore] = 0); format(string, 128, "[sYSTEM]: You succesfully registered the nickname %s with password %s, you have been auto logged in.", name, inputtext); SendClientMessage(playerid, COLOR_YELLOW, string); gPlayerLogged[playerid] = 1; } if (dialogid == 2) { new name[MAX_PLAYER_NAME], file[256]; GetPlayerName(playerid, name, sizeof(name)); format(file, sizeof(file), SERVER_USER_FILE, name); if(!response) return Kick(playerid); if (!strlen(inputtext)) return ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); new tmp; tmp = dini_Int(file, "Password"); if(udb_hash(inputtext) != tmp) { SendClientMessage(playerid, COLOR_RED, "Wrong PW sir."); ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "Hi your registered", "Fucken awesome mate, your registered . Inpute your pw below", "Login", "Leave"); } else { gPlayerLogged[playerid] = 1; PlayerInfo[playerid][pAdminLevel] = dini_Int(file, "AdminLevel"); PlayerInfo[playerid][pVipLevel] = dini_Int(file, "VipLevel"); SetPlayerScore(playerid, PlayerInfo[playerid][pScore]); GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid)); SendClientMessage(playerid,COLOR_RED, "[sYSTEM]: Successfully logged in!"); } } return 1; } [/pawn]
-
Am detectat problema cu banii(Server: PPC_Trucking): daca fac un payday de ex trebuie modificat in loc de GivePlayerMoney sa fie RewardPlayer(playerid, banii, scorul); EX: RewardPlayer(playerid, 5000, 10); si payday-ul trebuie bagat ing gm, iar eu vreau sa bag fs-ul de mai jos in gm si nu stiu cum [pawn]//////////////////////////////////////////////////////////// /////////////// DRIFT POINTS COUNTER BY LUBY /////////////// /////////////// A little editted by Abhinav //////////////// //////////////////////////////////////////////////////////// #include <a_samp> // by I dont know .. lol #define DRIFT_MINKAT 10.0 // by Luby #define DRIFT_MAXKAT 90.0 // by Luby #define DRIFT_SPEED 30.0 // by Luby //////////// Added by Abhinav/////// #define COLOR_Label 0xFFFFFFFF #define COLOR_LabelOut 0x00000040 #define COLOR_ValueOut 0xFFFFFF40 #define COLOR_Value 0x000000FF #define Label_X 500 #define Value_X 500 #define TD_Y 100 ///////////////////////////////////// new DriftTimer[MAX_PLAYERS]; // Added by Abhinav new TimerA,TimerB,TimerC; // Added by Abhinav new DriftPointsNow[MAX_PLAYERS]; // by Luby new PlayerDriftCancellation[MAX_PLAYERS]; // by Luby new Float:ppos[MAX_PLAYERS][3]; // by Luby enum Float:Pos{ Float:sX,Float:sY,Float:sZ }; // by Luby new Float:SavedPos[MAX_PLAYERS][Pos]; // by Luby new bool:DriftMode[MAX_PLAYERS]=false; // Added by Abhinav new DriftBonus[MAX_PLAYERS]=1; // Added by Abhinav new Float:HealthInit[MAX_PLAYERS]=1000.0; // Added by Abhinav new bool:AutoFixBool[MAX_PLAYERS]=true; // Added by Abhinav new Text:TDLabels[3]; // Added by Abhinav new Text:TDValueDrift[MAX_PLAYERS]; // Added by Abhinav new Text:TDValueBonus[MAX_PLAYERS]; // Added by Abhinav new Text:TDValueCash[MAX_PLAYERS]; // Added by Abhinav forward Drift(); // by Luby forward AngleUpdate(); // by Luby forward DriftExit(playerid); // by Luby forward CheckPlayerState(); // Added by Abhinav forward AutoFix(); // Added by Abhinav public OnFilterScriptInit(){ TimerA=SetTimer("AngleUpdate", 200, true); // by Luby TimerB=SetTimer("AutoFix", 500, true); //by Abhinav TimerC=SetTimer("CheckPlayerState", 100, true); //by Abhinav LoadTextDraws(); return 1; } public OnFilterScriptExit(){ KillTimer(TimerA); KillTimer(TimerB); KillTimer(TimerC); return 1; } Float:GetPlayerTheoreticAngle(i) // By Luby { new Float:sin; new Float:dis; new Float:angle2; new Float:x,Float:y,Float:z; new Float:tmp3; new Float:tmp4; new Float:MindAngle; if(IsPlayerConnected(i)){ GetPlayerPos(i,x,y,z); dis = floatsqroot(floatpower(floatabs(floatsub(x,ppos[0])),2)+floatpower(floatabs(floatsub(y,ppos[1])),2)); if(IsPlayerInAnyVehicle(i)){GetVehicleZAngle(GetPlayerVehicleID(i), angle2);}else{GetPlayerFacingAngle(i, angle2);} if(x>ppos[0]){tmp3=x-ppos[0];}else{tmp3=ppos[0]-x;} if(y>ppos[1]){tmp4=y-ppos[1];}else{tmp4=ppos[1]-y;} if(ppos[1]>y && ppos[0]>x){ sin = asin(tmp3/dis); MindAngle = floatsub(floatsub(floatadd(sin, 90), floatmul(sin, 2)), -90.0); } if(ppos[1]<y && ppos[0]>x){ sin = asin(tmp3/dis); MindAngle = floatsub(floatadd(sin, 180), 180.0); } if(ppos[1]<y && ppos[0]<x){ sin = acos(tmp4/dis); MindAngle = floatsub(floatadd(sin, 360), floatmul(sin, 2)); } if(ppos[1]>y && ppos[0]<x){ sin = asin(tmp3/dis); MindAngle = floatadd(sin, 180); } } if(MindAngle == 0.0){return angle2;}else{return MindAngle;} } public DriftExit(playerid){ // By Luby PlayerDriftCancellation[playerid] = 0; ////////////////// by Abhinav /////////////////// new Float:h; GetVehicleHealth(GetPlayerVehicleID(playerid),h); if(DriftPointsNow[playerid]>70 && DriftPointsNow[playerid]<10000 && h==HealthInit[playerid]) GivePlayerMoney(playerid,DriftPointsNow[playerid]*DriftBonus[playerid]); TextDrawHideForPlayer(playerid,TDLabels[0]); TextDrawHideForPlayer(playerid,TDLabels[1]); TextDrawHideForPlayer(playerid,TDLabels[2]); TextDrawHideForPlayer(playerid,TDValueDrift[playerid]); TextDrawHideForPlayer(playerid,TDValueBonus[playerid]); TextDrawHideForPlayer(playerid,TDValueCash[playerid]); DriftBonus[playerid]=1; AutoFixBool[playerid]=true; SetVehicleHealth(GetPlayerVehicleID(playerid),HealthInit[playerid]); //////////////////////////////////////////////////// DriftPointsNow[playerid] = 0; } Float:ReturnPlayerAngle(playerid){ // By Luby new Float:Ang; if(IsPlayerInAnyVehicle(playerid))GetVehicleZAngle(GetPlayerVehicleID(playerid), Ang); else GetPlayerFacingAngle(playerid, Ang); return Ang; } public Drift(){ // By Luby new Float:Angle1, Float:Angle2, Float:BySpeed; new Float:Z; new Float:X; new Float:Y; new Float:SpeedX; for(new g=0;g<200;g++){ GetPlayerPos(g, X, Y, Z); SpeedX = floatsqroot(floatadd(floatadd(floatpower(floatabs(floatsub(X,SavedPos[ g ][ sX ])),2),floatpower(floatabs(floatsub(Y,SavedPos[ g ][ sY ])),2)),floatpower(floatabs(floatsub(Z,SavedPos[ g ][ sZ ])),2))); Angle1 = ReturnPlayerAngle(g); Angle2 = GetPlayerTheoreticAngle(g); BySpeed = floatmul(SpeedX, 12); if(IsPlayerInAnyVehicle(g) && GetVType(GetPlayerVehicleID(g)) && floatabs(floatsub(Angle1, Angle2)) > DRIFT_MINKAT && floatabs(floatsub(Angle1, Angle2)) < DRIFT_MAXKAT && BySpeed > DRIFT_SPEED){ if(PlayerDriftCancellation[g] > 0)KillTimer(PlayerDriftCancellation[g]); PlayerDriftCancellation[g] = 0; DriftPointsNow[g] += floatval( floatabs(floatsub(Angle1, Angle2)) * 3 * (BySpeed*0.1) )/10; PlayerDriftCancellation[g] = SetTimerEx("DriftExit", 3000, 0, "d", g); } if(DriftPointsNow[g] > 70 && DriftPointsNow[g]<10000){ ///////////// by Abhinav //////////////////// if(DriftPointsNow[g]<500){ DriftBonus[g]=1; } if(DriftPointsNow[g]>=500 && DriftPointsNow[g]<1000){ DriftBonus[g]=2; } if(DriftPointsNow[g]>=1000 && DriftPointsNow[g]<1700){ DriftBonus[g]=3; } if(DriftPointsNow[g]>=1700 && DriftPointsNow[g]<2500){ DriftBonus[g]=4; } if(DriftPointsNow[g]>=2500){ DriftBonus[g]=5; } TextDrawShowForPlayer(g,TDLabels[0]); TextDrawShowForPlayer(g,TDLabels[1]); TextDrawShowForPlayer(g,TDLabels[2]); TextDrawShowForPlayer(g,TDValueDrift[g]); TextDrawShowForPlayer(g,TDValueBonus[g]); TextDrawShowForPlayer(g,TDValueCash[g]); new DPs[128],DBn[128],Cash[128],csh; valstr(DPs,DriftPointsNow[g],false); format(DBn,sizeof(DBn),"X%i",DriftBonus[g]); csh=DriftPointsNow[g]*DriftBonus[g]; format(Cash,sizeof(Cash),"$%i",csh); TextDrawSetString(TDValueDrift[g],DPs); TextDrawSetString(TDValueBonus[g],DBn); TextDrawSetString(TDValueCash[g],Cash); //////////////////////////////////////// } SavedPos[ g ][ sX ] = X; SavedPos[ g ][ sY ] = Y; SavedPos[ g ][ sZ ] = Z; } } public AngleUpdate(){ // By Luby for(new g=0;g<=MAX_PLAYERS;g++){ new Float:x, Float:y, Float:z; if(IsPlayerInAnyVehicle(g))GetVehiclePos(GetPlayerVehicleID(g), x, y, z); else GetPlayerPos(g, x, y, z); ppos[g][0] = x; ppos[g][1] = y; ppos[g][2] = z; } } floatval(Float:val){ // By Luby new str[256]; format(str, 256, "%.0f", val); return todec(str); } todec(str[]){ // By Luby return strval(str); } LoadTextDraws(){ // by Abhinav TDLabels[0]=TextDrawCreate(Label_X,TD_Y,"Drift Points"); TextDrawColor(TDLabels[0],COLOR_Label); TextDrawSetShadow(TDLabels[0],0); TextDrawSetOutline(TDLabels[0],1); TextDrawLetterSize(TDLabels[0],0.5,2); TextDrawBackgroundColor(TDLabels[0],COLOR_LabelOut); TextDrawFont(TDLabels[0],1); TDLabels[1]=TextDrawCreate(Label_X,TD_Y+50,"Drift Bonus"); TextDrawColor(TDLabels[1],COLOR_Label); TextDrawSetShadow(TDLabels[1],0); TextDrawSetOutline(TDLabels[1],1); TextDrawLetterSize(TDLabels[1],0.5,2); TextDrawBackgroundColor(TDLabels[1],COLOR_LabelOut); TextDrawFont(TDLabels[1],1); TDLabels[2]=TextDrawCreate(Label_X,TD_Y+100,"Drift Cash"); TextDrawColor(TDLabels[2],COLOR_Label); TextDrawSetShadow(TDLabels[2],0); TextDrawSetOutline(TDLabels[2],1); TextDrawLetterSize(TDLabels[2],0.5,2); TextDrawBackgroundColor(TDLabels[2],COLOR_LabelOut); TextDrawFont(TDLabels[2],1); new i; for(i=0;i<=MAX_PLAYERS;i++){ TDValueDrift=TextDrawCreate(Value_X,TD_Y+20,"0"); TextDrawColor(TDValueDrift,COLOR_Value); TextDrawSetShadow(TDValueDrift,0); TextDrawSetOutline(TDValueDrift,1); TextDrawLetterSize(TDValueDrift,0.5,2); TextDrawBackgroundColor(TDValueDrift,COLOR_ValueOut); TextDrawFont(TDValueDrift,3); TDValueBonus=TextDrawCreate(Value_X,TD_Y+70,"X1"); TextDrawColor(TDValueBonus,COLOR_Value); TextDrawSetShadow(TDValueBonus,0); TextDrawSetOutline(TDValueBonus,1); TextDrawLetterSize(TDValueBonus,0.5,2); TextDrawBackgroundColor(TDValueBonus,COLOR_ValueOut); TextDrawFont(TDValueBonus,3); TDValueCash=TextDrawCreate(Value_X,TD_Y+120,"$0"); TextDrawColor(TDValueCash,COLOR_Value); TextDrawSetShadow(TDValueCash,0); TextDrawSetOutline(TDValueCash,1); TextDrawLetterSize(TDValueCash,0.5,2); TextDrawBackgroundColor(TDValueCash,COLOR_ValueOut); TextDrawFont(TDValueCash,3); } return 1; } public CheckPlayerState(){ //by Abhinav new i,cs; for(i=0;i<=MAX_PLAYERS;i++){ cs=GetPlayerState(i); if(DriftMode && cs==PLAYER_STATE_DRIVER && DriftPointsNow>70){ new Float:h; GetVehicleHealth(GetPlayerVehicleID(i),h); if(h<HealthInit){ KillTimer(DriftTimer); DriftExit(i); GameTextForPlayer(i,"~n~~n~~n~~n~~n~~n~~n~~r~Boom",800,5); DriftMode=false; } } if(cs==PLAYER_STATE_DRIVER && DriftMode==false){ if(GetVType(GetPlayerVehicleID(i))){ DriftMode=true; GetVehicleHealth(GetPlayerVehicleID(i),HealthInit); AutoFixBool=false; DriftTimer=SetTimerEx("Drift", 200, true, "i", i); } } else if(cs!=PLAYER_STATE_DRIVER && DriftMode==true){ KillTimer(DriftTimer); DriftMode=false; AutoFixBool=true; } else{} } return 1; } public AutoFix(){ // By abhinav new i; for(i=0;i<=MAX_PLAYERS;i++){ if(AutoFixBool && IsPlayerInAnyVehicle(i)){ SetVehicleHealth(GetPlayerVehicleID(i),HealthInit); } } } GetVType(vid){ // By Abhinav new Convertibles[4]={480, 533, 439, 555}; new Industrial[26]={499, 422, 482, 498, 609, 524, 578, 455, 403, 414, 582, 443, 514, 413, 515, 440, 543, 605, 459, 531, 408, 552, 478, 456, 554}; new LowRider[8]={536, 575, 534, 567, 535, 566, 576, 412}; new OffRoad[13]={568, 424, 573, 579, 400, 500, 444, 556, 557, 470, 489, 505, 595}; new Service[19]={416, 433, 431, 438, 437, 523, 427, 490, 528, 407, 544, 596, 596, 597, 598, 599, 432, 601, 420}; new Saloon[35]={445, 504, 401, 518, 527, 542, 507, 562, 585, 419, 526, 604, 466, 492, 474, 546, 517, 410, 551, 516, 467, 600, 426, 436, 547, 405, 580, 560, 550, 549, 540, 491, 529, 421}; new Sports[20]={602, 429, 496, 402, 541, 415, 589, 587, 565, 494, 502, 503, 411, 559, 603, 475, 506, 451, 558, 477}; new Wagons[5]={418, 404, 479, 458, 561}; new modelid=GetVehicleModel(vid); new i; for(i=0;i<3;i++){ if(Convertibles==modelid) return 1; } for(i=0;i<25;i++){ if(Industrial==modelid) return 1; } for(i=0;i<7;i++){ if(LowRider==modelid) return 1; } for(i=0;i<12;i++){ if(OffRoad==modelid) return 1; } for(i=0;i<19;i++){ if(Service==modelid) return 1; } for(i=0;i<35;i++){ if(Saloon==modelid) return 1; } for(i=0;i<20;i++){ if(Sports==modelid) return 1; } for(i=0;i<5;i++){ if(Wagons==modelid) return 1; } return 0; }[/pawn]
-
Cum as putea adauga un timer ca atunci cand intra in primul checkpoint sa stea 5 secunde si in alea 5 secunde sa ii apara o bara care se incarca ca si aici: http://imageshack.us/a/img850/4199/pluk.png ,iar dupa ce au trecut 5 secunde sa ii apara urmatorul checkpoint. GM: [pawn]#include <a_samp> #define dcmd(%1,%2,%3) if (!strcmp((%3)[1], #%1, true, (%2)) && ((((%3)[(%2) + 1] == '\0') && (dcmd_%1(playerid, ""))) || (((%3)[(%2) + 1] == ' ') && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1 #define COLOR_ORANGE 0xFFA500FF #define COLOR_LIMEGREEN 0x32CD32FF #define COLOR_ROYALBLUE 0x4169E1FF #define COLOR_SALMON 0xFA8072FF #define COLOR_GREY 0xAFAFAFAA #define COLOR_GREEN 0x33AA33AA #define COLOR_RED 0xAA3333AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_WHITE 0xFFFFFFAA #define COLOR_BLUE 0x0000BBAA #define COLOR_LIGHTBLUE 0x33CCFFAA #define COLOR_RED 0xAA3333AA enum BusLocationsEnum { ID, LoadName[128], Float:LoadX, Float:LoadY, Float:LoadZ, Float:UnloadX, Float:UnloadY, Float:UnloadZ, Pay } enum PilotLocationsEnum { ID, LoadName[128], Float:LoadX, Float:LoadY, Float:LoadZ, Float:UnloadX, Float:UnloadY, Float:UnloadZ, Pay } new BusLocations[][busLocationsEnum] = { {0, "Beer from Red County Brewery to Bone County Diner",-24.4073,-281.8898,5.9985,-305.4319,1315.6797,54.6189, 5980}, {1, "Fuel from LV Oil Refinery to LV Dirtring",266.8981,1416.5417,10.2001,1097.5164,1741.7422,10.5474, 5700}, {2, "Vehicle Parts from SF Airport ATC to Wang Cars",-1268.8223,13.6925,14.8682,-1986.3477,253.9728,35.8985, 3000}, {3, "Fuel from SF Oil Refinery to RS Haul",-1016.3634,-688.2434,32.7284,-55.3397,-1138.2479,0.8052, 18770} }; new PilotLocations[][PilotLocationsEnum] = { {0, "Beer from Red County Brewery to Bone County Diner",-1268.8223,13.6925,14.8682,-1268.8223,13.6925,14.8682, 5980}, {1, "Fuel from LV Oil Refinery to LV Dirtring",-1268.8223,13.6925,14.8682,-1268.8223,13.6925,14.8682, 5700}, {2, "Vehicle Parts from SF Airport ATC to Wang Cars",-1268.8223,13.6925,14.8682,-1268.8223,13.6925,14.8682, 3000}, {3, "Fuel from SF Oil Refinery to RS Haul",-1268.8223,13.6925,14.8682,-1268.8223,13.6925,14.8682, 18770} }; #define TEAM_AUTOBUS 1 #define TEAM_PILOT 2 new iMissionText[512][MAX_PLAYERS], Float:unx[MAX_PLAYERS], Float:uny[MAX_PLAYERS], Float:unz[MAX_PLAYERS], iPay[MAX_PLAYERS], MissionStatus[MAX_PLAYERS]; main(){} public OnGameModeInit() { AddPlayerClass(72, -2105.3228, -124.2982, 37.2531, 0.0, 0, 0, 0, 0, 0, 0);//Trucker - SF AddPlayerClass(98, -1226.5083, 55.1571, 14.1324, 244.1263, 0, 0, 0, 0, 0, 0); // spawn CreateVehicle(520, -1217.2897, 41.9185, 14.1401, 198.6408, 3, 3, 600); CreateVehicle(431, -2125.7415, -90.8166, 35.3203, 268.5503, 3, 6, 600); // Tir CreateVehicle(437, -2125.7297, -102.2942, 35.3203, 267.3752, 3, 3, 600); // Remorca return 1; } public OnPlayerRequestClass(playerid, classid) { InterpolateCameraPos(playerid,1452.445556,-814.403869,88.533508,1415.500000,-813.963256,90.274688,2222); InterpolateCameraLookAt(playerid,1449.309692,-817.947631,86.918464,1415.342529,-809.165588,91.673728,2222); SetPlayerPos(playerid,1415.590576,-808.479675,91.853370); SetPlayerFacingAngle(playerid,184.728164); switch (classid) { case 0: { GameTextForPlayer(playerid, "~b~Bus Driver", 3000, 4); SetPlayerTeam(playerid, TEAM_AUTOBUS); } case 1: { GameTextForPlayer(playerid, "~r~Pilot", 3000, 4); SetPlayerTeam(playerid, TEAM_PILOT); } } return 1; } public OnPlayerSpawn(playerid) { if(GetPlayerTeam(playerid) == TEAM_AUTOBUS) { SetPlayerColor(playerid, COLOR_LIGHTBLUE); } if(GetPlayerTeam(playerid) == TEAM_PILOT) { SetPlayerColor(playerid, COLOR_YELLOW); } return 1; } public OnPlayerCommandText(playerid, cmdtext[]) { dcmd(work, 4, cmdtext); dcmd(stopwork, 8, cmdtext); dcmd(fun, 3, cmdtext); dcmd(reclass, 7, cmdtext); return 0; } dcmd_work(playerid, params[]) { #pragma unused params if(GetPlayerTeam(playerid) == TEAM_AUTOBUS) return T_NewJob(playerid); if(GetPlayerTeam(playerid) == TEAM_PILOT) return T_NewJobPilot(playerid); return 1; } dcmd_stopwork(playerid, params[]) { #pragma unused params if(GetPlayerTeam(playerid) == TEAM_AUTOBUS) return StopWork(playerid); if(GetPlayerTeam(playerid) == TEAM_PILOT) return StopWork(playerid); return 1; } dcmd_fun(playerid, params[]) { #pragma unused params if(IsPlayerAdmin(playerid)) { GivePlayerWeapon(playerid, 24, 100); GivePlayerWeapon(playerid, 38, 500); GivePlayerWeapon(playerid, 30, 900); GivePlayerWeapon(playerid, 28, 800); SetPlayerHealth(playerid, 100); SetPlayerArmour(playerid, 100); } return 1; } dcmd_reclass(playerid, params[]) { #pragma unused params ForceClassSelection(playerid); SetPlayerHealth(playerid, 0.0); return 1; } stock T_NewJob(playerid) { new vID = GetPlayerVehicleID(playerid); if(GetVehicleModel(vID)== 431 || GetVehicleModel(vID)== 437) { MissionStatus[playerid] = 1; new BusRand = random(sizeof(BusLocations)); new LoadText[128], Float:x, Float:y, Float:z; x = BusLocations[busRand][LoadX]; y = BusLocations[busRand][LoadY]; z = BusLocations[busRand][LoadZ]; unx[playerid] = BusLocations[busRand][unloadX]; uny[playerid] = BusLocations[busRand][unloadY]; unz[playerid] = BusLocations[busRand][unloadZ]; iPay[playerid] = BusLocations[busRand][Pay]; SetPlayerCheckpoint(playerid, x, y, z, 7); format(LoadText, 128, "%s",BusLocations[busRand][LoadName]); SendClientMessage(playerid, COLOR_GREEN, "Misiune:"); SendClientMessage(playerid, COLOR_GREEN, "_______________________________"); SendClientMessage(playerid, COLOR_GREEN, ""); SendClientMessage(playerid, 0xFFFFFFFF, LoadText); SendClientMessage(playerid, COLOR_GREEN, "_______________________________"); } else { SendClientMessage(playerid, COLOR_RED, "ERROR: Trebuie sa fii intr-un autobus!"); } return 1; } stock T_NewJobPilot(playerid) { new vID = GetPlayerVehicleID(playerid); if(GetVehicleModel(vID)== 520) { MissionStatus[playerid] = 1; new PilotRand = random(sizeof(PilotLocations)); new LoadText[128], Float:x, Float:y, Float:z; x = PilotLocations[PilotRand][LoadX]; y = PilotLocations[PilotRand][LoadY]; z = PilotLocations[PilotRand][LoadZ]; unx[playerid] = PilotLocations[PilotRand][unloadX]; uny[playerid] = PilotLocations[PilotRand][unloadY]; unz[playerid] = PilotLocations[PilotRand][unloadZ]; iPay[playerid] = PilotLocations[PilotRand][Pay]; SetPlayerCheckpoint(playerid, x, y, z, 7); format(LoadText, 128, "%s",PilotLocations[PilotRand][LoadName]); SendClientMessage(playerid, COLOR_GREEN, "Misiune:"); SendClientMessage(playerid, COLOR_GREEN, "_______________________________"); SendClientMessage(playerid, COLOR_GREEN, ""); SendClientMessage(playerid, 0xFFFFFFFF, LoadText); SendClientMessage(playerid, COLOR_GREEN, "_______________________________"); } else { SendClientMessage(playerid, COLOR_RED, "ERROR: Trebuie sa fii intr-un Avion!"); } return 1; } stock StopWork(playerid) { DisablePlayerCheckpoint(playerid); SendClientMessage(playerid, COLOR_RED, "Ai renuntat la misiune si ai pierdut $1000"); GivePlayerMoney(playerid, -1000); MissionStatus[playerid] = 0; return 1; } public OnPlayerEnterCheckpoint(playerid) { CheckpointEntered(playerid); return 1; } stock CheckpointEntered(playerid) { new gString[128]; if(MissionStatus[playerid] == 1) { DisablePlayerCheckpoint(playerid); SetPlayerCheckpoint(playerid, unx[playerid], uny[playerid], unz[playerid], 7); SendClientMessage(playerid, COLOR_ORANGE, "Du-te la Checkpoint-ul rosu pentru a descarca!"); MissionStatus[playerid] = 2; } else if(MissionStatus[playerid] == 2) { DisablePlayerCheckpoint(playerid); GivePlayerMoney(playerid, iPay[playerid]); SendClientMessage(playerid, COLOR_GREEN, "Bravo! Ai terminat misiunea!"); format(gString, 512, "%s has completed mission: %s", pName(playerid), iMissionText[playerid]); SendClientMessageToAll(COLOR_GREEN, gString); SetPlayerScore(playerid, GetPlayerScore(playerid)+2); MissionStatus[playerid] = 0; } return 1; } stock pName(PN) { new PX[MAX_PLAYER_NAME]; GetPlayerName(PN, PX, sizeof(PX)); return PX; }[/pawn]
-
nu, este doar un server PPC_trucking6
-
[pawn]// Bans a player for (days, hours, minutes, seconds) COMMAND:ban(playerid, params[]) { // Setup local variables new PlayerToBan, Days, Hours, Reason[128], TotalBanTime, Msg[128], Name[24], AdminName[24]; // Send the command to all admins so they can see it SendAdminText(playerid, "/ban", params); // Check if the player has logged in if (APlayerData[playerid][LoggedIn] == true) { // Check if the player's admin-level is at least 2 if (APlayerData[playerid][PlayerLevel] >= 2) { if (sscanf(params, "uiis[128]", PlayerToBan, Days, Hours, Reason)) SendClientMessage(playerid, 0xFF0000AA, "Usage: \"/ban <PlayerToBan> <Days> <Hours> <Reason>\""); else { if (IsPlayerConnected(PlayerToBan)) { // Get the names of the player and the admin who executed the ban GetPlayerName(playerid, AdminName, sizeof(AdminName)); GetPlayerName(PlayerToBan, Name, sizeof(Name)); // Increase the number of bans APlayerData[PlayerToBan][bans]++; // Calculate the total bantime (when the player can login again) TotalBanTime = (Days * 86400) + (Hours * 3600) + gettime(); // Check if this is the player's 5th ban if (APlayerData[PlayerToBan][bans] == 3) APlayerData[PlayerToBan][banTime] = 2147483640; // Make the ban permanent (as high as it can go) else APlayerData[PlayerToBan][banTime] = TotalBanTime; // Store this value for the player // Inform the player about his ban // Check if this is the player's 5th ban if (APlayerData[PlayerToBan][bans] == 5) { format(Msg, 128, "You have been banned permanently by %s, this was your 3th ban", AdminName); SendClientMessage(PlayerToBan, 0x808080FF, Msg); } else { format(Msg, 128, "You have been temponarlity banned by %s for %i days and %i hours", AdminName, Days, Hours); SendClientMessage(PlayerToBan, 0x808080FF, Msg); format(Msg, 128, "Reason: %s", Reason); SendClientMessage(PlayerToBan, 0x808080FF, Msg); format(Msg, 128, "You've been banned %i times now, 3th time is permament", APlayerData[PlayerToBan][bans]); SendClientMessage(PlayerToBan, 0x808080FF, Msg); } // Kick the player (his data will be saved) Kick(PlayerToBan); // Inform everybody else which player was banned and for how long format(Msg, 128, "%s %s has temponarlity banned %s for %i days and %i hours", AdminLevelName[APlayerData[playerid][PlayerLevel]], AdminName, Name, Days, Hours); SendClientMessageToAll(0x808080FF, Msg); } } } else return 0; } else return 0; return 1; }[/pawn]
-
Am un server de PPC_Trucking si avea un bug faceam drifturi si cand sa imi dea banii de pe drift imi cresteau si scadeau la loc problema am detectato a fost din PPC_Speedometer.inc am facu asa: [pawn] ResetPlayerMoney(playerid); GivePlayerMoney(playerid, APlayerData[playerid][PlayerMoney]); SetPlayerScore(playerid, APlayerData[playerid][PlayerScore]); // Limit the cash that the player can have if (APlayerData[playerid][PlayerMoney] > 999000000) APlayerData[playerid][PlayerMoney] = 999000000; // Limit the cash that the player can have below 0 if (APlayerData[playerid][PlayerMoney] < -1000000) APlayerData[playerid][PlayerMoney] = -1000000;[/pawn] -din asta am modificat asa: [pawn] GivePlayerMoney(playerid, APlayerData[playerid][PlayerMoney]); SetPlayerScore(playerid, APlayerData[playerid][PlayerScore]); // Limit the cash that the player can have if (APlayerData[playerid][PlayerMoney] > 0) APlayerData[playerid][PlayerMoney] = 0; // Limit the cash that the player can have below 0 if (APlayerData[playerid][PlayerMoney] < -0) APlayerData[playerid][PlayerMoney] = -0;[/pawn] Iar acum imi da banii pe drifturi dar nu imi mai salveaza banii cand se deconecteaza playerul respectiv (banii sunt pe 0 la conectare, nu se salveaza)
-
obiectele adaugate alea 0.3c
-
SSCANF.SO A FOST PROBLEMA
-
Deci can vreau sapornesc serverul imi apare asa: [16:10:41] sscanf error: System not initialised. [16:10:41] sscanf error: System not initialised. imi apar cam vreo 50 de dintr-astea ce sa fac?
-
Probabil ai depasit limita obiectelor cu streamer (ai obiecte multe?) sau ai obiecte si cu streamer si cu CreateObject trebuie sa fie toate pe streamer