玖叶教程网

前端编程开发入门

这段代码,演绎了谈恋爱的逻辑(恋爱表白代码)

#include "stdafx.h"

#include "TogetherForMarriage.h"

#include "TogetherForMarriageDlg.h"

#include "afxdialogex.h"

#include <stdio.h>

#include <windows.h>

#include <mmsystem.h>

#pragma comment(lib,"winmm.lib")

#ifdef _DEBUG

#define new DEBUG_NEW

#endif

// CTogetherForMarriageDlg 对话框

int boyviews=0;

int boymoney=0;

int boyhealth=0;

int boyhealth2=0;

int boyability=0;

int boyability2=0;

int boyface=0;

int boyluck=0;

int girlviews=0;

int girlface=0;

int girlmoney=0;

int girlhealth=0;

int girlability=0;

int girlgentle=0;

int level=0;

int m_born=0;

int starttime=0;

int nowtime=0;

int clicktime=0;

int m_select=0;

int selecttime=20;

int basedot=0;

HDC hdc;

HBITMAP bmp,oldbmp;

CRect rect;

CTogetherForMarriageDlg::CTogetherForMarriageDlg(CWnd* pParent /*=NULL*/)

: CDialogEx(CTogetherForMarriageDlg::IDD, pParent)

{

m_hIcon = AfxGetApp()->LoadIcon(IDI_ICON2);

}

void CTogetherForMarriageDlg::DoDataExchange(CDataExchange* pDX)

{

CDialogEx::DoDataExchange(pDX);

}

BEGIN_MESSAGE_MAP(CTogetherForMarriageDlg, CDialogEx)

ON_WM_PAINT()

ON_WM_QUERYDRAGICON()

ON_BN_CLICKED(IDOK, &CTogetherForMarriageDlg::OnBnClickedOk)

ON_BN_CLICKED(IDC_BUTTON2, &CTogetherForMarriageDlg::OnBnClickedButton2)

ON_WM_TIMER()

ON_BN_CLICKED(IDC_BUTTON1, &CTogetherForMarriageDlg::OnBnClickedButton1)

ON_BN_CLICKED(IDC_BUTTON6, &CTogetherForMarriageDlg::OnBnClickedButton6)

ON_BN_CLICKED(IDC_BUTTON5, &CTogetherForMarriageDlg::OnBnClickedButton5)

ON_BN_CLICKED(IDC_BUTTON4, &CTogetherForMarriageDlg::OnBnClickedButton4)

ON_BN_CLICKED(IDC_BUTTON3, &CTogetherForMarriageDlg::OnBnClickedButton3)

ON_BN_CLICKED(IDC_BUTTON7, &CTogetherForMarriageDlg::OnBnClickedButton7)

ON_BN_CLICKED(IDC_BUTTON8, &CTogetherForMarriageDlg::OnBnClickedButton8)

END_MESSAGE_MAP()

// CTogetherForMarriageDlg 消息处理程序

BOOL CTogetherForMarriageDlg::OnInitDialog()

{

CDialogEx::OnInitDialog();

SetIcon(m_hIcon, TRUE);

SetIcon(m_hIcon, FALSE);

SetTimer(1,100,NULL);

return TRUE;

}

void CTogetherForMarriageDlg::OnPaint()

{

if (IsIconic())

{

CPaintDC dc(this); // 用于绘制的设备上下文

SendMessage(WM_ICONERASEBKGND, reinterpret_cast<WPARAM>(dc.GetSafeHdc()), 0);

// 使图标在工作区矩形中居中

int cxIcon = GetSystemMetrics(SM_CXICON);

int cyIcon = GetSystemMetrics(SM_CYICON);

CRect rect;

GetClientRect(&rect);

int x = (rect.Width() - cxIcon + 1) / 2;

int y = (rect.Height() - cyIcon + 1) / 2;

// 绘制图标

dc.DrawIcon(x, y, m_hIcon);

}

else

{

CPaintDC dc(this);

GetClientRect(&rect);

hdc=CreateCompatibleDC(dc);

bmp=(HBITMAP)LoadImage(NULL,TEXT("bg.bmp"),

IMAGE_BITMAP,rect.right,rect.Height(),LR_LOADFROMFILE);

oldbmp=(HBITMAP)SelectObject(hdc,bmp);

BitBlt(dc,0,0,rect.right,rect.Height(),hdc,0,0,SRCCOPY);

DeleteObject((HBITMAP)SelectObject(hdc, oldbmp));

DeleteDC(hdc);

//CDialogEx::OnPaint();

}

}

