#include <a_samp> #define MAX_RENT_VEHICLES 50 //coloque aqui o mбximo de veнclos que pode colocar pra alugar forward VerificarVeiculos(); new RentVehicle[MAX_RENT_VEHICLES]; new VehiclePrice[MAX_VEHICLES]; new VehicleOwner[MAX_VEHICLES][MAX_PLAYER_NAME]; new VehicleName[MAX_VEHICLES][MAX_PLAYER_NAME]; new rentid; stock AddRentableVehicle(modelid, Float:x, Float:y, Float:z, Float:angle, color1, color2, price, name[]) { RentVehicle[rentid] = CreateVehicle(modelid, x, y, z, angle, color1, color2, 6000); if(!RentVehicle[rentid] || !price || !name[0]) return -1; VehiclePrice[RentVehicle[rentid]] = price; strmid(VehicleName[RentVehicle[rentid]], name, 0, strlen(name)); return rentid++; } stock bool:IsVehicleRentable(vehicleid) { for(new i; i < MAX_RENT_VEHICLES; i++) if(RentVehicle[i] == vehicleid) return true; return false; } stock SetVehicleOwner(vehicleid, owner[]) { if(!IsVehicleRentable(vehicleid)) return 0; strmid(VehicleOwner[vehicleid], owner, 0, strlen(owner)); return 1; } stock GetVehicleOwner(vehicleid, destine[]) { if(!IsVehicleRentable(vehicleid) || !VehicleOwner[vehicleid][0]) { format(destine, 8, "ninguem"); return 0; } format(destine, strlen(VehicleOwner[vehicleid]), "%s", VehicleOwner[vehicleid]); return 1; } stock bool:IsVehicleOwned(vehicleid) { return !VehicleOwner[vehicleid][0] || !IsVehicleRentable(vehicleid) ? false : true; } stock bool:IsPlayerVehicleOwner(playerid, vehicleid) { new pname[MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof pname); return !strcmp(VehicleOwner[vehicleid], pname, false); } public OnFilterScriptInit() { printf("FS de Concessionaria [www.HomeHots.blogspot.com]"); AddRentableVehicle(555, 2149.5, -1134.0, 25.4, 270.15, 1, 1, 20000, "este Carro"); AddRentableVehicle(411, 2149.0, -1136.1, 25.4, 270.15, 1, 1, 50000, "este Carro"); //e assim por diante... SetTimer("VerificarVeiculos", 5000, 1); return 1; } public OnPlayerStateChange(playerid, newstate, oldstate) { if(newstate == PLAYER_STATE_DRIVER) { new vehicleid = GetPlayerVehicleID(playerid); if(IsVehicleRentable(vehicleid)) { new string[128], owner[MAX_PLAYER_NAME]; TogglePlayerControllable(playerid, false); GetVehicleOwner(vehicleid, owner); if(!IsVehicleOwned(vehicleid)) { format(string, sizeof string, "Compre %s por apenas %d reais! Digite: /comprar", VehicleName[vehicleid], VehiclePrice[vehicleid]); } else if(IsPlayerVehicleOwner(playerid, vehicleid)) { TogglePlayerControllable(playerid, true); format(string, sizeof string, "|__________| Bem vindo a seu veнculo %s. |__________|", owner); } else { format(string, sizeof string, "%s, йste carro nгo й seu, ele pertence а %s.", VehicleName[vehicleid], owner); } SendClientMessage(playerid, 0xFFFFFFAA, string); } } return 1; } public VerificarVeiculos() { for(new i; i < MAX_VEHICLES; i++) { if(GetVehicleModel(i) < 400 && GetVehicleModel(i) > 612 && IsVehicleRentable(i)) { for(new j = i; j < MAX_RENT_VEHICLES; j++) { VehiclePrice[j] = VehiclePrice[j+1]; VehicleName[j] = VehicleName[j+1]; VehicleOwner[j] = VehicleOwner[j+1]; } rentid--; } } } public OnPlayerCommandText(playerid, cmdtext[]) { if(!strcmp(cmdtext, "/comprar", true)) { new vehicleid = GetPlayerVehicleID(playerid); if(!vehicleid) { SendClientMessage(playerid, 0xFF0000AA, "Vб para a concessionaria e compre seu veнculo"); return 1; } new string[128]; if(!IsVehicleOwned(vehicleid)) { if(GetPlayerMoney(playerid) >= VehiclePrice[vehicleid]) { new pname[MAX_PLAYER_NAME]; GetPlayerName(playerid, pname, sizeof pname); SetVehicleOwner(vehicleid, pname); GivePlayerMoney(playerid, -VehiclePrice[vehicleid]); TogglePlayerControllable(playerid, true); format(string, sizeof string, "Agora %s й seu!", VehicleName[vehicleid]); SendClientMessage(playerid, 0xFFFFFFAA, string); } else { format(string, sizeof string, "Vocк nгo tem %d R$!", VehiclePrice[vehicleid]); SendClientMessage(playerid, 0xFF0000AA, string); return 1; } } else if(IsPlayerVehicleOwner(playerid, vehicleid)) { format(string, sizeof string, "Vocк jб й dono d%s!", VehicleName[vehicleid]); SendClientMessage(playerid, 0xFF0000AA, string); } else { new owner[MAX_PLAYER_NAME]; GetVehicleOwner(vehicleid, owner); format(string, sizeof string, "%, este carro pertence а %s.", VehicleName[vehicleid], owner); SendClientMessage(playerid, 0xFF0000AA, string); } return 1; } return 0; } public OnPlayerKeyStateChange(playerid, newkeys, oldkeys) { if(newkeys == 16 && GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { if(IsVehicleRentable(GetPlayerVehicleID(playerid))) { TogglePlayerControllable(playerid, true); RemovePlayerFromVehicle(playerid); } } return 1; }
moeda segundaria й coisa de noob... usa um anti money hack... tem varios aki na area BR |
Nгo tem como vocк colocar moeda secundбria em um filterscript e em um gamemode e funcionarem juntas.
Mas, vocк pode optar por esta include: PDS - Protioso Dinheiro Secundбrio Troque o dinheiro do Gamemode e do Filterscript que irгo funcionar simultaneamente. creio eu Discordo... Nгo acho moeda secundбria coisa de n00b, acho muito melhor que a moeda original do jogo pois й 100% mais segura, sу nгo gosto de textdraw separado do dinheiro do jogo, por isso prefiro a moeda secundбria no prуprio HUD do jogo. Off: Praticamente todo tуpico que eu respondo estou colocando include do Protioso LOL. nгo sou gay |
pra min vc й noob... se vc criar um anti money hack vc nгo tera problemas com a moeda do jogo e podera usar ela em varios FS sem editar a moeda do FS fica se matando com moeda segundaria enquanto meu anti money hack ta banindo os hackers! |