对不起!您没有登入,请先登入论坛
下面是引用 freeze02468 于 2014-01-11 14:40 发表的 小弟又来问问题了...小弟又来问问题了...,|请问各位大大...: 浏览此文章需要威望
public plugin_init() { register_message(get_user_msgid("DeathMsg"), "message_deathmsg") } public message_deathmsg(msg_id, msg_dest, msg_entity) { static attacker; attacker = get_msg_arg_int(1) //static victim; victim = get_msg_arg_int(2) //static headshot; headshot = get_msg_arg_int(3) static weapon[32]; get_msg_arg_string(4, weapon, sizeof weapon - 1) if (g_Had_DragonSword[attacker] && equal(weapon, "knife")) { set_msg_arg_string(4, "dragonsword") // hud.txt 里的SPR名称,例如这里的名称是 d_dragonsword } }
下面是引用 a7811311622 于 2014-01-11 15:07 发表的 : 不…上次有说过了…那段已经是很旧又很烂的杀人图写法了…后期的方法就直接修改 DeathMsg 了…
public zp_extra_item_selected(id, ItemID)
if(ItemID == g_DragonSword)
下面是引用 freeze02468 于 2014-01-11 16:04 发表的 : 对不起a78大大...小弟还有一个问题...Sorry是关于购买青龙偃月刀时的问题...大大您之前有教过我说要在.......
public zp_extra_item_selected(id, ItemID) { if(ItemID == g_DragonSword) get_dragonsword(id) // 可是程式是先执行这里后再往下执行,你给武器的内容在这里 { if (g_Had_DragonSword[id]) // 满足某条件? { client_print(id, print_center, "你已经拥有此武器") return ZP_PLUGIN_HANDLED; // 让下面的主要内容不执行 } // 主要内容 } }
下面是引用 a7811311622 于 2014-01-11 21:48 发表的 : 因为写错位置了…||= =你的 get_dragonsword(id) 没放在 return ZP_PLUGIN_HANDLED; 之后…return 的效果当然没法影响到 get_dragonsword(id) …复制程式 public zp_extra_item_selected(id, ItemID) { if(ItemID == g_DragonSword) get_dragonsword(id) // 可是程式是先执行这里后再往下执行,你给武器的内容在这里 { if (g_Had_DragonSword[id]) // 满足某条件? { client_print(id, print_center, "你已经拥有此武器") return ZP_PLUGIN_HANDLED; // 让下面的主要内容不执行 } // 主要内容 } }
public OnAddToPlayerKnife( const item, const player ) { if( pev_valid( item ) && is_user_alive( player ) ) // just for safety. { if( g_Had_DragonSword[ player ] ) { message_begin( MSG_ONE, MsgIndexWeaponList, .player = player ); write_string( "weapon_dragonsword" ); // WeaponName write_byte( -1 ); // PrimaryAmmoID write_byte( -1 ); // PrimaryAmmoMaxAmount write_byte( -1 ); // SecondaryAmmoID write_byte( -1 ); // SecondaryAmmoMaxAmount write_byte( 2 ); // SlotID (0...N) write_byte( 1 ); // NumberInSlot (1...N) write_byte( CSW_KNIFE ); // WeaponID write_byte( 0 ); // Flags message_end(); } else { message_begin( MSG_ONE, MsgIndexWeaponList, .player = player ); write_string( "weapon_knife" ); // WeaponName write_byte( -1 ); // PrimaryAmmoID write_byte( -1 ); // PrimaryAmmoMaxAmount write_byte( -1 ); // SecondaryAmmoID write_byte( -1 ); // SecondaryAmmoMaxAmount write_byte( 2 ); // SlotID (0...N) write_byte( 1 ); // NumberInSlot (1...N) write_byte( CSW_KNIFE ); // WeaponID write_byte( 0 ); // Flags message_end(); } } }
下面是引用 freeze02468 于 2014-01-12 01:36 发表的 : 请问大大...能够在问您一个问题吗? 小弟有将SPR的指令都写进去了..........
下面是引用 a7811311622 于 2014-01-12 09:45 发表的 : 再重看一次我当初 OnItemSlotKnife 和 register_clcmd 的说明…