higharea.cpp

来自「一个三维打斗游戏」· C++ 代码 · 共 48 行

CPP
48
字号
// (C) Copyright 1996 by Anthony J. Carin.  All Rights Reserved.

#include "stdafx.h"
#include "higharea.h"

higharea::higharea(surfs& area)
{
    *((surfs*)this) = area;
    prev = 0;
    next = Game->HighAreas()->m_First;
    if (Game->HighAreas()->m_First)
        Game->HighAreas()->m_First->prev = this;
    Game->HighAreas()->m_First = this;
}

higharea::~higharea()
{
    if (prev)
    {
        prev->next = next;
        if (next)
            next->prev = prev;
        if (Game->HighAreas()->m_Curr == this)
            Game->HighAreas()->m_Curr = Game->HighAreas()->m_First;
    }
    else
    {
        Game->HighAreas()->m_First = next;
        if (Game->HighAreas()->m_Curr == this)
            Game->HighAreas()->m_Curr = Game->HighAreas()->m_First;
        if (next)
            next->prev = 0;
    }
}

void highlist::Purge()
{
    higharea *TmpFirst = m_First;
    higharea *TmpCurr;
    while (TmpFirst)
    {
        TmpCurr = TmpFirst;
        TmpFirst = TmpFirst->next;
        delete m_Curr;
    }
    m_First = m_Curr = 0;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?