turnstates
This commit is contained in:
parent
1a13781220
commit
cd85677efd
57 changed files with 1813 additions and 104 deletions
69
eastern flames/scripts/st_textadv/st_textadv.gml
Normal file
69
eastern flames/scripts/st_textadv/st_textadv.gml
Normal file
|
@ -0,0 +1,69 @@
|
|||
global.thecolor = 0xFFFFFF
|
||||
|
||||
function st_textadv() {
|
||||
//surface_set_target(global.surfaces.HUD);
|
||||
draw_sprite(bg, 0, 0, 0);
|
||||
for (i=array_length(talker)-1; i>=0; i--) {
|
||||
draw_sprite_ext(talker[i].sprite,
|
||||
talker[i].index,
|
||||
talker[i].x,
|
||||
talker[i].y,
|
||||
ineg(talker[i].position > SPRITEPOS.CENTER),
|
||||
1, 0, make_color_hsv(0, 0, 255-(i>0)*100), talker[i].alpha*(talker[i].position <= SPRITEPOS.RIGHT));
|
||||
}
|
||||
if halting { exit}
|
||||
draw_sprite(sprite_index, 0, x, y);
|
||||
draw_set_font(font);
|
||||
clr = c_white;
|
||||
var xpos = 0;
|
||||
var lb = 0;
|
||||
sizemult = 1;
|
||||
var effchars = drawchars;
|
||||
specialchars = 0;
|
||||
wigglex = 0;
|
||||
wiggley = 0;
|
||||
shake = 0;
|
||||
sizepos = 0;
|
||||
pressing = 0;
|
||||
fontsize = font_get_size(draw_get_font())*.8;
|
||||
atsound = 0;
|
||||
atfunc = 0;
|
||||
j = 0;
|
||||
if msg[talkpos].type == "normal" {
|
||||
draw_set_color(talker[0].namecolor);
|
||||
draw_set_halign(fa_center);
|
||||
draw_text(x+width/20-width/2+17, y-18, talker[0].name);
|
||||
draw_set_halign(fa_left);
|
||||
draw_set_color(c_white);
|
||||
}
|
||||
draw_set_halign(fa_left);
|
||||
atsound = 0;
|
||||
atfunc = 0;
|
||||
for (i=1; i<=effchars; i++) {
|
||||
while string_char_at(msg[talkpos].text, i) = "|" {
|
||||
c_txtspecial();
|
||||
}
|
||||
effchars = drawchars+specialchars;
|
||||
var centerOffset = 0;
|
||||
if(draw_get_halign() == fa_center || draw_get_halign() == fa_right) {
|
||||
var linelist = string_split(msg[talkpos].text,"#");
|
||||
var msglen = string_length(linelist[lb])
|
||||
centeroffset = ((width/(fontsize+5))) - msglen;
|
||||
if(draw_get_halign() == fa_center) {
|
||||
centeroffset/=2;
|
||||
}
|
||||
}
|
||||
var textoffsetx = cos((count+i*2)/(talkspeed*20))*wigglex+random(shake/2)-shake/4;
|
||||
var textoffsety = sin((count+i*2)/(talkspeed*20))*wiggley+random(shake/2)-shake/4;
|
||||
var textxpos = x+margin+(xpos+centerOffset)*(fontsize)-width/2;
|
||||
var textypos = y+(fontsize)+(lb+nvlline)*(fontsize*2);
|
||||
var thechar = string_hash_to_newline(string_char_at(msg[talkpos].text, i));
|
||||
draw_text_ext_transformed_colour(textxpos+textoffsetx, textypos+textoffsety, thechar, 0, 999, sizemult, sizemult, 0, clr, clr, clr, clr, 1);
|
||||
if string_char_at(msg[talkpos].text, i) = "#" {
|
||||
lb++;
|
||||
xpos = -1;
|
||||
}
|
||||
xpos += sizemult;
|
||||
}
|
||||
}
|
||||
|
12
eastern flames/scripts/st_textadv/st_textadv.yy
Normal file
12
eastern flames/scripts/st_textadv/st_textadv.yy
Normal file
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"isDnD": false,
|
||||
"isCompatibility": false,
|
||||
"parent": {
|
||||
"name": "Textbox",
|
||||
"path": "folders/Textbox.yy",
|
||||
},
|
||||
"resourceVersion": "1.0",
|
||||
"name": "st_textadv",
|
||||
"tags": [],
|
||||
"resourceType": "GMScript",
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue