Ссылка на Сообщение
#1
30.1.2010, 14:47
Surf Boost
Surf Boost Plugin
When a player types "!sboost" they are boosted towards the location they are aiming at.
The further away that location is, the more powerful the boost.
In the options you can allow a player to either have one boost every 2 minutes,
or, infinite boosts per round. This was designed to be used on surf maps,
so that players can boost themselves along the ramp if they get stuck.
Players could also use it to help them further themselves in the map, but should not rely on it.
However it can be used on normal maps, and it is still incredibly fun on normal maps.
Requirements:
Eventscripts 1.5 +
ES_Tools v.418 +
Installation:
1.
First download and install eventscripts 1.5 or above, next download and install es_tools.
2.
After you have done that, create a folder called surf_boost in this directory:
cstrike/addons/eventscripts/
3.
After you have done that, copy and paste the script code into a text file,
name the file es_surf_boost.txt and then place the text file into the surf_boost folder.
4.
To change whether you want infinite boosts on or off open the text file in wordpad and change
"es_xsetinfo Infboosts 0"
Set to 1 for infinite, leave at 0 for once every 2 minutes.
Surf Boost Plugin
When a player types "!sboost" they are boosted towards the location they are aiming at.
The further away that location is, the more powerful the boost.
In the options you can allow a player to either have one boost every 2 minutes,
or, infinite boosts per round. This was designed to be used on surf maps,
so that players can boost themselves along the ramp if they get stuck.
Players could also use it to help them further themselves in the map, but should not rely on it.
However it can be used on normal maps, and it is still incredibly fun on normal maps.
Requirements:
Eventscripts 1.5 +
ES_Tools v.418 +
Installation:
1.
First download and install eventscripts 1.5 or above, next download and install es_tools.
2.
After you have done that, create a folder called surf_boost in this directory:
cstrike/addons/eventscripts/
3.
After you have done that, copy and paste the script code into a text file,
name the file es_surf_boost.txt and then place the text file into the surf_boost folder.
4.
To change whether you want infinite boosts on or off open the text file in wordpad and change
"es_xsetinfo Infboosts 0"
Set to 1 for infinite, leave at 0 for once every 2 minutes.
CODE
//Plugin by Kat_Fish
//
// With Special thanks to: Venjax, Zakk, Matteh, Clownfart
// eventscripts language by: mattie
// es_tools by: Awuh0
//
// By using this plugin you agree to the terms of use. (See bottom)
//
block load
{
es_xsetinfo Infboosts 0 // Set this to 1 to allow infinte boosts per round leave at 0 for 1 boost
//----DO----NOT----EDIT-----BELOW----THESE----LINES---
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
es_xsetinfo surf_boost 1
es_xmakepublic surf_boost
es_xdoblock corelib/noisy_on
es_xset loc 0
es_xset aim 0
es_xset vec 0
es_xset varx 0
es_xset vary 0
es_xset varz 0
}
block unload
{
es_xsetinfo surf_boost 0
es_xload corelib
es_xdoblock corelib/noisy_off
}
// When the player next spawns, reset whether the player has used their boost or not, reset it to 0 after 2 minutes
event player_spawn
{
es playervar set event_var(userid) Boosted 0
}
// When the player says !sboost or sboost or !boost do the check block
event player_say
{
if (event_var(text) equalto "!sboost") do
{
es_xdoblock surf_boost/check
}
if (event_var(text) equalto "sboost") do
{
es_xdoblock surf_boost/check
}
if (event_var(text) equalto "!boost") do
{
es_xdoblock surf_boost/check
}
}
//When the round ends, stop the timer for the boost after 2 minutes
event round_end
{
esx_setinfo roundend 1
// Check if they have already used the command this round
block check
{
if (server_var(Infboosts) = 0) do
{
es_xset boosted 0
es_xset check_var 0
es playervar exists check_var event_var(userid) Boosted
if (server_var(check_var) == 1) do
{
es playervar get boosted event_var(userid) Boosted
if (server_var(boosted) = 0) do
{
es_xdoblock surf_boost/boost_player
}
es playervar set event_var(userid) Boosted 1
}
}
else do
{
es_xdoblock surf_boost/boost_player
}
}
// The player boosting block
block boost_player
{
// Get the players location
es_getplayerprop loc event_var(userid) "CBaseEntity.m_vecOrigin"
//Get where the player is aiming
es est_GetviewCoord event_var(userid) varx vary varz
// create a vector string
es_createvectorstring aim server_var(varx) server_var(vary) server_var(varz)
// Create a vector from points
es_createvectorfrompoints vec server_var(loc) server_var(aim)
// Boost the player forward
es_setplayerprop event_var(userid) "CCSPlayer.baseclass.localdata.m_vecBaseVelocity" server_var(vec)
// Get the players name and then send a message throughout the server saying player * has boosted
es_xsetinfo playername 0
es_getplayername playername event_var(userid)
es_msg #multi #lightgreen server_var(playername)#default has boosted!
// Resets the view variables
es_xset varx 0
es_xset vary 0
es_xset varz 0
}
// By using this plugin you agree to the following terms of use.
// ---------------------PLUGIN TERMS OF USE---------------------------
// You may not release this script as your own
// If you modify this script you must keep the original credits in your
// modified version of it.
//
// With Special thanks to: Venjax, Zakk, Matteh, Clownfart
// eventscripts language by: mattie
// es_tools by: Awuh0
//
// By using this plugin you agree to the terms of use. (See bottom)
//
block load
{
es_xsetinfo Infboosts 0 // Set this to 1 to allow infinte boosts per round leave at 0 for 1 boost
//----DO----NOT----EDIT-----BELOW----THESE----LINES---
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
//------------------------------------------------------------------------------
es_xsetinfo surf_boost 1
es_xmakepublic surf_boost
es_xdoblock corelib/noisy_on
es_xset loc 0
es_xset aim 0
es_xset vec 0
es_xset varx 0
es_xset vary 0
es_xset varz 0
}
block unload
{
es_xsetinfo surf_boost 0
es_xload corelib
es_xdoblock corelib/noisy_off
}
// When the player next spawns, reset whether the player has used their boost or not, reset it to 0 after 2 minutes
event player_spawn
{
es playervar set event_var(userid) Boosted 0
}
// When the player says !sboost or sboost or !boost do the check block
event player_say
{
if (event_var(text) equalto "!sboost") do
{
es_xdoblock surf_boost/check
}
if (event_var(text) equalto "sboost") do
{
es_xdoblock surf_boost/check
}
if (event_var(text) equalto "!boost") do
{
es_xdoblock surf_boost/check
}
}
//When the round ends, stop the timer for the boost after 2 minutes
event round_end
{
esx_setinfo roundend 1
// Check if they have already used the command this round
block check
{
if (server_var(Infboosts) = 0) do
{
es_xset boosted 0
es_xset check_var 0
es playervar exists check_var event_var(userid) Boosted
if (server_var(check_var) == 1) do
{
es playervar get boosted event_var(userid) Boosted
if (server_var(boosted) = 0) do
{
es_xdoblock surf_boost/boost_player
}
es playervar set event_var(userid) Boosted 1
}
}
else do
{
es_xdoblock surf_boost/boost_player
}
}
// The player boosting block
block boost_player
{
// Get the players location
es_getplayerprop loc event_var(userid) "CBaseEntity.m_vecOrigin"
//Get where the player is aiming
es est_GetviewCoord event_var(userid) varx vary varz
// create a vector string
es_createvectorstring aim server_var(varx) server_var(vary) server_var(varz)
// Create a vector from points
es_createvectorfrompoints vec server_var(loc) server_var(aim)
// Boost the player forward
es_setplayerprop event_var(userid) "CCSPlayer.baseclass.localdata.m_vecBaseVelocity" server_var(vec)
// Get the players name and then send a message throughout the server saying player * has boosted
es_xsetinfo playername 0
es_getplayername playername event_var(userid)
es_msg #multi #lightgreen server_var(playername)#default has boosted!
// Resets the view variables
es_xset varx 0
es_xset vary 0
es_xset varz 0
}
// By using this plugin you agree to the following terms of use.
// ---------------------PLUGIN TERMS OF USE---------------------------
// You may not release this script as your own
// If you modify this script you must keep the original credits in your
// modified version of it.