AlliedModders

AlliedModders (https://forums.alliedmods.net/index.php)
-   Scripting Help (https://forums.alliedmods.net/forumdisplay.php?f=11)
-   -   error 035: argument type mismatch <argument 3> (https://forums.alliedmods.net/showthread.php?t=75226)

KingCommentor 08-01-2008 13:55

error 035: argument type mismatch <argument 3>
 
With this code

PHP Code:

/* WeaponMod Weapon

* (c) Copyright 2006, DevconeS 
* This file is provided as is (no warranties). 

*/ 
#include <amxmodx>
#include <fakemeta>
#include <weaponmod>
new PLUGIN[] = "WPN RPG"
new VERSION[] = "0.1"
new AUTHOR[] = "DevconeS(Edited by Humming Bird)"
new WPN_NAME[] = "RPG"
new WPN_SHORT[] = "rpg"
new P_MODEL[] = "models/p_rpg.mdl"
new V_MODEL[] = "models/v_rpg.mdl"
new W_MODEL[] = "models/w_rpg.mdl"
new ROCKET_MDL[] = "models/rpgrocket.mdl"
new ROCKET_SOUND[] = "weapons/rocketfire1.wav"
#define ROCKET_SPEED 1400
#define ROCKET_RADIUS 270.0
#define ROCKET_DAMAGE 200.0
// Sequences
enum
{
 
anim_idle1,
 
anim_fidget1,
 
anim_altfireon,
 
anim_altfirecycle,
 
anim_altfireoff,
 
anim_fire1,
 
anim_fire2,
 
anim_fire3,
 
anim_fire4,
 
anim_draw,
 
anim_holster
}
new 
g_wpnid
new g_trail,g_explosion
public plugin_precache() {
 
precache_model(P_MODEL)
 
precache_model(V_MODEL)
 
precache_model(W_MODEL)
 
 
precache_model(ROCKET_MDL)
 
precache_sound(ROCKET_SOUND)
 
 
g_trail precache_model("sprites/smoke.spr")
 
g_explosion precache_model("sprites/zerogxplode.spr")
}
public 
plugin_init() {
 
register_plugin(PLUGIN,VERSION,AUTHOR)
 
 
register_forward(FM_Touch,"fwd_Touch")
 
 
create_weapon()
}
create_weapon() {
 new 
wpnid wpn_register_weapon(WPN_NAME,WPN_SHORT)
 if(
wpnid == -1) return PLUGIN_CONTINUE
 
 wpn_set_string
(wpnid,wpn_viewmodel,V_MODEL)
 
wpn_set_string(wpnid,wpn_weaponmodel,P_MODEL)
 
wpn_set_string(wpnid,wpn_worldmodel,W_MODEL)
 
 
wpn_register_event(wpnid,event_attack1,"ev_attack1")
 
wpn_register_event(wpnid,event_draw,"ev_draw")
 
 
wpn_set_float(wpnid,wpn_refire_rate1,1.0)
 
wpn_set_float(wpnid,wpn_reload_time,2.0)
 
wpn_set_float(wpnid,wpn_recoil1,4.0)
 
wpn_set_float(wpnid,wpn_run_speed,210.0)
 
 
wpn_set_integer(wpnid,wpn_ammo1,4)
 
wpn_set_integer(wpnid,wpn_ammo2,20)
 
wpn_set_integer(wpnid,wpn_bullets_per_shot1,1)
 
wpn_set_integer(wpnid,wpn_cost,6000)
 
 
g_wpnid wpnid
 
return PLUGIN_CONTINUE
}
// vector_to_angle port
stock vec_to_angle(Float:vector[3],Float:output[3]) {
 new 
Float:angles[3]
 
engfunc(EngFunc_VecToAnglesvectorangles)
 
output[0] = angles[0]
 
output[1] = angles[1]
 
output[2] = angles[2]
}
public 
ev_attack1(id) {
 
wpn_playanim(id,random_num(anim_fire3,anim_fire4))
 
 new 
rocket engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"info_target"))
 if(!
rocket) return PLUGIN_CONTINUE
 
 
// Strings
 
set_pev(rocket,pev_classname,"wpn_rpg")
 
engfunc(EngFunc_SetModel,rocket,ROCKET_MDL)
 
 
// Integer
 
set_pev(rocket,pev_owner,id)
 
set_pev(rocket,pev_movetype,MOVETYPE_FLY)
 
set_pev(rocket,pev_solid,SOLID_BBOX)
 
 
// Floats
 
set_pev(rocket,pev_mins,Float:{-1.0,-1.0,-1.0})
 
set_pev(rocket,pev_maxs,Float:{1.0,1.0,1.0})
 
 new 
Float:fStart[3]
 
wpn_projectile_startpos(id,40,0,0,fStart)
 
set_pev(rocket,pev_origin,fStart)
 
 new 
Float:fVel[3]
 
velocity_by_aim(id,ROCKET_SPEED,fVel)  
 
set_pev(rocket,pev_velocity,fVel)
 
 new 
Float:fAngles[3]
 
vec_to_angle(fVel,fAngles)
 
set_pev(rocket,pev_angles,fAngles)
 
 
message_begin(MSG_BROADCASTSVC_TEMPENTITY)
 
write_byte(TE_BEAMFOLLOW)
 
write_short(rocket)
 
write_short(g_trail)
 
write_byte(25)
 
write_byte(5)
 
write_byte(224)
 
write_byte(224)
 
write_byte(255)
 
write_byte(255)
 
message_end()
 
 
emit_sound(rocketCHAN_WEAPONROCKET_SOUND1.0ATTN_NORM0PITCH_NORM)
 
 return 
PLUGIN_CONTINUE
}
public 
ev_draw(id)
 
wpn_playanim(id,anim_draw)
public 
fwd_Touch(ptrptd) {
 if(
pev_valid(ptr)) {
  new 
classname[32]
  
pev(ptr,pev_classname,classname,31)
 
  if(
equal(classname,"wpn_rpg")) {
   new 
Float:fOrigin[3],iOrigin[3]
   
pev(ptr,pev_origin,fOrigin)
 
   
iOrigin[0] = floatround(fOrigin[0])
   
iOrigin[1] = floatround(fOrigin[1])
   
iOrigin[2] = floatround(fOrigin[2])
 
   
message_begin(MSG_BROADCAST,SVC_TEMPENTITY,iOrigin)
   
write_byte(TE_EXPLOSION)
   
write_coord(iOrigin[0])
   
write_coord(iOrigin[1])
   
write_coord(iOrigin[2])
   
write_short(g_explosion)
   
write_byte(30)
   
write_byte(15)
   
write_byte(0)
   
message_end()
 
   new 
attacker pev(ptr,pev_owner)
   
wpn_radius_damage(g_wpnid,attacker,fOrigin,ROCKET_RADIUS,ROCKET_DAMAGE,DMG_BLAST// This is line 178
   
if(pev_valid(ptd)) {
    
pev(ptd,pev_classname,classname,31)
 
    if(
equal(classname,"func_breakable"))
     
dllfunc(DLLFunc_Use,ptd,ptr)
   }
   
set_pev(ptr,pev_flags,FL_KILLME)
  }
 }


I get this compiling error.
wpn_rpg.sma<178> : error 035 : argument type mismatch <argument 3>

I commented to show line 178

Drak 08-01-2008 14:05

Re: error 035: argument type mismatch <argument 3>
 
Code:
#include <amxmodx> #include <fakemeta> #include <weaponmod> new PLUGIN[] = "WPN RPG" new VERSION[] = "0.1" new AUTHOR[] = "DevconeS(Edited by Humming Bird)" new WPN_NAME[] = "RPG" new WPN_SHORT[] = "rpg" new P_MODEL[] = "models/p_rpg.mdl" new V_MODEL[] = "models/v_rpg.mdl" new W_MODEL[] = "models/w_rpg.mdl" new ROCKET_MDL[] = "models/rpgrocket.mdl" new ROCKET_SOUND[] = "weapons/rocketfire1.wav" #define ROCKET_SPEED 1400 #define ROCKET_RADIUS 270.0 #define ROCKET_DAMAGE 200.0 // Sequences enum {     anim_idle1,     anim_fidget1,     anim_altfireon,     anim_altfirecycle,     anim_altfireoff,     anim_fire1,     anim_fire2,     anim_fire3,     anim_fire4,     anim_draw,     anim_holster } new g_wpnid new g_trail,g_explosion public plugin_precache() {     precache_model(P_MODEL)     precache_model(V_MODEL)     precache_model(W_MODEL)         precache_model(ROCKET_MDL)     precache_sound(ROCKET_SOUND)         g_trail = precache_model("sprites/smoke.spr")     g_explosion = precache_model("sprites/zerogxplode.spr") } public plugin_init() {     register_plugin(PLUGIN,VERSION,AUTHOR)         register_forward(FM_Touch,"fwd_Touch")         create_weapon() } create_weapon() {     new wpnid = wpn_register_weapon(WPN_NAME,WPN_SHORT)     if(wpnid == -1) return PLUGIN_CONTINUE         wpn_set_string(wpnid,wpn_viewmodel,V_MODEL)     wpn_set_string(wpnid,wpn_weaponmodel,P_MODEL)     wpn_set_string(wpnid,wpn_worldmodel,W_MODEL)         wpn_register_event(wpnid,event_attack1,"ev_attack1")     wpn_register_event(wpnid,event_draw,"ev_draw")         wpn_set_float(wpnid,wpn_refire_rate1,1.0)     wpn_set_float(wpnid,wpn_reload_time,2.0)     wpn_set_float(wpnid,wpn_recoil1,4.0)     wpn_set_float(wpnid,wpn_run_speed,210.0)         wpn_set_integer(wpnid,wpn_ammo1,4)     wpn_set_integer(wpnid,wpn_ammo2,20)     wpn_set_integer(wpnid,wpn_bullets_per_shot1,1)     wpn_set_integer(wpnid,wpn_cost,6000)         g_wpnid = wpnid     return PLUGIN_CONTINUE } // vector_to_angle port stock vec_to_angle(Float:vector[3],Float:output[3]) {     new Float:angles[3]     engfunc(EngFunc_VecToAngles, vector, angles)     output[0] = angles[0]     output[1] = angles[1]     output[2] = angles[2] } public ev_attack1(id) {     wpn_playanim(id,random_num(anim_fire3,anim_fire4))         new rocket = engfunc(EngFunc_CreateNamedEntity,engfunc(EngFunc_AllocString,"info_target"))     if(!rocket) return PLUGIN_CONTINUE         // Strings     set_pev(rocket,pev_classname,"wpn_rpg")     engfunc(EngFunc_SetModel,rocket,ROCKET_MDL)         // Integer     set_pev(rocket,pev_owner,id)     set_pev(rocket,pev_movetype,MOVETYPE_FLY)     set_pev(rocket,pev_solid,SOLID_BBOX)         // Floats     set_pev(rocket,pev_mins,Float:{-1.0,-1.0,-1.0})     set_pev(rocket,pev_maxs,Float:{1.0,1.0,1.0})         new Float:fStart[3]     wpn_projectile_startpos(id,40,0,0,fStart)     set_pev(rocket,pev_origin,fStart)         new Float:fVel[3]     velocity_by_aim(id,ROCKET_SPEED,fVel)       set_pev(rocket,pev_velocity,fVel)         new Float:fAngles[3]     vec_to_angle(fVel,fAngles)     set_pev(rocket,pev_angles,fAngles)         message_begin(MSG_BROADCAST, SVC_TEMPENTITY)     write_byte(TE_BEAMFOLLOW)     write_short(rocket)     write_short(g_trail)     write_byte(25)     write_byte(5)     write_byte(224)     write_byte(224)     write_byte(255)     write_byte(255)     message_end()         emit_sound(rocket, CHAN_WEAPON, ROCKET_SOUND, 1.0, ATTN_NORM, 0, PITCH_NORM)         return PLUGIN_CONTINUE } public ev_draw(id)     wpn_playanim(id,anim_draw) public fwd_Touch(ptr, ptd) {     if(pev_valid(ptr)) {         new classname[32]         pev(ptr,pev_classname,classname,31)                 if(equal(classname,"wpn_rpg")) {             new Float:fOrigin[3],iOrigin[3]             pev(ptr,pev_origin,fOrigin)                         iOrigin[0] = floatround(fOrigin[0])             iOrigin[1] = floatround(fOrigin[1])             iOrigin[2] = floatround(fOrigin[2])                         message_begin(MSG_BROADCAST,SVC_TEMPENTITY,iOrigin)             write_byte(TE_EXPLOSION)             write_coord(iOrigin[0])             write_coord(iOrigin[1])             write_coord(iOrigin[2])             write_short(g_explosion)             write_byte(30)             write_byte(15)             write_byte(0)             message_end()                         new attacker = pev(ptr,pev_owner)             wpn_radius_damage(g_wpnid,attacker,ptr,ROCKET_RADIUS,ROCKET_DAMAGE,DMG_BLAST) // This is line 178             if(pev_valid(ptd)) {                 pev(ptd,pev_classname,classname,31)                                 if(equal(classname,"func_breakable"))                     dllfunc(DLLFunc_Use,ptd,ptr)             }             set_pev(ptr,pev_flags,FL_KILLME)         }     } }

KingCommentor 08-01-2008 14:21

Re: error 035: argument type mismatch <argument 3>
 
It worked, thanks!
What did you do ?

Drak 08-01-2008 17:03

Re: error 035: argument type mismatch <argument 3>
 
Code:
 wpn_radius_damage(g_wpnid,attacker,ptr,ROCKET_RADIUS,ROCKET_DAMAGE,DMG_BLAST)
Depending on what version of WeaponMod includes you have. The "wpn_radius_damage" is different. One accepts the entity, the other accepts the origin. You were sending it's origin.


All times are GMT -4. The time now is 05:32.

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