-Fix EDP pre-re not adding bonus (for grimtooth and venomknife) bugreport:6259

-Fix Invisibility remove by ruwach / sight / impr_concentration bugreport:7285
-Fix Dispel not removing dance, (inversed area check)
-Fix Cmake compilation broken since r17189

-Upd check-doc, athena-start to ask arg if none given.


git-svn-id: https://svn.code.sf.net/p/rathena/svn/trunk@17200 54d463be-8e91-2dee-dedb-b68131a5f0ec
This commit is contained in:
glighta 2013-03-15 21:10:06 +00:00
parent 74fb8599b5
commit 94d2acd0ad
7 changed files with 23 additions and 18 deletions

View File

@ -471,14 +471,11 @@ set( DEVELOPMENT_DIRECTORIES
) )
set( RUNTIME_FILES set( RUNTIME_FILES
"${CMAKE_CURRENT_SOURCE_DIR}/athena-start" "${CMAKE_CURRENT_SOURCE_DIR}/athena-start"
"${CMAKE_CURRENT_SOURCE_DIR}/char-server.sh"
"${CMAKE_CURRENT_SOURCE_DIR}/charserv-sql.bat" "${CMAKE_CURRENT_SOURCE_DIR}/charserv-sql.bat"
"${CMAKE_CURRENT_SOURCE_DIR}/dbghelp.dll" "${CMAKE_CURRENT_SOURCE_DIR}/dbghelp.dll"
"${CMAKE_CURRENT_SOURCE_DIR}/libmysql.dll" "${CMAKE_CURRENT_SOURCE_DIR}/libmysql.dll"
"${CMAKE_CURRENT_SOURCE_DIR}/LICENSE" "${CMAKE_CURRENT_SOURCE_DIR}/LICENSE"
"${CMAKE_CURRENT_SOURCE_DIR}/login-server.sh"
"${CMAKE_CURRENT_SOURCE_DIR}/logserv-sql.bat" "${CMAKE_CURRENT_SOURCE_DIR}/logserv-sql.bat"
"${CMAKE_CURRENT_SOURCE_DIR}/map-server.sh"
"${CMAKE_CURRENT_SOURCE_DIR}/mapserv-sql.bat" "${CMAKE_CURRENT_SOURCE_DIR}/mapserv-sql.bat"
"${CMAKE_CURRENT_SOURCE_DIR}/pcre3.dll" "${CMAKE_CURRENT_SOURCE_DIR}/pcre3.dll"
"${CMAKE_CURRENT_SOURCE_DIR}/README.txt" "${CMAKE_CURRENT_SOURCE_DIR}/README.txt"

View File

@ -113,6 +113,8 @@ case $1 in
;; ;;
*) *)
echo "Usage: athena-start { start | stop | restart | status | watch }" echo "Usage: athena-start { start | stop | restart | status | watch }"
read -p "Enter a valid option: " readEnterKey
$0 $readEnterKey
;; ;;
esac esac

View File

