/* Plugin generated by AMXX-Studio */
#include <amxmodx>
#include <amxmisc>
#include <fun>
#include <cstrike>
#include <engine>
#include <hamsandwich>
#include <fakemeta>
native jb_get_user_packs(id)
native jb_set_user_packs(id, ammount)
#define PLUGIN "Plugin Adi"
#define VERSION "1.0"
#define AUTHOR "PawNod'"
#define TAG "Cenka"
new bool:hook[33]
new hook_to[33][3]
new hook_speed_cvar
new bool:has_hook[33]
new beamsprite
new spidermanmk[33]
new batman_ucma[64],dusme_hasari[33];
new bool:ironman_hasar[33]
public plugin_init() {
register_plugin(PLUGIN, VERSION, AUTHOR)
register_concmd("+spiderman","hook_aktif")
register_concmd("-spiderman","hook_off")
hook_speed_cvar = register_cvar("hook_speed","5")
register_clcmd("say /ktmenu","karaktermenu")
register_clcmd("say /ironman","ironmanoluyor")
register_clcmd("say /batman","batmanol")
register_clcmd("say /spiderman","spidermanoluyor")
register_logevent("Event_RoundStart", 2, "1=Round_Start")
RegisterHam(Ham_TakeDamage, "player", "OnCBasePlayer_TakeDamage")
}
public plugin_precache()
{
beamsprite = precache_model("sprites/olympos.spr")
precache_sound("hook/oly.wav")
}
public Event_RoundStart()
{
for(new i; i < get_maxplayers(); i++) {
spidermanmk[i] = 0
dusme_hasari[i] = 0
batman_ucma[i] = 0
ironman_hasar[i] = false
}
}
public karaktermenu(id) {
if(is_user_alive(id)) {
new menu = menu_create("\rSuper Karakter Menusu","ktmenudevam")
menu_additem(menu,"\yBATMAN","1",0)
menu_additem(menu,"\yIRONMAN","2",0)
menu_additem(menu,"\ySPIDERMAN","3",0)
menu_setprop(menu, MPROP_EXIT, MEXIT_ALL)
menu_display(id, menu, 0)
} else {
renkli_yazi(id,"!t[ !n%s !t] !gBu Menuye Sadece !tYasayanlar Girebilir",TAG)
}
return PLUGIN_HANDLED
}
public ktmenudevam(id, menu, item) {
if( item == MENU_EXIT ) {
menu_destroy(menu)
return PLUGIN_HANDLED
}
new acces, callback, data[6], iname[64]
menu_item_getinfo(menu, item, acces, data, 5, iname, 63, callback)
switch(str_to_num(data))
{
case 1:
{
batmanyonlendirme(id)
}
case 2:
{
ironmanyonlendirme(id)
}
case 3:
{
SpiderManMenu(id)
}
}
menu_destroy(menu)
return PLUGIN_HANDLED
}
public batmanyonlendirme(id) {
if(is_user_alive(id)) {
new menu, Menuz[512]
formatex(Menuz, charsmax(Menuz), "\w(%s) \y~ \yBatman MENU",TAG)
menu = menu_create(Menuz, "batmanyonlendirme_devam")
formatex(Menuz, charsmax(Menuz), "\yBatman \rAl")
menu_additem(menu, Menuz, "1")
formatex(Menuz, charsmax(Menuz), "\wCikis Yap")
menu_setprop(menu,MPROP_EXITNAME,Menuz)
menu_setprop(menu, MPROP_NUMBER_COLOR, "\r~" )
menu_display(id, menu, 0)
}
}
public batmanyonlendirme_devam(id,amenu,item)
{
if(item == MENU_EXIT)
{
menu_destroy(amenu)
return PLUGIN_HANDLED
}
new acces, callback, data[6], iname[64]
menu_item_getinfo(amenu, item, acces, data, 5, iname, 63,callback)
new key = str_to_num(data)
switch(key){
case 1 :{
if(jb_get_user_packs(id) >= 100) {
batmanol(id)
}
else{
renkli_yazi(id,"!t[!g %s !t] !nYeterli !t[ !gTL !t] !n'niz Yok.",TAG)
}
}
}
menu_destroy(amenu)
return PLUGIN_HANDLED
}
public ironmanyonlendirme(id) {
if(is_user_alive(id)) {
new menu, Menuz[512]
formatex(Menuz, charsmax(Menuz), "\w(%s) \y~ \yIronman MENU",TAG)
menu = menu_create(Menuz, "ironmanyonlendirme_devam")
formatex(Menuz, charsmax(Menuz), "\yIRONMAN \rAl")
menu_additem(menu, Menuz, "1")
formatex(Menuz, charsmax(Menuz), "\wCikis Yap")
menu_setprop(menu,MPROP_EXITNAME,Menuz)
menu_setprop(menu, MPROP_NUMBER_COLOR, "\r~" )
menu_display(id, menu, 0)
}
}
public ironmanyonlendirme_devam(id,amenu,item)
{
if(item == MENU_EXIT)
{
menu_destroy(amenu)
return PLUGIN_HANDLED
}
new acces, callback, data[6], iname[64]
menu_item_getinfo(amenu, item, acces, data, 5, iname, 63,callback)
new key = str_to_num(data)
switch(key){
case 1 :{
if(jb_get_user_packs(id) >= 70) {
ironmanoluyor(id)
}
else{
renkli_yazi(id,"!t[!g %s !t] !nYeterli !t[ !gTL !t] !n'niz Yok.",TAG)
}
}
}
menu_destroy(amenu)
return PLUGIN_HANDLED
}
public ironmanoluyor(id) {
if(get_user_team(id) == 1) {
if(jb_get_user_packs(id) >= 70) {
new isimcik[64]
get_user_name(id,isimcik,63)
jb_set_user_packs(id,jb_get_user_packs(id) - 70)
set_user_health(id,300)
set_user_armor(id,500)
set_user_maxspeed(id, 350.0)
set_user_gravity(id,0.3)
dusme_hasari[id] = true
ironman_hasar[id] = true
renkli_yazi(0,"!t[ !g%s !t] !nIsimli Oyuncu !gIronMan'a !nDonustu!",isimcik )
}
else {
renkli_yazi(id,"!gParan Yok! Gereken : !t70 !gJB")
}
}
}
public batmanol(id) {
if(get_user_team(id) == 1) {
if(jb_get_user_packs(id) >= 100) {
new isimcik[64]
get_user_name(id,isimcik,63)
set_user_health(id,200)
set_user_armor(id,150)
set_user_maxspeed(id,280.0)
dusme_hasari[id] = true
batman_ucma[id] = true
jb_set_user_packs(id,jb_get_user_packs(id) - 100)
renkli_yazi(0,"!t[ !g%s !t] !nIsimli Oyuncu !gBatman'a !nDonustu!",isimcik)
}
else {
renkli_yazi(id,"!gYeterli Paran Yok!")
}
}
}
public client_PreThink(id){
if(batman_ucma[id] == 1){
if(!(get_user_button(id) & IN_JUMP)) {
return PLUGIN_CONTINUE;
}
new Float:fAim[3] , Float:fVelocity[3];
VelocityByAim(id , 700 , fAim);
fVelocity[0] = fAim[0];
fVelocity[1] = fAim[1];
fVelocity[2] = fAim[2];
set_user_velocity(id , fVelocity);
}
return PLUGIN_CONTINUE
}
public hook_aktif(id,level,cid)
{
if(spidermanmk[id] == 1){
set_user_gravity(id,0.0)
set_task(0.1,"hook_prethink",id+10000,"",0,"b")
hook[id]=true
hook_to[id][0]=999999
hook_prethink(id+10000)
emit_sound(id,CHAN_VOICE,"hook/oly.wav", 1.0, ATTN_NORM, 0, PITCH_NORM)
return PLUGIN_CONTINUE
}
return PLUGIN_CONTINUE
}
public hook_off(id)
{
if(is_user_alive(id)) set_user_gravity(id)
hook[id]=false
return PLUGIN_HANDLED
}
public hook_prethink(id)
{
id -= 10000
if(!is_user_alive(id))
{
hook[id]=false
}
if(!hook[id])
{
remove_task(id+10000)
return PLUGIN_HANDLED
}
//Get Id's origin
static origin1[3]
get_user_origin(id,origin1)
if(hook_to[id][0]==999999)
{
static origin2[3]
get_user_origin(id,origin2,3)
hook_to[id][0]=origin2[0]
hook_to[id][1]=origin2[1]
hook_to[id][2]=origin2[2]
}
//ct icin renk olustur
message_begin(MSG_BROADCAST,SVC_TEMPENTITY)
write_byte(1) // baslatalim
write_short(id) // start entity
write_coord(hook_to[id][0])
write_coord(hook_to[id][1])
write_coord(hook_to[id][2])
write_short(beamsprite)
write_byte(1) // framestart
write_byte(1) // framerate
write_byte(2) // life in 0.1's
write_byte(5) // width
write_byte(0) // noise
write_byte(225) // red
write_byte(225) // green
write_byte(225) // blue
write_byte(100) // brightness
write_byte(0) // speed
message_end()
static Float:velocity[3]
velocity[0] = (float(hook_to[id][0]) - float(origin1[0])) * 3.0
velocity[1] = (float(hook_to[id][1]) - float(origin1[1])) * 3.0
velocity[2] = (float(hook_to[id][2]) - float(origin1[2])) * 3.0
static Float:y
y = velocity[0]*velocity[0] + velocity[1]*velocity[1] + velocity[2]*velocity[2]
static Float:x
x = (get_pcvar_float(hook_speed_cvar) * 120.0) / floatsqroot(y)
velocity[0] *= x
velocity[1] *= x
velocity[2] *= x
set_pev(id,pev_velocity,velocity)
return PLUGIN_CONTINUE
}
public SpiderManMenu(id) {
new contador=0;
new players[32], num, tempid;
get_players(players, num)
for (new i=0; i<num; i++) {
tempid = players[i]
if (get_user_team(tempid)==1 && is_user_alive(tempid))
{
contador++; }
}
if ( contador == 1 ) {
renkli_yazi(id,"!n[!t %s !n] !gSon Mahkum Bu Menuden yararlanamaz",TAG)
set_task(0.1,"olumsuz_ses",id)
}
else if ( contador >= 2 )
{
new menu, Menuz[512]
formatex(Menuz, charsmax(Menuz), "\w(CG) \y~ \ySPIDERMAN MENU")
menu = menu_create(Menuz, "SpiderManMenu_devam")
formatex(Menuz, charsmax(Menuz), "\ySPIDERMAN [Hook] \r[- \d100JB \r-]^n\wKullanim: \wB Tusu Ile \rHook \wAtar")
menu_additem(menu, Menuz, "1")
formatex(Menuz, charsmax(Menuz), "\wCikis Yap")
menu_setprop(menu,MPROP_EXITNAME,Menuz)
menu_setprop(menu, MPROP_NUMBER_COLOR, "\r~" )
menu_display(id, menu, 0)
}
}
public OnCBasePlayer_TakeDamage( id, iInflictor, iAttacker, Float:flDamage, bitsDamageType )
{
if( bitsDamageType & DMG_FALL && dusme_hasari[id])
{
return HAM_SUPERCEDE
}
if(ironman_hasar[id])
{
SetHamParamFloat(4, flDamage * 0.5)
}
return HAM_IGNORED
}
public SpiderManMenu_devam(id,amenu,item)
{
if(item == MENU_EXIT)
{
menu_destroy(amenu)
return PLUGIN_HANDLED
}
new acces, callback, data[6], iname[64]
menu_item_getinfo(amenu, item, acces, data, 5, iname, 63,callback)
new key = str_to_num(data)
switch(key){
case 1 :{
if(jb_get_user_packs(id) >= 100) {
jb_set_user_packs(id,jb_get_user_packs(id) - 100)
spidermanmk[id] = 1
renkli_yazi(0,"!n[- !t%s !n-] !gMahkumlardan Biri !tSpiderman'a !gDonustu!",TAG)
}
else{
renkli_yazi(id,"!t[!g %s !t] !nYeterli !t[ !gTL !t] !n'niz Yok.",TAG)
}
}
}
menu_destroy(amenu)
return PLUGIN_HANDLED
}
stock renkli_yazi(const id, const input[], any:...)
{
new count = 1, players[32];
static msg[191];
vformat(msg, 190, input, 3);
replace_all(msg, 190, "!n", "^x01"); // Default Renk(Sar??
replace_all(msg, 190, "!g", "^x04"); // Ye??Renk
replace_all(msg, 190, "!t", "^x03"); // Tak??enk( CT mavi , T k??z??
if (id) players[0] = id; else get_players(players, count, "ch"); {
for (new i = 0; i < count; i++)
{
if (is_user_connected(players[i]))
{
message_begin(MSG_ONE_UNRELIABLE, get_user_msgid("SayText"), _, players[i]);
write_byte(players[i]);
write_string(msg);
message_end();
}
}
}
}
/* AMXX-Studio Notes - DO NOT MODIFY BELOW HERE
*{\\ rtf1\\ ansi\\ deff0{\\ fonttbl{\\ f0\\ fnil Tahoma;}}\n\\ viewkind4\\ uc1\\ pard\\ lang1055\\ f0\\ fs16 \n\\ par }
*/