HCURSOR CTogetherForMarriageDlg::OnQueryDragIcon()

{

return static_cast<HCURSOR>(m_hIcon);

}

void CTogetherForMarriageDlg::OnBnClickedOk()

{

// TODO: 在此添加控件通知处理程序代码

//CDialogEx::OnOK();

}

void CTogetherForMarriageDlg::OnBnClickedButton2()//born

{

if(m_born==0){

m_born=1;

starttime=timeGetTime();

boyviews=MyRand(10000,10000);

SetDlgItemText( IDC_BOYVIEWS , IntToCString(boyviews));

boymoney=MyRand(5000,10000000);

selecttime+=(boymoney-5000)/100000;

SetDlgItemText( IDC_BOYMONEY , IntToCString(boymoney));

boyface=MyRand(30,65);

SetDlgItemText( IDC_BOYFACA , IntToCString(boyface));

boyability=MyRand(50,45);

boyability2=boyability;

SetDlgItemText( IDC_BOYABILITY , IntToCString(boyability2));

boyluck=MyRand(10,85);

SetDlgItemText( IDC_BOYLUKY , IntToCString(boyluck));

boyhealth=MyRand(50,45);

boyhealth2=boyhealth;

SetDlgItemText( IDC_BOYHEALTH ,IntToCString(boyhealth2));

level=0;

SetDlgItemText( IDC_LEVEL ,IntToCString(level));

}

}

void CTogetherForMarriageDlg::OnTimer(UINT_PTR nIDEvent)

{

basedot++;

if(basedot==10000)basedot=0;

if(m_born==1){

if((basedot+10)%10==0&&boyhealth2<boyhealth)boyhealth2++;

if((basedot+10)%10==0&&boyability2>boyability-30)boyability2--;

if(boymoney>0)boymoney--;//最低开支

if(m_select==1){

if(basedot%10==0&&boyviews!=girlviews&&level<1000)level+=50/abs(boyviews-girlviews);

}

if(level>500)MessageBox(TEXT("恭喜你,如愿以偿了"));

Updata();

}

CDialogEx::OnTimer(nIDEvent);

}

void CTogetherForMarriageDlg::OnBnClickedButton1()//重置

{

Empty();

}

void CTogetherForMarriageDlg::OnBnClickedButton6()//关心

{

if(m_born==1&&m_select==1){

clicktime++;

if(MyRand(0,100)>60&&level<1000)level+=5;

nowtime=timeGetTime();

if(MyRand(0,100)>50&&clicktime>(60*(nowtime-starttime)/60000)){

RunAway();

MessageBox(TEXT("你这么狂追,要不得"));

clicktime=0;

m_select=0;

}

SetDlgItemText( IDC_LEVEL ,IntToCString(level));

}

}

void CTogetherForMarriageDlg::OnBnClickedButton5()//花钱

{

if(m_born==1){

if(boymoney>1000&&m_select==1){

boymoney-=1000;

if(MyRand(0,100)>50)level+=5;

}

}

}

void CTogetherForMarriageDlg::OnBnClickedButton4()//挣钱

{

if(m_born==1&&boyhealth2>30){

boymoney+=boyability;

boyhealth2-=10;

UpdataBoy();

}

}

void CTogetherForMarriageDlg::OnBnClickedButton3()//select

{

level=0;

if(m_born==1){

if(selecttime>0){

selecttime--;

m_select=1;

girlviews=MyRand(10000,10000);

SetDlgItemText( IDC_GIRLVIEWS , IntToCString(girlviews));

girlmoney=MyRand(5000,10000000);

SetDlgItemText( IDC_GIRLMONEY , IntToCString(girlmoney));

girlface=MyRand(30,65);

SetDlgItemText( IDC_GIRLFACE , IntToCString(girlface));

girlability=MyRand(50,45);

SetDlgItemText( IDC_GIRLABILITY , IntToCString(girlability));

girlgentle=MyRand(10,85);

SetDlgItemText( IDC_GIRLGENTLE , IntToCString(girlgentle));

girlhealth=MyRand(50,45);

SetDlgItemText( IDC_GIRLHEALTH ,IntToCString(girlhealth));

}

}

}

