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

Einfache Pugins zum üben


  
 
 
Thread Tools Display Modes
Author Message
Inventio
Member
Join Date: Dec 2009
Location: Germany
Old 02-20-2010 , 01:48   Einfache Pugins zum üben
#1

Jo servus Leute,
hab dann ma einen extra Thread aufgemacht in den man einfache "Plugin
aufgaben" posten kann.
Für Leute die amxx lernen wollen (Ich zum Beispiel^^)

Mfg Inventio
__________________
Wer im Steinhaus sitzt sollte nicht mit Gläsern werfen.
Inventio is offline
Send a message via ICQ to Inventio
|PJ| Shorty
Veteran Member
Join Date: Aug 2005
Location: Bavaria, Germany
Old 02-20-2010 , 06:43   Re: Einfache Pugins zum üben
#2

http://forums.alliedmods.net/showthread.php?t=55502
__________________
There are only 10 types of people in the world:
Those who understand binary, and those who don´t.
|PJ| Shorty is offline
Send a message via ICQ to |PJ| Shorty Send a message via AIM to |PJ| Shorty Send a message via MSN to |PJ| Shorty Send a message via Yahoo to |PJ| Shorty Send a message via Skype™ to |PJ| Shorty
master4life
Senior Member
Join Date: Mar 2006
Location: Germany
Old 02-20-2010 , 07:26   Re: Einfache Pugins zum üben
#3

