Raised This Month: $12 Target: $400
 3% 

gundam


Post New Thread Reply   
 
Thread Tools Display Modes
Author Message
The_One
Senior Member
Join Date: Jul 2005
Old 01-17-2006 , 05:10   gundam
Reply With Quote #1

i have gundam on my server and when i kill with the m4 (green arrow shots) it doesnt give me XP anyone know why?

EDIT: here is the gundam sma....

Code:
#include <amxmod.inc>  #include <amxmisc>  #include <xtrafun>  #include <vexd_utilities>  #include <superheromod.inc>  // Strike Gundam  // GLOBAL VARIABLES  new gHeroName[]="Strike Gundam"  new bool:gHasgundamPower[SH_MAXSLOTS+1]  new bool:gmorphed[SH_MAXSLOTS+1]  new ggundamSound[]="items/suitchargeno1.wav"  new ggundamsFired[33] = 0  new gSpriteWhite, gRadius, gBright  new gTaskID  #define TE_USERgundam       127  new gLastWeapon[33]=0  new gLastClipCount[33]=0  new lastammo[33]  new lastweap[33]  new spr_laser  new spr_fireball  new spr_fxplode1  //----------------------------------------------------------------------------------------------  public plugin_init()  {     // Plugin Info     register_plugin("SUPERHERO Strike Gundam", "1.0", "thechosenone")     // DO NOT EDIT THIS FILE TO CHANGE CVARS, USE THE SHCONFIG.CFG     register_cvar("gundam_level", "14")     register_cvar("gundam_teamglow", "0")     register_cvar("gundam_health", "200")     register_cvar("gundam_armor", "350")     register_cvar("gundam_gravity", ".35")     register_cvar("gundam_speed", "900")     register_cvar("gundam_radius", "1000")     register_cvar("gundam_bright", "128")     if ( !cvar_exists("gundam_shot") ) register_cvar("gundam_shot", "3")     if ( !cvar_exists("gundam_getm4a1") ) register_cvar("gundam_getm4a1", "1")     if (get_cvar_num("gundam_mode")!=1){         shCreateHero(gHeroName, "Strike Gundam", "See Bullets/ESP/Gravity/Gundam Model", false, "gundam_level" )         }else{         shCreateHero(gHeroName, "Strike Gundam", "See Bullets/ESP/Gravity/Gundam Model", false, "gundam_level" )     }     // REGISTER EVENTS THIS HERO WILL RESPOND TO! (AND SERVER COMMANDS)     // INIT     register_srvcmd("gundam_init", "gundam_init")     shRegHeroInit(gHeroName, "gundam_init")     register_event("Damage", "gundam_damage", "b", "2!0")     register_event("ResetHUD","newRound","b")     register_event("CurWeapon","changeWeapon","be","1=1")     register_event("CurWeapon","make_tracer", "be", "1=1", "3>0")     register_event("ResetHUD", "newSpawn", "b")     register_event("CurWeapon", "weaponChange", "be", "1=1")     register_event("CurWeapon", "make_gundam", "be", "1=1", "3>0")     register_event("DeathMsg", "gundam_death", "a")     //ESP Rings Task     set_task(2.0, "gundam_esploop", 0, "", 0, "b")     //Set a random number to the looping task so it can be removed without conflict     gTaskID = random_num(10181, 100000)     // Let Server know about Strike Gundam Variables     shSetShieldRestrict(gHeroName)     shSetMaxHealth(gHeroName, "gundam_health")     shSetMaxArmor(gHeroName, "gundam_armor")     shSetMinGravity(gHeroName, "gundam_gravity")     shSetMaxSpeed(gHeroName, "gundam_speed", "[0]")  }  //----------------------------------------------------------------------------------------------  public gundam_init()  {     // First Argument is an id     new temp[6]     read_argv(1,temp,5)     new id = str_to_num(temp)     // 2nd Argument is 0 or 1 depending on whether the id has Strike Gundam     read_argv(2,temp,5)     new hasPowers = str_to_num(temp)     gHasgundamPower[id] = (hasPowers!=0)     //Reset thier shield restrict status     //Shield restrict MUST be before weapons are given out     shResetShield(id)     {     }     if ( is_user_connected(id) ) {         if ( gHasgundamPower[id] ) {             gundam_weapons(id)             gundam_tasks(id)         }         else {             engclient_cmd(id, "drop", "weapon_m4a1")             gundam_unmorph(id)             shRemHealthPower(id)             shRemArmorPower(id)             shRemGravityPower(id)             shRemSpeedPower(id)         }     }  }  //----------------------------------------------------------------------------------------------  public plugin_precache()  {     precache_model("models/player/Gundam/Gundam.mdl")     precache_sound(ggundamSound)     gSpriteWhite = precache_model("sprites/white.spr")     spr_fireball = precache_model("sprites/shmod/fireball.spr")     spr_fxplode1 = precache_model("sprites/shmod/fxplode1.spr")     spr_laser = precache_model("sprites/laserbeam.spr")     return PLUGIN_CONTINUE  }  //----------------------------------------------------------------------------------------------  public newRound(id)  {     new parm[1]     parm[0]=id     ggundamsFired[id] = 0     gPlayerUltimateUsed[id]=false     gLastWeapon[id]=-1  // I think the change Weapon automatically gets called on spawn death too...     if (gHasgundamPower[id] && get_cvar_num("gundam_getm4a1")==1) {         shGiveWeapon(id,"weapon_m4a1")     }  }  //--------------------------------------------------------------------------------------------------------------  public gundam_damage(id)  {     if (!shModActive()) return PLUGIN_CONTINUE     new damage = read_data(2)     new weapon, bodypart, attacker_id = get_user_attacker(id,weapon,bodypart)     if ( attacker_id <=0 || attacker_id>SH_MAXSLOTS ) return PLUGIN_CONTINUE     if ( gHasgundamPower[attacker_id] && weapon == CSW_M4A1 && is_user_alive(id) && (!gPlayerUltimateUsed[attacker_id]))     {         new health = get_user_health(id)         // mah nigga $id wasn't attacked by another player         if (!is_user_connected(attacker_id)) return PLUGIN_CONTINUE         if (attacker_id == id) return PLUGIN_CONTINUE         // damage is less than 10%         if (((1.0 * damage) / (1.0 * (health + damage))) < 0.01) return PLUGIN_CONTINUE         new origin[3]         new attacker_team[2], victim_team[2]         get_user_origin(id, origin)         // player fades..         set_user_rendering(id, kRenderFxFadeSlow, 255, 255, 255, kRenderTransColor, 4);         // beeeg explody!         message_begin(MSG_ALL, SVC_TEMPENTITY)         write_byte(3)            // TE_EXPLOSION         write_coord(origin[0])         write_coord(origin[1])         write_coord(origin[2]-22)         write_short(spr_fxplode1)    // mushroom cloud         write_byte(40)            // scale in 0.1u         write_byte(12)            // frame rate         write_byte(12)            // TE_EXPLFLAG_NOPARTICLES & TE_EXPLFLAG_NOSOUND         message_end()         // do turn down that awful racket         // ..to be replaced by a blood spurt!         message_begin(MSG_ALL, SVC_TEMPENTITY)         write_byte(10)        // TE_LAVASPLASH         write_coord(origin[0])         write_coord(origin[1])         write_coord(origin[2]-26)         message_end()         // kill victim         user_kill(id, 1)         message_begin( MSG_ALL, get_user_msgid("DeathMsg"),{0,0,0},0)         write_byte(attacker_id)         write_byte(id)         write_byte(0)         write_string("m4a1")         message_end()         //Save Hummiliation         new namea[24],namev[24],authida[20],authidv[20],teama[8],teamv[8]         //Info On Attacker         get_user_name(attacker_id,namea,23)         get_user_team(attacker_id,teama,7)         get_user_authid(attacker_id,authida,19)         //Info On Victim         get_user_name(id,namev,23)         get_user_team(id,teamv,7)         get_user_authid(id,authidv,19)         //Log This Kill         log_message("^"%s<%d><%s><%s>^" killed ^"%s<%d><%s><%s>^" with ^"Strike Gundam Blast^"",         namea,get_user_userid(attacker_id),authida,teama,namev,get_user_userid(id),authidv,teamv)         /* set_user_health(id, 0) */         // team check!         get_user_team(attacker_id, attacker_team, 1)         get_user_team(id, victim_team, 1)         // for some reason this doesn't update in the hud until the next round.. whatever.         if (!equali(attacker_team, victim_team)) {             // diff. team;    $attacker_id gets credited for the kill and $250 and XP.             //        $id gets their suicidal -1 frag back.             set_user_frags(attacker_id, get_user_frags(attacker_id)+1)             set_user_money(attacker_id, get_user_money(attacker_id)+150)             shAddXP(attacker_id, id, 1)         }         else {             // same team;    $attacker loses a frag and $500 and XP.             set_user_frags(attacker_id, get_user_frags(attacker_id)-1)             set_user_money(attacker_id, get_user_money(attacker_id)-500, 0)             shAddXP(attacker_id, id, -1)         }         return PLUGIN_CONTINUE     }     return PLUGIN_CONTINUE  }  //--------------------------------------------------------------------------------------  public make_tracer(id) {     if (!shModActive()) return PLUGIN_CONTINUE     new weap = read_data(2)        // id of the weapon     new ammo = read_data(3)        // ammo left in clip     if ( gHasgundamPower[id] && weap == CSW_M4A1 && is_user_alive(id) && (!gPlayerUltimateUsed[id]) ) {         if (lastweap[id] == 0) lastweap[id] = weap         if ((lastammo[id] > ammo) && (lastweap[id] == weap)) {             new vec1[3], vec2[3]             get_user_origin(id, vec1, 1) // origin; where you are             get_user_origin(id, vec2, 4) // termina; where your bullet goes             // tracer beam             message_begin(MSG_PAS, SVC_TEMPENTITY, vec1)             write_byte(0)        // TE_BEAMPOINTS             write_coord(vec1[0])             write_coord(vec1[1])             write_coord(vec1[2])             write_coord(vec2[0])             write_coord(vec2[1])             write_coord(vec2[2])             write_short(spr_laser)    // laserbeam sprite             write_byte(0)        // starting frame             write_byte(10)        // frame rate             write_byte(2)        // life in 0.1s             write_byte(4)        // line width in 0.1u             write_byte(1)        // noise in 0.1u             write_byte(0)        // red             write_byte(153)      // green             write_byte(0)        // blue             write_byte(80)        // brightness             write_byte(100)        // scroll speed             message_end()             // bullet impact explosion             message_begin(MSG_PAS, SVC_TEMPENTITY, vec2)             write_byte(3)        // TE_EXPLOSION             write_coord(vec2[0])    // end point of beam             write_coord(vec2[1])             write_coord(vec2[2])             write_short(spr_fireball)    // blast sprite             write_byte(10)            // scale in 0.1u             write_byte(30)            // frame rate             write_byte(8)            // TE_EXPLFLAG_NOPARTICLES             message_end()            // ..unless i'm mistaken, noparticles helps avoid a crash         }         lastammo[id] = ammo         lastweap[id] = weap         return PLUGIN_CONTINUE     }     return PLUGIN_CONTINUE  }  //----------------------------------------------------------------------------------------------  public changeWeapon(id)  {     if ( !gHasgundamPower[id] || !shModActive() ) return PLUGIN_CONTINUE     new  clip, ammo     new wpn_id=get_user_weapon(id, clip, ammo);     if ( wpn_id!=CSW_M4A1 ) return PLUGIN_CONTINUE     // This event gets trigger on a switch to a weapon too...     // Easy work around     if ( wpn_id != gLastWeapon[id] )     {         gLastWeapon[id]=wpn_id         return PLUGIN_CONTINUE // user just switched weapons     }     if ( clip >= gLastClipCount[id] )     {         gLastClipCount[id]=clip         return PLUGIN_CONTINUE     }     gLastClipCount[id]=clip     // Ok - if it fell through here - you got a user firing the m4a1     // Bullet Count     ggundamsFired[id]=(ggundamsFired[id] + 1)     new shot = (get_cvar_num("gundam_shot")-ggundamsFired[id])     if (shot == 0) {         gPlayerUltimateUsed[id]=true     }     if (shot <= 0) {         gPlayerUltimateUsed[id]=true     }     if ((shot != 0) && shot >= 0 ) {         new message[128]         format(message, 127, "You Have %d Strike Gundam Blasts Left",shot)         set_hudmessage(255,0,0,-1.0,0.3,0,0.25,1.0,0.0,0.0,4)         show_hudmessage(id, message)     }     return PLUGIN_CONTINUE  }  //----------------------------------------------------------------------------------------------  public gundam_esploop()  {     if (!shModActive()) return     new players[SH_MAXSLOTS]     new pnum, vec1[3]     new idring, id     gRadius = get_cvar_num("gundam_radius")     gBright = get_cvar_num("gundam_bright")     get_players(players,pnum,"a")     for(new i = 0; i < pnum; i++) {         idring = players[i]         if (!is_user_alive(idring)) continue         if (!get_user_origin(idring,vec1,0)) continue         for (new j = 0; j < pnum; j++) {             id = players[j]             if (!gHasgundamPower[id]) continue             if (!is_user_alive(id)) continue             if (idring == id) continue             message_begin(MSG_ONE,SVC_TEMPENTITY,vec1,id)             write_byte( 21 )             write_coord(vec1[0])             write_coord(vec1[1])             write_coord(vec1[2] + 16)             write_coord(vec1[0])             write_coord(vec1[1])             write_coord(vec1[2] + gRadius )             write_short( gSpriteWhite )             write_byte( 0 ) // startframe             write_byte( 1 ) // framerate             write_byte( 6 ) // 3 life 2             write_byte( 8 ) // width 16             write_byte( 1 ) // noise             write_byte( 0 ) // r             write_byte( 255 ) // g             write_byte( 0 ) // b             write_byte( gBright ) //brightness             write_byte( 0 ) // speed             message_end()         }     }  }  //----------------------------------------------------------------------------------------------  public make_gundam(id)  {     new weap = read_data(2)   // id of the weapon     new ammo = read_data(3)   // ammo left in clip     new pteam[16]     new players[32]     new i, n     get_user_team(id, pteam, 15)     if (lastweap[id] == 0) lastweap[id] = weap     if ((lastammo[id] > ammo) && (lastweap[id] == weap)) {         get_players(players, n, "c")         new vec[3]         new aimvec[3]         new velocityvec[3]         new length         new speed = 2400         get_user_origin(id,vec)         get_user_origin(id,aimvec,4)         vec[2] -= 6         velocityvec[0]=aimvec[0]-vec[0]         velocityvec[1]=aimvec[1]-vec[1]         velocityvec[2]=aimvec[2]-vec[2]         length=sqrt(velocityvec[0]*velocityvec[0]+velocityvec[1]*velocityvec[1]+velocityvec[2]*velocityvec[2])         velocityvec[0]=velocityvec[0]*speed/length         velocityvec[1]=velocityvec[1]*speed/length         velocityvec[2]=velocityvec[2]*speed/length         for(i = 0; i < n; i++)         if ((is_user_connected(players[i])) && (gHasgundamPower[players[i]]==true))         draw_gundam_for(players[i], pteam, vec , velocityvec)     }     lastammo[id] = ammo     lastweap[id] = weap     return PLUGIN_CONTINUE  }  //----------------------------------------------------------------------------------------------  public draw_gundam_for(pl, pteam[], vec[3], velocityvec[3])  {     message_begin(MSG_ONE, SVC_TEMPENTITY, vec, pl)     write_byte(TE_USERgundam)     write_coord(vec[0])  // start point     write_coord(vec[1])     write_coord(vec[2])     write_coord(velocityvec[0])  // end point     write_coord(velocityvec[1])     write_coord(velocityvec[2])     write_byte(10)// byte ( life * 10 )     if (equali(pteam,"CT")) write_byte(3); else write_byte(1)     write_byte(15)// byte ( length * 10 )     message_end()     return PLUGIN_CONTINUE  }  //----------------------------------------------------------------------------------------------  public gundam_tasks(id)  {     set_task(1.0, "gundam_morph", id)     if( get_cvar_num("gundam_teamglow") ){         set_task(1.0, "gundam_glow", id+gTaskID, "", 0, "b" )     }  }  //----------------------------------------------------------------------------------------------  public gundam_sound(id)  {     new SND_STOP=(1<<5)     emit_sound(id, CHAN_AUTO, ggundamSound, 0.2, ATTN_NORM, SND_STOP , PITCH_NORM)     emit_sound(id, CHAN_AUTO, ggundamSound, 0.2, ATTN_NORM, 0, PITCH_NORM)  }  //----------------------------------------------------------------------------------------------  public gundam_morph(id)  {     if ( gmorphed[id] || !is_user_alive(id) ) return     #if defined AMXX_VERSION     cs_set_user_model(id, "Gundam")     #else     CS_SetModel(id, "Gundam")     #endif     gundam_sound(id)     // Message     set_hudmessage(50, 205, 50, -1.0, 0.40, 2, 0.02, 4.0, 0.01, 0.1, 7)     show_hudmessage(id, "Strike Gundam - All System Functional")     gmorphed[id] = true  }  //----------------------------------------------------------------------------------------------  public gundam_unmorph(id)  {     if ( gmorphed[id] ) {         // Message         set_hudmessage(50, 205, 50, -1.0, 0.40, 2, 0.02, 4.0, 0.01, 0.1, 7)         show_hudmessage(id, "Strike Gundam -EJECT, All System Down")         #if defined AMXX_VERSION         cs_reset_user_model(id)         #else         CS_ClearModel(id)         #endif         gundam_sound(id)         gmorphed[id] = false         if ( get_cvar_num("gundam_teamglow") ) {             remove_task(id+gTaskID)             set_user_rendering(id)         }     }  }  //----------------------------------------------------------------------------------------------  public gundam_glow(id)  {     id -= gTaskID     if ( !is_user_connected(id) ) {         //Don't want any left over residuals         remove_task(id+gTaskID)         return     }     if ( gHasgundamPower[id] && is_user_alive(id)) {         if ( get_user_team(id) == 1 ) {             shGlow(id, 255, 0, 0)         }         else {             shGlow(id, 0, 0, 255)         }     }  }  //-----------------------------------------------------------------------------------------------------  public newSpawn(id)  {     if ( gHasgundamPower[id] && is_user_alive(id) && shModActive() ) {         set_task(0.1, "gundam_weapons", id)         gundam_tasks(id)         new wpnid = read_data(2)         if (wpnid != CSW_M4A1 && wpnid > 0) {             new wpn[32]             get_weaponname(wpnid,wpn,31)             engclient_cmd(id,wpn)         }     }  }  //----------------------------------------------------------------------------------------------  public gundam_weapons(id)  {     if ( is_user_alive(id) ) {         shGiveWeapon(id,"weapon_m4a1")     }  }  //----------------------------------------------------------------------------------------------  public gundam_death()  {     new id = read_data(2)     gundam_unmorph(id)  }  //----------------------------------------------------------------------------------------------  public client_connect(id)  {     gmorphed[id] = false  }  //----------------------------------------------------------------------------------------------  public weaponChange(id)  {     if ( !gHasgundamPower[id] || !shModActive() ) return     new wpnid = read_data(2)     new clip = read_data(3)     if ( wpnid != CSW_M4A1 ) return     // Never Run Out of Ammo!     if ( clip == 0 ) {         shReloadAmmo(id)     }  }
__________________
[img]http://img106.**************/img106/970/spidermancopy5yf.gif[/img]
The_One is offline
MajesticM00se
Junior Member
Join Date: Apr 2004
Old 02-16-2006 , 00:10  
Reply With Quote #2