@ -3102,12 +3102,15 @@ static struct Damage battle_calc_weapon_attack(struct block_list *src,struct blo
ATK_ADDRATE(sc->data[SC_GLOOMYDAY_SK]->val2); ATK_ADDRATE(sc->data[SC_GLOOMYDAY_SK]->val2);
if( sc->data[SC_EDP] ){ if( sc->data[SC_EDP] ){
switch(skill_id){ switch(skill_id){
case AS_SPLASHER: case AS_VENOMKNIFE: case AS_SPLASHER:
case AS_GRIMTOOTH:
break;
#ifndef RENEWAL_EDP #ifndef RENEWAL_EDP
case ASC_BREAKER: case ASC_METEORASSAULT: break; case ASC_BREAKER: case ASC_METEORASSAULT:
#else #else
case AS_GRIMTOOTH: case AS_VENOMKNIFE:
#endif
break; //skills above have no effect with edp
#ifdef RENEWAL_EDP
case AS_SONICBLOW: case AS_SONICBLOW:
case ASC_BREAKER: case ASC_BREAKER:
case GC_COUNTERSLASH: case GC_COUNTERSLASH:

View File

@ -6582,8 +6582,8 @@ int skill_castend_nodamage_id (struct block_list *src, struct block_list *bl, ui
case SC_DONTFORGETME: case SC_DONTFORGETME:
case SC_FORTUNE: case SC_FORTUNE:
case SC_SERVICE4U: case SC_SERVICE4U:
if( tsc->data[i]->val4 ) //val4 = out-of-song-area if(tsc->data[i]->val4==0)
continue; continue; //if in song-area don't end it
break; break;
case SC_ASSUMPTIO: case SC_ASSUMPTIO:
if( bl->type == BL_MOB ) if( bl->type == BL_MOB )
@ -11369,11 +11369,10 @@ static int skill_unit_onplace (struct skill_unit *src, struct block_list *bl, un
if (!sc) return 0; if (!sc) return 0;
if (!sce) if (!sce)
sc_start4(bl,type,100,sg->skill_lv,sg->val1,sg->val2,0,sg->limit); sc_start4(bl,type,100,sg->skill_lv,sg->val1,sg->val2,0,sg->limit);
else if (sce->val4 == 1) { else if (sce->val4 == 1) { //Readjust timers since the effect will not last long.
//Readjust timers since the effect will not last long. sce->val4 = 0; //remove the mark that we stepped out
sce->val4 = 0;
delete_timer(sce->timer, status_change_timer); delete_timer(sce->timer, status_change_timer);
sce->timer = add_timer(tick+sg->limit, status_change_timer, bl->id, type); sce->timer = add_timer(tick+sg->limit, status_change_timer, bl->id, type); //put duration back to 3min
} }
break; break;
@ -15855,7 +15854,10 @@ int skill_unit_timer(int tid, unsigned int tick, int id, intptr_t data)
static int skill_unit_temp[20]; // temporary storage for tracking skill unit skill ids as players move in/out of them static int skill_unit_temp[20]; // temporary storage for tracking skill unit skill ids as players move in/out of them
/*========================================== /*==========================================
* * flag :
* 1 : store that skill_unit in array
* 2 : clear that skill_unit
* 4 : call_on_left
*------------------------------------------*/ *------------------------------------------*/
int skill_unit_move_sub (struct block_list* bl, va_list ap) int skill_unit_move_sub (struct block_list* bl, va_list ap)
{ {

View File

@ -10726,17 +10726,15 @@ int status_change_timer_sub(struct block_list* bl, va_list ap)
status_change_end(bl, SC_CLOAKING, INVALID_TIMER); status_change_end(bl, SC_CLOAKING, INVALID_TIMER);
status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER);
status_change_end(bl, SC_CAMOUFLAGE, INVALID_TIMER); status_change_end(bl, SC_CAMOUFLAGE, INVALID_TIMER);
status_change_end(bl, SC__INVISIBILITY, INVALID_TIMER);
break; break;
case SC_RUWACH: /* Reveal hidden target and deal little dammages if ennemy */ case SC_RUWACH: /* Reveal hidden target and deal little dammages if ennemy */
if (tsc && (tsc->data[SC_HIDING] || tsc->data[SC_CLOAKING] || if (tsc && (tsc->data[SC_HIDING] || tsc->data[SC_CLOAKING] ||
tsc->data[SC_CAMOUFLAGE] || tsc->data[SC_CLOAKINGEXCEED] || tsc->data[SC_CAMOUFLAGE] || tsc->data[SC_CLOAKINGEXCEED] ||
tsc->data[SC__INVISIBILITY])) { tsc->data[SC__INVISIBILITY])) { //this sc should hit only
status_change_end(bl, SC_HIDING, INVALID_TIMER); status_change_end(bl, SC_HIDING, INVALID_TIMER);
status_change_end(bl, SC_CLOAKING, INVALID_TIMER); status_change_end(bl, SC_CLOAKING, INVALID_TIMER);
status_change_end(bl, SC_CAMOUFLAGE, INVALID_TIMER); status_change_end(bl, SC_CAMOUFLAGE, INVALID_TIMER);
status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER); status_change_end(bl, SC_CLOAKINGEXCEED, INVALID_TIMER);
status_change_end(bl, SC__INVISIBILITY, INVALID_TIMER);
if(battle_check_target( src, bl, BCT_ENEMY ) > 0) if(battle_check_target( src, bl, BCT_ENEMY ) > 0)
skill_attack(BF_MAGIC,src,src,bl,AL_RUWACH,1,tick,0); skill_attack(BF_MAGIC,src,src,bl,AL_RUWACH,1,tick,0);
} }

View File

@ -23,6 +23,8 @@ case $1 in
*) *)
echo "Usage: check-doc { script | atc | both }" echo "Usage: check-doc { script | atc | both }"
read -p "Enter a valid option: " readEnterKey
$0 $readEnterKey
;; ;;
esac esac

View File

@ -304,6 +304,7 @@ sub CheckDupPort { my ($rhConfig,$sChkKeys) = @_;
} }
return 0; return 0;
} }
sub CheckUsedPort { my($sPort) = @_; sub CheckUsedPort { my($sPort) = @_;
open PIPE,"netstat -nat |" or die $!; open PIPE,"netstat -nat |" or die $!;
my @line = grep { /$sPort/ } <PIPE>; my @line = grep { /$sPort/ } <PIPE>;