Mir hat anfangs dieses Tutorial von Emp` sehr weitergeholfen.

http://forums.alliedmods.net/showthread.php?t=94381
__________________


[img]http://img714.**************/img714/8612/33726.png[/img]
master4life is offline
Send a message via ICQ to master4life Send a message via MSN to master4life Send a message via Skype™ to master4life
Inventio
Member
Join Date: Dec 2009
Location: Germany
Old 02-20-2010 , 11:50   Re: Einfache Pugins zum üben
#4

Servus,
ich habe von KadiR die aufgabe bekommen, ein Plugin zu schreiben,
welche sich durch das schreiben von /usp aktiviert.
Man soll dann eine usp bekommen.

Hier der code
PHP Code:
#include <amxmodx>
#include <amxmisc>
#include <cstrike>
#include <fun>

#define PLUGIN "USP"
#define VERSION "1.0"
#define AUTHOR "Inventio"


public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say /usp""usp")
}
public 
usp(id)
{
    new 
i
    
for (i>0;i<4;i++)
    {
    
give_item(id"weapon_usp")
    }



Mfg Inventio

//edit
Wo finde ich die natives wie get_user_team ?
Gibt es da ne Liste für ?
__________________
Wer im Steinhaus sitzt sollte nicht mit Gläsern werfen.

Last edited by Inventio; 02-20-2010 at 11:54.
Inventio is offline
Send a message via ICQ to Inventio
One
Veteran Member
Join Date: Oct 2008
Location: Hardstyle-eSports.de
Old 02-20-2010 , 11:59   Re: Einfache Pugins zum üben
#5

Nicht schlecht aber
1. warum gibst du allen eine USP?
2. warum for (i>0;i<4;i++)
3. warum give_item(id, "weapon_usp") und nicht give_item(i, "weapon_usp") ( warum überhaupt new i ?. wenn du eine neue identity registierst, dann bleib auch dabei )

du machst das ganze ein bisschen zu kompliziert.

schau, wenn du einem eine USP geben möchtest dann geht das so :

PHP Code:
public plugin_init()
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say /usp""usp")
}
public 
usp(id)
{
    
give_item(id"weapon_usp")

am besten benutzst du die includes die du nicht brauchst garnicht. ( das wirst du später gut gebrauchen wenn du ein grosses ding schreibst und auf CPU verbrauch achtest.)
in deinem Code brauchst du nur :
PHP Code:
#include <amxmodx>
#include <fun> 
wenn du zwichen allen loopen willst/ eine while schleiffe haben willst damit du allen eine USP gibst, dann sieht dein code so aus :

PHP Code:
#include <amxmodx>
#include <fun>

#define PLUGIN "USP"
#define VERSION "1.0"
#define AUTHOR "Inventio"

new g_MaxPlayers

public plugin_init() 
{
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say /usp""usp")
    
g_MaxPlayers get_maxplayers()
}
public 
usp(id)
{
    for( 
id 1id <= g_MaxPlayersid++)
    {
        
        
give_item(id"weapon_usp")
    }

und eine erweiterung noch :

der benutzer bekommt nur eine USP mit 12 schüsse. gib ihm mehr munition

EDIT : am besten wenn du checken möchtest in welchem Team dein user ist, machst du es mit cstrike.

cs_get_user_team(id)

um es zu checken sieht das zb so aus :

PHP Code:
if(cs_get_user_team(id) == CS_TEAM_CT)
        
//User ist CT
        
    
if(cs_get_user_team(id) == CS_TEAM_T)
        
//User ist T
        
    
if(cs_get_user_team(id) == CS_TEAM_SPECTATOR)
    
//User ist SPEC
    
    
if(cs_get_user_team(id) == CS_TEAM_UNASSIGNED)
        
//User ist noch nich in irgend einem Team gejoint 
__________________

Last edited by One; 02-20-2010 at 12:05.
One is offline
Send a message via ICQ to One Send a message via AIM to One Send a message via MSN to One Send a message via Yahoo to One Send a message via Skype™ to One
Inventio
Member
Join Date: Dec 2009
Location: Germany
Old 02-20-2010 , 12:16   Re: Einfache Pugins zum üben
#6

Ok hmmh danke für deine Hife,
Zu Frage 1.)
Als ich das Plugin getestet habe hat es nur mir eine usp gegeben...

Zu Frage 2.)
Ich war zu faul nach dem native für
das ammo geben zu suchen,
ich habe rausgefunden, dass wenn ich einem eine Waffe 3 mal gebe, er auch volle ammo hat(zumindestens bei der M4).

Zu Frage 3.)

Das habe ich mir aus diesem Tutorial zusammengereimt:
http://forums.alliedmods.net/showthread.php?t=75637

Da stand ich solle mich nicht um das "id" kümmern.
Also habe ich gedacht das gilt auch wenn ich einem eine waffe adde...

Mfg Inventio


//Edit

Wie kann ich testen ob ein spieler am leben ist ?
ich habe in der amxmodx.inc ein native gefunden das wie folgt aussieht:
PHP Code:
is_user_alive(index
ich wollte dann eine Varible machen und darin dann die information von

PHP Code:
is_user_alive(index
abspeichern:

PHP Code:
new user_alive=is_user_alive() 
dann bekomme ich aber den error wenn ich compile:
"undefined symbol "if_user_alive"

Ich hab echt keine Ahnung
__________________
Wer im Steinhaus sitzt sollte nicht mit Gläsern werfen.

Last edited by Inventio; 02-20-2010 at 12:24.
Inventio is offline
Send a message via ICQ to Inventio
KadiR
Unnecessary Member
Join Date: Aug 2008
Location: Zürich / Switzerland
Old 02-20-2010 , 12:26   Re: Einfache Pugins zum üben
#7

http://www.amxmodx.org/funcwiki.php?go=func&id=199

http://www.amxmodx.org/funcwiki.php?...live&go=search

Die meisten Funktionen findest du hier:

http://www.amxmodx.org/funcwiki.php

oder in den Include-Dateien.
KadiR is offline
Inventio
Member
Join Date: Dec 2009
Location: Germany
Old 02-20-2010 , 12:32   Re: Einfache Pugins zum üben
#8

ZACK! Da hab ich es hinbekommen^^
PHP Code:
#include <amxmodx>
#include <fun>

#define PLUGIN "Waffen give Plugin"
#define VERSION "1.0"
#define AUTHOR "Inventio"


public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say /usp""usp")
}
public 
usp(id)
{
    new 
alive=is_user_alive(id)
    if (
alive==1)
    {
        
give_item(id,"weapon_usp")
        
client_print(id,print_chat,"Du hast eine Usp bekommen!")
    }
    else
    {
        
client_print(id,print_chat,"Du bist nicht am Leben!")
    }


Thx für eure Hilfe, versuch mich jetzt daran noch zu testen ob er genug geld hat und und dann von seinem geld abzuziehen^^.
Btw bin immer offen für neue übungsaufgaben.


Mfg Inventio
__________________
Wer im Steinhaus sitzt sollte nicht mit Gläsern werfen.

Last edited by Inventio; 02-20-2010 at 12:48.
Inventio is offline
Send a message via ICQ to Inventio
KadiR
Unnecessary Member
Join Date: Aug 2008
Location: Zürich / Switzerland
Old 02-20-2010 , 13:03   Re: Einfache Pugins zum üben
#9

Du brauchst nicht umbedingt native's zu machen (new alive). is_user_alive alleine reicht auch.

Mach es jetzt mit den Teams und versuche den Chat:

cs_get_user_team (Nur für CT's)
ColorChat oder print_chat oder print_center oder log_amx ((Du hast eine USP bekommen) und schwerer, für die anderen dann: (Spieler x hat eine USP bekommen))
KadiR is offline
Inventio
Member
Join Date: Dec 2009
Location: Germany
Old 02-20-2010 , 13:05   Re: Einfache Pugins zum üben
#10

Ok ich setz mich dran.

So hier mit allem (also mit usp add, alive test und money test)

PHP Code:
#include <amxmodx>
#include <cstrike>
#include <fun>

#define PLUGIN "Waffen give Plugin"
#define VERSION "1.0"
#define AUTHOR "Inventio"


public plugin_init() {
    
register_plugin(PLUGINVERSIONAUTHOR)
    
register_clcmd("say /usp""usp")
}
public 
usp(id)
{
        if (
is_user_alive==1)
    {
        new 
geld cs_get_user_money(id)
        if (
geld >= 800)
        {
            
give_item(id,"weapon_usp")
            
cs_set_user_money(id800 geld)
            
client_print(id,print_chat,"Du hast eine Usp bekommen!")
        }
        else
        {
            
client_print(id,print_chat,"Du hast nicht genug Geld!")
        }
    }
    else
    {
        
client_print(id,print_chat,"Du bist nicht am Leben!")
    }

Mfg Inventio



//Edit (again )

Muss ich für cs_get_user_team(id) vorher ne variable deklarieren ?
__________________
Wer im Steinhaus sitzt sollte nicht mit Gläsern werfen.

Last edited by Inventio; 02-20-2010 at 13:24.
Inventio is offline
Send a message via ICQ to Inventio
 



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 08:46.


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