Code:
       // for some reason this doesn't update in the hud until the next round.. whatever.         if (!equali(attacker_team, victim_team)) {             // diff. team;    $attacker_id gets credited for the kill and $250 and XP.             //        $id gets their suicidal -1 frag back.             set_user_frags(attacker_id, get_user_frags(attacker_id)+1)             set_user_money(attacker_id, get_user_money(attacker_id)+150)             shAddXP(attacker_id, id, 1)         }         else {             // same team;    $attacker loses a frag and $500 and XP.             set_user_frags(attacker_id, get_user_frags(attacker_id)-1)             set_user_money(attacker_id, get_user_money(attacker_id)-500, 0)             shAddXP(attacker_id, id, -1)         }

says to me no xp is given till next round....

and seeing as your running the deathmatch mod it's possibly screwing with it
MajesticM00se is offline
vittu
SuperHero Moderator
Join Date: Oct 2004
Location: L.A. County, CA
Old 02-16-2006 , 02:54  
Reply With Quote #3

shAddXP must now be a float, change it to 1.0 and recopile, shAddXP(attacker_id, id, 1.0) and -1.0 for the other occurrence.
http://forums.alliedmods.net/showthread.php?t=34675
vittu is offline
Send a message via AIM to vittu Send a message via MSN to vittu Send a message via Yahoo to vittu
The_One
Senior Member
Join Date: Jul 2005
Old 02-16-2006 , 06:24  
Reply With Quote #4

updated. thanks
__________________
[img]http://img106.**************/img106/970/spidermancopy5yf.gif[/img]
The_One is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 03:28.


Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Theme made by Freecode