PERSONAL.CPP
上传用户:abcdshs
上传日期:2007-01-07
资源大小:1858k
文件大小:5k
源码类别:

游戏

开发平台:

Visual C++

  1. // (C) Copyright 1996 by Anthony J. Carin.  All Rights Reserved.
  2. #include "stdafx.h"
  3. #include "personal.h"
  4. #include "stdio.h"
  5. void personal::load(LPCTSTR file)
  6. {
  7.    char tmpbuf[300];
  8.    FILE *fp = (FILE *) -1;
  9.    short fperror = FALSE;
  10.    m_file = file;
  11.    if (file)
  12.    {
  13.        if (*file != 0)
  14.            fp = fopen(file,"r");
  15.        else
  16.            fperror = TRUE;
  17.    }
  18.    else
  19.        fperror = TRUE;
  20.    if (fp > 0 && !fperror)
  21.    {
  22.       fscanf(fp, "%s", tmpbuf);
  23.       if (tmpbuf[0] == 'M')
  24.          m_gender = MALE;
  25.       else
  26.          m_gender = FEMALE;
  27.       fscanf(fp, "%s", tmpbuf);
  28.       m_face = tmpbuf;
  29.       fscanf(fp, "%s", tmpbuf);
  30.       m_hia = tmpbuf;
  31.       fscanf(fp, "%s", tmpbuf);
  32.       m_ugh = tmpbuf;
  33.       fscanf(fp, "%s", tmpbuf);
  34.       m_laugh = tmpbuf;
  35.       fscanf(fp, "%s", tmpbuf);
  36.       m_haircolor = atoi(tmpbuf);
  37.       fscanf(fp, "%s", tmpbuf);
  38.       m_skincolor = atoi(tmpbuf);
  39.       fscanf(fp, "%s", tmpbuf);
  40.       m_startlevel = (short)atoi(tmpbuf);
  41.       fscanf(fp, "%s", tmpbuf);
  42.       m_punchlist = tmpbuf;
  43.       fscanf(fp, "%s", tmpbuf);
  44.       m_upperarm = tmpbuf;
  45.       fscanf(fp, "%s", tmpbuf);
  46.       m_lowerarm = tmpbuf;
  47.       fscanf(fp, "%s", tmpbuf);
  48.       m_hand = tmpbuf;
  49.       fscanf(fp, "%s", tmpbuf);
  50.       m_thigh = tmpbuf;
  51.       fscanf(fp, "%s", tmpbuf);
  52.       m_lowerleg = tmpbuf;
  53.       fscanf(fp, "%s", tmpbuf);
  54.       m_foot = tmpbuf;
  55.       fscanf(fp, "%s", tmpbuf);
  56.       m_gluts = tmpbuf;
  57.       fscanf(fp, "%s", tmpbuf);
  58.       m_boob = tmpbuf;
  59.       fscanf(fp, "%s", tmpbuf);
  60.       m_hair = tmpbuf;
  61.       fscanf(fp, "%s", tmpbuf);
  62.       m_body = tmpbuf;
  63.       fscanf(fp, "%s", tmpbuf);
  64.       m_head = tmpbuf;
  65.       fscanf(fp, "%s", tmpbuf);
  66.       m_hight = (float) atof(tmpbuf);
  67.       if (m_hight == 0.0f)
  68.           m_hight = 1.0f;
  69.       tmpbuf[0] = 0;
  70.       fscanf(fp, "%s", tmpbuf);
  71.       if (tmpbuf[0] == 0)
  72.           m_normalpunch = "punch.dat";
  73.       else
  74.           m_normalpunch = tmpbuf;
  75.       fclose(fp);
  76.    }
  77.    else
  78.    {
  79.       m_gender = FEMALE;
  80.       m_punchlist =
  81.       m_upperarm =
  82.       m_lowerarm =
  83.       m_hand =
  84.       m_thigh =
  85.       m_lowerleg =
  86.       m_foot =
  87.       m_gluts =
  88.       m_boob =
  89.       m_hair =
  90.       m_body =
  91.       m_head =
  92.       m_face =
  93.       m_hia  =
  94.       m_ugh  =
  95.       m_laugh = "";
  96.       m_haircolor =
  97.       m_skincolor = RGB(255,0,0);
  98.       m_startlevel = 0;
  99.       m_hight = 1.0f;
  100.    }
  101. }
  102. void personal::saveas(LPCTSTR file)
  103. {
  104.     FILE *fp;
  105.     fp = fopen(file, "w");
  106.     if (fp > 0)
  107.     {
  108.         if (m_gender == MALE)
  109.             fprintf(fp, "Mn");
  110.         else
  111.             fprintf(fp, "Fn");
  112.         fprintf(fp, "%sn", m_face);
  113.         fprintf(fp, "%sn", m_hia);
  114.         fprintf(fp, "%sn", m_ugh);
  115.         fprintf(fp, "%sn", m_laugh);
  116.         fprintf(fp, "%dn", (int) m_haircolor);
  117.         fprintf(fp, "%dn", (int) m_skincolor);
  118.         fprintf(fp, "%dn", (int) m_startlevel);
  119.         fprintf(fp, "%sn", m_punchlist);
  120.         fprintf(fp, "%sn", m_upperarm);
  121.         fprintf(fp, "%sn", m_lowerarm);
  122.         fprintf(fp, "%sn", m_hand);
  123.         fprintf(fp, "%sn", m_thigh);
  124.         fprintf(fp, "%sn", m_lowerleg);
  125.         fprintf(fp, "%sn", m_foot);
  126.         fprintf(fp, "%sn", m_gluts);
  127.         fprintf(fp, "%sn", m_boob);
  128.         fprintf(fp, "%sn", m_hair);
  129.         fprintf(fp, "%sn", m_body);
  130.         fprintf(fp, "%sn", m_head);
  131.         fprintf(fp, "%5.3fn", m_hight);
  132.         fprintf(fp, "%sn", m_normalpunch);
  133.         fclose(fp);
  134.     }
  135. }
  136. personal::personal(personal& p)
  137. {
  138.    m_file       = p.m_file;
  139.    m_gender     = p.m_gender;
  140.    m_face       = p.m_face;
  141.    m_hia        = p.m_hia;
  142.    m_ugh        = p.m_ugh;
  143.    m_laugh      = p.m_laugh;
  144.    m_haircolor  = p.m_haircolor;
  145.    m_skincolor  = p.m_skincolor;
  146.    m_startlevel = p.m_startlevel;
  147.    m_punchlist  = p.m_punchlist;
  148.    m_upperarm   = p.m_upperarm;
  149.    m_lowerarm   = p.m_lowerarm;
  150.    m_hand       = p.m_hand;
  151.    m_thigh      = p.m_thigh;
  152.    m_lowerleg   = p.m_lowerleg;
  153.    m_foot       = p.m_foot;
  154.    m_gluts      = p.m_gluts;
  155.    m_boob       = p.m_boob;
  156.    m_hair       = p.m_hair;
  157.    m_body       = p.m_body;
  158.    m_head       = p.m_head;
  159. }
  160. void personal::operator =(personal& p)
  161. {
  162.    m_file       = p.m_file;
  163.    m_gender     = p.m_gender;
  164.    m_face       = p.m_face;
  165.    m_hia        = p.m_hia;
  166.    m_ugh        = p.m_ugh;
  167.    m_laugh      = p.m_laugh;
  168.    m_haircolor  = p.m_haircolor;
  169.    m_skincolor  = p.m_skincolor;
  170.    m_startlevel = p.m_startlevel;
  171.    m_punchlist  = p.m_punchlist;
  172.    m_upperarm   = p.m_upperarm;
  173.    m_lowerarm   = p.m_lowerarm;
  174.    m_hand       = p.m_hand;
  175.    m_thigh      = p.m_thigh;
  176.    m_lowerleg   = p.m_lowerleg;
  177.    m_foot       = p.m_foot;
  178.    m_gluts      = p.m_gluts;
  179.    m_boob       = p.m_boob;
  180.    m_hair       = p.m_hair;
  181.    m_body       = p.m_body;
  182.    m_head       = p.m_head;
  183. }