فهرست منبع

Prevent unloadnpc script command to unload the invoking NPC. (#3000)

* Prevent unloadnpc script command to unload the invoking NPC.
Addressed #2999
Jittapan Pluemsumran 7 سال پیش
والد
کامیت
41ea1531bc
1فایلهای تغییر یافته به همراه4 افزوده شده و 0 حذف شده
  1. 4 0
      src/map/script.cpp

+ 4 - 0
src/map/script.cpp

@@ -23391,6 +23391,10 @@ BUILDIN_FUNC(unloadnpc) {
 	if( nd == NULL ){
 		ShowError( "buildin_unloadnpc: npc '%s' was not found.\n", name );
 		return SCRIPT_CMD_FAILURE;
+	} else if ( nd->bl.id == st->oid ) {
+		// Supporting self-unload isn't worth the problem it may cause. [Secret]
+		ShowError("buildin_unloadnpc: You cannot self-unload NPC '%s'.\n.", name);
+		return SCRIPT_CMD_FAILURE;
 	}
 
 	npc_unload_duplicates(nd);