bin554385863 发表于 2019-7-27 23:21:29

开始做一个文字类冒险游戏

本来想做画面的.
无奈图形库怎么都搞不定!
先做个文字版的吧

今天先把
任务,怪物和物品的结构体写出来
head.c
/*--------杂物属性--------*/
typedef struct _Things
{
    /*物品名称 */
    char name;
    /*物品数量 */
    unsigned int Weight;
    /*重量 */
    unsigned int Quantity;
    /*可以堆放的数量 */
    unsigned int Overlay;
    /*效果 */
    unsigned int plushp;
    /*描述 */
    char description;
} things;
/*--------人物和怪物的基础属性--------*/
typedef struct Base_Attribute_Of_Role_Monster
{
    /*名字 */
    char name;
    /*性别 */
    char sex;
    /*等级 */
    unsigned int lv;
    /*背包道具 */
    things bag;
    /*体质:影响生命值和防御 */
    unsigned int weak;
    /*力量:影响伤害和负重 */
    unsigned int strong;
    /*敏捷:影响命中和暴击 */
    unsigned int agile;
    /*身法:影响闪避和移动速度 */
    unsigned int reaction;
    /*描述 */
    char description;
} Base_Attribute;
/*--------人物和怪物的表现属性--------*/
typedef struct Show_Attribute_Of_Role_Monster
{
    /*生命值 */
    unsigned int Life;
    /*防御 */
    unsigned int Defense;
    /*伤害 */
    unsigned int Hurt;
    /*负重 */
    unsigned int Weight;
    /*命中 */
    unsigned int Accuracy;
    /*暴击 */
    unsigned int Critical;
    /*闪避 */
    unsigned int Evade;
    /*速度 */
    unsigned int Speed;
    /*描述 */
    char description;
} Show_Attribute;

/*--------武器属装备--------*/
typedef struct Weaponry
{
    /*装备名称 */
    char name;
    /*伤害能力 */
    unsigned int Damage;
    /*耐久 */
    unsigned int Durability;
    /*随机属性 */
    int attrib1;
    int attrib2;
    int attrib3;
    int attrib4;
    int attrib5;
    int attrib6;
    /*描述 */
    char description;
} weaponry;

/*--------防具属装备--------*/
typedef struct Armor
{
    /*装备名称 */
    char name;
    /*护甲 */
    unsigned int Armor;
    /*耐久 */
    unsigned int Durability;
    /*随机属性 */
    int attrib1;
    int attrib2;
    int attrib3;
    int attrib4;
    int attrib5;
    int attrib6;
    /*描述 */
    char description;
} armor;

/*--------首饰装备--------*/
typedef struct Jewelry
{
    /*装备名称 */
    char name;
    /*负重 */
    unsigned int Weight;
    /*命中 */
    unsigned int Accuracy;
    /*暴击 */
    unsigned int Critical;
    /*闪避 */
    unsigned int Evade;
    /*速度 */
    unsigned int Speed;
    /*随机属性 */
    int attrib1;
    int attrib2;
    int attrib3;
    int attrib4;
    int attrib5;
    int attrib6;
    /*描述 */
    char description;
}
-------------------------------------------------------------------------
#include "head.c"
/*水果 */
things fruits;
fruits ={
      {"苹果", 1, 99, 1, 10, "这是一个生虫的苹果,甚至你还能看到半条被你咬断的虫子."},
      {"桃子", 1, 99, 1, 10, "吃桃不洗,抓挠不止."},
      {"番茄", 1, 99, 1, 15, "它到底是水果还是蔬菜,这是个问题?"},
      {"草莓", 1, 99, 1, 5, "传说草原上的羊吃光了草,才长出了草没"},
      {"柿子", 1, 99, 1, 5, "相信我,当它还是青的时候最好吃"},
};
/*食物 */
things food;
food = {
    {"馒头", 1, 50, 1, 20, "非常普通的食物"},
    {"夹肉饼", 1, 60, 1, 25, "少年不准备来一打?"},
    {"烤面筋", 1, 200, 1, 5, "面筋哥的作品,请品尝!"}
};
/*掉落杂物 */
things rubbish;
rubbish = {

};
/*掉落材料 */
things material;
material = {
   
}

今天先到这, 初步计划用两个月写出来,边学编写.第一次就用最笨的办法.
大家有什么有趣的梗不妨给我留言,我也好弄点素材

bin554385863 发表于 2019-7-27 23:27:39

顺便在写的过程中吧以前的知识复习一遍,找出还有哪些没学好,查缺补漏!当这个能完美结束时.那么C语言我也可以高一段落了.就可以开始学C++了;
总是,在我的计划里这个程序可以用到所有学过的基础知识,比如指针,比如字符串,结构体数组,,循环,分支,还有文件读写,至于链表,那就看需不需要用到了

bin554385863 发表于 2019-7-27 23:34:45

这绝不是结束,这个程序i一直陪伴我成长,每当我学会新的知识,我就会反过头重写,直到写无可写,改无可改
页: [1]
查看完整版本: 开始做一个文字类冒险游戏