hlmod.hu

Magyar Half-Life Mód közösség!
Pontos idő: 2024.03.29. 14:28



Jelenlévő felhasználók

Jelenleg 300 felhasználó van jelen :: 1 regisztrált, 0 rejtett és 299 vendég

A legtöbb felhasználó (1565 fő) 2020.11.21. 11:26-kor tartózkodott itt.

Regisztrált felhasználók: Bing [Bot] az elmúlt 5 percben aktív felhasználók alapján

Utoljára aktív
Ahhoz hogy lásd ki volt utoljára aktív, be kell jelentkezned.



Az oldal teljeskörű
használatához regisztrálj.

Regisztráció

Kereső


Új téma nyitása  Hozzászólás a témához  [ 2 hozzászólás ] 
Szerző Üzenet
 Hozzászólás témája: sebessegmérő helyezése
HozzászólásElküldve: 2014.07.10. 17:58 
Offline
Senior Tag

Csatlakozott: 2013.07.29. 13:15
Hozzászólások: 233
Megköszönt másnak: 125 alkalommal
Üdv az alábbi sebessegmerőt syeretném középre de alul ahol egy sebessegmerő szokot lenni.Tehát valaki tegye középre a hudon és lentre ahol egy sebességmérő szokot lenni pon oda


SMA Forráskód: [ Mindet kijelol ]
  1. #include <amxmodx>
  2. #include <fakemeta>
  3. #include <nvault>
  4. #include <hamsandwich>
  5. #include <amxmisc>
  6.  
  7.  
  8. #define PLUGIN "SpeedMeter"
  9. #define VERSION "2.1"
  10. #define AUTHOR "No Swear"
  11.  
  12.  
  13. #define ACCESS_RESET ADMIN_IMMUNITY
  14. #define MAX_PLAYERS 32
  15.  
  16.  
  17. //Zmienne
  18. new Float:fPlayerMaxSpeed[MAX_PLAYERS+1], Float: fPlayerActualSpeed[MAX_PLAYERS+1], szPlayerName[MAX_PLAYERS+1][32]
  19. new szKeySpeed[32], szKeyName[34]
  20. new bool:NewRecord = false, szMapName[32];
  21. new szChampionName[32], Float:fMapRecord
  22. new nVault
  23. new HudObj
  24. new pcvarEnabled, pcvarUpadte, pcvarTerro
  25. new HudBot
  26. public plugin_init()
  27. {
  28. register_plugin(PLUGIN, VERSION, AUTHOR)
  29. //Cvars
  30. pcvarEnabled = register_cvar("sm_enabled", "1") //Plugin ki/be
  31. pcvarUpadte = register_cvar("sm_upadte", "0.1") //Milyen idonkent frissitsen HUD-ban
  32. pcvarTerro = register_cvar("sm_terro", "1") //Sebesseg meres
  33. //FM Part
  34. register_forward(FM_PlayerPreThink, "Fw_PlayerPreThink")
  35. register_forward(FM_ClientUserInfoChanged, "Fw_ClientUserInfoChanged", 1)
  36. //Others
  37. get_mapname(szMapName, charsmax(szMapName))
  38. HudObj = CreateHudSyncObj()
  39. register_clcmd("sm_reset", "CmdSpeedReset", ACCESS_RESET)
  40. //nVaultPart
  41. formatex(szKeySpeed,63,"%s-Speed",szMapName)
  42. formatex(szKeyName,63,"%s-Name",szMapName)
  43. }
  44. public plugin_cfg()
  45. {
  46. nVault = nvault_open("SpeedRecord")
  47. if (nVault == INVALID_HANDLE)
  48. set_fail_state( "Error opening nVault");
  49.  
  50. fMapRecord = float(nvault_get(nVault,szKeySpeed))
  51. nvault_get(nVault, szKeyName, szChampionName, 31)
  52.  
  53. CreateHudBot()
  54. }
  55. public plugin_end()
  56. {
  57. if (!NewRecord)
  58. return
  59.  
  60. new szNewRecord[32]
  61. float_to_str(fMapRecord, szNewRecord, 31)
  62.  
  63. nvault_set(nVault,szKeySpeed, szNewRecord)
  64. nvault_set(nVault,szKeyName,szChampionName)
  65. nvault_close(nVault)
  66. }
  67. public client_authorized(id)
  68. {
  69. if (!get_pcvar_num(pcvarEnabled))
  70. return
  71.  
  72. get_user_name(id, szPlayerName[id], 31)
  73. fPlayerMaxSpeed[id] = 0.0
  74. }
  75. public Fw_ClientUserInfoChanged(id)
  76. {
  77. get_user_name(id, szPlayerName[id], 31)
  78. }
  79. public Fw_PlayerPreThink(id)
  80. {
  81. if (!is_user_alive(id)|| !get_pcvar_num(pcvarEnabled))
  82. return FMRES_IGNORED;
  83.  
  84. if (get_pcvar_num(pcvarTerro) == 0 && get_user_team(id) == 1)
  85. return FMRES_IGNORED;
  86.  
  87. fPlayerActualSpeed[id] = Player_Speed(id)
  88.  
  89. if (fPlayerActualSpeed[id] > fPlayerMaxSpeed[id])
  90. fPlayerMaxSpeed[id] = fPlayerActualSpeed[id]
  91.  
  92. return FMRES_IGNORED;
  93. }
  94. public CreateHudBot()
  95. {
  96. HudBot = engfunc(EngFunc_CreateNamedEntity, engfunc(EngFunc_AllocString,"info_target"));
  97.  
  98. if(!pev_valid(HudBot))
  99. return;
  100.  
  101. set_pev(HudBot, pev_classname, "HudBot");
  102. set_pev(HudBot, pev_nextthink, get_gametime()+ get_pcvar_float(pcvarUpadte))
  103.  
  104. RegisterHamFromEntity(Ham_Think, HudBot, "Think_HudBot")
  105. }
  106. public Think_HudBot(Bot)
  107. {
  108. if (!pev_valid(Bot) || Bot != HudBot)
  109. return HAM_IGNORED;
  110.  
  111. if (get_pcvar_num(pcvarEnabled))
  112. {
  113. new iPlayers[32], iNum, id
  114. get_players(iPlayers, iNum)
  115. for(new i= 0; i<iNum; i++)
  116. {
  117. id = iPlayers[i];
  118. if (!is_user_alive(id))
  119. continue
  120.  
  121. set_hudmessage(255, 170, 42, 0.7, 0.2, 1, 0.01, get_pcvar_float(pcvarUpadte), 0.01, 0.01, 3)
  122.  
  123. if (get_pcvar_num(pcvarTerro) == 0 && get_user_team(id) == 1)
  124. ShowSyncHudMsg(id, HudObj, "Mapp Rekord: %.2f^nCsinalta: %s", fMapRecord,szChampionName)
  125. else
  126. ShowSyncHudMsg(id, HudObj, "Sebesseged: %.2f^nRekordod:: %.2f^nMapp Rekord: %.2f^nCsinalta:: %s", fPlayerActualSpeed[id], fPlayerMaxSpeed[id], fMapRecord,szChampionName)
  127.  
  128. if (fPlayerMaxSpeed[id] > fMapRecord)
  129. SetNewRecord(fPlayerMaxSpeed[id], szPlayerName[id])
  130. }
  131. }
  132.  
  133. set_pev(Bot, pev_nextthink, get_gametime()+get_pcvar_float(pcvarUpadte))
  134.  
  135. return HAM_IGNORED;
  136. }
  137. stock SetNewRecord(Float:Speed, Name[32])
  138. {
  139. fMapRecord = Speed
  140. szChampionName = Name
  141. NewRecord = true
  142. }
  143. stock Float:Player_Speed(id)
  144. {
  145. new Float:fVect[3]
  146. pev(id, pev_velocity,fVect)
  147. return floatsqroot(fVect[0]*fVect[0]+fVect[1]*fVect[1])
  148. }
  149. public CmdSpeedReset(id, level, cid)
  150. {
  151. if(!cmd_access(id,level, cid, 1))
  152. return PLUGIN_HANDLED;
  153.  
  154. new iPlayers[32], iNum
  155. get_players(iPlayers, iNum)
  156. for(new i=0; i<iNum; i++)
  157. fPlayerMaxSpeed[iPlayers[i]] = 0.0
  158.  
  159. SetNewRecord(0.0, "HeHaudeH")
  160. client_print(id, print_console, "Uj Rekord!!!!")
  161. return PLUGIN_HANDLED
  162. }
  163. /* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
  164. *{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1058\\ f0\\ fs16 \n\\ par }
  165. */
  166.  