CString CTogetherForMarriageDlg::IntToCString(int vol)

{

TCHAR ch[100];

wsprintf(ch,TEXT("%d"),vol);

return ch;

}

int CTogetherForMarriageDlg::MyRand(int min, int range)

{

Sleep(rand()%50);

srand(timeGetTime());

return rand()%range+min;

}

int CTogetherForMarriageDlg::Updata(void)

{

SetDlgItemText( IDC_BOYVIEWS , IntToCString(boyviews));

SetDlgItemText( IDC_BOYMONEY , IntToCString(boymoney));

SetDlgItemText( IDC_BOYFACA , IntToCString(boyface));

SetDlgItemText( IDC_BOYABILITY , IntToCString(boyability2));

SetDlgItemText( IDC_BOYLUKY , IntToCString(boyluck));

SetDlgItemText( IDC_BOYHEALTH ,IntToCString(boyhealth2));

SetDlgItemText( IDC_GIRLVIEWS , IntToCString(girlviews));

SetDlgItemText( IDC_GIRLMONEY , IntToCString(girlmoney));

SetDlgItemText( IDC_GIRLFACE , IntToCString(girlface));

SetDlgItemText( IDC_GIRLABILITY , IntToCString(girlability));

SetDlgItemText( IDC_GIRLGENTLE , IntToCString(girlgentle));

SetDlgItemText( IDC_GIRLHEALTH ,IntToCString(girlhealth));

SetDlgItemText( IDC_LEVEL ,IntToCString(level));

return 0;

}

int CTogetherForMarriageDlg::RunAway(void)

{

girlviews=0;

girlface=0;

girlmoney=0;

girlhealth=0;

girlability=0;

girlgentle=0;

level=0;

SetDlgItemText( IDC_GIRLVIEWS , IntToCString(girlviews));

SetDlgItemText( IDC_GIRLMONEY , IntToCString(girlmoney));

SetDlgItemText( IDC_GIRLFACE , IntToCString(girlface));

SetDlgItemText( IDC_GIRLABILITY , IntToCString(girlability));

SetDlgItemText( IDC_GIRLGENTLE , IntToCString(girlgentle));

SetDlgItemText( IDC_GIRLHEALTH ,IntToCString(girlhealth));

SetDlgItemText( IDC_LEVEL ,IntToCString(level));

return 0;

}

int CTogetherForMarriageDlg::UpdataBoy(void)

{

SetDlgItemText( IDC_BOYVIEWS , IntToCString(boyviews));

SetDlgItemText( IDC_BOYMONEY , IntToCString(boymoney));

SetDlgItemText( IDC_BOYFACA , IntToCString(boyface));

SetDlgItemText( IDC_BOYABILITY , IntToCString(boyability2));

SetDlgItemText( IDC_BOYLUKY , IntToCString(boyluck));

SetDlgItemText( IDC_BOYHEALTH ,IntToCString(boyhealth2));

return 0;

}

void CTogetherForMarriageDlg::OnBnClickedButton7()//学习

{

if(boyability2<boyability+20)boyability2++;

}

void CTogetherForMarriageDlg::OnBnClickedButton8()//冒险

{

if(m_born==1){

boymoney+=boyluck*10000;

if(MyRand(0,boyluck)<30){

Empty();

}

UpdataBoy();

}

}

int CTogetherForMarriageDlg::Empty(void)

{

boyviews=0;

boymoney=0;

boyhealth=0;

boyhealth2=0;

boyability=0;

boyability2=0;

boyface=0;

boyluck=0;

girlviews=0;

girlface=0;

girlmoney=0;

girlhealth=0;

girlability=0;

girlgentle=0;

level=0;

m_born=0;

m_select=0;

selecttime=20;

basedot=0;

Updata();

return 0;

}

发表评论:

控制面板
您好,欢迎到访网站!
  查看权限
网站分类
最新留言