From 487ab0cc92f387857df51d0f137a1c2b671d8977 Mon Sep 17 00:00:00 2001 From: skotlex Date: Mon, 24 Apr 2006 23:09:12 +0000 Subject: - Added script command escape_sql. It will return an escaped string for use in the sql_query script command (in case you want to use input of players in your queries). - Removed the skill packet from TK_RUN as the client ignores the walkok packet sent right after it. git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@6262 54d463be-8e91-2dee-dedb-b68131a5f0ec --- src/map/script.c | 13 +++++++++++++ src/map/skill.c | 4 +++- 2 files changed, 16 insertions(+), 1 deletion(-) (limited to 'src/map') diff --git a/src/map/script.c b/src/map/script.c index f5230dc3e..876f17477 100644 --- a/src/map/script.c +++ b/src/map/script.c @@ -135,6 +135,7 @@ char tmp_sql[65535]; unsigned char* parse_subexpr(unsigned char *,int); #ifndef TXT_ONLY int buildin_query_sql(struct script_state *st); +int buildin_escape_sql(struct script_state *st); #endif int buildin_atoi(struct script_state *st); int buildin_axtoi(struct script_state *st); @@ -455,6 +456,7 @@ struct { {buildin_axtoi,"axtoi","s"}, #ifndef TXT_ONLY {buildin_query_sql, "query_sql", "s*"}, + {buildin_escape_sql, "escape_sql", "s"}, #endif {buildin_atoi,"atoi","s"}, {buildin_mes,"mes","s"}, @@ -9728,6 +9730,17 @@ int buildin_query_sql(struct script_state *st) { return 0; } + +//Allows escaping of a given string. +int buildin_escape_sql(struct script_state *st) { + char *t_query, *query; + query = conv_str(st,& (st->stack->stack_data[st->start+2])); + + t_query = aCallocA(strlen(query)*2+1,sizeof(char)); + jstrescapecpy(t_query,query); + push_str(st->stack,C_STR,(unsigned char *)t_query); + return 0; +} #endif int buildin_getd (struct script_state *st) diff --git a/src/map/skill.c b/src/map/skill.c index 80bbacd4f..e419b2f56 100644 --- a/src/map/skill.c +++ b/src/map/skill.c @@ -4138,7 +4138,9 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, in i = status_change_end(bl, type, -1); else i = sc_start4(bl,type,100,skilllv,unit_getdir(bl),0,0,0); - clif_skill_nodamage(src,bl,skillid,skilllv,i); +// If the client receives a skill-use packet inmediately before +// a walkok packet, it will discard the walk packet! [Skotlex] +// clif_skill_nodamage(src,bl,skillid,skilllv,i); break; case AS_CLOAKING: /* ƒNƒ??ƒLƒ“ƒO */ if(tsc && tsc->data[type].timer!=-1 ) -- cgit v1.2.3-70-g09d2