forked from catmirrors/xlvns
-
Notifications
You must be signed in to change notification settings - Fork 0
/
LvnsBackEffect.c
68 lines (62 loc) · 1.48 KB
/
LvnsBackEffect.c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
/*
* LEAF Visual Novel System For X
* (c) Copyright 1999,2000 Go Watanabe mailto:[email protected]
* All rights reserverd.
*
* ORIGINAL LVNS (c) Copyright 1996-1999 LEAF/AQUAPLUS Inc.
*
* $Id: LvnsBackEffect.c,v 1.4 2001/07/25 14:36:48 tf Exp $
*/
/*
* Lvns 背景特殊エフェクト処理
* 将来的にはモジュール化
*
* 定期的に背景で自動的におこなわれるエフェクトを処理する。
*
* 仮想 VRAM(lvns->vram)に背景(lvns->background)をコピーする
* 際にエフェクトを加えることができる。
* 背景処理後のキャラクタの合成は lvns->mergeCharacter
* (lvns)が利用できる
*/
#include <stdio.h>
#include <stdlib.h>
#include "Lvns.h"
/*
* エフェクト処理実行(状態設定)
*/
void
LvnsBackEffectSetState(Lvns *lvns)
{
if (lvns->effect_back)
lvns->effect_back->set(lvns);
}
/*
* エフェクト処理実行(描画準備)
*/
void
LvnsBackEffect(Lvns *lvns)
{
if (lvns->effect_back) {
lvns->effect_back->func(lvns);
} else {
lvnsimage_copy(lvns->background, lvns->vram);
LVNS->mergeCharacter(lvns);
}
}
/*
* 背景エフェクトの種類の指定
*/
void
LvnsSetBackEffect(Lvns *lvns, LvnsBackEffectInfo *info)
{
lvns->effect_back = info;
lvns->effect_back_state = 0;
}
/*
* 次の表示タイミングからの背景エフェクトの種類の指定
*/
void
LvnsSetNextBackEffect(Lvns *lvns, LvnsBackEffectInfo *info)
{
lvns->effect_back_next = info;
}