Пример #1
0
BOOL NPC_PAItemShop_BuyDo( int meindex, int toindex, char *npcarg, int select)
{
	int ret=-1, ti;
	int itemindex = NPC_PAItemShop_GetItem( select, &ret);
	int cost;
	char token[256];

	if( !ITEM_CHECKINDEX( itemindex) ){
		return FALSE;
	}

	cost=ITEM_getInt( itemindex, ITEM_COST);
	if( CHAR_DelGold( toindex, cost) == 0 ) return FALSE;

	//匯整資料
	saacproto_ACItemAuction_send( acfd, ITEM_getChar( itemindex, ITEM_NAME), "TEST嘿嘿嘿",
		ITEM_getInt( itemindex, ITEM_ID), ret,AUCTION_DEL);

	ti = CHAR_addItemSpecificItemIndex( toindex, itemindex);
	if( !CHAR_CHECKITEMINDEX( toindex, ti) ){
		ITEM_endExistItemsOne( itemindex);
		print ("\n ret error!!");
		return FALSE;
	}
	CHAR_sendItemDataOne( toindex, ti);
	sprintf( token,"拿到%s",ITEM_getChar( itemindex, ITEM_NAME));
	CHAR_talkToCli( toindex, -1, token, CHAR_COLORYELLOW);

	return TRUE;
}
Пример #2
0
/*
 *--еведе╞ердЄ─╔▓├д╡д╗ды
 */
BOOL NPC_QuizAddItem(int talker,char *buf)
{
	int i=1;
	int ret;
	char buf2[16];
	int itemindex;
	char token[512];
	
	/*--╩г┐Ї╛▐╔╩д╚д╖д╞еведе╞ердм└▀─ъд╡дьд╞ддды╛ь╣чд╧ещеєе└ерд╟┴кд╓--*/
	while(getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2))
	!= FALSE )
	{
		i++;
	}
	i--;
	if(i == 1){
		getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2));
	}else{
		/*--ещеєе└ер--*/
		i = (rand() % i)+1;
		getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2));
	}

	itemindex = ITEM_makeItemAndRegist(atoi(buf2));

	if(itemindex == -1) return FALSE;

	/*еведе╞ерд╬─╔▓├(─╛└▄еведе╞ер═єд╦дддьд╞д╖д▐джб╦*/
	ret = CHAR_addItemSpecificItemIndex( talker, itemindex);
	if( !CHAR_CHECKITEMINDEX( talker, ret) ){
		print( "npc_quiz.c: additem error itemindex[%d]\n", itemindex);
		ITEM_endExistItemsOne( itemindex);
	
		CHAR_talkToCli( talker, -1, "╣Dиу─цдw║б", CHAR_COLORWHITE);
			
		return FALSE;
	}

	if(itemindex != -1) {
		LogItem(
			CHAR_getChar( talker, CHAR_NAME ), /* енеуещ╠╛ */
			CHAR_getChar( talker, CHAR_CDKEY ),
#ifdef _add_item_log_name  // WON ADD жbitemк║logдд╝Wе[itemжW║┘
			itemindex,
#else
    		ITEM_getInt( itemindex, ITEM_ID),  /* еведе╞ер╚╓╣ц */
#endif
			"QuizAddItem(▓q┴╝->╗тиьк║╣Dиу)",
			CHAR_getInt( talker, CHAR_FLOOR),
			CHAR_getInt( talker, CHAR_X ),
			CHAR_getInt( talker, CHAR_Y ),
			ITEM_getChar( itemindex, ITEM_UNIQUECODE),
			ITEM_getChar( itemindex, ITEM_NAME),
			ITEM_getInt( itemindex, ITEM_ID)
		);
	}
	
	sprintf(token,"о│иь%sбC", ITEM_getChar( itemindex, ITEM_NAME));
	CHAR_talkToCli( talker, -1, token, CHAR_COLORWHITE);


	CHAR_sendItemDataOne( talker, ret);
	return TRUE;

}
Пример #3
0
BOOL NPC_QuizAddItem(int talker,char *buf)
{
    int i=1;
    int ret;
    char buf2[16];
    int itemindex;
    char token[512];

    while(getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2))
            != FALSE )
    {
        i++;
    }
    i--;
    if(i == 1) {
        getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2));
    } else {
        /*--·Â¼þĸة--*/
        i = (rand() % i)+1;
        getStringFromIndexWithDelim(buf , "." , i, buf2, sizeof(buf2));
    }

    itemindex = ITEM_makeItemAndRegist(atoi(buf2));

    if(itemindex == -1) return FALSE;

    ret = CHAR_addItemSpecificItemIndex( talker, itemindex);
    if( !CHAR_CHECKITEMINDEX( talker, ret) ) {
        print( "npc_quiz.c: additem error itemindex[%d]\n", itemindex);
        ITEM_endExistItemsOne( itemindex);

        CHAR_talkToCli( talker, -1, "µÀ¾ßÀ¸ÒÑÂú", CHAR_COLORWHITE);

        return FALSE;
    }

    if(itemindex != -1) {
        LogItem(
            CHAR_getChar( talker, CHAR_NAME ), /* ƽÅÒ·Â   */
            CHAR_getChar( talker, CHAR_CDKEY ),
#ifdef _add_item_log_name  // WON ADD ÔÚitemµÄlogÖÐÔö¼ÓitemÃû³Æ
            itemindex,
#else
            ITEM_getInt( itemindex, ITEM_ID),  /* ʧÄÌ  Ø©  į */
#endif
            "QuizAddItem(²ÂÃÕ->Áìµ½µÄµÀ¾ß)",
            CHAR_getInt( talker, CHAR_FLOOR),
            CHAR_getInt( talker, CHAR_X ),
            CHAR_getInt( talker, CHAR_Y ),
            ITEM_getChar( itemindex, ITEM_UNIQUECODE),
            ITEM_getChar( itemindex, ITEM_NAME),
            ITEM_getInt( itemindex, ITEM_ID)
        );
    }

    sprintf(token,"Äõ½%s¡£", ITEM_getChar( itemindex, ITEM_NAME));
    CHAR_talkToCli( talker, -1, token, CHAR_COLORWHITE);


    CHAR_sendItemDataOne( talker, ret);
    return TRUE;

}