Skocz do zawartości

Nowy szablon forum

mygo.pl

Stworzyliśmy dla Was nowy wygląd forum. Z pewnością znajdziesz rzeczy, które wg Ciebie mogą zostać zmienione - wspomnij o tym w specjalnym wątku.

Czytaj więcej

Jak założyć własną sieć

serwerów CS

Zastanawiasz się nad prowadzeniem własnej sieci serwerów? Przeczytaj podstawowe informacje, na które należy zwrócić uwagę, przy takim projekcie.

Czytaj więcej

Tworzymy spis sieci

dodaj swoją

Dodaj sieć do której należysz, pozwoli to na promocję i budowę ogólnopolskiej bazy sieci CS.

Czytaj więcej

RSSSave position and speed plugin


MYGO.pl
 Udostępnij

Rekomendowane odpowiedzi

  • RSSy
Hello.

i am searching for a plugin that when u type "/save" will save ur position with the direction and speed that you had like a restore point...typing "/reset" will telete that to be able to save another one.

i have this source code found here but it restores you with 0 speed...will be good on a bhop server ...saving you a loot of time making velocity. :)
can someone help?

PHP Code:

#include <amxmodx>
#include <cstrike>
#include <fakemeta>
#include <hamsandwich>

new const
    
PLUGIN_NAME    [] = "Checkpoints & Teleport",
    
PLUGIN_VERSION    [] = "1.0",
    
PLUGIN_AUTHOR    [] = "Keys"

new bool:g_bHasCheckpoint[33];

new 
Float:g_bCheckpointOrigin[33][3];
new 
Float:g_bCheckpointAngle[33][3];
new 
Float:g_bCheckpointGravity[33][3];

new const 
Float:VEC_DUCK_HULL_MIN[3] = {-16.0, -16.0, -18.0}
new const 
Float:VEC_DUCK_HULL_MAX[3] = {16.016.032.0}
new const 
Float:VEC_DUCK_VIEW[3] = {0.00.012.0}
new const 
Float:VEC_NULL[3] = {0.00.00.0}

public 
plugin_init() {
    
register_plugin(PLUGIN_NAMEPLUGIN_VERSIONPLUGIN_AUTHOR)
    
    
register_clcmd("say /teleport""gocheckpoint");
    
register_clcmd("say /checkpoints""checkpoint_menu");
    
register_clcmd("say /cp","checkpoint_menu");
}
public 
client_connect(id) {
    
g_bHasCheckpoint[id] = false;
}

public 
checkpoint_menu(id){
    
    new 
menu menu_create("Checkpoint Menu""menu_handler");
    
    
menu_additem(menu"Save Checkpoint"""0);
    
menu_additem(menu"Delete Checkpoint"""0);
    
menu_additem(menu"Teleport"""0);
    
    
menu_setprop(menuMPROP_EXITMEXIT_ALL);
    
menu_display(idmenu0);
    
    return 
PLUGIN_HANDLED;
}
public 
menu_handler(idmenuitem){
    
    if(
item == MENU_EXIT)
    {
        
menu_cancel(id);
        return 
PLUGIN_HANDLED;
    }
    
    new 
command[6], name[64], accesscallback;
    
    
menu_item_getinfo(menuitemaccesscommandsizeof command 1namesizeof name 1callback);
    
    switch(
item)
    {
        case 
0:SaveCheckpoint(id)
        case 
1:RemoveCheckpoint(id)
        case 
2:fwTeleport(id)
    }
    
menu_display(idmenu0);
    return 
PLUGIN_HANDLED;
}


public 
fwTeleport(id){
    
    if (!
is_user_connected(id) || cs_get_user_team(id) == CS_TEAM_SPECTATOR)         return;
    
ExecuteHamB(Ham_CS_RoundRespawnid)
    
    if(
g_bHasCheckpoint[id] == true) {
        
LoadCheckpoint(id);
    }
}
public 
gocheckpoint(id){
    
    if(
is_user_alive(id)){
        
fwTeleport(id);
    }
    return 
PLUGIN_HANDLED;
}

public 
SaveCheckpoint(id){
    
    if ( !
is_user_alive(id) ) 
    {
        
client_print(idprint_chat"You have to be alive to save the checkpoint.");
        return 
PLUGIN_HANDLED;
    }
    
    
pev(idpev_origing_bCheckpointOrigin[id])
    
pev(idpev_v_angleg_bCheckpointAngle[id])
    
pev(idpev_gravityg_bCheckpointGravity[id][2])

    
client_print(idprint_chat"Checkpoint saved!");
    
    if ( !
g_bHasCheckpoint[id] )            g_bHasCheckpoint[id] = true;
    
    return 
PLUGIN_HANDLED;
}
public 
LoadCheckpoint(id) {
    
    if ( !
is_user_alive(id) )
    {
        
client_print(idprint_chat"You have to be alive if you want to teleport.");
        return 
PLUGIN_HANDLED;
    }
    
set_checkpoint(idg_bCheckpointOrigin[id], g_bCheckpointAngle[id])
    
    return 
PLUGIN_HANDLED;
}
public 
RemoveCheckpoint(id)
{
    
g_bHasCheckpoint[id] = false;
    
client_print(idprint_chat"Checkpoint removed!")
}

set_checkpoint(idFloat:flOrigin[3], Float:flAngles[3]) {
    
    new 
iFlags pev(idpev_flags)
    
iFlags &= ~FL_BASEVELOCITY
    iFlags 
|= FL_DUCKING
    set_pev
(idpev_flagsiFlags)
    
engfunc(EngFunc_SetSizeidVEC_DUCK_HULL_MINVEC_DUCK_HULL_MAX)
    
engfunc(EngFunc_SetOriginidflOrigin)
    
set_pev(idpev_view_ofsVEC_DUCK_VIEW)
    
    
set_pev(idpev_v_angleVEC_NULL)
    
set_pev(idpev_velocityVEC_NULL)
    
set_pev(idpev_basevelocityVEC_NULL)
    
set_pev(idpev_anglesflAngles)
    
set_pev(idpev_punchangleVEC_NULL)
    
set_pev(idpev_fixangle1)
    
    
set_pev(idpev_gravityflAngles[2])
    
    
set_pev(idpev_fuser20.0)


Przeczytaj cały wpis

Odnośnik do komentarza
Udostępnij na innych stronach

Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.
 Udostępnij

  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...