Jump to content

Vulcan1996

Membru
  • Posts

    1
  • Joined

  • Last visited

    Never

Vulcan1996's Achievements

Newbie

Newbie (1/14)

  • First Post
  • Conversation Starter
  • Week One Done
  • One Month Later
  • One Year In

Recent Badges

0

Reputation

  1. Ajutatima varog nu siu cum sa adaug organizatii in acest fs [pawn]/* DYNAMIC ORGANIZATIONS FILTERSCRIPT SCRIPTAT DE [s.U.S]Vyper BY [s.U.S]Vyper COPYRIGHT © 2013 RELEASE DATE: 19/03/2013 PLEASE REPORT ALL BUGS (If found) @ SA-MP FORUMS */ #include <a_samp> #include <Dini> #include <sscanf2> #include <zcmd> //DEFINIII PENRU CULORI #define COLOR_GREY 0xAFAFAFAA #define COLOR_WHITE 0xFFFFFFAA #define COLOR_ORANGE 0xFF9900AA #define COLOR_YELLOW 0xFFFF00AA #define COLOR_RED 0xFF0000FF // #pragma tabsize 0 #define WAGE 150 //Define the wage here #define MAX_ORGS 10 //Change only if you need more than 10 orgs #define MAX_ORG_WEAPONS 3 //Max amount of weapons for orgs #define ORG_NAME_LENGTH 32 //Max name length for organization and it's leader #define MAX_ORG_VEHICLES 10 #define SAVE_LEADERS_TO "org_leaders.txt" #define SPAWN_WITH_ORG_SKIN //Comment this line IF YOU DON'T WANT THE PLAYERS SPAWN WITH ORGANIZATION SKIN! forward PayDay(); new OrgsCount; enum Orgs { Name[32], Leader[24], Skin, Float:X, Float:Y, Float:Z, Weapons[3], Ammo[3], Vehicles[MAX_ORG_VEHICLES], VehiclesCreated, }; new Organization[MAX_ORGS][Orgs]; new PlayerOrg[MAX_PLAYERS]; new PlayerLeader[MAX_PLAYERS]; new PlayerRank[MAX_PLAYERS][28]; new Requesting[MAX_PLAYERS]; new CollectedWage[MAX_PLAYERS]; public OnFilterScriptInit() { print("\n-------------------------------------------------"); print("==Dynamic organization filterscript by [s.U.S]Vyper"); print("==© 2013== "); print("-------------------------------------------------\n"); SetTimer("PayDay",1500000,1); //PayDay every 25 minutes //Let's create your organizations here //ALWAYS add your organization BELOW the old one, otherwise the IDs will change = leaders mix up ! ! ! ! ! //CreateOrganization([32], skin, Float:x,Float:y,Float:z, weapon1,ammo1,weapon2,ammo2,weapon3,ammo3) //*/ //Create here // //Create org vehicles AFTER you create the organization, you can add them here: //Syntax: CreateOrgVehicle(org[], model, Float:x,Float:y,Float:z,Float:rot, clr1,clr2) //Create here LoadLeaders(); return 1; } public PayDay() { for (new i=0;i<MAX_PLAYERS;i++) { if (IsPlayerConnected(i)) { if (PlayerOrg != 0) { new string[80]; format(string, sizeof(string),"Ai cistigat din org dvs.. ($%d)", WAGE); SendClientMessage(i, COLOR_GREY, string); CollectedWage+=WAGE; SavePlayerOrgInfo(i); } } } } public OnFilterScriptExit() { print("Va mulumim pentru utilizarea [s.U.S]Dynamic organizations "); print("© 2011"); SaveLeaders(); return 1; } public OnPlayerConnect(playerid) { PlayerOrg[playerid] = 0; //Resetarea org jucator PlayerLeader[playerid] = 0; //Resetarea org jucãtor lider de stare Requesting[playerid] = 0; CollectedWage[playerid] = 0; PlayerRank[playerid] = "Nici unul"; if(!dini_Exists(PlayerPath(playerid))) // Crearea fisierului (verifica stocul PlayerPath (playerid)) { SendClientMessage(playerid, COLOR_ORANGE,"As this is your first visit here, we decided to tell you that this server is using Dynamic organization- script by Jakku"); dini_Create(PlayerPath(playerid)); } else { LoadPlayerOrgInfo(playerid); } return 1; } public OnPlayerDisconnect(playerid, reason) { SavePlayerOrgInfo(playerid); return 1; } public OnPlayerSpawn(playerid) { if (PlayerOrg[playerid] != 0) { if (GetPVarInt(playerid, "Dead") == 0) { new string[160]; new leader[4]; if (PlayerLeader[playerid]) leader = "Yes"; else leader = "No"; format(string,sizeof(string),"Organization: {5CB3FF}%s {FFFFFF}|| Leader: {5CB3FF}%s {FFFFFF}|| Rank: {5CB3FF}%s", GetOrgName(PlayerOrg[playerid]), leader, PlayerRank[playerid]); SendClientMessage(playerid, COLOR_WHITE, string); } GiveOrgFeatures(playerid); } SetPVarInt(playerid, "Dead", 0); return 1; } public OnPlayerDeath(playerid, killerid, reason) { SetPVarInt(playerid, "Dead", 1); } public OnPlayerCommandText(playerid, cmdtext[]) { return 0; } public OnPlayerEnterCheckpoint(playerid) { return 1; } public OnPlayerPickUpPickup(playerid, pickupid) { return 1; } public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]) { if (dialogid == 755) { if (response) { new string[120]; format(string,sizeof(string),"Ati demisionat de la %s", Organization[PlayerOrg[playerid]][Name]); SendClientMessage(playerid, COLOR_YELLOW, string); format(string,sizeof(string),"**%s a demisionat de la %s", PlayerName(playerid), Organization[PlayerOrg[playerid]][Name]); SendClientMessageToAllEx(playerid, COLOR_GREY, string); new none[24]; format(none,sizeof(none),"Nici unul"); Organization[PlayerOrg[playerid]][Leader] = none; PlayerOrg[playerid] = 0; PlayerLeader[playerid] = 0; SavePlayerOrgInfo(playerid); SetPlayerSkin(playerid, 0); ResetPlayerWeapons(playerid); } else { SendClientMessage(playerid, COLOR_YELLOW, "Demisia anulat"); } } if (dialogid == 756 && response) { switch (listitem) { case 0: { for (new i=1;i<OrgsCount+1;i++) { if (IsPlayerInRangeOfPoint(playerid, 3.0, Organization[X], Organization[Y],Organization[Z])) { new string[140]; format(string,sizeof(string),"{5CB3FF}Organizatia: {FFFFFF}%s\n{5CB3FF}Lider: {FFFFFF}%s", GetOrgName(i), Organization[Leader]); ShowPlayerDialog(playerid, 757, DIALOG_STYLE_MSGBOX, "Organizatia",string,"Inchide",""); } } } case 1: { if (CollectedWage[playerid] <= 0) return SendClientMessage(playerid, COLOR_RED, "Nu aveti nici un salariu castigat inca!"); new string[80]; format(string,sizeof(string),"Ati colectat $%d", CollectedWage[playerid]); SendClientMessage(playerid, COLOR_YELLOW, string); GivePlayerMoney(playerid, CollectedWage[playerid]); CollectedWage[playerid] = 0; SavePlayerOrgInfo(playerid); } } } return 1; } public OnPlayerStateChange(playerid,newstate,oldstate) { if (newstate == PLAYER_STATE_DRIVER) { for (new i=1;i<OrgsCount+1;i++) { for (new a=0;a<MAX_ORG_VEHICLES;a++) { new vehicleid = GetPlayerVehicleID(playerid); if (vehicleid == Organization[Vehicles][a] && PlayerOrg[playerid] != i) { new string[100]; format(string,sizeof(string),"Acest vehicul apartine lui %s. Tu nu esti in aceasta organiatie ca sal poti folosi.", GetOrgName(i)); SendClientMessage(playerid, COLOR_RED, string); RemovePlayerFromVehicle(playerid); } } } } return 1; } stock PlayerName(playerid) { new name[24]; GetPlayerName(playerid, name, 24); return name; } stock CreateOrganization(name[32], skin, Float:x,Float:y,Float:z, wp1 = 0,a1 = 0,wp2 = 0,a2 = 0,wp3 = 0,a3 = 0) { OrgsCount++; if (OrgsCount >= MAX_ORGS) return printf("Ati depasit MAX_ORGS-defini! avortat"); new id = OrgsCount; Organization[id][Name] = name; Organization[id][skin] = skin; Organization[id][X] = x; Organization[id][Y] = y; Organization[id][Z] = z; Organization[id][Weapons][0] = wp1; Organization[id][Ammo][0] = a1; Organization[id][Weapons][1] = wp2; Organization[id][Ammo][1] = a2; Organization[id][Weapons][2] = wp3; Organization[id][Ammo][2] = a3; printf("Organizatie creatã: ID: %d || Nume: %s",id, name); new string[100]; format(string,sizeof(string),"{5CB3FF}HQ:{FFFFFF} %s\nScrie {5CB3FF}/org{FFFFFF} pentru mai multe informatii!",name); Create3DTextLabel(string, 0x008080FF, x, y, z, 25.0, 0); return 1; } stock PlayerPath(playerid) { new path[45]; format(path, sizeof(path),"Orginfo_%s.ini", PlayerName(playerid)); return path; } stock SaveLeaders() { new part[40]; if (!dini_Exists(SAVE_LEADERS_TO)) { dini_Create(SAVE_LEADERS_TO); } for (new i=1;i<OrgsCount+1;i++) { format(part,sizeof(part),"%d", i); dini_Set(SAVE_LEADERS_TO,part,Organization[Leader]); } } stock LoadLeaders() { new part[24]; new part2[40]; if (!dini_Exists(SAVE_LEADERS_TO)) { for (new i=1;i<OrgsCount+1;i++) { dini_Create(SAVE_LEADERS_TO); format(part,sizeof(part),"Nici unul"); Organization[Leader] = part; SaveLeaders(); } return 1; } for (new i=1;i<OrgsCount+1;i++) { format(part2,sizeof(part2),"%d", i); format(part,sizeof(part),dini_Get(SAVE_LEADERS_TO,part2)); Organization[Leader] = part; } return 1; } stock SavePlayerOrgInfo(playerid) { if (!dini_Exists(PlayerPath(playerid))) { dini_Create(PlayerPath(playerid)); } //dini_Set(savef,"ContactName1",ContactNames[0][playerid]); dini_Set(PlayerPath(playerid),"Org",Organization[PlayerOrg[playerid]][Name]); dini_Set(PlayerPath(playerid),"Rank",PlayerRank[playerid]); dini_IntSet(PlayerPath(playerid),"SalariiColectate",CollectedWage[playerid]); } stock LoadPlayerOrgInfo(playerid) { new string[45]; format(string,sizeof(string),"%s",dini_Get(PlayerPath(playerid),"Org")); PlayerOrg[playerid] = GetOrgID(string); new string2[28]; format(string2,sizeof(string2),"%s",dini_Get(PlayerPath(playerid),"Rank")); PlayerRank[playerid] = string2; CollectedWage[playerid] = dini_Int(PlayerPath(playerid), "SalariiColectate"); if (strcmp(Organization[PlayerOrg[playerid]][Leader], PlayerName(playerid),true) == 0) { PlayerLeader[playerid] = 1; } } stock GiveOrgFeatures(playerid) { new org = PlayerOrg[playerid]; if (!org) return 1; GivePlayerWeapon(playerid, Organization[org][Weapons][0],Organization[org][Ammo][0]); GivePlayerWeapon(playerid, Organization[org][Weapons][1],Organization[org][Ammo][1]); GivePlayerWeapon(playerid, Organization[org][Weapons][2],Organization[org][Ammo][2]); #if defined SPAWN_WITH_ORG_SKIN SetPlayerSkin(playerid, Organization[org][skin]); #endif return 1; } stock GetOrgName(orgid) { new name[32]; format(name,sizeof(name),"%s",Organization[orgid][Name]); if (orgid == 0) format(name,sizeof(name),"Nici unul"); return name; } stock SendClientMessageToAllEx(exception, clr, const message[]) { for(new i; i<MAX_PLAYERS; i++) { if(IsPlayerConnected(i)) { if(i != exception) { SendClientMessage(i, clr, message); } } } } stock ResetPlayerOrg(playerid) { if (PlayerOrg[playerid] == 0) return 1; printf("%s a fost eliminat din %s", GetOrgName(PlayerOrg[playerid])); SetPlayerSkin(playerid, 0); ResetPlayerWeapons(playerid); PlayerOrg[playerid] = 0; Requesting[playerid] = 0; return 1; } CMD:resign(playerid, params[]) { #pragma unused params if (PlayerOrg[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "Tu nu esti intr-o organizatie"); ShowPlayerDialog(playerid, 755, DIALOG_STYLE_MSGBOX, "{FFFFFF}Sunteti sigur ca doriti sa demisionezi?","{FFFFFF}Va rog {00FF00}confirmati {FFFFFF}cerere dumneavoastra.","Cerere","Inchide"); return 1; } CMD:org(playerid, params[]) { #pragma unused params for (new i=1;i<OrgsCount+1;i++) { if (IsPlayerInRangeOfPoint(playerid, 3.0, Organization[X],Organization[Y],Organization[Z])) { new string[35]; new string2[80]; format(string, sizeof(string),"%s", GetOrgName(i)); format(string2, sizeof(string2),"Informatii"); if (PlayerOrg[playerid] == i) format(string2, sizeof(string2),"Informatii\nSalariiColectate"); ShowPlayerDialog(playerid, 756, DIALOG_STYLE_LIST, string,string2,"Ok","Inchide"); return 1; } } SendClientMessage(playerid, COLOR_RED,"Tu nu esti destul de aproape de vrio organizatie!"); return 1; } CMD:setmember(playerid, params[]) { if (!PlayerLeader[playerid]) return SendClientMessage(playerid,COLOR_RED,"Tu nu esti lider al unei organizatii."); new ID; if (sscanf(params, "u", ID)) return SendClientMessage(playerid,COLOR_WHITE,"Scrie: /setmember [playerid]"); if (!IsPlayerConnected(ID) || ID == playerid) return 1; new org = PlayerOrg[playerid]; if (PlayerOrg[iD]) return SendClientMessage(playerid, COLOR_RED,"Acel jucator deja apartine unei organizatii."); if (Requesting[iD] != org) return SendClientMessage(playerid, COLOR_RED,"Acel jucator nu se cere sa se alature organizatiei dumneavoastra!"); new string[120]; format(string,sizeof(string),"%s v-a stabilit ca un membru al %s", PlayerName(playerid), GetOrgName(org)); SendClientMessage(ID, COLOR_YELLOW, string); format(string,sizeof(string),"Ati setat %s un membru al %s", PlayerName(ID), GetOrgName(org)); SendClientMessage(playerid, COLOR_YELLOW, string); PlayerOrg[iD] = org; GiveOrgFeatures(ID); Requesting[iD] = 0; return 1; } CMD:setleader(playerid, params[]) { if (!IsPlayerAdmin(playerid)) return SendClientMessage(playerid,COLOR_RED,"Trebuie sã fii logat în RCON pentru a folosi aceasta comanda!"); new ID,orgid; if (sscanf(params, "ud", ID,orgid)) return SendClientMessage(playerid,COLOR_WHITE,"Scrie: /setleader [playerid] [orgid]"); if (!IsPlayerConnected(ID)) return 1; if (PlayerOrg[iD]) return SendClientMessage(playerid, COLOR_RED,"Acel jucator deja apartine unei organizatii"); new string[140]; format(string,sizeof(string),"Adminul %s te-a stabilit ca lider al %s", PlayerName(playerid), GetOrgName(orgid)); SendClientMessage(ID, COLOR_YELLOW, string); format(string,sizeof(string),"Ati setat pe %s ca lider %s", PlayerName(ID), GetOrgName(orgid)); SendClientMessage(playerid, COLOR_YELLOW, string); PlayerOrg[iD] = orgid; PlayerLeader[iD] = 1; Organization[orgid][Leader] = PlayerName(ID); SaveLeaders(); SavePlayerOrgInfo(ID); GiveOrgFeatures(ID); return 1; } CMD:setrank(playerid, params[]) { if (!PlayerLeader[playerid]) return SendClientMessage(playerid,COLOR_RED,"Tu nu esti lider al unei organizatii."); new ID, rank[28]; if (sscanf(params, "us[28]", ID, rank)) return SendClientMessage(playerid,COLOR_WHITE,"Scrie: /setrank [playerid] [rank]"); if (strlen(rank) > 28) return SendClientMessage(playerid, COLOR_RED,"Lungimea maxima este de rang 28 de caractere!"); if (!IsPlayerConnected(ID)) return 1; new org = PlayerOrg[playerid]; if (PlayerOrg[iD] != org) return SendClientMessage(playerid, COLOR_RED,"Acest player nu apartine organizatiei dumneavoastra"); new string[120]; format(string,sizeof(string),"Liderul %s tia dat un rang: '%s'", PlayerName(playerid), rank); SendClientMessage(ID, COLOR_YELLOW, string); format(string,sizeof(string),"Ati dat un rang lui %s (%s)", PlayerName(ID), rank); SendClientMessage(playerid, COLOR_YELLOW, string); PlayerRank[iD] = rank; SavePlayerOrgInfo(ID); return 1; } CMD:kickmember(playerid, params[]) { if (!PlayerLeader[playerid]) return SendClientMessage(playerid,COLOR_RED,"Tu nu esti lider al unei organizatii."); new ID; if (sscanf(params, "u", ID)) return SendClientMessage(playerid,COLOR_WHITE,"Scrie: /kickmember [playerid]"); if (!IsPlayerConnected(ID) || ID == playerid) return 1; new org = PlayerOrg[playerid]; if (PlayerOrg[iD] != org) return SendClientMessage(playerid, COLOR_RED,"Acest player nu apartine organizatiei dumneavoastra"); new string[130]; format(string,sizeof(string),"%s a fost dat afara de catre %s", PlayerName(playerid), GetOrgName(org)); SendClientMessage(ID, COLOR_YELLOW, string); format(string,sizeof(string),"Ai fost dat afara %s din %s", PlayerName(ID), GetOrgName(org)); SendClientMessage(playerid, COLOR_YELLOW, string); ResetPlayerOrg(ID); return 1; } CMD:request(playerid, params[]) { if (PlayerOrg[playerid] > 0) return SendClientMessage(playerid, COLOR_RED,"Deja apartii unei organizatii!"); if (Requesting[playerid] > 0) return SendClientMessage(playerid, COLOR_RED,"Sunteti deja aderati la o organizatie!"); new ID; if (sscanf(params, "d", ID)) return SendClientMessage(playerid,COLOR_WHITE,"Scrie: /request [org id]"); if (ID < 1 || ID > OrgsCount) return SendClientMessage(playerid,COLOR_RED,"Aceasta organizaie nu exista! Scrie /orglist pentru a vedea organizatiile."); new string[120]; format(string,sizeof(string),"%s cere sa se alature %s", PlayerName(playerid), GetOrgName(ID)); SendClientMessageToAllEx(playerid, COLOR_GREY, string); format(string,sizeof(string),"Cererea ta la %s a fost trimisa!", GetOrgName(ID)); SendClientMessage(playerid, COLOR_YELLOW, string); Requesting[playerid] = ID; return 1; } CMD:orglist(playerid, params[]) { #pragma unused params new string[90]; if (OrgsCount == 0) return SendClientMessage(playerid, COLOR_RED,"Ne pare rau, nu exista organizatii create!"); SendClientMessage(playerid, COLOR_WHITE, "Organizatii Curente:"); for (new i=1;i<OrgsCount+1;i++) { format(string,sizeof(string),"ID: %d || Nume: %s || Lider: %s", i, GetOrgName(i), Organization[Leader]); SendClientMessage(playerid, COLOR_YELLOW, string); } return 1; } CMD:members(playerid, params[]) { #pragma unused params if (!PlayerLeader[playerid]) return SendClientMessage(playerid, COLOR_RED,"Tu nu esti lider al unei organizatii"); new string[60]; new count = 0; SendClientMessage(playerid, COLOR_YELLOW,"Membrii Online:"); for (new i=0;i<MAX_PLAYERS;i++) { if (IsPlayerConnected(i)) { if (PlayerOrg == PlayerOrg[playerid] && i != playerid) { format(string,sizeof(string),"%s - %s", PlayerName(i), PlayerRank); SendClientMessage(playerid, COLOR_WHITE, string); count++; } } } if (count == 0) { SendClientMessage(playerid, COLOR_YELLOW,"Nici unul dintre membrii dumneavoastra nu sunt online"); } else { format(string,sizeof(string),"%d membrii online.", count); SendClientMessage(playerid, COLOR_WHITE, string); } return 1; } CMD:myorg(playerid, params[]) { #pragma unused params if (PlayerOrg[playerid] == 0) return SendClientMessage(playerid, COLOR_RED,"Nu sunteti un membru al unei organizatii"); new string[140]; format(string,sizeof(string),"{5CB3FF}Organizatie: {FFFFFF}%s\n{5CB3FF}Lider: {FFFFFF}%s", GetOrgName(PlayerOrg[playerid]), Organization[PlayerOrg[playerid]][Leader]); ShowPlayerDialog(playerid, 757, DIALOG_STYLE_MSGBOX, "Organizatia mea", string, "Ok", ""); return 1; } CMD:orghelp(playerid, params[]) { #pragma unused params SendClientMessage(playerid, COLOR_YELLOW, "Dynamic Organizations by [s.U.S]Vyper"); SendClientMessage(playerid, COLOR_WHITE, "/orglist || /myorg || /request || /resign || /org || /setleader"); if (PlayerLeader[playerid]) SendClientMessage(playerid, COLOR_WHITE,"Comenzi pentru lideri: /setmember || /kickmember || /setrank || /members"); return 1; } stock GetOrgID(name[]) { if (strlen(name) <= 0) return 0; for (new i=1;i<OrgsCount+1;i++) { if (strcmp(name,Organization[Name],true) == 0) return i; } return 0; } stock CreateOrgVehicle(org[], model, Float:x,Float:y,Float:z,Float:rot, clr1,clr2) { new orgid = GetOrgID(org); new freeslot = Organization[orgid][VehiclesCreated]; if (freeslot >= MAX_ORG_VEHICLES-1) return printf("%s nu poate manipula mai multe vehicule! Anulat", org); Organization[orgid][Vehicles][freeslot] = CreateVehicle(model, x,y,z,rot,clr1,clr2,900); printf("%d, %d, %s", model, freeslot, org); Organization[orgid][VehiclesCreated]++; return 1; } [/pawn]
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.