// Called when a player logs out. void OnLogout(Player* player) { if (!CharacterHistoryEnable || !CharacterHistoryLogout) return; WriteToHistory(player, CHARACTER_HISTORY_LOGOUT); }
// Called when a player is created. void OnCreate(Player* player) { if (!CharacterHistoryEnable || !CharacterHistoryCreate) return; WriteToHistory(player, CHARACTER_HISTORY_CREATE); }
void MainWidget::messageReceivedData(const LPMessage &msg) { QString str; for(int i=0;i<msg.size();i++) { str+=QString().sprintf("%02X ",0xFF&msg[i]); } str=str.left(str.length()-1); WriteToHistory(QString("<font color=\"")+LPCORE_RECEIVE_COLOR+"\">"+str+ "</font> <font color=\""+LPCORE_NOTATION_COLOR+"\">"+ msg.decode()+"</font>"); }
void MainWidget::returnPressedData() { char data[1024]; int ptr=0; QString str; QString text; int istate=0; bool ok=false; if(lp_send_edit->text().isEmpty()) { WriteToHistory(" "); return; } for(int i=0;i<lp_send_edit->text().length();i++) { char c=lp_send_edit->text().toUpper().toAscii()[i]; switch(istate) { case 0: switch(c) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': str=c; istate=1; break; case '\'': text=""; istate=2; break; } break; case 1: switch(c) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': str+=c; data[ptr++]=0xFF&str.toInt(&ok,16); istate=0; break; } break; case 2: switch(c) { case '\'': for(int j=0;j<text.length();j++) { data[ptr++]=text.toAscii()[j]; } if(((0xFF&data[2])==0x5C)&&((0xFF&data[1])==0)) { // Calculate Length data[1]=0xFF&(8+text.length()); } istate=0; break; default: text+=lp_send_edit->text().toAscii()[i]; break; } break; default: istate=0; break; } } if((istate!=0)||(!LPParser::validate(data,ptr))) { QMessageBox::warning(this,tr("LPCore - Data Entry Error"), tr("Invalid data entered!")); return; } lp_connection->writeMessage(data,ptr); if(lp_connection->context()==LPConnection::Isolated) { WriteToHistory(QString("<font color=\"")+LPCORE_SEND_COLOR+"\">"+ LPParser::dump(data,ptr)+" <font color=\""+ LPCORE_NOTATION_COLOR+"\">"+ LPMessage(data,ptr).decode()+ "</font>"); } lp_send_edit->clear(); }