Jak usunąć "piłkę" z mapy bez jej...
Julia
04.08.2011
Ortega
04.08.2011
Kiedyś robiłem:
Użyj BSPViewer, żeby zdekompilować mapę, otwórz w hammer editor, zobacz jaką klasę ma byt i wpisz/ albo target bytu. Przy target zmień funkcję na find_ent_by_target.
Zamiast dekompilacji możesz użyć m_eel.
#include < amxmodx >
#include < engine >
#include < fakemeta >
new const szClass[ ] = "KLASA_BYTU";
new const szMap[ ] = "NAZWA_MAPY";
new bool:Cmap;
public plugin_init( ) {
register_logevent( "RoundStart", 2, "1=Round_Start" );
static szMapName[ 32 ];
get_mapname( szMapName, charsmax( szMapName ) );
if( equali( szMapName, szMap ) )
Cmap = true;
}
public RoundStart( ) {
if( !Cmap )
return;
static ent;
ent = -1;
while( ( ent = find_ent_by_class( ent, szClass ) ) !=0 ) {
engfunc( EngFunc_RemoveEntity, ent );
}
}
Użyj BSPViewer, żeby zdekompilować mapę, otwórz w hammer editor, zobacz jaką klasę ma byt i wpisz/ albo target bytu. Przy target zmień funkcję na find_ent_by_target.
Zamiast dekompilacji możesz użyć m_eel.
DarkGL
04.08.2011
ortega jeśli jest to byt wbudowany w mapę to wystarczy usunąć go tylko przy starcie mapy / jego spawnie
m_eel
m_eel - Engine entity lab - AMXX.pl: Support AMX Mod X
m_eel
m_eel - Engine entity lab - AMXX.pl: Support AMX Mod X
Julia
04.08.2011
Ogarnęłam już.
A czy można ustawić, że byt jest zamieniany na wybrany model?
Jeżeli nie, to czy można by jeszcze edytować plugin, że będzie ładowało np. remove.cfg (czy w/e) gdzie wpiszę nazwy map, z których chcę to usunąć.
Użytkownik Julia edytował ten post 04.08.2011 16:49
A czy można ustawić, że byt jest zamieniany na wybrany model?
Jeżeli nie, to czy można by jeszcze edytować plugin, że będzie ładowało np. remove.cfg (czy w/e) gdzie wpiszę nazwy map, z których chcę to usunąć.
Użytkownik Julia edytował ten post 04.08.2011 16:49
R3X
05.08.2011
W amxmodx/configs/remove.cfg wpisz nazwy map, każda w osobnej linii
Nie wiem tylko czy takie usuwanie po klasie nie usunie za dużo rzeczy. Z jakiej mapy jest ten screen?
Bezpośrednio podmieniać model można tylko jeśli na mapie to też jest model, np. bronie leżące na ziemi albo jakieś kwiatki czy drzewa. Zawsze można usunąć oryginał i w to miejsce dołożyć nowy element o wybranym modelu i wyjdzie na to samo
#include < amxmodx > #include < amxmisc > #include < engine > new const szClass[ ] = "KLASA_BYTU"; new bool:Cmap; public plugin_init( ) { register_logevent( "RoundStart", 2, "1=Round_Start" ); static szMapName[ 32 ]; get_mapname( szMapName, charsmax( szMapName ) ); static szFile[ 96 ]; get_configsdir(szFile, 95); add(szFile, 95, "/remove.cfg"); new fp = fopen(szFile, "rt"); if(!fp) return; while(!feof(fp)){ fgets(fp, szFile, 31); trim(szFile); if(szFile[0] == ';') continue; if(equal(szFile, szMapName)){ Cmap = true; break; } } fclose(fp); } public RoundStart( ) { if( !Cmap ) return; remove_entity_name(szClass); }
Nie wiem tylko czy takie usuwanie po klasie nie usunie za dużo rzeczy. Z jakiej mapy jest ten screen?
Bezpośrednio podmieniać model można tylko jeśli na mapie to też jest model, np. bronie leżące na ziemi albo jakieś kwiatki czy drzewa. Zawsze można usunąć oryginał i w to miejsce dołożyć nowy element o wybranym modelu i wyjdzie na to samo
Julia
05.08.2011
Hmm, OK, screen bodajże z mapy bb_projetocs, taka pierwsza przykładowa, gdzie pamiętałam, że jest ten klocek.
Że położyć można to wiem, ale automatyczna podmiana byłaby znacznie szybsza.
Że położyć można to wiem, ale automatyczna podmiana byłaby znacznie szybsza.