Jump to content

Euphy

Members
  • Posts

    2997
  • Joined

  • Last visited

  • Days Won

    72

Posts posted by Euphy

  1. Why not just tell people to copy the file they want to change to said directory, and them have them change that file.

    This way you can update all original files as much as you want, as long as the server would always  prioritize the import folder.

    You can imagine that the vast majority of users doing this would never update their databases again. Definitely not what we want.

    I was proposing making a way to nullfys an entry in the skill_tree.

    ...

    An important check in all of the databases is the number of fields (columns) provided - with your suggestion, we'd have to remove that check.

    I understand your intent, and agree that it'd be convenient, but I still can't agree with it. You're trading a handful couple of conflict edits for tens of thousands of extra checks/operations each time every database loads.

  2. Upon rereading this (and looking at the votes), I'm going to reject this proposal. I think the costs outweigh the benefits, and doing a large-scale reorganization makes updating official scripts far more difficult.

    An easy way to enable/disable NPCs on maps would be to write a script command which returns the names of all NPCs on a map (similar to @mapinfo 2) and then looping through with 'enablenpc'/'disablenpc'.

    • Upvote 1
  3. Eh... that was entirely a joke, I would never put such effort into a real script. ;D

     

    In case you need one, here's the actual version of that script (as you can see, it's pretty bare):

    prontera,148,170,6	script	MVP Ladder	891,{
    	mes "[MVP Ladder]";
    	mes "Hello!";
    	mes "What are you doing here?";
    	next;
    	switch(select("Check rankings.:My stats.:Nothing...")) {
    	case 1:
    		mes "[MVP Ladder]";
    		query_sql("SELECT char_id,CAST(`value` AS SIGNED) FROM `global_reg_value` WHERE `str` = 'MVP_Rank' ORDER BY CAST(`value` AS SIGNED) DESC LIMIT 20",.@cid,.@value);
    		for(set .@i,0; .@i<getarraysize(.@cid); set .@i,.@i+1) {
    			query_sql("SELECT `name` FROM `char` WHERE char_id = "+.@cid[.@i]+";",.@j$);
    			set .@name$[.@i], .@j$;
    		}
    		if (!getarraysize(.@cid))
    			mes "The rankings are empty.";
    		else for(set .@i,0; .@i<getarraysize(.@cid); set .@i,.@i+1)
    			mes "["+(.@i+1)+"] "+.@name$[.@i]+" ~ "+.@value[.@i]+" kills";
    		close;
    	case 2:
    		mes "[MVP Ladder]";
    		mes "You have killed "+((MVP_Rank)?"^0055FF"+MVP_Rank:"no")+"^000000 MVP"+((MVP_Rank == 1)?".":"s.");
    		close;
    	case 3:
    		close;
    	}
    
    OnNPCKillEvent:
    	if (getmonsterinfo(killedrid,22)) {
    		set MVP_Rank, MVP_Rank+1;
    		if (MVP_Rank == 1)
    			query_sql("INSERT INTO `global_reg_value` (`char_id`,`str`,`value`,`type`,`account_id`) VALUES ("+getcharid(0)+",'MVP_Rank','1',3,0)");
    		else
    			query_sql("UPDATE `global_reg_value` SET `value` = '"+MVP_Rank+"' WHERE char_id = "+getcharid(0)+" AND `str` ='MVP_Rank'");
    		dispbottom "~ You've killed "+MVP_Rank+" MVP"+((MVP_Rank == 1)?"":"s")+". ~";
    		specialeffect2 313;
    	}
    	end;
    }
    
    • Upvote 2
×
×
  • Create New...