Coding Class: Dagger

From LSWiki

(Difference between revisions)
Jump to: navigation, search
Revision as of 13:02, 1 May 2008 (edit)
Matts (Talk | contribs)

← Previous diff
Revision as of 22:35, 8 May 2008 (edit)
Matts (Talk | contribs)

Next diff →
Line 1: Line 1:
-In this initial section we are going to be an item from the ground up; in this case a dagger (everyone loves to stab). Commented code examples will appear followed by a 'notes' section below the example. Any further elaboration on that particular section I will place there, and any discussion regarding that particular section should go there as well. 
- 
// Include our base header file // Include our base header file
#include <item.h> #include <item.h>
// Inherit our base object for what we're creating // Inherit our base object for what we're creating
inherit "/std/item"; inherit "/std/item";
- 
// configure() is where we define what the object -is-, and indirectly what it does. // configure() is where we define what the object -is-, and indirectly what it does.
void configure() { void configure() {
 + // Call the configure() function from the file we inherited above. This really only calls one other function but it's necessary so that everything we're about to do works.
::configure(); ::configure();
 + // Call set_weapon_type() in the weapon extension and set it to Weapon_Type_Dagger (since we're making a dagger!)
weapon()->set_weapon_type(Weapon_Type_Dagger); weapon()->set_weapon_type(Weapon_Type_Dagger);
 + // Set the craft of the item.
set_craft(Craft_Good); set_craft(Craft_Good);
 + // Setup a general default description.
add_description(Description_Type_Generic); add_description(Description_Type_Generic);
 + // Setup the materials and forms and parts that we want our dagger to be made of.
add_proportion(([ add_proportion(([
Element_Type : Material_Iron, Element_Type : Material_Iron,
Line 18: Line 20:
} }
-==== Notes ====+==== Important Header Files ====
 +/lib/craft.h - Craft_Good
 +/lib/item.h
 +/lib/materials.h - Material_Iron
 +/lib/weapons.h - Weapon_Type_Dagger
 +/lib/descriptors/description.h - Description_Type_Generic
 +/lib/descriptors/element.h - Element_Type, Element_Proportion
 + 
 +==== Important Source Files ====
 +/obj/extensions/weapon.c
 +/std/item.c
 + 
 +==== Code Discussion ====

Revision as of 22:35, 8 May 2008

// Include our base header file
#include <item.h>
// Inherit our base object for what we're creating
inherit "/std/item";
// configure() is where we define what the object -is-, and indirectly what it does.
void configure() {
    // Call the configure() function from the file we inherited above.  This really only calls one other function but it's necessary so that everything we're about to do works.
    ::configure();
    // Call set_weapon_type() in the weapon extension and set it to Weapon_Type_Dagger (since we're making a dagger!)
    weapon()->set_weapon_type(Weapon_Type_Dagger);
    // Set the craft of the item.
    set_craft(Craft_Good);
    // Setup a general default description.
    add_description(Description_Type_Generic);
    // Setup the materials and forms and parts that we want our dagger to be made of.
    add_proportion(([
        Element_Type       : Material_Iron,
        Element_Proportion : 1.0,
    ]));
}

Important Header Files

/lib/craft.h - Craft_Good /lib/item.h /lib/materials.h - Material_Iron /lib/weapons.h - Weapon_Type_Dagger /lib/descriptors/description.h - Description_Type_Generic /lib/descriptors/element.h - Element_Type, Element_Proportion

Important Source Files

/obj/extensions/weapon.c /std/item.c

Code Discussion

Personal tools