_RoGer 0 Odesláno: 23. Listopad, 2015 Share Odesláno: 23. Listopad, 2015 (upraveno) Zdravím .. mam takový menší problém se orientovat v převodech score na peníze . nyní to mám tak že : Score = Peníze a chtěl bych to udělat tak abych měl : Score = Score . public OnPlayerDeath(playerid, killerid, reason) { if(killerid != INVALID_PLAYER_ID) { SetPlayerScore(killerid, GetPlayerScore(killerid) + 3); } if(!IsPlayerNPC(playerid)) { if(IsPlayerConnected(playerid)) { if(IsPlayerConnected(killerid)) { GivePlayerACMoney(killerid, floatround(floatmul(GetPlayerACMoney(playerid), 0.35))); } SetPlayerACMoney(playerid, floatround(floatmul(GetPlayerACMoney(playerid), 0.65))); if(IsPlayerUsingLoopingAnimation[playerid]) IsPlayerUsingLoopingAnimation[playerid] = 0; UsePlayerStoppingAnimation[playerid]=false; if(Player[playerid][MissionID] != 9999) { FormatPlayerInfoBox(playerid,"~g~Mission","~r~Mise neuspesna!",2500); Player[playerid][MissionID]=9999; Player[playerid][MissionInfo]=9999; DisablePlayerRaceCheckpoint(playerid); } if(Player[playerid][DriftState] == true) CancelDrifting(playerid); if(Player[playerid][DM_Player]!=9999) { Player[playerid][DM_Player]=9999; DM[Players]--; if(DM[Players]==1) { for(new i=0; i<=Server[ConP]; i++) { if(IsPlayerConnected(i)) { if(!IsPlayerNPC(i)) { if(Player[i][DM_Player]!=9999) { Player[i][DM_Player]=9999; new msg[128], Name[24]; GetPlayerName(i,Name,24); format(msg,128,"{C91628}~r~Hrac {FFFFFF}%s (%d){4417E8} vyhral Death Match a vyhral %d$ !",Name,i,DM[Reward]); GameTextForAll(msg, 6000, 5); format(msg,128,"{C91628}Hrac {FFFFFF}%s (%d){4417E8} vyhral Death Match a vyhral %d${FFFFFF} !",Name,i,DM[Reward]); SendClientMessageToAll(COLOR_GREEN, msg); new msgx2[128]; format(msgx2,128,"{C91628}Vyhral si {FFFFFF}%d${4417E8} v DeathMatchi, peniaze boli automaticky uložene do banky",DM[Reward]); SendClientMessage(i,COLOR_YELLOW,msgx2); Player[i][Bank]+=DM[Reward]; DM[Reward]=0; SpawnPlayer(i); DM_End(); } } } } } } if(((Player[killerid][Team] != Player[playerid][Team]) && Player[playerid][ClanP]==9999) || ((Player[killerid][ClanP] != Player[playerid][ClanP]) && Player[playerid][ClanP]!=9999)) { new Float:pskill; if(Player[playerid][Skill]>80.0) pskill=1.2; else if(Player[playerid][Skill]>65.0) pskill=1.1; else if(Player[playerid][Skill]>50.0) pskill=1.0; else if(Player[playerid][Skill]>37.5) pskill=0.9; else if(Player[playerid][Skill]>25.0) pskill=0.8; else if(Player[playerid][Skill]>15.0) pskill=0.7; else if(Player[playerid][Skill]> 5.0) pskill=0.6; else pskill+=0.5; new Float:pxskill = Player[killerid][Skill]+pskill; if(pxskill>99.9) pxskill=99.9; SetPlayerSkill(killerid, pxskill); } if(Player[playerid][D_Player]!=9999) { Player[playerid][D_Player]=9999; Game[D_Players]--; Player[playerid][UseNotebook]=false; if(Game[D_Players]==1) { for(new i=0; i<=Server[ConP]; i++) { if(IsPlayerConnected(i)) { if(!IsPlayerNPC(i)) { if(Player[i][D_Player]!=9999) { new DName[24]; GetPlayerName(i,DName,24); new message[128]; format(message,128,"{C91628}Hráè {FFFFFF}%s (%d){4417E8} vyhral Demolation Derby !",DName,i); SendClientMessageToAll(COLOR_WHITE,message); GameTextForPlayer(i,"{C91628}~w~Vyhral si Demolation Derby !",3000,5); if(IsPlayerInAnyVehicle(i)) SetVehicleVirtualWorld(GetPlayerVehicleID(i),0); SpawnPlayer(i); } } } } } } if(Player[playerid][DA_Player] != 9999) { if(Game[DA_State]==1) { if(Player[killerid][DA_Player] != 9999) OnPlayerExitDuelArena(killerid, playerid); } } if(Player[playerid][NFSSA_Player]!=9999) { Player[playerid][NFSSA_Player]=9999; Game[NFSSA_Players]--; Player[playerid][UseNotebook]=false; DisablePlayerRaceCheckpoint(playerid); if(IsPlayerInAnyVehicle(playerid)) SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),0); } if(Player[playerid][MTBR_Player]!=9999) { DestroyVehicleEx(MTBR_Bike[Player[playerid][MTBR_Player]]); Player[playerid][MTBR_Player]=9999; Game[MTBR_Players]--; Player[playerid][UseNotebook]=false; DisablePlayerRaceCheckpoint(playerid); } if(Player[playerid][BrigadaID] != 9999) { FormatPlayerInfoBox(playerid,"~g~Brigada","~r~Mise neuspesna!",2500); Player[playerid][BrigadaID]=9999; Player[playerid][BrigadaInfo]=9999; Player[playerid][BrigadaTime]=9999; DisablePlayerRaceCheckpoint(playerid); } if(!IsPlayerConnected(killerid)) { SendDeathMessage(INVALID_PLAYER_ID,playerid,reason); FormatHighScore(playerid); } else { if(GetPlayerWeapon(killerid) == 38 || GetPlayerWeapon(killerid) == 36) { if(Player[killerid][Logged] == true) { new pName[24]; GetPlayerName(killerid, pName, 24); new message[128]; format(message,128, "{FF0000}[ ANTICHEAT ] Hráè {FFFFFF}%s (%d){FF0000} byl vyhozen anticheatem z dùvodu: {FFFFFF}Weapon Hack !{FFFFFF}", pName, killerid); SendClientMessageToAll(COLOR_ADMIN, message); Kick(killerid); } } FormatHighScore(playerid); FormatHighScore(killerid); if(Player[playerid][Respect] > 90) Player[killerid][Respect]+=0.600; else if(Player[playerid][Respect] > 75) Player[killerid][Respect]+=0.520; else if(Player[playerid][Respect] > 50) Player[killerid][Respect]+=0.450; else if(Player[playerid][Respect] > 30) Player[killerid][Respect]+=0.375; else if(Player[playerid][Respect] > 15) Player[killerid][Respect]+=0.300; Player[killerid][Respect]+=0.75; SetPlayerRespect(killerid, Player[killerid][Respect]); if(Player[killerid][ClanP] != 9999) { new clanid = Player[killerid][ClanP]; Clan[clanid][Kills]++; new cway[64]; format(cway,64, "SL/Server/Clans/Clan%d.cfg", clanid); dini_IntSet(cway, "Kills", Clan[clanid][Kills]); } Player[killerid][FailDeath]=0; SendDeathMessage(killerid,playerid,reason); Player[killerid][Kills]++; Player[playerid][Deaths]++; if(Player[playerid][Team]==5) { if(GetPlayerWantedLevel(killerid)<3) { SetPlayerWantedLevel(killerid,3); SendClientMessage(killerid,COLOR_WARNING,"{4417E8}Zabil si policajta ! Hledanost se ti zvýšila na WL 3 !"); } if(GetPlayerWantedLevel(killerid)>=3 && GetPlayerWantedLevel(killerid)<=5) { SetPlayerWantedLevel(killerid,GetPlayerWantedLevel(killerid)+1); } } else if(GetPlayerWantedLevel(killerid)<=5) { SetPlayerWantedLevel(killerid,GetPlayerWantedLevel(killerid)+1); } new PlayerState = GetPlayerState(killerid); new Weapon = GetPlayerWeapon(killerid); if(PlayerState == PLAYER_STATE_DRIVER) { if(Weapon == 32 || Weapon == 28 || Weapon == 29) { SetPlayerHealth(killerid,0); SendClientMessage(killerid,COLOR_WARNING,"{4417E8}Bol si usmrtený za CarKill !"); GameTextForPlayer(killerid,"~r~!!! CarKill !!!",3000,5); Player[killerid][FailDeath]=1; } } else if(PlayerState == PLAYER_STATE_PASSENGER) { if(Weapon == 24) { SetPlayerHealth(killerid,0); SendClientMessage(killerid,COLOR_WARNING,"{4417E8}Bol si usmrtený za CarKill !"); GameTextForPlayer(killerid,"~r~!!! Car Kill !!!",3000,5); Player[killerid][FailDeath]=1; } } else if(IsPlayerInAnyVehicle(killerid)) { if(PlayerState == PLAYER_STATE_DRIVER) { SetPlayerHealth(killerid,0); SendClientMessage(killerid,COLOR_WARNING,"{4417E8}Bol si usmrtený za CarKill !"); GameTextForPlayer(killerid,"~r~!!! Car Kill !!!",3000,5); Player[killerid][FailDeath]=1; } } if(Player[playerid][Reward]>=1) { if(Player[killerid][FailDeath]==0) { if(Player[killerid][Team]==8) { new MSG[128], Name[24], Name2[24]; GetPlayerName(killerid,Name,24); GetPlayerName(playerid,Name2,24); format(MSG,128,"{C91628}Nájomný vrah {FFFFFF}%s{4417E8} zabil hráèe {FFFFFF}%s{4417E8} a získava odmìnu {FFFFFF}%d${4417E8} !",Name,Name2,Player[playerid][Reward]); SendClientMessageToAll(COLOR_YELLOW,MSG); GivePlayerACMoney(killerid,Player[playerid][Reward]); Player[playerid][Reward]=0; } } } } Player[killerid][FailDeath]=0; if(GetPlayerWantedLevel(killerid)>6) SetPlayerWantedLevel(killerid,6); if(GetPlayerWantedLevel(playerid)>6) SetPlayerWantedLevel(playerid,6); } } return 1; } za každou radu budu rád . Díky Edited 23. Listopad, 2015 by _RoGer Link to comment Share on other sites More sharing options...
0 Petr 44 Odesláno: 23. Listopad, 2015 Share Odesláno: 23. Listopad, 2015 Tady problém není, nejspíš to bude nastavovat jinde ve scriptu, buď v nějakém timeru nebo v OnPlayerUpdate. Link to comment Share on other sites More sharing options...
0 _RoGer 0 Odesláno: 23. Listopad, 2015 Author Share Odesláno: 23. Listopad, 2015 Dám sem OnPlayerUpdate public OnPlayerUpdate(playerid) { if(GetPlayerState(playerid)==PLAYER_STATE_ONFOOT) { new weaponid=GetPlayerWeapon(playerid),oldweapontype=GetWeaponType(OldWeapon[playerid]); new weapontype=GetWeaponType(weaponid); if(HoldingWeapon[playerid]==weaponid) StopPlayerHoldingObject(playerid); if(OldWeapon[playerid]!=weaponid) { new modelid=GetWeaponModel(OldWeapon[playerid]); if(modelid!=0 && oldweapontype!=WEAPON_TYPE_NONE && oldweapontype!=weapontype) { HoldingWeapon[playerid]=OldWeapon[playerid]; switch(oldweapontype) { case WEAPON_TYPE_LIGHT: SetPlayerHoldingObject(playerid, modelid, 8,0.0,-0.1,0.15, -100.0, 0.0, 0.0); case WEAPON_TYPE_MELEE: SetPlayerHoldingObject(playerid, modelid, 7,0.0,0.0,-0.18, 100.0, 45.0, 0.0); case WEAPON_TYPE_HEAVY: SetPlayerHoldingObject(playerid, modelid, 1, 0.2,-0.125,-0.1,0.0,25.0,180.0); } } } if(oldweapontype!=weapontype) OldWeapon[playerid]=weaponid; } if(!IsPlayerNPC(playerid)) { if(Player[playerid][DriftState] == true) Drifting(playerid); if(IsPlayerAdmin(playerid)) Player[playerid][RCON]=true; if(GetPlayerVehicleID(playerid) > 0) if(Player[playerid][Speed] >= 200) if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER) { new Float:x, Float:y, Float:z, Float:a, vehicleid = GetPlayerVehicleID(playerid); GetVehiclePos(vehicleid, x, y, z); GetVehicleZAngle(vehicleid, a); if((839 > x) && (x > 834) && (-2055 > y) && (y > -2080) && (13 > z) && (z > 10)) { if((a > 155) && (a < 205)) //180 { new Float:V[3]; GetVehicleVelocity(vehicleid, V[0], V[1], V[2]); SetVehiclePos(vehicleid, -2992.4865722656, 467.88174438477, 4.9140625); SetVehicleZAngle(vehicleid, 270.000000); SetVehicleVelocity(vehicleid, -V[1], V[0], V[2]); } } else if((-2991 > x) && (x > -3010) && (470.5 > y) && (y > 465) && (6 > z) && (z > 2.5)) { if((a > 65) && (a < 115)) //90 { new Float:V[3]; GetVehicleVelocity(vehicleid, V[0], V[1], V[2]); SetVehiclePos(vehicleid, 836.35540771484, -2063.2978515625, 12.8671875); SetVehicleZAngle(vehicleid, 0.000000); if(-V[0] < 0.5) V[0]=-1.000000; SetVehicleVelocity(vehicleid, V[1], -V[0], V[2]); } } } if(GetPlayerVirtualWorld(playerid)==2000 || GetPlayerVirtualWorld(playerid)==2001 || GetPlayerVirtualWorld(playerid)==2012 || GetPlayerVirtualWorld(playerid)==2015 || GetPlayerVirtualWorld(playerid)==2018) { if(GetPlayerWeapon(playerid) != 0) SetPlayerArmedWeapon(playerid, 0), PlayerPlaySound(playerid, 1053, 0, 0, 0), GameTextForPlayer(playerid, "~r~ZAKAZ ZBRANI !", 1000, 5); } } return 1; } Link to comment Share on other sites More sharing options...
0 Petr 44 Odesláno: 23. Listopad, 2015 Share Odesláno: 23. Listopad, 2015 Tak tady taky ne. Najdi si ve scriptu funkci "SetPlayerScore" a někde u ní se ti musí nastavovat peníze přes "GetPlayerMoney" Link to comment Share on other sites More sharing options...
0 _RoGer 0 Odesláno: 23. Listopad, 2015 Author Share Odesláno: 23. Listopad, 2015 (upraveno) public OnPlayerDeath(playerid, killerid, reason) { if(killerid != INVALID_PLAYER_ID) { SetPlayerScore(killerid, GetPlayerScore(killerid) + 3); } Zde + Server[TimeUpTimer] = SetTimer("TimeUp", 1000, 1); SetTimer("ServerMessages", 150000, 1); SetTimer("SendMessageAboutBestClans", 200000, 1); Server[WeatherTimer] = SetTimer("SetRandomWeather", 500000+random(180000), 0); * Mívam problém i s přičítáním a odčítáním peněz . Např. Dům stojí 20 mega , koupím ho a mě se odečtou peníze a hned nato zase přičtou zpět do původního stavu . Edited 23. Listopad, 2015 by _RoGer Link to comment Share on other sites More sharing options...
0 Petr 44 Odesláno: 23. Listopad, 2015 Share Odesláno: 23. Listopad, 2015 Tady v tom scriptu taky nic není, tak možná v nějakém FS nebo v těch timerech Link to comment Share on other sites More sharing options...
0 _RoGer 0 Odesláno: 23. Listopad, 2015 Author Share Odesláno: 23. Listopad, 2015 V FS to není stoprocentně , jelikož jsem testoval čistý mod bez FS a byl jsem na tom stejně . Timery , které jsou obsaženy v modu jsou výše . Ono to bude někde určitě . Link to comment Share on other sites More sharing options...
0 Petr 44 Odesláno: 23. Listopad, 2015 Share Odesláno: 23. Listopad, 2015 Máš tam akorát spouštěč timerů, obsah jsi nedal. Link to comment Share on other sites More sharing options...
0 arci224 11 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 Skus použít CTRL + F a tam zadat PlayerScore .. logicky.. Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 //EDIT: a chtěl bych to udělat tak abych měl : Score = Score . ~> Počkej, pokud chceš, aby se tam nacházelo jen score, tak nastavuj jen score, ne? . Link to comment Share on other sites More sharing options...
0 Kvostyc 4 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 SkiBig je tam najit dalsi, na hornej liste je find next https://ctrlv.cz/FU3n Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 //Edit, nic Link to comment Share on other sites More sharing options...
0 Kvostyc 4 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 ved ide v pohode Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 24. Listopad, 2015 Share Odesláno: 24. Listopad, 2015 ved ide v pohode A jo, tak nic, tak pardon. U mě to nějako tu dobu nefungovalo ... Link to comment Share on other sites More sharing options...
0 _RoGer 0 Odesláno: 25. Listopad, 2015 Author Share Odesláno: 25. Listopad, 2015 Nějak vás nestíhám Skus použít CTRL + F a tam zadat PlayerScore .. logicky.. forward GivePlayerACMoney(playerid, money); public GivePlayerACMoney(playerid, money) { if(IsPlayerConnected(playerid)) { ResetPlayerMoney(playerid); GivePlayerMoney(playerid, Player[playerid][Money]); Player[playerid][Money] += money; GivePlayerMoney(playerid, money); SetPlayerScore(playerid, GetPlayerACMoney(playerid)); } return 1; } forward SetPlayerACMoney(playerid, money); public SetPlayerACMoney(playerid, money) { if(IsPlayerConnected(playerid)) { ResetPlayerMoney(playerid); GivePlayerMoney(playerid, money); Player[playerid][Money] = money; SetPlayerScore(playerid, money); } return 1; } forward ResetPlayerACMoney(playerid); public ResetPlayerACMoney(playerid) { if(IsPlayerConnected(playerid)) { ResetPlayerMoney(playerid); Player[playerid][Money] = 0; SetPlayerScore(playerid, 0); } return 1; } forward KillPlayer(playerid); public KillPlayer(playerid) { if(IsPlayerConnected(playerid)) { SetPlayerHealth(playerid, -1); } return 1; } forward SavePlayerLastStats(playerid); public SavePlayerLastStats(playerid) { if(IsPlayerConnected(playerid)) { new Float:player_pos_x, Float:player_pos_y, Float:player_pos_z, Float:player_hp, Float:player_armour; GetPlayerPos(playerid, player_pos_x, player_pos_y, player_pos_z); GetPlayerHealth(playerid, player_hp); GetPlayerArmour(playerid, player_armour); Player[playerid][SavePosX] = player_pos_x; Player[playerid][SavePosY] = player_pos_y; Player[playerid][SavePosZ] = player_pos_z; Player[playerid][SaveHP] = player_hp; Player[playerid][SaveArmour] = player_armour; Player[playerid][SaveVirtualWorld] = GetPlayerVirtualWorld(playerid); Player[playerid][SaveInterior] = GetPlayerInterior(playerid); Player[playerid][SaveMoney] = GetPlayerACMoney(playerid); Player[playerid][SaveSkin] = Player[playerid][Skin]; } } //EDIT:~> Počkej, pokud chceš, aby se tam nacházelo jen score, tak nastavuj jen score, ne? . Ano to chci , ale jsem v tom celkem ztracený díky všem za rady Link to comment Share on other sites More sharing options...
0 Scydo 397 Odesláno: 25. Listopad, 2015 Share Odesláno: 25. Listopad, 2015 Ano to chci , ale jsem v tom celkem ztracený díky všem za rady ~> Odstraň všechny funkce, které dávají hráči peníze ( njč. GivePlayerMoney() ). Link to comment Share on other sites More sharing options...
Dotaz
_RoGer 0
Zdravím ..
mam takový menší problém se orientovat v převodech score na peníze .
nyní to mám tak že : Score = Peníze
a chtěl bych to udělat tak abych měl : Score = Score .
za každou radu budu rád . Díky
Edited by _RoGerLink to comment
Share on other sites
15 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