Hozzászólás jelentése
Vissza a tetejére
   
 Hozzászólás témája: Re: sebessegmérő helyezése
HozzászólásElküldve: 2014.07.10. 20:03 
Offline
Jómunkásember
Avatar

Csatlakozott: 2013.01.15. 19:04
Hozzászólások: 407
Megköszönt másnak: 17 alkalommal
Megköszönték neki: 176 alkalommal
121. sort írd át erre:
Kód:
set_hudmessage(255, 170, 42, -1.0, 0.7, 1, 0.01, get_pcvar_float(pcvarUpadte), 0.01, 0.01, 3)

Ők köszönték meg demon nek ezt a hozzászólást: AsD# (2014.07.11. 12:01)
  Népszerűség: 2.27%


Hozzászólás jelentése
Vissza a tetejére
   
Hozzászólások megjelenítése:  Rendezés  
Új téma nyitása  Hozzászólás a témához  [ 2 hozzászólás ] 


Ki van itt

Jelenlévő fórumozók: nincs regisztrált felhasználó valamint 9 vendég


Nyithatsz új témákat ebben a fórumban.
Válaszolhatsz egy témára ebben a fórumban.
Nem szerkesztheted a hozzászólásaidat ebben a fórumban.
Nem törölheted a hozzászólásaidat ebben a fórumban.
Nem küldhetsz csatolmányokat ebben a fórumban.

Keresés:
Ugrás:  
Powered by phpBB® Forum Software © phpBB Limited
Magyar fordítás © Magyar phpBB Közösség
Portal: Kiss Portal Extension © Michael O'Toole