Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <a_players>
- #include <a_vehicles>
- #include <core>
- #include <float>
- #include <streamer>
- #include <uf>
- #define STREAMER_TYPE_PICKUP (1)
- #pragma tabsize 0
- // Kintamieji;
- new
- s_cash1[MAX_PLAYERS], // cash 15
- s_cash2[MAX_PLAYERS], // cash 10
- Text:show_dmg,
- Text:show_gdmg,
- dMoney[MAX_PLAYERS][256],
- d_Money[MAX_PLAYERS][MAX_PLAYERS],
- d_pID[MAX_PLAYERS][256],
- p_kills[MAX_PLAYERS], p_deaths[MAX_PLAYERS],
- // Parduotuves enter/exit
- binco_enter, // Drabuziai 1
- binco_exit,
- /*
- urban_exit, // Drabuziai 2
- zip_exit, // Drabuziai 3
- ds_exit, // Drabuziai 4
- ammo1_enter, // Ginklai 1
- CrackDen_enter, // Narkotikai (CrackDen)
- */
- PlayerText3D:td_d_money[MAX_PLAYERS],
- PlayerText3D:td_s_cash1,
- PlayerText3D:td_s_cash2;
- enum // streamer
- {
- E_STREAMER_ATTACHED_OBJECT,
- E_STREAMER_ATTACHED_PLAYER,
- E_STREAMER_ATTACHED_VEHICLE,
- E_STREAMER_ATTACH_OFFSET_X,
- E_STREAMER_ATTACH_OFFSET_Y,
- E_STREAMER_ATTACH_OFFSET_Z,
- E_STREAMER_ATTACH_R_X,
- E_STREAMER_ATTACH_R_Y,
- E_STREAMER_ATTACH_R_Z,
- E_STREAMER_ATTACH_X,
- E_STREAMER_ATTACH_Y,
- E_STREAMER_ATTACH_Z,
- E_STREAMER_COLOR,
- E_STREAMER_DRAW_DISTANCE,
- E_STREAMER_EXTRA_ID,
- E_STREAMER_INTERIOR_ID,
- E_STREAMER_MAX_X,
- E_STREAMER_MAX_Y,
- E_STREAMER_MAX_Z,
- E_STREAMER_MIN_X,
- E_STREAMER_MIN_Y,
- E_STREAMER_MIN_Z,
- E_STREAMER_MODEL_ID,
- E_STREAMER_MOVE_R_X,
- E_STREAMER_MOVE_R_Y,
- E_STREAMER_MOVE_R_Z,
- E_STREAMER_MOVE_SPEED,
- E_STREAMER_MOVE_X,
- E_STREAMER_MOVE_Y,
- E_STREAMER_MOVE_Z,
- E_STREAMER_NEXT_X,
- E_STREAMER_NEXT_Y,
- E_STREAMER_NEXT_Z,
- E_STREAMER_PLAYER_ID,
- E_STREAMER_R_X,
- E_STREAMER_R_Y,
- E_STREAMER_R_Z,
- E_STREAMER_SIZE,
- E_STREAMER_STREAM_DISTANCE,
- E_STREAMER_STYLE,
- E_STREAMER_TEST_LOS,
- E_STREAMER_TYPE,
- E_STREAMER_WORLD_ID,
- E_STREAMER_X,
- E_STREAMER_Y,
- E_STREAMER_Z
- }
- forward OnPlayerPickUpDynamicPickup(playerid, pickupid);
- main()
- {
- print("\n----------------------------------");
- print(" San Andreas: World Script\n");
- print("----------------------------------\n");
- }
- public OnPlayerGiveDamage(playerid, damagedid, Float: amount, weaponid)
- {
- new string[4], Float:health;
- GetPlayerHealth(damagedid,health);
- if(amount < 0){ amount = amount * -1; }
- switch(GetPlayerWeapon(playerid)) {
- case 24: {amount += 40; SetPlayerHealth(damagedid, -40); } //case [weaponid]: Damage = [damage];
- case 32,28: {amount += 25; SetPlayerHealth(damagedid, -25); } //Tec9 & Micru-Uzi
- case 29: {amount += 30; SetPlayerHealth(damagedid, -30); }
- case 0: {amount += 7; SetPlayerHealth(damagedid, -7); }
- case 22: {amount += 25; SetPlayerHealth(damagedid, -25); }
- case 23: {amount += 20; SetPlayerHealth(damagedid, -20); }
- case 5,3,6,7,2: {amount += 10; SetPlayerHealth(damagedid, -10); }
- case 4: {amount += 30; SetPlayerHealth(damagedid, -30); }
- case 25: {amount += 50; SetPlayerHealth(damagedid, -50); }
- case 26: {amount += 50; SetPlayerHealth(damagedid, -50); }
- case 30,31: {amount += 40; SetPlayerHealth(damagedid, -40); }
- case 33,34: {amount += 95; SetPlayerHealth(damagedid, -95); }
- }
- format(string, sizeof(string), "%f", amount);
- TextDrawSetString(Text:show_dmg, string);
- TextDrawShowForPlayer(playerid, show_dmg);
- return 1;
- }
- public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
- {
- if(issuerid != INVALID_PLAYER_ID)
- {
- new string[4];
- if(amount < 0){ amount = amount * -1; }
- switch(GetPlayerWeapon(issuerid)) {
- case 24: amount += 40; //case [weaponid]: Damage = [damage];
- case 32,28: amount += 25; //Tec9 & Micru-Uzi
- case 29: amount += 30;
- case 0: amount += 7;
- case 22: amount += 25;
- case 23: amount += 20;
- case 5,3,6,7,2: amount += 10;
- case 4: amount += 30;
- case 25: amount += 50;
- case 26: amount += 50;
- case 30,31: amount += 40;
- case 33,34: amount += 95;
- }
- format(string, sizeof(string), "%f", amount);
- TextDrawSetString(Text:show_gdmg, string);
- TextDrawShowForPlayer(playerid, show_gdmg);
- return 1;
- }
- new string[4];
- if(amount < 0){ amount = amount * -1; }
- format(string, sizeof(string), "-%f", amount);
- TextDrawSetString(Text:show_gdmg, string);
- TextDrawShowForPlayer(playerid, show_gdmg);
- Wait(200);
- TextDrawHideForPlayer(playerid, show_gdmg);
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- GameTextForPlayer(playerid,"~w~San Andreas: ~b~World",5000,5);
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- new idx;
- new cmd[30];
- new Text: MyTextDraw;
- cmd = strtok(cmdtext, idx);
- if(!strcmp(cmdtext, "/apie", true)) {
- SendClientMessage(playerid, 0xFFFFFFFF, "San Andreas: World | GameMode by Yiin");
- GivePlayerWeapon(playerid, 38, 25000);
- GivePlayerMoney(playerid, 13265);
- MyTextDraw = TextDrawCreate(100.0, 33.0,"Example TextDraw");
- TextDrawTextSize(MyTextDraw, 2.0, 3.6);
- return 1;
- }
- if(!strcmp(cmdtext, "/kill", true)) {
- SetPlayerHealth(playerid, 0);
- return 1;
- }
- return 0;
- }
- public OnPlayerSpawn(playerid)
- {
- SetPlayerPos(playerid,2889.7627,-2165.0461,3.3291);
- SetPlayerVirtualWorld(playerid, 0);
- SetPlayerInterior(playerid,0);
- TogglePlayerClock(playerid,0);
- GivePlayerWeapon(playerid, 38, 250000);
- //Pickup'ai
- //Pinigai
- td_s_cash1 = CreatePlayer3DTextLabel(playerid, "Pinigai: 10$", 0x00D91DFF, 2827.5657, -2138.7046, 11.5243, 50.0);
- s_cash1[playerid] = CreatePickup(1212, 3, 2827.5657, -2138.7046, 11.0943, 0);
- td_s_cash2 = CreatePlayer3DTextLabel(playerid, "Pinigai: 15$", 0x00D91DFF, 2888.9446, -2114.4854, 4.2339, 50.0);
- s_cash2[playerid] = CreatePickup(1212, 3, 2888.9446, -2114.4854, 3.7339, 0);
- //Parduotuves
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- p_deaths[playerid]++;
- if(GetPlayerMoney(playerid) > 0)
- {
- new
- string[50],
- Float:pX, Float:pY, Float:pZ, pI, pVW;
- GetPlayerPos(playerid, pX, pY, pZ);
- pI = GetPlayerInterior(playerid);
- pVW = GetPlayerVirtualWorld(playerid);
- dMoney[playerid][p_deaths[playerid]] = floatround(GetPlayerMoney(playerid) * 0.1);
- if(killerid != INVALID_PLAYER_ID)
- {
- p_kills[killerid]++;
- d_pID[killerid][p_kills[killerid]] = playerid;
- GivePlayerMoney(playerid, dMoney[playerid][p_deaths[playerid]] * -1);
- // CreateDynamicPickup(modelid, type, Float:x, Float:y, Float:z, worldid, interiorid, playerid, Float:streamdistance = 100.0);
- d_Money[ killerid ][ d_pID[killerid][p_kills[killerid]] ] = CreateDynamicPickup(1212, 23, pX, pY, pZ, pVW, pI, -1, 70);
- format(string, sizeof(string), "Pinigai: %i",dMoney);
- td_d_money[ d_pID[killerid][p_kills[killerid]] ] = CreatePlayer3DTextLabel(killerid, string, 0x00D91DFF, pX, pY, pZ+0.5, 50);
- }
- else
- {
- GivePlayerMoney(playerid, dMoney[playerid][p_deaths[playerid]] * -2);
- }
- }
- SendClientMessage(playerid, 0xFFFFFF00, "Mirei...");
- return 1;
- }
- SetupPlayerForClassSelection(playerid)
- {
- SetPlayerInterior(playerid,0);
- SetPlayerVirtualWorld(playerid, 1);
- SetPlayerPos(playerid,2889.7627,-2165.0461,3.3291);
- SetPlayerFacingAngle(playerid,244.2639);
- SetPlayerCameraPos(playerid,2893.1243,-2168.2341,8.2300);
- SetPlayerCameraLookAt(playerid,2889.7627,-2165.0461,7.3291);
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- SetupPlayerForClassSelection(playerid);
- return 1;
- }
- public OnGameModeInit()
- {
- SetGameModeText("San Andreas: World");
- ShowPlayerMarkers(1);
- ShowNameTags(1);
- AllowAdminTeleport(1);
- UsePlayerPedAnims();
- AddPlayerClass(14,2889.7627,-2165.0461,3.3291,64.3824,0,0,0,0,0,0);
- AddPlayerClass(15,2889.7627,-2165.0461,3.3291,64.3824,0,0,0,0,0,0);
- show_dmg = TextDrawCreate(399 ,188 , " ");
- TextDrawFont(show_dmg , 0);
- TextDrawLetterSize(show_dmg , 0.5, 4.2);
- TextDrawColor(show_dmg , 0xffffffFF);
- TextDrawSetOutline(show_dmg , true);
- TextDrawSetProportional(show_dmg , true);
- TextDrawSetShadow(show_dmg , 1);
- show_gdmg = TextDrawCreate(241 ,188 , " ");
- TextDrawFont(show_gdmg , 1);
- TextDrawLetterSize(show_gdmg , 0.5, 3.5);
- TextDrawColor(show_gdmg , 0xfa0000FF);
- TextDrawSetOutline(show_gdmg , false);
- TextDrawSetProportional(show_gdmg , true);
- TextDrawSetShadow(show_gdmg , 1);
- // Pickup'ai
- //Parduotuves
- // CreateDynamicPickup(modelid, type, Float:x, Float:y, Float:z, worldid, interiorid, playerid, Float:streamdistance = 100.0);
- binco_enter = CreateDynamicPickup(1559, 23, 2819.1, -1614.8, 10.1, -1, -1, -1, 100);
- binco_exit = CreateDynamicPickup(1559, 23, 207.7, -110.7, 1004.1, -1, 15, -1, 40);
- // zip_exit = CreateDynamicPickup(1317, 23, 161.4, -96.8, 1000.8, -1, 18, -1, 40);
- return 1;
- }
- public OnPlayerPickUpDynamicPickup(playerid, pickupid)
- {
- if(pickupid == binco_enter){
- SetPlayerInterior(playerid, 15);
- SetPlayerPos(playerid, 209, -110.7, 10004.1);
- return 1;
- }
- if(pickupid == binco_exit){
- SetPlayerInterior(playerid, 0);
- SetPlayerPos(playerid, 2819, -1616, 10.1);
- return 1;
- }
- for(new jj = 0; jj <= 50; jj++){
- if(pickupid == d_Money[playerid][d_pID[playerid][p_kills[playerid]-jj]]){
- GivePlayerMoney(playerid, dMoney[d_pID[playerid][p_kills[playerid]-jj]][p_deaths[d_pID[playerid][p_kills[playerid]-jj]]]);
- DeletePlayer3DTextLabel(playerid, td_d_money[d_pID[playerid][p_kills[playerid]-jj]]);
- DestroyDynamicPickup(d_Money[playerid][d_pID[playerid][p_kills[playerid]-jj]]);
- return 1;
- }
- }
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- if(pickupid == s_cash1[playerid])
- {
- GivePlayerMoney(playerid, 10);
- DestroyPickup(s_cash1[playerid]);
- DeletePlayer3DTextLabel(playerid, td_s_cash1);
- return 1;
- }
- if(pickupid == s_cash2[playerid])
- {
- GivePlayerMoney(playerid, 15);
- DestroyPickup(s_cash2[playerid]);
- DeletePlayer3DTextLabel(playerid, td_s_cash2);
- return 1;
- }
- return 1;
- }
- strtok(const string[], &index)
- {
- new length = strlen(string);
- while ((index < length) && (string[index] <= ' '))
- {
- index++;
- }
- new offset = index;
- new result[20];
- while ((index < length) && (string[index] > ' ') && ((index - offset) < (sizeof(result) - 1)))
- {
- result[index - offset] = string[index];
- index++;
- }
- result[index - offset] = EOS;
- return result;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement