Jump to content

Question

Posted

i want npc opening a chat room but not normal one

Only NPC - Standing And over it a room

example : the word is [ Vending ]

 

1 sec

 

V

 

1 sec

 

VE

 

1 sec

 

VEN

 

1 sec

 

VEND

 

1 sec

 

VENDI

 

1 sec

 

VENDIN

 

1 sec

 

VENDING

 

Then start over From V

17 answers to this question

Recommended Posts

Posted


prontera,155,150,0 script Test 123,{

end;

OnInit:

set .message$, "VENDING";

while (1) {

set .message$, delchar(.message$+charat(.message$,0),0);

delwaitingroom;

waitingroom .message$, 0;

sleep 1000;

}

}

Posted

try


OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets );
while( 1 ){
	set .@title$,.@title$ +" "+ .alphabets$[.@i];
	set .@i,.@i + 1;
	delwaitingroom;
	waitingroom ""+.@title$,0;
	sleep 1000;
	if( .@i % 8 == 0 ) set .@title$,"";
}
end;
Posted
prontera,155,150,0    script    Test    123,{
    end;
    

OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets );
while( 1 ){
    set .@title$,.@title$ +" "+ .alphabets$[.@i];
    set .@i,.@i + 1;
    delwaitingroom;
    waitingroom ""+.@title$,0;
    sleep 1000;
    if( .@i % 8 == 0 ) set .@title$,"";
}
end;
 

Error at line 1

Posted


prontera,155,150,0 script Test 123,{

end;

OnInit:

setarray .alphabets$,"V","E","N","D","I","N","G";

set .alphabets_size,getarraysize( .alphabets );

while( 1 ){

set .@title$,.@title$ +" "+ .alphabets$[.@i];

set .@i,.@i + 1;

delwaitingroom;

waitingroom ""+.@title$,0;

sleep 1000;

if( .@i % 8 == 0 ) set .@title$,"";

}

end;

Posted

prontera,155,150,0 script Vending 123,{

OnInit:

setarray .alphabets$,"V","E","N","D","I","N","G";

set .alphabets_size,getarraysize( .alphabets );

while( 1 ){

set .@title$,.@title$ +" "+ .alphabets$[.@i];

set .@i,.@i + 1;

delwaitingroom;

waitingroom ""+.@title$,0;

sleep 1000;

if( .@i % 8 == 0 ) set .@title$,"";

}

end;

prontera,155,150,0 script Test 123,{

end; <<-- for what?

Posted
prontera,155,150,0	script	Test	123,{
OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets );
while( 1 ){
	set .@title$,.@title$ +" "+ .alphabets$[.@i];
	set .@i,.@i + 1;
	delwaitingroom;
	waitingroom ""+.@title$,0;
	sleep 1000;
	if( .@i % 8 == 0 ) set .@title$,"";
}
end;

Not working

Posted (edited)
prontera,155,150,0    script    Test    123,{
    end;
    

OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets );
while( 1 ){
    set .@title$,.@title$ +" "+ .alphabets$[.@i];
    set .@i,.@i + 1;
    delwaitingroom;
    waitingroom ""+.@title$,0;
    sleep 1000;
    if( .@i % 8 == 0 ) set .@title$,"";
}
end;
 

Error at line 1

 

 

Mr. Emistry gave you a working script, you just need to use tab and troubleshoot a little. As you can see its just missing a }

test_vend.txt

Edited by Kristine
Posted (edited)


prontera,155,150,0 script Test 123,{

// end the script in case someone talks to the NPC

end;

OnInit:

// set the chat's name's characters

setarray .chars$, "V", "E", "N", "D", "I", "N", "G";

// infinity loop, yay

while (1) {

// loop through all the characters

for (.@i = 0; .@i < getarraysize(.chars$); .@i += 1) {

// reset name on first run or after a complete run

if (0 == .@i) {

.@chatName$ = "";

}

.@chatName$ = .@chatName$ + .chars$[.@i];

waitingroom(.@chatName$, 0);

sleep(1000);

delwaitingroom;

}

}

}

Edited by DeadlySilence
Posted
prontera,155,150,0	script	Test	123,{
    end;
    

OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets );
while( 1 ){
    set .@title$,.@title$ +" "+ .alphabets$[.@i];
    set .@i,.@i + 1;
    delwaitingroom;
    waitingroom ""+.@title$,0;
    sleep 1000;
    if( .@i % 8 == 0 ) set .@title$,"";
}
end;
}

it only comes for 1 time then nothing comes

i want it reload automatic

after

 VENDING

Start over

 

and i want it VENDING not V E N D I N G

Posted

Yeah DeadlySilence's script is working

 

Emistry's script doesn't work coz .@i is not reset

prontera,155,150,0	script	Test	123,{
    end;
    

OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
while( 1 ){
    set .@title$,.@title$ + .alphabets$[.@i];
    set .@i,.@i + 1;
    delwaitingroom;
    waitingroom ""+.@title$,0;
    sleep 1000;
    if( .@i % 8 == 0 ) {
		set .@title$,"";
		set .@i, 0;
	}
}
}
Posted

Looks dude it's a lot of extra work just to put the variable not spaced out like that... Completely pointless but ... yeah.

prontera,155,150,0	script	Test	123,{

end;

OnInit:

set .alphabets$,"VENDING";

set .i,callfunc("str_toarray", .alphabets$, "$@alphabets$[0]");

copyarray .alphabets$[0], $@alphabets$[0], .i;

deletearray $@alphabets$[0],128;

while( 1 ){

set .@title$,.@title$ + .alphabets$[.@i];

set .@i,.@i + 1;

delwaitingroom;

waitingroom ""+.@title$,0;

sleep 1000;

if( .@i % 8 == 0 ) {

set .@title$,"";

set .@i, 0;

}

}

}

///callfunc "str_toarray", "<string>", "<array output>";

function script str_toarray {

sleep2 1;

if ( getstrlen( getarg(0) ) > 128 ) return 0;

setarray .@char$[ 0 ],

" ", "0", "1", "2", "3", "4", "5", "6", "7", "8", "9",

"E", "I", "A", "S", "R", "N", "T", "O", "U", "L", "C",

"P", "M", "D", "V", "H", "G", "F", "B", "Y", "Q", "K",

"Z", "X", "J", "W", "_", "-";

set .@charsize, getarraysize(.@char$);

set .@tmp$, "|~key~|";

set .@str$, .@tmp$ + getarg(0) ;

set .@len, getstrlen(getarg(0));

while( .@len>.@s ) {

set .@i,0;

while( .@i<.@charsize ) {

if ( ! ( set(.@l,.@l+1) % 650) )

sleep2 1;

if ( compare( .@str$ , .@tmp$ + .@char$[.@i] ) ) {

set .@tmp$, .@tmp$ + .@char$[.@i];

set .@arr$[.@s], .@char$[.@i];

break;

}

set .@i, .@i+1;

}

if ( .@i == .@charsize ) return 0;

else set .@s, .@s+1;

}

deletearray getd(getarg(1));

copyarray getd(getarg(1)), .@arr$, .@len;

return .@len;

}

  • Upvote 1
Posted
OnInit:
setarray .alphabets$,"V","E","N","D","I","N","G";
set .alphabets_size,getarraysize( .alphabets$ );
while( 1 ){
	set .@title$,.@title$ + .alphabets$[.@i%.alphabets_size];
	set .@i,.@i + 1;
	delwaitingroom;
	waitingroom ""+.@title$,0;
	sleep 100;
	if( .@i % .alphabets_size == 0 ) set .@title$,"";
}
end;

 

just some minor mistake in variable name ....and array index

  • Upvote 1

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...