←  Pytania

AMXX.pl: Support AMX Mod X i SourceMod

»

Jak pobrać (maksymalne zdrowie gracza )

  • +
  • -
Blondyna - zdjęcie Blondyna 28.11.2012

Cześć jak w temacie:

Jak pobrać maksymalne zdrowie gracza?
Odpowiedz

Gość_21977_* 29.11.2012

Automatyczna wiadomość


Ten temat został przeniesiony z forum

ModyDiablo ModPytania

do

Scripting AMXXPytania
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 30.11.2012

w cod mod mam tak:

floatround(get_user_health(id)/maksymalne_zdrowie_gracza[id]*100)

Ale ten kod nie działa w diablo mod.
Odpowiedz

  • +
  • -
dasiek - zdjęcie dasiek 30.11.2012

bo maksymalne zdrowie jest zapisane pod player_health[id] chyba
Odpowiedz

  • +
  • -
GwynBleidD - zdjęcie GwynBleidD 01.12.2012

A jakiego moda się tyczy to pytanie? Bo bez modów to proste: każdy ma max 100 życia :)
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 01.12.2012

Diablo mod, był temat w dziele diablo ale benio przeniósł go tutaj.

Cheq, są błędy podczas kompilacji jak dodam tak jak ty napisałeś.

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Invalid expression, assumed zero on line 2061
Warning: Expression has no effect on line 2061
Error: Undefined symbol "player_health" on line 2064
Warning: Expression has no effect on line 2064
Error: Expected token: ";", but found "]" on line 2064
Error: Invalid expression, assumed zero on line 2064
Error: Too many error messages on one line on line 2064

Compilation aborted.
5 Errors.
Could not locate output file C:\Documents and Settings\Rafałek\Pulpit\Prace\Diablo Mod\DiabloMod.amx (compile failed).
Odpowiedz

  • +
  • -
Na 5tyk - zdjęcie Na 5tyk 01.12.2012

Najlepiej podaj *.sma :)
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 01.12.2012

Łap:

Załączone pliki

Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 01.12.2012

race_heal[player_class[id]]+player_strength[id]*2

To jest maksymalne zycie gracza.

Możesz to zrobić tak:

new max_health = race_heal[player_class[id]]+player_strength[id]*2
floatround(aktualne_zycie/max_health*100)

speedkill (01.12.2012 10:17):
Tylko, że w tym drugim przykładzie podajesz hp w procentach ;)

Użytkownik HubertTM edytował ten post 01.12.2012 10:13
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 01.12.2012

Czyli ma być tak ;?

show_hudmessage(id, "[Zycie: i% | %i%%^n[Zloto: 5 | Mana: 5]^n[Quest: Siedlisko zla]^n[Przedmiot: %s]^n[Wytrzymalosc: 100]", hapek, new max_health = race_heal[player_class[id]]+player_strength[id]*2 floatround(aktualne_zycie/max_health*100)
,player_item_name[id])
Odpowiedz

  • +
  • -
Droso - zdjęcie Droso 01.12.2012

@speedkill on chce właśnie w procentach :), wnioskuje to właśnie z postu @up oraz jego temacie z Cod Mod'a ;P


new max_health = race_heal[player_class[id]]+player_strength[id]*2 


show_hudmessage(id, "[Zycie: i% | %i%%^n[Zloto: 5 | Mana: 5]^n[Quest: Siedlisko zla]^n[Przedmiot: %s]^n[Wytrzymalosc: 100]", hapek, floatround(hapek/max_health*100)
,player_item_name[id])


Zobacz
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 01.12.2012

Teraz wywala jakieś dziwne błędy:

Welcome to the AMX Mod X 1.8.1-300 Compiler.
Copyright (c) 1997-2006 ITB CompuPhase, AMX Mod X Team

Error: Undefined symbol "_create_ThinkBot" on line 573
Error: Undefined symbol "SubtractStats" on line 784
Error: Undefined symbol "SubtractRing" on line 785
Error: Undefined symbol "BoostStats" on line 787
Error: Undefined symbol "BoostRing" on line 788
Error: Undefined symbol "select_class_query" on line 1004
Error: Undefined symbol "BoostRing" on line 1018
Error: Undefined symbol "BoostStats" on line 1019
Error: Undefined symbol "set_speedchange" on line 1022
Error: Undefined symbol "count_jumps" on line 1049
Error: Undefined symbol "give_knife" on line 1050
Error: Undefined symbol "RemoveFlag" on line 1052
Error: Undefined symbol "set_renderchange" on line 1064
Error: Undefined symbol "changeskin" on line 1067
Error: Undefined symbol "kill_all_entity" on line 1071
Error: Undefined symbol "Bot_Setup" on line 1073
Error: Undefined symbol "check_class" on line 1075
Error: Undefined symbol "set_gravitychange" on line 1193
Error: Undefined symbol "set_speedchange" on line 1194
Error: Undefined symbol "set_renderchange" on line 1195
Error: Undefined symbol "change_health" on line 1211
Error: Undefined symbol "SubtractStats" on line 1220
Error: Undefined symbol "SubtractRing" on line 1221
Error: Undefined symbol "BoostStats" on line 1224
Error: Undefined symbol "BoostRing" on line 1225
Error: Undefined symbol "select_class_query" on line 1244

Compilation aborted.
26 Errors.
Could not locate output file C:\Documents and Settings\Rafałek\Pulpit\Prace\Diablo Mod\DiabloMod.amx (compile failed)
.
Odpowiedz

  • +
  • -
DarkGL - zdjęcie DarkGL 01.12.2012

1. nie ma czegoś takiego jak maksymalne zdrowie jest to sztucznie ustawiane przez różnorakie pluginy
2. Sprawdź czy nie usunąłeś gdzieś przypadkowo { czy }
http://amxx.pl/topic...er-w-funkcjach/
Odpowiedz

  • +
  • -
Blondyna - zdjęcie Blondyna 01.12.2012

DarkGL, dzięki ;)

Teraz w hud jest tak:

[Zdrowie: 95 | 0%]

public write_hud(id)
{
    if (player_lvl[id] == 0)
        player_lvl[id] = 1
            
    new tpstring[1024]
    
    new Float:xp_now
    new Float:xp_need
    new Float:perc
    
    if (last_update_xp[id] == player_xp[id])
    {
        perc = last_update_perc[id]
    }
    else
    {
        //Calculate percentage of xp required to level
        if (player_lvl[id] == 1)
        {
            xp_now = float(player_xp[id])
            xp_need = float(LevelXP[player_lvl[id]])
            perc = xp_now*100.0/xp_need
        }
        else
        {
            xp_now = float(player_xp[id])-float( LevelXP[player_lvl[id]-1])
            xp_need = float(LevelXP[player_lvl[id]])-float(LevelXP[player_lvl[id]-1])
            perc = xp_now*100.0/xp_need
        }
    }
    
    last_update_xp[id] = player_xp[id]
    last_update_perc[id] = perc
    new hapek = get_user_health(id);
    new max_health = race_heal[player_class[id]]+player_strength[id]*2
    
    if(player_class[id]!=Paladyn)
		 {

		 set_hudmessage(255, 255, 0, 0.02, 0.23, 0, 6.0, 1.0);
    show_hudmessage(id, "[Zycie: %i | %i%%^n[Zloto: 5 | Mana: 5]^n[Quest: Siedlisko zla]^n[Przedmiot: %s]^n[Wytrzymalosc: %i]", hapek, floatround(hapek/max_health*100), player_item_name[id], item_durability[id])
    
    }
    else
    {
        
    set_hudmessage(255, 255, 0, 0.02, 0.23, 0, 6.0, 1.0);
    show_hudmessage(id, "[Zycie: %i | %i%%^n[Zloto: 5 | Mana: 5]^n[Quest: Siedlisko zla]^n[Przedmiot: %s]^n[Wytrzymalosc: %i]", hapek, floatround(hapek/max_health*100), player_item_name[id], item_durability[id])


    message_begin(MSG_ONE,gmsgStatusText,{0,0,0}, id)
    write_byte(0)
    write_string(tpstring)
    message_end()
}
}
Odpowiedz